Adding Resolvers (delegated)

This provides an approach to adding a resolver for an EIN leveraging meta-transactions.

Adding Resolvers on Behalf of an Identity

Delegated addition of resolvers follows the same pattern and provides the same functionality as Adding Resolvers, but accepts a signature to allow for meta-transactions. Call the addResolverFor function with the following:

ARGUMENTS

Parameter

Type

Description

approvingAddress

address

Associated Address signing the necessary message in the function call.

resolver

address

Ethereum Address of the Resolver to be set in the function call.

isSnowflake

bool

Boolean indicating whether the Resolver calls onSignup functions through Snowflake.

withDrawalAllowance

uint

An array of uints corresponding with user-set allowances for each Resolver being added. See Allowances section for more detail.

extraData

bytes

Arbitrary data to trigger function calls when the Resolver is set for an EIN.

r, s, v signature

bytes32, bytes32, uint8

Signed message as required in the format below

See [Adding Resolvers](adding-resolvers) for an example of when to use the extraData argument.

Signatures should follow the example format:

keccak256(
abi.encodePacked(
byte(0x19), byte(0), address(this),
"I authorize that this resolver be added to my Identity.",
ein, resolver, isSnowflake, withdrawAllowance, extraData, timestamp
)
)