Users API

整理 usersuser_* 相關 API。

近期流量結論

2026-06-24 與 2026-07-14 查 legacy 正式機 ip-10-5-2-242 目前保留的 access log。2026-07-14 已確認實際位置為 /var/log/apache2/get-lancer_access.log*;rotation 同時包含 uncompressed 與 gzip,查詢方式與當次完整盤點見 migration 共用的 _meta/access_log.md。Users 系列主要命中:

Endpoint筆數判斷
POST /users/login_once.json63663高流量;2026-06-29 已補 legacy guard / fallback 與 PHPUnit,已做 staging happy / consumed 實測,完整 diff 待補
POST /users/login.json29407高流量;已補 legacy JSON path parity、同 device token rotation decision 與 PHPUnit,staging rotation / full diff 待補
POST /users/forgot_password.json3900已補 action / PHPUnit / staging diff
POST /users/sign_up.json894已補 action / PHPUnit;已做 staging qna path 實測,完整 social token diff 待補
POST /users/delete.json539已補 action / routing / PHPUnit;2026-07-02 已做 new staging curl 與主要 DB side effect 驗證
POST /users/change_password.json104已補 action / routing / PHPUnit;2026-07-03 staging curl / DB / log 已驗證
POST /users/update_auto_refill.json21已補 action / routing / PHPUnit;付款設定相關,流量較低;legacy / new staging success path 已驗證
POST /users/connect_social/{type}.json826 POST / 192 OPTIONS已補 action / routing / PHPUnit;2026-07-06 重查 legacy /var/log/apache2/get-lancer_access.log*,apple / google / facebook 仍有流量;2026-07-08 new staging Google / Apple 已驗證,Facebook 真實 token 待補
GET /users/referrals.json139 GET / 125 OPTIONS已補 action / routing / PHPUnit;只讀目前 user 的推薦好友列表,寄信是另一支 /users/refer.json
POST /users/verify/phone/preauth.json21715 POST 200 / 80 POST 403 / 11810 OPTIONS 200已補 action / route / model / PHPUnit;new staging Infobip delivery 已驗證
POST /users/verify/phone/auth.json21760 POST 200 / 31 POST 403 / 11469 OPTIONS 200已補 action / route / user/referral/abnormal side effect / PHPUnit;new staging logged-in auth 已驗證
POST /users/verify/voice/preauth.json207 POST 200 / 137 OPTIONS 200已補 route / voice provider path / duplicate guard / PHPUnit;真實 voice 實測待補

POST /users/login_once.json 已補 legacy parity guard / fallback 與 PHPUnit,已做 staging happy path、二次 consumed 與主要 DB side effect 實測,完整 diff 待補。POST /users/login.json 已補 Google / Facebook Limited / Apple transfer fallback、UserProfile.user_id response、email OTP consume flat id、login_logsuser_login_infos、device-id 無密碼失敗分支;2026-07-21 reviewer 接受同 device 成功重登 archive / rotate token 的非 legacy migration decision,staging rotation / full diff 待補。POST /users/forgot_password.json 已補 action / PHPUnit / staging diff。POST /users/sign_up.json 已補 action / PHPUnit,已做 staging qna path 實測,後續需補完整 social token diff;註冊流程不可直接沿用 shared account helper。POST /users/delete.json 已補 action / routing / PHPUnit,並已做 new staging curl 與主要 DB side effect 驗證。POST /users/change_password.json 已補 action / routing / PHPUnit,並已做 staging curl、DB side effect 與 log 驗證。

Endpoint方法認證來源說明新專案對應狀態備註
/user_friends/index.json待確認全域 API keyapp/Controller/UserFriendsController.php:57friend 清單未找到未找到新專案未看到 Endpoint/V1/UserFriends.php 或對應 route。
/user_friends/add.json待確認全域 API keyapp/Controller/UserFriendsController.php:143新增 friend/AJAX未找到未找到新專案未看到 Endpoint/V1/UserFriends.php 或對應 route。
/user_friends/delete.json待確認全域 API keyapp/Controller/UserFriendsController.php:343刪除 friend未找到未找到新專案未看到 Endpoint/V1/UserFriends.php 或對應 route。
/user_friends/reject.json待確認全域 API keyapp/Controller/UserFriendsController.php:371拒絕 friend/AJAX未找到未找到新專案未看到 Endpoint/V1/UserFriends.php 或對應 route。
/user_friends/accept.json待確認全域 API keyapp/Controller/UserFriendsController.php:491接受 friend/AJAX未找到未找到新專案未看到 Endpoint/V1/UserFriends.php 或對應 route。
/user_friends/remove.json待確認全域 API keyapp/Controller/UserFriendsController.php:602移除 friend/AJAX未找到未找到新專案未看到 Endpoint/V1/UserFriends.php 或對應 route。
/user_friends/importfriends.json待確認全域 API keyapp/Controller/UserFriendsController.php:923匯入 friend未找到未找到新專案未看到 Endpoint/V1/UserFriends.php 或對應 route。
/user_profiles/edit.jsonPOST全域 API keyapp/Controller/UserProfilesController.php:31編輯 profile未找到未找到新專案沒有 UserProfiles endpoint。
/user_profiles/profile_image.json待確認全域 API keyapp/Controller/UserProfilesController.php:341profile image未找到未找到新專案沒有 UserProfiles endpoint。
/user_referrals/remove_referee.json待確認使用者 sessionapp/Controller/UserReferralsController.php:77移除 referee未找到未找到新專案沒有 UserReferrals endpoint。
/users/index.json待確認全域 API keyapp/Controller/UsersController.php:71user 清單未找到未找到新專案 Users 沒有 index()
/users/dashboard.json待確認全域 API keyapp/Controller/UsersController.php:472dashboard data未找到未找到新專案 Users 沒有同名 method。
/users/view.json待確認使用者 session + API keyapp/Controller/UsersController.php:1008user detail未找到未找到新專案 Users 沒有同名 method。
/users/register.jsonPOST全域 API keyapp/Controller/UsersController.php:1320註冊未找到未找到新專案 Users 沒有同名 method。
/users/activation/{user_id}/{hash}.jsonGET全域 API keyapp/Controller/UsersController.php:1877 / JSON helper 1949啟用未找到暫緩2026-07-14 查全部保留的 legacy get-lancer_access.log* 為 0 筆;見 共用 access log 查詢紀錄
/users/iphone_social_register.jsonPOST全域 API keyapp/Controller/UsersController.php:2504iPhone social register未找到未找到新專案 Users 沒有同名 method。
/users/logout.json待確認全域 API keyapp/Controller/UsersController.php:2565登出未找到未找到新專案 Users 沒有同名 method。
/users/forgot_password.jsonPOST全域 API keyapp/Controller/UsersController.php:2715忘記密碼Users::forgot_password()已補 action / PHPUnit / staging diff2026-06-24 正式 log:POST 200 有 3900 筆;調查見 details/users/forgot_password.md
/users/change_password_from_api.json待確認使用者 sessionapp/Controller/UsersController.php:2911API 修改密碼Users::change_password()已補 action / routing / PHPUnit實際 JSON path 由 /users/change_password.json 轉入;見 details/users/change_password.md
/users/change_password.jsonPOST使用者 sessionapp/Controller/UsersController.php:3151修改密碼Users::change_password()已補 action / routing / PHPUnit / staging DB log 驗證details/users/change_password.md
/users/delete.jsonPOST使用者 sessionapp/Controller/UsersController.php:3884刪除帳號Users::delete()已補 action / routing / PHPUnit / staging DB 驗證details/users/delete.md
/users/refer.jsonPOST使用者 sessionapp/Controller/UsersController.php:4409 / JSON path 5668寄推薦好友 emailUsers::refer()已補 action / routing / PHPUnit/users/referrals.json 同頁;只寫 Invite_Referral event queue,不新增 referral row。見 details/users/refer.md
/users/skills.json待確認全域 API keyapp/Controller/UsersController.php:4935user skills未找到未找到新專案 Users 沒有同名 method。
/users/credentials.json待確認全域 API keyapp/Controller/UsersController.php:5038credentials未找到未找到新專案 Users 沒有同名 method。
/users/connect_social/{type}.jsonPOST使用者 sessionapp/Controller/UsersController.php:5278綁定 Google / Facebook / Apple social idUsers::connect_social()已補 action / routing / PHPUnit / new staging Google、Apple 驗證2026-07-08 已驗證 Google / Apple success、social id conflict 與主要 DB side effect;Facebook 真實 token 待補。調查見 details/users/connect_social.md
/users/integration_data.json待確認使用者 sessionapp/Controller/UsersController.php:5567integration payload未找到未找到新專案 Users 沒有同名 method。
/users/intercom_data.json待確認使用者 sessionapp/Controller/UsersController.php:5622Intercom payload未找到未找到新專案 Users 沒有同名 method。
/users/refer_from_api.json待確認使用者 sessionapp/Controller/UsersController.php:5668API referral未找到未找到新專案 Users 沒有同名 method。
/users/referrals.jsonGET使用者 sessionapp/Controller/UsersController.php:5697referral 清單Users::referrals()已補 action / routing / PHPUnit2026-07-08 legacy log:139 GET 200 / 125 OPTIONS 200;實際頁面 /dashboard/free-credits/referral;見 details/users/referrals.md
/users/sign_up.jsonPOST全域 API keyapp/Controller/UsersController.php:6044新版 sign up / consumer 註冊Users::sign_up()已補 action / PHPUnit;已做 staging qna path 實測,完整 social token diff 待補調查與測試見 details/users/sign_up.md
/users/update_auto_refill.jsonPOST使用者 sessionapp/Controller/UsersController.php:6345更新 auto refillUsers::update_auto_refill()已補 action / routing / PHPUnit;legacy / new staging success path 已驗證legacy 主流程只更新 users.auto_refill_package_idmodified,不直接刷卡。見 details/users/update_auto_refill.md
/user_favorites/user_favorites/index.json待確認全域 API keyapp/Plugin/UserFavorites/Controller/UserFavoritesController.php:14favorite 清單未找到未找到新專案未看到 Endpoint/V1/UserFavorites.php 或對應 route。
/user_favorites/user_favorites/add.json待確認全域 API keyapp/Plugin/UserFavorites/Controller/UserFavoritesController.php:35新增 favorite/AJAX未找到未找到新專案未看到 Endpoint/V1/UserFavorites.php 或對應 route。
/user_favorites/user_favorites/delete.json待確認全域 API keyapp/Plugin/UserFavorites/Controller/UserFavoritesController.php:143刪除 favorite/AJAX未找到未找到新專案未看到 Endpoint/V1/UserFavorites.php 或對應 route。
/user_can_messages/index.json待確認使用者 sessionapp/Controller/UserCanMessagesController.php:14canned message 清單UserCanMessages::index()同路徑已存在新專案 Endpoint/V1/UserCanMessages.php 有同名 action。
/user_can_messages/view.json待確認使用者 sessionapp/Controller/UserCanMessagesController.php:44canned message detailUserCanMessages::view()同路徑已存在新專案 Endpoint/V1/UserCanMessages.php 有同名 action。
/user_can_messages/add.json待確認使用者 sessionapp/Controller/UserCanMessagesController.php:76新增 canned messageUserCanMessages::add()同路徑已存在新專案 Endpoint/V1/UserCanMessages.php 有同名 action。
/user_can_messages/edit.json待確認使用者 sessionapp/Controller/UserCanMessagesController.php:108編輯 canned messageUserCanMessages::edit()同路徑已存在新專案 Endpoint/V1/UserCanMessages.php 有同名 action。
/user_can_messages/delete.json待確認使用者 sessionapp/Controller/UserCanMessagesController.php:145刪除 canned messageUserCanMessages::delete()同路徑已存在新專案 Endpoint/V1/UserCanMessages.php 有同名 action。
/user_identities/view.json待確認使用者 sessionapp/Controller/UserIdentitiesController.php:342identity detailUserIdentity::index()可能需改路徑/單複數不同新專案是 UserIdentity 單數 endpoint,沒有 UserIdentities::view()
/user_permission_preferences/edit.jsonPOST全域 API keyapp/Controller/UserPermissionPreferencesController.php:5編輯通知/權限偏好UserNotificationSettings::*可能需改路徑新專案沒有同名 endpoint;可能由通知設定 endpoint 取代。
/users/login.jsonPOST全域 API keyapp/Controller/UsersController.php:2018登入Users::login()已補 legacy JSON path parity、token rotation decision 與 PHPUnit;staging rotation / full diff 待補2026-07-21 同 device 成功重登改為 archive 舊 token 到 api_session_logs(action=login_rotate) 後建立新 token;這是 reviewer 接受的非 legacy migration decision。見 details/users/login.md
/users/login_once.jsonPOST全域 API keyapp/Controller/UsersController.php:2417一次性登入Users::login_once()已補 legacy parity guard / fallback 與 PHPUnit;已做 staging happy / consumed 實測2026-06-29 已補 active user、expired / fulfilled hash、device id fallback;見 details/users/login_once.md
/users/check_account.json待確認全域 API keyapp/Controller/UsersController.php:5080檢查帳號Users::check_account()同路徑已存在新專案 Endpoint/V1/Users.php 有同名 action。
/users/push_notify.json待確認使用者 sessionapp/Controller/UsersController.php:5528push token/settingsUsers::push_notify()同路徑已存在新專案 Endpoint/V1/Users.php 有同名 action。
/users/verify/phone/preauth.jsonPOST全域 API key;session optionalapp/Controller/UsersController.php:5804phone/preauth 分支 5834發送 phone OTPUsers::verify()已補;new staging Infobip delivery 已驗證2026-07-14 legacy:21715 POST 200、80 POST 403、11810 OPTIONS 200;2026-07-16 new PHPUnit 9 tests / 85 assertions(與 auth / voice 合計)及 Infobip callback status=7 實測;見 detail
/users/verify/phone/auth.jsonPOST全域 API key;session optionalapp/Controller/UsersController.php:5804,auth 分支 6006驗證 OTPUsers::verify()已補;new staging logged-in auth 已驗證2026-07-14 legacy:21760 POST 200、31 POST 403、11469 OPTIONS 200;2026-07-16 已驗證 verification consume、user phone confirm 與舊 owner reset;見 detail
/users/verify/voice/preauth.jsonPOST全域 API key;session optionalapp/Controller/UsersController.php:5804,voice 分支 5900發送 voice OTPUsers::verify()已補;真實 voice 實測待補2026-07-14 legacy:207 POST 200、137 OPTIONS 200;見 detail
/users/verify/email/preauth.jsonPOST全域 API key;session optionalapp/Controller/UsersController.php:5804舊 email verify pathEmailVerifications::preauth*()replacement 待確認2026-07-14 legacy 只有 2 POST 200;current web-app 已走 /new/v1/email_verifications/preauth*
/users/sign_in.json待確認全域 API keyapp/Controller/UsersController.php:6415新版 sign inUsers::login()可能需改路徑新專案沒有 sign_in();有 Users::login()