コンテンツにスキップ

リンクの操作

リンクの概要はIDLink APIの概要をご参照ください。

紐付けを行う

あるノードに対して別のノードを紐付けます。
指定されたいずれかのノードが存在しなければ新たに作成します。

POST /v1/{customer_id}/links/_insert

リクエストヘッダ

いずれかのkeyにsecure:trueの属性を持つIDタイプが含まれている場合、認証が必要になります。

リクエストボディ

{
    "from": {
        "schema": "{SCHEMA}",
        "key": {
             "type": "{TYPE}",
             "id": "{ID}"
        },
    },
    "to": {
        "schema": "{SCHEMA}",
        "key": {
            "type": "{TYPE}",
            "id": "{ID}"
        },
    }
}
キー名 タイプ 必須 説明
from OBJECT 必須 紐付け元のノード。
from.schema STRING 必須 紐付け元のノードが所属するスキーマID。
from.key OBJECT 必須 紐付け元のノードを特定するためのIDタイプとIDの組み合わせ。
from.key.type STRING 必須 紐付け元のノードのIDタイプ。スキーマのIDタイプと一致する必要があります。
from.key.id STRING 必須 紐付け元のノードのID。
to OBJECT 必須 紐付け先のノード。
to.schema STRING 必須 紐付け先のノードが所属するスキーマID。
to.key OBJECT 必須 紐付け先のノードを特定するためのIDタイプとIDの組み合わせ。
to.key.type STRING 必須 紐付け先のノードを特定するためのIDタイプ。スキーマのIDタイプと一致する必要があります。
to.key.id STRING 必須 紐付け先のノードを特定するためのID。

リクエストサンプル

curl -X POST https://${HostName}/v1/${CustomerId}/links/_insert \
-d '{"from": {"schema": "popinfo_app", "key": {"type": "popinfo_id", "id": "00000000-0000-0000-0000-000000000000"}}, "to": {"schema": "member_app", "key": {"type": "member_id", "id": "user_001"}}}'

レスポンス

HTTP/1.1 201 {}

更新

紐付け情報の更新を行います。
いずれかのノードが存在しなければエラーとなります。

POST /v1/{customer_id}/links/_update

Info

条件に合致するIDが存在しなかった時に新規で登録が必要な場合は、更新または作成をご利用ください

リクエストヘッダ

いずれかのkeyにsecure:trueの属性を持つIDタイプが含まれている場合、認証が必要になります。

リクエストボディ

{
    "from": {
        "schema": "{SCHEMA}",
        "key": {
             "type": "{TYPE}",
             "id": "{ID}"
        },
    },
    "set": {
        "to": {
            "schema": "{SCHEMA}",
            "key": {
                "type": "{TYPE}",
                "id": "{ID}"
            }
        }
    },
    "where": {
        "to": {
            "schema": "{SCHEMA}",
            "key": {
                "type": "{TYPE}",
                "id": "{ID}"
            }
        }
    }
}
キー名 タイプ 必須 説明
from OBJECT 必須 紐付け元ノード。
from.schema STRING 必須 紐付け元ノードが所属するスキーマID。
from.key OBJECT 必須 紐付け元ノードを特定するためのIDタイプとIDの組み合わせ。
from.key.type STRING 必須 紐付け元ノードのIDタイプ。スキーマのIDタイプと一致する必要があります。
from.key.id STRING 必須 紐付け元ノードのID。
set.to OBJECT 必須 変更後の紐付け先ノード。
set.schema STRING 必須 変更後の紐付け先ノードが所属するスキーマID。
set.key OBJECT 必須 変更後の紐付け先ノードを特定するためのIDタイプとIDの組み合わせ。
set.key.type STRING 必須 変更後の紐付け先ノードを特定するためのIDタイプ。スキーマのIDタイプと一致する必要があります。
set.key.id STRING 必須 変更後の紐付け先ノードを特定するためのID。
where.to STRING 必須 変更対象の紐付け先ノード。
where.to.schema STRING - 変更対象の紐付け先ノードが所属するスキーマID。
where.to.key STRING 必須 変更対象の紐付け先ノードを特定するためのIDタイプとIDの組み合わせ。
where.to.key.type STRING - 変更対象の紐付け先ノードを特定するためのIDタイプ。
where.to.key.id STRING - 変更対象の紐付け先ノードを特定するためのID。

リクエストサンプル

curl -X POST https://${HostName}/v1/${CustomerId}/links/_update \
-d '{"from": {"schema": "popinfo_app", "key": {"type": "popinfo_id", "id": "00000000-0000-0000-0000-000000000000"}}, "set": {"to": {"schema": "member_app", "key": {"type": "member_id", "id": "user_002"}}}, "where": {"to": {"schema": "member_app", "key": {"type": "member_id", "id": "user_001"}}}}'

レスポンス

HTTP/1.1 200 {}

更新または作成

紐付け情報の更新を行います。
いずれかのノードが存在しなければ新たに作成します。

POST /v1/{customer_id}/links/_upsert

リクエストヘッダ

いずれかのkeyにsecure:trueの属性を持つIDタイプが含まれている場合、認証が必要になります。

リクエストボディ

{
    "from": {
        "schema": "{SCHEMA}",
        "key": {
             "type": "{TYPE}",
             "id": "{ID}"
        },
    },
    "set": {
        "to": {
            "schema": "{SCHEMA}",
            "key": {
                "type": "{TYPE}",
                "id": "{ID}"
            }
        }
    },
    "where": {
        "to": {
            "schema": "{SCHEMA}",
            "key": {
                "type": "{TYPE}",
                "id": "{ID}"
            }
        }
    }
}
キー名 タイプ 必須 説明
from OBJECT 必須 紐付け元ノード。
from.schema STRING 必須 紐付け元ノードが所属するスキーマID。
from.key OBJECT 必須 紐付け元ノードを特定するためのIDタイプとIDの組み合わせ。
from.key.type STRING 必須 紐付け元ノードのIDタイプ。スキーマのIDタイプと一致する必要があります。
from.key.id STRING 必須 紐付け元ノードのID。
set.to OBJECT 必須 紐付け先ノード。
set.schema STRING 必須 紐付け先ノードが所属するスキーマID。
set.key OBJECT 必須 紐付け先ノードを特定するためのIDタイプとIDの組み合わせ。
set.key.type STRING 必須 紐付け先ノードを特定するためのIDタイプ。スキーマのIDタイプと一致する必要があります。
set.key.id STRING 必須 紐付け先ノードを特定するためのID。
where.to STRING 必須 上書きする紐付けの、紐付け先ノード。
where.to.schema STRING - 上書きする紐付け先のノードが所属するスキーマID。
where.to.key STRING 必須 上書きする紐付け先のノードを特定するためのIDタイプとIDの組み合わせ。
where.to.key.type STRING - 上書きする紐付け先のノードを特定するためのIDタイプ。
where.to.key.id STRING - 上書きする紐付け先のノードを特定するためのID。

リクエストサンプル

curl -X POST https://${HostName}/v1/${CustomerId}/links/_upsert \
-d '{"from": {"schema": "popinfo_app", "key": {"type": "popinfo_id", "id": "00000000-0000-0000-0000-000000000000"}}, "set": {"to": {"schema": "member_app", "key": {"type": "member_id", "id": "user_002"}}}, "where": {"to": {"schema": "member_app", "key": {"type": "member_id", "id": "user_001"}}}}'

レスポンス

HTTP/1.1 200 {}

削除

指定したノード間の紐付けを削除します。

POST /v1/{customer_id}/links/_delete

リクエストヘッダ

いずれかのkeyにsecure:trueの属性を持つIDタイプが含まれている場合、認証が必要になります。

リクエストボディ

{
    "from": {
        "schema": "{SCHEMA}",
        "key": {
             "type": "{TYPE}",
             "id": "{ID}"
        },
    },
    "where": {
        "to": {
            "schema": "{SCHEMA}",
            "key": {
                "type": "{TYPE}",
                "id": "{ID}"
            }
        }
    }
}
キー名 タイプ 必須 説明
from OBJECT 必須 紐付け元ノード。
from.schema STRING 必須 紐付け元ノードが所属するスキーマID。
from.key OBJECT 必須 紐付け元ノードを特定するためのIDタイプとIDの組み合わせ。
from.key.type STRING 必須 紐付け元ノードのIDタイプ。スキーマのIDタイプと一致する必要があります。
from.key.id STRING 必須 紐付け元ノードのID。
where.to STRING 必須 削除対象の紐付け先ノード。
where.to.schema STRING - 削除対象の紐付け先ノードが所属するスキーマID。
where.to.key STRING 必須 削除対象の紐付け先ノードを特定するためのIDタイプとIDの組み合わせ。
where.to.key.type STRING - 削除対象の紐付け先ノードを特定するためのIDタイプ。スキーマのIDタイプと一致する必要があります。
where.to.key.id STRING - 削除対象の紐付け先ノードを特定するためのID。

リクエストサンプル

curl -X POST https://${HostName}/v1/${CustomerId}/links/_delete \
-d '{"from": {"schema": "popinfo_app", "key": {"type": "popinfo_id", "id": "00000000-0000-0000-0000-000000000000"}}, "where": {"to": {"schema": "member_app", "key": {"type": "member_id", "id": "user_001"}}}}'

レスポンス

HTTP/1.1 204