---
id: object/codeunit/30157
type: object
title: Codeunit 30157 "Shpfy Json Helper"
summary: Codeunit 30157 "Shpfy Json Helper" in Shopify (Microsoft.Integration.Shopify). 56 public procedures. Introduced in BC29, still in BC30.
tier: official
language: en
tags:
  - codeunit
  - shopify
versions:
  introduced: "29"
  last_changed: null
  deprecated: null
review:
  state: derived
  by: null
  at: null
  flags: []
generated:
  at: "2026-10-11T00:31:51.816Z"
  pipeline: 0.2.0
  prompts: {}
  input_hash: 31c831d1473a38e155d3b09407aeb6ab950b477d91ebe7afe7018d053ca4b806
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Apps/W1/Shopify/app/src/Helpers/Codeunits/ShpfyJsonHelper.Codeunit.al
    title: src/Apps/W1/Shopify/app/src/Helpers/Codeunits/ShpfyJsonHelper.Codeunit.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn: []
  objects: []
  features: []
  topics: []
  localizations: []
  videos: []
  posts: []
  guidelines: []
object_type: codeunit
object_id: 30157
name: Shpfy Json Helper
namespace: Microsoft.Integration.Shopify
app: Shopify
extends: null
first_version: "29"
last_version: "30"
present_in:
  - "29"
  - "30"
changed_in: []
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
counts:
  fields: 0
  procedures: 59
  events: 0
  subscribers: 0
relations:
  out: 0
  referenced_by: 0
  pages: 0
  extended_by: 0
  event_subscribers: 0
  calls: 0
  called_by: 0
  implements: 0
---

# Codeunit 30157 "Shpfy Json Helper"

> Codeunit 30157 "Shpfy Json Helper" in Shopify (Microsoft.Integration.Shopify). 56 public procedures. Introduced in BC29, still in BC30.

Shopify · Microsoft.Integration.Shopify · BC29-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Apps/W1/Shopify/app/src/Helpers/Codeunits/ShpfyJsonHelper.Codeunit.al) · facts from BC29

## Properties

| Property | Value |
|---|---|
| Access | Internal |
| SingleInstance | true |

## Procedures

- `ContainsToken(JToken: JsonToken; TokenPath: Text): Boolean` (internal): Description for ContainsToken.
- `ContainsToken(JObject: JsonObject; TokenPath: Text): Boolean` (internal): Description for ContainsToken.
- `GetArrayAsText(JArray: JsonArray): Text` (internal): Description for GetArrayAsText.
- `GetArrayAsText(JArray: JsonArray; MaxLength: Integer): Text` (internal): Description for GetArrayAsText.
- `GetArrayAsText(JObject: JsonObject; TokenPath: Text): Text` (internal): Description for GetArrayAsText.
- `GetArrayAsText(JObject: JsonObject; TokenPath: Text; MaxLength: Integer): Text` (internal): Description for GetArrayAsText.
- `GetArrayAsText(JToken: JsonToken; TokenPath: Text): Text` (internal): Description for GetArrayAsText.
- `GetArrayAsText(JToken: JsonToken; TokenPath: Text; MaxLength: Integer): Text` (internal): Description for GetArrayAsText.
- `GetJsonArray(JToken: JsonToken; TokenPath: Text): JsonArray` (internal)
- `GetJsonArray(JObject: JsonObject; TokenPath: Text): JsonArray` (internal)
- `GetJsonArray(JToken: JsonToken; var JResult: JsonArray; TokenPath: Text): Boolean` (internal): Get Json Array.
- `GetJsonArray(JObject: JsonObject; var JResult: JsonArray; TokenPath: text): Boolean` (internal): Get Json Array.
- `GetJsonObject(JToken: JsonToken; TokenPath: Text): JsonObject` (internal)
- `GetJsonObject(JObject: JsonObject; TokenPath: Text): JsonObject` (internal)
- `GetJsonObject(JToken: JsonToken; var JResult: JsonObject; TokenPath: Text): Boolean` (internal): Get Json Object.
- `GetJsonObject(JObject: JsonObject; var JResult: JsonObject; TokenPath: text): Boolean` (internal): Get Json Object.
- `GetJsonToken(JToken: JsonToken; TokenPath: Text): JsonToken` (internal): Get Json Token.
- `IsNull(JToken: JsonToken; TokenPath: Text): boolean` (internal)
- `IsNull(JObject: JsonObject; TokenPath: Text): boolean` (internal)
- `IsTokenNull(JToken: JsonToken): Boolean` (internal)
- `GetJsonValue(JToken: JsonToken; var JResult: JsonValue; TokenPath: Text): Boolean` (internal): Get Json Value.
- `GetJsonValue(JObject: JsonObject; var JResult: JsonValue; TokenPath: Text): Boolean` (internal): Get Json Value.
- `GetValueAsBigInteger(JToken: JsonToken; TokenPath: Text): BigInteger` (internal): Get Value As Big Integer.
- `GetValueAsBigInteger(JObject: JsonObject; TokenPath: Text): BigInteger` (internal): Get Value As Big Integer.
- `GetValueAsBoolean(JToken: JsonToken; TokenPath: Text): Boolean` (internal): Get Value As Boolean.
- `GetValueAsBoolean(JObject: JsonObject; TokenPath: Text): Boolean` (internal): Get Value As Boolean.
- `GetValueAsByte(JToken: JsonToken; TokenPath: Text): Byte` (internal): Get Value As Byte.
- `GetValueAsByte(JObject: JsonObject; TokenPath: Text): Byte` (internal): Get Value As Byte.
- `GetValueAsChar(JToken: JsonToken; TokenPath: Text): Char` (internal): Get Value As Char.
- `GetValueAsChar(JObject: JsonObject; TokenPath: Text): Char` (internal): Get Value As Char.
- `GetValueAsCode(JToken: JsonToken; TokenPath: Text): Text` (internal): Get Value As Code.
- `GetValueAsCode(JObject: JsonObject; TokenPath: Text): Text` (internal): Get Value As Code.
- `GetValueAsCode(JToken: JsonToken; TokenPath: Text; MaxLength: Integer): Text` (internal): Get Value As Code.
- `GetValueAsCode(JObject: JsonObject; TokenPath: Text; MaxLength: Integer): Text` (internal): Get Value As Code.
- `GetValueAsDate(JToken: JsonToken; TokenPath: Text): Date` (internal): Get Value As Date.
- `GetValueAsDate(JObject: JsonObject; TokenPath: Text): Date` (internal): Get Value As Date.
- `GetValueAsDateTime(JToken: JsonToken; TokenPath: Text): DateTime` (internal): Get Value As DateTime.
- `GetValueAsDateTime(JObject: JsonObject; TokenPath: Text): DateTime` (internal): Get Value As DateTime.
- `GetValueAsDecimal(JToken: JsonToken; TokenPath: Text): Decimal` (internal): Get Value As Decimal.
- `GetValueAsDecimal(JObject: JsonObject; TokenPath: Text): Decimal` (internal): Get Value As Decimal.
- `GetValueAsDuration(JToken: JsonToken; TokenPath: Text): Duration` (internal): Get Value As Duration.
- `GetValueAsDuration(JObject: JsonObject; TokenPath: Text): Duration` (internal): Get Value As Duration.
- `GetValueAsInteger(JToken: JsonToken; TokenPath: Text): Integer` (internal): Get Value As Integer.
- `GetValueAsInteger(JObject: JsonObject; TokenPath: Text): Integer` (internal): Get Value As Integer.
- `GetValueAsOption(JToken: JsonToken; TokenPath: Text): Option` (internal): Get Value As Option.
- `GetValueAsOption(JObject: JsonObject; TokenPath: Text): Option` (internal): Get Value As Option.
- `GetValueAsText(JToken: JsonToken; TokenPath: Text): Text` (internal): Get Value As Text.
- `GetValueAsText(JObject: JsonObject; TokenPath: Text): Text` (internal): Get Value As Text.
- `GetValueAsText(JToken: JsonToken; TokenPath: Text; MaxLength: Integer): Text` (internal): Get Value As Text.
- `GetValueAsText(JObject: JsonObject; TokenPath: Text; MaxLength: Integer): Text` (internal): Get Value As Text.
- `GetValueAsTime(JToken: JsonToken; TokenPath: Text): Time` (internal): Get Value As Time.
- `GetValueAsTime(JObject: JsonObject; TokenPath: Text): Time` (internal): Get Value As Time.
- `GetValueIntoField(JToken: JsonToken; TokenPath: Text; var RecordRef: RecordRef; FieldNo: Integer)` (internal): Get Value Into Field.
- `GetValueIntoField(JObject: JsonObject; TokenPath: Text; var RecordRef: RecordRef; FieldNo: Integer)` (internal): Get Value Into Field.
- `GetValueIntoFieldWithValidation(JToken: JsonToken; TokenPath: Text; var RecordRef: RecordRef; FieldNo: Integer)` (internal): Get Value Into Field With Validation.
- `GetValueIntoFieldWithValidation(JObject: JsonObject; TokenPath: Text; var RecordRef: RecordRef; FieldNo: Integer)` (internal): Description for GetValueIntoFieldWithValidation.

Plus 3 local procedures.

## Across versions

- Present in: BC29-30
- Changed (declaration) in: none

Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).

## Ask your agent

Procedure bodies are not stored here (D10). For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: `bcatlas_resolve_node(object_type: "codeunit", object_name: "Shpfy Json Helper")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
