On-Chain IP

OnChainIPClient

The OnChainIPClient provides functionality for managing intellectual property (IP) assets. The OnChainIPClient simplifies the management of IP assets, making it easier to create, retrieve, and list them as needed.

Methods

  • registerNFT

  • registerDerivatives

registerNFT

Register an NFT as an Intellectual Property Asset

Method
Type

registerNFT

(request: IRegisterNFT) => Promise<{result, transactionResponse}>

  • Parameters:

Name
Type
Description

licensors

[address, address, address]

A list of up to three wallet address representing licensors for the IP collection. Pass zero address (0x0000000000000000000000000000) for empty address

tokenContract

address

The contract address of the NFT.

tokenId

number

The token id of the NFT

isMintAllowed

boolean

The value should be true if minting is allowed; otherwise, it should be false.

isUnlimitedSupply

boolean

This parameter is applicable only when isMintAllowed is set to true. Set the value to true if the total supply of the NFT is unlimited.

ipSupply

number

This parameter should contain a valid number greater than 0 if isUnlimitedSupply is set to false.

mintPrice

number

This parameter represents the price of the NFT when minting is allowed. It is only valid if isMintAllowed is set to true.

  • Returns:

Name
Type
Description

transactionResponse

Object

Contains details of the transaction, including the transactionHash, logs, and other relevant information.

result

Object

Object containing the contract address and IP id of the newly created collection.

  • response.transactionResponse.transactionHash - The transaction hash.

  • response.result.ipId - The IP id of the newly registered Ip Asset.

registerDerivatives

Register derivatives of an Ip Asset

Method
Type

registerDerivatives

(request: IRegisterDerivates) => Promise<registerDerivativeResponse>

  • Parameters:

Name
Type
Description

tokenContract

address

The contract address of the NFT.

tokenId

number

The token id of the NFT

parentIP

address

The identifier for the parent intellectual property (IP) in the request

isMintAllowed

boolean

The value should be true if minting is allowed; otherwise, it should be false.

isUnlimitedSupply

boolean

This parameter is applicable only when isMintAllowed is set to true. Set the value to true if the total supply of the NFT is unlimited.

ipSupply

number

This parameter should contain a valid number greater than 0 if isUnlimitedSupply is set to false.

mintPrice

number

This parameter represents the price of the NFT when minting is allowed. It is only valid if isMintAllowed is set to true.

  • Returns:

Name
Type
Description

transactionResponse

Object

Contains details of the transaction, including the transactionHash, logs, and other relevant information.

result

Object

Object containing the contract address and IP id of the newly created collection.

  • response.result.ipId - The IP ID of the newly registered IP Asset.

Last updated