-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy patherrors.go
36 lines (30 loc) · 1.03 KB
/
errors.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package notion
import (
"errors"
"fmt"
)
var (
ErrUnknown = errors.New("unknown")
)
// ErrorCode https://developers.notion.com/reference/errors
type ErrorCode string
const (
ErrorCodeInvalidJSON ErrorCode = "invalid_json"
ErrorCodeInvalidRequestURI ErrorCode = "invalid_request_url"
ErrorCodeInvalidRequest ErrorCode = "invalid_request"
ErrorCodeValidationError ErrorCode = "validation_error"
ErrorCodeUnauthorized ErrorCode = "unauthorized"
ErrorCodeRestrictedResource ErrorCode = "restricted_resource"
ErrorCodeObjectNotFound ErrorCode = "object_not_found"
ErrorCodeConflictError ErrorCode = "conflict_error"
ErrorCodeRateLimited ErrorCode = "rate_limited"
ErrorCodeInternalServerError ErrorCode = "internal_server_error"
ErrorCodeServiceUnavailable ErrorCode = "service_unavailable"
)
type HTTPError struct {
Code ErrorCode `json:"code"`
Message string `json:"message"`
}
func (e HTTPError) Error() string {
return fmt.Sprintf("Code: %s, Message: %s", e.Code, e.Message)
}