Quip終了に伴うデータエクスポートでお困りの方へ

【サンプルあり】API参照名の基礎と命名規則

Salesforceの設定画面やフローを操作する際に、必ずと言っていいほど入力する「API参照名」。
なんだかプログラミング用語のようで、難しそうだと感じていませんか?
実はこれ、システムと仲良くなるための「ただのルール」なんです。

今回は、初心者の方にもスッキリ分かるAPI参照名のイメージと、フロー作成で失敗しないための「名前の付け方」を解説します。

以下の関連記事ではSalesforceフロー変数について解説していますのであわせてご覧ください。

目次

API参照名ってなんだろう?

Salesforceの設定画面を触っていると「表示ラベル」と「API参照名」という言葉が出てきますよね。
どちらとも聞きなじみのない言葉ですが、日常生活に置き換えてみると難しくありません。

例えば、あなたがスーパーやコンビニでお買い物をしているとします。
何かを買うために手に取った商品には、当たり前ですが「商品名」と「バーコード」が記載されています。
この「商品名」に該当するのが表示ラベルで、「バーコード」がAPI参照名です。

商品名はお客様(つまり人間)が分かりやすい名前を付け、バーコードはレジ(つまりシステム)が分かりやすい番号が付けられます。

Salesforceにおいても同じです。

表示ラベルは人間がパッと見て分かるための名前です。
例えば、「ふわふわバスタオル」や「健康緑茶 Super」のように、日本語(漢字/ひらがな/カタカナ/アルファベット など)を自由に使うことができます。

API参照名はSalesforceのシステムが、対象を絶対に間違えずに探すための専用の名前です。
システムが読み取りやすいよう、半角英数字(とアンダースコア)だけで作らなければならないというルールがあります。

人間が分かる名前欄に商品名とSalesforceの表示ラベルを配置、システムが分かる名前欄に商品バーコードとAPI参照名を配置した図。

巨大な倉庫で働くロボットへ依頼をするという視点で考えてみましょう。
例えば、ロボットに「『ふわふわバスタオル』を取ってきて!」とお願いしたとします。
しかし倉庫には、旧型のバスタオルや、色違いのバスタオルなど「ふわふわバスタオル」という名前のものが複数あり、ロボットは「どれですか?」と混乱してしまいます。

しかし、「商品コード towel_blue_001 を取ってきて」と指定してあげれば、ロボットは絶対に間違えることなく、正確な商品をピックアップしてくれます。

項目やフローを作る際も全く同じです。
システムが迷子にならず、正確に対象を見つけられるよう「システムが絶対に迷わないための名前」を必ず設定してあげる必要があります。

【サンプルあり】名づけ方にルールを設けよう

名称は利用目的がわかるものにする

API参照名は英数字なら何でも良いので、面倒くさくて「test1」や「a」と付けてしまいたくなるかもしれません。
しかし、これは絶対にNGです。

フローが完成して3ヶ月後、あなたがそのフローを修正しようとしたとき、「test1」に何のデータが入っているのかが判らなかったり、担当者が変わった時も、後任者は中身を把握できずにお手上げ状態になってしまいます。

これを防ぐために、「接頭辞(プレフィックス)をつける」というルールをチームで決めておくのがおすすめです。
名前の頭に数文字の記号をつけるだけで、「これは何をするためのものか」が一目で分かるようになります。

今回はフローにおける名づけ方のルールをサンプルとして紹介します。
オブジェクトの項目における命名ルールについては、以下のブログで紹介をしております。

データを操作する要素(データベースへの指示)

Salesforceの中にあるデータを取ってきたり、新しく作ったりする、フローの肝となる部分です。

スクロールできます
要素名接頭辞API参照名の例意味
レコードを取得getget_Account取引先レコードをデータベースから取得
レコードを作成insertinsert_Task新しいToDo(タスク)レコードを作成
レコードを更新updateupdate_Opportunity既存の商談レコードを更新
レコードを削除deletedelete_Contact不要になった取引先責任者レコードを削除

要素「レコードを作成」の接頭辞にcreateは、筆者個人的にはオススメしません。
まだデータベースには登録しないがデータを作り上げるという処理でもcreateが使われがちです。
反対にinsertであれば、データベースに登録する処理までを示すため、イメージが明確になります。
紛らわしい名称は極力避けた方が良いため、混同しやすいcreateの利用はなるべく避けた方が良いです。

ロジック要素(フローの頭脳)

条件によって道順を変えたり、データを加工したりする考える処理です。

スクロールできます
要素名接頭辞API参照名の例意味
決定judgejudge_IsClosedケースレコードの完了状況に応じて分岐
割り当てsetset_Amount商談の金額を変数に割り当てる
ループlooploop_AccountListコレクション変数の各取引先データに対しての処理
コレクション検索filterfilter_TokyoAccountコレクション変数から”東京”のデータだけ取り出す
コレクションを
並び替え
sortsort_CloseDateDescコレクション変数を”完了予定日”の降順に並び替え
※Asc:昇順(小→大)、Desc:降順(大→小)

インタラクション要素(人や外部とのやりとり)

ユーザーに画面を見せたり、メールを送る外部アクションを呼び出す要素です。

スクロールできます
要素名接頭辞API参照名の例意味
画面scrscr_InputCaseケース情報を入力する画面
※scrはscreen(画面)の略語
アクションcallcall_SendEmailアクション「メールの送信」を呼び出す
サブフローcall_CalculateTaxサブフロー「消費税計算」を呼び出す

リソース(データを入れるための器)

スクロールできます
要素名接頭辞API参照名の例意味
変数varvar_AccountName取引先の名前を入れる変数
※varはvariable(変数)の略語
コレクション変数colcol_Cases複数のケースレコードを入れる変数
※colはcollection(コレクション)の略語
数式formulaformula_Tomorrow次の日付を計算する数式
テキストテンプレートtmpltmpl_EmailBody長文となるメール本文を入れるひな型
※tmplはtemplate(テンプレート)の略語
定数concon_TaxRate消費税率を入れる定数
※conはconst(定数)の略語
選択肢 / レコード選択肢selectselect_CaseStatusケースの選択リスト項目「状況」を入れる器

このようにルールを決めておけば、例えばvar_Amountという文字を見ただけで「あ、これは金額(Amount)が入る変数(var)なんだな」と誰もが瞬時に理解できます。
未来の自分とチームメンバーのために、最初からこのルールをクセづけておきましょう。

まとめ:システム用の名前【API参照名】にも命名ルールを設ける

今回は、API参照名の解説から命名ルールのサンプルを紹介する記事でございました。
本記事を読んで、以下のポイントをキャッチしていれば問題ないと思います。

  • 表示ラベルは人間向けの名前であるのに対し、API参照名はシステムが対象を判別するための名前である
  • システム向けの名前であってもルールを設けて名づけ方に統一性を持たせる
  • 将来の自分とチームメンバーを助けるつもりで命名する

命名ルールにおいて大事なことは、紹介したサンプル通りに作ることではなく、ルールを設け統一性のある開発を行うことです。
どのようなルールを設ければよいか分からなくなった時に、本記事を読み返してもらえれば幸いです。

目次