Thrift module: Errors
Enumerations
Enumeration: EDAMErrorCode
Numeric codes indicating the type of error that occurred on the
service.
- UNKNOWN
- No information available about the error
- BAD_DATA_FORMAT
- The format of the request data was incorrect
- PERMISSION_DENIED
- Not permitted to perform action
- INTERNAL_ERROR
- Unexpected problem with the service
- DATA_REQUIRED
- A required parameter/field was absent
- LIMIT_REACHED
- Operation denied due to data model limit
- QUOTA_REACHED
- Operation denied due to user storage limit
- INVALID_AUTH
- Username and/or password incorrect
- AUTH_EXPIRED
- Authentication token expired
- DATA_CONFLICT
- Change denied due to data model conflict
- ENML_VALIDATION
- Content of submitted note was malformed
- SHARD_UNAVAILABLE
- Service shard with account data is temporarily down
- LEN_TOO_SHORT
- Operation denied due to data model limit, where something such
as a string length was too short
- LEN_TOO_LONG
- Operation denied due to data model limit, where something such
as a string length was too long
- TOO_FEW
- Operation denied due to data model limit, where there were
too few of something.
- TOO_MANY
- Operation denied due to data model limit, where there were
too many of something.
- UNSUPPORTED_OPERATION
- Operation denied because it is currently unsupported.
- TAKEN_DOWN
- Operation denied because access to the corresponding object is
prohibited in response to a take-down notice.
- RATE_LIMIT_REACHED
- Operation denied because the calling application has reached
its hourly API call limit for this user.
- BUSINESS_SECURITY_LOGIN_REQUIRED
- Access to a business account has been denied because the user must complete
additional steps in order to comply with business security requirements.
- DEVICE_LIMIT_REACHED
- Operation denied because the user has exceeded their maximum allowed
number of devices.
UNKNOWN | 1 |
BAD_DATA_FORMAT | 2 |
PERMISSION_DENIED | 3 |
INTERNAL_ERROR | 4 |
DATA_REQUIRED | 5 |
LIMIT_REACHED | 6 |
QUOTA_REACHED | 7 |
INVALID_AUTH | 8 |
AUTH_EXPIRED | 9 |
DATA_CONFLICT | 10 |
ENML_VALIDATION | 11 |
SHARD_UNAVAILABLE | 12 |
LEN_TOO_SHORT | 13 |
LEN_TOO_LONG | 14 |
TOO_FEW | 15 |
TOO_MANY | 16 |
UNSUPPORTED_OPERATION | 17 |
TAKEN_DOWN | 18 |
RATE_LIMIT_REACHED | 19 |
BUSINESS_SECURITY_LOGIN_REQUIRED | 20 |
DEVICE_LIMIT_REACHED | 21 |
An enumeration that provides a reason for why a given contact was invalid, for example,
as thrown via an EDAMInvalidContactsException.
- BAD_ADDRESS
- The contact information does not represent a valid address for a recipient.
Clients should be validating and normalizing contacts, so receiving this
error code commonly represents a client error.
- DUPLICATE_CONTACT
- If the method throwing this exception accepts a list of contacts, this error
code indicates that the given contact is a duplicate of another contact in
the list. Note that the server may clean up contacts, and that this cleanup
occurs before checking for duplication. Receiving this error is commonly
an indication of a client issue, since client should be normalizing contacts
and removing duplicates. All instances that are duplicates are returned. For
example, if a list of 5 contacts has the same e-mail address twice, the two
conflicting e-mail address contacts will be returned.
- NO_CONNECTION
- Indicates that the given contact, an Evernote type contact, is not connected
to the user for which the call is being made. It is possible that clients are
out of sync with the server and should re-synchronize their identities and
business user state. See Identity.userConnected for more information on user
connections.
Note that if multiple reasons may apply, only one is returned. The precedence order
is BAD_ADDRESS, DUPLICATE_CONTACT, NO_CONNECTION, meaning that if a contact has a bad
address and is also duplicated, it will be returned as a BAD_ADDRESS.
BAD_ADDRESS | 0 |
DUPLICATE_CONTACT | 1 |
NO_CONNECTION | 2 |
Data structures
Exception: EDAMUserException
This exception is thrown by EDAM procedures when a call fails as a result of
a problem that a caller may be able to resolve. For example, if the user
attempts to add a note to their account which would exceed their storage
quota, this type of exception may be thrown to indicate the source of the
error so that they can choose an alternate action.
This exception would not be used for internal system errors that do not
reflect user actions, but rather reflect a problem within the service that
the user cannot resolve.
errorCode: The numeric code indicating the type of error that occurred.
must be one of the values of EDAMErrorCode.
parameter: If the error applied to a particular input parameter, this will
indicate which parameter.
Exception: EDAMSystemException
Field | Type |
---|
errorCode | EDAMErrorCode |
message | string |
rateLimitDuration | i32 |
This exception is thrown by EDAM procedures when a call fails as a result of
a problem in the service that could not be changed through caller action.
errorCode: The numeric code indicating the type of error that occurred.
must be one of the values of EDAMErrorCode.
message: This may contain additional information about the error
rateLimitDuration: Indicates the minimum number of seconds that an application should
expect subsequent API calls for this user to fail. The application should not retry
API requests for the user until at least this many seconds have passed. Present only
when errorCode is RATE_LIMIT_REACHED,
Exception: EDAMNotFoundException
Field | Type |
---|
identifier | string |
key | string |
This exception is thrown by EDAM procedures when a caller asks to perform
an operation on an object that does not exist. This may be thrown based on an invalid
primary identifier (e.g. a bad GUID), or when the caller refers to an object
by another unique identifier (e.g. a User's email address).
identifier: A description of the object that was not found on the server.
For example, "Note.notebookGuid" when a caller attempts to create a note in a
notebook that does not exist in the user's account.
key: The value passed from the client in the identifier, which was not
found. For example, the GUID that was not found.
An exception thrown when the provided Contacts fail validation. For instance,
email domains could be invalid, phone numbers might not be valid for SMS,
etc.
We will not provide individual reasons for each Contact's validation failure.
The presence of the Contact in this exception means that the user must figure
out how to take appropriate action to fix this Contact.
- contacts
- The list of Contacts that are considered invalid by the service
- parameter
- If the error applied to a particular input parameter, this will
indicate which parameter.
- reasons
- If supplied, the list of reasons why the server considered a contact invalid,
matching, in order, the list returned in the contacts field.