How to migrate to new Auth workflow with python SDK while minimizing need for single user input?
Hello Dropbox team,
I have set up a small app as a python script which runs continuously on my server, and which needs to read some files that I store on my Dropbox storage space, in the folder dedicated to this app. This script needs to read those files at regular interval (currently every 15 minutes). When I set up this app, I generated a token that I now provide to my python script every time I need to launch it. Things have been working fine up until now.
I have been warned of the API update, notably related to authentication, by an email in November 2020. Now I'm tring to see if I need to change something to my app in order to adapt to this update, and if yes, to implement that change. However it has been difficult to find out if I need to do something, and if yes, what. If I understand properly what I read on this page (https://developers.dropbox.com/fr-fr/oauth-guide), as long as only me is using this app, I can use a token generated in the OAuth 2 Section of the Setting menu of my app, and set its expiration setting to 'No expiration'. However, in the help box, it is said that such tokens will be deprecated in the future, so if possible I'd like to anticipate that. When I look at the table at the end of this page, in the "Summary" section, if I parse it properly, my app falls within the "A server-side application that requires background access." category, which means what I should "Use the OAuth code flow, with refresh tokens.". The thing is, I'm not sure of how to do that. When I look at examples available here (https://www.dropbox.com/developers/reference/getting-started?_tk=guides_lp&_ad=tutorial5&_camp=get_started#writing%20a%20script), seems like it's just using the long-lived token method that I'm already using. I found some examples script for the python SDK here (https://github.com/dropbox/dropbox-sdk-python/tree/main/example/oauth) but I'm not sure which one to follow. From what I can see, I will always need to interact with the script every time I launch it, in order to copy the authorization code and provide it to the script, is that right?
Basically my question is: what is the script setup that I need to do, that will minimize the interaction with Dropbox required from me, while making sure that my app is still functional and compliant with Dropbox's future deprecation, for the time being?
FrancoisNOYEZ Здравко is correct, under the new system you do not need to interact with your script every time it runs. You can supply it the refresh token like you previously supplied it a long-lived access token and it will automatically run without manual user interaction, as before.
You do need to process the app authorization flow one time to get a refresh token though. You can refer to this example to see how to process the app authorization flow to get a refresh token, at which point you can then set up a client using it, as shown at the end of the example.
From what I can see, I will always need to interact with the script every time I launch it, in order to copy the authorization code and provide it to the script, is that right?
You can migrate to OAuth2 and you will need to interact to your script only for the long lived token - refresh token (i.e. at the beginning), nothing more! This token doesn't expire - the same like before (almost). The only difference is that it can't be used directly in API calls. The its only purpose is generation of short living tokens - access token, usable within API calls. You usually should not take care of this process, since it's performed in the SDK (internally) and you can continue usage of SDK's calls in the same way as before. When need new token will be generated on demand without your additional interaction. SDK will call /oauth2/token for you. Might be need little bit more care if you call on some place(s) API calls directly, bypassing SDK.
FrancoisNOYEZ Здравко is correct, under the new system you do not need to interact with your script every time it runs. You can supply it the refresh token like you previously supplied it a long-lived access token and it will automatically run without manual user interaction, as before.
You do need to process the app authorization flow one time to get a refresh token though. You can refer to this example to see how to process the app authorization flow to get a refresh token, at which point you can then set up a client using it, as shown at the end of the example.
Thank you for your answers. Following your indications, as well as the example described in the examples scripts, I was able to define a "refresh token", and I indeed see that I only need to supply it, along with the APP_KEY and APP_SECRET, when instantiating a Dropbox class object. As long as I keep the 'oauth2_access_token_expiration' parameter equal to none, when carrying out this instantiation, I guess I will never need to perform new authentication operations, is that right?
With this new authentication scheme, we went from having to just specify a single token, to having to specify the APP_KEY, APP_SECRET, and refresh token. In terms of management of this sensitive authentication data, in your opinion, how should I proceed? I used to pass along the authentication token as a parameter to the command used to launch my script ('cause I don't want to write it down in my script). Is it ok to do something similar now (the difference being that I'll have to provide 3 values instead of one)? Seems like, as long as I keep those authentication -needed data in the same spot, nothing much was gained in terms of security (though now the scope associated to the token is read-only, so that seems like an improvement here). How could I improve the way I manage those data, if possible, in your opinion?
FrancoisNOYEZ wrote: ... As long as I keep the 'oauth2_access_token_expiration' parameter equal to none, when carrying out this instantiation, I guess I will never need to perform new authentication operations, is that right? ...
In the practice, yes, most probably. If we should be more general, there are situations where refresh token could be revoked (both explicitly, by your or another person having access to the account, or implicitly, by some actions, which shouldn't happen in normal case). Even very unlikely, it's good practice to expect such a situation in your code (script or other). When something goes wrong and the token gets revoked, somehow, just inform/warn in suitable way, at least. The same is valid for long lived access token, used by you till now. 😉 Just a good practice that can make your life easy sometimes!
FrancoisNOYEZ wrote: ... In terms of management of this sensitive authentication data, in your opinion, how should I proceed? I used to pass along the authentication token as a parameter to the command used to launch my script ('cause I don't want to write it down in my script). Is it ok to do something similar now (the difference being that I'll have to provide 3 values instead of one)? ...
🙄🙂😁FrancoisNOYEZ, If you care for data (of any kind) and don't want other process (and people accordingly) to touch it, command line is the worst place to pass such data (or not the best, definitelly, at least)! Command name a all options and parameters are object of logging in the shell history, at least. The same information is accessible through system tool for process monitoring (how exactly depends on exact OS in use, but accessible). Other ways are also possible! What think that you are hiding in such a way?!!! Be careful!
If I'm in your shoes, will look around your system and usually there is some sort of system "wallet". That's exactly what this service is dedicated for! Exact form is OS dependent, but generally there is some encrypted, system controlled storage where every application could reserve some space. There you can store sensitive data of your choice (like discussing here). The access is system controlled and one application can't touch data of other one and also the same application running on different account is restricted (there are different storage places). 😉 The just mentioned would be my choice.
The needed data representation can be stored on and received from a secure place (like the wallet above). On start, when available, could be used directly to instantiate Dropbox client object. When missing OAuth flow could run and result received will be used both for client instantiation and storage of sensitive data.
Hope this gives useful directions.
PS: For a almost platform independent way in Python try the "keyring" package. 😉 It behaves as a interface to corresponding installed system service. Or tries to, at least, and succeeds when there is available proper backend. Linux, Mac, and Windows are generally supported.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.5,929 PostsLatest Activity: 2 days ago
If you need more help you can view your support options (expected response time for an email or ticket is 24 hours), or contact us on X or Facebook.
For more info on available support options for your Dropbox plan, see this article.
If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!
Start 2025 on time and up to date! Seamlessly integrate your calendars into Dropbox with these simple steps! 📆
"}},"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/community/NavbarDropdownToggle\"]})":[{"__ref":"CachedAsset:text:en_US-components/community/NavbarDropdownToggle-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/EscalatedMessageBanner\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/EscalatedMessageBanner-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/users/UserLink\"]})":[{"__ref":"CachedAsset:text:en_US-components/users/UserLink-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/users/UserRank\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/users/UserRank-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageTime\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageTime-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageSubject\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageSubject-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageBody\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageBody-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageCustomFields\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageCustomFields-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageReplyButton\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageReplyButton-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageSolutionList\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageSolutionList-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/AcceptedSolutionButton\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/AcceptedSolutionButton-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/common/Pager/PagerLoadMore\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/common/Pager/PagerLoadMore-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/nodes/NodeView/NodeViewCard\"]})":[{"__ref":"CachedAsset:text:en_US-components/nodes/NodeView/NodeViewCard-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageView/MessageViewInline\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageView/MessageViewInline-1737382615000"}],"message({\"id\":\"message:514256\"})":{"__ref":"ForumReplyMessage:message:514256"},"message({\"id\":\"message:514471\"})":{"__ref":"AcceptedSolutionMessage:message:514471"},"message({\"id\":\"message:515779\"})":{"__ref":"ForumReplyMessage:message:515779"},"message({\"id\":\"message:515788\"})":{"__ref":"ForumReplyMessage:message:515788"},"messages({\"constraints\":{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:514249\"}},\"first\":10,\"sorts\":{\"postTime\":{\"direction\":\"ASC\"}}})":{"__typename":"MessageConnection","edges":[{"__typename":"MessageEdge","cursor":"MjQuMTF8Mi4xfGl8MTB8NTI6MXxpbnQsNTE0NDcxLDUxNDQ3MQ","node":{"__ref":"AcceptedSolutionMessage:message:514471"}}],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null},"totalCount":1},"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/users/UserAvatar\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/users/UserAvatar-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/ranks/UserRankLabel\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/ranks/UserRankLabel-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/nodes/NodeAvatar\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/nodes/NodeAvatar-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/nodes/NodeDescription\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/nodes/NodeDescription-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/nodes/NodeTopicsCount\"]})":[{"__ref":"CachedAsset:text:en_US-components/nodes/NodeTopicsCount-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/nodes/NodeLatestActivityTime\"]})":[{"__ref":"CachedAsset:text:en_US-components/nodes/NodeLatestActivityTime-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/nodes/NodeFollowersCount\"]})":[{"__ref":"CachedAsset:text:en_US-components/nodes/NodeFollowersCount-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/nodes/NodeIcon\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/nodes/NodeIcon-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageSolvedBadge\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageSolvedBadge-1737382615000"}],"cachedText({\"lastModified\":\"1737382615000\",\"locale\":\"en-US\",\"namespaces\":[\"components/tags/TagView/TagViewChip\"]})":[{"__ref":"CachedAsset:text:en_US-components/tags/TagView/TagViewChip-1737382615000"}]},"CachedAsset:pages-1737547810829":{"__typename":"CachedAsset","id":"pages-1737547810829","value":[{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"BlogViewAllPostsPage","type":"BLOG","urlPath":"/category/:categoryId/blog/:boardId/all-posts/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"CasePortalPage","type":"CASE_PORTAL","urlPath":"/caseportal","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"CreateGroupHubPage","type":"GROUP_HUB","urlPath":"/groups/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"CaseViewPage","type":"CASE_DETAILS","urlPath":"/case/:caseId/:caseNumber","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"InboxPage","type":"COMMUNITY","urlPath":"/inbox","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"HelpFAQPage","type":"COMMUNITY","urlPath":"/help","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"IdeaMessagePage","type":"IDEA_POST","urlPath":"/idea/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"IdeaViewAllIdeasPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId/all-ideas/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"LoginPage","type":"USER","urlPath":"/signin","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"BlogPostPage","type":"BLOG","urlPath":"/category/:categoryId/blogs/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ThemeEditorPage","type":"COMMUNITY","urlPath":"/designer/themes","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"TkbViewAllArticlesPage","type":"TKB","urlPath":"/category/:categoryId/kb/:boardId/all-articles/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"OccasionEditPage","type":"EVENT","urlPath":"/event/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"OAuthAuthorizationAllowPage","type":"USER","urlPath":"/auth/authorize/allow","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"PageEditorPage","type":"COMMUNITY","urlPath":"/designer/pages","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"PostPage","type":"COMMUNITY","urlPath":"/category/:categoryId/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ForumBoardPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"TkbBoardPage","type":"TKB","urlPath":"/category/:categoryId/kb/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"EventPostPage","type":"EVENT","urlPath":"/category/:categoryId/events/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"UserBadgesPage","type":"COMMUNITY","urlPath":"/users/:login/:userId/badges","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"GroupHubMembershipAction","type":"GROUP_HUB","urlPath":"/membership/join/:nodeId/:membershipType","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"IdeaReplyPage","type":"IDEA_REPLY","urlPath":"/idea/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"UserSettingsPage","type":"USER","urlPath":"/mysettings/:userSettingsTab","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"GroupHubsPage","type":"GROUP_HUB","urlPath":"/groups","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ForumPostPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"OccasionRsvpActionPage","type":"OCCASION","urlPath":"/event/:boardId/:messageSubject/:messageId/rsvp/:responseType","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"VerifyUserEmailPage","type":"USER","urlPath":"/verifyemail/:userId/:verifyEmailToken","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"AllOccasionsPage","type":"OCCASION","urlPath":"/category/:categoryId/events/:boardId/all-events/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"EventBoardPage","type":"EVENT","urlPath":"/category/:categoryId/events/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"TkbReplyPage","type":"TKB_REPLY","urlPath":"/kb/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"IdeaBoardPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"CommunityGuideLinesPage","type":"COMMUNITY","urlPath":"/communityguidelines","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"CaseCreatePage","type":"SALESFORCE_CASE_CREATION","urlPath":"/caseportal/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"TkbEditPage","type":"TKB","urlPath":"/kb/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ForgotPasswordPage","type":"USER","urlPath":"/forgotpassword","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"IdeaEditPage","type":"IDEA","urlPath":"/idea/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"TagPage","type":"COMMUNITY","urlPath":"/tag/:tagName","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"BlogBoardPage","type":"BLOG","urlPath":"/category/:categoryId/blog/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"OccasionMessagePage","type":"OCCASION_TOPIC","urlPath":"/event/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ManageContentPage","type":"COMMUNITY","urlPath":"/managecontent","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ClosedMembershipNodeNonMembersPage","type":"GROUP_HUB","urlPath":"/closedgroup/:groupHubId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"CommunityPage","type":"COMMUNITY","urlPath":"/","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ForumMessagePage","type":"FORUM_TOPIC","urlPath":"/discussions/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"IdeaPostPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"BlogMessagePage","type":"BLOG_ARTICLE","urlPath":"/blog/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"RegistrationPage","type":"USER","urlPath":"/register","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"EditGroupHubPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ForumEditPage","type":"FORUM","urlPath":"/discussions/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ResetPasswordPage","type":"USER","urlPath":"/resetpassword/:userId/:resetPasswordToken","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"TkbMessagePage","type":"TKB_ARTICLE","urlPath":"/kb/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"BlogEditPage","type":"BLOG","urlPath":"/blog/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ManageUsersPage","type":"USER","urlPath":"/users/manage/:tab?/:manageUsersTab?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ForumReplyPage","type":"FORUM_REPLY","urlPath":"/discussions/:boardId/:messageSubject/:messageId/replies/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"PrivacyPolicyPage","type":"COMMUNITY","urlPath":"/privacypolicy","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"NotificationPage","type":"COMMUNITY","urlPath":"/notifications","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"UserPage","type":"USER","urlPath":"/users/:login/:userId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"OccasionReplyPage","type":"OCCASION_REPLY","urlPath":"/event/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ManageMembersPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/manage/:tab?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"SearchResultsPage","type":"COMMUNITY","urlPath":"/search","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"BlogReplyPage","type":"BLOG_REPLY","urlPath":"/blog/:boardId/:messageSubject/:messageId/replies/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"GroupHubPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"TermsOfServicePage","type":"COMMUNITY","urlPath":"/termsofservice","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"CategoryPage","type":"CATEGORY","urlPath":"/category/:categoryId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"ForumViewAllTopicsPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId/all-topics/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"TkbPostPage","type":"TKB","urlPath":"/category/:categoryId/kbs/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1737547810829,"localOverride":null,"page":{"id":"GroupHubPostPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"}],"localOverride":false},"CachedAsset:text:en_US-components/context/AppContext/AppContextProvider-0":{"__typename":"CachedAsset","id":"text:en_US-components/context/AppContext/AppContextProvider-0","value":{"noCommunity":"Cannot find community","noUser":"Cannot find current user","noNode":"Cannot find node with id {nodeId}","noMessage":"Cannot find message with id {messageId}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Loading/LoadingDot-0":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Loading/LoadingDot-0","value":{"title":"Loading..."},"localOverride":false},"User:user:-1":{"__typename":"User","id":"user:-1","uid":-1,"login":"anonymous","email":"","avatar":null,"rank":null,"kudosWeight":1,"registrationData":{"__typename":"RegistrationData","status":"ANONYMOUS","registrationTime":null,"confirmEmailStatus":false,"registrationAccessLevel":"VIEW","ssoRegistrationFields":[]},"ssoId":null,"profileSettings":{"__typename":"ProfileSettings","dateDisplayStyle":{"__typename":"InheritableStringSettingWithPossibleValues","key":"layout.friendly_dates_enabled","value":"true","localValue":"true","possibleValues":["true","false"]},"dateDisplayFormat":{"__typename":"InheritableStringSetting","key":"layout.format_pattern_date","value":"MM-dd-yyyy","localValue":"MM-dd-yyyy"},"language":{"__typename":"InheritableStringSettingWithPossibleValues","key":"profile.language","value":"en-US","localValue":"en","possibleValues":["en-US"]}},"deleted":false},"Theme:customTheme1":{"__typename":"Theme","id":"customTheme1"},"AssociatedImage:{\"url\":\"https://www.dropboxforum.com/t5/s/mxpez29397/images/bi00My1JMExKVXk\"}":{"__typename":"AssociatedImage","url":"https://www.dropboxforum.com/t5/s/mxpez29397/images/bi00My1JMExKVXk","mimeType":"image/svg+xml"},"Category:category:101000041":{"__typename":"Category","id":"category:101000041","entityType":"CATEGORY","displayId":"101000041","nodeType":"category","depth":3,"title":"Developer & API","shortTitle":"Developers & API","parent":{"__ref":"Category:category:101007"},"categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:top":{"__typename":"Category","id":"category:top","displayId":"top","nodeType":"category","depth":0,"title":"Top","entityType":"CATEGORY","shortTitle":"Top"},"Category:category:English":{"__typename":"Category","id":"category:English","displayId":"English","nodeType":"category","depth":1,"parent":{"__ref":"Category:category:top"},"title":"Community","entityType":"CATEGORY","shortTitle":"en","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:101007":{"__typename":"Category","id":"category:101007","displayId":"101007","nodeType":"category","depth":2,"parent":{"__ref":"Category:category:English"},"title":"Discover","entityType":"CATEGORY","shortTitle":"Discover","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Forum:board:101000014":{"__typename":"Forum","id":"board:101000014","entityType":"FORUM","displayId":"101000014","nodeType":"board","depth":4,"conversationStyle":"FORUM","title":"Dropbox API Support & Feedback","description":"Find help with the Dropbox API from other developers.","avatar":{"__ref":"AssociatedImage:{\"url\":\"https://www.dropboxforum.com/t5/s/mxpez29397/images/bi00My1JMExKVXk\"}"},"profileSettings":{"__typename":"ProfileSettings","language":null},"parent":{"__ref":"Category:category:101000041"},"ancestors":{"__typename":"CoreNodeConnection","edges":[{"__typename":"CoreNodeEdge","node":{"__ref":"Community:community:mxpez29397"}},{"__typename":"CoreNodeEdge","node":{"__ref":"Category:category:English"}},{"__typename":"CoreNodeEdge","node":{"__ref":"Category:category:101007"}},{"__typename":"CoreNodeEdge","node":{"__ref":"Category:category:101000041"}}]},"userContext":{"__typename":"NodeUserContext","canAddAttachments":false,"canUpdateNode":false,"canPostMessages":false,"isSubscribed":false},"boardPolicies":{"__typename":"BoardPolicies","canPublishArticleOnCreate":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.forums.policy_can_publish_on_create_workflow_action.accessDenied","key":"error.lithium.policies.forums.policy_can_publish_on_create_workflow_action.accessDenied","args":[]}}},"shortTitle":"Dropbox API Support & Feedback","repliesProperties":{"__typename":"RepliesProperties","sortOrder":"PUBLISH_TIME","repliesFormat":"threaded"},"topicsCount":5929,"messageActivity":{"__typename":"MessageActivity","corePropertyChangeTime":"2025-01-21T12:48:59.869-08:00"},"subscriptionsCount":338,"eventPath":"category:101000041/category:101007/category:English/community:mxpez29397board:101000014/","tagProperties":{"__typename":"TagNodeProperties","tagsEnabled":{"__typename":"PolicyResult","failureReason":null}},"requireTags":false,"tagType":"FREEFORM_AND_PRESET","description@stripHtml":"Find help with the Dropbox API from other developers."},"Rank:rank:45":{"__typename":"Rank","id":"rank:45","position":28,"name":"Explorer | Level 4","color":"333333","icon":null,"rankStyle":"TEXT"},"User:user:1433776":{"__typename":"User","id":"user:1433776","uid":1433776,"login":"FrancoisNOYEZ","deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/m_assets/avatars/default/avatar-3.svg"},"rank":{"__ref":"Rank:rank:45"},"email":"","messagesCount":3,"biography":null,"topicsCount":1,"kudosReceivedCount":0,"kudosGivenCount":3,"kudosWeight":1,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2021-04-18T04:32:47.377-07:00","confirmEmailStatus":null,"registrationAccessLevel":null,"ssoRegistrationFields":[]},"followersCount":null,"solutionsCount":0,"ssoId":null,"entityType":"USER","eventPath":"community:mxpez29397/user:1433776"},"ForumTopicMessage:message:514249":{"__typename":"ForumTopicMessage","uid":514249,"subject":"How to migrate to new Auth workflow with python SDK while minimizing need for single user input?","id":"message:514249","revisionNum":3,"repliesCount":13,"author":{"__ref":"User:user:1433776"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:101000014"},"conversation":{"__ref":"Conversation:conversation:514249"},"readOnly":false,"editFrozen":false,"moderationData":{"__ref":"ModerationData:moderation_data:514249"},"body":"
Hello Dropbox team,
\n
\n
I have set up a small app as a python script which runs continuously on my server, and which needs to read some files that I store on my Dropbox storage space, in the folder dedicated to this app. This script needs to read those files at regular interval (currently every 15 minutes). When I set up this app, I generated a token that I now provide to my python script every time I need to launch it. Things have been working fine up until now.
\n
\n
I have been warned of the API update, notably related to authentication, by an email in November 2020. Now I'm tring to see if I need to change something to my app in order to adapt to this update, and if yes, to implement that change. However it has been difficult to find out if I need to do something, and if yes, what. If I understand properly what I read on this page (https://developers.dropbox.com/fr-fr/oauth-guide), as long as only me is using this app, I can use a token generated in the OAuth 2 Section of the Setting menu of my app, and set its expiration setting to 'No expiration'. However, in the help box, it is said that such tokens will be deprecated in the future, so if possible I'd like to anticipate that. When I look at the table at the end of this page, in the \"Summary\" section, if I parse it properly, my app falls within the \"A server-side application that requires background access.\" category, which means what I should \"Use the OAuth code flow, with refresh tokens.\". The thing is, I'm not sure of how to do that. When I look at examples available here (https://www.dropbox.com/developers/reference/getting-started?_tk=guides_lp&_ad=tutorial5&_camp=get_started#writing%20a%20script), seems like it's just using the long-lived token method that I'm already using. I found some examples script for the python SDK here (https://github.com/dropbox/dropbox-sdk-python/tree/main/example/oauth) but I'm not sure which one to follow. From what I can see, I will always need to interact with the script every time I launch it, in order to copy the authorization code and provide it to the script, is that right?
\n
\n
Basically my question is: what is the script setup that I need to do, that will minimize the interaction with Dropbox required from me, while making sure that my app is still functional and compliant with Dropbox's future deprecation, for the time being?
","body@stringLength":"2896","rawBody":"
Hello Dropbox team,
\n
\n
I have set up a small app as a python script which runs continuously on my server, and which needs to read some files that I store on my Dropbox storage space, in the folder dedicated to this app. This script needs to read those files at regular interval (currently every 15 minutes). When I set up this app, I generated a token that I now provide to my python script every time I need to launch it. Things have been working fine up until now.
\n
\n
I have been warned of the API update, notably related to authentication, by an email in November 2020. Now I'm tring to see if I need to change something to my app in order to adapt to this update, and if yes, to implement that change. However it has been difficult to find out if I need to do something, and if yes, what. If I understand properly what I read on this page (https://developers.dropbox.com/fr-fr/oauth-guide), as long as only me is using this app, I can use a token generated in the OAuth 2 Section of the Setting menu of my app, and set its expiration setting to 'No expiration'. However, in the help box, it is said that such tokens will be deprecated in the future, so if possible I'd like to anticipate that. When I look at the table at the end of this page, in the \"Summary\" section, if I parse it properly, my app falls within the \"A server-side application that requires background access.\" category, which means what I should \"Use the OAuth code flow, with refresh tokens.\". The thing is, I'm not sure of how to do that. When I look at examples available here (https://www.dropbox.com/developers/reference/getting-started?_tk=guides_lp&_ad=tutorial5&_camp=get_started#writing%20a%20script), seems like it's just using the long-lived token method that I'm already using. I found some examples script for the python SDK here (https://github.com/dropbox/dropbox-sdk-python/tree/main/example/oauth) but I'm not sure which one to follow. From what I can see, I will always need to interact with the script every time I launch it, in order to copy the authorization code and provide it to the script, is that right?
\n
\n
Basically my question is: what is the script setup that I need to do, that will minimize the interaction with Dropbox required from me, while making sure that my app is still functional and compliant with Dropbox's future deprecation, for the time being?
","kudosSumWeight":0,"postTime":"2021-04-18T04:39:59.666-07:00","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"attachments":{"__typename":"AttachmentConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[]},"tags":{"__typename":"TagConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[{"__typename":"TagEdge","cursor":"MjQuMTF8Mi4xfG98MTB8X05WX3wx","node":{"__typename":"Tag","id":"tag:API","text":"API","time":"2018-07-17T23:13:20.038-07:00","lastActivityTime":null,"messagesCount":null,"followersCount":null}}]},"timeToRead":2,"currentRevision":{"__ref":"Revision:revision:514249_3"},"latestVersion":null,"metrics":{"__typename":"MessageMetrics","views":4248},"visibilityScope":"PUBLIC","canonicalUrl":null,"seoTitle":null,"seoDescription":null,"isEscalated":null,"placeholder":false,"originalMessageForPlaceholder":null,"messagePolicies":{"__typename":"MessagePolicies","canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}},"archivalData":null,"searchSnippet":"Hello Dropbox team, \n \n I have set up a small app as a python script which runs continuously on my server, and which needs to read some files that I store on my Dropbox storage space, in the f...","replies":{"__typename":"MessageConnection","edges":[{"__typename":"MessageEdge","cursor":"MjQuMTF8Mi4xfGl8MTB8NTI6MXxpbnQsNTE0MjU2LDUxNDI1Ng","node":{"__ref":"ForumReplyMessage:message:514256"}},{"__typename":"MessageEdge","cursor":"MjQuMTF8Mi4xfGl8MTB8NTI6MXxpbnQsNTE0MjU2LDUxNDQ3MQ","node":{"__ref":"AcceptedSolutionMessage:message:514471"}}],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"customFields":[]},"Conversation:conversation:514249":{"__typename":"Conversation","id":"conversation:514249","solved":true,"topic":{"__ref":"ForumTopicMessage:message:514249"},"lastPostingActivityTime":"2023-05-05T11:40:14.931-07:00","lastPostTime":"2023-05-05T11:40:14.931-07:00","unreadReplyCount":13,"isSubscribed":false},"ModerationData:moderation_data:514249":{"__typename":"ModerationData","id":"moderation_data:514249","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"Revision:revision:514249_3":{"__typename":"Revision","id":"revision:514249_3","lastEditTime":"2021-04-19T01:08:44.264-07:00"},"CachedAsset:theme:customTheme1-1737547810384":{"__typename":"CachedAsset","id":"theme:customTheme1-1737547810384","value":{"id":"customTheme1","animation":{"fast":"150ms","normal":"250ms","slow":"500ms","slowest":"750ms","function":"cubic-bezier(0.07, 0.91, 0.51, 1)","__typename":"AnimationThemeSettings"},"avatar":{"borderRadius":"50%","collections":["custom"],"__typename":"AvatarThemeSettings"},"basics":{"browserIcon":{"imageAssetName":"DBX_Logo_512-1733312516365.png","imageLastModified":"1733312518563","__typename":"ThemeAsset"},"customerLogo":{"imageAssetName":"DBLogoLong-1701789450005.png","imageLastModified":"1701789453105","__typename":"ThemeAsset"},"maximumWidthOfPageContent":"1200px","oneColumnNarrowWidth":"800px","gridGutterWidthMd":"30px","gridGutterWidthXs":"10px","pageWidthStyle":"WIDTH_OF_BROWSER","__typename":"BasicsThemeSettings"},"buttons":{"borderRadiusSm":"0","borderRadius":"0","borderRadiusLg":"0","paddingY":"5px","paddingYLg":"7px","paddingYHero":"var(--lia-bs-btn-padding-y-lg)","paddingX":"12px","paddingXLg":"16px","paddingXHero":"60px","fontStyle":"NORMAL","fontWeight":"400","textTransform":"NONE","disabledOpacity":0.5,"primaryTextColor":"var(--lia-bs-white)","primaryTextHoverColor":"var(--lia-bs-white)","primaryTextActiveColor":"var(--lia-bs-white)","primaryBgColor":"var(--lia-bs-primary)","primaryBgHoverColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) * 0.85))","primaryBgActiveColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) * 0.7))","primaryBorder":"1px solid transparent","primaryBorderHover":"1px solid transparent","primaryBorderActive":"1px solid transparent","primaryBorderFocus":"1px solid var(--lia-bs-white)","primaryBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","secondaryTextColor":"var(--lia-bs-gray-900)","secondaryTextHoverColor":"hsl(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), calc(var(--lia-bs-gray-900-l) * 0.95))","secondaryTextActiveColor":"hsl(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), calc(var(--lia-bs-gray-900-l) * 0.9))","secondaryBgColor":"var(--lia-bs-gray-300)","secondaryBgHoverColor":"hsl(var(--lia-bs-gray-300-h), var(--lia-bs-gray-300-s), calc(var(--lia-bs-gray-300-l) * 0.96))","secondaryBgActiveColor":"hsl(var(--lia-bs-gray-300-h), var(--lia-bs-gray-300-s), calc(var(--lia-bs-gray-300-l) * 0.92))","secondaryBorder":"1px solid transparent","secondaryBorderHover":"1px solid transparent","secondaryBorderActive":"1px solid transparent","secondaryBorderFocus":"1px solid transparent","secondaryBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","tertiaryTextColor":"var(--lia-bs-gray-900)","tertiaryTextHoverColor":"hsl(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), calc(var(--lia-bs-gray-900-l) * 0.95))","tertiaryTextActiveColor":"hsl(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), calc(var(--lia-bs-gray-900-l) * 0.9))","tertiaryBgColor":"transparent","tertiaryBgHoverColor":"transparent","tertiaryBgActiveColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.04)","tertiaryBorder":"1px solid transparent","tertiaryBorderHover":"1px solid hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","tertiaryBorderActive":"1px solid transparent","tertiaryBorderFocus":"1px solid transparent","tertiaryBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","destructiveTextColor":"var(--lia-bs-gray-700)","destructiveTextHoverColor":"hsl(var(--lia-bs-gray-700-h), var(--lia-bs-gray-700-s), calc(var(--lia-bs-gray-700-l) * 0.95))","destructiveTextActiveColor":"hsl(var(--lia-bs-gray-700-h), var(--lia-bs-gray-700-s), calc(var(--lia-bs-gray-700-l) * 0.9))","destructiveBgColor":"var(--lia-bs-gray-200)","destructiveBgHoverColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.96))","destructiveBgActiveColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.92))","destructiveBorder":"1px solid transparent","destructiveBorderHover":"1px solid transparent","destructiveBorderActive":"1px solid transparent","destructiveBorderFocus":"1px solid transparent","destructiveBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","__typename":"ButtonsThemeSettings"},"border":{"color":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","mainContent":"NONE","sideContent":"NONE","radiusSm":"0","radius":"0","radiusLg":"0","radius50":"100vw","__typename":"BorderThemeSettings"},"boxShadow":{"xs":"0 0 0 1px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.08), 0 3px 0 -1px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.16)","sm":"0 2px 4px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.12)","md":"0 5px 15px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.3)","lg":"0 10px 30px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.3)","__typename":"BoxShadowThemeSettings"},"cards":{"bgColor":"var(--lia-panel-bg-color)","borderRadius":"var(--lia-panel-border-radius)","boxShadow":"var(--lia-box-shadow-xs)","__typename":"CardsThemeSettings"},"chip":{"maxWidth":"300px","height":"30px","__typename":"ChipThemeSettings"},"coreTypes":{"defaultMessageLinkColor":"var(--lia-bs-link-color)","defaultMessageLinkDecoration":"none","defaultMessageLinkFontStyle":"NORMAL","defaultMessageLinkFontWeight":"400","defaultMessageFontStyle":"NORMAL","defaultMessageFontWeight":"400","forumColor":"#3DD3EE","forumFontFamily":"var(--lia-bs-font-family-base)","forumFontWeight":"var(--lia-default-message-font-weight)","forumLineHeight":"var(--lia-bs-line-height-base)","forumFontStyle":"var(--lia-default-message-font-style)","forumMessageLinkColor":"var(--lia-default-message-link-color)","forumMessageLinkDecoration":"var(--lia-default-message-link-decoration)","forumMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","forumMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","forumSolvedColor":"#B4DF1C","blogColor":"#FAD24B","blogFontFamily":"var(--lia-bs-font-family-base)","blogFontWeight":"var(--lia-default-message-font-weight)","blogLineHeight":"1.75","blogFontStyle":"var(--lia-default-message-font-style)","blogMessageLinkColor":"var(--lia-default-message-link-color)","blogMessageLinkDecoration":"var(--lia-default-message-link-decoration)","blogMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","blogMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","tkbColor":"#B4C8E1","tkbFontFamily":"var(--lia-bs-font-family-base)","tkbFontWeight":"var(--lia-default-message-font-weight)","tkbLineHeight":"1.75","tkbFontStyle":"var(--lia-default-message-font-style)","tkbMessageLinkColor":"var(--lia-default-message-link-color)","tkbMessageLinkDecoration":"var(--lia-default-message-link-decoration)","tkbMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","tkbMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","qandaColor":"#4099E2","qandaFontFamily":"var(--lia-bs-font-family-base)","qandaFontWeight":"var(--lia-default-message-font-weight)","qandaLineHeight":"var(--lia-bs-line-height-base)","qandaFontStyle":"var(--lia-default-message-link-font-style)","qandaMessageLinkColor":"var(--lia-default-message-link-color)","qandaMessageLinkDecoration":"var(--lia-default-message-link-decoration)","qandaMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","qandaMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","qandaSolvedColor":"#3FA023","ideaColor":"#F9A34B","ideaFontFamily":"var(--lia-bs-font-family-base)","ideaFontWeight":"var(--lia-default-message-font-weight)","ideaLineHeight":"var(--lia-bs-line-height-base)","ideaFontStyle":"var(--lia-default-message-font-style)","ideaMessageLinkColor":"var(--lia-default-message-link-color)","ideaMessageLinkDecoration":"var(--lia-default-message-link-decoration)","ideaMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","ideaMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","contestColor":"#FCC845","contestFontFamily":"var(--lia-bs-font-family-base)","contestFontWeight":"var(--lia-default-message-font-weight)","contestLineHeight":"var(--lia-bs-line-height-base)","contestFontStyle":"var(--lia-default-message-link-font-style)","contestMessageLinkColor":"var(--lia-default-message-link-color)","contestMessageLinkDecoration":"var(--lia-default-message-link-decoration)","contestMessageLinkFontStyle":"ITALIC","contestMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","occasionColor":"#D13A1F","occasionFontFamily":"var(--lia-bs-font-family-base)","occasionFontWeight":"var(--lia-default-message-font-weight)","occasionLineHeight":"var(--lia-bs-line-height-base)","occasionFontStyle":"var(--lia-default-message-font-style)","occasionMessageLinkColor":"var(--lia-default-message-link-color)","occasionMessageLinkDecoration":"var(--lia-default-message-link-decoration)","occasionMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","occasionMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","grouphubColor":"#C8AFF0","categoryColor":"#949494","communityColor":"#FFFFFF","productColor":"#949494","__typename":"CoreTypesThemeSettings"},"colors":{"black":"#000000","white":"#FFFFFF","gray100":"#F7F7F7","gray200":"#F7F7F7","gray300":"#E8E8E8","gray400":"#D9D9D9","gray500":"#CCCCCC","gray600":"#949494","gray700":"#707070","gray800":"#545454","gray900":"#333333","dark":"#545454","light":"#F7F7F7","primary":"#0061FE","secondary":"#333333","bodyText":"#1A1918","bodyBg":"#F7F5F2","info":"#3080FF","success":"#0F503C","warning":"#845909","danger":"#FA551E","alertSystem":"#FF6600","textMuted":"#707070","highlight":"#FFFCAD","outline":"var(--lia-bs-primary)","custom":["#C8AFF0","#B4DC19","#F9A34B","#FFAFA5","#3DD3EE","#B4C8E1","#FAD24B","#FA551E"],"__typename":"ColorsThemeSettings"},"divider":{"size":"3px","marginLeft":"4px","marginRight":"4px","borderRadius":"50%","bgColor":"var(--lia-bs-gray-600)","bgColorActive":"var(--lia-bs-gray-600)","__typename":"DividerThemeSettings"},"dropdown":{"fontSize":"var(--lia-bs-font-size-sm)","borderColor":"var(--lia-bs-border-color)","borderRadius":"var(--lia-bs-border-radius-sm)","dividerBg":"var(--lia-bs-gray-300)","itemPaddingY":"5px","itemPaddingX":"20px","headerColor":"var(--lia-bs-gray-700)","__typename":"DropdownThemeSettings"},"email":{"link":{"color":"#0069D4","hoverColor":"#0061c2","decoration":"none","hoverDecoration":"underline","__typename":"EmailLinkSettings"},"border":{"color":"#e4e4e4","__typename":"EmailBorderSettings"},"buttons":{"borderRadiusLg":"5px","paddingXLg":"16px","paddingYLg":"7px","fontWeight":"700","primaryTextColor":"#ffffff","primaryTextHoverColor":"#ffffff","primaryBgColor":"#0069D4","primaryBgHoverColor":"#005cb8","primaryBorder":"1px solid transparent","primaryBorderHover":"1px solid transparent","__typename":"EmailButtonsSettings"},"panel":{"borderRadius":"5px","borderColor":"#e4e4e4","__typename":"EmailPanelSettings"},"__typename":"EmailThemeSettings"},"emoji":{"skinToneDefault":"#ffcd43","skinToneLight":"#fae3c5","skinToneMediumLight":"#e2cfa5","skinToneMedium":"#daa478","skinToneMediumDark":"#a78058","skinToneDark":"#5e4d43","__typename":"EmojiThemeSettings"},"heading":{"color":"var(--lia-bs-body-color)","fontFamily":"SharpGroteskDB Bold","fontStyle":"NORMAL","fontWeight":"700","h1FontSize":"28px","h2FontSize":"22px","h3FontSize":"18px","h4FontSize":"16px","h5FontSize":"16px","h6FontSize":"16px","lineHeight":"1.3","subHeaderFontSize":"11px","subHeaderFontWeight":"500","h1LetterSpacing":"normal","h2LetterSpacing":"normal","h3LetterSpacing":"normal","h4LetterSpacing":"normal","h5LetterSpacing":"normal","h6LetterSpacing":"normal","subHeaderLetterSpacing":"2px","h1FontWeight":null,"h2FontWeight":null,"h3FontWeight":null,"h4FontWeight":null,"h5FontWeight":null,"h6FontWeight":null,"__typename":"HeadingThemeSettings"},"icons":{"size10":"10px","size12":"12px","size14":"14px","size16":"16px","size20":"20px","size24":"24px","size30":"30px","size40":"40px","size50":"50px","size60":"60px","size80":"80px","size120":"120px","size160":"160px","__typename":"IconsThemeSettings"},"imagePreview":{"bgColor":"var(--lia-bs-gray-900)","titleColor":"var(--lia-bs-white)","controlColor":"var(--lia-bs-white)","controlBgColor":"var(--lia-bs-gray-800)","__typename":"ImagePreviewThemeSettings"},"input":{"borderColor":"var(--lia-bs-gray-600)","disabledColor":"var(--lia-bs-gray-600)","focusBorderColor":"var(--lia-bs-primary)","labelMarginBottom":"10px","btnFontSize":"var(--lia-bs-font-size-sm)","focusBoxShadow":"0 0 0 3px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","checkLabelMarginBottom":"2px","checkboxBorderRadius":"0","borderRadiusSm":"0","borderRadius":"0","borderRadiusLg":"0","formTextMarginTop":"4px","textAreaBorderRadius":"0","activeFillColor":"var(--lia-bs-primary)","__typename":"InputThemeSettings"},"loading":{"dotDarkColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.2)","dotLightColor":"hsla(var(--lia-bs-white-h), var(--lia-bs-white-s), var(--lia-bs-white-l), 0.5)","barDarkColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.06)","barLightColor":"hsla(var(--lia-bs-white-h), var(--lia-bs-white-s), var(--lia-bs-white-l), 0.4)","__typename":"LoadingThemeSettings"},"link":{"color":"var(--lia-bs-primary)","hoverColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) - 10%))","decoration":"none","hoverDecoration":"underline","__typename":"LinkThemeSettings"},"listGroup":{"itemPaddingY":"15px","itemPaddingX":"15px","borderColor":"var(--lia-bs-gray-300)","__typename":"ListGroupThemeSettings"},"modal":{"contentTextColor":"var(--lia-bs-body-color)","contentBg":"var(--lia-bs-white)","backgroundBg":"var(--lia-bs-black)","smSize":"440px","mdSize":"760px","lgSize":"1080px","backdropOpacity":0.3,"contentBoxShadowXs":"var(--lia-bs-box-shadow-sm)","contentBoxShadow":"var(--lia-bs-box-shadow)","headerFontWeight":"700","__typename":"ModalThemeSettings"},"navbar":{"position":"FIXED","background":{"attachment":null,"clip":null,"color":"var(--lia-bs-white)","imageAssetName":null,"imageLastModified":"0","origin":null,"position":"CENTER_CENTER","repeat":"NO_REPEAT","size":"COVER","__typename":"BackgroundProps"},"backgroundOpacity":0.8,"paddingTop":"15px","paddingBottom":"15px","borderBottom":"1px solid var(--lia-bs-border-color)","boxShadow":"var(--lia-bs-box-shadow-sm)","brandMarginRight":"30px","brandMarginRightSm":"10px","brandLogoHeight":"30px","linkGap":"10px","linkJustifyContent":"flex-start","linkPaddingY":"5px","linkPaddingX":"10px","linkDropdownPaddingY":"9px","linkDropdownPaddingX":"var(--lia-nav-link-px)","linkColor":"var(--lia-bs-body-color)","linkHoverColor":"var(--lia-bs-primary)","linkFontSize":"var(--lia-bs-font-size-sm)","linkFontStyle":"NORMAL","linkFontWeight":"400","linkTextTransform":"NONE","linkLetterSpacing":"normal","linkBorderRadius":"var(--lia-bs-border-radius-sm)","linkBgColor":"transparent","linkBgHoverColor":"transparent","linkBorder":"none","linkBorderHover":"none","linkBoxShadow":"none","linkBoxShadowHover":"none","linkTextBorderBottom":"none","linkTextBorderBottomHover":"none","dropdownPaddingTop":"10px","dropdownPaddingBottom":"15px","dropdownPaddingX":"10px","dropdownMenuOffset":"2px","dropdownDividerMarginTop":"10px","dropdownDividerMarginBottom":"10px","dropdownBorderColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","controllerBgHoverColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.1)","controllerIconColor":"var(--lia-bs-body-color)","controllerIconHoverColor":"var(--lia-bs-body-color)","controllerTextColor":"var(--lia-nav-controller-icon-color)","controllerTextHoverColor":"var(--lia-nav-controller-icon-hover-color)","controllerHighlightColor":"hsla(30, 100%, 50%)","controllerHighlightTextColor":"var(--lia-yiq-light)","controllerBorderRadius":"var(--lia-border-radius-50)","hamburgerColor":"var(--lia-nav-controller-icon-color)","hamburgerHoverColor":"var(--lia-nav-controller-icon-color)","hamburgerBgColor":"transparent","hamburgerBgHoverColor":"transparent","hamburgerBorder":"none","hamburgerBorderHover":"none","collapseMenuMarginLeft":"20px","collapseMenuDividerBg":"var(--lia-nav-link-color)","collapseMenuDividerOpacity":0.16,"__typename":"NavbarThemeSettings"},"pager":{"textColor":"var(--lia-bs-link-color)","textFontWeight":"var(--lia-font-weight-md)","textFontSize":"var(--lia-bs-font-size-sm)","__typename":"PagerThemeSettings"},"panel":{"bgColor":"var(--lia-bs-white)","borderRadius":"var(--lia-bs-border-radius)","borderColor":"var(--lia-bs-border-color)","boxShadow":"none","__typename":"PanelThemeSettings"},"popover":{"arrowHeight":"8px","arrowWidth":"16px","maxWidth":"300px","minWidth":"100px","headerBg":"var(--lia-bs-white)","borderColor":"var(--lia-bs-border-color)","borderRadius":"var(--lia-bs-border-radius)","boxShadow":"0 0.5rem 1rem hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.15)","__typename":"PopoverThemeSettings"},"prism":{"color":"#000000","bgColor":"#f5f2f0","fontFamily":"var(--font-family-monospace)","fontSize":"var(--lia-bs-font-size-base)","fontWeightBold":"var(--lia-bs-font-weight-bold)","fontStyleItalic":"italic","tabSize":2,"highlightColor":"#b3d4fc","commentColor":"#62707e","punctuationColor":"#6f6f6f","namespaceOpacity":"0.7","propColor":"#990055","selectorColor":"#517a00","operatorColor":"#906736","operatorBgColor":"hsla(0, 0%, 100%, 0.5)","keywordColor":"#0076a9","functionColor":"#d3284b","variableColor":"#c14700","__typename":"PrismThemeSettings"},"rte":{"bgColor":"var(--lia-bs-white)","borderRadius":"var(--lia-panel-border-radius)","boxShadow":" var(--lia-panel-box-shadow)","customColor1":"#bfedd2","customColor2":"#fbeeb8","customColor3":"#f8cac6","customColor4":"#eccafa","customColor5":"#c2e0f4","customColor6":"#2dc26b","customColor7":"#f1c40f","customColor8":"#e03e2d","customColor9":"#b96ad9","customColor10":"#3598db","customColor11":"#169179","customColor12":"#e67e23","customColor13":"#ba372a","customColor14":"#843fa1","customColor15":"#236fa1","customColor16":"#ecf0f1","customColor17":"#ced4d9","customColor18":"#95a5a6","customColor19":"#7e8c8d","customColor20":"#34495e","customColor21":"#000000","customColor22":"#ffffff","defaultMessageHeaderMarginTop":"40px","defaultMessageHeaderMarginBottom":"20px","defaultMessageItemMarginTop":"0","defaultMessageItemMarginBottom":"30px","diffAddedColor":"hsla(170, 53%, 51%, 0.4)","diffChangedColor":"hsla(43, 97%, 63%, 0.4)","diffNoneColor":"hsla(0, 0%, 80%, 0.4)","diffRemovedColor":"hsla(9, 74%, 47%, 0.4)","specialMessageHeaderMarginTop":"40px","specialMessageHeaderMarginBottom":"20px","specialMessageItemMarginTop":"0","specialMessageItemMarginBottom":"30px","__typename":"RteThemeSettings"},"tags":{"bgColor":"var(--lia-bs-gray-200)","bgHoverColor":"var(--lia-bs-gray-400)","borderRadius":"var(--lia-bs-border-radius-sm)","color":"var(--lia-bs-body-color)","hoverColor":"var(--lia-bs-body-color)","fontWeight":"var(--lia-font-weight-md)","fontSize":"var(--lia-font-size-xxs)","textTransform":"UPPERCASE","letterSpacing":"0.5px","__typename":"TagsThemeSettings"},"toasts":{"borderRadius":"var(--lia-bs-border-radius)","paddingX":"12px","__typename":"ToastsThemeSettings"},"typography":{"fontFamilyBase":"Atlas Grotesk Regular","fontStyleBase":"NORMAL","fontWeightBase":"400","fontWeightLight":"300","fontWeightNormal":"400","fontWeightMd":"500","fontWeightBold":"700","letterSpacingSm":"normal","letterSpacingXs":"normal","lineHeightBase":"1.5","fontSizeBase":"16px","fontSizeXxs":"11px","fontSizeXs":"12px","fontSizeSm":"14px","fontSizeLg":"20px","fontSizeXl":"24px","smallFontSize":"14px","customFonts":[{"source":"SERVER","name":"DB Sharp Grotesk Variable","styles":[{"style":"NORMAL","weight":"500","__typename":"FontStyleData"}],"assetNames":["DBSharpGroteskVariable-normal-500.ttf"],"__typename":"CustomFont"},{"source":"SERVER","name":"SharpGroteskDB Bold","styles":[{"style":"NORMAL","weight":"700","__typename":"FontStyleData"},{"style":"NORMAL","weight":"400","__typename":"FontStyleData"}],"assetNames":["SharpGroteskDBBold-normal-700.woff2","SharpGroteskDBBold-normal-400.woff2"],"__typename":"CustomFont"},{"source":"SERVER","name":"Atlas Grotesk Regular","styles":[{"style":"NORMAL","weight":"400","__typename":"FontStyleData"},{"style":"NORMAL","weight":"700","__typename":"FontStyleData"},{"style":"ITALIC","weight":"400","__typename":"FontStyleData"},{"style":"ITALIC","weight":"700","__typename":"FontStyleData"}],"assetNames":["AtlasGroteskRegular-normal-400.woff2","AtlasGroteskRegular-normal-700.woff2","AtlasGroteskRegular-italic-400.woff2","AtlasGroteskRegular-italic-700.woff2"],"__typename":"CustomFont"}],"__typename":"TypographyThemeSettings"},"unstyledListItem":{"marginBottomSm":"5px","marginBottomMd":"10px","marginBottomLg":"15px","marginBottomXl":"20px","marginBottomXxl":"25px","__typename":"UnstyledListItemThemeSettings"},"yiq":{"light":"#ffffff","dark":"#000000","__typename":"YiqThemeSettings"},"colorLightness":{"primaryDark":0.36,"primaryLight":0.74,"primaryLighter":0.89,"primaryLightest":0.95,"infoDark":0.39,"infoLight":0.72,"infoLighter":0.85,"infoLightest":0.93,"successDark":0.24,"successLight":0.62,"successLighter":0.8,"successLightest":0.91,"warningDark":0.39,"warningLight":0.68,"warningLighter":0.84,"warningLightest":0.93,"dangerDark":0.41,"dangerLight":0.72,"dangerLighter":0.89,"dangerLightest":0.95,"__typename":"ColorLightnessThemeSettings"},"localOverride":false,"__typename":"Theme"},"localOverride":false},"CachedAsset:text:en_US-components/common/EmailVerification-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/common/EmailVerification-1737382615000","value":{"email.verification.title":"Email Verification Required","email.verification.message.update.email":"To participate in the community, you must first verify your email address. The verification email was sent to {email}. To change your email, visit My Settings.","email.verification.message.resend.email":"To participate in the community, you must first verify your email address. The verification email was sent to {email}. Resend email."},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Loading/LoadingDot-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Loading/LoadingDot-1737382615000","value":{"title":"Loading..."},"localOverride":false},"CachedAsset:quilt:dropbox.prod:pages/forums/ForumMessagePage:board:101000014-1737547808550":{"__typename":"CachedAsset","id":"quilt:dropbox.prod:pages/forums/ForumMessagePage:board:101000014-1737547808550","value":{"id":"ForumMessagePage_bVInxJ","container":{"id":"Common","headerProps":{"backgroundImageProps":null,"backgroundColor":null,"addComponents":null,"removeComponents":["community.widget.bannerWidget"],"componentOrder":null,"__typename":"QuiltContainerSectionProps"},"headerComponentProps":{"community.widget.breadcrumbWidget":{"disableLastCrumbForDesktop":false}},"footerProps":null,"footerComponentProps":null,"items":[{"id":"YLUzfi","layout":"MAIN_SIDE","bgColor":"transparent","showTitle":false,"showDescription":false,"textPosition":"CENTER","textColor":"var(--lia-bs-body-color)","sectionEditLevel":null,"bgImage":null,"disableSpacing":null,"edgeToEdgeDisplay":null,"fullHeight":null,"showBorder":null,"__typename":"MainSideQuiltSection","columnMap":{"main":[{"id":"messages.widget.topicWithThreadedReplyListWidget","className":"lia-topic-with-replies","props":{"editLevel":"CONFIGURE"},"__typename":"QuiltComponent"}],"side":[{"id":"nodes.widget.nodeActionButtonWidget","className":null,"props":{"buttonAlignment":"left","instanceId":null,"buttonStyle":"sm","actionButtonTitle":"Start a new discussion","lazyLoad":false,"buttonWidth":"full_width"},"__typename":"QuiltComponent"},{"id":"nodes.widget.nodeInformationWidget","className":null,"props":{"useWidgetTitle":true,"viewVariant":{"type":"card","props":{"useNodePostCount":true,"useNodeFollowersCount":true,"useNodeDescription":true,"useNodeTopicsCount":false,"useNodeAction":false,"useNodeMembersCount":false,"useNodeMembershipType":false,"useNodeTitle":false,"useNodeMembersCountText":true,"useNodeMembership":false,"useNodeCreationDate":false,"textAlignment":"center","useWidgetTitle":true,"useNodeOwners":false,"useNodeAvatar":true,"useNodeLatestActivityTime":true,"useClickableCard":false}},"alignment":"center","lazyLoad":false},"__typename":"QuiltComponent"},{"id":"custom.widget.Need_more_support","className":null,"props":{"widgetVisibility":"signedInOrAnonymous","useTitle":false,"useBackground":true,"title":"Need more support","lazyLoad":false},"__typename":"QuiltComponent"},{"id":"messages.widget.relatedContentWidget","className":null,"props":{"hideIfEmpty":true,"enablePagination":false,"useTitle":true,"listVariant":{"type":"unstyled","props":{"listItemSpacing":"xxl"}},"pageSize":5,"style":"compact","pagerVariant":{"type":"none"},"viewVariant":{"type":"inline","props":{"useRepliesCount":false,"useMedia":false,"useAuthorRank":false,"useNode":false,"boardIconSize":"24","useAuthorLoginLink":true,"useNodeLink":true,"usePreviewMedia":true,"timeStampType":"postTime","useTextBody":true,"useSolvedBadge":false,"subjectAs":"h6","renderPostTimeBeforeAuthor":true,"useAvatar":false,"useVideoPreview":false,"portraitClampBodyLines":3,"useCompactSpacing":true,"useTimeToRead":false,"useSpoilerFreeBody":true,"useKudosCount":false,"useViewCount":false,"useBody":false,"useTags":false,"clampSubjectLines":1,"useBoardIcon":true,"useMessageTimeLink":true,"useAuthorLogin":true}},"lazyLoad":false,"panelType":"standard"},"__typename":"QuiltComponent"},{"id":"messages.widget.messageListForNodeByRecentActivityWidget","className":null,"props":{"hideIfEmpty":true,"listVariant":{"type":"unstyled","props":{"listItemSpacing":"xxl"}},"useTitle":true,"addTags":false,"showTabs":false,"pageSize":5,"pagerVariant":{"type":"loadMore"},"style":"compact","viewVariant":{"type":"inline","props":{"useRepliesCount":false,"useMedia":false,"useAuthorRank":false,"useNode":false,"boardIconSize":"24","truncateBodyLength":-1,"useNodeLink":true,"usePreviewMedia":false,"timeStampType":"conversation.lastPostingActivityTime","avatarSize":"40","useTextBody":true,"useSolvedBadge":true,"subjectAs":"h6","renderPostTimeBeforeAuthor":true,"useAvatar":true,"useTimeToRead":false,"useSpoilerFreeBody":true,"useKudosCount":false,"useViewCount":false,"useBody":false,"useTags":false,"clampSubjectLines":1,"useBoardIcon":false,"useMessageTimeLink":true,"clampBodyLines":3,"useAuthorLogin":true,"useUnreadCount":false,"useNodeHoverCard":true,"useSearchSnippet":false}},"panelType":"standard","sorts":{"conversationLastPostingActivityTime":{"direction":"DESC"}},"lazyLoad":false},"__typename":"QuiltComponent"}],"__typename":"MainSideSectionColumns"}}],"__typename":"QuiltContainer"},"__typename":"Quilt","localOverride":false},"localOverride":false},"CachedAsset:text:en_US-pages/forums/ForumMessagePage-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-pages/forums/ForumMessagePage-1737382615000","value":{"title":"{contextMessageSubject} | {communityTitle}","errorMissing":"This message cannot be found","name":"Forum Message Page","section.message-list.title":"Forum Discussion","archivedMessageTitle":"This Content Has Been Archived","section.YLUzfi.title":"Forum Discussion","section.section-1709130958266.description":"","section.section-1709130958266.title":"","section.section-1720630512544.title":"","section.YLUzfi.description":"","section.jPblZp.description":"","section.message-list.description":"","section.section-1720630512544.description":"","section.jPblZp.title":""},"localOverride":false},"CachedAsset:quiltWrapper:dropbox.prod:Common:1737547739320":{"__typename":"CachedAsset","id":"quiltWrapper:dropbox.prod:Common:1737547739320","value":{"id":"Common","header":{"backgroundImageProps":{"assetName":null,"backgroundSize":"COVER","backgroundRepeat":"NO_REPEAT","backgroundPosition":"CENTER_CENTER","lastModified":null,"__typename":"BackgroundImageProps"},"backgroundColor":"var(--lia-bs-white)","items":[{"id":"community.widget.navbarWidget","props":{"showUserName":false,"showRegisterLink":true,"useIconLanguagePicker":true,"useLabelLanguagePicker":true,"style":{"boxShadow":"var(--lia-bs-box-shadow-sm)","linkFontWeight":"400","controllerHighlightColor":"#FA551E","dropdownDividerMarginBottom":"10px","hamburgerBorderHover":"none","linkFontSize":"14px","linkBoxShadowHover":"none","backgroundOpacity":1,"controllerBorderRadius":"var(--lia-border-radius-50)","hamburgerBgColor":"transparent","linkTextBorderBottom":"none","hamburgerColor":"var(--lia-nav-controller-icon-color)","brandLogoHeight":"30px","linkLetterSpacing":"normal","linkBgHoverColor":"transparent","collapseMenuDividerOpacity":0.16,"paddingBottom":"15px","dropdownPaddingBottom":"15px","dropdownMenuOffset":"2px","hamburgerBgHoverColor":"transparent","borderBottom":"1px solid var(--lia-bs-border-color)","hamburgerBorder":"none","dropdownPaddingX":"10px","brandMarginRightSm":"10px","linkBoxShadow":"none","linkJustifyContent":"flex-start","linkColor":"var(--lia-bs-body-color)","collapseMenuDividerBg":"var(--lia-nav-link-color)","dropdownPaddingTop":"10px","controllerHighlightTextColor":"var(--lia-yiq-dark)","controllerTextColor":"var(--lia-nav-controller-icon-color)","background":{"imageAssetName":"","color":"var(--lia-bs-white)","size":"COVER","repeat":"NO_REPEAT","position":"CENTER_CENTER","imageLastModified":""},"linkBorderRadius":"var(--lia-bs-border-radius-sm)","linkHoverColor":"var(--lia-bs-primary)","position":"FIXED","linkBorder":"none","linkTextBorderBottomHover":"0","brandMarginRight":"30px","hamburgerHoverColor":"var(--lia-nav-controller-icon-color)","linkBorderHover":"none","collapseMenuMarginLeft":"20px","linkFontStyle":"NORMAL","linkPaddingX":"10px","controllerTextHoverColor":"var(--lia-nav-controller-icon-hover-color)","paddingTop":"15px","linkPaddingY":"5px","linkTextTransform":"NONE","dropdownBorderColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","controllerBgHoverColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.1)","linkDropdownPaddingX":"var(--lia-nav-link-px)","linkBgColor":"transparent","linkDropdownPaddingY":"9px","controllerIconColor":"var(--lia-bs-body-color)","dropdownDividerMarginTop":"10px","linkGap":"10px","controllerIconHoverColor":"var(--lia-bs-body-color)"},"links":{"sideLinks":[{"children":[],"linkType":"INTERNAL","id":"migrated-link-10","params":{"categoryId":"101004000"},"routeName":"CategoryPage"},{"children":[],"linkType":"EXTERNAL","id":"migrated-link-12","url":"https://www.dropbox.com/help","target":"BLANK"},{"children":[],"linkType":"EXTERNAL","id":"external","url":"https://learn.dropbox.com/","target":"BLANK"},{"children":[],"linkType":"EXTERNAL","id":"migrated-link-13","url":"http://www.dropbox.com/support","target":"BLANK"},{"children":[],"linkType":"EXTERNAL","id":"migrated-link-11","url":"http://www.dropbox.com","target":"BLANK"}],"mainLinks":[{"children":[{"linkType":"INTERNAL","id":"101001016","params":{"boardId":"101001016","categoryId":"101001000"},"routeName":"ForumBoardPage"},{"linkType":"INTERNAL","id":"101001014","params":{"boardId":"101001014","categoryId":"101001000"},"routeName":"ForumBoardPage"},{"linkType":"INTERNAL","id":"101001013","params":{"boardId":"101001013","categoryId":"101001000"},"routeName":"ForumBoardPage"},{"linkType":"INTERNAL","id":"101001017","params":{"boardId":"101001017","categoryId":"101001000"},"routeName":"ForumBoardPage"},{"linkType":"INTERNAL","id":"101001018","params":{"boardId":"101001018","categoryId":"101001000"},"routeName":"ForumBoardPage"},{"linkType":"INTERNAL","id":"101001020","params":{"boardId":"101001020","categoryId":"101001000"},"routeName":"ForumBoardPage"},{"linkType":"INTERNAL","id":"101001019","params":{"boardId":"101001019","categoryId":"101001000"},"routeName":"ForumBoardPage"},{"linkType":"INTERNAL","id":"101001015","params":{"boardId":"101001015","categoryId":"101001000"},"routeName":"ForumBoardPage"},{"linkType":"INTERNAL","id":"101001012","params":{"boardId":"101001012","categoryId":"101001000"},"routeName":"ForumBoardPage"}],"linkType":"INTERNAL","id":"101001000","params":{"categoryId":"101001000"},"routeName":"CategoryPage"},{"children":[{"linkType":"INTERNAL","id":"101007-c1","params":{"boardId":"101007C1","categoryId":"101007"},"routeName":"ForumBoardPage"},{"linkType":"INTERNAL","id":"101000041","params":{"categoryId":"101000041"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"101003016","params":{"boardId":"101003016","categoryId":"101007"},"routeName":"ForumBoardPage"}],"linkType":"INTERNAL","id":"101007","params":{"categoryId":"101007"},"routeName":"CategoryPage"},{"children":[{"linkType":"INTERNAL","id":"dropbox-dash-link","params":{"groupHubId":"Dropbox-Dash"},"routeName":"GroupHubPage"},{"linkType":"INTERNAL","id":"1010-link","params":{"groupHubId":"1010"},"routeName":"GroupHubPage"},{"linkType":"INTERNAL","id":"music-link","params":{"groupHubId":"Music"},"routeName":"GroupHubPage"},{"linkType":"INTERNAL","id":"photography-link","params":{"groupHubId":"Photography"},"routeName":"GroupHubPage"},{"linkType":"INTERNAL","id":"dropboxfor-mac-o-s12","params":{"groupHubId":"DropboxforMacOS12"},"routeName":"GroupHubPage"},{"linkType":"INTERNAL","id":"1009-link","params":{"groupHubId":"1009"},"routeName":"GroupHubPage"},{"linkType":"INTERNAL","id":"1012-link","params":{"groupHubId":"1012"},"routeName":"GroupHubPage"},{"linkType":"INTERNAL","id":"1007-link","params":{"groupHubId":"1007"},"routeName":"GroupHubPage"},{"linkType":"INTERNAL","id":"super-user-link","params":{"groupHubId":"super-user"},"routeName":"GroupHubPage"}],"linkType":"INTERNAL","id":"101010","params":{"categoryId":"101010"},"routeName":"CategoryPage"},{"children":[],"linkType":"INTERNAL","id":"101002013","params":{"boardId":"101002013","categoryId":"English"},"routeName":"IdeaBoardPage"},{"children":[{"linkType":"INTERNAL","id":"english","params":{"categoryId":"English"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"french","params":{"categoryId":"French"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"german","params":{"categoryId":"German"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"spanish","params":{"categoryId":"Spanish"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"portuguese","params":{"categoryId":"Portuguese"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"japanese","params":{"categoryId":"Japanese"},"routeName":"CategoryPage"}],"linkType":"INTERNAL","id":"mxpez29397","params":{},"routeName":"CommunityPage"}]},"className":"QuiltComponent_lia-component-edit-mode__0nCcm","showSearchIcon":true,"languagePickerStyle":"iconAndLabel"},"__typename":"QuiltComponent"},{"id":"community.widget.breadcrumbWidget","props":{"backgroundColor":"var(--lia-bs-white)","linkHighlightColor":"#0061FE","visualEffects":{"showBottomBorder":true},"backgroundOpacity":100,"linkTextColor":"var(--lia-bs-gray-700)"},"__typename":"QuiltComponent"},{"id":"custom.widget.Announcement_bar","props":{"widgetVisibility":"signedInOrAnonymous","useTitle":true,"useBackground":true,"title":"","lazyLoad":false},"__typename":"QuiltComponent"},{"id":"community.widget.bannerWidget","props":{"backgroundColor":"var(--lia-bs-white)","visualEffects":{"showBottomBorder":true},"backgroundImageProps":{"backgroundSize":"COVER","backgroundPosition":"CENTER_CENTER","backgroundRepeat":"NO_REPEAT"},"fontColor":"var(--lia-bs-body-color)"},"__typename":"QuiltComponent"}],"__typename":"QuiltWrapperSection"},"footer":{"backgroundImageProps":{"assetName":null,"backgroundSize":"COVER","backgroundRepeat":"NO_REPEAT","backgroundPosition":"CENTER_CENTER","lastModified":null,"__typename":"BackgroundImageProps"},"backgroundColor":"var(--lia-bs-white)","items":[{"id":"custom.widget.Footer_Community_Home","props":{"widgetVisibility":"signedInOrAnonymous","useTitle":false,"useBackground":true,"title":"Footer","lazyLoad":false},"__typename":"QuiltComponent"},{"id":"custom.widget.Custom_Scripts","props":{"widgetVisibility":"signedInOrAnonymous","useTitle":true,"useBackground":false,"title":"","lazyLoad":false},"__typename":"QuiltComponent"},{"id":"custom.widget.Qualtrics","props":{"widgetVisibility":"signedInOrAnonymous","useTitle":true,"useBackground":false,"title":"","lazyLoad":false},"__typename":"QuiltComponent"}],"__typename":"QuiltWrapperSection"},"__typename":"QuiltWrapper","localOverride":false},"localOverride":false},"CachedAsset:text:en_US-components/common/ActionFeedback-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/common/ActionFeedback-1737382615000","value":{"joinedGroupHub.title":"Welcome","joinedGroupHub.message":"You are now a member of this group and are subscribed to updates.","groupHubInviteNotFound.title":"Invitation Not Found","groupHubInviteNotFound.message":"Sorry, we could not find your invitation to the group. The owner may have canceled the invite.","groupHubNotFound.title":"Group Not Found","groupHubNotFound.message":"The grouphub you tried to join does not exist. It may have been deleted.","existingGroupHubMember.title":"Already Joined","existingGroupHubMember.message":"You are already a member of this group.","accountLocked.title":"Account Locked","accountLocked.message":"Your account has been locked due to multiple failed attempts. Try again in {lockoutTime} minutes.","editedGroupHub.title":"Changes Saved","editedGroupHub.message":"Your group has been updated.","leftGroupHub.title":"Goodbye","leftGroupHub.message":"You are no longer a member of this group and will not receive future updates.","deletedGroupHub.title":"Deleted","deletedGroupHub.message":"The group has been deleted.","groupHubCreated.title":"Group Created","groupHubCreated.message":"{groupHubName} is ready to use","accountClosed.title":"Account Closed","accountClosed.message":"The account has been closed and you will now be redirected to the homepage","resetTokenExpired.title":"Reset Password Link has Expired","resetTokenExpired.message":"Try resetting your password again","invalidUrl.title":"Invalid URL","invalidUrl.message":"The URL you're using is not recognized. Verify your URL and try again.","accountClosedForUser.title":"Account Closed","accountClosedForUser.message":"{userName}'s account is closed","inviteTokenInvalid.title":"Invitation Invalid","inviteTokenInvalid.message":"Your invitation to the community has been canceled or expired.","inviteTokenError.title":"Invitation Verification Failed","inviteTokenError.message":"The url you are utilizing is not recognized. Verify your URL and try again","pageNotFound.title":"Access Denied","pageNotFound.message":"You do not have access to this area of the community or it doesn't exist","eventAttending.title":"Responded as Attending","eventAttending.message":"You'll be notified when there's new activity and reminded as the event approaches","eventInterested.title":"Responded as Interested","eventInterested.message":"You'll be notified when there's new activity and reminded as the event approaches","eventNotFound.title":"Event Not Found","eventNotFound.message":"The event you tried to respond to does not exist.","redirectToRelatedPage.title":"Showing Related Content","redirectToRelatedPageForBaseUsers.title":"Showing Related Content","redirectToRelatedPageForBaseUsers.message":"The content you are trying to access is archived","redirectToRelatedPage.message":"The content you are trying to access is archived","relatedUrl.archivalLink.flyoutMessage":"The content you are trying to access is archived View Archived Content"},"localOverride":false},"CachedAsset:component:custom.widget.Announcement_bar-en-1737547842463":{"__typename":"CachedAsset","id":"component:custom.widget.Announcement_bar-en-1737547842463","value":{"component":{"id":"custom.widget.Announcement_bar","template":{"id":"Announcement_bar","markupLanguage":"HTML","style":null,"texts":null,"defaults":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.Announcement_bar","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"TEXTHTML","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":null,"form":null},"localOverride":false},"CachedAsset:component:custom.widget.Need_more_support-en-1737547842463":{"__typename":"CachedAsset","id":"component:custom.widget.Need_more_support-en-1737547842463","value":{"component":{"id":"custom.widget.Need_more_support","template":{"id":"Need_more_support","markupLanguage":"HTML","style":null,"texts":null,"defaults":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.Need_more_support","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"TEXTHTML","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":null,"form":null},"localOverride":false},"CachedAsset:component:custom.widget.Footer_Community_Home-en-1737547842463":{"__typename":"CachedAsset","id":"component:custom.widget.Footer_Community_Home-en-1737547842463","value":{"component":{"id":"custom.widget.Footer_Community_Home","template":{"id":"Footer_Community_Home","markupLanguage":"HTML","style":null,"texts":null,"defaults":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.Footer_Community_Home","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"TEXTHTML","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":null,"form":null},"localOverride":false},"CachedAsset:component:custom.widget.Custom_Scripts-en-1737547842463":{"__typename":"CachedAsset","id":"component:custom.widget.Custom_Scripts-en-1737547842463","value":{"component":{"id":"custom.widget.Custom_Scripts","template":{"id":"Custom_Scripts","markupLanguage":"HANDLEBARS","style":null,"texts":null,"defaults":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.Custom_Scripts","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"CUSTOM","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":null,"form":null},"localOverride":false},"CachedAsset:component:custom.widget.Qualtrics-en-1737547842463":{"__typename":"CachedAsset","id":"component:custom.widget.Qualtrics-en-1737547842463","value":{"component":{"id":"custom.widget.Qualtrics","template":{"id":"Qualtrics","markupLanguage":"HANDLEBARS","style":null,"texts":null,"defaults":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"Qualtrics widget","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.Qualtrics","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"CUSTOM","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"dynamicByCoreNode":false,"description":"Qualtrics widget","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":null,"form":null},"localOverride":false},"CachedAsset:text:en_US-components/community/Breadcrumb-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/community/Breadcrumb-1737382615000","value":{"navLabel":"Breadcrumbs","dropdown":"Additional parent page navigation"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageBanner-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageBanner-1737382615000","value":{"messageMarkedAsSpam":"This post has been marked as spam","messageMarkedAsSpam@board:TKB":"This article has been marked as spam","messageMarkedAsSpam@board:BLOG":"This post has been marked as spam","messageMarkedAsSpam@board:FORUM":"This discussion has been marked as spam","messageMarkedAsSpam@board:OCCASION":"This event has been marked as spam","messageMarkedAsSpam@board:IDEA":"This idea has been marked as spam","manageSpam":"Manage Spam","messageMarkedAsAbuse":"This post has been marked as abuse","messageMarkedAsAbuse@board:TKB":"This article has been marked as abuse","messageMarkedAsAbuse@board:BLOG":"This post has been marked as abuse","messageMarkedAsAbuse@board:FORUM":"This discussion has been marked as abuse","messageMarkedAsAbuse@board:OCCASION":"This event has been marked as abuse","messageMarkedAsAbuse@board:IDEA":"This idea has been marked as abuse","preModCommentAuthorText":"This comment will be published as soon as it is approved","preModCommentModeratorText":"This comment is awaiting moderation","messageMarkedAsOther":"This post has been rejected due to other reasons","messageMarkedAsOther@board:TKB":"This article has been rejected due to other reasons","messageMarkedAsOther@board:BLOG":"This post has been rejected due to other reasons","messageMarkedAsOther@board:FORUM":"This discussion has been rejected due to other reasons","messageMarkedAsOther@board:OCCASION":"This event has been rejected due to other reasons","messageMarkedAsOther@board:IDEA":"This idea has been rejected due to other reasons","messageArchived":"This post was archived on {date}","relatedUrl":"View Related Content","relatedContentText":"Showing related content","archivedContentLink":"View Archived Content"},"localOverride":false},"CachedAsset:text:en_US-components/nodes/NodeActionButtonWidget-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/nodes/NodeActionButtonWidget-1737382615000","value":{"defaultActionButtonTitle":"Start a Conversation","actionButton.grouphub.startDiscussion":"Start a Discussion","actionButton.title@board:FORUM":"Start a Discussion","actionButton.title@board:BLOG":"Create a Blog Post","actionButton.title@board:TKB":"Create an Article","actionButton.title@board:OCCASION":"Create an Event","actionButton.title@board:IDEA":"Suggest an Idea","joinGroupHub":"Join Group","join.successHeader":"Welcome","join.successMessage":"You are now a member of this group and are subscribed to updates.","errorMessage":"An unidentified problem occurred during the action you took. Please try again later.","errorHeader":"Error - Action Failed"},"localOverride":false},"CachedAsset:text:en_US-components/nodes/NodeInformationWidget-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/nodes/NodeInformationWidget-1737382615000","value":{"WidgetTitle":"About {title}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/RelatedContentWidget-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/RelatedContentWidget-1737382615000","value":{"title":"Related Content","emptyDescription":"No content to show"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageListForNodeByRecentActivityWidget-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageListForNodeByRecentActivityWidget-1737382615000","value":{"title@userScope:other":"Recent Content","title@userScope:self":"Contributions","title@board:FORUM@userScope:other":"Recent Discussions","title@board:BLOG@userScope:other":"Recent Blogs","emptyDescription":"No content to show","MessageListForNodeByRecentActivityWidgetEditor.nodeScope.label":"Scope","title@instance:1718368859225":"Latest Ideas","title@instance:1722595940498":"Recent Content","title@instance:1722595986884":"Recent Content","title@instance:GhAQBO":"Recent Content","title@instance:bjQalH":"Recent Content","title@instance:1728316868378":"Posts & Replies"},"localOverride":false},"Conversation:conversation:818919":{"__typename":"Conversation","id":"conversation:818919","topic":{"__typename":"ForumTopicMessage","uid":818919},"lastPostingActivityTime":"2025-01-22T07:59:34.435-08:00","solved":false},"ForumTopicMessage:message:818919":{"__typename":"ForumTopicMessage","subject":"Can you create a webhook using the Dropbox API?","conversation":{"__ref":"Conversation:conversation:818919"},"id":"message:818919","revisionNum":1,"uid":818919,"depth":0,"board":{"__ref":"Forum:board:101000014"},"author":{"__typename":"User","uid":1899220,"login":"mergesandbox","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/m_assets/avatars/default/avatar-12.svg"}},"metrics":{"__typename":"MessageMetrics","views":23},"postTime":"2025-01-21T12:37:47.717-08:00","lastPublishTime":"2025-01-21T12:37:47.717-08:00","readOnly":false},"Conversation:conversation:798724":{"__typename":"Conversation","id":"conversation:798724","topic":{"__typename":"ForumTopicMessage","uid":798724},"lastPostingActivityTime":"2025-01-22T06:23:40.596-08:00","solved":false},"ForumTopicMessage:message:798724":{"__typename":"ForumTopicMessage","subject":"Direct database access via dropbox api v2","conversation":{"__ref":"Conversation:conversation:798724"},"id":"message:798724","revisionNum":3,"uid":798724,"depth":0,"board":{"__ref":"Forum:board:101000014"},"author":{"__typename":"User","uid":1530729,"login":"schrettinger","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/m_assets/avatars/default/avatar-8.svg"}},"metrics":{"__typename":"MessageMetrics","views":283},"postTime":"2024-10-03T04:15:09.818-07:00","lastPublishTime":"2024-10-04T08:03:09.436-07:00","readOnly":false},"Conversation:conversation:818729":{"__typename":"Conversation","id":"conversation:818729","topic":{"__typename":"ForumTopicMessage","uid":818729},"lastPostingActivityTime":"2025-01-21T03:42:21.469-08:00","solved":true},"ForumTopicMessage:message:818729":{"__typename":"ForumTopicMessage","subject":"Permission changes aren't persisted in my App.","conversation":{"__ref":"Conversation:conversation:818729"},"id":"message:818729","revisionNum":1,"uid":818729,"depth":0,"board":{"__ref":"Forum:board:101000014"},"author":{"__typename":"User","uid":1899007,"login":"pMatt1988","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/m_assets/avatars/default/avatar-10.svg"}},"metrics":{"__typename":"MessageMetrics","views":43},"postTime":"2025-01-20T08:45:17.460-08:00","lastPublishTime":"2025-01-20T08:45:17.460-08:00","readOnly":false},"Conversation:conversation:818549":{"__typename":"Conversation","id":"conversation:818549","topic":{"__typename":"ForumTopicMessage","uid":818549},"lastPostingActivityTime":"2025-01-20T04:21:18.585-08:00","solved":true},"ForumTopicMessage:message:818549":{"__typename":"ForumTopicMessage","subject":"Can't test dropbox choser api via localhost","conversation":{"__ref":"Conversation:conversation:818549"},"id":"message:818549","revisionNum":2,"uid":818549,"depth":0,"board":{"__ref":"Forum:board:101000014"},"author":{"__typename":"User","uid":1898767,"login":"ricardotimmr","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/m_assets/avatars/default/avatar-1.svg"}},"metrics":{"__typename":"MessageMetrics","views":56},"postTime":"2025-01-18T07:50:19.547-08:00","lastPublishTime":"2025-01-18T07:51:19.836-08:00","readOnly":false},"Conversation:conversation:818074":{"__typename":"Conversation","id":"conversation:818074","topic":{"__typename":"ForumTopicMessage","uid":818074},"lastPostingActivityTime":"2025-01-16T11:49:15.369-08:00","solved":false},"ForumTopicMessage:message:818074":{"__typename":"ForumTopicMessage","subject":"Unable to refresh access token without refresh token and app key","conversation":{"__ref":"Conversation:conversation:818074"},"id":"message:818074","revisionNum":1,"uid":818074,"depth":0,"board":{"__ref":"Forum:board:101000014"},"author":{"__typename":"User","uid":1898340,"login":"almazultra","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/m_assets/avatars/default/avatar-6.svg"}},"metrics":{"__typename":"MessageMetrics","views":49},"postTime":"2025-01-15T06:55:23.484-08:00","lastPublishTime":"2025-01-15T06:55:23.484-08:00","readOnly":false},"Category:category:101001000":{"__typename":"Category","id":"category:101001000","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"entityType":"CATEGORY","displayId":"101001000","nodeType":"category","depth":2,"title":"Help","shortTitle":"Help"},"Idea:board:101002013":{"__typename":"Idea","id":"board:101002013","boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"ideaPolicies":{"__typename":"IdeaPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:101004000":{"__typename":"Category","id":"category:101004000","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Forum:board:101003016":{"__typename":"Forum","id":"board:101003016","forumPolicies":{"__typename":"ForumPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:French":{"__typename":"Category","id":"category:French","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:German":{"__typename":"Category","id":"category:German","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Spanish":{"__typename":"Category","id":"category:Spanish","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Portuguese":{"__typename":"Category","id":"category:Portuguese","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Japanese":{"__typename":"Category","id":"category:Japanese","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Forum:board:101007C1":{"__typename":"Forum","id":"board:101007C1","forumPolicies":{"__typename":"ForumPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Forum:board:101001012":{"__typename":"Forum","id":"board:101001012","forumPolicies":{"__typename":"ForumPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Forum:board:101001013":{"__typename":"Forum","id":"board:101001013","forumPolicies":{"__typename":"ForumPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Forum:board:101001014":{"__typename":"Forum","id":"board:101001014","forumPolicies":{"__typename":"ForumPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"entityType":"FORUM","displayId":"101001014","nodeType":"board","depth":3,"conversationStyle":"FORUM","title":"Create, upload, and share","shortTitle":"Create, upload, and share","parent":{"__ref":"Category:category:101001000"},"userContext":{"__typename":"NodeUserContext","canAddAttachments":false,"canUpdateNode":false,"canPostMessages":false,"isSubscribed":false},"avatar":null,"description":"Find help to solve issues with creating, uploading, and sharing files and folders in Dropbox. Get support and advice from the Dropbox Community.","eventPath":"category:101001000/category:English/community:mxpez29397board:101001014/"},"Forum:board:101001015":{"__typename":"Forum","id":"board:101001015","forumPolicies":{"__typename":"ForumPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Forum:board:101001016":{"__typename":"Forum","id":"board:101001016","forumPolicies":{"__typename":"ForumPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"entityType":"FORUM","displayId":"101001016","nodeType":"board","depth":3,"conversationStyle":"FORUM","title":"Apps and Installations","shortTitle":"Apps and Installations","parent":{"__ref":"Category:category:101001000"},"userContext":{"__typename":"NodeUserContext","canAddAttachments":false,"canUpdateNode":false,"canPostMessages":false,"isSubscribed":false},"avatar":null,"description":"Have a question about a Dropbox app or installation? Reach out to the Dropbox Community and get solutions, help, and advice from members.","eventPath":"category:101001000/category:English/community:mxpez29397board:101001016/"},"Forum:board:101001017":{"__typename":"Forum","id":"board:101001017","forumPolicies":{"__typename":"ForumPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"entityType":"FORUM","displayId":"101001017","nodeType":"board","depth":3,"conversationStyle":"FORUM","title":"Integrations","shortTitle":"Integrations","parent":{"__ref":"Category:category:101001000"},"userContext":{"__typename":"NodeUserContext","canAddAttachments":false,"canUpdateNode":false,"canPostMessages":false,"isSubscribed":false},"avatar":null,"description":"Find solutions to issues with third-party integrations from the Dropbox Community. Share advice and help members with their integration questions.","eventPath":"category:101001000/category:English/community:mxpez29397board:101001017/"},"Forum:board:101001018":{"__typename":"Forum","id":"board:101001018","forumPolicies":{"__typename":"ForumPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"entityType":"FORUM","displayId":"101001018","nodeType":"board","depth":3,"conversationStyle":"FORUM","title":"Plans and Subscriptions","shortTitle":"Plans and Subscriptions","parent":{"__ref":"Category:category:101001000"},"userContext":{"__typename":"NodeUserContext","canAddAttachments":false,"canUpdateNode":false,"canPostMessages":false,"isSubscribed":false},"avatar":null,"description":"Ask the Dropbox Community for help if you have questions about your Dropbox plan or subscription. Find solutions and share advice with members.","eventPath":"category:101001000/category:English/community:mxpez29397board:101001018/"},"Forum:board:101001019":{"__typename":"Forum","id":"board:101001019","forumPolicies":{"__typename":"ForumPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Forum:board:101001020":{"__typename":"Forum","id":"board:101001020","forumPolicies":{"__typename":"ForumPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"GroupHub:grouphub:Dropbox-Dash":{"__typename":"GroupHub","id":"grouphub:Dropbox-Dash","grouphubPolicies":{"__typename":"GroupHubPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"GroupHub:grouphub:Photography":{"__typename":"GroupHub","id":"grouphub:Photography","grouphubPolicies":{"__typename":"GroupHubPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"GroupHub:grouphub:Music":{"__typename":"GroupHub","id":"grouphub:Music","grouphubPolicies":{"__typename":"GroupHubPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:101010":{"__typename":"Category","id":"category:101010","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"GroupHub:grouphub:1007":{"__typename":"GroupHub","id":"grouphub:1007","grouphubPolicies":{"__typename":"GroupHubPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"GroupHub:grouphub:1010":{"__typename":"GroupHub","id":"grouphub:1010","grouphubPolicies":{"__typename":"GroupHubPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"GroupHub:grouphub:1009":{"__typename":"GroupHub","id":"grouphub:1009","grouphubPolicies":{"__typename":"GroupHubPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"GroupHub:grouphub:1012":{"__typename":"GroupHub","id":"grouphub:1012","grouphubPolicies":{"__typename":"GroupHubPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Rank:rank:39":{"__typename":"Rank","id":"rank:39","position":22,"name":"Collaborator | Level 10","color":"333333","icon":null,"rankStyle":"TEXT"},"User:user:208659":{"__typename":"User","id":"user:208659","uid":208659,"login":"fssbob","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2015-07-29T06:54:00.000-07:00","confirmEmailStatus":null,"registrationAccessLevel":null,"ssoRegistrationFields":[]},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/m_assets/avatars/default/avatar-7.svg"},"rank":{"__ref":"Rank:rank:39"},"messagesCount":47,"kudosGivenCount":7,"kudosReceivedCount":48,"kudosWeight":1,"ssoId":null,"followersCount":null,"solutionsCount":1,"entityType":"USER","eventPath":"community:mxpez29397/user:208659"},"ForumTopicMessage:message:737660":{"__typename":"ForumTopicMessage","uid":737660,"subject":"Migrating to a New Mac Using the Apple Migration Assistant Program","id":"message:737660","revisionNum":2,"repliesCount":3,"author":{"__ref":"User:user:208659"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:101001016"},"conversation":{"__ref":"Conversation:conversation:737660"},"moderationData":{"__ref":"ModerationData:moderation_data:737660"},"postTime":"2023-12-17T22:26:49.130-08:00","lastPublishTime":"2023-12-18T02:16:17.037-08:00","readOnly":false,"metrics":{"__typename":"MessageMetrics","views":3233},"placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_TOPIC","eventPath":"category:101001000/category:English/community:mxpez29397board:101001016/message:737660"},"Conversation:conversation:737660":{"__typename":"Conversation","id":"conversation:737660","solved":true,"topic":{"__ref":"ForumTopicMessage:message:737660"},"lastPostingActivityTime":"2023-12-18T22:13:39.035-08:00","lastPostTime":"2023-12-18T22:13:39.035-08:00"},"ModerationData:moderation_data:737660":{"__typename":"ModerationData","id":"moderation_data:737660","status":"UNMODERATED","rejectReason":null},"RelatedContentMessage:RelatedContentMessage:737660":{"__typename":"RelatedContentMessage","id":"RelatedContentMessage:737660","relatedMessage":{"__ref":"ForumTopicMessage:message:737660"}},"Rank:rank:47":{"__typename":"Rank","id":"rank:47","position":30,"name":"New member | Level 2","color":"333333","icon":null,"rankStyle":"TEXT"},"User:user:1588117":{"__typename":"User","id":"user:1588117","uid":1588117,"login":"JDeegan","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2022-11-03T01:56:53.816-07:00","confirmEmailStatus":null,"registrationAccessLevel":null,"ssoRegistrationFields":[]},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/m_assets/avatars/default/avatar-8.svg"},"rank":{"__ref":"Rank:rank:47"},"messagesCount":1,"kudosGivenCount":0,"kudosReceivedCount":2,"kudosWeight":1,"ssoId":null,"followersCount":null,"solutionsCount":0,"entityType":"USER","eventPath":"community:mxpez29397/user:1588117"},"ForumTopicMessage:message:633814":{"__typename":"ForumTopicMessage","uid":633814,"subject":"Migrate OneDrive files to Dropbox","id":"message:633814","revisionNum":2,"repliesCount":2,"author":{"__ref":"User:user:1588117"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:101001014"},"conversation":{"__ref":"Conversation:conversation:633814"},"moderationData":{"__ref":"ModerationData:moderation_data:633814"},"postTime":"2022-11-03T02:02:08.820-07:00","lastPublishTime":"2022-11-03T05:11:09.927-07:00","readOnly":true,"metrics":{"__typename":"MessageMetrics","views":13024},"placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_TOPIC","eventPath":"category:101001000/category:English/community:mxpez29397board:101001014/message:633814"},"Conversation:conversation:633814":{"__typename":"Conversation","id":"conversation:633814","solved":true,"topic":{"__ref":"ForumTopicMessage:message:633814"},"lastPostingActivityTime":"2023-03-22T01:37:29.799-07:00","lastPostTime":"2023-03-22T01:37:29.799-07:00"},"ModerationData:moderation_data:633814":{"__typename":"ModerationData","id":"moderation_data:633814","status":"APPROVED","rejectReason":null},"RelatedContentMessage:RelatedContentMessage:633814":{"__typename":"RelatedContentMessage","id":"RelatedContentMessage:633814","relatedMessage":{"__ref":"ForumTopicMessage:message:633814"}},"User:user:1886079":{"__typename":"User","id":"user:1886079","uid":1886079,"login":"Stachenscarfen","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2024-11-03T06:42:21.294-08:00","confirmEmailStatus":null,"registrationAccessLevel":null,"ssoRegistrationFields":[]},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/m_assets/avatars/default/avatar-4.svg"},"rank":{"__ref":"Rank:rank:47"},"messagesCount":1,"kudosGivenCount":1,"kudosReceivedCount":0,"kudosWeight":1,"ssoId":null,"followersCount":null,"solutionsCount":0,"entityType":"USER","eventPath":"community:mxpez29397/user:1886079"},"ForumTopicMessage:message:805075":{"__typename":"ForumTopicMessage","uid":805075,"subject":"Unknown folder appearing: \"Migrated Paper Docs\"","id":"message:805075","revisionNum":2,"repliesCount":1,"author":{"__ref":"User:user:1886079"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:101001017"},"conversation":{"__ref":"Conversation:conversation:805075"},"moderationData":{"__ref":"ModerationData:moderation_data:805075"},"postTime":"2024-11-03T07:25:19.611-08:00","lastPublishTime":"2024-11-04T00:14:25.953-08:00","readOnly":false,"metrics":{"__typename":"MessageMetrics","views":626},"placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_TOPIC","eventPath":"category:101001000/category:English/community:mxpez29397board:101001017/message:805075"},"Conversation:conversation:805075":{"__typename":"Conversation","id":"conversation:805075","solved":true,"topic":{"__ref":"ForumTopicMessage:message:805075"},"lastPostingActivityTime":"2024-11-04T00:14:25.953-08:00","lastPostTime":"2024-11-03T08:26:38.394-08:00"},"ModerationData:moderation_data:805075":{"__typename":"ModerationData","id":"moderation_data:805075","status":"UNMODERATED","rejectReason":null},"RelatedContentMessage:RelatedContentMessage:805075":{"__typename":"RelatedContentMessage","id":"RelatedContentMessage:805075","relatedMessage":{"__ref":"ForumTopicMessage:message:805075"}},"Rank:rank:44":{"__typename":"Rank","id":"rank:44","position":27,"name":"Helpful | Level 5","color":"333333","icon":null,"rankStyle":"TEXT"},"User:user:164559":{"__typename":"User","id":"user:164559","uid":164559,"login":"Rick C.21","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2016-03-03T23:15:00.000-08:00","confirmEmailStatus":null,"registrationAccessLevel":null,"ssoRegistrationFields":[]},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/m_assets/avatars/default/avatar-3.svg"},"rank":{"__ref":"Rank:rank:44"},"messagesCount":5,"kudosGivenCount":0,"kudosReceivedCount":0,"kudosWeight":1,"ssoId":null,"followersCount":null,"solutionsCount":1,"entityType":"USER","eventPath":"community:mxpez29397/user:164559"},"ForumTopicMessage:message:692490":{"__typename":"ForumTopicMessage","uid":692490,"subject":"Migrate to TEAMS account","id":"message:692490","revisionNum":3,"repliesCount":5,"author":{"__ref":"User:user:164559"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:101001018"},"conversation":{"__ref":"Conversation:conversation:692490"},"moderationData":{"__ref":"ModerationData:moderation_data:692490"},"postTime":"2023-06-17T12:09:56.685-07:00","lastPublishTime":"2023-06-19T01:15:54.611-07:00","readOnly":true,"metrics":{"__typename":"MessageMetrics","views":1586},"placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_TOPIC","eventPath":"category:101001000/category:English/community:mxpez29397board:101001018/message:692490"},"Conversation:conversation:692490":{"__typename":"Conversation","id":"conversation:692490","solved":true,"topic":{"__ref":"ForumTopicMessage:message:692490"},"lastPostingActivityTime":"2023-06-20T14:04:46.028-07:00","lastPostTime":"2023-06-20T14:04:46.028-07:00"},"ModerationData:moderation_data:692490":{"__typename":"ModerationData","id":"moderation_data:692490","status":"APPROVED","rejectReason":null},"RelatedContentMessage:RelatedContentMessage:692490":{"__typename":"RelatedContentMessage","id":"RelatedContentMessage:692490","relatedMessage":{"__ref":"ForumTopicMessage:message:692490"}},"Rank:rank:43":{"__typename":"Rank","id":"rank:43","position":26,"name":"Helpful | Level 6","color":"333333","icon":null,"rankStyle":"TEXT"},"User:user:1593561":{"__typename":"User","id":"user:1593561","uid":1593561,"login":"Smoo","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2022-11-21T16:55:33.158-08:00","confirmEmailStatus":null,"registrationAccessLevel":null,"ssoRegistrationFields":[]},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/m_assets/avatars/default/avatar-8.svg"},"rank":{"__ref":"Rank:rank:43"},"messagesCount":7,"kudosGivenCount":0,"kudosReceivedCount":0,"kudosWeight":1,"ssoId":null,"followersCount":null,"solutionsCount":1,"entityType":"USER","eventPath":"community:mxpez29397/user:1593561"},"ForumTopicMessage:message:638346":{"__typename":"ForumTopicMessage","uid":638346,"subject":"SharePoint Online migration Dropbox error","id":"message:638346","revisionNum":2,"repliesCount":13,"author":{"__ref":"User:user:1593561"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:101001017"},"conversation":{"__ref":"Conversation:conversation:638346"},"moderationData":{"__ref":"ModerationData:moderation_data:638346"},"postTime":"2022-11-21T16:59:38.293-08:00","lastPublishTime":"2022-11-21T22:06:24.481-08:00","readOnly":false,"metrics":{"__typename":"MessageMetrics","views":4155},"placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_TOPIC","eventPath":"category:101001000/category:English/community:mxpez29397board:101001017/message:638346"},"Conversation:conversation:638346":{"__typename":"Conversation","id":"conversation:638346","solved":true,"topic":{"__ref":"ForumTopicMessage:message:638346"},"lastPostingActivityTime":"2023-02-27T17:49:02.690-08:00","lastPostTime":"2023-02-27T17:49:02.690-08:00"},"ModerationData:moderation_data:638346":{"__typename":"ModerationData","id":"moderation_data:638346","status":"APPROVED","rejectReason":null},"RelatedContentMessage:RelatedContentMessage:638346":{"__typename":"RelatedContentMessage","id":"RelatedContentMessage:638346","relatedMessage":{"__ref":"ForumTopicMessage:message:638346"}},"QueryVariables:TopicReplyList:message:514249:3":{"__typename":"QueryVariables","id":"TopicReplyList:message:514249:3","value":{"id":"message:514249","first":10,"sorts":{"postTime":{"direction":"ASC"}},"repliesFirst":3,"repliesFirstDepthThree":1,"repliesSorts":{"postTime":{"direction":"ASC"}},"useAvatar":true,"useAuthorLogin":true,"useAuthorRank":true,"useBody":true,"useKudosCount":true,"useTimeToRead":false,"useMedia":false,"useReadOnlyIcon":false,"useRepliesCount":true,"useSearchSnippet":false,"useAcceptedSolutionButton":true,"useSolvedBadge":false,"useAttachments":false,"attachmentsFirst":5,"useTags":true,"useNodeAncestors":false,"useUserHoverCard":true,"useNodeHoverCard":false,"useModerationStatus":true,"usePreviewSubjectModal":false,"useMessageStatus":true}},"ROOT_MUTATION":{"__typename":"Mutation"},"CachedAsset:text:en_US-components/community/Navbar-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/community/Navbar-1737382615000","value":{"1007":"Business Team Members","101007":"Discover","101010":"Groups","101000041":"Developer & API","101001000":"Help","101001012":"View, download, and export","101001013":"Delete, edit, and organize","101001014":"Create, upload, and share","101001015":"Storage Space","101001016":"Apps and Installations","101001017":"Integrations","101001018":"Plans and Subscriptions","101001019":"Settings and Preferences","101001020":"Security and Permissions","101002013":"Ideas","101003016":"Desktop client builds","102001000":"Poser une question","community":"Community Home","inbox":"Inbox","manageContent":"Manage Content","tos":"Terms of Service","forgotPassword":"Forgot Password","themeEditor":"Theme Editor","edit":"Edit Navigation Bar","skipContent":"Skip to content","migrated-link-9":"日本語","external-1":"Languages","german":"Deutsch","102009-g1":"Nouvel utilisateur","migrated-link-7":"Español","migrated-link-8":"Português","1007-link":"Business Team Members","migrated-link-1":"Discover","migrated-link-2":"Ideas","migrated-link-0":"Help","migrated-link-5":"Français","migrated-link-6":"Deutsch","dropbox-ai":"Dropbox AI","migrated-link-3":"Groups","migrated-link-4":"🌎","photographers":"Photographers","group-hub-test":"Group Hub Test","1010-link":"Dropbox for Beginners","japanese":"日本語","english":"English","multiple-sections-group":"Multiple Sections Group","french":"Français","music-link":"Musicians","plans-and-subscriptions":"Plans and Subscriptions","tips-and-tricks":"Tips & Tricks","dropbox-dash-link":"Dropbox Dash","dropboxfor-mac-o-s12-link":"Dropbox for macOS","delete-edit-organize":"Delete, edit, and organize","mxpez29397":"Languages","secret-hidden-group":"Secret Hidden Group","external":"↗ Learn","view-download-and-export":"View, download, and export","integrations":"Integrations","security-and-permissions-1":"Settings and Preferences","1012-link":"Dropbox/Microsoft Co-Authoring Beta","musicians":"Musicians","security-and-permissions":"Security and Permissions","do-more-with-dropbox":"Do more with Dropbox","1009-link":"Dropbox Replay","create-upload-share":"Create, upload, and share","migrated-link-12":"↗ Help Center","developer-and-api":"Developer & API","migrated-link-13":"↗ Contact Support","closed-group-test":"Closed Group Test","closed-gourp":"Closed Group","dropbox-dash-beta":"Dropbox Dash Beta","portuguese":"Português","storage-space":"Storage Space","spanish":"Español","test-open-group":"Open Group","apps-and-installations":"Apps and Installations","migrated-link-10":"About the Community","test-group":"Test Group","dropboxfor-mac-o-s12":"Dropbox for MacOS","migrated-link-11":"↗ Dropbox","intl":"Languages","desktop-client-builds":"Desktop client builds","dropbox-for-macos":"Dropbox for macOS","photography-link":"Photographers","super-user-link":"Super User","101007-c1":"Tips & tricks"},"localOverride":false},"CachedAsset:text:en_US-components/community/NavbarHamburgerDropdown-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/community/NavbarHamburgerDropdown-1737382615000","value":{"hamburgerLabel":"Side Menu"},"localOverride":false},"CachedAsset:text:en_US-components/community/BrandLogo-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/community/BrandLogo-1737382615000","value":{"logoAlt":"Khoros","themeLogoAlt":"Brand Logo"},"localOverride":false},"CachedAsset:text:en_US-components/community/NavbarTextLinks-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/community/NavbarTextLinks-1737382615000","value":{"more":"More"},"localOverride":false},"CachedAsset:text:en_US-components/search/SpotlightSearchIcon-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/search/SpotlightSearchIcon-1737382615000","value":{"search":"Search"},"localOverride":false},"CachedAsset:text:en_US-components/authentication/AuthenticationLink-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/authentication/AuthenticationLink-1737382615000","value":{"title.login":"Log in","title.registration":"Sign up","title.forgotPassword":"Forgot Password","title.multiAuthLogin":"Log in"},"localOverride":false},"CachedAsset:text:en_US-components/nodes/NodeLink-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/nodes/NodeLink-1737382615000","value":{"place":"Place {name}"},"localOverride":false},"CachedAsset:text:en_US-components/customComponent/CustomComponent-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/customComponent/CustomComponent-1737382615000","value":{"errorMessage":"Error rendering component id: {customComponentId}","bannerTitle":"Video provider requires cookies to play the video. Accept to continue or {url} it directly on the provider's site.","buttonTitle":"Accept","urlText":"watch"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageView/MessageViewStandard-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageView/MessageViewStandard-1737382615000","value":{"anonymous":"Anonymous","author":"{messageAuthorLogin}","authorBy":"{messageAuthorLogin}","board":"{messageBoardTitle}","replyToUser":" to {parentAuthor}","showMoreReplies":"Show More","replyText":"Reply","repliesText":"Replies","markedAsSolved":"Marked as Solved","movedMessagePlaceholder.BLOG":"{count, plural, =0 {This comment has been} other {These comments have been} }","movedMessagePlaceholder.TKB":"{count, plural, =0 {This comment has been} other {These comments have been} }","movedMessagePlaceholder.FORUM":"{count, plural, =0 {This reply has been} other {These replies have been} }","movedMessagePlaceholder.IDEA":"{count, plural, =0 {This comment has been} other {These comments have been} }","movedMessagePlaceholder.OCCASION":"{count, plural, =0 {This comment has been} other {These comments have been} }","movedMessagePlaceholderUrlText":"moved.","messageStatus":"Status: ","statusChanged":"Status changed: {previousStatus} to {currentStatus}","statusAdded":"Status added: {status}","statusRemoved":"Status removed: {status}","labelExpand":"expand replies","labelCollapse":"collapse replies","unhelpfulReason.reason1":"Content is outdated","unhelpfulReason.reason2":"Article is missing information","unhelpfulReason.reason3":"Content is for a different Product","unhelpfulReason.reason4":"Doesn't match what I was searching for"},"localOverride":false},"CachedAsset:text:en_US-components/messages/ThreadedReplyList-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/ThreadedReplyList-1737382615000","value":{"title":"{count, plural, one{# Reply} other{# Replies}}","title@board:BLOG":"{count, plural, one{# Comment} other{# Comments}}","title@board:TKB":"{count, plural, one{# Comment} other{# Comments}}","title@board:IDEA":"{count, plural, one{# Comment} other{# Comments}}","title@board:OCCASION":"{count, plural, one{# Comment} other{# Comments}}","noRepliesTitle":"No Replies","noRepliesTitle@board:BLOG":"No Comments","noRepliesTitle@board:TKB":"No Comments","noRepliesTitle@board:IDEA":"No Comments","noRepliesTitle@board:OCCASION":"No Comments","noRepliesDescription":"Be the first to reply","noRepliesDescription@board:BLOG":"Be the first to comment","noRepliesDescription@board:TKB":"Be the first to comment","noRepliesDescription@board:IDEA":"Be the first to comment","noRepliesDescription@board:OCCASION":"Be the first to comment","messageReadOnlyAlert:BLOG":"Comments have been turned off for this post","messageReadOnlyAlert:TKB":"Comments have been turned off for this article","messageReadOnlyAlert:IDEA":"Comments have been turned off for this idea","messageReadOnlyAlert:FORUM":"Replies have been turned off for this discussion","messageReadOnlyAlert:OCCASION":"Comments have been turned off for this event"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageReplyCallToAction-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageReplyCallToAction-1737382615000","value":{"leaveReply":"Leave a reply...","leaveReply@board:BLOG@message:root":"Leave a comment...","leaveReply@board:TKB@message:root":"Leave a comment...","leaveReply@board:IDEA@message:root":"Leave a comment...","leaveReply@board:OCCASION@message:root":"Leave a comment...","repliesTurnedOff.FORUM":"Replies are turned off for this topic","repliesTurnedOff.BLOG":"Comments are turned off for this topic","repliesTurnedOff.TKB":"Comments are turned off for this topic","repliesTurnedOff.IDEA":"Comments are turned off for this topic","repliesTurnedOff.OCCASION":"Comments are turned off for this topic","infoText":"Stop poking me!"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/QueryHandler-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/QueryHandler-1737382615000","value":{"title":"Query Handler"},"localOverride":false},"Rank:rank:29":{"__typename":"Rank","id":"rank:29","position":12,"name":"Legendary | Level 20","color":"F9A34B","icon":null,"rankStyle":"TEXT"},"User:user:422790":{"__typename":"User","id":"user:422790","uid":422790,"login":"Здравко","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2017-06-22T04:51:57.857-07:00","confirmEmailStatus":null,"registrationAccessLevel":null,"ssoRegistrationFields":[]},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/images/dS00MjI3OTAtNjIzaTA5MTYzODM3NDQ3OTg4ODY"},"rank":{"__ref":"Rank:rank:29"},"messagesCount":4522,"kudosGivenCount":157,"kudosReceivedCount":1021,"kudosWeight":1,"ssoId":null,"followersCount":null,"solutionsCount":470,"entityType":"USER","eventPath":"community:mxpez29397/user:422790"},"ModerationData:moderation_data:514256":{"__typename":"ModerationData","id":"moderation_data:514256","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:514256":{"__typename":"ForumReplyMessage","author":{"__ref":"User:user:422790"},"id":"message:514256","revisionNum":1,"uid":514256,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:101000014"},"parent":{"__ref":"ForumTopicMessage:message:514249"},"conversation":{"__ref":"Conversation:conversation:514249"},"subject":"Re: How to migrate to new Auth workflow with python SDK while minimizing need for single user input?","moderationData":{"__ref":"ModerationData:moderation_data:514256"},"body":"
From what I can see, I will always need to interact with the script every time I launch it, in order to copy the authorization code and provide it to the script, is that right?
You can migrate to OAuth2 and you will need to interact to your script only for the long lived token - refresh token (i.e. at the beginning), nothing more! This token doesn't expire - the same like before (almost). The only difference is that it can't be used directly in API calls. The its only purpose is generation of short living tokens - access token, usable within API calls. You usually should not take care of this process, since it's performed in the SDK (internally) and you can continue usage of SDK's calls in the same way as before. When need new token will be generated on demand without your additional interaction. SDK will call /oauth2/token for you. Might be need little bit more care if you call on some place(s) API calls directly, bypassing SDK.
Hope this helps to some extent.
","body@stripHtml({\"removeProcessingText\":false,\"removeSpoilerMarkup\":false,\"removeTocMarkup\":false,\"truncateLength\":200})@stringLength":"208","kudosSumWeight":1,"repliesCount":0,"postTime":"2021-04-18T06:08:58.550-07:00","lastPublishTime":"2021-04-18T06:08:58.550-07:00","metrics":{"__typename":"MessageMetrics","views":3841},"visibilityScope":"PUBLIC","placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"solution":false,"entityType":"FORUM_REPLY","eventPath":"category:101000041/category:101007/category:English/community:mxpez29397board:101000014/message:514249/message:514256","replies":{"__typename":"MessageConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[]},"customFields":[],"attachments":{"__typename":"AttachmentConnection","edges":[],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}}},"AssociatedImage:{\"url\":\"https://www.dropboxforum.com/t5/s/mxpez29397/images/cmstMjYtZVNRZzFo\"}":{"__typename":"AssociatedImage","url":"https://www.dropboxforum.com/t5/s/mxpez29397/images/cmstMjYtZVNRZzFo","height":17,"width":20,"mimeType":"image/png"},"Rank:rank:26":{"__typename":"Rank","id":"rank:26","position":5,"name":"Dropbox Staff","color":"0061FE","icon":{"__ref":"AssociatedImage:{\"url\":\"https://www.dropboxforum.com/t5/s/mxpez29397/images/cmstMjYtZVNRZzFo\"}"},"rankStyle":"TEXT"},"User:user:10":{"__typename":"User","id":"user:10","uid":10,"login":"Greg-DB","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2014-12-03T16:28:00.000-08:00","confirmEmailStatus":null,"registrationAccessLevel":null,"ssoRegistrationFields":[]},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://www.dropboxforum.com/t5/s/mxpez29397/images/dS0xMC01NjQ2aTEzQjZFMUNBREJENDE1Q0Y"},"rank":{"__ref":"Rank:rank:26"},"messagesCount":12621,"kudosGivenCount":1,"kudosReceivedCount":2524,"kudosWeight":1,"ssoId":null,"followersCount":null,"solutionsCount":1781,"entityType":"USER","eventPath":"community:mxpez29397/user:10","messagesCount:{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:514249\"}}":12621,"kudosGivenCount:{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:514249\"}}":1,"kudosReceivedCount:{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:514249\"}}":2524,"solutionsCount:{\"solution\":{\"eq\":true},\"topicId\":{\"eq\":\"message:514249\"}}":1781},"ModerationData:moderation_data:514471":{"__typename":"ModerationData","id":"moderation_data:514471","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"AcceptedSolutionMessage:message:514471":{"__typename":"AcceptedSolutionMessage","uid":514471,"id":"message:514471","revisionNum":1,"author":{"__ref":"User:user:10"},"readOnly":false,"repliesCount":11,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:101000014"},"parent":{"__ref":"ForumTopicMessage:message:514249"},"conversation":{"__ref":"Conversation:conversation:514249"},"subject":"Re: How to migrate to new Auth workflow with python SDK while minimizing need for single user input?","moderationData":{"__ref":"ModerationData:moderation_data:514471"},"body":"
FrancoisNOYEZ Здравко is correct, under the new system you do not need to interact with your script every time it runs. You can supply it the refresh token like you previously supplied it a long-lived access token and it will automatically run without manual user interaction, as before.
\n
\n
You do need to process the app authorization flow one time to get a refresh token though. You can refer to this example to see how to process the app authorization flow to get a refresh token, at which point you can then set up a client using it, as shown at the end of the example.
","body@stripHtml({\"removeProcessingText\":false,\"removeSpoilerMarkup\":false,\"removeTocMarkup\":false,\"truncateLength\":200})@stringLength":"208","kudosSumWeight":1,"postTime":"2021-04-19T08:04:55.491-07:00","lastPublishTime":"2021-04-19T08:04:55.491-07:00","solution":true,"metrics":{"__typename":"MessageMetrics","views":3809},"visibilityScope":"PUBLIC","placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"entityType":"FORUM_REPLY","eventPath":"category:101000041/category:101007/category:English/community:mxpez29397board:101000014/message:514249/message:514471","replies":{"__typename":"MessageConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[{"__typename":"MessageEdge","cursor":"MjQuMTF8Mi4xfGl8M3w1MjoxfGludCw1MTU3NzksNTE1Nzc5","node":{"__ref":"ForumReplyMessage:message:515779"}}]},"customFields":[],"attachments":{"__typename":"AttachmentConnection","edges":[],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":200})@stringLength":"208","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}}},"ModerationData:moderation_data:515779":{"__typename":"ModerationData","id":"moderation_data:515779","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:515779":{"__typename":"ForumReplyMessage","uid":515779,"id":"message:515779","revisionNum":2,"author":{"__ref":"User:user:1433776"},"readOnly":false,"repliesCount":10,"depth":2,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:101000014"},"parent":{"__ref":"AcceptedSolutionMessage:message:514471"},"conversation":{"__ref":"Conversation:conversation:514249"},"subject":"Re: How to migrate to new Auth workflow with python SDK while minimizing need for single user input?","moderationData":{"__ref":"ModerationData:moderation_data:515779"},"body":"
Hello @Здравко, @Greg-DB,
Thank you for your answers. Following your indications, as well as the example described in the examples scripts, I was able to define a \"refresh token\", and I indeed see that I only need to supply it, along with the APP_KEY and APP_SECRET, when instantiating a Dropbox class object. As long as I keep the 'oauth2_access_token_expiration' parameter equal to none, when carrying out this instantiation, I guess I will never need to perform new authentication operations, is that right?
With this new authentication scheme, we went from having to just specify a single token, to having to specify the APP_KEY, APP_SECRET, and refresh token. In terms of management of this sensitive authentication data, in your opinion, how should I proceed? I used to pass along the authentication token as a parameter to the command used to launch my script ('cause I don't want to write it down in my script). Is it ok to do something similar now (the difference being that I'll have to provide 3 values instead of one)? Seems like, as long as I keep those authentication -needed data in the same spot, nothing much was gained in terms of security (though now the scope associated to the token is read-only, so that seems like an improvement here). How could I improve the way I manage those data, if possible, in your opinion?
","body@stripHtml({\"removeProcessingText\":false,\"removeSpoilerMarkup\":false,\"removeTocMarkup\":false,\"truncateLength\":200})@stringLength":"208","kudosSumWeight":0,"postTime":"2021-04-25T02:56:22.358-07:00","lastPublishTime":"2021-04-25T02:57:07.476-07:00","metrics":{"__typename":"MessageMetrics","views":3762},"visibilityScope":"PUBLIC","placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"solution":false,"entityType":"FORUM_REPLY","eventPath":"category:101000041/category:101007/category:English/community:mxpez29397board:101000014/message:514249/message:515779","replies":{"__typename":"MessageConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[{"__typename":"MessageEdge","cursor":"MjQuMTF8Mi4xfGl8MXw1MjoxfGludCw1MTU3ODgsNTE1Nzg4","node":{"__ref":"ForumReplyMessage:message:515788"}}]},"customFields":[],"attachments":{"__typename":"AttachmentConnection","edges":[],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}}},"ModerationData:moderation_data:515788":{"__typename":"ModerationData","id":"moderation_data:515788","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:515788":{"__typename":"ForumReplyMessage","author":{"__ref":"User:user:422790"},"id":"message:515788","revisionNum":3,"uid":515788,"depth":3,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:101000014"},"parent":{"__ref":"ForumReplyMessage:message:515779"},"conversation":{"__ref":"Conversation:conversation:514249"},"subject":"Re: How to migrate to new Auth workflow with python SDK while minimizing need for single user input?","moderationData":{"__ref":"ModerationData:moderation_data:515788"},"body":"
FrancoisNOYEZ wrote: ... As long as I keep the 'oauth2_access_token_expiration' parameter equal to none, when carrying out this instantiation, I guess I will never need to perform new authentication operations, is that right? ...
In the practice, yes, most probably. If we should be more general, there are situations where refresh token could be revoked (both explicitly, by your or another person having access to the account, or implicitly, by some actions, which shouldn't happen in normal case). Even very unlikely, it's good practice to expect such a situation in your code (script or other). When something goes wrong and the token gets revoked, somehow, just inform/warn in suitable way, at least. The same is valid for long lived access token, used by you till now. 😉 Just a good practice that can make your life easy sometimes!
FrancoisNOYEZ wrote: ... In terms of management of this sensitive authentication data, in your opinion, how should I proceed? I used to pass along the authentication token as a parameter to the command used to launch my script ('cause I don't want to write it down in my script). Is it ok to do something similar now (the difference being that I'll have to provide 3 values instead of one)? ...
🙄🙂😁FrancoisNOYEZ, If you care for data (of any kind) and don't want other process (and people accordingly) to touch it, command line is the worst place to pass such data (or not the best, definitelly, at least)! Command name a all options and parameters are object of logging in the shell history, at least. The same information is accessible through system tool for process monitoring (how exactly depends on exact OS in use, but accessible). Other ways are also possible! What think that you are hiding in such a way?!!! Be careful!
If I'm in your shoes, will look around your system and usually there is some sort of system \"wallet\". That's exactly what this service is dedicated for! Exact form is OS dependent, but generally there is some encrypted, system controlled storage where every application could reserve some space. There you can store sensitive data of your choice (like discussing here). The access is system controlled and one application can't touch data of other one and also the same application running on different account is restricted (there are different storage places). 😉 The just mentioned would be my choice.
The needed data representation can be stored on and received from a secure place (like the wallet above). On start, when available, could be used directly to instantiate Dropbox client object. When missing OAuth flow could run and result received will be used both for client instantiation and storage of sensitive data.
Hope this gives useful directions.
PS: For a almost platform independent way in Python try the \"keyring\" package. 😉 It behaves as a interface to corresponding installed system service. Or tries to, at least, and succeeds when there is available proper backend. Linux, Mac, and Windows are generally supported.
","body@stripHtml({\"removeProcessingText\":false,\"removeSpoilerMarkup\":false,\"removeTocMarkup\":false,\"truncateLength\":200})@stringLength":"208","kudosSumWeight":1,"repliesCount":9,"postTime":"2021-04-25T05:59:14.596-07:00","lastPublishTime":"2021-04-25T07:02:34.638-07:00","metrics":{"__typename":"MessageMetrics","views":3747},"visibilityScope":"PUBLIC","placeholder":false,"originalMessageForPlaceholder":null,"isEscalated":null,"solution":false,"entityType":"FORUM_REPLY","eventPath":"category:101000041/category:101007/category:English/community:mxpez29397board:101000014/message:514249/message:515788","customFields":[],"attachments":{"__typename":"AttachmentConnection","edges":[],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}}},"QueryVariables:MessageSolutions":{"__typename":"QueryVariables","id":"MessageSolutions","value":{"first":10,"constraints":{"topicId":{"eq":"message:514249"},"solution":{"eq":true}},"sorts":{"postTime":{"direction":"ASC"}},"useAvatar":true,"useAuthorLogin":true,"useAuthorRank":false,"useBody":true,"useKudosCount":false,"useTimeToRead":false,"useMedia":true,"useRepliesCount":false,"useSearchSnippet":false,"useAcceptedSolutionButton":true,"useSolvedBadge":false,"useAttachments":true,"useTags":false,"useUserHoverCard":true,"useNodeHoverCard":true,"usePreviewSubjectModal":false,"useMessageStatus":false}},"CachedAsset:text:en_US-components/community/NavbarDropdownToggle-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/community/NavbarDropdownToggle-1737382615000","value":{"ariaLabelClosed":"Press the down arrow to open the menu"},"localOverride":false},"CachedAsset:text:en_US-components/messages/EscalatedMessageBanner-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/EscalatedMessageBanner-1737382615000","value":{"escalationMessage":"Escalated to Salesforce by {username} on {date}","viewDetails":"View Details","modalTitle":"Case Details","escalatedBy":"Escalated by: ","escalatedOn":"Escalated on: ","caseNumber":"Case Number: ","status":"Status: ","lastUpdateDate":"Last Update: ","automaticEscalation":"automatic escalation","anonymous":"Anonymous"},"localOverride":false},"CachedAsset:text:en_US-components/users/UserLink-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/users/UserLink-1737382615000","value":{"authorName":"View Profile: {author}","anonymous":"Anonymous"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/users/UserRank-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/users/UserRank-1737382615000","value":{"rankName":"{rankName}","userRank":"Author rank {rankName}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageTime-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageTime-1737382615000","value":{"postTime":"Published: {time}","lastPublishTime":"Last Update: {time}","conversation.lastPostingActivityTime":"Last posting activity time: {time}","conversation.lastPostTime":"Last post time: {time}","moderationData.rejectTime":"Rejected time: {time}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageSubject-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageSubject-1737382615000","value":{"noSubject":"(no subject)"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageBody-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageBody-1737382615000","value":{"showMessageBody":"Show More","mentionsErrorTitle":"{mentionsType, select, board {Board} user {User} message {Message} other {}} No Longer Available","mentionsErrorMessage":"The {mentionsType} you are trying to view has been removed from the community.","videoProcessing":"Video is being processed. Please try again in a few minutes.","bannerTitle":"Video provider requires cookies to play the video. Accept to continue or {url} it directly on the provider's site.","buttonTitle":"Accept","urlText":"watch"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageCustomFields-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageCustomFields-1737382615000","value":{"CustomField.default.label":"Value of {name}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageReplyButton-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageReplyButton-1737382615000","value":{"repliesCount":"{count}","title":"Reply","title@board:BLOG@message:root":"Comment","title@board:TKB@message:root":"Comment","title@board:IDEA@message:root":"Comment","title@board:OCCASION@message:root":"Comment"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageSolutionList-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageSolutionList-1737382615000","value":{"emptyDescription":"No has been message solutions yet"},"localOverride":false},"CachedAsset:text:en_US-components/messages/AcceptedSolutionButton-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/AcceptedSolutionButton-1737382615000","value":{"accept":"Mark as Solution","accepted":"Marked as Solution","errorHeader":"Error!","errorAdd":"There was an error marking as solution.","errorRemove":"There was an error unmarking as solution.","solved":"Solved"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Pager/PagerLoadMore-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Pager/PagerLoadMore-1737382615000","value":{"loadMore":"Show More"},"localOverride":false},"CachedAsset:text:en_US-components/nodes/NodeView/NodeViewCard-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/nodes/NodeView/NodeViewCard-1737382615000","value":{"title":"{nodeTitle} ","creationDate":"Created: {creationDate}","ownedBy":"Owned by: {owners}{text}","showOwnerListText":", and {ownersCount} more","unreadCount":"{count} unread","nodeViewDrawerBtn":"Node view drawer for {place}","drawerActionTooltip":"Show category children"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageView/MessageViewInline-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageView/MessageViewInline-1737382615000","value":{"bylineAuthor":"{bylineAuthor}","bylineBoard":"{bylineBoard}","anonymous":"Anonymous","place":"Place {bylineBoard}","gotoParent":"Go to parent {name}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/users/UserAvatar-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/users/UserAvatar-1737382615000","value":{"altText":"{login}'s avatar","altTextGeneric":"User's avatar"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/ranks/UserRankLabel-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/ranks/UserRankLabel-1737382615000","value":{"altTitle":"Icon for {rankName} rank"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/nodes/NodeAvatar-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/nodes/NodeAvatar-1737382615000","value":{"altTitle":"Node avatar for {nodeTitle}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/nodes/NodeDescription-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/nodes/NodeDescription-1737382615000","value":{"description":"{description}"},"localOverride":false},"CachedAsset:text:en_US-components/nodes/NodeTopicsCount-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/nodes/NodeTopicsCount-1737382615000","value":{"topicCount":"{count}","topicCountWithNeutralLabel@board:OCCASION":"{count, plural, one{# Event} other{# Events}}","topicCountWithNeutralLabel":"{count, plural, one{# Post} other{# Posts}}","topicCount@board:FORUM":"{count, plural, one{# Post} other{# Posts}}","topicCount@board:BLOG":"{count, plural, one{# Post} other{# Posts}}","topicCount@board:CONTEST":"{count, plural, one{# Entry} other{# Entries}}","topicCount@board:GROUP":"{count, plural, one{# Topic} other{# Topics}}","topicCount@board:IDEA":"{count, plural, one{# Idea} other{# Ideas}}","topicCount@board:QANDA":"{count, plural, one{# Question} other{# Questions}}","topicCount@board:TKB":"{count, plural, one{# Article} other{# Articles}}","topicCount@board:OCCASION":"{count, plural, one{# Event} other{# Events}}","title":"{count, plural,one {Post} other{Posts}}"},"localOverride":false},"CachedAsset:text:en_US-components/nodes/NodeLatestActivityTime-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/nodes/NodeLatestActivityTime-1737382615000","value":{"title":"Latest Activity: {latestActivityTime}","updatedAt":"Updated {latestActivityTime}","noActivity":"No activity yet"},"localOverride":false},"CachedAsset:text:en_US-components/nodes/NodeFollowersCount-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/nodes/NodeFollowersCount-1737382615000","value":{"followersCount":"{count} Following"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/nodes/NodeIcon-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/nodes/NodeIcon-1737382615000","value":{"contentType":"Content Type {style, select, FORUM {Forum} BLOG {Blog} TKB {Knowledge Base} IDEA {Ideas} OCCASION {Events} other {}} icon"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageSolvedBadge-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageSolvedBadge-1737382615000","value":{"solved":"Solved"},"localOverride":false},"CachedAsset:text:en_US-components/tags/TagView/TagViewChip-1737382615000":{"__typename":"CachedAsset","id":"text:en_US-components/tags/TagView/TagViewChip-1737382615000","value":{"tagLabelName":"Tag name {tagName}"},"localOverride":false}}}},"page":"/forums/ForumMessagePage/ForumMessagePage","query":{"boardId":"101000014","messageSubject":"how-to-migrate-to-new-auth-workflow-with-python-sdk-while-minimizing-need-for-si","messageId":"514249"},"buildId":"_FASV5DDw52YaqfBDLqsB","runtimeConfig":{"buildInformationVisible":false,"logLevelApp":"info","logLevelMetrics":"info","openTelemetryClientEnabled":false,"openTelemetryConfigName":"dropbox","openTelemetryServiceVersion":"24.11.0","openTelemetryUniverse":"prod","openTelemetryCollector":"http://localhost:4318","openTelemetryRouteChangeAllowedTime":"5000","apolloDevToolsEnabled":false},"isFallback":false,"isExperimentalCompile":false,"dynamicIds":["./components/seo/QAPageSchema/QAPageSchema.tsx","./components/community/Navbar/NavbarWidget.tsx","./components/community/Breadcrumb/BreadcrumbWidget.tsx","./components/customComponent/CustomComponent/CustomComponent.tsx","./components/messages/TopicWithThreadedReplyListWidget/TopicWithThreadedReplyListWidget.tsx","./components/nodes/NodeActionButtonWidget/NodeActionButtonWidget.tsx","./components/nodes/NodeInformationWidget/NodeInformationWidget.tsx","./components/messages/RelatedContentWidget/RelatedContentWidget.tsx","./components/messages/MessageListForNodeByRecentActivityWidget/MessageListForNodeByRecentActivityWidget.tsx","./components/messages/MessageView/MessageViewStandard/MessageViewStandard.tsx","./components/messages/ThreadedReplyList/ThreadedReplyList.tsx","../shared/client/components/common/List/UnstyledList/UnstyledList.tsx","./components/messages/MessageView/MessageView.tsx","../shared/client/components/common/Pager/PagerLoadMore/PagerLoadMore.tsx","./components/nodes/NodeView/NodeView.tsx","./components/nodes/NodeView/NodeViewCard/NodeViewCard.tsx","./components/messages/MessageView/MessageViewInline/MessageViewInline.tsx","../shared/client/components/common/List/UnwrappedList/UnwrappedList.tsx","./components/tags/TagView/TagView.tsx","./components/tags/TagView/TagViewChip/TagViewChip.tsx"],"appGip":true,"scriptLoader":[]}