pub enum MetadataError {
Show 177 variants InstructionUnpackError, InstructionPackError, NotRentExempt, AlreadyInitialized, Uninitialized, InvalidMetadataKey, InvalidEditionKey, UpdateAuthorityIncorrect, UpdateAuthorityIsNotSigner, NotMintAuthority, InvalidMintAuthority, NameTooLong, SymbolTooLong, UriTooLong, UpdateAuthorityMustBeEqualToMetadataAuthorityAndSigner, MintMismatch, EditionsMustHaveExactlyOneToken, MaxEditionsMintedAlready, TokenMintToFailed, MasterRecordMismatch, DestinationMintMismatch, EditionAlreadyMinted, PrintingMintDecimalsShouldBeZero, OneTimePrintingAuthorizationMintDecimalsShouldBeZero, EditionMintDecimalsShouldBeZero, TokenBurnFailed, TokenAccountOneTimeAuthMintMismatch, DerivedKeyInvalid, PrintingMintMismatch, OneTimePrintingAuthMintMismatch, TokenAccountMintMismatch, TokenAccountMintMismatchV2, NotEnoughTokens, PrintingMintAuthorizationAccountMismatch, AuthorizationTokenAccountOwnerMismatch, Disabled, CreatorsTooLong, CreatorsMustBeAtleastOne, MustBeOneOfCreators, NoCreatorsPresentOnMetadata, CreatorNotFound, InvalidBasisPoints, PrimarySaleCanOnlyBeFlippedToTrue, OwnerMismatch, NoBalanceInAccountForAuthorization, ShareTotalMustBe100, ReservationExists, ReservationDoesNotExist, ReservationNotSet, ReservationAlreadyMade, BeyondMaxAddressSize, NumericalOverflowError, ReservationBreachesMaximumSupply, AddressNotInReservation, CannotVerifyAnotherCreator, CannotUnverifyAnotherCreator, SpotMismatch, IncorrectOwner, PrintingWouldBreachMaximumSupply, DataIsImmutable, DuplicateCreatorAddress, ReservationSpotsRemainingShouldMatchTotalSpotsAtStart, InvalidTokenProgram, DataTypeMismatch, BeyondAlottedAddressSize, ReservationNotComplete, TriedToReplaceAnExistingReservation, InvalidOperation, InvalidOwner, PrintingMintSupplyMustBeZeroForConversion, OneTimeAuthMintSupplyMustBeZeroForConversion, InvalidEditionIndex, ReservationArrayShouldBeSizeOne, IsMutableCanOnlyBeFlippedToFalse, CollectionCannotBeVerifiedInThisInstruction, Removed, MustBeBurned, InvalidUseMethod, CannotChangeUseMethodAfterFirstUse, CannotChangeUsesAfterFirstUse, CollectionNotFound, InvalidCollectionUpdateAuthority, CollectionMustBeAUniqueMasterEdition, UseAuthorityRecordAlreadyExists, UseAuthorityRecordAlreadyRevoked, Unusable, NotEnoughUses, CollectionAuthorityRecordAlreadyExists, CollectionAuthorityDoesNotExist, InvalidUseAuthorityRecord, InvalidCollectionAuthorityRecord, InvalidFreezeAuthority, InvalidDelegate, CannotAdjustVerifiedCreator, CannotRemoveVerifiedCreator, CannotWipeVerifiedCreators, NotAllowedToChangeSellerFeeBasisPoints, EditionOverrideCannotBeZero, InvalidUser, RevokeCollectionAuthoritySignerIncorrect, TokenCloseFailed, UnsizedCollection, SizedCollection, MissingCollectionMetadata, NotAMemberOfCollection, NotVerifiedMemberOfCollection, NotACollectionParent, CouldNotDetermineTokenStandard, MissingEditionAccount, NotAMasterEdition, MasterEditionHasPrints, BorshDeserializationError, CannotUpdateVerifiedCollection, CollectionMasterEditionAccountInvalid, AlreadyVerified, AlreadyUnverified, NotAPrintEdition, InvalidMasterEdition, InvalidPrintEdition, InvalidEditionMarker, ReservationListDeprecated, PrintEditionDoesNotMatchMasterEdition, EditionNumberGreaterThanMaxSupply, MustUnverify, InvalidEscrowBumpSeed, MustBeEscrowAuthority, InvalidSystemProgram, MustBeNonFungible, InsufficientTokens, BorshSerializationError, NoFreezeAuthoritySet, InvalidCollectionSizeChange, InvalidBubblegumSigner, EscrowParentHasDelegate, MintIsNotSigner, InvalidTokenStandard, InvalidMintForTokenStandard, InvalidAuthorizationRules, MissingAuthorizationRules, MissingProgrammableConfig, InvalidProgrammableConfig, DelegateAlreadyExists, DelegateNotFound, MissingAccountInBuilder, MissingArgumentInBuilder, FeatureNotSupported, InvalidSystemWallet, OnlySaleDelegateCanTransfer, MissingTokenAccount, MissingSplTokenProgram, MissingAuthorizationRulesProgram, InvalidDelegateRoleForTransfer, InvalidTransferAuthority, InstructionNotSupported, KeyMismatch, LockedToken, UnlockedToken, MissingDelegateRole, InvalidAuthorityType, MissingTokenRecord, MintSupplyMustBeZero, DataIsEmptyOrZeroed, MissingTokenOwnerAccount, InvalidMasterEditionAccountLength, IncorrectTokenState, InvalidDelegateRole, MissingPrintSupply, MissingMasterEditionAccount, AmountMustBeGreaterThanZero, InvalidDelegateArgs, MissingLockedTransferAddress, InvalidLockedTransferAddress, DataIncrementLimitExceeded, CannotUpdateAssetWithDelegate, InvalidAssociatedTokenAccountProgram, InvalidInstructionsSysvar, InvalidUpdateArgs,
}
Expand description

Errors that may be returned by the Metadata program.

Variants§

§

InstructionUnpackError

0 Failed to unpack instruction data

§

InstructionPackError

Failed to pack instruction data

§

NotRentExempt

Lamport balance below rent-exempt threshold.

§

AlreadyInitialized

Already initialized

§

Uninitialized

Uninitialized

§

InvalidMetadataKey

Metadata’s key must match seed of [‘metadata’, program id, mint] provided

§

InvalidEditionKey

Edition’s key must match seed of [‘metadata’, program id, name, ‘edition’] provided

§

UpdateAuthorityIncorrect

Update Authority given does not match

§

UpdateAuthorityIsNotSigner

Update Authority needs to be signer to update metadata

§

NotMintAuthority

You must be the mint authority and signer on this transaction

§

InvalidMintAuthority

10 - Mint authority provided does not match the authority on the mint

§

NameTooLong

Name too long

§

SymbolTooLong

Symbol too long

§

UriTooLong

URI too long

§

UpdateAuthorityMustBeEqualToMetadataAuthorityAndSigner

Update authority must be equivalent to the metadata’s authority and also signer of this transaction

§

MintMismatch

Mint given does not match mint on Metadata

§

EditionsMustHaveExactlyOneToken

Editions must have exactly one token

§

MaxEditionsMintedAlready

Maximum editions printed already

§

TokenMintToFailed

Token mint to failed

§

MasterRecordMismatch

The master edition record passed must match the master record on the edition given

§

DestinationMintMismatch

20 - The destination account does not have the right mint

§

EditionAlreadyMinted

An edition can only mint one of its kind!

§

PrintingMintDecimalsShouldBeZero

Printing mint decimals should be zero

§

OneTimePrintingAuthorizationMintDecimalsShouldBeZero

OneTimePrintingAuthorizationMint mint decimals should be zero

§

EditionMintDecimalsShouldBeZero

Edition mint decimals should be zero

§

TokenBurnFailed

Token burn failed

§

TokenAccountOneTimeAuthMintMismatch

The One Time authorization mint does not match that on the token account!

§

DerivedKeyInvalid

Derived key invalid

§

PrintingMintMismatch

The Printing mint does not match that on the master edition!

§

OneTimePrintingAuthMintMismatch

The One Time Printing Auth mint does not match that on the master edition!

§

TokenAccountMintMismatch

30 - The mint of the token account does not match the Printing mint!

§

TokenAccountMintMismatchV2

The mint of the token account does not match the master metadata mint!

§

NotEnoughTokens

Not enough tokens to mint a limited edition

§

PrintingMintAuthorizationAccountMismatch

The mint on your authorization token holding account does not match your Printing mint!

§

AuthorizationTokenAccountOwnerMismatch

The authorization token account has a different owner than the update authority for the master edition!

§

Disabled

This feature is currently disabled.

§

CreatorsTooLong

Creators list too long

§

CreatorsMustBeAtleastOne

Creators must be at least one if set

§

MustBeOneOfCreators

If using a creators array, you must be one of the creators listed

§

NoCreatorsPresentOnMetadata

This metadata does not have creators

§

CreatorNotFound

40 - This creator address was not found

§

InvalidBasisPoints

Basis points cannot be more than 10000

§

PrimarySaleCanOnlyBeFlippedToTrue

Primary sale can only be flipped to true and is immutable

§

OwnerMismatch

Owner does not match that on the account given

§

NoBalanceInAccountForAuthorization

This account has no tokens to be used for authorization

§

ShareTotalMustBe100

Share total must equal 100 for creator array

§

ReservationExists

This reservation list already exists!

§

ReservationDoesNotExist

This reservation list does not exist!

§

ReservationNotSet

This reservation list exists but was never set with reservations

§

ReservationAlreadyMade

This reservation list has already been set!

§

BeyondMaxAddressSize

50 - Provided more addresses than max allowed in single reservation

§

NumericalOverflowError

NumericalOverflowError

§

ReservationBreachesMaximumSupply

This reservation would go beyond the maximum supply of the master edition!

§

AddressNotInReservation

Address not in reservation!

§

CannotVerifyAnotherCreator

You cannot unilaterally verify another creator, they must sign

§

CannotUnverifyAnotherCreator

You cannot unilaterally unverify another creator

§

SpotMismatch

In initial reservation setting, spots remaining should equal total spots

§

IncorrectOwner

Incorrect account owner

§

PrintingWouldBreachMaximumSupply

printing these tokens would breach the maximum supply limit of the master edition

§

DataIsImmutable

Data is immutable

§

DuplicateCreatorAddress

60 - No duplicate creator addresses

§

ReservationSpotsRemainingShouldMatchTotalSpotsAtStart

Reservation spots remaining should match total spots when first being created

§

InvalidTokenProgram

Invalid token program

§

DataTypeMismatch

Data type mismatch

§

BeyondAlottedAddressSize

Beyond alotted address size in reservation!

§

ReservationNotComplete

The reservation has only been partially alotted

§

TriedToReplaceAnExistingReservation

You cannot splice over an existing reservation!

§

InvalidOperation

Invalid operation

§

InvalidOwner

Invalid owner

§

PrintingMintSupplyMustBeZeroForConversion

Printing mint supply must be zero for conversion

§

OneTimeAuthMintSupplyMustBeZeroForConversion

70 - One Time Auth mint supply must be zero for conversion

§

InvalidEditionIndex

You tried to insert one edition too many into an edition mark pda

§

ReservationArrayShouldBeSizeOne

§

IsMutableCanOnlyBeFlippedToFalse

Is Mutable can only be flipped to false

§

CollectionCannotBeVerifiedInThisInstruction

§

Removed

§

MustBeBurned

§

InvalidUseMethod

§

CannotChangeUseMethodAfterFirstUse

§

CannotChangeUsesAfterFirstUse

§

CollectionNotFound

§

InvalidCollectionUpdateAuthority

§

CollectionMustBeAUniqueMasterEdition

§

UseAuthorityRecordAlreadyExists

§

UseAuthorityRecordAlreadyRevoked

§

Unusable

§

NotEnoughUses

§

CollectionAuthorityRecordAlreadyExists

§

CollectionAuthorityDoesNotExist

§

InvalidUseAuthorityRecord

§

InvalidCollectionAuthorityRecord

§

InvalidFreezeAuthority

§

InvalidDelegate

§

CannotAdjustVerifiedCreator

§

CannotRemoveVerifiedCreator

§

CannotWipeVerifiedCreators

§

NotAllowedToChangeSellerFeeBasisPoints

§

EditionOverrideCannotBeZero

Edition override cannot be zero

§

InvalidUser

§

RevokeCollectionAuthoritySignerIncorrect

Revoke Collection Authority signer is incorrect

§

TokenCloseFailed

§

UnsizedCollection

101 - Calling v1.3 function on unsized collection

§

SizedCollection

102 - Calling v1.2 function on a sized collection

§

MissingCollectionMetadata

103 - Can’t burn a verified member of a collection w/o providing collection metadata account

§

NotAMemberOfCollection

104 - This NFT is not a member of the specified collection.

§

NotVerifiedMemberOfCollection

105 - This NFT is not a verified member of the specified collection.

§

NotACollectionParent

106 - This NFT is not a collection parent NFT.

§

CouldNotDetermineTokenStandard

107 - Could not determine a TokenStandard type.

§

MissingEditionAccount

108 - Missing edition account for a non-fungible token type.

§

NotAMasterEdition

109 - Not a Master Edition

§

MasterEditionHasPrints

110 - Master Edition has prints.

§

BorshDeserializationError

111 - Borsh Deserialization Error

§

CannotUpdateVerifiedCollection

112 - Cannot update a verified colleciton in this command

§

CollectionMasterEditionAccountInvalid

113 - Edition Account Doesnt Match Collection

§

AlreadyVerified

114 - Item is already verified.

§

AlreadyUnverified

115 - Item is already unverified.

§

NotAPrintEdition

116 - Not a Print Edition

§

InvalidMasterEdition

117 - Invalid Edition Marker

§

InvalidPrintEdition

118 - Invalid Edition Marker

§

InvalidEditionMarker

119 - Invalid Edition Marker

§

ReservationListDeprecated

120 - Reservation List is Deprecated

§

PrintEditionDoesNotMatchMasterEdition

121 - Print Edition doesn’t match Master Edition

§

EditionNumberGreaterThanMaxSupply

122 - Edition Number greater than max supply

§

MustUnverify

123 - Must unverify before migrating collections.

§

InvalidEscrowBumpSeed

124 - Invalid Escrow Account Bump Seed

§

MustBeEscrowAuthority

125 - Must be Escrow Authority

§

InvalidSystemProgram

126 - Invalid System Program

§

MustBeNonFungible

127 - Must be a Non Fungible Token

§

InsufficientTokens

128 - Insufficient tokens for transfer

§

BorshSerializationError

129 - Borsh Serialization Error

§

NoFreezeAuthoritySet

130 - Cannot create NFT with no Freeze Authority.

§

InvalidCollectionSizeChange

131

§

InvalidBubblegumSigner

132

§

EscrowParentHasDelegate

133

§

MintIsNotSigner

134

§

InvalidTokenStandard

135

§

InvalidMintForTokenStandard

136

§

InvalidAuthorizationRules

137

§

MissingAuthorizationRules

138

§

MissingProgrammableConfig

139

§

InvalidProgrammableConfig

140

§

DelegateAlreadyExists

141

§

DelegateNotFound

142

§

MissingAccountInBuilder

143

§

MissingArgumentInBuilder

144

§

FeatureNotSupported

145

§

InvalidSystemWallet

146

§

OnlySaleDelegateCanTransfer

147

§

MissingTokenAccount

148

§

MissingSplTokenProgram

149

§

MissingAuthorizationRulesProgram

150

§

InvalidDelegateRoleForTransfer

151

§

InvalidTransferAuthority

152

§

InstructionNotSupported

153

§

KeyMismatch

154

§

LockedToken

155

§

UnlockedToken

156

§

MissingDelegateRole

157

§

InvalidAuthorityType

158

§

MissingTokenRecord

159

§

MintSupplyMustBeZero

160

§

DataIsEmptyOrZeroed

161

§

MissingTokenOwnerAccount

162

§

InvalidMasterEditionAccountLength

163

§

IncorrectTokenState

164

§

InvalidDelegateRole

165

§

MissingPrintSupply

166

§

MissingMasterEditionAccount

167

§

AmountMustBeGreaterThanZero

168

§

InvalidDelegateArgs

169

§

MissingLockedTransferAddress

170

§

InvalidLockedTransferAddress

171

§

DataIncrementLimitExceeded

172

§

CannotUpdateAssetWithDelegate

173

§

InvalidAssociatedTokenAccountProgram

§

InvalidInstructionsSysvar

174

§

InvalidUpdateArgs

175

Trait Implementations§

source§

impl Clone for MetadataError

source§

fn clone(&self) -> MetadataError

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for MetadataError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<T> DecodeError<T> for MetadataError

source§

fn type_of() -> &'static str

source§

impl Display for MetadataError

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for MetadataError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<MetadataError> for ProgramError

source§

fn from(e: MetadataError) -> Self

Converts to this type from the input type.
source§

impl FromPrimitive for MetadataError

source§

fn from_i64(n: i64) -> Option<Self>

Converts an i64 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u64(n: u64) -> Option<Self>

Converts an u64 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_isize(n: isize) -> Option<Self>

Converts an isize to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i8(n: i8) -> Option<Self>

Converts an i8 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i16(n: i16) -> Option<Self>

Converts an i16 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i32(n: i32) -> Option<Self>

Converts an i32 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i128(n: i128) -> Option<Self>

Converts an i128 to return an optional value of this type. If the value cannot be represented by this type, then None is returned. Read more
source§

fn from_usize(n: usize) -> Option<Self>

Converts a usize to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u8(n: u8) -> Option<Self>

Converts an u8 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u16(n: u16) -> Option<Self>

Converts an u16 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u32(n: u32) -> Option<Self>

Converts an u32 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u128(n: u128) -> Option<Self>

Converts an u128 to return an optional value of this type. If the value cannot be represented by this type, then None is returned. Read more
source§

fn from_f32(n: f32) -> Option<Self>

Converts a f32 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_f64(n: f64) -> Option<Self>

Converts a f64 to return an optional value of this type. If the value cannot be represented by this type, then None is returned. Read more
source§

impl PartialEq<MetadataError> for MetadataError

source§

fn eq(&self, other: &MetadataError) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PrintProgramError for MetadataError

source§

fn print<E>(&self)

source§

impl Eq for MetadataError

source§

impl StructuralEq for MetadataError

source§

impl StructuralPartialEq for MetadataError

Auto Trait Implementations§

Blanket Implementations§

§

impl<T> AbiExample for T

§

default fn example() -> T

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = mem::align_of::<T>()

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<E> Provider for Ewhere E: Error + ?Sized,

source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (provide_any)
Data providers should implement this method to provide all values they are able to provide by using demand. Read more
source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for Twhere T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V