Documentation
WebsiteMineGitHubFaucet
  • Welcome to MakeOS
  • Introduction
    • Install
    • Quick Start
    • Set Up a Private Network
    • Get Test Coins
    • Track a Repository
    • What is MakeOS
    • How it Works
    • Tokenomics ($MAKE)
    • Dilithium (Deprecated)
    • Roadmap
    • Team
  • Concepts
    • Repository
      • Register a Repository
      • Initialize a New Repository
      • Repository Governance
      • Access Control Config
    • Namespace
    • Key
    • Issue Management
    • Merge Request
    • Transactions
      • Register a Repository
      • Send Coins
    • Validator
    • Host
    • Remote
  • JavaScript Console API
    • repo
    • pushkey
    • namespace
    • node
    • user
    • transaction
    • ticket
  • KIT CLI Reference
    • Overview
    • init
    • start
    • console
    • attach
    • key
      • create
      • gen
      • get
      • import
      • list
      • update
    • tx
      • get
    • repo
      • config
      • create
      • hook
      • init
      • vote
    • user
      • send
    • pk
      • register
    • sign
      • commit
      • note
      • tag
    • contributor
      • add
    • issue
      • close
      • create
      • list
      • read
      • reopen
      • status
    • mr
      • checkout
      • close
      • create
      • fetch
      • list
      • read
      • reopen
      • status
Powered by GitBook
On this page
  • register
  • Parameters
  • Returns
  • Example
  • updateDomain
  • Parameters
  • Returns
  • Example
  • lookup
  • Parameters
  • Returns
  • Example
  • getTarget
  • Parameters
  • Returns
  • Example

Was this helpful?

  1. JavaScript Console API

namespace

This module allows you to create and manage namespaces. It can be accessed from the global variable ns.

register

ns.register(txObject, [signingKey | payloadOnly | [signingKey, payloadOnly]])

Send a transaction to register a public key as a push key.

Parameters

  1. txObject - Object: The transaction object

    • name - String: The unique name

    • value - String: The namespace registration fee.

    • to - String: (optional) The user address or repository that will own and control the namespace.

    • domains - Object: The namespace domain and target pairs. The domain must contain only alphanumeric (plus underscore and hyphen) characters. The target must be a user address prefixed with a/ or a repository name prefixed with r/.

    • nonce - Number|String : The signing account’s next nonce.

    • fee - String: The network fee to be paid by the signing account.

    • timestamp - String: (optional) The unix timestamp of the transaction.

    • sig - String : (optional) The transaction signature. If not provided, the transaction will be signed using the signingKey.

  2. signingKey - String: (optional) The private key to use to sign the transaction.

  3. payloadOnly - Boolean: (optional) When true, the transaction payload is returned instead of being sent to the network.

Returns

Object - The result object

  • hash - String: A 32 bytes transaction hash.

Example

  • Create a transaction to register a namespace.

ns.register({ 
   value: "1", 
   fee: "1", 
   name: "myname", 
   domains: {
      "target": "r/repo", 
      "target2": "a/os1qfrysysaawvjlgfz5ecqv569adkkw7sxudy36u"
   },
}, user.getKey(accounts[0]))

updateDomain

ns.updateDomain(txObject, [signingKey | payloadOnly | [signingKey, payloadOnly]])

Send a transaction to register a public key as a push key.

Parameters

  1. txObject - Object: The transaction object

    • name - String: The unique name

    • domains - Object: The namespace domain and target pairs. Domain must contain only alphanumeric (plus underscore and hyphen) characters. Target must be a user address prefixed with a/ or a repository name prefixed with r/.

    • nonce - Number|String : The signing account’s next nonce.

    • fee - String: The network fee to be paid by the signing account.

    • timestamp - String: (optional) The unix timestamp of the transaction.

    • sig - String : (optional) The transaction signature. If not provided, the transaction will be signed using the signingKey.

  2. signingKey - String: (optional) The private key to use to sign the transaction.

  3. payloadOnly - Boolean: (optional) When true, the transaction payload is returned instead of being sent to the network.

Returns

Object - The result object

  • hash - String: A 32 bytes transaction hash.

Example

  • Create a transaction to update the domains of a namespace.

ns.updateDomain({ 
   value: "1", 
   fee: "1", 
   name: "ns-xyz", 
   domains: {
      "target": "r/repo"
   }
}, user.getKey(accounts[0]))

lookup

ns.lookup(name, [height])

Find a namespace by its name.

Parameters

  1. name - String: The name of the namespace.

  2. height - String|Number: (optional) The block height to query (Default: latest).

Returns

Object - The result object

  • name - String: The namespace name.

  • owner - String: The user address or repository that owns the namespace.

  • expiresAt - String: The block height when the namespace lease expires.

  • graceEndAt - String: The block height when grace period will end.

  • expired - Boolean: When true, it means the namespace has expired.

  • grace - Boolean: When true, it means that namespace has expired and in the grace period.

Example

  • Create a transaction to register a namespace.

ns.register({ 
   value: "1", 
   fee: "1", 
   name: "google", 
   domains: {
      "target": "r/repo", 
      "target2": "a/os1qfrysysaawvjlgfz5ecqv569adkkw7sxudy36u"
   }
}, user.getKey(accounts[0]))

getTarget

ns.getTarget(path, [height])

Find a namespace by its name.

Parameters

  1. path - String: The domain path namespace/domain

  2. height - String|Number: (optional) The block height to query (Default: latest).

Returns

String - The target value

Example

// sends a transaction to register a namespace
ns.getTarget("myname/target")
"r/repo"
PreviouspushkeyNextnode

Last updated 4 years ago

Was this helpful?