Skip to main content
Version: Next

Interface: ProtocolReturnedMethod

Method information returned from the Protocol. This interface is exactly the same as the Method, except all the fields are snake cased instead of camel cased due to what the Protocol returns.

Properties​

account_id_field​

Optional account_id_field: string

Specifies what field Keypom should auto-inject the account that claimed the drop's ID into when calling the function. As an example, if the methodName was nft_mint and it expected a field receiver_id to be passed in, indicating who should receive the token, then the accountIdField would be receiver_id. To insert into nested objects, use periods to separate. For example, to insert into args.metadata.field, you would specify "metadata.field"

Defined in​

lib/types/protocol.ts:260


args​

args: string

What arguments should be passed to the method. This should be in stringified JSON.

Defined in​

lib/types/protocol.ts:245


attached_deposit​

attached_deposit: string

How much yoctoNEAR should be attached to the call.

Defined in​

lib/types/protocol.ts:249


attached_gas​

Optional attached_gas: string

How much gas to attach to this method call. If none, all the gas is split between the parallel method calls in a given claim. If this is specified, the key can ONLY be used to call claim and no deposit_per_use can be specified. This leads the key to act like a method calling proxy instead of a linkdrop.

Defined in​

lib/types/protocol.ts:254


drop_id_field​

Optional drop_id_field: string

Specifies what field Keypom should auto-inject the drops ID into when calling the function. As an example, if an NFT contract expected the Keypom drop ID to be passed in as the field keypom_drop_id in order to gate access to who can mint NFTs, then the dropIdField would be keypom_drop_id. To insert into nested objects, use periods to separate. For example, to insert into args.metadata.field, you would specify "metadata.field"

Defined in​

lib/types/protocol.ts:266


funder_id_field​

Optional funder_id_field: string

Specifies what field Keypom should auto-inject the funder's account ID into when calling the function. As an example, if an NFT contract wanted to gate only users with an odd key ID to be able to mint an NFT and their parameter was called keypom_key_id, then the keyIdField would be keypom_key_id. To insert into nested objects, use periods to separate. For example, to insert into args.metadata.field, you would specify "metadata.field"

Defined in​

lib/types/protocol.ts:278


key_id_field​

Optional key_id_field: string

Specifies what field Keypom should auto-inject the key's ID into when calling the function. As an example, if an NFT contract wanted to gate only users with an odd key ID to be able to mint an NFT and their parameter was called keypom_key_id, then the keyIdField would be keypom_key_id. To insert into nested objects, use periods to separate. For example, to insert into args.metadata.field, you would specify "metadata.field"

Defined in​

lib/types/protocol.ts:272


method_name​

method_name: string

The method that should be invoked on the receiverId's contract.

Defined in​

lib/types/protocol.ts:241


receiver_id​

receiver_id: string

The account ID that the contract is deployed to that the method will be called on.

Defined in​

lib/types/protocol.ts:237


receiver_to_claimer​

Optional receiver_to_claimer: boolean

If set to true, the claiming account ID will be the receiver ID of the method call. This receiver must be a valid account and non-malicious (cannot be set to the keypom contract)

Defined in​

lib/types/protocol.ts:283


user_args_rule​

Optional user_args_rule: "AllUser" | "FunderPreferred" | "UserPreferred"

What permissions does the user have when providing custom arguments to the function call? By default, the user cannot provide any custom arguments

Defined in​

lib/types/protocol.ts:288