[TechCorner Challenge #4] How to Generate a Request Body Based on Data from Datasource
Hi everyone,
Thank you for your TechCorner input! It has been awesome an extremely helpful. I've got more challenges for you🙂
A request body can be dynamic, and it is not always possible to use the existing ReadyAPI functionality to create it. One use case example could be changing data before sending a request. This is when users need to come up with a custom script.
Your task for today is to write a script that will read data from an Excel file and generate a request body for the SOAP TestStep based on it. The number of rows in the Excel file is dynamic.
Task: Your task for today is to write a script that will read data from an Excel file and generate a request body for the SOAP TestStep based on it. The number of rows in the Excel file is dynamic.
This is a solution created for [TechCorner Challenge #4]
Here is my code which will generate XML out of Data present in Excel file, not matter how many rows are there, it will append the XML according to number of Rows be dynamic.
Pre-requisite : Need to add Groovy Script and Properties Step inside Test Case
import java.io.*
import java.text.SimpleDateFormat;
import java.util.Calendar;
import org.apache.poi.ss.usermodel.*
import org.apache.poi.hssf.usermodel.*
import org.apache.poi.xssf.usermodel.*
import org.apache.poi.ss.util.*
import groovy.xml.MarkupBuilder
import groovy.xml.StreamingMarkupBuilder
def fs = new FileInputStream("F:\\temp.xlsx")
Workbook wb = WorkbookFactory.create(fs);
def ws = wb.getSheet("Sheet1");
int r = ws.getLastRowNum();
testRunner.testCase.getTestStepByName("Properties").setPropertyValue("DataRowCount", r.toString());
for(def i = 1 ; i <= r ; i++ ){
def row = ws.getRow(i)
def headerRow = ws.getRow(0)
def noOfCell = row.getLastCellNum();
for (def j=0;j<noOfCell;j++){
def headertext = ws.getRow(0).getCell(j).getStringCellValue()
Cell cell = row.getCell(j)
if (cell == null || cell.getCellType() == Cell.CELL_TYPE_BLANK) {
value = "";
}
else if(cell.getCellType() == Cell.CELL_TYPE_BOOLEAN){
value = (cell.getBooleanValue());
}
else if(cell.getCellType() == Cell.CELL_TYPE_NUMERIC){
value = (cell.getNumericCellValue());
}
else if(cell.getCellType() == Cell.CELL_TYPE_STRING){
value = (cell.getStringCellValue());
}
else if(cell.getCellType() == Cell.CELL_TYPE_ERROR){
}
else if(cell.getCellType() == Cell.CELL_TYPE_FORMULA){
value = String.valueOf(cell.getStringCellValue())
}
testRunner.testCase.getTestStepByName("Properties").setPropertyValue(headertext.toString()+""+i.toString(), value.toString())
}
}
def start = '''<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope/" soap:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
<soap:Header>
<m:Trans xmlns:m="https://www.w3schools.com/transaction/" soap:actor="https://www.w3schools.com/code/">234
</m:Trans>
</soap:Header>
<soap:Body>
'''
def end = '''
</soap:Body>
</soap:Envelope>'''
def writer = new StringWriter()
def xml = new MarkupBuilder(writer)
xml.CATALOG() {
for(int i = 1 ; i <= r ; i++){
CD(){
TITLE(context.expand('${Properties#Title'+i.toString()+'}'))
ARTIST(context.expand('${Properties#Artist'+i.toString()+'}'))
PRICE(context.expand('${Properties#Price'+i.toString()+'}'))
}
}
}
log.info start + writer + end
Task: Your task for today is to write a script that will read data from an Excel file and generate a request body for the SOAP TestStep based on it. The number of rows in the Excel file is dynamic.
This is a solution created for [TechCorner Challenge #4]
Script Features & Handle additional data validations and groovy way of building xml such as
- Does not require any additional test steps.
- Zerochanges in the script, yet provide different output based on the input data, including file path (handled thru custom properties).
- Empty rows (shown in the picture)
- Empty cells (shown in the picture)
- User can choose the sheet name (default is Sheet1)
- User can optionally consider or ignore first row as data
- Handles errors such as File existence in the given path, Sheet name, if rows present or not before building xml. Throws error otherwise.
- Supports .xlsx (poi-3.8.0 & tested in SoapUI 5.4) format
- Uses StreamingMarkupBuilder for building xml (a native way to build xmls easily)
Just add test case customproperties as mentioned below
DATA_FILE and add the file name, mandatory
SHEET_NAME and add name of the sheet in the excel file, optional
IGNORE_FIRST_ROW and add boolean value true or false; optional
Here is the(groovified) script (and follow in-line comments)
Contents of Groovy script, i.e., CreateRequestFromDataSource test step.
import org.apache.poi.xssf.usermodel.XSSFWorkbook
import static org.apache.poi.ss.usermodel.Cell.*
import groovy.xml.StreamingMarkupBuilder
import groovy.xml.XmlUtil
//Used to create the data map from excel cells
def columnMap = [0: 'title', 1: 'artist', 2: 'price']
//Validate if the data file exists and only supports .xlsx files as input
def isFileValid = {
assert null != it, 'File path is empty'
def xFile = new File(it)
assert xFile.exists(), "${it} file doesn't exists"
assert it.endsWith('.xlsx'), 'Only allows file extension .xlsx'
true
}
// A closure that creates data (list of rows; and each row as map) from input file
// User can choose the sheet name (default is Sheet 1), throws if sheet does not exists
// And whether to ignore first row or not
// Also handles empty rows and empty cells
// Support apache-poi 3.8 and tested in SoapUI 5.4
def getData = { filepath, isIgnoreFirstRow = true, sheetName = 'Sheet1' ->
def data = []
if (isFileValid(filepath)) {
def sheet = new XSSFWorkbook(filepath).getSheet sheetName
assert null != sheet, "${sheetName} does not existing in the ${filepath}"
sheet.rowIterator().eachWithIndex { row, rowId ->
def map = [:]
if (!isIgnoreFirstRow || rowId != 0) {
for (index = 0; index <row.lastCellNum;index++){
cell = row.getCell(index, row.CREATE_NULL_AS_BLANK);
switch (cell.cellType) {
case CELL_TYPE_STRING: map.put(columnMap[index], cell.stringCellValue); break
case CELL_TYPE_NUMERIC: map.put(columnMap[index], cell.numericCellValue); break
case CELL_TYPE_BOOLEAN: map.put(columnMap[index], cell.booleanCellValue); break
case CELL_TYPE_FORMULA: map.put(columnMap[index], cell.getCachedFormulaResultType()); break
default: map.put(columnMap[index], ''); break
}
}
data << map
}
}
}
assert data.size(), 'No data created from file'
data
}
//A closure that builds the xml request based on the user input
def createRequest = { cds, trans ->
def nameSpacesMap = [
soap: 'http://schemas.xmlsoap.org/soap/envelope/',
m: 'https://www.w3schools.com/transaction/'
]
def builder = new StreamingMarkupBuilder()
builder.encoding ='utf-8'
def soapRequest = builder.bind {
namespaces << nameSpacesMap
soap.Envelope {
soap.Header {
m.Trans('soap:actor': 'https://www.w3schools.com/code/', trans)
}
soap.Body {
CATALOG {
cds.each { cd ->
CD {
TITLE cd.title
ARTIST cd.artist
PRICE cd.price
}
}
}
}
}
}
XmlUtil.serialize soapRequest
}
//Actuall flow of the script starts here
def file = context.testCase.getPropertyValue('DATA_FILE')
def sheet = context.testCase.getPropertyValue('SHEET_NAME') ?: 'Sheet1'
def ignoreFirstRow = context.testCase.getPropertyValue('IGNORE_FIRST_ROW')?.toBoolean() ?: true
//Call to the closures
log.info createRequest(getData(file, ignoreFirstRow, sheet), 234)
ADD-ON
Realized that usually, user not only wants to create / build the SOAP request, but also like to update the request in the following SOAP Request content in the test case.
Let us assume that the test case has Request step, say MyRequest step in which user wants to update the content dynamically from the data source file using groovy script. You can see the steps in the test case from the pictures above.
So in order to complete the use case, needed to append below script at the end of the above in order to achieve the same.
Here user can add an additional test case custom property for Request step name (default is SOAP Request), say REQUEST_STEP_NAME and value as you needed, MyRequest in this case as per picture.
//Call to the closures
def request = createRequest(getData(file, ignoreFirstRow, sheet), 234)
//Get the next test step request
def nextStepName = context.testCase.getPropertyValue('REQUEST_STEP_NAME') ?: 'SOAP Request'
//Get the next test step request
def nextStepRequest = context.testCase.testSteps[nextStepName].httpRequest
//Update the request details in the next request test step
nextStepRequest.requestContent = request
Task: Your task for today is to write a script that will read data from an Excel file and generate a request body for the SOAP TestStep based on it. The number of rows in the Excel file is dynamic.
This is a solution created for [TechCorner Challenge #4]
Here is my code which will generate XML out of Data present in Excel file, not matter how many rows are there, it will append the XML according to number of Rows be dynamic.
Pre-requisite : Need to add Groovy Script and Properties Step inside Test Case
import java.io.*
import java.text.SimpleDateFormat;
import java.util.Calendar;
import org.apache.poi.ss.usermodel.*
import org.apache.poi.hssf.usermodel.*
import org.apache.poi.xssf.usermodel.*
import org.apache.poi.ss.util.*
import groovy.xml.MarkupBuilder
import groovy.xml.StreamingMarkupBuilder
def fs = new FileInputStream("F:\\temp.xlsx")
Workbook wb = WorkbookFactory.create(fs);
def ws = wb.getSheet("Sheet1");
int r = ws.getLastRowNum();
testRunner.testCase.getTestStepByName("Properties").setPropertyValue("DataRowCount", r.toString());
for(def i = 1 ; i <= r ; i++ ){
def row = ws.getRow(i)
def headerRow = ws.getRow(0)
def noOfCell = row.getLastCellNum();
for (def j=0;j<noOfCell;j++){
def headertext = ws.getRow(0).getCell(j).getStringCellValue()
Cell cell = row.getCell(j)
if (cell == null || cell.getCellType() == Cell.CELL_TYPE_BLANK) {
value = "";
}
else if(cell.getCellType() == Cell.CELL_TYPE_BOOLEAN){
value = (cell.getBooleanValue());
}
else if(cell.getCellType() == Cell.CELL_TYPE_NUMERIC){
value = (cell.getNumericCellValue());
}
else if(cell.getCellType() == Cell.CELL_TYPE_STRING){
value = (cell.getStringCellValue());
}
else if(cell.getCellType() == Cell.CELL_TYPE_ERROR){
}
else if(cell.getCellType() == Cell.CELL_TYPE_FORMULA){
value = String.valueOf(cell.getStringCellValue())
}
testRunner.testCase.getTestStepByName("Properties").setPropertyValue(headertext.toString()+""+i.toString(), value.toString())
}
}
def start = '''<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope/" soap:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
<soap:Header>
<m:Trans xmlns:m="https://www.w3schools.com/transaction/" soap:actor="https://www.w3schools.com/code/">234
</m:Trans>
</soap:Header>
<soap:Body>
'''
def end = '''
</soap:Body>
</soap:Envelope>'''
def writer = new StringWriter()
def xml = new MarkupBuilder(writer)
xml.CATALOG() {
for(int i = 1 ; i <= r ; i++){
CD(){
TITLE(context.expand('${Properties#Title'+i.toString()+'}'))
ARTIST(context.expand('${Properties#Artist'+i.toString()+'}'))
PRICE(context.expand('${Properties#Price'+i.toString()+'}'))
}
}
}
log.info start + writer + end
Task: Your task for today is to write a script that will read data from an Excel file and generate a request body for the SOAP TestStep based on it. The number of rows in the Excel file is dynamic.
This is a solution created for [TechCorner Challenge #4]
Script Features & Handle additional data validations and groovy way of building xml such as
- Does not require any additional test steps.
- Zerochanges in the script, yet provide different output based on the input data, including file path (handled thru custom properties).
- Empty rows (shown in the picture)
- Empty cells (shown in the picture)
- User can choose the sheet name (default is Sheet1)
- User can optionally consider or ignore first row as data
- Handles errors such as File existence in the given path, Sheet name, if rows present or not before building xml. Throws error otherwise.
- Supports .xlsx (poi-3.8.0 & tested in SoapUI 5.4) format
- Uses StreamingMarkupBuilder for building xml (a native way to build xmls easily)
Just add test case customproperties as mentioned below
DATA_FILE and add the file name, mandatory
SHEET_NAME and add name of the sheet in the excel file, optional
IGNORE_FIRST_ROW and add boolean value true or false; optional
Here is the(groovified) script (and follow in-line comments)
Contents of Groovy script, i.e., CreateRequestFromDataSource test step.
import org.apache.poi.xssf.usermodel.XSSFWorkbook
import static org.apache.poi.ss.usermodel.Cell.*
import groovy.xml.StreamingMarkupBuilder
import groovy.xml.XmlUtil
//Used to create the data map from excel cells
def columnMap = [0: 'title', 1: 'artist', 2: 'price']
//Validate if the data file exists and only supports .xlsx files as input
def isFileValid = {
assert null != it, 'File path is empty'
def xFile = new File(it)
assert xFile.exists(), "${it} file doesn't exists"
assert it.endsWith('.xlsx'), 'Only allows file extension .xlsx'
true
}
// A closure that creates data (list of rows; and each row as map) from input file
// User can choose the sheet name (default is Sheet 1), throws if sheet does not exists
// And whether to ignore first row or not
// Also handles empty rows and empty cells
// Support apache-poi 3.8 and tested in SoapUI 5.4
def getData = { filepath, isIgnoreFirstRow = true, sheetName = 'Sheet1' ->
def data = []
if (isFileValid(filepath)) {
def sheet = new XSSFWorkbook(filepath).getSheet sheetName
assert null != sheet, "${sheetName} does not existing in the ${filepath}"
sheet.rowIterator().eachWithIndex { row, rowId ->
def map = [:]
if (!isIgnoreFirstRow || rowId != 0) {
for (index = 0; index <row.lastCellNum;index++){
cell = row.getCell(index, row.CREATE_NULL_AS_BLANK);
switch (cell.cellType) {
case CELL_TYPE_STRING: map.put(columnMap[index], cell.stringCellValue); break
case CELL_TYPE_NUMERIC: map.put(columnMap[index], cell.numericCellValue); break
case CELL_TYPE_BOOLEAN: map.put(columnMap[index], cell.booleanCellValue); break
case CELL_TYPE_FORMULA: map.put(columnMap[index], cell.getCachedFormulaResultType()); break
default: map.put(columnMap[index], ''); break
}
}
data << map
}
}
}
assert data.size(), 'No data created from file'
data
}
//A closure that builds the xml request based on the user input
def createRequest = { cds, trans ->
def nameSpacesMap = [
soap: 'http://schemas.xmlsoap.org/soap/envelope/',
m: 'https://www.w3schools.com/transaction/'
]
def builder = new StreamingMarkupBuilder()
builder.encoding ='utf-8'
def soapRequest = builder.bind {
namespaces << nameSpacesMap
soap.Envelope {
soap.Header {
m.Trans('soap:actor': 'https://www.w3schools.com/code/', trans)
}
soap.Body {
CATALOG {
cds.each { cd ->
CD {
TITLE cd.title
ARTIST cd.artist
PRICE cd.price
}
}
}
}
}
}
XmlUtil.serialize soapRequest
}
//Actuall flow of the script starts here
def file = context.testCase.getPropertyValue('DATA_FILE')
def sheet = context.testCase.getPropertyValue('SHEET_NAME') ?: 'Sheet1'
def ignoreFirstRow = context.testCase.getPropertyValue('IGNORE_FIRST_ROW')?.toBoolean() ?: true
//Call to the closures
log.info createRequest(getData(file, ignoreFirstRow, sheet), 234)
ADD-ON
Realized that usually, user not only wants to create / build the SOAP request, but also like to update the request in the following SOAP Request content in the test case.
Let us assume that the test case has Request step, say MyRequest step in which user wants to update the content dynamically from the data source file using groovy script. You can see the steps in the test case from the pictures above.
So in order to complete the use case, needed to append below script at the end of the above in order to achieve the same.
Here user can add an additional test case custom property for Request step name (default is SOAP Request), say REQUEST_STEP_NAME and value as you needed, MyRequest in this case as per picture.
//Call to the closures
def request = createRequest(getData(file, ignoreFirstRow, sheet), 234)
//Get the next test step request
def nextStepName = context.testCase.getPropertyValue('REQUEST_STEP_NAME') ?: 'SOAP Request'
//Get the next test step request
def nextStepRequest = context.testCase.testSteps[nextStepName].httpRequest
//Update the request details in the next request test step
nextStepRequest.requestContent = request
"}},"component({\"componentId\":\"custom.widget.Custom_Style_Helper\"})":{"__typename":"Component","render({\"context\":{\"component\":{\"entities\":[],\"props\":{}},\"page\":{\"entities\":[\"board:readyapi-questions\",\"message:203916\"],\"name\":\"ForumMessagePage\",\"props\":{},\"url\":\"https://community.smartbear.com\"}}})":{"__typename":"ComponentRenderResult","html":" "}},"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/EscalatedMessageBanner\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/EscalatedMessageBanner-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"components/users/UserLink\"]})":[{"__ref":"CachedAsset:text:en_US-components/users/UserLink-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/users/UserRank\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/users/UserRank-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageTime\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageTime-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageSubject\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageSubject-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageBody\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageBody-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageCustomFields\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageCustomFields-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageReplyButton\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageReplyButton-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageSolutionList\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageSolutionList-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/AcceptedSolutionButton\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/AcceptedSolutionButton-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/common/Pager/PagerLoadMore\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/common/Pager/PagerLoadMore-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageView/MessageViewInline\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageView/MessageViewInline-1720711077000"}],"message({\"id\":\"message:203919\"})":{"__ref":"AcceptedSolutionMessage:message:203919"},"message({\"id\":\"message:203943\"})":{"__ref":"AcceptedSolutionMessage:message:203943"},"message({\"id\":\"message:204051\"})":{"__ref":"ForumReplyMessage:message:204051"},"messages({\"constraints\":{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:203916\"}},\"first\":10,\"sorts\":{\"postTime\":{\"direction\":\"ASC\"}}})":{"__typename":"MessageConnection","edges":[{"__typename":"MessageEdge","cursor":"MjQuMTF8Mi4xfGl8MTB8Mzk6MXxpbnQsMjAzOTE5LDIwMzkxOQ","node":{"__ref":"AcceptedSolutionMessage:message:203919"}},{"__typename":"MessageEdge","cursor":"MjQuMTF8Mi4xfGl8MTB8Mzk6MXxpbnQsMjAzOTE5LDIwMzk0Mw","node":{"__ref":"AcceptedSolutionMessage:message:203943"}}],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null},"totalCount":2},"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/users/UserAvatar\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/users/UserAvatar-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/ranks/UserRankLabel\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/ranks/UserRankLabel-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/nodes/NodeIcon\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/nodes/NodeIcon-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageSolvedBadge\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageSolvedBadge-1720711077000"}],"cachedText({\"lastModified\":\"1720711077000\",\"locale\":\"en-US\",\"namespaces\":[\"components/tags/TagView/TagViewChip\"]})":[{"__ref":"CachedAsset:text:en_US-components/tags/TagView/TagViewChip-1720711077000"}]},"CachedAsset:pages-1737143111137":{"__typename":"CachedAsset","id":"pages-1737143111137","value":[{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"BlogViewAllPostsPage","type":"BLOG","urlPath":"/category/:categoryId/blog/:boardId/all-posts/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"CasePortalPage","type":"CASE_PORTAL","urlPath":"/caseportal","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"CreateGroupHubPage","type":"GROUP_HUB","urlPath":"/groups/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"CaseViewPage","type":"CASE_DETAILS","urlPath":"/case/:caseId/:caseNumber","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"InboxPage","type":"COMMUNITY","urlPath":"/inbox","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"HelpFAQPage","type":"COMMUNITY","urlPath":"/help","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"IdeaMessagePage","type":"IDEA_POST","urlPath":"/idea/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"IdeaViewAllIdeasPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId/all-ideas/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"LoginPage","type":"USER","urlPath":"/signin","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"BlogPostPage","type":"BLOG","urlPath":"/category/:categoryId/blogs/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ThemeEditorPage","type":"COMMUNITY","urlPath":"/designer/themes","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"TkbViewAllArticlesPage","type":"TKB","urlPath":"/category/:categoryId/kb/:boardId/all-articles/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"OccasionEditPage","type":"EVENT","urlPath":"/event/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"OAuthAuthorizationAllowPage","type":"USER","urlPath":"/auth/authorize/allow","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"PageEditorPage","type":"COMMUNITY","urlPath":"/designer/pages","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"PostPage","type":"COMMUNITY","urlPath":"/category/:categoryId/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ForumBoardPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"TkbBoardPage","type":"TKB","urlPath":"/category/:categoryId/kb/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"EventPostPage","type":"EVENT","urlPath":"/category/:categoryId/events/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"UserBadgesPage","type":"COMMUNITY","urlPath":"/users/:login/:userId/badges","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"GroupHubMembershipAction","type":"GROUP_HUB","urlPath":"/membership/join/:nodeId/:membershipType","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"IdeaReplyPage","type":"IDEA_REPLY","urlPath":"/idea/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"UserSettingsPage","type":"USER","urlPath":"/mysettings/:userSettingsTab","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"GroupHubsPage","type":"GROUP_HUB","urlPath":"/groups","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ForumPostPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"OccasionRsvpActionPage","type":"OCCASION","urlPath":"/event/:boardId/:messageSubject/:messageId/rsvp/:responseType","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"VerifyUserEmailPage","type":"USER","urlPath":"/verifyemail/:userId/:verifyEmailToken","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"AllOccasionsPage","type":"OCCASION","urlPath":"/category/:categoryId/events/:boardId/all-events/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"EventBoardPage","type":"EVENT","urlPath":"/category/:categoryId/events/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"TkbReplyPage","type":"TKB_REPLY","urlPath":"/kb/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"IdeaBoardPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"CommunityGuideLinesPage","type":"COMMUNITY","urlPath":"/communityguidelines","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"CaseCreatePage","type":"SALESFORCE_CASE_CREATION","urlPath":"/caseportal/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"TkbEditPage","type":"TKB","urlPath":"/kb/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ForgotPasswordPage","type":"USER","urlPath":"/forgotpassword","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"IdeaEditPage","type":"IDEA","urlPath":"/idea/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"TagPage","type":"COMMUNITY","urlPath":"/tag/:tagName","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ChampionRules.Page","type":"COMMUNITY","urlPath":"/c/champion-rules/page","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"BlogBoardPage","type":"BLOG","urlPath":"/category/:categoryId/blog/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"OccasionMessagePage","type":"OCCASION_TOPIC","urlPath":"/event/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ManageContentPage","type":"COMMUNITY","urlPath":"/managecontent","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ClosedMembershipNodeNonMembersPage","type":"GROUP_HUB","urlPath":"/closedgroup/:groupHubId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"CommunityPage","type":"COMMUNITY","urlPath":"/","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ForumMessagePage","type":"FORUM_TOPIC","urlPath":"/discussions/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"IdeaPostPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"BlogMessagePage","type":"BLOG_ARTICLE","urlPath":"/blog/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"RegistrationPage","type":"USER","urlPath":"/register","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"EditGroupHubPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ForumEditPage","type":"FORUM","urlPath":"/discussions/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ResetPasswordPage","type":"USER","urlPath":"/resetpassword/:userId/:resetPasswordToken","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"TkbMessagePage","type":"TKB_ARTICLE","urlPath":"/kb/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"BlogEditPage","type":"BLOG","urlPath":"/blog/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ManageUsersPage","type":"USER","urlPath":"/users/manage/:tab?/:manageUsersTab?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ForumReplyPage","type":"FORUM_REPLY","urlPath":"/discussions/:boardId/:messageSubject/:messageId/replies/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"PrivacyPolicyPage","type":"COMMUNITY","urlPath":"/privacypolicy","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"NotificationPage","type":"COMMUNITY","urlPath":"/notifications","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"UserPage","type":"USER","urlPath":"/users/:login/:userId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"OccasionReplyPage","type":"OCCASION_REPLY","urlPath":"/event/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ManageMembersPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/manage/:tab?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"SearchResultsPage","type":"COMMUNITY","urlPath":"/search","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"BlogReplyPage","type":"BLOG_REPLY","urlPath":"/blog/:boardId/:messageSubject/:messageId/replies/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"GroupHubPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"TermsOfServicePage","type":"COMMUNITY","urlPath":"/termsofservice","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"CategoryPage","type":"CATEGORY","urlPath":"/category/:categoryId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"ForumViewAllTopicsPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId/all-topics/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"TkbPostPage","type":"TKB","urlPath":"/category/:categoryId/kbs/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737143111137,"localOverride":null,"page":{"id":"GroupHubPostPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"}],"localOverride":false},"CachedAsset:text:en_US-components/context/AppContext/AppContextProvider-0":{"__typename":"CachedAsset","id":"text:en_US-components/context/AppContext/AppContextProvider-0","value":{"noCommunity":"Cannot find community","noUser":"Cannot find current user","noNode":"Cannot find node with id {nodeId}","noMessage":"Cannot find message with id {messageId}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Loading/LoadingDot-0":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Loading/LoadingDot-0","value":{"title":"Loading..."},"localOverride":false},"User:user:-1":{"__typename":"User","id":"user:-1","uid":-1,"login":"Anonymous","email":"","avatar":null,"rank":null,"kudosWeight":1,"registrationData":{"__typename":"RegistrationData","status":"ANONYMOUS","registrationTime":null,"confirmEmailStatus":false,"registrationAccessLevel":"VIEW","ssoRegistrationFields":[]},"ssoId":null,"profileSettings":{"__typename":"ProfileSettings","dateDisplayStyle":{"__typename":"InheritableStringSettingWithPossibleValues","key":"layout.friendly_dates_enabled","value":"true","localValue":"true","possibleValues":["true","false"]},"dateDisplayFormat":{"__typename":"InheritableStringSetting","key":"layout.format_pattern_date","value":"MM-dd-yyyy","localValue":"MM-dd-yyyy"},"language":{"__typename":"InheritableStringSettingWithPossibleValues","key":"profile.language","value":"en-US","localValue":"en","possibleValues":["en-US"]}},"deleted":false},"Theme:customTheme1":{"__typename":"Theme","id":"customTheme1"},"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bi0yMjktRVFnVWRt?image-coordinates=0%2C0%2C201%2C201\"}":{"__typename":"AssociatedImage","url":"https://community.smartbear.com/t5/s/nwkab66374/images/bi0yMjktRVFnVWRt?image-coordinates=0%2C0%2C201%2C201","mimeType":"image/png"},"Category:category:ready_api_forums":{"__typename":"Category","id":"category:ready_api_forums","entityType":"CATEGORY","displayId":"ready_api_forums","nodeType":"category","depth":1,"title":"ReadyAPI","shortTitle":"ReadyAPI Community","parent":{"__ref":"Category:category:top"}},"Category:category:top":{"__typename":"Category","id":"category:top","displayId":"top","nodeType":"category","depth":0,"title":"Top","entityType":"CATEGORY","shortTitle":"Top"},"Forum:board:readyapi-questions":{"__typename":"Forum","id":"board:readyapi-questions","entityType":"FORUM","displayId":"readyapi-questions","nodeType":"board","depth":2,"conversationStyle":"FORUM","title":"ReadyAPI Questions","description":"","avatar":{"__ref":"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bi0yMjktRVFnVWRt?image-coordinates=0%2C0%2C201%2C201\"}"},"profileSettings":{"__typename":"ProfileSettings","language":null},"parent":{"__ref":"Category:category:ready_api_forums"},"ancestors":{"__typename":"CoreNodeConnection","edges":[{"__typename":"CoreNodeEdge","node":{"__ref":"Community:community:nwkab66374"}},{"__typename":"CoreNodeEdge","node":{"__ref":"Category:category:ready_api_forums"}}]},"userContext":{"__typename":"NodeUserContext","canAddAttachments":true,"canUpdateNode":false,"canPostMessages":false,"isSubscribed":false},"boardPolicies":{"__typename":"BoardPolicies","canPublishArticleOnCreate":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.forums.policy_can_publish_on_create_workflow_action.accessDenied","key":"error.lithium.policies.forums.policy_can_publish_on_create_workflow_action.accessDenied","args":[]}}},"shortTitle":"Questions","repliesProperties":{"__typename":"RepliesProperties","sortOrder":"LIKES","repliesFormat":"threaded"},"eventPath":"category:ready_api_forums/community:nwkab66374board:readyapi-questions/","tagProperties":{"__typename":"TagNodeProperties","tagsEnabled":{"__typename":"PolicyResult","failureReason":null}},"requireTags":false,"tagType":"PRESET_ONLY","description@stripHtml":""},"Rank:rank:29":{"__typename":"Rank","id":"rank:29","position":0,"name":"SmartBear Alumni (Retired)","color":"333333","icon":null,"rankStyle":"TEXT"},"User:user:75488":{"__typename":"User","id":"user:75488","uid":75488,"login":"sonya_m","deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://community.smartbear.com/t5/s/nwkab66374/images/dS03NTQ4OC0xMjkzNWk1OTVFMTM2QUYyNkZDNkQ5"},"rank":{"__ref":"Rank:rank:29"},"email":"","messagesCount":2344,"biography":null,"topicsCount":196,"kudosReceivedCount":0,"kudosGivenCount":0,"kudosWeight":1,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2017-08-01T02:17:03.003-07:00","confirmEmailStatus":null,"registrationAccessLevel":null,"ssoRegistrationFields":[]},"followersCount":null,"solutionsCount":409,"ssoId":null,"entityType":"USER","eventPath":"community:nwkab66374/user:75488"},"ForumTopicMessage:message:203916":{"__typename":"ForumTopicMessage","uid":203916,"subject":"[TechCorner Challenge #4] How to Generate a Request Body Based on Data from Datasource","id":"message:203916","revisionNum":8,"repliesCount":3,"author":{"__ref":"User:user:75488"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:readyapi-questions"},"conversation":{"__ref":"Conversation:conversation:203916"},"readOnly":false,"editFrozen":false,"moderationData":{"__ref":"ModerationData:moderation_data:203916"},"body":"
Hi everyone,
\n
\n
Thank you for your TechCorner input! It has been awesome an extremely helpful. I've got more challenges for you🙂
\n
\n
A request body can be dynamic, and it is not always possible to use the existing ReadyAPI functionality to create it. One use case example could be changing data before sending a request. This is when users need to come up with a custom script.
\n
Your task for today is to write a script that will read data from an Excel file and generate a request body for the SOAP TestStep based on it. The number of rows in the Excel file is dynamic.
<?xml version=\"1.0\"?>\n<soap:Envelope\nxmlns:soap=\"http://www.w3.org/2003/05/soap-envelope/\"\nsoap:encodingStyle=\"http://www.w3.org/2003/05/soap-encoding\">\n\t<soap:Header>\n\t\t<m:Trans xmlns:m=\"https://www.w3schools.com/transaction/\"\n soap:actor=\"https://www.w3schools.com/code/\">234\n\t\t</m:Trans>\n\t</soap:Header>\n\t<soap:Body>\n\t\t<CATALOG>\n\t\t\t<CD>\n\t\t\t\t<TITLE>Empire Burlesque</TITLE>\n\t\t\t\t<ARTIST>Bob Dylan</ARTIST>\n\t\t\t\t<PRICE>10.90</PRICE>\n\t\t\t</CD>\n\t\t\t<CD>\n\t\t\t\t<TITLE>Hide your heart</TITLE>\n\t\t\t\t<ARTIST>Bonnie Tyler</ARTIST>\n\t\t\t\t<PRICE>9.90</PRICE>\n\t\t\t</CD>\n\t\t\t<CD>\n\t\t\t\t<TITLE>Greatest Hits</TITLE>\n\t\t\t\t<ARTIST>Dolly Parton</ARTIST>\n\t\t\t\t<PRICE>9.90</PRICE>\n\t\t\t</CD>\n\t\t\t<CD>\n\t\t\t\t<TITLE>Still got the blues</TITLE>\n\t\t\t\t<ARTIST>Gary Moore</ARTIST>\n\t\t\t\t<PRICE>10.20</PRICE>\n\t\t\t</CD>\n\t\t</CATALOG>\n\t</soap:Body>\n</soap:Envelope>
\n
\n
\n
\n
\n
\n
\n
\n
\n
Have fun when solving this!😊
","body@stringLength":"6063","rawBody":"
Hi everyone,
\n
\n
Thank you for your TechCorner input! It has been awesome an extremely helpful. I've got more challenges for you🙂
\n
\n
A request body can be dynamic, and it is not always possible to use the existing ReadyAPI functionality to create it. One use case example could be changing data before sending a request. This is when users need to come up with a custom script.
\n
Your task for today is to write a script that will read data from an Excel file and generate a request body for the SOAP TestStep based on it. The number of rows in the Excel file is dynamic.
\n<?xml version=\"1.0\"?>\n<soap:Envelope\nxmlns:soap=\"http://www.w3.org/2003/05/soap-envelope/\"\nsoap:encodingStyle=\"http://www.w3.org/2003/05/soap-encoding\">\n\t<soap:Header>\n\t\t<m:Trans xmlns:m=\"https://www.w3schools.com/transaction/\"\n soap:actor=\"https://www.w3schools.com/code/\">234\n\t\t</m:Trans>\n\t</soap:Header>\n\t<soap:Body>\n\t\t<CATALOG>\n\t\t\t<CD>\n\t\t\t\t<TITLE>Empire Burlesque</TITLE>\n\t\t\t\t<ARTIST>Bob Dylan</ARTIST>\n\t\t\t\t<PRICE>10.90</PRICE>\n\t\t\t</CD>\n\t\t\t<CD>\n\t\t\t\t<TITLE>Hide your heart</TITLE>\n\t\t\t\t<ARTIST>Bonnie Tyler</ARTIST>\n\t\t\t\t<PRICE>9.90</PRICE>\n\t\t\t</CD>\n\t\t\t<CD>\n\t\t\t\t<TITLE>Greatest Hits</TITLE>\n\t\t\t\t<ARTIST>Dolly Parton</ARTIST>\n\t\t\t\t<PRICE>9.90</PRICE>\n\t\t\t</CD>\n\t\t\t<CD>\n\t\t\t\t<TITLE>Still got the blues</TITLE>\n\t\t\t\t<ARTIST>Gary Moore</ARTIST>\n\t\t\t\t<PRICE>10.20</PRICE>\n\t\t\t</CD>\n\t\t</CATALOG>\n\t</soap:Body>\n</soap:Envelope>\n
\n
\n
\n
\n
\n
\n
\n
\n
Have fun when solving this!😊
","kudosSumWeight":0,"postTime":"2020-06-29T02:26:50.804-07:00","images":{"__typename":"AssociatedImageConnection","edges":[{"__typename":"AssociatedImageEdge","cursor":"MjQuMTF8Mi4xfG98MjV8X05WX3wx","node":{"__ref":"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5MTYtODkxMGlDNTRCMDlDQ0Q0NjkwMjc1?revision=8\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjQuMTF8Mi4xfG98MjV8X05WX3wy","node":{"__ref":"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5MTYtODkwOWlFRkU3MkNGNTREOEFBNDcx?revision=8\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjQuMTF8Mi4xfG98MjV8X05WX3wz","node":{"__ref":"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5MTYtODg5MWk2NDgxODhFMUUyOTg2RTAy?revision=8\"}"}}],"totalCount":3,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"attachments":{"__typename":"AttachmentConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[]},"tags":{"__typename":"TagConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[{"__typename":"TagEdge","cursor":"MjQuMTF8Mi4xfG98MTB8X05WX3wx","node":{"__typename":"Tag","id":"tag:Data-Driven Testing","text":"Data-Driven Testing","time":"2015-08-13T09:09:53.532-07:00","lastActivityTime":null,"messagesCount":null,"followersCount":null}},{"__typename":"TagEdge","cursor":"MjQuMTF8Mi4xfG98MTB8X05WX3wy","node":{"__typename":"Tag","id":"tag:Scripting","text":"Scripting","time":"2015-05-29T05:46:36.658-07:00","lastActivityTime":null,"messagesCount":null,"followersCount":null}},{"__typename":"TagEdge","cursor":"MjQuMTF8Mi4xfG98MTB8X05WX3wz","node":{"__typename":"Tag","id":"tag:SOAP","text":"SOAP","time":"2015-06-08T06:22:43.369-07:00","lastActivityTime":null,"messagesCount":null,"followersCount":null}},{"__typename":"TagEdge","cursor":"MjQuMTF8Mi4xfG98MTB8X05WX3w0","node":{"__typename":"Tag","id":"tag:TechCornerChallenge","text":"TechCornerChallenge","time":"2020-07-20T05:29:07.474-07:00","lastActivityTime":null,"messagesCount":null,"followersCount":null}}]},"timeToRead":2,"currentRevision":{"__ref":"Revision:revision:203916_8"},"latestVersion":null,"metrics":{"__typename":"MessageMetrics","views":3899},"visibilityScope":"PUBLIC","canonicalUrl":null,"seoTitle":null,"seoDescription":null,"isEscalated":null,"placeholder":false,"originalMessageForPlaceholder":null,"messagePolicies":{"__typename":"MessagePolicies","canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}},"archivalData":null,"searchSnippet":"Hi everyone, \n \n Thank you for your TechCorner input! It has been awesome an extremely helpful. I've got more challenges for you🙂 \n \n A request body can be dynamic, and it is not ...","replies":{"__typename":"MessageConnection","edges":[{"__typename":"MessageEdge","cursor":"MjQuMTF8Mi4xfG98MTB8MTQ6MCwzOToxfDE","node":{"__ref":"AcceptedSolutionMessage:message:203919"}},{"__typename":"MessageEdge","cursor":"MjQuMTF8Mi4xfG98MTB8MTQ6MCwzOToxfDI","node":{"__ref":"AcceptedSolutionMessage:message:203943"}}],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"customFields":[]},"Conversation:conversation:203916":{"__typename":"Conversation","id":"conversation:203916","solved":true,"topic":{"__ref":"ForumTopicMessage:message:203916"},"lastPostingActivityTime":"2020-07-27T02:42:04.775-07:00","lastPostTime":"2020-07-01T23:32:15.067-07:00","unreadReplyCount":3,"isSubscribed":false},"ModerationData:moderation_data:203916":{"__typename":"ModerationData","id":"moderation_data:203916","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5MTYtODkxMGlDNTRCMDlDQ0Q0NjkwMjc1?revision=8\"}":{"__typename":"AssociatedImage","url":"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5MTYtODkxMGlDNTRCMDlDQ0Q0NjkwMjc1?revision=8","title":"Star_Gold.png","associationType":"BODY","width":25,"height":23,"altText":null},"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5MTYtODkwOWlFRkU3MkNGNTREOEFBNDcx?revision=8\"}":{"__typename":"AssociatedImage","url":"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5MTYtODkwOWlFRkU3MkNGNTREOEFBNDcx?revision=8","title":"Star_gray.png","associationType":"BODY","width":25,"height":23,"altText":null},"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5MTYtODg5MWk2NDgxODhFMUUyOTg2RTAy?revision=8\"}":{"__typename":"AssociatedImage","url":"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5MTYtODg5MWk2NDgxODhFMUUyOTg2RTAy?revision=8","title":"Excel-example.png","associationType":"BODY","width":389,"height":196,"altText":null},"Revision:revision:203916_8":{"__typename":"Revision","id":"revision:203916_8","lastEditTime":"2020-07-27T02:42:04.775-07:00"},"CachedAsset:theme:customTheme1-1737143110689":{"__typename":"CachedAsset","id":"theme:customTheme1-1737143110689","value":{"id":"customTheme1","animation":{"fast":"150ms","normal":"250ms","slow":"500ms","slowest":"750ms","function":"cubic-bezier(0.07, 0.91, 0.51, 1)","__typename":"AnimationThemeSettings"},"avatar":{"borderRadius":"50%","collections":["default"],"__typename":"AvatarThemeSettings"},"basics":{"browserIcon":{"imageAssetName":"Favicon-1702330027750.png","imageLastModified":"1702330030805","__typename":"ThemeAsset"},"customerLogo":{"imageAssetName":"SmartBear_Community-1737041278408.png","imageLastModified":"1737041280700","__typename":"ThemeAsset"},"maximumWidthOfPageContent":"1200px","oneColumnNarrowWidth":"800px","gridGutterWidthMd":"30px","gridGutterWidthXs":"10px","pageWidthStyle":"WIDTH_OF_BROWSER","__typename":"BasicsThemeSettings"},"buttons":{"borderRadiusSm":"4px","borderRadius":"4px","borderRadiusLg":"5px","paddingY":"5px","paddingYLg":"7px","paddingYHero":"var(--lia-bs-btn-padding-y-lg)","paddingX":"12px","paddingXLg":"16px","paddingXHero":"60px","fontStyle":"NORMAL","fontWeight":"400","textTransform":"NONE","disabledOpacity":0.5,"primaryTextColor":"var(--lia-bs-white)","primaryTextHoverColor":"var(--lia-bs-white)","primaryTextActiveColor":"var(--lia-bs-white)","primaryBgColor":"var(--lia-bs-primary)","primaryBgHoverColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) * 0.85))","primaryBgActiveColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) * 0.7))","primaryBorder":"1px solid transparent","primaryBorderHover":"1px solid transparent","primaryBorderActive":"1px solid transparent","primaryBorderFocus":"1px solid var(--lia-bs-white)","primaryBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","secondaryTextColor":"var(--lia-bs-body-color)","secondaryTextHoverColor":"hsl(var(--lia-bs-body-color-h), var(--lia-bs-body-color-s), calc(var(--lia-bs-body-color-l) * 0.95))","secondaryTextActiveColor":"hsl(var(--lia-bs-body-color-h), var(--lia-bs-body-color-s), calc(var(--lia-bs-body-color-l) * 0.9))","secondaryBgColor":"var(--lia-bs-gray-200)","secondaryBgHoverColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.96))","secondaryBgActiveColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.92))","secondaryBorder":"1px solid transparent","secondaryBorderHover":"1px solid transparent","secondaryBorderActive":"1px solid transparent","secondaryBorderFocus":"1px solid transparent","secondaryBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","tertiaryTextColor":"var(--lia-bs-primary)","tertiaryTextHoverColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) * 0.95))","tertiaryTextActiveColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) * 0.9))","tertiaryBgColor":"transparent","tertiaryBgHoverColor":"transparent","tertiaryBgActiveColor":"hsla(var(--lia-bs-body-bg-h), var(--lia-bs-body-bg-s), var(--lia-bs-body-bg-l), 0.04)","tertiaryBorder":"1px solid transparent","tertiaryBorderHover":"1px solid hsla(var(--lia-bs-body-bg-h), var(--lia-bs-body-bg-s), var(--lia-bs-body-bg-l), 0.08)","tertiaryBorderActive":"1px solid transparent","tertiaryBorderFocus":"1px solid transparent","tertiaryBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","destructiveTextColor":"var(--lia-bs-danger)","destructiveTextHoverColor":"hsl(var(--lia-bs-danger-h), var(--lia-bs-danger-s), calc(var(--lia-bs-danger-l) * 0.95))","destructiveTextActiveColor":"hsl(var(--lia-bs-danger-h), var(--lia-bs-danger-s), calc(var(--lia-bs-danger-l) * 0.9))","destructiveBgColor":"var(--lia-bs-gray-200)","destructiveBgHoverColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.96))","destructiveBgActiveColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.92))","destructiveBorder":"1px solid transparent","destructiveBorderHover":"1px solid transparent","destructiveBorderActive":"1px solid transparent","destructiveBorderFocus":"1px solid transparent","destructiveBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","__typename":"ButtonsThemeSettings"},"border":{"color":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","mainContent":"NONE","sideContent":"NONE","radiusSm":"3px","radius":"5px","radiusLg":"9px","radius50":"100vw","__typename":"BorderThemeSettings"},"boxShadow":{"xs":"0 0 0 1px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.08), 0 3px 0 -1px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.08)","sm":"0 2px 4px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.06)","md":"0 5px 15px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.15)","lg":"0 10px 30px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.15)","__typename":"BoxShadowThemeSettings"},"cards":{"bgColor":"var(--lia-panel-bg-color)","borderRadius":"var(--lia-panel-border-radius)","boxShadow":"var(--lia-box-shadow-xs)","__typename":"CardsThemeSettings"},"chip":{"maxWidth":"300px","height":"30px","__typename":"ChipThemeSettings"},"coreTypes":{"defaultMessageLinkColor":"var(--lia-bs-link-color)","defaultMessageLinkDecoration":"none","defaultMessageLinkFontStyle":"NORMAL","defaultMessageLinkFontWeight":"600","defaultMessageFontStyle":"NORMAL","defaultMessageFontWeight":"400","forumColor":"#28B1FD","forumFontFamily":"var(--lia-bs-font-family-base)","forumFontWeight":"var(--lia-default-message-font-weight)","forumLineHeight":"var(--lia-bs-line-height-base)","forumFontStyle":"var(--lia-default-message-font-style)","forumMessageLinkColor":"var(--lia-default-message-link-color)","forumMessageLinkDecoration":"var(--lia-default-message-link-decoration)","forumMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","forumMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","forumSolvedColor":"#08B130","blogColor":"#000000","blogFontFamily":"var(--lia-bs-font-family-base)","blogFontWeight":"var(--lia-default-message-font-weight)","blogLineHeight":"1.75","blogFontStyle":"var(--lia-default-message-font-style)","blogMessageLinkColor":"var(--lia-default-message-link-color)","blogMessageLinkDecoration":"var(--lia-default-message-link-decoration)","blogMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","blogMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","tkbColor":"#00537C","tkbFontFamily":"var(--lia-bs-font-family-base)","tkbFontWeight":"var(--lia-default-message-font-weight)","tkbLineHeight":"1.75","tkbFontStyle":"var(--lia-default-message-font-style)","tkbMessageLinkColor":"var(--lia-default-message-link-color)","tkbMessageLinkDecoration":"var(--lia-default-message-link-decoration)","tkbMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","tkbMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","qandaColor":"#4099E2","qandaFontFamily":"var(--lia-bs-font-family-base)","qandaFontWeight":"var(--lia-default-message-font-weight)","qandaLineHeight":"var(--lia-bs-line-height-base)","qandaFontStyle":"var(--lia-default-message-link-font-style)","qandaMessageLinkColor":"var(--lia-default-message-link-color)","qandaMessageLinkDecoration":"var(--lia-default-message-link-decoration)","qandaMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","qandaMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","qandaSolvedColor":"#3FA023","ideaColor":"#FF8000","ideaFontFamily":"var(--lia-bs-font-family-base)","ideaFontWeight":"var(--lia-default-message-font-weight)","ideaLineHeight":"var(--lia-bs-line-height-base)","ideaFontStyle":"var(--lia-default-message-font-style)","ideaMessageLinkColor":"var(--lia-default-message-link-color)","ideaMessageLinkDecoration":"var(--lia-default-message-link-decoration)","ideaMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","ideaMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","contestColor":"#FCC845","contestFontFamily":"var(--lia-bs-font-family-base)","contestFontWeight":"var(--lia-default-message-font-weight)","contestLineHeight":"var(--lia-bs-line-height-base)","contestFontStyle":"var(--lia-default-message-link-font-style)","contestMessageLinkColor":"var(--lia-default-message-link-color)","contestMessageLinkDecoration":"var(--lia-default-message-link-decoration)","contestMessageLinkFontStyle":"ITALIC","contestMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","occasionColor":"#D13A1F","occasionFontFamily":"var(--lia-bs-font-family-base)","occasionFontWeight":"var(--lia-default-message-font-weight)","occasionLineHeight":"var(--lia-bs-line-height-base)","occasionFontStyle":"var(--lia-default-message-font-style)","occasionMessageLinkColor":"var(--lia-default-message-link-color)","occasionMessageLinkDecoration":"var(--lia-default-message-link-decoration)","occasionMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","occasionMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","grouphubColor":"#173647","categoryColor":"#949494","communityColor":"#FFFFFF","productColor":"#949494","__typename":"CoreTypesThemeSettings"},"colors":{"black":"#000000","white":"#FFFFFF","gray100":"#F7F7F7","gray200":"#F7F7F7","gray300":"#E8E8E8","gray400":"#D9D9D9","gray500":"#CCCCCC","gray600":"#949494","gray700":"#707070","gray800":"#545454","gray900":"#333333","dark":"#545454","light":"#F7F7F7","primary":"#097EB2","secondary":"#333333","bodyText":"#212429","bodyBg":"#FFFFFF","info":"#097EB2","success":"#08B130","warning":"#FCC844","danger":"#D13A1F","alertSystem":"#FF6600","textMuted":"#707070","highlight":"#FFFCAD","outline":"var(--lia-bs-primary)","custom":["#F8FAFB","#F0F3F5","#E4EAF1","#D8DDE4","#28B1FD","#00537C","#173647","#FF730B"],"__typename":"ColorsThemeSettings"},"divider":{"size":"3px","marginLeft":"4px","marginRight":"4px","borderRadius":"50%","bgColor":"var(--lia-bs-gray-600)","bgColorActive":"var(--lia-bs-gray-600)","__typename":"DividerThemeSettings"},"dropdown":{"fontSize":"var(--lia-bs-font-size-sm)","borderColor":"var(--lia-bs-border-color)","borderRadius":"var(--lia-bs-border-radius-sm)","dividerBg":"var(--lia-bs-gray-300)","itemPaddingY":"5px","itemPaddingX":"20px","headerColor":"var(--lia-bs-gray-700)","__typename":"DropdownThemeSettings"},"email":{"link":{"color":"#0069D4","hoverColor":"#0061c2","decoration":"none","hoverDecoration":"underline","__typename":"EmailLinkSettings"},"border":{"color":"#e4e4e4","__typename":"EmailBorderSettings"},"buttons":{"borderRadiusLg":"5px","paddingXLg":"16px","paddingYLg":"7px","fontWeight":"700","primaryTextColor":"#ffffff","primaryTextHoverColor":"#ffffff","primaryBgColor":"#0069D4","primaryBgHoverColor":"#005cb8","primaryBorder":"1px solid transparent","primaryBorderHover":"1px solid transparent","__typename":"EmailButtonsSettings"},"panel":{"borderRadius":"5px","borderColor":"#e4e4e4","__typename":"EmailPanelSettings"},"__typename":"EmailThemeSettings"},"emoji":{"skinToneDefault":"#ffcd43","skinToneLight":"#fae3c5","skinToneMediumLight":"#e2cfa5","skinToneMedium":"#daa478","skinToneMediumDark":"#a78058","skinToneDark":"#5e4d43","__typename":"EmojiThemeSettings"},"heading":{"color":"var(--lia-bs-body-color)","fontFamily":"Roboto","fontStyle":"NORMAL","fontWeight":"400","h1FontSize":"38px","h2FontSize":"32px","h3FontSize":"28px","h4FontSize":"24px","h5FontSize":"20px","h6FontSize":"16px","lineHeight":"1.3","subHeaderFontSize":"11px","subHeaderFontWeight":"500","h1LetterSpacing":"normal","h2LetterSpacing":"normal","h3LetterSpacing":"normal","h4LetterSpacing":"normal","h5LetterSpacing":"normal","h6LetterSpacing":"normal","subHeaderLetterSpacing":"2px","h1FontWeight":null,"h2FontWeight":null,"h3FontWeight":null,"h4FontWeight":null,"h5FontWeight":null,"h6FontWeight":null,"__typename":"HeadingThemeSettings"},"icons":{"size10":"10px","size12":"12px","size14":"14px","size16":"16px","size20":"20px","size24":"24px","size30":"30px","size40":"40px","size50":"50px","size60":"60px","size80":"80px","size120":"120px","size160":"160px","__typename":"IconsThemeSettings"},"imagePreview":{"bgColor":"var(--lia-bs-gray-900)","titleColor":"var(--lia-bs-white)","controlColor":"var(--lia-bs-white)","controlBgColor":"var(--lia-bs-gray-800)","__typename":"ImagePreviewThemeSettings"},"input":{"borderColor":"var(--lia-bs-gray-600)","disabledColor":"var(--lia-bs-gray-600)","focusBorderColor":"var(--lia-bs-primary)","labelMarginBottom":"10px","btnFontSize":"var(--lia-bs-font-size-sm)","focusBoxShadow":"0 0 0 3px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","checkLabelMarginBottom":"2px","checkboxBorderRadius":"3px","borderRadiusSm":"var(--lia-bs-border-radius-sm)","borderRadius":"var(--lia-bs-border-radius)","borderRadiusLg":"var(--lia-bs-border-radius-lg)","formTextMarginTop":"4px","textAreaBorderRadius":"var(--lia-bs-border-radius)","activeFillColor":"var(--lia-bs-primary)","__typename":"InputThemeSettings"},"loading":{"dotDarkColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.2)","dotLightColor":"hsla(var(--lia-bs-white-h), var(--lia-bs-white-s), var(--lia-bs-white-l), 0.5)","barDarkColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.06)","barLightColor":"hsla(var(--lia-bs-white-h), var(--lia-bs-white-s), var(--lia-bs-white-l), 0.4)","__typename":"LoadingThemeSettings"},"link":{"color":"var(--lia-bs-primary)","hoverColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) - 10%))","decoration":"none","hoverDecoration":"underline","__typename":"LinkThemeSettings"},"listGroup":{"itemPaddingY":"15px","itemPaddingX":"15px","borderColor":"var(--lia-bs-gray-300)","__typename":"ListGroupThemeSettings"},"modal":{"contentTextColor":"var(--lia-bs-body-color)","contentBg":"var(--lia-bs-white)","backgroundBg":"var(--lia-bs-black)","smSize":"440px","mdSize":"760px","lgSize":"1080px","backdropOpacity":0.3,"contentBoxShadowXs":"var(--lia-bs-box-shadow-sm)","contentBoxShadow":"var(--lia-bs-box-shadow)","headerFontWeight":"700","__typename":"ModalThemeSettings"},"navbar":{"position":"FIXED","background":{"attachment":null,"clip":null,"color":"var(--lia-bs-white)","imageAssetName":null,"imageLastModified":"0","origin":null,"position":"CENTER_CENTER","repeat":"NO_REPEAT","size":"COVER","__typename":"BackgroundProps"},"backgroundOpacity":0.8,"paddingTop":"15px","paddingBottom":"15px","borderBottom":"1px solid var(--lia-bs-border-color)","boxShadow":"var(--lia-bs-box-shadow-sm)","brandMarginRight":"30px","brandMarginRightSm":"10px","brandLogoHeight":"30px","linkGap":"10px","linkJustifyContent":"flex-start","linkPaddingY":"5px","linkPaddingX":"10px","linkDropdownPaddingY":"9px","linkDropdownPaddingX":"var(--lia-nav-link-px)","linkColor":"var(--lia-bs-body-color)","linkHoverColor":"var(--lia-bs-primary)","linkFontSize":"var(--lia-bs-font-size-sm)","linkFontStyle":"NORMAL","linkFontWeight":"400","linkTextTransform":"NONE","linkLetterSpacing":"normal","linkBorderRadius":"var(--lia-bs-border-radius-sm)","linkBgColor":"transparent","linkBgHoverColor":"transparent","linkBorder":"none","linkBorderHover":"none","linkBoxShadow":"none","linkBoxShadowHover":"none","linkTextBorderBottom":"none","linkTextBorderBottomHover":"none","dropdownPaddingTop":"10px","dropdownPaddingBottom":"15px","dropdownPaddingX":"10px","dropdownMenuOffset":"2px","dropdownDividerMarginTop":"10px","dropdownDividerMarginBottom":"10px","dropdownBorderColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","controllerBgHoverColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.1)","controllerIconColor":"var(--lia-bs-body-color)","controllerIconHoverColor":"var(--lia-bs-body-color)","controllerTextColor":"var(--lia-nav-controller-icon-color)","controllerTextHoverColor":"var(--lia-nav-controller-icon-hover-color)","controllerHighlightColor":"hsla(30, 100%, 50%)","controllerHighlightTextColor":"var(--lia-yiq-light)","controllerBorderRadius":"var(--lia-border-radius-50)","hamburgerColor":"var(--lia-nav-controller-icon-color)","hamburgerHoverColor":"var(--lia-nav-controller-icon-color)","hamburgerBgColor":"transparent","hamburgerBgHoverColor":"transparent","hamburgerBorder":"none","hamburgerBorderHover":"none","collapseMenuMarginLeft":"20px","collapseMenuDividerBg":"var(--lia-nav-link-color)","collapseMenuDividerOpacity":0.16,"__typename":"NavbarThemeSettings"},"pager":{"textColor":"var(--lia-bs-link-color)","textFontWeight":"var(--lia-font-weight-md)","textFontSize":"var(--lia-bs-font-size-sm)","__typename":"PagerThemeSettings"},"panel":{"bgColor":"var(--lia-bs-white)","borderRadius":"var(--lia-bs-border-radius)","borderColor":"var(--lia-bs-border-color)","boxShadow":"none","__typename":"PanelThemeSettings"},"popover":{"arrowHeight":"8px","arrowWidth":"16px","maxWidth":"300px","minWidth":"100px","headerBg":"var(--lia-bs-white)","borderColor":"var(--lia-bs-border-color)","borderRadius":"var(--lia-bs-border-radius)","boxShadow":"0 0.5rem 1rem hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.15)","__typename":"PopoverThemeSettings"},"prism":{"color":"#000000","bgColor":"#f5f2f0","fontFamily":"var(--font-family-monospace)","fontSize":"var(--lia-bs-font-size-base)","fontWeightBold":"var(--lia-bs-font-weight-bold)","fontStyleItalic":"italic","tabSize":2,"highlightColor":"#b3d4fc","commentColor":"#62707e","punctuationColor":"#6f6f6f","namespaceOpacity":"0.7","propColor":"#990055","selectorColor":"#517a00","operatorColor":"#906736","operatorBgColor":"hsla(0, 0%, 100%, 0.5)","keywordColor":"#0076a9","functionColor":"#d3284b","variableColor":"#c14700","__typename":"PrismThemeSettings"},"rte":{"bgColor":"var(--lia-bs-white)","borderRadius":"var(--lia-panel-border-radius)","boxShadow":" var(--lia-panel-box-shadow)","customColor1":"#bfedd2","customColor2":"#fbeeb8","customColor3":"#f8cac6","customColor4":"#eccafa","customColor5":"#c2e0f4","customColor6":"#2dc26b","customColor7":"#f1c40f","customColor8":"#e03e2d","customColor9":"#b96ad9","customColor10":"#3598db","customColor11":"#169179","customColor12":"#e67e23","customColor13":"#ba372a","customColor14":"#843fa1","customColor15":"#236fa1","customColor16":"#ecf0f1","customColor17":"#ced4d9","customColor18":"#95a5a6","customColor19":"#7e8c8d","customColor20":"#34495e","customColor21":"#000000","customColor22":"#ffffff","defaultMessageHeaderMarginTop":"40px","defaultMessageHeaderMarginBottom":"20px","defaultMessageItemMarginTop":"0","defaultMessageItemMarginBottom":"30px","diffAddedColor":"hsla(170, 53%, 51%, 0.4)","diffChangedColor":"hsla(43, 97%, 63%, 0.4)","diffNoneColor":"hsla(0, 0%, 80%, 0.4)","diffRemovedColor":"hsla(9, 74%, 47%, 0.4)","specialMessageHeaderMarginTop":"40px","specialMessageHeaderMarginBottom":"20px","specialMessageItemMarginTop":"0","specialMessageItemMarginBottom":"30px","__typename":"RteThemeSettings"},"tags":{"bgColor":"var(--lia-bs-gray-200)","bgHoverColor":"var(--lia-bs-gray-400)","borderRadius":"var(--lia-bs-border-radius-sm)","color":"var(--lia-bs-body-color)","hoverColor":"var(--lia-bs-body-color)","fontWeight":"var(--lia-font-weight-md)","fontSize":"var(--lia-font-size-xxs)","textTransform":"UPPERCASE","letterSpacing":"0.5px","__typename":"TagsThemeSettings"},"toasts":{"borderRadius":"var(--lia-bs-border-radius)","paddingX":"12px","__typename":"ToastsThemeSettings"},"typography":{"fontFamilyBase":"Open Sans","fontStyleBase":"NORMAL","fontWeightBase":"400","fontWeightLight":"300","fontWeightNormal":"400","fontWeightMd":"500","fontWeightBold":"700","letterSpacingSm":"normal","letterSpacingXs":"normal","lineHeightBase":"1.5","fontSizeBase":"16px","fontSizeXxs":"11px","fontSizeXs":"12px","fontSizeSm":"14px","fontSizeLg":"20px","fontSizeXl":"24px","smallFontSize":"14px","customFonts":[],"__typename":"TypographyThemeSettings"},"unstyledListItem":{"marginBottomSm":"5px","marginBottomMd":"10px","marginBottomLg":"15px","marginBottomXl":"20px","marginBottomXxl":"25px","__typename":"UnstyledListItemThemeSettings"},"yiq":{"light":"#ffffff","dark":"#000000","__typename":"YiqThemeSettings"},"colorLightness":{"primaryDark":0.36,"primaryLight":0.74,"primaryLighter":0.89,"primaryLightest":0.95,"infoDark":0.39,"infoLight":0.72,"infoLighter":0.85,"infoLightest":0.93,"successDark":0.24,"successLight":0.62,"successLighter":0.8,"successLightest":0.91,"warningDark":0.39,"warningLight":0.68,"warningLighter":0.84,"warningLightest":0.93,"dangerDark":0.41,"dangerLight":0.72,"dangerLighter":0.89,"dangerLightest":0.95,"__typename":"ColorLightnessThemeSettings"},"localOverride":false,"__typename":"Theme"},"localOverride":false},"CachedAsset:text:en_US-components/common/EmailVerification-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/common/EmailVerification-1720711077000","value":{"email.verification.title":"Email Verification Required","email.verification.message.update.email":"To participate in the community, you must first verify your email address. The verification email was sent to {email}. To change your email, visit My Settings.","email.verification.message.resend.email":"To participate in the community, you must first verify your email address. The verification email was sent to {email}. Resend email."},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Loading/LoadingDot-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Loading/LoadingDot-1720711077000","value":{"title":"Loading..."},"localOverride":false},"CachedAsset:quilt:smartbear.prod:pages/forums/ForumMessagePage:board:readyapi-questions-1737143108920":{"__typename":"CachedAsset","id":"quilt:smartbear.prod:pages/forums/ForumMessagePage:board:readyapi-questions-1737143108920","value":{"id":"ForumMessagePage","container":{"id":"Common","headerProps":{"backgroundImageProps":null,"backgroundColor":null,"addComponents":null,"removeComponents":["community.widget.bannerWidget"],"componentOrder":null,"__typename":"QuiltContainerSectionProps"},"headerComponentProps":{"community.widget.breadcrumbWidget":{"disableLastCrumbForDesktop":false}},"footerProps":null,"footerComponentProps":null,"items":[{"id":"message-list","layout":"MAIN_SIDE","bgColor":null,"showTitle":null,"showDescription":null,"textPosition":null,"textColor":null,"sectionEditLevel":null,"bgImage":null,"disableSpacing":null,"edgeToEdgeDisplay":null,"fullHeight":null,"showBorder":null,"__typename":"MainSideQuiltSection","columnMap":{"main":[{"id":"messages.widget.topicWithThreadedReplyListWidget","className":"lia-topic-with-replies","props":{"editLevel":"CONFIGURE"},"__typename":"QuiltComponent"}],"side":[{"id":"messages.widget.relatedContentWidget","className":null,"props":null,"__typename":"QuiltComponent"},{"id":"messages.widget.messageListForNodeByRecentActivityWidget","className":null,"props":{"hideIfEmpty":true,"useTitle":true,"showTabs":false,"pageSize":5,"pagerVariant":{"type":"loadMore"},"style":"compact","viewVariant":{"type":"inline","props":{"useRepliesCount":false,"useMedia":false,"useAuthorRank":false,"useNode":false,"boardIconSize":"24","truncateBodyLength":-1,"useNodeLink":true,"usePreviewMedia":false,"timeStampType":"conversation.lastPostingActivityTime","avatarSize":"40","useTextBody":true,"useSolvedBadge":true,"subjectAs":"h6","renderPostTimeBeforeAuthor":true,"useAvatar":true,"useTimeToRead":false,"useSpoilerFreeBody":true,"useKudosCount":false,"useViewCount":false,"useBody":false,"useTags":false,"clampSubjectLines":1,"useBoardIcon":false,"clampBodyLines":3,"useAuthorLogin":true,"useUnreadCount":false,"useNodeHoverCard":true,"useSearchSnippet":false}},"panelType":"divider","sorts":{"conversationLastPostingActivityTime":{"direction":"DESC"}}},"__typename":"QuiltComponent"}],"__typename":"MainSideSectionColumns"}}],"__typename":"QuiltContainer"},"__typename":"Quilt","localOverride":false},"localOverride":false},"CachedAsset:text:en_US-pages/forums/ForumMessagePage-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-pages/forums/ForumMessagePage-1720711077000","value":{"title":"{contextMessageSubject} | {communityTitle}","errorMissing":"This message cannot be found","name":"Forum Message Page","section.message-list.title":"Forum Discussion","archivedMessageTitle":"This Content Has Been Archived"},"localOverride":false},"CachedAsset:quiltWrapper:smartbear.prod:Common:1737143043529":{"__typename":"CachedAsset","id":"quiltWrapper:smartbear.prod:Common:1737143043529","value":{"id":"Common","header":{"backgroundImageProps":{"assetName":null,"backgroundSize":"COVER","backgroundRepeat":"NO_REPEAT","backgroundPosition":"CENTER_CENTER","lastModified":null,"__typename":"BackgroundImageProps"},"backgroundColor":"transparent","items":[{"id":"community.widget.navbarWidget","props":{"showUserName":true,"showRegisterLink":true,"useIconLanguagePicker":true,"useLabelLanguagePicker":true,"style":{"boxShadow":"var(--lia-bs-box-shadow-sm)","linkFontWeight":"400","controllerHighlightColor":"hsla(30, 100%, 50%)","dropdownDividerMarginBottom":"10px","hamburgerBorderHover":"none","linkFontSize":"14px","linkBoxShadowHover":"none","backgroundOpacity":0.8,"controllerBorderRadius":"var(--lia-border-radius-50)","hamburgerBgColor":"transparent","linkTextBorderBottom":"none","hamburgerColor":"var(--lia-nav-controller-icon-color)","brandLogoHeight":"48px","linkLetterSpacing":"normal","linkBgHoverColor":"transparent","collapseMenuDividerOpacity":0.16,"paddingBottom":"15px","dropdownPaddingBottom":"15px","dropdownMenuOffset":"2px","hamburgerBgHoverColor":"transparent","borderBottom":"1px solid var(--lia-bs-border-color)","hamburgerBorder":"none","dropdownPaddingX":"10px","brandMarginRightSm":"10px","linkBoxShadow":"none","linkJustifyContent":"flex-start","linkColor":"var(--lia-bs-body-color)","collapseMenuDividerBg":"var(--lia-nav-link-color)","dropdownPaddingTop":"10px","controllerHighlightTextColor":"var(--lia-yiq-dark)","controllerTextColor":"var(--lia-nav-controller-icon-color)","background":{"imageAssetName":"","color":"var(--lia-bs-white)","size":"COVER","repeat":"NO_REPEAT","position":"CENTER_CENTER","imageLastModified":""},"linkBorderRadius":"var(--lia-bs-border-radius-sm)","linkHoverColor":"var(--lia-bs-primary)","position":"FIXED","linkBorder":"none","linkTextBorderBottomHover":"0","brandMarginRight":"30px","hamburgerHoverColor":"var(--lia-nav-controller-icon-color)","linkBorderHover":"none","collapseMenuMarginLeft":"20px","linkFontStyle":"NORMAL","linkPaddingX":"10px","controllerTextHoverColor":"var(--lia-nav-controller-icon-hover-color)","paddingTop":"15px","linkPaddingY":"5px","linkTextTransform":"NONE","dropdownBorderColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","controllerBgHoverColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.1)","linkDropdownPaddingX":"var(--lia-nav-link-px)","linkBgColor":"transparent","linkDropdownPaddingY":"9px","controllerIconColor":"var(--lia-bs-body-color)","dropdownDividerMarginTop":"10px","linkGap":"10px","controllerIconHoverColor":"var(--lia-bs-body-color)"},"className":"QuiltComponent_lia-component-edit-mode__0nCcm","links":{"sideLinks":[],"mainLinks":[]},"showSearchIcon":true,"languagePickerStyle":"iconAndLabel"},"__typename":"QuiltComponent"},{"id":"community.widget.breadcrumbWidget","props":null,"__typename":"QuiltComponent"},{"id":"community.widget.bannerWidget","props":null,"__typename":"QuiltComponent"}],"__typename":"QuiltWrapperSection"},"footer":{"backgroundImageProps":{"assetName":null,"backgroundSize":"COVER","backgroundRepeat":"NO_REPEAT","backgroundPosition":"CENTER_CENTER","lastModified":null,"__typename":"BackgroundImageProps"},"backgroundColor":"var(--lia-bs-gray-800)","items":[{"id":"custom.widget.Footer_Links","props":{"widgetVisibility":"signedInOrAnonymous","useTitle":true,"useBackground":false,"title":"","lazyLoad":false},"__typename":"QuiltComponent"},{"id":"custom.widget.Tag_Manager_Helper","props":{"widgetVisibility":"signedInOrAnonymous","useTitle":false,"useBackground":false,"title":"Tag Manager","lazyLoad":false},"__typename":"QuiltComponent"},{"id":"custom.widget.Custom_Style_Helper","props":{"widgetVisibility":"signedInOrAnonymous","useTitle":true,"useBackground":false,"title":"","lazyLoad":false},"__typename":"QuiltComponent"}],"__typename":"QuiltWrapperSection"},"__typename":"QuiltWrapper","localOverride":false},"localOverride":false},"CachedAsset:text:en_US-components/common/ActionFeedback-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/common/ActionFeedback-1720711077000","value":{"joinedGroupHub.title":"Welcome","joinedGroupHub.message":"You are now a member of this group and are subscribed to updates.","groupHubInviteNotFound.title":"Invitation Not Found","groupHubInviteNotFound.message":"Sorry, we could not find your invitation to the group. The owner may have canceled the invite.","groupHubNotFound.title":"Group Not Found","groupHubNotFound.message":"The grouphub you tried to join does not exist. It may have been deleted.","existingGroupHubMember.title":"Already Joined","existingGroupHubMember.message":"You are already a member of this group.","accountLocked.title":"Account Locked","accountLocked.message":"Your account has been locked due to multiple failed attempts. Try again in {lockoutTime} minutes.","editedGroupHub.title":"Changes Saved","editedGroupHub.message":"Your group has been updated.","leftGroupHub.title":"Goodbye","leftGroupHub.message":"You are no longer a member of this group and will not receive future updates.","deletedGroupHub.title":"Deleted","deletedGroupHub.message":"The group has been deleted.","groupHubCreated.title":"Group Created","groupHubCreated.message":"{groupHubName} is ready to use","accountClosed.title":"Account Closed","accountClosed.message":"The account has been closed and you will now be redirected to the homepage","resetTokenExpired.title":"Reset Password Link has Expired","resetTokenExpired.message":"Try resetting your password again","invalidUrl.title":"Invalid URL","invalidUrl.message":"The URL you're using is not recognized. Verify your URL and try again.","accountClosedForUser.title":"Account Closed","accountClosedForUser.message":"{userName}'s account is closed","inviteTokenInvalid.title":"Invitation Invalid","inviteTokenInvalid.message":"Your invitation to the community has been canceled or expired.","inviteTokenError.title":"Invitation Verification Failed","inviteTokenError.message":"The url you are utilizing is not recognized. Verify your URL and try again","pageNotFound.title":"Access Denied","pageNotFound.message":"You do not have access to this area of the community or it doesn't exist","eventAttending.title":"Responded as Attending","eventAttending.message":"You'll be notified when there's new activity and reminded as the event approaches","eventInterested.title":"Responded as Interested","eventInterested.message":"You'll be notified when there's new activity and reminded as the event approaches","eventNotFound.title":"Event Not Found","eventNotFound.message":"The event you tried to respond to does not exist.","redirectToRelatedPage.title":"Showing Related Content","redirectToRelatedPageForBaseUsers.title":"Showing Related Content","redirectToRelatedPageForBaseUsers.message":"The content you are trying to access is archived","redirectToRelatedPage.message":"The content you are trying to access is archived","relatedUrl.archivalLink.flyoutMessage":"The content you are trying to access is archived View Archived Content"},"localOverride":false},"CachedAsset:component:custom.widget.Footer_Links-en-1737143135706":{"__typename":"CachedAsset","id":"component:custom.widget.Footer_Links-en-1737143135706","value":{"component":{"id":"custom.widget.Footer_Links","template":{"id":"Footer_Links","markupLanguage":"HANDLEBARS","style":null,"texts":null,"defaults":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"Footer Links","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.Footer_Links","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"CUSTOM","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"Footer Links","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":null,"form":null},"localOverride":false},"CachedAsset:component:custom.widget.Tag_Manager_Helper-en-1737143135706":{"__typename":"CachedAsset","id":"component:custom.widget.Tag_Manager_Helper-en-1737143135706","value":{"component":{"id":"custom.widget.Tag_Manager_Helper","template":{"id":"Tag_Manager_Helper","markupLanguage":"HANDLEBARS","style":null,"texts":null,"defaults":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"Helper widget to inject Google Tag Manager scripts into head element","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.Tag_Manager_Helper","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"CUSTOM","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"Helper widget to inject Google Tag Manager scripts into head element","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":null,"form":null},"localOverride":false},"CachedAsset:component:custom.widget.Custom_Style_Helper-en-1737143135706":{"__typename":"CachedAsset","id":"component:custom.widget.Custom_Style_Helper-en-1737143135706","value":{"component":{"id":"custom.widget.Custom_Style_Helper","template":{"id":"Custom_Style_Helper","markupLanguage":"HANDLEBARS","style":null,"texts":null,"defaults":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"Helper widget to inject SmartBear Styles","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.Custom_Style_Helper","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"CUSTOM","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"Helper widget to inject SmartBear Styles","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":null,"form":null},"localOverride":false},"CachedAsset:text:en_US-components/community/Navbar-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/community/Navbar-1720711077000","value":{"community":"Community Home","inbox":"Inbox","manageContent":"Manage Content","tos":"Terms of Service","forgotPassword":"Forgot Password","themeEditor":"Theme Editor","edit":"Edit Navigation Bar","skipContent":"Skip to content"},"localOverride":false},"CachedAsset:text:en_US-components/community/NavbarHamburgerDropdown-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/community/NavbarHamburgerDropdown-1720711077000","value":{"hamburgerLabel":"Side Menu"},"localOverride":false},"CachedAsset:text:en_US-components/community/BrandLogo-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/community/BrandLogo-1720711077000","value":{"logoAlt":"Khoros","themeLogoAlt":"Brand Logo"},"localOverride":false},"CachedAsset:text:en_US-components/community/NavbarTextLinks-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/community/NavbarTextLinks-1720711077000","value":{"more":"More"},"localOverride":false},"CachedAsset:text:en_US-components/search/SpotlightSearchIcon-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/search/SpotlightSearchIcon-1720711077000","value":{"search":"Search"},"localOverride":false},"CachedAsset:text:en_US-components/authentication/AuthenticationLink-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/authentication/AuthenticationLink-1720711077000","value":{"title.login":"Sign In","title.registration":"Register","title.forgotPassword":"Forgot Password","title.multiAuthLogin":"Sign In"},"localOverride":false},"CachedAsset:text:en_US-components/community/Breadcrumb-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/community/Breadcrumb-1720711077000","value":{"navLabel":"Breadcrumbs","dropdown":"Additional parent page navigation"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageBanner-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageBanner-1720711077000","value":{"messageMarkedAsSpam":"This post has been marked as spam","messageMarkedAsSpam@board:TKB":"This article has been marked as spam","messageMarkedAsSpam@board:BLOG":"This post has been marked as spam","messageMarkedAsSpam@board:FORUM":"This discussion has been marked as spam","messageMarkedAsSpam@board:OCCASION":"This event has been marked as spam","messageMarkedAsSpam@board:IDEA":"This idea has been marked as spam","manageSpam":"Manage Spam","messageMarkedAsAbuse":"This post has been marked as abuse","messageMarkedAsAbuse@board:TKB":"This article has been marked as abuse","messageMarkedAsAbuse@board:BLOG":"This post has been marked as abuse","messageMarkedAsAbuse@board:FORUM":"This discussion has been marked as abuse","messageMarkedAsAbuse@board:OCCASION":"This event has been marked as abuse","messageMarkedAsAbuse@board:IDEA":"This idea has been marked as abuse","preModCommentAuthorText":"This comment will be published as soon as it is approved","preModCommentModeratorText":"This comment is awaiting moderation","messageMarkedAsOther":"This post has been rejected due to other reasons","messageMarkedAsOther@board:TKB":"This article has been rejected due to other reasons","messageMarkedAsOther@board:BLOG":"This post has been rejected due to other reasons","messageMarkedAsOther@board:FORUM":"This discussion has been rejected due to other reasons","messageMarkedAsOther@board:OCCASION":"This event has been rejected due to other reasons","messageMarkedAsOther@board:IDEA":"This idea has been rejected due to other reasons","messageArchived":"This post was archived on {date}","relatedUrl":"View Related Content","relatedContentText":"Showing related content","archivedContentLink":"View Archived Content"},"localOverride":false},"CachedAsset:text:en_US-components/messages/RelatedContentWidget-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/RelatedContentWidget-1720711077000","value":{"title":"Related Content","emptyDescription":"No content to show"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageListForNodeByRecentActivityWidget-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageListForNodeByRecentActivityWidget-1720711077000","value":{"title@userScope:other":"Recent Content","title@userScope:self":"Contributions","title@board:FORUM@userScope:other":"Recent Discussions","title@board:BLOG@userScope:other":"Recent Blogs","emptyDescription":"No content to show","MessageListForNodeByRecentActivityWidgetEditor.nodeScope.label":"Scope","title@instance:1703254420736":"Latest Posts","title@instance:1698433901422":"Latest Posts"},"localOverride":false},"Conversation:conversation:273626":{"__typename":"Conversation","id":"conversation:273626","topic":{"__typename":"ForumTopicMessage","uid":273626},"lastPostingActivityTime":"2025-01-16T07:21:37.611-08:00","solved":false},"ForumTopicMessage:message:273626":{"__typename":"ForumTopicMessage","subject":"Reporting on call-to-testcase","conversation":{"__ref":"Conversation:conversation:273626"},"id":"message:273626","revisionNum":1,"uid":273626,"depth":0,"board":{"__ref":"Forum:board:readyapi-questions"},"author":{"__typename":"User","uid":128152,"login":"joostdgfed","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://community.smartbear.com/t5/s/nwkab66374/m_assets/avatars/default/avatar-1.svg"}},"metrics":{"__typename":"MessageMetrics","views":35},"postTime":"2025-01-09T08:40:21.698-08:00","lastPublishTime":"2025-01-09T08:40:21.698-08:00","readOnly":false},"Conversation:conversation:273768":{"__typename":"Conversation","id":"conversation:273768","topic":{"__typename":"ForumTopicMessage","uid":273768},"lastPostingActivityTime":"2025-01-14T00:29:22.029-08:00","solved":false},"ForumTopicMessage:message:273768":{"__typename":"ForumTopicMessage","subject":"Get Data Dialog - generated xpath not working","conversation":{"__ref":"Conversation:conversation:273768"},"id":"message:273768","revisionNum":1,"uid":273768,"depth":0,"board":{"__ref":"Forum:board:readyapi-questions"},"author":{"__typename":"User","uid":128236,"login":"Meinhard","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://community.smartbear.com/t5/s/nwkab66374/m_assets/avatars/default/avatar-7.svg"}},"metrics":{"__typename":"MessageMetrics","views":17},"postTime":"2025-01-14T00:29:22.029-08:00","lastPublishTime":"2025-01-14T00:29:22.029-08:00","readOnly":false},"Conversation:conversation:273630":{"__typename":"Conversation","id":"conversation:273630","topic":{"__typename":"ForumTopicMessage","uid":273630},"lastPostingActivityTime":"2025-01-13T06:32:58.435-08:00","solved":false},"ForumTopicMessage:message:273630":{"__typename":"ForumTopicMessage","subject":"Differences with GIT check-ins for Windows and iOS ARM users","conversation":{"__ref":"Conversation:conversation:273630"},"id":"message:273630","revisionNum":1,"uid":273630,"depth":0,"board":{"__ref":"Forum:board:readyapi-questions"},"author":{"__typename":"User","uid":126607,"login":"sdeevers_starz","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://community.smartbear.com/t5/s/nwkab66374/m_assets/avatars/default/avatar-9.svg"}},"metrics":{"__typename":"MessageMetrics","views":55},"postTime":"2025-01-09T12:54:01.850-08:00","lastPublishTime":"2025-01-09T12:54:01.850-08:00","readOnly":false},"Conversation:conversation:273690":{"__typename":"Conversation","id":"conversation:273690","topic":{"__typename":"ForumTopicMessage","uid":273690},"lastPostingActivityTime":"2025-01-13T01:01:45.996-08:00","solved":false},"ForumTopicMessage:message:273690":{"__typename":"ForumTopicMessage","subject":"Cannot pass the test result to another script","conversation":{"__ref":"Conversation:conversation:273690"},"id":"message:273690","revisionNum":1,"uid":273690,"depth":0,"board":{"__ref":"Forum:board:readyapi-questions"},"author":{"__typename":"User","uid":128116,"login":"chuckmolak","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://community.smartbear.com/t5/s/nwkab66374/m_assets/avatars/default/avatar-1.svg"}},"metrics":{"__typename":"MessageMetrics","views":17},"postTime":"2025-01-13T00:21:36.750-08:00","lastPublishTime":"2025-01-13T00:21:36.750-08:00","readOnly":false},"Conversation:conversation:273622":{"__typename":"Conversation","id":"conversation:273622","topic":{"__typename":"ForumTopicMessage","uid":273622},"lastPostingActivityTime":"2025-01-10T04:20:47.221-08:00","solved":true},"ForumTopicMessage:message:273622":{"__typename":"ForumTopicMessage","subject":"How to set different Content-Types in multipart/form-data POST Request?","conversation":{"__ref":"Conversation:conversation:273622"},"id":"message:273622","revisionNum":1,"uid":273622,"depth":0,"board":{"__ref":"Forum:board:readyapi-questions"},"author":{"__typename":"User","uid":128142,"login":"rasierapparat","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://community.smartbear.com/t5/s/nwkab66374/m_assets/avatars/default/avatar-8.svg"}},"metrics":{"__typename":"MessageMetrics","views":62},"postTime":"2025-01-09T05:13:30.763-08:00","lastPublishTime":"2025-01-09T05:13:30.763-08:00","readOnly":false},"ForumTopicMessage:message:206770":{"__typename":"ForumTopicMessage","uid":206770,"subject":"[TechCorner Challenge #14] Filtering data retrieved from a DataSource","id":"message:206770","revisionNum":3,"repliesCount":7,"author":{"__ref":"User:user:75488"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:readyapi-questions"},"conversation":{"__ref":"Conversation:conversation:206770"},"moderationData":{"__ref":"ModerationData:moderation_data:206770"},"postTime":"2020-09-01T02:17:36.979-07:00","lastPublishTime":"2020-09-02T01:39:13.104-07:00","readOnly":false,"metrics":{"__typename":"MessageMetrics","views":4147},"placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_TOPIC","eventPath":"category:ready_api_forums/community:nwkab66374board:readyapi-questions/message:206770"},"Conversation:conversation:206770":{"__typename":"Conversation","id":"conversation:206770","solved":true,"topic":{"__ref":"ForumTopicMessage:message:206770"},"lastPostingActivityTime":"2020-09-07T04:40:28.515-07:00","lastPostTime":"2020-09-07T04:40:28.515-07:00"},"ModerationData:moderation_data:206770":{"__typename":"ModerationData","id":"moderation_data:206770","status":"APPROVED","rejectReason":null},"RelatedContentMessage:RelatedContentMessage:206770":{"__typename":"RelatedContentMessage","id":"RelatedContentMessage:206770","relatedMessage":{"__ref":"ForumTopicMessage:message:206770"}},"Category:category:TestComplete_forum":{"__typename":"Category","id":"category:TestComplete_forum","entityType":"CATEGORY","displayId":"TestComplete_forum","nodeType":"category","depth":1,"title":"TestComplete","shortTitle":"TestComplete Community"},"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bi0yNDYtaWI3ekVt?image-coordinates=0%2C0%2C201%2C201\"}":{"__typename":"AssociatedImage","url":"https://community.smartbear.com/t5/s/nwkab66374/images/bi0yNDYtaWI3ekVt?image-coordinates=0%2C0%2C201%2C201","mimeType":"image/png"},"Forum:board:testcomplete-questions":{"__typename":"Forum","id":"board:testcomplete-questions","entityType":"FORUM","displayId":"testcomplete-questions","nodeType":"board","depth":2,"conversationStyle":"FORUM","title":"TestComplete Questions","shortTitle":"TestComplete Questions","parent":{"__ref":"Category:category:TestComplete_forum"},"userContext":{"__typename":"NodeUserContext","canAddAttachments":true,"canUpdateNode":false,"canPostMessages":false,"isSubscribed":false},"avatar":{"__ref":"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bi0yNDYtaWI3ekVt?image-coordinates=0%2C0%2C201%2C201\"}"},"description":"","eventPath":"category:TestComplete_forum/community:nwkab66374board:testcomplete-questions/"},"ForumTopicMessage:message:206183":{"__typename":"ForumTopicMessage","uid":206183,"subject":"[TechCorner Challenge #8] Finding Elements on a Web Page","id":"message:206183","revisionNum":2,"repliesCount":7,"author":{"__ref":"User:user:75488"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:testcomplete-questions"},"conversation":{"__ref":"Conversation:conversation:206183"},"moderationData":{"__ref":"ModerationData:moderation_data:206183"},"postTime":"2020-08-18T06:44:22.676-07:00","lastPublishTime":"2020-08-24T06:20:40.816-07:00","readOnly":false,"metrics":{"__typename":"MessageMetrics","views":12854},"placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_TOPIC","eventPath":"category:TestComplete_forum/community:nwkab66374board:testcomplete-questions/message:206183"},"Conversation:conversation:206183":{"__typename":"Conversation","id":"conversation:206183","solved":true,"topic":{"__ref":"ForumTopicMessage:message:206183"},"lastPostingActivityTime":"2020-08-27T06:33:23.508-07:00","lastPostTime":"2020-08-27T06:33:23.508-07:00"},"ModerationData:moderation_data:206183":{"__typename":"ModerationData","id":"moderation_data:206183","status":"APPROVED","rejectReason":null},"RelatedContentMessage:RelatedContentMessage:206183":{"__typename":"RelatedContentMessage","id":"RelatedContentMessage:206183","relatedMessage":{"__ref":"ForumTopicMessage:message:206183"}},"ForumTopicMessage:message:206495":{"__typename":"ForumTopicMessage","uid":206495,"subject":"[TechCorner Challenge #9] Generate a random number within a range","id":"message:206495","revisionNum":2,"repliesCount":10,"author":{"__ref":"User:user:75488"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:testcomplete-questions"},"conversation":{"__ref":"Conversation:conversation:206495"},"moderationData":{"__ref":"ModerationData:moderation_data:206495"},"postTime":"2020-08-25T05:45:03.393-07:00","lastPublishTime":"2020-09-01T07:15:53.350-07:00","readOnly":false,"metrics":{"__typename":"MessageMetrics","views":10960},"placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_TOPIC","eventPath":"category:TestComplete_forum/community:nwkab66374board:testcomplete-questions/message:206495"},"Conversation:conversation:206495":{"__typename":"Conversation","id":"conversation:206495","solved":true,"topic":{"__ref":"ForumTopicMessage:message:206495"},"lastPostingActivityTime":"2020-09-01T07:15:53.350-07:00","lastPostTime":"2020-08-27T23:33:19.755-07:00"},"ModerationData:moderation_data:206495":{"__typename":"ModerationData","id":"moderation_data:206495","status":"APPROVED","rejectReason":null},"RelatedContentMessage:RelatedContentMessage:206495":{"__typename":"RelatedContentMessage","id":"RelatedContentMessage:206495","relatedMessage":{"__ref":"ForumTopicMessage:message:206495"}},"ForumTopicMessage:message:205580":{"__typename":"ForumTopicMessage","uid":205580,"subject":"[TechCorner Challenge #10] Connecting to JMS using Groovy script","id":"message:205580","revisionNum":2,"repliesCount":9,"author":{"__ref":"User:user:75488"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:readyapi-questions"},"conversation":{"__ref":"Conversation:conversation:205580"},"moderationData":{"__ref":"ModerationData:moderation_data:205580"},"postTime":"2020-08-04T08:31:25.041-07:00","lastPublishTime":"2020-08-05T01:44:58.016-07:00","readOnly":false,"metrics":{"__typename":"MessageMetrics","views":5463},"placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_TOPIC","eventPath":"category:ready_api_forums/community:nwkab66374board:readyapi-questions/message:205580"},"Conversation:conversation:205580":{"__typename":"Conversation","id":"conversation:205580","solved":true,"topic":{"__ref":"ForumTopicMessage:message:205580"},"lastPostingActivityTime":"2020-08-06T04:40:01.830-07:00","lastPostTime":"2020-08-06T04:40:01.830-07:00"},"ModerationData:moderation_data:205580":{"__typename":"ModerationData","id":"moderation_data:205580","status":"APPROVED","rejectReason":null},"RelatedContentMessage:RelatedContentMessage:205580":{"__typename":"RelatedContentMessage","id":"RelatedContentMessage:205580","relatedMessage":{"__ref":"ForumTopicMessage:message:205580"}},"ForumTopicMessage:message:204911":{"__typename":"ForumTopicMessage","uid":204911,"subject":"[TechCorner Challenge #8] How to Clear Cookies in API Request","id":"message:204911","revisionNum":7,"repliesCount":17,"author":{"__ref":"User:user:75488"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:readyapi-questions"},"conversation":{"__ref":"Conversation:conversation:204911"},"moderationData":{"__ref":"ModerationData:moderation_data:204911"},"postTime":"2020-07-21T05:47:25.258-07:00","lastPublishTime":"2020-07-30T04:05:50.512-07:00","readOnly":false,"metrics":{"__typename":"MessageMetrics","views":6329},"placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_TOPIC","eventPath":"category:ready_api_forums/community:nwkab66374board:readyapi-questions/message:204911"},"Conversation:conversation:204911":{"__typename":"Conversation","id":"conversation:204911","solved":true,"topic":{"__ref":"ForumTopicMessage:message:204911"},"lastPostingActivityTime":"2020-08-07T02:32:31.055-07:00","lastPostTime":"2020-08-07T02:32:31.055-07:00"},"ModerationData:moderation_data:204911":{"__typename":"ModerationData","id":"moderation_data:204911","status":"APPROVED","rejectReason":null},"RelatedContentMessage:RelatedContentMessage:204911":{"__typename":"RelatedContentMessage","id":"RelatedContentMessage:204911","relatedMessage":{"__ref":"ForumTopicMessage:message:204911"}},"QueryVariables:TopicReplyList:message:203916:8":{"__typename":"QueryVariables","id":"TopicReplyList:message:203916:8","value":{"id":"message:203916","first":10,"sorts":{"kudosSumWeight":{"direction":"DESC","order":0},"postTime":{"direction":"ASC","order":1}},"repliesFirst":3,"repliesFirstDepthThree":1,"repliesSorts":{"kudosSumWeight":{"direction":"DESC","order":0},"postTime":{"direction":"ASC","order":1}},"useAvatar":true,"useAuthorLogin":true,"useAuthorRank":true,"useBody":true,"useKudosCount":true,"useTimeToRead":false,"useMedia":false,"useReadOnlyIcon":false,"useRepliesCount":true,"useSearchSnippet":false,"useAcceptedSolutionButton":true,"useSolvedBadge":false,"useAttachments":false,"attachmentsFirst":5,"useTags":true,"useNodeAncestors":false,"useUserHoverCard":true,"useNodeHoverCard":false,"useModerationStatus":true,"usePreviewSubjectModal":false,"useMessageStatus":true}},"ROOT_MUTATION":{"__typename":"Mutation"},"CachedAsset:text:en_US-components/nodes/NodeLink-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/nodes/NodeLink-1720711077000","value":{"place":"Place {name}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageView/MessageViewStandard-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageView/MessageViewStandard-1720711077000","value":{"anonymous":"Anonymous","author":"{messageAuthorLogin}","authorBy":"{messageAuthorLogin}","board":"{messageBoardTitle}","replyToUser":" to {parentAuthor}","showMoreReplies":"Show More","replyText":"Reply","repliesText":"Replies","markedAsSolved":"Marked as Solved","movedMessagePlaceholder.BLOG":"{count, plural, =0 {This comment has been} other {These comments have been} }","movedMessagePlaceholder.TKB":"{count, plural, =0 {This comment has been} other {These comments have been} }","movedMessagePlaceholder.FORUM":"{count, plural, =0 {This reply has been} other {These replies have been} }","movedMessagePlaceholder.IDEA":"{count, plural, =0 {This comment has been} other {These comments have been} }","movedMessagePlaceholder.OCCASION":"{count, plural, =0 {This comment has been} other {These comments have been} }","movedMessagePlaceholderUrlText":"moved.","messageStatus":"Status: ","statusChanged":"Status changed: {previousStatus} to {currentStatus}","statusAdded":"Status added: {status}","statusRemoved":"Status removed: {status}","labelExpand":"expand replies","labelCollapse":"collapse replies","unhelpfulReason.reason1":"Content is outdated","unhelpfulReason.reason2":"Article is missing information","unhelpfulReason.reason3":"Content is for a different Product","unhelpfulReason.reason4":"Doesn't match what I was searching for"},"localOverride":false},"CachedAsset:text:en_US-components/messages/ThreadedReplyList-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/ThreadedReplyList-1720711077000","value":{"title":"{count, plural, one{# Reply} other{# Replies}}","title@board:BLOG":"{count, plural, one{# Comment} other{# Comments}}","title@board:TKB":"{count, plural, one{# Comment} other{# Comments}}","title@board:IDEA":"{count, plural, one{# Comment} other{# Comments}}","title@board:OCCASION":"{count, plural, one{# Comment} other{# Comments}}","noRepliesTitle":"No Replies","noRepliesTitle@board:BLOG":"No Comments","noRepliesTitle@board:TKB":"No Comments","noRepliesTitle@board:IDEA":"No Comments","noRepliesTitle@board:OCCASION":"No Comments","noRepliesDescription":"Be the first to reply","noRepliesDescription@board:BLOG":"Be the first to comment","noRepliesDescription@board:TKB":"Be the first to comment","noRepliesDescription@board:IDEA":"Be the first to comment","noRepliesDescription@board:OCCASION":"Be the first to comment","messageReadOnlyAlert:BLOG":"Comments have been turned off for this post","messageReadOnlyAlert:TKB":"Comments have been turned off for this article","messageReadOnlyAlert:IDEA":"Comments have been turned off for this idea","messageReadOnlyAlert:FORUM":"Replies have been turned off for this discussion","messageReadOnlyAlert:OCCASION":"Comments have been turned off for this event"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageReplyCallToAction-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageReplyCallToAction-1720711077000","value":{"leaveReply":"Leave a reply...","leaveReply@board:BLOG@message:root":"Leave a comment...","leaveReply@board:TKB@message:root":"Leave a comment...","leaveReply@board:IDEA@message:root":"Leave a comment...","leaveReply@board:OCCASION@message:root":"Leave a comment...","repliesTurnedOff.FORUM":"Replies are turned off for this topic","repliesTurnedOff.BLOG":"Comments are turned off for this topic","repliesTurnedOff.TKB":"Comments are turned off for this topic","repliesTurnedOff.IDEA":"Comments are turned off for this topic","repliesTurnedOff.OCCASION":"Comments are turned off for this topic","infoText":"Stop poking me!"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/QueryHandler-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/QueryHandler-1720711077000","value":{"title":"Query Handler"},"localOverride":false},"CachedAsset:text:en_US-components/customComponent/CustomComponent-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/customComponent/CustomComponent-1720711077000","value":{"errorMessage":"Error rendering component id: {customComponentId}","bannerTitle":"Video provider requires cookies to play the video. Accept to continue or {url} it directly on the provider's site.","buttonTitle":"Accept","urlText":"watch"},"localOverride":false},"Rank:rank:26":{"__typename":"Rank","id":"rank:26","position":9,"name":"Community Hero","color":"333333","icon":null,"rankStyle":"TEXT"},"User:user:77377":{"__typename":"User","id":"user:77377","uid":77377,"login":"HimanshuTayal","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2017-12-11T09:26:05.340-08:00","confirmEmailStatus":null,"registrationAccessLevel":null,"ssoRegistrationFields":[]},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://community.smartbear.com/t5/s/nwkab66374/m_assets/avatars/default/avatar-10.svg"},"rank":{"__ref":"Rank:rank:26"},"messagesCount":781,"kudosGivenCount":44,"kudosReceivedCount":397,"kudosWeight":1,"ssoId":null,"followersCount":null,"solutionsCount":130,"entityType":"USER","eventPath":"community:nwkab66374/user:77377","messagesCount:{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:203916\"}}":781,"kudosGivenCount:{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:203916\"}}":44,"kudosReceivedCount:{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:203916\"}}":397,"solutionsCount:{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:203916\"}}":130},"ModerationData:moderation_data:203919":{"__typename":"ModerationData","id":"moderation_data:203919","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"AcceptedSolutionMessage:message:203919":{"__typename":"AcceptedSolutionMessage","author":{"__ref":"User:user:77377"},"id":"message:203919","revisionNum":3,"uid":203919,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:readyapi-questions"},"parent":{"__ref":"ForumTopicMessage:message:203916"},"conversation":{"__ref":"Conversation:conversation:203916"},"subject":"Re: [TechCorner Challenge #4] How to Generate a Request Body Based on Data from Datasource","moderationData":{"__ref":"ModerationData:moderation_data:203919"},"body":"
Task: Your task for today is to write a script that will read data from an Excel file and generate a request body for the SOAP TestStep based on it. The number of rows in the Excel file is dynamic.
\n
\n
This is a solution created for [TechCorner Challenge #4]
Here is my code which will generate XML out of Data present in Excel file, not matter how many rows are there, it will append the XML according to number of Rows be dynamic.
\n
\n
Pre-requisite : Need to add Groovy Script and Properties Step inside Test Case
\n
\n
\n
\n
import java.io.*\nimport java.text.SimpleDateFormat; \nimport java.util.Calendar; \nimport org.apache.poi.ss.usermodel.*\nimport org.apache.poi.hssf.usermodel.*\nimport org.apache.poi.xssf.usermodel.*\nimport org.apache.poi.ss.util.*\nimport groovy.xml.MarkupBuilder\nimport groovy.xml.StreamingMarkupBuilder\n\ndef fs = new FileInputStream(\"F:\\\\temp.xlsx\")\n\nWorkbook wb = WorkbookFactory.create(fs);\ndef ws = wb.getSheet(\"Sheet1\");\nint r = ws.getLastRowNum();\ntestRunner.testCase.getTestStepByName(\"Properties\").setPropertyValue(\"DataRowCount\", r.toString());\nfor(def i = 1 ; i <= r ; i++ ){\n\tdef row = ws.getRow(i)\n\tdef headerRow = ws.getRow(0)\n\tdef noOfCell = row.getLastCellNum();\n\tfor (def j=0;j<noOfCell;j++){\n\t\tdef headertext = ws.getRow(0).getCell(j).getStringCellValue()\n\t\tCell cell = row.getCell(j)\n\t\tif (cell == null || cell.getCellType() == Cell.CELL_TYPE_BLANK) {\n\t\t\tvalue = \"\";\n\t\t}\n\t\telse if(cell.getCellType() == Cell.CELL_TYPE_BOOLEAN){\n\t\t\tvalue = (cell.getBooleanValue());\n\t\t}\n\t\telse if(cell.getCellType() == Cell.CELL_TYPE_NUMERIC){\n\t\t\tvalue = (cell.getNumericCellValue());\n\t\t}\n\t\telse if(cell.getCellType() == Cell.CELL_TYPE_STRING){\n\t\t\tvalue = (cell.getStringCellValue());\n\t\t}\n\t\telse if(cell.getCellType() == Cell.CELL_TYPE_ERROR){\n\t\t}\n\t\telse if(cell.getCellType() == Cell.CELL_TYPE_FORMULA){\n\t\t\tvalue = String.valueOf(cell.getStringCellValue())\n\t\t}\n \t\ttestRunner.testCase.getTestStepByName(\"Properties\").setPropertyValue(headertext.toString()+\"\"+i.toString(), value.toString())\n\t}\n}\n\ndef start = '''<?xml version=\"1.0\"?>\n<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope/\" soap:encodingStyle=\"http://www.w3.org/2003/05/soap-encoding\">\n\t<soap:Header>\n\t\t<m:Trans xmlns:m=\"https://www.w3schools.com/transaction/\" soap:actor=\"https://www.w3schools.com/code/\">234\n\t\t</m:Trans>\n\t</soap:Header>\n\t<soap:Body>\n\t'''\ndef end = '''\n</soap:Body>\n</soap:Envelope>'''\n\ndef writer = new StringWriter()\ndef xml = new MarkupBuilder(writer) \n\nxml.CATALOG() {\n\tfor(int i = 1 ; i <= r ; i++){\t\t\n\t\tCD(){\n\t\t\tTITLE(context.expand('${Properties#Title'+i.toString()+'}'))\n\t\t\tARTIST(context.expand('${Properties#Artist'+i.toString()+'}'))\n\t\t\tPRICE(context.expand('${Properties#Price'+i.toString()+'}'))\n\t\t}\n\t}\n}\n\nlog.info start + writer + end
\n
\n
\n
","body@stripHtml({\"removeProcessingText\":false,\"removeSpoilerMarkup\":false,\"removeTocMarkup\":false,\"truncateLength\":200})@stringLength":"203","kudosSumWeight":3,"repliesCount":0,"postTime":"2020-06-29T05:42:22.992-07:00","lastPublishTime":"2020-07-27T02:43:32.475-07:00","solution":true,"metrics":{"__typename":"MessageMetrics","views":3685},"visibilityScope":"PUBLIC","placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_REPLY","eventPath":"category:ready_api_forums/community:nwkab66374board:readyapi-questions/message:203916/message:203919","replies":{"__typename":"MessageConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[]},"customFields":[],"attachments":{"__typename":"AttachmentConnection","edges":[],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":200})@stringLength":"203","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}}},"Rank:rank:32":{"__typename":"Rank","id":"rank:32","position":5,"name":"Champion Level 2","color":"333333","icon":null,"rankStyle":"TEXT"},"User:user:21201":{"__typename":"User","id":"user:21201","uid":21201,"login":"nmrao","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2013-05-17T20:34:18.000-07:00","confirmEmailStatus":null,"registrationAccessLevel":null,"ssoRegistrationFields":[]},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://community.smartbear.com/t5/s/nwkab66374/m_assets/avatars/default/avatar-5.svg"},"rank":{"__ref":"Rank:rank:32"},"messagesCount":8074,"kudosGivenCount":782,"kudosReceivedCount":1576,"kudosWeight":1,"ssoId":null,"followersCount":null,"solutionsCount":727,"entityType":"USER","eventPath":"community:nwkab66374/user:21201","messagesCount:{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:203916\"}}":8074,"kudosGivenCount:{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:203916\"}}":782,"kudosReceivedCount:{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:203916\"}}":1576,"solutionsCount:{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:203916\"}}":727},"ModerationData:moderation_data:203943":{"__typename":"ModerationData","id":"moderation_data:203943","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"AcceptedSolutionMessage:message:203943":{"__typename":"AcceptedSolutionMessage","uid":203943,"id":"message:203943","revisionNum":14,"author":{"__ref":"User:user:21201"},"readOnly":false,"repliesCount":1,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:readyapi-questions"},"parent":{"__ref":"ForumTopicMessage:message:203916"},"conversation":{"__ref":"Conversation:conversation:203916"},"subject":"Re: [TechCorner Challenge #4] How to Generate a Request Body Based on Data from Datasource","moderationData":{"__ref":"ModerationData:moderation_data:203943"},"body":"
Task: Your task for today is to write a script that will read data from an Excel file and generate a request body for the SOAP TestStep based on it. The number of rows in the Excel file is dynamic.
\n
\n
This is a solution created for [TechCorner Challenge #4]
\n
\n
Script Features & Handle additional data validations and groovy way of building xml such as
\n
- Does not require any additional test steps.
\n
- Zerochanges in the script, yet provide different output based on the input data, including file path (handled thru custom properties).
\n
- Empty rows (shown in the picture)
\n
- Empty cells (shown in the picture)
\n
- User can choose the sheet name (default is Sheet1)
\n
- User can optionally consider or ignore first row as data
\n
- Handles errors such as File existence in the given path, Sheet name, if rows present or not before building xml. Throws error otherwise.
\n
- Supports .xlsx (poi-3.8.0 & tested in SoapUI 5.4) format
\n
- Uses StreamingMarkupBuilder for building xml (a native way to build xmls easily)
\n
\n
\n
\n
\n
\n
Just add test case customproperties as mentioned below
\n
DATA_FILE and add the file name, mandatory
\n
SHEET_NAME and add name of the sheet in the excel file, optional
\n
IGNORE_FIRST_ROW and add boolean value true or false; optional
\n
\n
\n
Here is the(groovified) script (and follow in-line comments)
\n
Contents of Groovy script, i.e., CreateRequestFromDataSource test step.
\n
\n
\n
\n
\n
import org.apache.poi.xssf.usermodel.XSSFWorkbook\nimport static org.apache.poi.ss.usermodel.Cell.*\nimport groovy.xml.StreamingMarkupBuilder\nimport groovy.xml.XmlUtil\n\n//Used to create the data map from excel cells \ndef columnMap = [0: 'title', 1: 'artist', 2: 'price']\n\n//Validate if the data file exists and only supports .xlsx files as input\ndef isFileValid = { \t\n\tassert null != it, 'File path is empty'\n\tdef xFile = new File(it)\n\tassert xFile.exists(), \"${it} file doesn't exists\"\n\tassert it.endsWith('.xlsx'), 'Only allows file extension .xlsx'\n\ttrue\n}\n\n// A closure that creates data (list of rows; and each row as map) from input file\n// User can choose the sheet name (default is Sheet 1), throws if sheet does not exists\n// And whether to ignore first row or not\n// Also handles empty rows and empty cells\n// Support apache-poi 3.8 and tested in SoapUI 5.4\ndef getData = { filepath, isIgnoreFirstRow = true, sheetName = 'Sheet1' ->\n\tdef data = [] \n\tif (isFileValid(filepath)) {\n\t\tdef sheet = new XSSFWorkbook(filepath).getSheet sheetName\n\t\tassert null != sheet, \"${sheetName} does not existing in the ${filepath}\"\t\t\n\t\tsheet.rowIterator().eachWithIndex { row, rowId ->\n\t\t\tdef map = [:]\n\t\t\tif (!isIgnoreFirstRow || rowId != 0) {\n\t\t\t\tfor (index = 0; index <row.lastCellNum;index++){\n\t\t\t\t\tcell = row.getCell(index, row.CREATE_NULL_AS_BLANK);\n\t\t\t\t\tswitch (cell.cellType) {\n \t\t\t\tcase CELL_TYPE_STRING: map.put(columnMap[index], cell.stringCellValue); break\n \t\t\t\tcase CELL_TYPE_NUMERIC: map.put(columnMap[index], cell.numericCellValue); break\n \t\t\t\tcase CELL_TYPE_BOOLEAN: map.put(columnMap[index], cell.booleanCellValue); break\n \t\t\t\tcase CELL_TYPE_FORMULA: map.put(columnMap[index], cell.getCachedFormulaResultType()); break\n \t\t\t\tdefault: map.put(columnMap[index], ''); break\n\t\t\t\t\t}\n \t\t\t}\n \t\t\tdata << map\n\t\t\t}\t\t\t\t\n\t\t}\n\t}\t\n\tassert data.size(), 'No data created from file'\n\tdata\n}\n\n//A closure that builds the xml request based on the user input\ndef createRequest = { cds, trans ->\n\tdef nameSpacesMap = [\n soap: 'http://schemas.xmlsoap.org/soap/envelope/',\n m: 'https://www.w3schools.com/transaction/'\n ]\n def builder = new StreamingMarkupBuilder()\n builder.encoding ='utf-8'\n def soapRequest = builder.bind {\n namespaces << nameSpacesMap\n soap.Envelope {\n soap.Header {\n \tm.Trans('soap:actor': 'https://www.w3schools.com/code/', trans)\n }\n soap.Body {\n CATALOG {\n \tcds.each { cd ->\n \t\tCD {\n \t\t\tTITLE cd.title\n \t\t\tARTIST cd.artist\n \t\t\tPRICE cd.price\n \t\t}\n \t}\n }\n }\n }\n }\n XmlUtil.serialize soapRequest \n}\n\n//Actuall flow of the script starts here\ndef file = context.testCase.getPropertyValue('DATA_FILE')\ndef sheet = context.testCase.getPropertyValue('SHEET_NAME') ?: 'Sheet1'\ndef ignoreFirstRow = context.testCase.getPropertyValue('IGNORE_FIRST_ROW')?.toBoolean() ?: true\n\n//Call to the closures\nlog.info createRequest(getData(file, ignoreFirstRow, sheet), 234)
\n
\n
\n
\n
\n
ADD-ON
\n
Realized that usually, user not only wants to create / build the SOAP request, but also like to update the request in the following SOAP Request content in the test case.
\n
Let us assume that the test case has Request step, say MyRequest step in which user wants to update the content dynamically from the data source file using groovy script. You can see the steps in the test case from the pictures above.
\n
\n
So in order to complete the use case, needed to append below script at the end of the above in order to achieve the same.
\n
\n
Here user can add an additional test case custom property for Request step name (default is SOAP Request), say REQUEST_STEP_NAME and value as you needed, MyRequest in this case as per picture.
\n
\n
\n
\n
\n
//Call to the closures\ndef request = createRequest(getData(file, ignoreFirstRow, sheet), 234)\n\n//Get the next test step request\ndef nextStepName = context.testCase.getPropertyValue('REQUEST_STEP_NAME') ?: 'SOAP Request'\n//Get the next test step request\ndef nextStepRequest = context.testCase.testSteps[nextStepName].httpRequest\n//Update the request details in the next request test step\nnextStepRequest.requestContent = request
\n
\n
\n
\n
\n
Hope this ADD-ON adds value.
","body@stripHtml({\"removeProcessingText\":false,\"removeSpoilerMarkup\":false,\"removeTocMarkup\":false,\"truncateLength\":200})@stringLength":"203","kudosSumWeight":2,"postTime":"2020-06-29T23:18:51.283-07:00","lastPublishTime":"2020-07-27T02:43:24.301-07:00","solution":true,"metrics":{"__typename":"MessageMetrics","views":3656},"visibilityScope":"PUBLIC","placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_REPLY","eventPath":"category:ready_api_forums/community:nwkab66374board:readyapi-questions/message:203916/message:203943","replies":{"__typename":"MessageConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[{"__typename":"MessageEdge","cursor":"MjQuMTF8Mi4xfG98M3wxNDowLDM5OjF8MQ","node":{"__ref":"ForumReplyMessage:message:204051"}}]},"customFields":[],"attachments":{"__typename":"AttachmentConnection","edges":[],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":200})@stringLength":"203","images":{"__typename":"AssociatedImageConnection","edges":[{"__typename":"AssociatedImageEdge","cursor":"MjQuMTF8Mi4xfG98MjV8X05WX3wx","node":{"__ref":"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5NDMtODg5NGkzM0Q3QzRFNDNBQUYxRUEz?revision=14\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjQuMTF8Mi4xfG98MjV8X05WX3wy","node":{"__ref":"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5NDMtODg5NmlBRDkyNTA3RTczQUM1RUFD?revision=14\"}"}}],"totalCount":2,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}}},"ModerationData:moderation_data:204051":{"__typename":"ModerationData","id":"moderation_data:204051","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:204051":{"__typename":"ForumReplyMessage","author":{"__ref":"User:user:75488"},"id":"message:204051","revisionNum":1,"uid":204051,"depth":2,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:readyapi-questions"},"parent":{"__ref":"AcceptedSolutionMessage:message:203943"},"conversation":{"__ref":"Conversation:conversation:203916"},"subject":"Re: [TechCorner Challenge #4] How to Generate a Request Body Based on Data from Datasource","moderationData":{"__ref":"ModerationData:moderation_data:204051"},"body":"
Rao, Himanshu, thank you for the job well-done!
","body@stripHtml({\"removeProcessingText\":false,\"removeSpoilerMarkup\":false,\"removeTocMarkup\":false,\"truncateLength\":200})@stringLength":"49","kudosSumWeight":0,"repliesCount":0,"postTime":"2020-07-01T23:32:15.067-07:00","lastPublishTime":"2020-07-01T23:32:15.067-07:00","metrics":{"__typename":"MessageMetrics","views":3549},"visibilityScope":"PUBLIC","placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"solution":false,"entityType":"FORUM_REPLY","eventPath":"category:ready_api_forums/community:nwkab66374board:readyapi-questions/message:203916/message:204051","replies":{"__typename":"MessageConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[]},"customFields":[],"attachments":{"__typename":"AttachmentConnection","edges":[],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}}},"QueryVariables:MessageSolutions":{"__typename":"QueryVariables","id":"MessageSolutions","value":{"first":10,"constraints":{"topicId":{"eq":"message:203916"},"solution":{"eq":true}},"sorts":{"postTime":{"direction":"ASC"}},"useAvatar":true,"useAuthorLogin":true,"useAuthorRank":false,"useBody":true,"useKudosCount":false,"useTimeToRead":false,"useMedia":true,"useRepliesCount":false,"useSearchSnippet":false,"useAcceptedSolutionButton":true,"useSolvedBadge":false,"useAttachments":true,"useTags":false,"useUserHoverCard":true,"useNodeHoverCard":true,"usePreviewSubjectModal":false,"useMessageStatus":false}},"CachedAsset:text:en_US-components/messages/EscalatedMessageBanner-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/EscalatedMessageBanner-1720711077000","value":{"escalationMessage":"Escalated to Salesforce by {username} on {date}","viewDetails":"View Details","modalTitle":"Case Details","escalatedBy":"Escalated by: ","escalatedOn":"Escalated on: ","caseNumber":"Case Number: ","status":"Status: ","lastUpdateDate":"Last Update: ","automaticEscalation":"automatic escalation","anonymous":"Anonymous"},"localOverride":false},"CachedAsset:text:en_US-components/users/UserLink-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/users/UserLink-1720711077000","value":{"authorName":"View Profile: {author}","anonymous":"Anonymous"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/users/UserRank-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/users/UserRank-1720711077000","value":{"rankName":"{rankName}","userRank":"Author rank {rankName}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageTime-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageTime-1720711077000","value":{"postTime":"Published: {time}","lastPublishTime":"Last Update: {time}","conversation.lastPostingActivityTime":"Last posting activity time: {time}","conversation.lastPostTime":"Last post time: {time}","moderationData.rejectTime":"Rejected time: {time}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageSubject-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageSubject-1720711077000","value":{"noSubject":"(no subject)"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageBody-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageBody-1720711077000","value":{"showMessageBody":"Show More","mentionsErrorTitle":"{mentionsType, select, board {Board} user {User} message {Message} other {}} No Longer Available","mentionsErrorMessage":"The {mentionsType} you are trying to view has been removed from the community.","videoProcessing":"Video is being processed. Please try again in a few minutes.","bannerTitle":"Video provider requires cookies to play the video. Accept to continue or {url} it directly on the provider's site.","buttonTitle":"Accept","urlText":"watch"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageCustomFields-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageCustomFields-1720711077000","value":{"CustomField.default.label":"Value of {name}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageReplyButton-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageReplyButton-1720711077000","value":{"repliesCount":"{count}","title":"Reply","title@board:BLOG@message:root":"Comment","title@board:TKB@message:root":"Comment","title@board:IDEA@message:root":"Comment","title@board:OCCASION@message:root":"Comment"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageSolutionList-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageSolutionList-1720711077000","value":{"emptyDescription":"No has been message solutions yet"},"localOverride":false},"CachedAsset:text:en_US-components/messages/AcceptedSolutionButton-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/AcceptedSolutionButton-1720711077000","value":{"accept":"Mark as Solution","accepted":"Marked as Solution","errorHeader":"Error!","errorAdd":"There was an error marking as solution.","errorRemove":"There was an error unmarking as solution.","solved":"Solved"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Pager/PagerLoadMore-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Pager/PagerLoadMore-1720711077000","value":{"loadMore":"Show More"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageView/MessageViewInline-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageView/MessageViewInline-1720711077000","value":{"bylineAuthor":"{bylineAuthor}","bylineBoard":"{bylineBoard}","anonymous":"Anonymous","place":"Place {bylineBoard}","gotoParent":"Go to parent {name}"},"localOverride":false},"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5NDMtODg5NGkzM0Q3QzRFNDNBQUYxRUEz?revision=14\"}":{"__typename":"AssociatedImage","url":"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5NDMtODg5NGkzM0Q3QzRFNDNBQUYxRUEz?revision=14","title":"nmrao_1-1593497898636.png","associationType":"BODY","width":265,"height":121,"altText":null},"AssociatedImage:{\"url\":\"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5NDMtODg5NmlBRDkyNTA3RTczQUM1RUFD?revision=14\"}":{"__typename":"AssociatedImage","url":"https://community.smartbear.com/t5/s/nwkab66374/images/bS0yMDM5NDMtODg5NmlBRDkyNTA3RTczQUM1RUFD?revision=14","title":"nmrao_1-1593501400456.png","associationType":"BODY","width":305,"height":328,"altText":null},"CachedAsset:text:en_US-shared/client/components/users/UserAvatar-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/users/UserAvatar-1720711077000","value":{"altText":"{login}'s avatar","altTextGeneric":"User's avatar"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/ranks/UserRankLabel-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/ranks/UserRankLabel-1720711077000","value":{"altTitle":"Icon for {rankName} rank"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/nodes/NodeIcon-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/nodes/NodeIcon-1720711077000","value":{"contentType":"Content Type {style, select, FORUM {Forum} BLOG {Blog} TKB {Knowledge Base} IDEA {Ideas} OCCASION {Events} other {}} icon"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageSolvedBadge-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageSolvedBadge-1720711077000","value":{"solved":"Solved"},"localOverride":false},"CachedAsset:text:en_US-components/tags/TagView/TagViewChip-1720711077000":{"__typename":"CachedAsset","id":"text:en_US-components/tags/TagView/TagViewChip-1720711077000","value":{"tagLabelName":"Tag name {tagName}"},"localOverride":false}}}},"page":"/forums/ForumMessagePage/ForumMessagePage","query":{"boardId":"readyapi-questions","messageSubject":"techcorner-challenge-4-how-to-generate-a-request-body-based-on-data-from-datasou","messageId":"203916"},"buildId":"OKtI0OLKuXmERTJKBVqYX","runtimeConfig":{"buildInformationVisible":false,"logLevelApp":"info","logLevelMetrics":"info","openTelemetryClientEnabled":false,"openTelemetryConfigName":"smartbear","openTelemetryServiceVersion":"24.11.0","openTelemetryUniverse":"prod","openTelemetryCollector":"http://localhost:4318","openTelemetryRouteChangeAllowedTime":"5000","apolloDevToolsEnabled":false},"isFallback":false,"isExperimentalCompile":false,"dynamicIds":["./components/seo/QAPageSchema/QAPageSchema.tsx","./components/community/Navbar/NavbarWidget.tsx","./components/community/Breadcrumb/BreadcrumbWidget.tsx","./components/messages/TopicWithThreadedReplyListWidget/TopicWithThreadedReplyListWidget.tsx","./components/messages/RelatedContentWidget/RelatedContentWidget.tsx","./components/messages/MessageListForNodeByRecentActivityWidget/MessageListForNodeByRecentActivityWidget.tsx","./components/customComponent/CustomComponent/CustomComponent.tsx","./components/messages/MessageView/MessageViewStandard/MessageViewStandard.tsx","./components/messages/ThreadedReplyList/ThreadedReplyList.tsx","../shared/client/components/common/List/UnstyledList/UnstyledList.tsx","./components/messages/MessageView/MessageView.tsx","../shared/client/components/common/Pager/PagerLoadMore/PagerLoadMore.tsx","./components/messages/MessageView/MessageViewInline/MessageViewInline.tsx","../shared/client/components/common/List/ListGroup/ListGroup.tsx","../shared/client/components/common/List/UnwrappedList/UnwrappedList.tsx","./components/tags/TagView/TagView.tsx","./components/tags/TagView/TagViewChip/TagViewChip.tsx"],"appGip":true,"scriptLoader":[]}