名刺交換 / ミートログ

相手との交換の記録

GET/meet-logs/contacts/:userId

指定した相手との交換の記録(新しい順)と、メールアドレスの開示状況を返します。交換していない相手なら contact は null、meetLogs は空です。個人どうしの交換だけが対象で、その相手が管理者として担当したコミュニティとの交換は含みません(GET /meet-logs/communities/:communityId)。asCommunityId を指定すると、そのコミュニティとその相手の記録を返します(管理者のみ)。

認証要ログイン

パスパラメータ

userIdstring必須

相手のユーザー ID。

クエリパラメータ

asCommunityIdstring任意

指定すると、そのコミュニティとその相手の記録を返します(承認済みの管理者のみ)。contact は MeetLogCommunityScopeContact になり、記録は担当していない管理者にも返します。

補足

asCommunityId のコミュニティの管理者でなければ 403(errorCode 40208)です。

相手が開示したメールアドレスは、4S の公式アプリにだけ返します。それ以外のアプリでは email は常に null です。

レスポンス

フィールド型説明
contactMeetLogContactDetail | MeetLogCommunityScopeContact | null相手の集計と開示状況。asCommunityId を指定したときは MeetLogCommunityScopeContact。
meetLogsMeetLog[]交換の記録。
リクエスト
curl https://api.4s.link/meet-logs/contacts/USER_ID \
-H "Authorization: Bearer 4s_at_..."
レスポンス例
{
"contact": {
"user": { "id": "u-taro", "slug": "taro", "firstName": "Taro", "lastName": "Yamada", "nativeName": "山田 太郎", "avatarUrl": "https://...", "title": "代表取締役", "bio": null, "cardDesign": "gradient-01-cobalt-mint", "cardPhoto": null, "organization": null },
"community": null,
"exchangeCount": 1,
"firstExchangedAt": "2026-07-10T06:30:12.000Z",
"lastExchangedAt": "2026-07-10T06:30:12.000Z",
"lastEvent": null,
"myShareEmail": true,
"mySubscribeNewsletter": false,
"email": "taro.yamada@example.com"
},
"meetLogs": [{
"id": "ml-1",
"exchangeId": "6f1c2d3e-...",
"counterpartId": "u-taro",
"ownerCommunityId": null,
"counterpartCommunityId": null,
"representative": null,
"exchangedAt": "2026-07-10T06:30:12.000Z",
"event": {
"id": "ev-1",
"slug": "ivs-2026",
"title": "IVS 2026",
"languages": null,
"startTime": "2026-07-08T10:00:00.000Z",
"endTime": "2026-07-10T18:00:00.000Z",
"timezone": "Asia/Tokyo",
"thumbnailUrl": null,
"mainImageUrl": null
},
"candidateEvents": [],
"memo": "協業の相談をした",
"location": { "latitude": 35.6581, "longitude": 139.7017, "accuracy": 12 },
"createdAt": "2026-07-10T06:30:12.000Z",
"updatedAt": "2026-07-10T06:41:00.000Z"
}]
}