Dispute
DisputeClient allows you to manage disputes within Story.
DisputeClient
Methods
- raiseDispute
- cancelDispute
- resolveDispute
- tagIfRelatedIpInfringed
- disputeAssertion
- disputeIdToAssertionId
raiseDispute
Raises a dispute on a given ipId
Method | Type |
---|---|
raiseDispute | (request: RaiseDisputeRequest) => Promise<RaiseDisputeResponse> |
Parameters:
request.targetIpId
: The IP ID that is the target of the dispute.request.targetTag
: The target tag of the dispute. See dispute tags. Example: “IMPROPER_REGISTRATION”request.cid
: Content Identifier (CID) for the dispute evidence. This should be obtained by uploading your dispute evidence (documents, images, etc.) to IPFS. Example: “QmX4zdp8VpzqvtKuEqMo6gfZPdoUx9TeHXCgzKLcFfSUbk”request.liveness
: The liveness is the time window (in seconds) in which a counter dispute can be presented (30days).request.bond
: [Optional] If not specified, it defaults to the minimum bond value. The amount of wrapper IP that the dispute initiator pays upfront into a pool. To counter that dispute the opposite party of the dispute has to place a bond of the same amount. The winner of the dispute gets the original bond back + 50% of the other party bond. The remaining 50% of the loser party bond goes to the reviewer.request.wipOptions
: [Optional]request.wipOptions.enableAutoWrapIp
: [Optional]By default IP is converted to WIP if the current WIP balance does not cover the fees. Set this tofalse
to disable this behavior. Default: truerequest.wipOptions.enableAutoApprove
: [Optional]Automatically approve WIP usage when WIP is needed but current allowance is not sufficient. Set this tofalse
to disable this behavior. Default: true
request.txOptions
: [Optional] The transaction options.
cancelDispute
Cancels an ongoing dispute
Method | Type |
---|---|
cancelDispute | (request: CancelDisputeRequest) => Promise<CancelDisputeResponse> |
Parameters:
request.disputeId
: The ID of the dispute to be cancelled.request.data
: [Optional] Additional data used in the cancellation process. Defaults to “0x”.request.txOptions
: [Optional] The transaction options.
resolveDispute
Resolves a dispute after it has been judged
Method | Type |
---|---|
resolveDispute | (request: ResolveDisputeRequest) => Promise<ResolveDisputeResponse> |
Parameters:
request.disputeId
: The ID of the dispute to be resolved.request.data
: [Optional] The data to resolve the dispute. Defaults to “0x”.request.txOptions
: [Optional] The transaction options.
tagIfRelatedIpInfringed
Tags a derivative if a parent has been tagged with an infringement tag or a group ip if a group member has been tagged with an infringement tag.
Method | Type |
---|---|
tagIfRelatedIpInfringed | (request: TagIfRelatedIpInfringedRequest) => Promise<TransactionResponse[]> |
Parameters:
request.infringementTags[]
: An array of tags relating to the disputerequest.infringementTags[].ipId
: TheipId
to tagrequest.infringementTags[].disputeId
: The dispute id that tagged the related infringing parent IP
request.options
: [Optional]request.options.useMulticallWhenPossible
: [Optional] Use multicall to batch the calls into one transaction when possible. If only 1 infringementTag is provided, multicall will not be used. Default: true
request.txOptions
: [Optional] The transaction options.
disputeAssertion
Counters a dispute that was raised by another party on an IP using counter evidence.
This method can only be called by the IP’s owner to counter a dispute by providing counter evidence. The counter evidence (e.g., documents, images) should be uploaded to IPFS, and its corresponding CID is converted to a hash for the request.
If you only have a disputeId
, call disputeIdToAssertionId
to get the assertionId
needed here.
Method | Type |
---|---|
disputeAssertion | (request: DisputeAssertionRequest) => Promise<TransactionResponse> |
Parameters:
request.ipId
: The IP ID that is the target of the dispute.request.assertionId
: The identifier of the assertion that was disputed. You can get this from thedisputeId
by callingdispute.disputeIdToAssertionId
.request.counterEvidenceCID
: Content Identifier (CID) for the counter evidence. This should be obtained by uploading your dispute evidence (documents, images, etc.) to IPFS. Example: “QmX4zdp8VpzqvtKuEqMo6gfZPdoUx9TeHXCgzKLcFfSUbk”request.wipOptions
: [Optional]request.wipOptions.enableAutoWrapIp
: [Optional]By default IP is converted to WIP if the current WIP balance does not cover the fees. Set this tofalse
to disable this behavior. Default: truerequest.wipOptions.enableAutoApprove
: [Optional]Automatically approve WIP usage when WIP is needed but current allowance is not sufficient. Set this tofalse
to disable this behavior. Default: true
request.txOptions
: [Optional] The transaction options.
disputeIdToAssertionId
Maps a dispute id to an assertion id
Method | Type |
---|---|
disputeIdToAssertionId | (disputeId: number) => Promise<Hex> |
Parameters:
request.disputeId
: The dispute ID.