Claris Studio コネクタの操作

Claris Studio コネクタは Claris Studio データを Claris プラットフォームおよびサードパーティアプリケーションと統合することができる便利で強力なツールです。 コネクタの使用を始めるには次を参照してください:

コネクタを上手に活用するにはフィールドの解決とレコードのクエリーという 2 つの概念を理解する必要があります。

  • フィールドの解決

  • レコードのクエリー

フィールドの解決

[Get record] アクションなどの Claris Studio コネクタのステップがレコードデータを返す場合、よりセマンティックなデータを挿入することでフィールドを解決します。これにより API で返される JSON ベースの内容の操作がよりユーザフレンドリーになります。これらのセマンティックフィールドはフローの後に続くステップのデータとしてより簡単に使用することができます。「フロー履歴の表示」および「ステップデータの使用」を参照してください。

たとえば、メタデータフィールド CreatedByModifiedBy にレコードを編集するユーザの名前と連絡先を含めることができます。

コピー
{
  "CreatedBy": {                       // Name & contact details are added
    "FullName": "Johnny Appleseed",
    "ID": 1,
    "Contact": {
      "Type": "Email",
      "Value": "johnny.appleseed@example.com"
    }
  },
  ...
}

また Claris Studio コネクタはドロップダウンなどの複雑なフィールドのメタデータを提供します。通常はキーと値のペアの簡単な一覧です。

コピー
{
  ...
  "Fields": {
    "Allergies": {                     // Field keys are mapped to the display label      
      "Options": {                  
        "Mold": "ea555123",            // Field option mappings are included
        "Animal Dander": "ea555121",
        "Shellfish": "ea555122",
      },
      "ResolvedValue": [        
        "Mold",
        "Shellfish"
      ],
      "FieldName": "Checkbox2",       // Field names are provided
      "Value": [                      // Field values are preserved
        "ea555123",
        "ea555122"
      ]
    }
}

上の例では、アレルギー情報のレコードが返されます。応答ボディは次のように理解することができます:

  • "Fields" はこのレコードに関連するすべてのフィールドを含むオブジェクトです。

  • "Allergies" はチェックボックスフィールドに対応するオブジェクトで、チェックボックスに関連するオプションが含まれます。

  • "Options" はチェックボックスフィールドで使用できる選択に対応するオブジェクトで、この場合は "Mold," "Animal Dander," および "Shellfish," です。それぞれ対応する裏の値があります。

  • "ResolvedValue""Allergies" チェックボックスフィールドで選択されたオプションを示す配列で、 この場合は "Mold""Shellfish." です。

  • "FieldName""Allergies" チェックボックスフィールドの裏の値に対応するフィールドです。

  • "Value""Allergies" チェックボックスフィールドで選択されたオプションの裏の値を示す配列です。

    解決されたフィールドの値を応答ボディでそれぞれの配列に区切ることで、それらの値をステップデータとして選択して後でフローで使用することが簡単になります。

レコードのクエリー

このセクションでは [Find records] アクションで使用される Claris Studio のクエリー言語構文のハイレベルな概要を紹介します。 [Find records] アクションでレコードのクエリーを実行する場合、さまざまな演算子を使用することでテーブル内のデータを異なる方法で検索する複雑でターゲットを絞った検索ができます。クエリー演算子にはドルサイン「 $」の接頭語が付けられます。

使用可能な演算子:

  • $limit

  • $skip

  • $select

  • $sort

  • $filter

$limit

$limit 演算子は結果セット内の返されるレコードの最大数を定義します。

$limit 演算子のデータタイプは正の整数またはそれに相当する文字列です。$limit が指定されていない場合、デフォルトの上限は 25 です。1 つの検索条件の結果セットの最大サイズは 100 です。

コピー
{
    "$limit": 5
}

$skip

$skip 演算子はクエリーから返されたレコードをオフセットします。

$skip 演算子のデータタイプは正の整数またはそれに相当する文字列です。

コピー
{
    "$skip": 5
}

$select

$select 演算子はレコードの結果セットから返すフィールドを定義します。

$select 演算子は $select キーおよびオブジェクト値として定義されます。オブジェクト値は現在使用されておらず将来の使用に予約されています。

コピー
{
    "$select": [{ "ID": {}, "Fields.Name": {} }]
}

$sort

$sort 演算子は返されるレコードの順序を定義します。

演算子は $select キーとオブジェクト値として定義され、これによりオプションを各フィールドに含めることができます。デフォルトでは、$desc (降順) オプションが使用されていない限り、指定したフィールドに基づいて昇順でソートされます。$sort 演算子は複数のフィールドを指定できます。複数のフィールドが指定されている場合、ソートは左から右に更新されます。

コピー
{
    "$sort": [ { "Fields.Name": { "$desc": true }, "ModifiedOn": {} }]
}

$filter

$filter 演算子。

コピー
{ '<operator>': { '<field.Name|field.DisplayLabel>' : '<value>'  } }

$eq / $neq

指定した値と等しいまたは等しくない値に一致します。

コピー
{
  "$filter": {
    "$eq": {
      "Fields.Allergies": "Animal Dander"
    }
  }
}

$gt / $lt / $gte / $lte

指定した値より大きい、小さい、大きいか等しい、小さいか等しい値に一致します。

コピー
{
  "$filter": {
    "$gt": {
      "Fields.Age": 5
    }
  }
}

$regex

正規表現 (regex) パターン一致機能を提供します。Perl と互換性のある正規表現 ("PCRE" ) バージョン 8.42 を UTF-8 サポートでサポートします。オプションの $ci 論理値プロパティを含めると大文字と小文字を区別する検索または区別しない検索を指定することができます。

コピー
{
  "$filter": {
    "$regex": { 
      "Fields.First Name": "^Da",
      "$ci": true
      }
    
  }
}

$in / $nin

対象レコード内またはそれ以外で同じ値を共有する異なるレコードのセットごとに 1 つのレコードを返します。

コピー
{
  "$filter": {
    "$in": {
      "Fields.Allergies": ["Animal Dander", "Household Chemicals"] }
    }
  }
}

$exists

レコードにフィールドが存在するかどうかをチェックします。

コピー
{
  "$filter": {
    "$exists": { "Fields.Allergies": false
    }
  }
}

$and / $or / $not / $nor

JSON 句を統合して複雑なクエリーを有効にします。

例 1 - Fields.Allergies が存在せず Fields.Age が 5 より大きいレコードを検索します。

コピー
{
  "$filter": {
    "$and": [
      { "$exists": { "Fields.Allergies": false } },
      {
        "$gt": {
          "Fields.Age": 5
        }
      }
    ]
    
  }
}

例 2 - Fields.Allergies が存在しないか Fields.Age が 5 より大きいレコードを検索します。

コピー
{
  "$filter": {
    "$or": [
      { "$exists": { "Fields.Allergies": false } },
      {
        "$gt": {
          "Fields.Age": 5
        }
      }
    ]
    
  }
}

例 3 - Fields.Age が 5 より大きくないレコードを検索します。

コピー
{
  "$filter": {
    "$not": {
      "$gt": {
        "Fields.Age": 5
      }
    }
  }
}

例 4 - Fields.City が Dublin でも Napier でもないレコードを検索します。

コピー
{
  "$filter": {
    "$nor": [
      { "$eq": { "Fields.City": "Dublin" } },
      { "$eq": { "Fields.City": "Napier" } }
    ]
  }
}

また $and / $or / $not / $nor 演算子はネストできます。次のクエリーは Fields.Allergies が存在せず、Fields.Age が 5 より大きく Fields.City が Dublin か Napier で Fields.Zipcode が 25533 または 44811 でないレコードを検索します。

コピー
{
  "$filter": {
    "$and": [
      { "$exists": { "Fields.Allergies": false } },
      {
        "$gt": {
          "Fields.Age": 5
        }
      },
      {
        "$or": [
          { "$eq": { "Fields.City": "Dublin" } },
          { "$not": { "$eq": { "Fields.City": "Shaanxi" } } },
          { "$eq": { "Fields.City": "Napier" } }
        ]
      },
      {
        "$nor": [
          { "$eq": { "Fields.Zipcode": 44811 } },
          { "$eq": { "Fields.Zipcode": 25533 } }
        ]
      }
    ]
  }
}

メモ 

  • アップロードするファイルのサイズの上限は 25 MB です。

  • 次のフィールドは現在応答データに表示されません: リッチテキスト、署名、コメント、計算