• No : 784
  • 公開日時 : 2026/03/16 21:02
  • 更新日時 : 2026/05/20 10:30
  • 印刷

セグメント条件更新APIを開発したい

回答

本記事では、「セグメント条件更新API」の概要・利用前提・仕様(リクエスト/レスポンス/エラーメッセージ)について紹介しています。
貴社の基幹システム/アプリケーションに連携したセグメント更新を行いたい場合は、本記事をご参照のもと、貴社開発環境に実装してください。

本記事の構成は下記の通りです。

 1. セグメント条件更新APIとは(概要 / b→dash管理画面上のデータ)
 2. 本API利用にあたっての前提事項(事前準備 / 共通仕様)
 3. セグメント条件更新APIの仕様(処理フロー / リクエスト / レスポンス)

各セクションの詳細は、以下をご参照ください。

1. セグメント条件更新APIとは

本APIの概要

セグメント条件更新APIとは、貴社の基幹システム/アプリケーションとb→dashを繋ぐことで、b→dash管理画面を介さずに、「セグメント」アプリ上のセグメント用データに対して、「絞り込み条件」や「更新条件」を変更/更新することができるAPIです。

※ 本APIはセグメントの条件更新のリクエストのみ行うAPIのため、条件更新の結果を確認することはできません。セグメント条件更新結果を確認したい場合は、『セグメント一覧取得APIを開発したい』も併せてご活用ください
本APIが利用できる更新セグメント用データ
セグメント条件更新APIが更新できるセグメント用データは「単一セグメント」で作成したセグメントのみになります。「複合セグメント」で作成したセグメントの条件更新を行いたい場合は、複合セグメントを作成する際に「ベースセグメント」「追加セグメント」として選択した単一セグメントを本APIの対象としてご利用ください。

本APIで更新できるb→dash管理画面上のデータ

セグメント条件更新APIでは、b→dash管理画面にある「セグメント編集画面」における操作と同様に、カラムに対して条件指定を行うことでレコードを絞り込むことができます。

※ 複合セグメントの場合は、「編集」をクリックしても上記の編集画面に遷移しません。複合セグメント作成時に「ベースセグメント」「追加セグメント」として選択した単一セグメントの編集画面をご参照ください
※ 本APIでは、セグメントの抽出条件の設定方法である「特定のデータファイルの値を抽出条件に用いる」機能を利用することはできません

本APIを利用した結果は、下記のb→dash管理画面で確認できます。

 ・「セグメント一覧画面
 ・「セグメント詳細画面」(データファイル利用状況モーダル)

2. 本API利用にあたっての前提事項

事前準備

本APIを利用する事前準備として、下記の3つの手順を踏む必要があります。

 1. セグメント用データの作成
 2. 参照データファイルの取込設定
 3. セグメント利用施策の運用停止
1. セグメント用データの作成

b→dash管理画面上で更新対象となるセグメント用データを作成する必要があります

※ セグメント用データの作成がまだ完了していない場合は『セグメントを作成したい』をご参照の上、設定を完了させてください
2. 参照データファイルの取込設定

本APIの利用でセグメントの「更新条件」を変更する場合、セグメント用データを作成する際に参照したデータファイルのデータファイル取込設定が「定期更新設定する」を選択している必要があります

※ データファイル取込設定をもう一度見直したい場合は『データを取り込みたい』をご参照の上、設定を完了させてください
3. セグメント利用施策の運用停止

本APIの利用でセグメントの「絞り込み条件」を変更する場合、更新するセグメントを利用している施策(メールアプリ、データ分析など)の運用を停止する必要があります
更新したいセグメントがどの施策で利用されているか、利用している施策が「運用中」であるかは、「利用状況モーダル」で確認できます。必要に応じて施策を運用停止し、利用状況モーダルのステータスを「運用停止」または「運用終了」にしてください。

共通仕様

本APIでは、b→dash APIの共通仕様も参照する必要があります。

※ 共通仕様の詳細については『b→dash APIの共通仕様を知りたい』をご参照ください

3. セグメント条件更新APIの仕様

処理フロー図

セグメント条件更新APIの処理フロー図は下記の通りです。

セグメント条件更新リクエスト

リクエストURIとURIパラメータ

本APIのURIにURIパラメータを指定して、データ連携をリクエストするリクエストURIを準備します。

項目

URI https://api.smart-bdash.com/api/v1/segments/{segment_id}
HTTPメソッド PUT

URIパラメータは下記の通りです。

プロパティ

データ型 / サイズ

必須

説明

segment_id string / 255byte

{セグメントID} 更新するセグメントのID
リクエストURIサンプル
https://api.smart-bdash.com/api/v1/segments/10
※ URIパラメータは、URIの「{xxx_xx}」に該当する値を代入することで指定できます
リクエストボディパラメータ

json形式のファイル(拡張子: .json)に、下記のリクエストボディパラメータを指定して、セグメントの更新内容を送信するためのリクエストボディを準備します。

プロパティ

データ型 / サイズ

必須

説明

segment_conditions object / 153400byte

-

セグメント条件
 └ condition_or object[] / 153400byte

-

OR条件のブロック
※ ORブロックは最大10個まで設定可
   └ condition object[] / 15340byte

-

AND条件のブロック
※ 1つのORブロック内で最大20個まで設定可
     └ column_id string / 255byte

データファイル上でのカラムのID
※「condition」の指定がある場合、必須
     └ condition_name string / 2byte

条件指定
※ 詳細は下記「レコード絞り込み条件と指定方法の一覧」をご参照ください
※「condition」の指定がある場合、必須
     └ condition_value object / 510byte

条件値
※ 条件指定が「BL」「NB」「NL」「NN」「T」「F」以外の場合は必須
       └ value string / 255byte

条件の値
※ 条件指定が「BW」「NW」以外の場合は必須
       └ from string / 255byte

範囲/期間指定の条件の開始値
※ 条件指定が「BW」「NW」の場合は必須
       └ to string / 255byte

範囲/期間指定の条件の終了値
※ 条件指定が「BW」「NW」の場合は必須
aggregation_timing_settings object / 480byte

-

集計タイミング設定
 └ regular_update_settings object[] / 480byte

-

定期更新設定
※ 20要素まで設定可能
   └ interval string / 8byte

更新間隔
MONTHLY: 毎月 / WEEKLY: 毎週 / DAILY: 毎日
   └ day integer / 2byte

更新日(「更新間隔」が「MONTHLY」の場合は必須、1〜31)
   └ day_of_the_week string / 3byte

更新曜日(「更新間隔」が「WEEKLY」の場合は必須)
MON / TUE / WED / THU / FRI / SAT / SUN
   └ hour integer / 2byte

更新時(0〜23)
   └ minute integer / 2byte

更新分(0/15/30/45)
 └ is_linked_to_datafile_update boolean / 5byte

データファイル更新のタイミングでセグメント抽出を行うか
true: 行う / false: 行わない
name string / 255byte

-

セグメントの名称変更を行う場合に変更する値を指定する
※ プロパティの指定がない場合は、元の名称のままとする
レコード絞り込み条件と指定方法の一覧

本APIはカラムに対して条件指定を行うことで取得するレコードの絞り込みができます。下記に「絞り込み条件」と「コードの指定方法」をまとめておりますので、レコードの絞り込みを行う場合はご参照ください。

データ型

絞込み条件

抽出条件の定義

指定方法

テキスト型以外

NULL NULLを抽出する

NL

NULLではない NULL以外を抽出する

NN

テキスト

空文字 空文字を抽出する(スペースは含まれない)

BL

空文字ではない 空文字以外を抽出する

NB

次を含む 指定した文字列を含む値を抽出する(カンマ区切りで複数指定可能[OR条件、現在未実装])

LK

次を含まない 指定した文字列を含まない値を抽出する(カンマ区切りで複数指定可能[OR条件、現在未実装])

NI

次で始まる 指定した文字列の前方一致で抽出する

L%

次で終わる 指定した文字列の後方一致で抽出する

%L

次に完全一致 指定した文字列の完全一致で抽出する

EQ

次に完全一致しない 指定した文字列の完全不一致で抽出する

NE

整数

次より大きい 指定した数値より大きい値を抽出する

GT

以上 指定した数値以上の値を抽出する

GE

次より小さい 指定した数値より小さい値を抽出する

LT

以下 指定した数値以下の値を抽出する

LE

次の値の間 指定した2つの数値の間にある値を抽出する(指定した数値は含まれる)

BW

次の値の間にない 指定した2つの数値の間にない値を抽出する(指定した数値は含まれない)

NW

次と等しい 指定した数値と等しい値を抽出する

EQ

次と等しくない 指定した数値と等しくない値を抽出する

NE

小数

次より大きい 指定した数値より大きい値を抽出する

GT

以上 指定した数値以上の値を抽出する

GE

次より小さい 指定した数値より小さい値を抽出する

LT

以下 指定した数値以下の値を抽出する

LE

次の値の間 指定した2つの数値の間にある値を抽出する(指定した数値は含まれる)

BW

次の値の間にない 指定した2つの数値の間にない値を抽出する(指定した数値は含まれない)

NW

次と等しい 指定した数値と等しい値を抽出する

EQ

次と等しくない 指定した数値と等しくない値を抽出する

NE

日付

次より前の日付 指定した日付より前の日付を抽出する(フォーマット: yyyyMMdd形式)

LT

次より後の日付 指定した日付より後の日付を抽出する(yyyyMMdd形式)

GT

次の日付 指定した日付と一致する日付を抽出する(yyyyMMdd形式)

EQ

次の期間にある 指定した2つの日付の間にある日付を抽出する(指定した日付は含まれる、yyyyMMdd形式)

BW

次の期間にない 指定した2つの日付の間にない日付を抽出する(指定した日付は含まれない、yyyyMMdd形式)

NW

日時

次より前の日付 指定した日付より前の日付を抽出する(yyyyMMddhh24miss形式)

LT

次より後の日付 指定した日付より後の日付を抽出する(yyyyMMddhh24miss形式)

GT

日付 指定した日付と一致する日付を抽出する(yyyyMMddhh24miss形式)

EQ

次の期間にある 指定した2つの日付の間にある日付を抽出する(指定した日付は含まれる、yyyyMMddhh24miss形式)

BW

次の期間にない 指定した2つの日付の間にない日付を抽出する(指定した日付は含まれない、yyyyMMddhh24miss形式)

NW

真偽値

TRUE 「true」を抽出する

T

FALSE 「false」を抽出する

F

リクエストボディサンプル
{
  "segment_conditions": {
    "condition_or": [ 
      {
        "condition": [
          {
            "column_id": "COLUMN_1",
            "condition_name": "EQ",
            "condition_value": {
              "value": "vwxyz"
            }
          },
          {
            "column_id": "COLUMN_2",
            "condition_name": "BW",
            "condition_value": {
              "from": "20220101",
              "to": "20221231235959"
            }
          },
          {
            "column_id": "COLUMN_3",
            "condition_name": "NW",
            "condition_value": {
              "from": "20220101000000",
              "to": "20221231235959"
            }
          },
          {
            "column_id": "COLUMN_4",
            "condition_name": "T"
            }
          ]
        }
      ]
    },
  "aggregation_timing_settings": {
    "regular_update_settings": [
      {
        "interval": "MONTHLY",
        "day": 31,
        "hour": 23,
        "minute": 0
      },
      {
        "interval": "WEEKLY",
        "day_of_the_week": "FRI",
        "hour": 23,
        "minute": 0
      }
    ],
    "is_linked_to_datafile_update": true,
    "name": "更新後セグメント名称"
  }
}
リクエストヘッダパラメータ

準備したリクエストURI/リクエストボディと、下記のリクエストヘッダパラメータを用いて、貴社Webアプリから「PUT」リクエスト形式でセグメント条件更新のリクエストをします。

プロパティ

型 / サイズ

必須

説明

Authorization string / 2055字

Bearer {アクセストークン} 「認証方式を選択したい」で取得したアクセストークン
リクエストコードサンプル
PUT https://api.smart-bdash.com/api/v1/segments/10

セグメント条件更新レスポンス

レスポンスボディパラメータ

リクエストの送信に成功すると、下記のレスポンス形式で本APIからレスポンスが返されます。

パラメータ名

データ型

説明

階層1: result object -
階層2: code integer ステータスコード
・リクエスト成功: 「202」
・リクエストエラー: 「400」
成功レスポンスサンプル (202)
{
  "result": {
    "code": 202,
  }
}
※ セグメント条件更新APIで受け取るレスポンスは、セグメント更新処理が正常に開始されたかどうかのレスポンスであり、セグメント更新処理の結果ではありません
リクエストエラー発生時のエラーメッセージ詳細

#

コード

エラーメッセージ

説明

1

400

リクエストヘッダ「Range」には10,000行以内でリクエスト開始行数とリクエスト終了行数を指定してください リクエストヘッダ「Range」の指定が10,000行数を超過した

2

400

condition_nameに「{condition_name}」を指定時は、condition_value.valueを指定してください 条件指定に「BL」「NB」「NL」「NN」「BW」「NW」「T」「F」以外を指定時にvalueが未指定

3

400

condition_nameに「{condition_name}」を指定時は、condition_value.fromを指定してください 条件指定に「BW」「NW」を指定時にfromが未指定

4

400

condition_nameに「{condition_name}」を指定時は、condition_value.toを指定してください 条件指定に「BW」「NW」を指定時にtoが未指定

5

400

{sort_order}には以下のいずれかを指定してください。asc/desc ソート対象のカラムのID指定時にソート方法に不正な文字列が指定された

6

400

limitには1〜10,000を指定してください 最大取得件数に範囲外の値が指定された

7

400

データファイル「{datafile_id}」カラム「{column_id}」が存在しません 検索対象のカラムのIDに指定したカラムがデータファイルに存在しない

8

400

データファイル「{datafile_id}」にカラム「{column_id}」が存在しません ソート対象のカラムのIDに指定したカラムがデータファイルに存在しない

9

400

テキスト型のカラム「{column_id}」の{condition_name}には以下のいずれかを指定してください。BL/NB/LK/NI/L%/%L/EQ/NE テキスト型カラムの条件指定に不正な文字列が指定された

10

400

整数型のカラム「{column_id}」の{condition_name}には以下を指定してください。GT/GE/LT/LE/BW/NW/EQ/NE/NL/NN 整数型カラムの条件指定に不正な文字列が指定された

11

400

小数型のカラム「{column_id}」の{condition_name}には以下を指定してください。GT/GE/LT/LE/BW/NW/EQ/NE/NL/NN 小数型カラムの条件指定に不正な文字列が指定された

12

400

日付型のカラム「{column_id}」の{condition_name}には以下を指定してください。LT/GT/EQ/BW/NW/NL/NN 日付型カラムの条件指定に不正な文字列が指定された

13

400

日時型のカラム「{column_id}」の{condition_name}には以下を指定してください。LT/GT/EQ/BW/NW/NL/NN 日時型カラムの条件指定に不正な文字列が指定された

14

400

真偽値型のカラム「{column_id}」の{condition_name}には以下を指定してください。T/F/NL/NN 真偽値型カラムの条件指定に不正な文字列が指定された

15

400

整数型のカラム「{column_id}」の{value}には整数に変換可能な文字列を指定してください 条件指定が未指定、または「NL」「NN」「BW」「NW」以外を指定時に整数型カラムの条件の値に整数型以外が指定された

16

400

整数型のカラム「{column_id}」の{from}には整数に変換可能な文字列を指定してください 条件指定に「BW」「NW」を指定時に整数型カラムの条件の開始値に整数型以外が指定された

17

400

整数型のカラム「{column_id}」の{to}には整数に変換可能な文字列を指定してください 条件指定に「BW」「NW」を指定時に整数型カラムの条件の終了値に整数型以外が指定された

18

400

小数型のカラム「{column_id}」の{value}には小数に変換可能な文字列を指定してください 条件指定が未指定、または「NL」「NN」「BW」「NW」以外を指定時に小数型カラムの条件の値に小数型以外が指定された

19

400

小数型のカラム「{column_id}」の{from}には小数に変換可能な文字列を指定してください 条件指定に「BW」「NW」を指定時に小数型カラムの条件の開始値に小数型以外が指定された

20

400

小数型のカラム「{column_id}」の{to}には小数に変換可能な文字列を指定してください 条件指定に「BW」「NW」を指定時に小数型カラムの条件の終了値に小数型以外が指定された

21

400

日付型のカラム「{column_id}」の{value}には以下の形式で文字列を指定してください。形式: yyyyMMdd 条件指定が未指定、または「NL」「NN」「BW」「NW」以外を指定時に日付型カラムの条件の値に日付型以外が指定された

22

400

日付型のカラム「{column_id}」の{from}には以下の形式で文字列を指定してください。形式: yyyyMMdd 条件指定に「BW」「NW」を指定時に日付型カラムの条件の開始値に日付型以外が指定された

23

400

日付型のカラム「{column_id}」の{to}には以下の形式で文字列を指定してください。形式: yyyyMMdd 条件指定に「BW」「NW」を指定時に日付型カラムの条件の終了値に日付型以外が指定された

24

400

日時型のカラム「{column_id}」の{value}には以下の形式で文字列を指定してください。形式: yyyyMMddhh24miss 条件指定が未指定、または「NL」「NN」「BW」「NW」以外を指定時に日時型カラムの条件の値に日時型以外が指定された

25

400

日時型のカラム「{column_id}」の{from}には以下の形式で文字列を指定してください。形式: yyyyMMddhh24miss 条件指定に「BW」「NW」を指定時に日時型カラムの条件の開始値に日時型以外が指定された

26

400

日時型のカラム「{column_id}」の{to}には以下の形式で文字列を指定してください。形式: yyyyMMddhh24miss 条件指定に「BW」「NW」を指定時に日時型カラムの条件の終了値に日時型以外が指定された

27

400

「query_condition.condition_or.condition.column_id」が存在しません。「query_condition」指定時には「column_id」を指定してください 検索条件のカラムが未指定

28

400

「sort_condition.condition.column_id」が存在しません。「sort_condition」指定時には「column_id」を指定してください ソート条件のカラムが未指定