利用可能なステート。
JSONからJSONへの変換
CSVからJSONへの変換
XMLからJSONへの変換
YAMLからJSONへの変換
XLSXからJSONへの変換
TXTからJSONへの変換
[データ]:静的または動的な入力JSONです。
[QntrlファイルID]:インラインデータの代わりに、ファイルベースのJSON入力を指定します(任意)。
[スクリプトの種類]:ドロップダウンからJSONataまたはJSLT を選択します。
[スクリプト]:変換ロジックを記述します
[変数]:スクリプト内で参照する変数を定義します
{'Json 2 Json Converter': {'start': true,'タブ': 'json_conversion','task_id': 'json_to_json','payload': {'qntrl_file_id': '{file_id}','script_type': 'JSONata','script': 'Account.Order.Product'},'next': 'End'}}
JSLT
{
'Json 2 Json Converter': {
'start': true,
'タブ': 'json_conversion',
'task_id': 'json_to_json',
'payload': {
'qntrl_file_id': '{file_id}',
'script_type': 'Jslt',
'script': {
'user': {
'name': 'upper-case(.name)',
'age': '.age',
'location': '.city',
'isAdult': '.age >= 18'
}
}
},
'next': 'End'
}
}
変数を使用したJSONata
{'Json 2 Json Converter': {'start':true,'タブ': 'json_conversion','task_id': 'json_to_json','payload': {'variables': {'greeting': 'Hello'},'data': {'name': 'Alice'},'script_type': 'JSONata','script': '$greeting & ', ' & name'}'next': 'End'},}
CSVファイルをJSONに変換します。カスタム区切り文字、ヘッダー、引用符文字、null値の処理に対応しています。
[ヘッダー]:[ヘッダーあり]が無効の場合に、列名を手動で定義します。
[区切り文字]:値を区切るために使用する文字(例:コンマ、セミコロン)
[引用符文字]:特殊文字を含む項目を引用符で囲み、分割されないようにするために使用する文字。
[エスケープ文字]:項目内の引用符文字をエスケープするために使用する文字。
[NA値]:欠損値(NaN)として扱う文字列。
[Nullの代替値]:認識されたNaN値の置換値。
ヘッダーを手動で定義する場合(つまり、[ヘッダーあり]が無効の場合)、各列のエントリーでは次のキーを使用できます。
name: JSON出力で割り当てる列名。
type: 列のデータ型(例:string、number、datetime)。
input: 元のCSVの日付値の形式とタイムゾーンを指定します。
output: JSON出力の日付値に使用する形式とロケールを指定します。
{
'New State 1': {
'type': 'task',
'タブ': 'json_conversion',
'task_id': 'csv_to_json',
'payload': {
'qntrl_file_id': '{file_id}',
'has_header': false,
'delimiter': ',',
'quote_char': '\'',
'headers': [
{
'name': 'EmployeeID',
'type': 'number'
},
{
'name': 'DOB',
'type': 'datetime',
'input': {
'format': 'yyyy-MM-dd HH:mm:ss',
'zone': 'UTC'
},
'output': {
'format': 'yyyy-MMMM-dd HH:mm:ss',
'locale': 'fr'
}
}]
},
'end': true
}
}
{'XML Json Converter': {'start':true,'タブ': 'json_conversion','task_id': 'xml_to_json','payload': {'qntrl_file_id': {file_id},'range':5},'next': 'End'},}
YAMLファイルをJSON形式に変換します。複雑なYAML構造を安全に処理できるよう、エイリアス数の制限に対応しています。
{
'YAML Json Converter': {
'start': true,
'タブ': 'json_conversion',
'task_id': 'yaml_to_json',
'payload': {
'qntrl_file_id': '{file_id}',
'max_aliases': 10
},
'next': 'End'
}
}
ExcelファイルのスプレッドシートデータをJSONに変換します。シートの選択と柔軟なヘッダー設定に対応しています。
[シートインデックス]:処理するシートのインデックスです。
[シート名]:処理するシートの名前です。
[ヘッダーあり]:最初の行に列ヘッダーが含まれるかどうかを示します。
[ヘッダーインデックス]:ヘッダー行として使用する行インデックス
ヘッダーの動作。
has_header = trueの場合、最初の行が列名として扱われます。
has_header = falseの場合、列はcolumn1、column2などとして自動生成されます。
ヘッダーがない場合は、列名を手動で定義できます。
コード表示
{
'XLSX Json Converter': {
'start': true,
'タブ': 'json_conversion',
'task_id': 'xlsx_to_json',
'payload': {
'qntrl_file_id': '{file_id}',
'has_header': true,
'headers': [
{
'name': 'person',
'type': 'string'
},
{
'name': 'age',
'type': 'number'
},
{
'name': 'DOB',
'type': 'datetime',
'input': {
'format': 'yyyy-MM-dd HH:mm:ss',
'zone': 'UTC'
},
'output': {
'format': 'yyyy-MMMM-dd HH:mm:ss',
'locale': 'fr'
}
}
]
},
'next': 'End'
}
}
構造化テキストファイルをJSONに変換します。テキストファイルの構造に応じて、3つの解析方法に対応しています。
ビルダー表示の追加プロパティ
[区切り文字]:区切り文字ベースの解析で値を分割するために使用する文字です(例:,、|、>)。
[ヘッダーあり]:最初の行に列ヘッダーが含まれる場合は、このオプションを有効にします。有効にすると、最初の行が列名として扱われます。
[列]:[ヘッダーあり]が無効の場合は、列名、データ型、解析ルールを指定して列を手動で定義します。
[解析方法]
区切り文字ベースの解析:テキストファイル内の値が、,、|、または>などの一定の文字で区切られている場合に使用します。
インデックスベース(固定幅)の解析:各項目が指定された文字位置を占める固定長テキストファイルに使用します。列の境界を定義するには、開始位置と終了位置を指定します。正規表現ベースの解析。
パターン照合を使用して項目を識別する非構造化または半構造化テキストファイル(ログファイルなど)に使用します。区切り文字ベースの解析と固定幅解析は同時には使用できません。
i)インデックスベース変換
Jane Smith 28
Bob Johnson 42
-> 設定
{
'TXT Json Converter': {
'start': true,
'タブ': 'json_conversion',
'task_id': 'txt_to_json',
'payload': {
'qntrl_file_id': '{file_id}',
'has_header': false,
'columns': [
{
'name': 'firstName',
'start': 0,
'end': 19,
'type': 'string'
},
{
'name': 'lastName',
'start': 20,
'end': 39,
'type': 'string'
},
{
'name': 'age',
'start': 40,
'end': 42,
'type': 'number'
}
]
}
}
}
-> Response
[
{ 'firstName': 'John', 'lastName': 'Doe', 'age': 35 },{ 'firstName': 'Jane', 'lastName': 'Smith', 'age': 28 },{ 'firstName': 'Bob', 'lastName': 'Johnson', 'age': 42 }]ii) Regex Based Transformation
2025-07-29 10:00:00 INFO ユーザーがログインしました
2025-07-29 10:05:00 ERROR リソースの読み込みに失敗しました
2025-07-29 10:10:00 INFO ユーザーがログアウトしました
→設定
{
'TXT Json Converter': {'start': true,
'タブ': 'json_conversion',
'task_id': 'txt_to_json',
'payload': {
'qntrl_file_id': '{file_id}',
'has_header': false,
'columns': [
{
'name': 'date',
'regex': '^\\d{4}-\\d{2}-\\d{2}',
'type': 'date'
},
{
'name': 'time',
'regex': '\\d{2}:\\d{2}:\\d{2}',
'type': 'time',
'format': 'HH:mm:ss'
},
{
'name': 'level',
'regex': '(INFO|ERROR|WARN)',
'type': 'string'
},
{
'name': 'message',
'regex': '(INFO|ERROR|WARN) (.*)$',
'type': 'string'
}
]
}
}
}
}
→レスポンス
[{'date': '2025-07-29','time': '10:00:00','level': 'INFO','message': 'User logged in'},{'date': '2025-07-29','time': '10:05:00','level': 'ERROR','message': 'Failed to load resource'},{'date': '2025-07-29','time': '10:10:00','level': 'INFO','message': 'User logged out'}]
→入力
John | Doe | true | 1985-12-15
Jane | Smith | false | 1990-05-10
Bob | Johnson | true | 1978-03-22
→設定
{
'TXT Json Converter': {
'start': true,
'タブ': 'json_conversion',
'task_id': 'txt_to_json',
'payload': {
'qntrl_file_id': '{file_id}',
'has_header': false,
'delimiter': '|',
'columns': [
{
'name': 'firstName',
'type': 'string'
},
{
'name': 'lastName',
'type': 'string'
},
{
'name': 'isActive',
'type': 'boolean'
},
{
'name': 'birthDate',
'type': 'date'
}
]
}
}
}
→レスポンス
[{'firstName': 'John','lastName': 'Doe','isActive': true,'birthDate': '1985-12-15'},{'firstName': 'Jane','lastName': 'Smith','isActive': false,'birthDate': '1990-05-10'},{'firstName': 'Bob','lastName': 'Johnson','isActive': true,'birthDate': '1978-03-22'}]