From b19afbe1f1382a544fd046091bd83745f482b4e3 Mon Sep 17 00:00:00 2001 From: Nick Mills-Barrett Date: Fri, 19 Jul 2024 11:00:30 +0100 Subject: [PATCH] Catch and handle invalid access token response to upload requests --- messagix/mercury.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/messagix/mercury.go b/messagix/mercury.go index fa3f74d..318af8e 100644 --- a/messagix/mercury.go +++ b/messagix/mercury.go @@ -7,6 +7,7 @@ import ( "fmt" "mime/multipart" "net/textproto" + "strings" "github.com/google/go-querystring/query" "github.com/rs/zerolog" @@ -53,6 +54,9 @@ func (c *Client) SendMercuryUploadRequest(ctx context.Context, threadID int64, m _, respBody, err := c.MakeRequest(url, "POST", h, payload, types.NONE) if err != nil { + if strings.Contains(err.Error(), "access token is no longer valid") { + return nil, ErrTokenInvalidated + } return nil, fmt.Errorf("failed to send MercuryUploadRequest: %v", err) }