Documentation
¶
Overview ¶
sequence-api v0.4.0 3c1782dee5a602d773450bdb42c84515771d30d1 -- Code generated by webrpc-gen@v0.18.6 with golang generator. DO NOT EDIT.
webrpc-gen -schema=api.ridl -target=golang -pkg=api -client -out=./clients/api.gen.go
Index ¶
- Constants
- Variables
- func HTTPRequestHeaders(ctx context.Context) (http.Header, bool)
- func MethodNameFromContext(ctx context.Context) string
- func RequestFromContext(ctx context.Context) *http.Request
- func ServiceNameFromContext(ctx context.Context) string
- func WebRPCSchemaHash() string
- func WebRPCSchemaVersion() string
- func WebRPCVersion() string
- func WithHTTPRequestHeaders(ctx context.Context, h http.Header) (context.Context, error)
- type API
- type APIClient
- type ContractCall
- type ExchangeRate
- type Friend
- type HTTPClient
- type InviteCode
- type InviteCodeAccount
- type InviteInfo
- type LinkedWallet
- type NftCheckout
- type NftCheckoutParams
- type NumTxnsRelayed
- type Options
- type Page
- type Price
- type RuntimeChecks
- type RuntimeStatus
- type SardineOrder
- type SequenceContext
- type SortBy
- type SortOrder
- type Token
- type TokenPrice
- type Transaction
- type TupleComponent
- type User
- type UserStorage
- type Version
- type WalletBackup
- type WebRPCError
Constants ¶
View Source
const APIPathPrefix = "/rpc/API/"
Variables ¶
View Source
var ( HTTPClientRequestHeadersCtxKey = &contextKey{"HTTPClientRequestHeaders"} HTTPRequestCtxKey = &contextKey{"HTTPRequest"} ServiceNameCtxKey = &contextKey{"ServiceName"} MethodNameCtxKey = &contextKey{"MethodName"} )
View Source
var ( ErrWebrpcEndpoint = WebRPCError{Code: 0, Name: "WebrpcEndpoint", Message: "endpoint error", HTTPStatus: 400} ErrWebrpcRequestFailed = WebRPCError{Code: -1, Name: "WebrpcRequestFailed", Message: "request failed", HTTPStatus: 400} ErrWebrpcBadRoute = WebRPCError{Code: -2, Name: "WebrpcBadRoute", Message: "bad route", HTTPStatus: 404} ErrWebrpcBadMethod = WebRPCError{Code: -3, Name: "WebrpcBadMethod", Message: "bad method", HTTPStatus: 405} ErrWebrpcBadRequest = WebRPCError{Code: -4, Name: "WebrpcBadRequest", Message: "bad request", HTTPStatus: 400} ErrWebrpcBadResponse = WebRPCError{Code: -5, Name: "WebrpcBadResponse", Message: "bad response", HTTPStatus: 500} ErrWebrpcServerPanic = WebRPCError{Code: -6, Name: "WebrpcServerPanic", Message: "server panic", HTTPStatus: 500} ErrWebrpcInternalError = WebRPCError{Code: -7, Name: "WebrpcInternalError", Message: "internal error", HTTPStatus: 500} ErrWebrpcClientDisconnected = WebRPCError{Code: -8, Name: "WebrpcClientDisconnected", Message: "client disconnected", HTTPStatus: 400} ErrWebrpcStreamLost = WebRPCError{Code: -9, Name: "WebrpcStreamLost", Message: "stream lost", HTTPStatus: 400} ErrWebrpcStreamFinished = WebRPCError{Code: -10, Name: "WebrpcStreamFinished", Message: "stream finished", HTTPStatus: 200} )
Webrpc errors
View Source
var ( ErrPermissionDenied = WebRPCError{Code: 1001, Name: "PermissionDenied", Message: "Permission denied", HTTPStatus: 403} ErrSessionExpired = WebRPCError{Code: 1002, Name: "SessionExpired", Message: "Session expired", HTTPStatus: 403} ErrAborted = WebRPCError{Code: 1005, Name: "Aborted", Message: "Request aborted", HTTPStatus: 400} ErrInvalidArgument = WebRPCError{Code: 2000, Name: "InvalidArgument", Message: "Invalid argument", HTTPStatus: 400} ErrQueryFailed = WebRPCError{Code: 2003, Name: "QueryFailed", Message: "Query failed", HTTPStatus: 400} ErrNotFound = WebRPCError{Code: 3000, Name: "NotFound", Message: "Resource not found", HTTPStatus: 400} )
Schema errors
View Source
var SortOrder_name = map[uint32]string{
0: "DESC",
1: "ASC",
}
View Source
var SortOrder_value = map[string]uint32{
"DESC": 0,
"ASC": 1,
}
View Source
var WebRPCServices = map[string][]string{
"API": {
"Ping",
"Version",
"RuntimeStatus",
"Clock",
"GetSequenceContext",
"GetAuthToken",
"GetAuthToken2",
"SendPasswordlessLink",
"FriendList",
"GetFriendByAddress",
"SearchFriends",
"AddFriend",
"UpdateFriendNickname",
"RemoveFriend",
"ContractCall",
"DecodeContractCall",
"LookupContractCallSelectors",
"UserStorageFetch",
"UserStorageSave",
"UserStorageDelete",
"UserStorageFetchAll",
"GetMoonpayLink",
"GetSardineClientToken",
"GetSardineNFTCheckoutToken",
"GetSardineNFTCheckoutOrderStatus",
"ResolveENSAddress",
"IsValidSignature",
"IsValidMessageSignature",
"IsValidTypedDataSignature",
"IsValidETHAuthProof",
"GetCoinPrices",
"GetCollectiblePrices",
"GetExchangeRate",
"MemoryStore",
"MemoryLoad",
"GetInviteInfo",
"IsValidAccessCode",
"InternalClaimAccessCode",
"BlockNumberAtTime",
"PaperSessionSecret",
"PaperSessionSecret2",
"LinkWallet",
"GetLinkedWallets",
},
}
Functions ¶
func MethodNameFromContext ¶ added in v0.31.0
func RequestFromContext ¶ added in v0.31.0
func ServiceNameFromContext ¶ added in v0.31.0
Types ¶
type API ¶
type API interface {
//
// Runtime
//
Ping(ctx context.Context) (bool, error)
Version(ctx context.Context) (*Version, error)
RuntimeStatus(ctx context.Context) (*RuntimeStatus, error)
Clock(ctx context.Context) (time.Time, error)
GetSequenceContext(ctx context.Context) (*SequenceContext, error)
//
// Auth
//
// TODO: rename 'ewtString' arg to 'ethauthProof'
GetAuthToken(ctx context.Context, ewtString string, testnetMode *bool) (bool, string, string, *User, error)
GetAuthToken2(ctx context.Context, ewtString string, chainID string) (bool, string, string, *User, error)
SendPasswordlessLink(ctx context.Context, email string, redirectUri string, intent string) (bool, error)
//
// Contacts / Friends
//
FriendList(ctx context.Context, nickname *string, page *Page) (*Page, []*Friend, error)
GetFriendByAddress(ctx context.Context, friendAddress string) (bool, *Friend, error)
SearchFriends(ctx context.Context, filterUsername string, page *Page) ([]*Friend, error)
AddFriend(ctx context.Context, friendAddress string, optionalNickname *string) (bool, *Friend, error)
UpdateFriendNickname(ctx context.Context, friendAddress string, nickname string) (bool, *Friend, error)
RemoveFriend(ctx context.Context, friendAddress string) (bool, error)
//
// Chain-Utils
//
ContractCall(ctx context.Context, chainID string, contract string, inputExpr string, outputExpr string, args []string) ([]string, error)
DecodeContractCall(ctx context.Context, callData string) (*ContractCall, error)
LookupContractCallSelectors(ctx context.Context, selectors []string) ([][]string, error)
//
// User Storage
//
UserStorageFetch(ctx context.Context, key string) (interface{}, error)
UserStorageSave(ctx context.Context, key string, object interface{}) (bool, error)
UserStorageDelete(ctx context.Context, key string) (bool, error)
UserStorageFetchAll(ctx context.Context, keys []string) (map[string]interface{}, error)
//
// Wallet utils
//
GetMoonpayLink(ctx context.Context, url string) (string, error)
GetSardineClientToken(ctx context.Context) (string, error)
GetSardineNFTCheckoutToken(ctx context.Context, params *NftCheckoutParams) (*NftCheckout, error)
GetSardineNFTCheckoutOrderStatus(ctx context.Context, orderId string) (*SardineOrder, error)
// - IsUsingGoogleMail(domain: string) => (yes: bool)
ResolveENSAddress(ctx context.Context, ens string) (string, bool, error)
// TODO: we can add walletContext optional in the future when we need it
// NOTE: chainId can be either a number or canonical name
IsValidSignature(ctx context.Context, chainId string, walletAddress string, digest string, signature string) (bool, error)
IsValidMessageSignature(ctx context.Context, chainId string, walletAddress string, message string, signature string) (bool, error)
IsValidTypedDataSignature(ctx context.Context, chainId string, walletAddress string, typedData interface{}, signature string) (bool, error)
IsValidETHAuthProof(ctx context.Context, chainId string, walletAddress string, ethAuthProofString string) (bool, error)
//
// Price Feed
//
GetCoinPrices(ctx context.Context, tokens []*Token) ([]*TokenPrice, error)
GetCollectiblePrices(ctx context.Context, tokens []*Token) ([]*TokenPrice, error)
//
// Price Feed utils
//
GetExchangeRate(ctx context.Context, toCurrency string) (*ExchangeRate, error)
//
// Util / misc
//
MemoryStore(ctx context.Context, key string, value string) (bool, error)
MemoryLoad(ctx context.Context, key string) (string, error)
//
// Legacy
//
GetInviteInfo(ctx context.Context) (*InviteInfo, error)
// NOTE: we're still using this from SW-API to Sequence-API to claim invite code
IsValidAccessCode(ctx context.Context, accessCode string) (bool, error)
InternalClaimAccessCode(ctx context.Context, address string, accessCode string) (bool, error)
// Utils
BlockNumberAtTime(ctx context.Context, chainId uint64, timestamps []uint64) ([]uint64, error)
//
// Paper
// TODO: deprecate in the future
//
PaperSessionSecret(ctx context.Context, chainName string, contractAddress string, paramsJson string, contractType string) (string, error)
PaperSessionSecret2(ctx context.Context, chainName string, contractAddress string, paramsJson string, abi string) (string, error)
//
// Linked wallets (v0 -- simple support)
//
LinkWallet(ctx context.Context, chainId string, walletAddress string, ethAuthProofString string, linkedWalletMessage string, linkedWalletSignature string) (bool, string, error)
GetLinkedWallets(ctx context.Context, walletAddress string) ([]string, error)
}
type APIClient ¶ added in v0.31.0
type APIClient interface {
//
// Runtime
//
Ping(ctx context.Context) (bool, error)
Version(ctx context.Context) (*Version, error)
RuntimeStatus(ctx context.Context) (*RuntimeStatus, error)
Clock(ctx context.Context) (time.Time, error)
GetSequenceContext(ctx context.Context) (*SequenceContext, error)
//
// Auth
//
// TODO: rename 'ewtString' arg to 'ethauthProof'
GetAuthToken(ctx context.Context, ewtString string, testnetMode *bool) (bool, string, string, *User, error)
GetAuthToken2(ctx context.Context, ewtString string, chainID string) (bool, string, string, *User, error)
SendPasswordlessLink(ctx context.Context, email string, redirectUri string, intent string) (bool, error)
//
// Contacts / Friends
//
FriendList(ctx context.Context, nickname *string, page *Page) (*Page, []*Friend, error)
GetFriendByAddress(ctx context.Context, friendAddress string) (bool, *Friend, error)
SearchFriends(ctx context.Context, filterUsername string, page *Page) ([]*Friend, error)
AddFriend(ctx context.Context, friendAddress string, optionalNickname *string) (bool, *Friend, error)
UpdateFriendNickname(ctx context.Context, friendAddress string, nickname string) (bool, *Friend, error)
RemoveFriend(ctx context.Context, friendAddress string) (bool, error)
//
// Chain-Utils
//
ContractCall(ctx context.Context, chainID string, contract string, inputExpr string, outputExpr string, args []string) ([]string, error)
DecodeContractCall(ctx context.Context, callData string) (*ContractCall, error)
LookupContractCallSelectors(ctx context.Context, selectors []string) ([][]string, error)
//
// User Storage
//
UserStorageFetch(ctx context.Context, key string) (interface{}, error)
UserStorageSave(ctx context.Context, key string, object interface{}) (bool, error)
UserStorageDelete(ctx context.Context, key string) (bool, error)
UserStorageFetchAll(ctx context.Context, keys []string) (map[string]interface{}, error)
//
// Wallet utils
//
GetMoonpayLink(ctx context.Context, url string) (string, error)
GetSardineClientToken(ctx context.Context) (string, error)
GetSardineNFTCheckoutToken(ctx context.Context, params *NftCheckoutParams) (*NftCheckout, error)
GetSardineNFTCheckoutOrderStatus(ctx context.Context, orderId string) (*SardineOrder, error)
// - IsUsingGoogleMail(domain: string) => (yes: bool)
ResolveENSAddress(ctx context.Context, ens string) (string, bool, error)
// TODO: we can add walletContext optional in the future when we need it
// NOTE: chainId can be either a number or canonical name
IsValidSignature(ctx context.Context, chainId string, walletAddress string, digest string, signature string) (bool, error)
IsValidMessageSignature(ctx context.Context, chainId string, walletAddress string, message string, signature string) (bool, error)
IsValidTypedDataSignature(ctx context.Context, chainId string, walletAddress string, typedData interface{}, signature string) (bool, error)
IsValidETHAuthProof(ctx context.Context, chainId string, walletAddress string, ethAuthProofString string) (bool, error)
//
// Price Feed
//
GetCoinPrices(ctx context.Context, tokens []*Token) ([]*TokenPrice, error)
GetCollectiblePrices(ctx context.Context, tokens []*Token) ([]*TokenPrice, error)
//
// Price Feed utils
//
GetExchangeRate(ctx context.Context, toCurrency string) (*ExchangeRate, error)
//
// Util / misc
//
MemoryStore(ctx context.Context, key string, value string) (bool, error)
MemoryLoad(ctx context.Context, key string) (string, error)
//
// Legacy
//
GetInviteInfo(ctx