Skip to main content
January 27, 2025
Solved

The jsonText parameter was not valid JSON.

  • January 27, 2025
  • 4 replies
  • 0 views

I am working on the creation of an API and using two approaches for doing the same thing, first code snippet includes the code which is working fine without any issue whereas if I try to minimize the code and by placing request creation in a different expression I get error error "The jsonText parameter was not valid JSON.

a!localVariables(
  /*code throwing error*/
  local!jsonRequest: a!fromJson(http!request.body),
    local!value: rule!ASQ_CreateRequestStructureForSfdc(jsonRequest:local!jsonRequest),
      
  a!writeRecords(
    records: local!value,
    onSuccess: a!httpResponse(
      statusCode: 200,
      headers: {
        a!httpHeader(
          name: "Content-Type",
          value: "application/json"
        )
      },
      body: a!toJson(fv!recordsUpdated)
    ),
    onError: a!httpResponse(
      statusCode: 500,
      headers: {
        a!httpHeader(
          name: "Content-Type",
          value: "application/json"
        )
      },
      body: a!toJson(
        a!map(
          message: "Write request has failed",
          error: fv!error
        )
      )
    )
  )
)

/*expression called*/
a!localVariables(
  local!refData: rule!ASQ_RT_GetReferenceData(
    attributeName: {
      "Priority",
      "Service Type",
      "Customer Consent",
      "Scenario",
      "Requesting Group",
      "Shared ONT",
      "Is an Escalation",
      "Address Source",
      "Qualification Type",
      "Qualification Result",
      "ASQ Output",
      "Output Reason",
      "GIS Issue Found",
      "Input Error",
      "Dependency Reason",
      "Speed Qual (Mbps)",
      "Responsible Team",
      "Resolution"
    }
  ),
  local!refRequestingGroup: local!refData[wherecontains(
    "Requesting Group", local!refData['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{20238511-f28a-4fd9-b022-fd44276c8ee2}attributeName']
  )],
  local!refServiceType: local!refData[wherecontains(
    "Service Type", local!refData['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{20238511-f28a-4fd9-b022-fd44276c8ee2}attributeName']
  )],
  local!refQualtype: local!refData[wherecontains(
    "Qualification Type", local!refData['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{20238511-f28a-4fd9-b022-fd44276c8ee2}attributeName']
  )],
  local!jsonRequest: (ri!jsonRequest),
  local!summary: 'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue'(
    'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{68402540-626d-4dc1-a8dd-fb76a1cee9cf}summary': index(
      index(local!jsonRequest, "fields", null),
      "summary",
      null
    ),
    'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{5db4233e-a6ec-4ae2-80fe-98a15088ebf4}description': index(
      index(local!jsonRequest, "fields", null),
      "description",
      null
    ),
    'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{a3cb8eee-6c45-4e6e-b5d9-4eea05589af0}serviceType': displayvalue(
      index(
        index(local!jsonRequest, "fields", null),
        "customfield_32800",
        null
      ).value,
      local!refServiceType['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{ef80c0cf-afef-4f3f-ab30-ebc6e5401bd7}value'],
      local!refServiceType['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{17288c54-9490-41ac-9a8d-7fc9386d4c5e}id'],
      null
    ),
    'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{7512ae33-1abf-41a7-bed5-e2cc5ab5862c}requestingGroup': displayvalue(
      index(
        index(local!jsonRequest, "fields", null),
        "customfield_19485",
        null
      ).value,
      local!refRequestingGroup['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{ef80c0cf-afef-4f3f-ab30-ebc6e5401bd7}value'],
      local!refRequestingGroup['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{17288c54-9490-41ac-9a8d-7fc9386d4c5e}id'],
      null
    ),
    'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{967961ff-7ce7-4a23-9050-e344efda3e10}requestingGrpOther': index(
      index(local!jsonRequest, "fields", null),
      "customfield_30204",
      null
    ),
    'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{18e11983-4031-47a5-bf81-9527b7affd27}ecid': index(
      index(local!jsonRequest, "fields", null),
      "customfield_30204",
      null
    ),
    'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{fd1d83fa-7c5c-409d-b450-27d45fc19cb7}address': index(
      index(local!jsonRequest, "fields", null),
      "customfield_11347",
      null
    ),
    'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{2159a08e-01cf-4394-b569-f15c83d35d4c}qualificationType': displayvalue(
      index(
        index(local!jsonRequest, "fields", null),
        "customfield_30202",
        null
      ).value,
      local!refQualtype['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{ef80c0cf-afef-4f3f-ab30-ebc6e5401bd7}value'],
      local!refQualtype['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{17288c54-9490-41ac-9a8d-7fc9386d4c5e}id'],
      null
    ),
    'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{ae113520-e399-44c4-9a73-cf4e634b355b}lpdsid': index(
      index(local!jsonRequest, "fields", null),
      "customfield_21508",
      null
    ),
    
  ),

local!summary

)

a!localVariables(
  /*CODE Working*/
    local!refData: rule!ASQ_RT_GetReferenceData(
      attributeName: {
        "Priority",
        "Service Type",
        "Customer Consent",
        "Scenario",
        "Requesting Group",
        "Shared ONT",
        "Is an Escalation",
        "Address Source",
        "Qualification Type",
        "Qualification Result",
        "ASQ Output",
        "Output Reason",
        "GIS Issue Found",
        "Input Error",
        "Dependency Reason",
        "Speed Qual (Mbps)",
        "Responsible Team",
        "Resolution"
      }
    ),
    local!refRequestingGroup: local!refData[wherecontains(
      "Requesting Group", local!refData['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{20238511-f28a-4fd9-b022-fd44276c8ee2}attributeName']
    )],
    local!refServiceType: local!refData[wherecontains(
      "Service Type", local!refData['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{20238511-f28a-4fd9-b022-fd44276c8ee2}attributeName']
    )],
    local!refQualtype: local!refData[wherecontains(
      "Qualification Type", local!refData['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{20238511-f28a-4fd9-b022-fd44276c8ee2}attributeName']
    )],
    local!jsonRequest: a!fromJson(http!request.body),
    local!value: 'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue'(
      'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{68402540-626d-4dc1-a8dd-fb76a1cee9cf}summary': index(
        index(local!jsonRequest, "fields", null),
        "summary",
        null
      ),
      'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{5db4233e-a6ec-4ae2-80fe-98a15088ebf4}description': index(
        index(local!jsonRequest, "fields", null),
        "description",
        null
      ),
      'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{a3cb8eee-6c45-4e6e-b5d9-4eea05589af0}serviceType': displayvalue(
        index(
          index(local!jsonRequest, "fields", null),
          "customfield_32800",
          null
        ).value,
        local!refServiceType['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{ef80c0cf-afef-4f3f-ab30-ebc6e5401bd7}value'],
        local!refServiceType['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{17288c54-9490-41ac-9a8d-7fc9386d4c5e}id'],
        null
      ),
      'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{7512ae33-1abf-41a7-bed5-e2cc5ab5862c}requestingGroup': displayvalue(
        index(
          index(local!jsonRequest, "fields", null),
          "customfield_19485",
          null
        ).value,
        local!refRequestingGroup['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{ef80c0cf-afef-4f3f-ab30-ebc6e5401bd7}value'],
        local!refRequestingGroup['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{17288c54-9490-41ac-9a8d-7fc9386d4c5e}id'],
        null
      ),
      'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{967961ff-7ce7-4a23-9050-e344efda3e10}requestingGrpOther': index(
        index(local!jsonRequest, "fields", null),
        "customfield_30204",
        null
      ),
      'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{18e11983-4031-47a5-bf81-9527b7affd27}ecid': index(
        index(local!jsonRequest, "fields", null),
        "customfield_30204",
        null
      ),
      'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{fd1d83fa-7c5c-409d-b450-27d45fc19cb7}address': index(
        index(local!jsonRequest, "fields", null),
        "customfield_11347",
        null
      ),
      'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{2159a08e-01cf-4394-b569-f15c83d35d4c}qualificationType': displayvalue(
        index(
          index(local!jsonRequest, "fields", null),
          "customfield_30202",
          null
        ).value,
        local!refQualtype['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{ef80c0cf-afef-4f3f-ab30-ebc6e5401bd7}value'],
        local!refQualtype['recordType!{79c01c22-ab0c-4ab2-8744-4ed1b7a33b6f}ASQ Reference Data.fields.{17288c54-9490-41ac-9a8d-7fc9386d4c5e}id'],
        null
      ),
      'recordType!{f857b81b-c4f7-4772-8b6b-c85283e01d0f}ASQ Issue.fields.{ae113520-e399-44c4-9a73-cf4e634b355b}lpdsid': index(
        index(local!jsonRequest, "fields", null),
        "customfield_21508",
        null
      ),

    ),


  
  a!writeRecords(
    records: local!value,
    onSuccess: a!httpResponse(
      statusCode: 200,
      headers: {
        a!httpHeader(
          name: "Content-Type",
          value: "application/json"
        )
      },
      body: a!toJson(fv!recordsUpdated)
    ),
    onError: a!httpResponse(
      statusCode: 500,
      headers: {
        a!httpHeader(
          name: "Content-Type",
          value: "application/json"
        )
      },
      body: a!toJson(
        a!map(
          message: "Write request has failed",
          error: fv!error
        )
      )
    )
  )
)
 

    Best answer by stefanhelzle0001

    It means that the string you want to parse from JSON into an Appian dictionary is not valid JSON.

    4 replies

    stefanhelzle0001
    Brainy
    January 27, 2025

    You try to call fromJson() two times.

    January 27, 2025

    even if I remove a!fromjson() from line number 34 I am still getting the same error, what exactly does "The jsonText parameter was not valid JSON." this error means??

    stefanhelzle0001
    Brainy
    January 27, 2025

    It means that the string you want to parse from JSON into an Appian dictionary is not valid JSON.