set_expiry

An entrypoint that setups an expiry for a specific user's transfer permit or default expiry for all user's transfer permits. It fully implements TZIP-017.

Call parameters

type seconds_t          is nat

type blake2b_hash_t     is bytes

type set_expiry_t       is [@layout:comb] record [
  issuer                  : address;
  expiry                  : seconds_t;
  permit_hash             : option(blake2b_hash_t);
]
FieldTypeDescription

issuer

address

An issuer of a permit

expiry

seconds_t (nat)

Expiry for a permit to setup

permit_hash

option(blake2b_hash_t)

Hash of a permit (optional)

Usage

const dexCoreAddress = "KT1...";
const dexCore = await tezos.contract.at(dexCoreAddress);
const hash = "...";
const params = {
    issuer: "tz1.../KT1...",
    expiry: 100, // in seconds
    permit_hash: hash, // or undefined, or null
};
const operation = await dexCore.methodsObject.set_expiry(params).send();

await operation.confirmation();

Errors

  • 412 - non payable entrypoint (can't accept TEZ tokens during call of an entrypoint).

  • NOT_PERMIT_ISSUER - a user is not an issuer of the permit.

  • EXPIRY_TOO_BIG - expiry from parameters is bigger than maximum available expiry (31 556 995 200 seconds or 1000 years).

Last updated