# File Mandrill/Exceptions.php

      1: <?php
      2:
      3: class Mandrill_Error extends Exception {}
      4: class Mandrill_HttpError extends Mandrill_Error {}
      5:
      6: /**
      7:  * The parameters passed to the API call are invalid or not provided when required
      8:  */
      9: class Mandrill_ValidationError extends Mandrill_Error {}
     10:
     11: /**
     12:  * The provided API key is not a valid Mandrill API key
     13:  */
     14: class Mandrill_Invalid_Key extends Mandrill_Error {}
     15:
     16: /**
     17:  * The requested feature requires payment.
     18:  */
     19: class Mandrill_PaymentRequired extends Mandrill_Error {}
     20:
     21: /**
     22:  * The provided subaccount id does not exist.
     23:  */
     24: class Mandrill_Unknown_Subaccount extends Mandrill_Error {}
     25:
     26: /**
     27:  * The requested template does not exist
     28:  */
     29: class Mandrill_Unknown_Template extends Mandrill_Error {}
     30:
     31: /**
     32:  * The subsystem providing this API call is down for maintenance
     33:  */
     34: class Mandrill_ServiceUnavailable extends Mandrill_Error {}
     35:
     36: /**
     37:  * The provided message id does not exist.
     38:  */
     39: class Mandrill_Unknown_Message extends Mandrill_Error {}
     40:
     41: /**
     42:  * The requested tag does not exist or contains invalid characters
     43:  */
     44: class Mandrill_Invalid_Tag_Name extends Mandrill_Error {}
     45:
     46: /**
     47:  * The requested email is not in the rejection list
     48:  */
     49: class Mandrill_Invalid_Reject extends Mandrill_Error {}
     50:
     51: /**
     52:  * The requested sender does not exist
     53:  */
     54: class Mandrill_Unknown_Sender extends Mandrill_Error {}
     55:
     56: /**
     57:  * The requested URL has not been seen in a tracked link
     58:  */
     59: class Mandrill_Unknown_Url extends Mandrill_Error {}
     60:
     61: /**
     62:  * The provided tracking domain does not exist.
     63:  */
     64: class Mandrill_Unknown_TrackingDomain extends Mandrill_Error {}
     65:
     66: /**
     67:  * The given template name already exists or contains invalid characters
     68:  */
     69: class Mandrill_Invalid_Template extends Mandrill_Error {}
     70:
     71: /**
     72:  * The requested webhook does not exist
     73:  */
     74: class Mandrill_Unknown_Webhook extends Mandrill_Error {}
     75:
     76: /**
     77:  * The requested inbound domain does not exist
     78:  */
     79: class Mandrill_Unknown_InboundDomain extends Mandrill_Error {}
     80:
     81: /**
     82:  * The provided inbound route does not exist.
     83:  */
     84: class Mandrill_Unknown_InboundRoute extends Mandrill_Error {}
     85:
     86: /**
     87:  * The requested export job does not exist
     88:  */
     89: class Mandrill_Unknown_Export extends Mandrill_Error {}
     90:
     91: /**
     92:  * A dedicated IP cannot be provisioned while another request is pending.
     93:  */
     94: class Mandrill_IP_ProvisionLimit extends Mandrill_Error {}
     95:
     96: /**
     97:  * The provided dedicated IP pool does not exist.
     98:  */
     99: class Mandrill_Unknown_Pool extends Mandrill_Error {}
    100:
    101: /**
    102:  * The user hasn't started sending yet.
    103:  */
    104: class Mandrill_NoSendingHistory extends Mandrill_Error {}
    105:
    106: /**
    107:  * The user's reputation is too low to continue.
    108:  */
    109: class Mandrill_PoorReputation extends Mandrill_Error {}
    110:
    111: /**
    112:  * The provided dedicated IP does not exist.
    113:  */
    114: class Mandrill_Unknown_IP extends Mandrill_Error {}
    115:
    116: /**
    117:  * You cannot remove the last IP from your default IP pool.
    118:  */
    119: class Mandrill_Invalid_EmptyDefaultPool extends Mandrill_Error {}
    120:
    121: /**
    122:  * The default pool cannot be deleted.
    123:  */
    124: class Mandrill_Invalid_DeleteDefaultPool extends Mandrill_Error {}
    125:
    126: /**
    127:  * Non-empty pools cannot be deleted.
    128:  */
    129: class Mandrill_Invalid_DeleteNonEmptyPool extends Mandrill_Error {}
    130:
    131: /**
    132:  * The domain name is not configured for use as the dedicated IP's custom reverse DNS.
    133:  */
    134: class Mandrill_Invalid_CustomDNS extends Mandrill_Error {}
    135:
    136: /**
    137:  * A custom DNS change for this dedicated IP is currently pending.
    138:  */
    139: class Mandrill_Invalid_CustomDNSPending extends Mandrill_Error {}
    140:
    141: /**
    142:  * Custom metadata field limit reached.
    143:  */
    144: class Mandrill_Metadata_FieldLimit extends Mandrill_Error {}
    145:
    146: /**
    147:  * The provided metadata field name does not exist.
    148:  */
    149: class Mandrill_Unknown_MetadataField extends Mandrill_Error {}
    150:
    151:
    152: