gengx
This commit is contained in:
@@ -0,0 +1,116 @@
|
||||
syntax = "v1"
|
||||
|
||||
info (
|
||||
title: "星遇社交平台 API"
|
||||
desc: "账户、发现、动态、会员与 IM REST 接口定义"
|
||||
author: "Xingyu"
|
||||
version: "1.0"
|
||||
)
|
||||
|
||||
type LoginRequest { Phone string `json:"phone"`; Password string `json:"password"`; DeviceID string `json:"deviceId"` }
|
||||
type LoginResponse { AccessToken string `json:"accessToken"`; RefreshToken string `json:"refreshToken"`; ExpiresIn int64 `json:"expiresIn"`; UserID int64 `json:"userId"` }
|
||||
type CreatePostRequest { Content string `json:"content"`; Media []string `json:"media"`; Location string `json:"location"`; Visibility int `json:"visibility"` }
|
||||
type SMSRequest { Phone string `json:"phone"`; Scene string `json:"scene"` }
|
||||
type ResetPasswordRequest { Phone string `json:"phone"`; Code string `json:"code"`; Password string `json:"password"` }
|
||||
type SendMessageRequest { ClientMsgID string `json:"clientMsgId"`; Type int `json:"type"`; Content map[string]string `json:"content"` }
|
||||
type AdminProfileRequest { Phone string `json:"phone"`; Nickname string `json:"nickname"`; Avatar string `json:"avatar"`; Cover string `json:"cover"`; Gender int `json:"gender"`; Birthday string `json:"birthday"`; Height int `json:"height"`; CityCode string `json:"cityCode"`; City string `json:"city"`; Occupation string `json:"occupation"`; Bio string `json:"bio"` }
|
||||
type VerificationRequest { Type string `json:"type"`; Status string `json:"status"`; RealName string `json:"realName"`; DocumentMask string `json:"documentMask"`; Remark string `json:"remark"` }
|
||||
type MembershipGrantRequest { Operation string `json:"operation"`; PlanID int64 `json:"planId"`; ExpiresAt string `json:"expiresAt"`; Reason string `json:"reason"` }
|
||||
type PasswordResetByAdminRequest { NewPassword string `json:"newPassword"` }
|
||||
type SanctionRequest { Type string `json:"type"`; Reason string `json:"reason"`; ExpiresAt string `json:"expiresAt"` }
|
||||
type MembershipPlanRequest { Code string `json:"code"`; Name string `json:"name"`; Level int `json:"level"`; DurationDays int `json:"durationDays"`; DailyActiveChatLimit int `json:"dailyActiveChatLimit"`; PriceCent int `json:"priceCent"`; OriginalPriceCent int `json:"originalPriceCent"`; Status int `json:"status"`; SortOrder int `json:"sortOrder"` }
|
||||
type AdminOrderUpdateRequest { ProductID int64 `json:"productId"`; AmountCent int `json:"amountCent"`; Channel string `json:"channel"`; Status string `json:"status"` }
|
||||
|
||||
@server (prefix: /api/v1)
|
||||
service social-api {
|
||||
@handler Login
|
||||
post /auth/login/password (LoginRequest) returns (LoginResponse)
|
||||
@handler SendSMS
|
||||
post /auth/sms/send (SMSRequest)
|
||||
@handler ResetPassword
|
||||
post /auth/password/reset (ResetPasswordRequest)
|
||||
@handler Me
|
||||
get /me
|
||||
@handler SearchUsers
|
||||
get /users/search
|
||||
@handler Following
|
||||
get /me/following
|
||||
@handler Followers
|
||||
get /me/followers
|
||||
@handler Visitors
|
||||
get /me/visitors
|
||||
@handler Privacy
|
||||
get /me/privacy
|
||||
@handler Discover
|
||||
get /discover/recommendations
|
||||
@handler Nearby
|
||||
get /nearby/users
|
||||
@handler Feed
|
||||
get /feed
|
||||
@handler CreatePost
|
||||
post /posts (CreatePostRequest)
|
||||
@handler PostDetail
|
||||
get /posts/:id
|
||||
@handler Comments
|
||||
get /posts/:id/comments
|
||||
@handler Conversations
|
||||
get /im/conversations
|
||||
@handler Messages
|
||||
get /im/conversations/:id/messages
|
||||
@handler SendMessage
|
||||
post /im/conversations/:id/messages (SendMessageRequest)
|
||||
@handler MembershipPlans
|
||||
get /membership/plans
|
||||
@handler PaymentChannels
|
||||
get /payment/channels
|
||||
@handler CreateOrder
|
||||
post /orders
|
||||
@handler PayOrder
|
||||
post /orders/:id/pay
|
||||
}
|
||||
|
||||
@server (prefix: /admin/v1)
|
||||
service social-admin-api {
|
||||
@handler AdminUsers
|
||||
get /users
|
||||
@handler AdminUserDetail
|
||||
get /users/:id
|
||||
@handler AdminUpdateProfile
|
||||
put /users/:id/profile (AdminProfileRequest)
|
||||
@handler AdminUpdateVerification
|
||||
put /users/:id/verification (VerificationRequest)
|
||||
@handler AdminUpdateMembership
|
||||
put /users/:id/membership (MembershipGrantRequest)
|
||||
@handler AdminResetPassword
|
||||
post /users/:id/password-reset (PasswordResetByAdminRequest)
|
||||
@handler AdminForceLogout
|
||||
post /users/:id/force-logout
|
||||
@handler AdminUserSanctions
|
||||
get /users/:id/sanctions
|
||||
@handler AdminCreateSanction
|
||||
post /users/:id/sanctions (SanctionRequest)
|
||||
@handler AdminRevokeSanction
|
||||
post /sanctions/:id/revoke
|
||||
@handler AdminOrders
|
||||
get /orders
|
||||
@handler AdminUpdateOrder
|
||||
put /orders/:id (AdminOrderUpdateRequest)
|
||||
@handler AdminDeleteOrder
|
||||
delete /orders/:id
|
||||
@handler AdminMarkOrderPaid
|
||||
post /orders/:id/pay
|
||||
@handler AdminCloseOrder
|
||||
post /orders/:id/close
|
||||
@handler AdminRefundOrder
|
||||
post /orders/:id/refund
|
||||
@handler AdminMembershipPlans
|
||||
get /membership/plans
|
||||
@handler AdminCreateMembershipPlan
|
||||
post /membership/plans (MembershipPlanRequest)
|
||||
@handler AdminUpdateMembershipPlan
|
||||
put /membership/plans/:id (MembershipPlanRequest)
|
||||
@handler AdminDeleteMembershipPlan
|
||||
delete /membership/plans/:id
|
||||
@handler AdminMessages
|
||||
get /messages
|
||||
}
|
||||
Reference in New Issue
Block a user