6 "github.com/bytom/asset"
7 "github.com/bytom/crypto/ed25519/chainkd"
9 log "github.com/sirupsen/logrus"
13 func (a *API) createAsset(ctx context.Context, ins struct {
14 Alias string `json:"alias"`
15 RootXPubs []chainkd.XPub `json:"root_xpubs"`
16 Quorum int `json:"quorum"`
17 Definition map[string]interface{} `json:"definition"`
18 Tags map[string]interface{} `json:"tags"`
20 ass, err := a.wallet.AssetReg.Define(
28 return NewErrorResponse(err)
31 annotatedAsset, err := asset.Annotated(ass)
33 return NewErrorResponse(err)
36 log.WithField("asset ID", annotatedAsset.ID.String()).Info("Created asset")
38 return NewSuccessResponse(annotatedAsset)
41 // POST /update-asset-tags
42 func (a *API) updateAssetTags(ctx context.Context, updateTag struct {
43 AssetInfo string `json:"asset_info"`
44 Tags map[string]interface{} `json:"tags"`
46 err := a.wallet.AssetReg.UpdateTags(nil, updateTag.AssetInfo, updateTag.Tags)
48 return NewErrorResponse(err)
51 return NewSuccessResponse(nil)
54 // POST /update-asset-alias
55 func (a *API) updateAssetAlias(updateAlias struct {
56 OldAlias string `json:"old_alias"`
57 NewAlias string `json:"new_alias"`
59 if err := a.wallet.AssetReg.UpdateAssetAlias(updateAlias.OldAlias, updateAlias.NewAlias); err != nil {
60 return NewErrorResponse(err)
63 return NewSuccessResponse(nil)