dropbox_api 0.1.19 → 0.1.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +113 -22
- data/docs/DropboxApi/Authenticator.html +12 -12
- data/docs/DropboxApi/ChunkedUploader.html +20 -20
- data/docs/DropboxApi/Client.html +1673 -906
- data/docs/DropboxApi/ConnectionBuilder.html +16 -16
- data/docs/DropboxApi/Endpoints/Auth/TokenRevoke.html +10 -10
- data/docs/DropboxApi/Endpoints/Auth.html +6 -6
- data/docs/DropboxApi/Endpoints/Base.html +9 -9
- data/docs/DropboxApi/Endpoints/ContentDownload.html +19 -19
- data/docs/DropboxApi/Endpoints/ContentUpload.html +17 -17
- data/docs/DropboxApi/Endpoints/Files/Copy.html +12 -12
- data/docs/DropboxApi/Endpoints/Files/CopyBatch.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/CopyBatchCheck.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/CopyReferenceGet.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/CopyReferenceSave.html +12 -12
- data/docs/DropboxApi/Endpoints/Files/CreateFileRequest.html +12 -12
- data/docs/DropboxApi/Endpoints/Files/CreateFolder.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/CreateFolderBatch.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/CreateFolderBatchCheck.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/Delete.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/DeleteBatch.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/DeleteBatchCheck.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/Download.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/GetMetadata.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/GetPreview.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/GetTemporaryLink.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/GetThumbnail.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/GetThumbnailBatch.html +15 -15
- data/docs/DropboxApi/Endpoints/Files/ListFolder.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/ListFolderContinue.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/ListFolderGetLatestCursor.html +10 -10
- data/docs/DropboxApi/Endpoints/Files/ListFolderLongpoll.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/ListRevisions.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/Move.html +12 -12
- data/docs/DropboxApi/Endpoints/Files/PermanentlyDelete.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/Restore.html +12 -12
- data/docs/DropboxApi/Endpoints/Files/SaveUrl.html +12 -12
- data/docs/DropboxApi/Endpoints/Files/SaveUrlCheckJobStatus.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/Search.html +48 -96
- data/docs/DropboxApi/Endpoints/Files/Upload.html +10 -10
- data/docs/DropboxApi/Endpoints/Files/UploadSessionAppendV2.html +11 -11
- data/docs/DropboxApi/Endpoints/Files/UploadSessionFinish.html +12 -12
- data/docs/DropboxApi/Endpoints/Files/UploadSessionStart.html +12 -12
- data/docs/DropboxApi/Endpoints/Files.html +6 -6
- data/docs/DropboxApi/Endpoints/Rpc.html +17 -17
- data/docs/DropboxApi/Endpoints/RpcContent.html +11 -11
- data/docs/DropboxApi/Endpoints/RpcNotify.html +11 -11
- data/docs/DropboxApi/Endpoints/Sharing/AddFileMember.html +12 -12
- data/docs/DropboxApi/Endpoints/Sharing/AddFolderMember.html +12 -12
- data/docs/DropboxApi/Endpoints/Sharing/CreateSharedLinkWithSettings.html +12 -12
- data/docs/DropboxApi/Endpoints/Sharing/GetSharedLinkMetadata.html +11 -11
- data/docs/DropboxApi/Endpoints/Sharing/ListFileMembers.html +12 -12
- data/docs/DropboxApi/Endpoints/Sharing/ListFolderMembers.html +12 -12
- data/docs/DropboxApi/Endpoints/Sharing/ListSharedLinks.html +10 -10
- data/docs/DropboxApi/Endpoints/Sharing/RevokeSharedLink.html +11 -11
- data/docs/DropboxApi/Endpoints/Sharing/ShareFolder.html +11 -11
- data/docs/DropboxApi/Endpoints/Sharing/UnshareFile.html +11 -11
- data/docs/DropboxApi/Endpoints/Sharing.html +6 -6
- data/docs/DropboxApi/Endpoints/Users/GetAccount.html +11 -11
- data/docs/DropboxApi/Endpoints/Users/GetAccountBatch.html +11 -11
- data/docs/DropboxApi/Endpoints/Users/GetCurrentAccount.html +10 -10
- data/docs/DropboxApi/Endpoints/Users/GetSpaceUsage.html +10 -10
- data/docs/DropboxApi/Endpoints/Users.html +6 -6
- data/docs/DropboxApi/Endpoints.html +6 -6
- data/docs/DropboxApi/Errors/AddFileMemberError.html +10 -10
- data/docs/DropboxApi/Errors/AddFolderMemberError.html +16 -16
- data/docs/DropboxApi/Errors/AddMemberSelectorError.html +11 -11
- data/docs/DropboxApi/Errors/AlreadySharedError.html +9 -9
- data/docs/DropboxApi/Errors/BadPathError.html +6 -6
- data/docs/DropboxApi/Errors/BasicError.html +17 -17
- data/docs/DropboxApi/Errors/CantCopySharedFolderError.html +6 -6
- data/docs/DropboxApi/Errors/CantMoveFolderIntoItselfError.html +6 -6
- data/docs/DropboxApi/Errors/CantNestSharedFolderError.html +6 -6
- data/docs/DropboxApi/Errors/CantShareOutsideTeamError.html +6 -6
- data/docs/DropboxApi/Errors/ContainsSharedFolderError.html +6 -6
- data/docs/DropboxApi/Errors/ConversionError.html +6 -6
- data/docs/DropboxApi/Errors/CreateFileRequestError.html +6 -6
- data/docs/DropboxApi/Errors/CreateFolderBatchError.html +7 -7
- data/docs/DropboxApi/Errors/CreateFolderError.html +7 -7
- data/docs/DropboxApi/Errors/CreateSharedLinkWithSettingsError.html +11 -11
- data/docs/DropboxApi/Errors/CursorClosedError.html +6 -6
- data/docs/DropboxApi/Errors/CursorNotClosedError.html +6 -6
- data/docs/DropboxApi/Errors/DeleteError.html +9 -9
- data/docs/DropboxApi/Errors/DisallowedNameError.html +6 -6
- data/docs/DropboxApi/Errors/DisallowedSharedLinkPolicyError.html +6 -6
- data/docs/DropboxApi/Errors/DownloadError.html +7 -7
- data/docs/DropboxApi/Errors/DownloadFailedError.html +6 -6
- data/docs/DropboxApi/Errors/EmailUnverifiedError.html +6 -6
- data/docs/DropboxApi/Errors/FileAncestorConflictError.html +6 -6
- data/docs/DropboxApi/Errors/FileConflictError.html +6 -6
- data/docs/DropboxApi/Errors/FileMemberActionError.html +10 -10
- data/docs/DropboxApi/Errors/FolderConflictError.html +6 -6
- data/docs/DropboxApi/Errors/GetAccountError.html +7 -7
- data/docs/DropboxApi/Errors/GetCopyReferenceError.html +7 -7
- data/docs/DropboxApi/Errors/GetMetadataError.html +7 -7
- data/docs/DropboxApi/Errors/GroupDeletedError.html +6 -6
- data/docs/DropboxApi/Errors/GroupNotOnTeamError.html +6 -6
- data/docs/DropboxApi/Errors/HttpError.html +6 -6
- data/docs/DropboxApi/Errors/InProgressError.html +6 -6
- data/docs/DropboxApi/Errors/InsideAppFolderError.html +6 -6
- data/docs/DropboxApi/Errors/InsideOsxPackageError.html +6 -6
- data/docs/DropboxApi/Errors/InsidePublicFolderError.html +6 -6
- data/docs/DropboxApi/Errors/InsideSharedFolderError.html +6 -6
- data/docs/DropboxApi/Errors/InsufficientPlanError.html +6 -6
- data/docs/DropboxApi/Errors/InsufficientSpaceError.html +6 -6
- data/docs/DropboxApi/Errors/InternalError.html +6 -6
- data/docs/DropboxApi/Errors/InvalidCommentError.html +6 -6
- data/docs/DropboxApi/Errors/InvalidCopyReferenceError.html +6 -6
- data/docs/DropboxApi/Errors/InvalidCursorError.html +6 -6
- data/docs/DropboxApi/Errors/InvalidDropboxIdError.html +6 -6
- data/docs/DropboxApi/Errors/InvalidEmailError.html +6 -6
- data/docs/DropboxApi/Errors/InvalidFileError.html +6 -6
- data/docs/DropboxApi/Errors/InvalidIdError.html +6 -6
- data/docs/DropboxApi/Errors/InvalidMemberError.html +6 -6
- data/docs/DropboxApi/Errors/InvalidPathError.html +6 -6
- data/docs/DropboxApi/Errors/InvalidRevisionError.html +6 -6
- data/docs/DropboxApi/Errors/InvalidSettingsError.html +6 -6
- data/docs/DropboxApi/Errors/InvalidUrlError.html +6 -6
- data/docs/DropboxApi/Errors/IsAppFolderError.html +6 -6
- data/docs/DropboxApi/Errors/IsFileError.html +6 -6
- data/docs/DropboxApi/Errors/IsFolderError.html +6 -6
- data/docs/DropboxApi/Errors/IsOsxPackageError.html +6 -6
- data/docs/DropboxApi/Errors/IsPublicFolderError.html +6 -6
- data/docs/DropboxApi/Errors/ListFolderContinueError.html +8 -8
- data/docs/DropboxApi/Errors/ListFolderError.html +7 -7
- data/docs/DropboxApi/Errors/ListFolderLongpollError.html +7 -7
- data/docs/DropboxApi/Errors/ListRevisionsError.html +7 -7
- data/docs/DropboxApi/Errors/ListSharedLinksError.html +8 -8
- data/docs/DropboxApi/Errors/LookupError.html +11 -11
- data/docs/DropboxApi/Errors/MalformedPathError.html +6 -6
- data/docs/DropboxApi/Errors/NoAccountError.html +6 -6
- data/docs/DropboxApi/Errors/NoPermissionError.html +6 -6
- data/docs/DropboxApi/Errors/NoWritePermissionError.html +6 -6
- data/docs/DropboxApi/Errors/NotAMemberError.html +6 -6
- data/docs/DropboxApi/Errors/NotFileError.html +6 -6
- data/docs/DropboxApi/Errors/NotFolderError.html +6 -6
- data/docs/DropboxApi/Errors/NotFoundError.html +6 -6
- data/docs/DropboxApi/Errors/PollError.html +8 -8
- data/docs/DropboxApi/Errors/PreviewError.html +10 -10
- data/docs/DropboxApi/Errors/RateLimitError.html +6 -6
- data/docs/DropboxApi/Errors/RelocationBatchEntryError.html +9 -9
- data/docs/DropboxApi/Errors/RelocationError.html +13 -13
- data/docs/DropboxApi/Errors/RestoreError.html +9 -9
- data/docs/DropboxApi/Errors/RestrictedContentError.html +6 -6
- data/docs/DropboxApi/Errors/RevokeSharedLinkError.html +10 -10
- data/docs/DropboxApi/Errors/SaveCopyReferenceError.html +11 -11
- data/docs/DropboxApi/Errors/SaveUrlError.html +10 -10
- data/docs/DropboxApi/Errors/SearchError.html +7 -7
- data/docs/DropboxApi/Errors/SettingsError.html +8 -8
- data/docs/DropboxApi/Errors/ShareFolderError.html +11 -11
- data/docs/DropboxApi/Errors/SharePathError.html +17 -17
- data/docs/DropboxApi/Errors/SharedFolderAccessError.html +10 -10
- data/docs/DropboxApi/Errors/SharedLinkAccessDeniedError.html +6 -6
- data/docs/DropboxApi/Errors/SharedLinkAlreadyExistsError.html +6 -6
- data/docs/DropboxApi/Errors/SharedLinkError.html +9 -9
- data/docs/DropboxApi/Errors/SharedLinkMalformedError.html +6 -6
- data/docs/DropboxApi/Errors/SharedLinkNotFoundError.html +6 -6
- data/docs/DropboxApi/Errors/SharingFileAccessError.html +11 -11
- data/docs/DropboxApi/Errors/SharingUserError.html +7 -7
- data/docs/DropboxApi/Errors/TeamFolderError.html +6 -6
- data/docs/DropboxApi/Errors/TeamPolicyDisallowsMemberPolicyError.html +6 -6
- data/docs/DropboxApi/Errors/ThumbnailBatchError.html +7 -7
- data/docs/DropboxApi/Errors/ThumbnailError.html +10 -10
- data/docs/DropboxApi/Errors/TooManyFilesError.html +6 -6
- data/docs/DropboxApi/Errors/TooManyMembersError.html +6 -6
- data/docs/DropboxApi/Errors/TooManyPendingInvitesError.html +6 -6
- data/docs/DropboxApi/Errors/TooManyRequestsError.html +15 -15
- data/docs/DropboxApi/Errors/TooManySharedFolderTargetsError.html +6 -6
- data/docs/DropboxApi/Errors/TooManyWriteOperationsError.html +6 -6
- data/docs/DropboxApi/Errors/UnmountedError.html +6 -6
- data/docs/DropboxApi/Errors/UnshareFileError.html +8 -8
- data/docs/DropboxApi/Errors/UnsupportedContentError.html +6 -6
- data/docs/DropboxApi/Errors/UnsupportedExtensionError.html +6 -6
- data/docs/DropboxApi/Errors/UnsupportedImageError.html +6 -6
- data/docs/DropboxApi/Errors/UnsupportedLinkTypeError.html +6 -6
- data/docs/DropboxApi/Errors/UnverifiedDropboxId.html +6 -6
- data/docs/DropboxApi/Errors/UploadError.html +7 -7
- data/docs/DropboxApi/Errors/UploadSessionFinishError.html +9 -9
- data/docs/DropboxApi/Errors/UploadSessionLookupError.html +10 -10
- data/docs/DropboxApi/Errors/UploadSessionOffsetError.html +10 -10
- data/docs/DropboxApi/Errors/UploadWriteFailedError.html +7 -7
- data/docs/DropboxApi/Errors/WriteConflictError.html +9 -9
- data/docs/DropboxApi/Errors/WriteError.html +11 -11
- data/docs/DropboxApi/Errors.html +6 -6
- data/docs/DropboxApi/Metadata/AccessLevel.html +9 -9
- data/docs/DropboxApi/Metadata/AddFileMemberResult.html +6 -6
- data/docs/DropboxApi/Metadata/AddMember.html +11 -11
- data/docs/DropboxApi/Metadata/Base.html +24 -24
- data/docs/DropboxApi/Metadata/BasicAccount.html +6 -6
- data/docs/DropboxApi/Metadata/CommitInfo.html +9 -9
- data/docs/DropboxApi/Metadata/Deleted.html +6 -6
- data/docs/DropboxApi/Metadata/Dimensions.html +6 -6
- data/docs/DropboxApi/Metadata/Field.html +24 -20
- data/docs/DropboxApi/Metadata/File.html +10 -10
- data/docs/DropboxApi/Metadata/FileCategoriesList.html +205 -0
- data/docs/DropboxApi/Metadata/FileCategory.html +250 -0
- data/docs/DropboxApi/Metadata/FileExtensionsList.html +213 -0
- data/docs/DropboxApi/Metadata/FileLinkMetadata.html +6 -6
- data/docs/DropboxApi/Metadata/FileMemberAction.html +10 -10
- data/docs/DropboxApi/Metadata/FileRequest.html +6 -6
- data/docs/DropboxApi/Metadata/FileStatus.html +242 -0
- data/docs/DropboxApi/Metadata/Folder.html +10 -10
- data/docs/DropboxApi/Metadata/FolderLinkMetadata.html +6 -6
- data/docs/DropboxApi/Metadata/FolderSharingInfo.html +6 -6
- data/docs/DropboxApi/Metadata/LinkPermissions.html +6 -6
- data/docs/DropboxApi/Metadata/Location.html +6 -6
- data/docs/DropboxApi/Metadata/MediaInfo.html +9 -9
- data/docs/DropboxApi/Metadata/MediaMetadata.html +9 -9
- data/docs/DropboxApi/Metadata/Member.html +13 -13
- data/docs/DropboxApi/Metadata/MemberAction.html +9 -9
- data/docs/DropboxApi/Metadata/MemberActionList.html +9 -9
- data/docs/DropboxApi/Metadata/MemberPermission.html +6 -6
- data/docs/DropboxApi/Metadata/MemberPermissionList.html +10 -10
- data/docs/DropboxApi/Metadata/MetadataV2.html +140 -0
- data/docs/DropboxApi/Metadata/Name.html +6 -6
- data/docs/DropboxApi/Metadata/ParentFolderAccessInfo.html +6 -6
- data/docs/DropboxApi/Metadata/PhotoMetadata.html +6 -6
- data/docs/DropboxApi/Metadata/Resource.html +10 -10
- data/docs/DropboxApi/Metadata/SearchMatchFieldOptions.html +140 -0
- data/docs/DropboxApi/Metadata/SearchMatchTypeV2.html +244 -0
- data/docs/DropboxApi/Metadata/SearchMatchV2.html +216 -0
- data/docs/DropboxApi/Metadata/SearchOptions.html +140 -0
- data/docs/DropboxApi/Metadata/SearchOrderBy.html +242 -0
- data/docs/DropboxApi/Metadata/SharedFolder.html +6 -6
- data/docs/DropboxApi/Metadata/SharedFolderPolicy.html +6 -6
- data/docs/DropboxApi/Metadata/SharedLink.html +18 -18
- data/docs/DropboxApi/Metadata/SharedLinkMetadata.html +10 -10
- data/docs/DropboxApi/Metadata/SpaceAllocation.html +6 -6
- data/docs/DropboxApi/Metadata/SpaceUsage.html +6 -6
- data/docs/DropboxApi/Metadata/Tag.html +14 -14
- data/docs/DropboxApi/Metadata/Team.html +6 -6
- data/docs/DropboxApi/Metadata/TeamMemberInfo.html +6 -6
- data/docs/DropboxApi/Metadata/ThumbnailBatchResultData.html +6 -6
- data/docs/DropboxApi/Metadata/ThumbnailBatchResultEntry.html +11 -11
- data/docs/DropboxApi/Metadata/UploadSessionCursor.html +9 -9
- data/docs/DropboxApi/Metadata/VideoMetadata.html +6 -6
- data/docs/DropboxApi/Metadata/WriteMode.html +21 -21
- data/docs/DropboxApi/Metadata.html +8 -8
- data/docs/DropboxApi/MiddleWare/DecodeResult.html +13 -13
- data/docs/DropboxApi/MiddleWare/Stack.html +22 -22
- data/docs/DropboxApi/MiddleWare.html +6 -6
- data/docs/DropboxApi/OptionsValidator.html +9 -9
- data/docs/DropboxApi/ResultBuilder.html +30 -30
- data/docs/DropboxApi/Results/AddFileMemberResultList.html +10 -10
- data/docs/DropboxApi/Results/Base.html +11 -11
- data/docs/DropboxApi/Results/BasicAccountBatch.html +10 -10
- data/docs/DropboxApi/Results/CopyBatchResult.html +10 -10
- data/docs/DropboxApi/Results/CreateFolderBatchResult.html +13 -13
- data/docs/DropboxApi/Results/CreateFolderBatchResultEntry.html +9 -9
- data/docs/DropboxApi/Results/DeleteBatchResult.html +13 -13
- data/docs/DropboxApi/Results/DeleteBatchResultEntry.html +9 -9
- data/docs/DropboxApi/Results/GetCopyReferenceResult.html +18 -18
- data/docs/DropboxApi/Results/GetTemporaryLinkResult.html +14 -14
- data/docs/DropboxApi/Results/GetThumbnailBatchResult.html +10 -10
- data/docs/DropboxApi/Results/ListFolderGetLatestCursorResult.html +10 -10
- data/docs/DropboxApi/Results/ListFolderLongpollResult.html +14 -14
- data/docs/DropboxApi/Results/ListFolderResult.html +18 -18
- data/docs/DropboxApi/Results/ListRevisionsResult.html +14 -14
- data/docs/DropboxApi/Results/ListSharedLinksResult.html +18 -18
- data/docs/DropboxApi/Results/RelocationBatchResult.html +13 -13
- data/docs/DropboxApi/Results/RelocationBatchResultEntry.html +9 -9
- data/docs/DropboxApi/Results/SaveCopyReferenceResult.html +10 -10
- data/docs/DropboxApi/Results/SaveUrlJobStatus.html +15 -15
- data/docs/DropboxApi/Results/SaveUrlResult.html +10 -10
- data/docs/DropboxApi/Results/Search/Match.html +18 -18
- data/docs/DropboxApi/Results/Search.html +6 -6
- data/docs/DropboxApi/Results/SearchV2Result.html +368 -0
- data/docs/DropboxApi/Results/ShareFolderLaunch.html +12 -12
- data/docs/DropboxApi/Results/SharedFileMembers.html +22 -22
- data/docs/DropboxApi/Results/SharedFolderMembers.html +22 -22
- data/docs/DropboxApi/Results/UploadSessionStart.html +10 -10
- data/docs/DropboxApi/Results/VoidResult.html +6 -6
- data/docs/DropboxApi/Results.html +8 -8
- data/docs/DropboxApi.html +7 -7
- data/docs/DropboxScaffoldBuilder.html +220 -108
- data/docs/_index.html +86 -16
- data/docs/class_list.html +3 -3
- data/docs/css/common.css +3 -0
- data/docs/css/style.css +3 -2
- data/docs/file.README.html +28 -23
- data/docs/file.api_coverage.html +14 -14
- data/docs/file.rails_setup.html +10 -10
- data/docs/file_list.html +2 -2
- data/docs/frames.html +2 -2
- data/docs/index.html +28 -23
- data/docs/js/app.js +14 -3
- data/docs/method_list.html +338 -266
- data/docs/top-level-namespace.html +6 -6
- data/lib/dropbox_api/authenticator.rb +2 -6
- data/lib/dropbox_api/client.rb +23 -2
- data/lib/dropbox_api/connection_builder.rb +38 -4
- data/lib/dropbox_api/endpoints/base.rb +24 -1
- data/lib/dropbox_api/endpoints/content_download.rb +2 -2
- data/lib/dropbox_api/endpoints/content_upload.rb +2 -2
- data/lib/dropbox_api/endpoints/files/search_continue.rb +23 -0
- data/lib/dropbox_api/endpoints/rpc.rb +2 -2
- data/lib/dropbox_api/endpoints/rpc_content.rb +2 -2
- data/lib/dropbox_api/endpoints/rpc_notify.rb +2 -2
- data/lib/dropbox_api/errors/expired_access_token_error.rb +5 -0
- data/lib/dropbox_api/metadata/basic_account.rb +7 -1
- data/lib/dropbox_api/metadata/namespace_id.rb +10 -0
- data/lib/dropbox_api/metadata/root_info.rb +32 -0
- data/lib/dropbox_api/metadata/team_root_info.rb +8 -0
- data/lib/dropbox_api/metadata/user_root_info.rb +7 -0
- data/lib/dropbox_api/middleware/path_root.rb +35 -0
- data/lib/dropbox_api/results/search_v2_result.rb +2 -3
- data/lib/dropbox_api/version.rb +1 -1
- data/lib/dropbox_api.rb +10 -3
- metadata +21 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e61a99956b140b0c8b5fe982a62e1595f68f1f4b49033f023121792582121eba
|
|
4
|
+
data.tar.gz: bad01ce29cb518859008b0e71464a46cb452b348432ae8bc162e587834dee5f6
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 02afaffdf0c402aa40233ee75742de02ebd9eb54f2bd962ca934c317abe29192ef846c159a0f2536bd35b2d1c319e0a9f0ddff6d0d260a9b76bf4886bc34e721
|
|
7
|
+
data.tar.gz: 5bf772b6b13e147323c932ec7abf731f6c846b1da43de3e763dd51a755e64776407b42565835896f2f6ff3af092b3f15b8eff75902bb50191801c2ea5946f695
|
data/README.md
CHANGED
|
@@ -56,44 +56,115 @@ DropboxApi::Client.new
|
|
|
56
56
|
#=> #<DropboxApi::Client ...>
|
|
57
57
|
```
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
|
|
59
|
+
The official documentation on the process to get an authorization code is
|
|
60
|
+
[here](https://developers.dropbox.com/es-es/oauth-guide#implementing-oauth),
|
|
61
|
+
it describes the two options listed below.
|
|
61
62
|
|
|
62
|
-
#### Option A: Get your access token from the website
|
|
63
63
|
|
|
64
|
-
|
|
65
|
-
You just need to log in to Dropbox and refer to the *developers* section, go to
|
|
66
|
-
*My apps* and select your application, you may need to create one if you
|
|
67
|
-
haven't done so yet.
|
|
64
|
+
#### Option A: Get your access token from the website
|
|
68
65
|
|
|
69
|
-
|
|
70
|
-
|
|
66
|
+
For a quick test, you can obtain an access token from the App Console in
|
|
67
|
+
[Dropbox's website](https://www.dropbox.com/developers/). Select from
|
|
68
|
+
*My apps* your application, you may need to create one if you
|
|
69
|
+
haven't done so yet. Under your application settings, find section
|
|
70
|
+
*OAuth 2*, there is a button to generate an access token.
|
|
71
71
|
|
|
72
|
-
#### Option B:
|
|
72
|
+
#### Option B: OAuth2 Code Flow
|
|
73
73
|
|
|
74
|
-
|
|
74
|
+
This is typically what you will use in production, you can obtain an
|
|
75
|
+
authorization code with a 3-step process:
|
|
75
76
|
|
|
76
77
|
```ruby
|
|
78
|
+
# 1. Get an authorization URL.
|
|
77
79
|
authenticator = DropboxApi::Authenticator.new(CLIENT_ID, CLIENT_SECRET)
|
|
78
|
-
authenticator.authorize_url #=> "https://www.dropbox.com/..."
|
|
80
|
+
authenticator.auth_code.authorize_url #=> "https://www.dropbox.com/..."
|
|
79
81
|
|
|
80
|
-
#
|
|
81
|
-
#
|
|
82
|
+
# 2. Log into Dropbox and authorize your app. You need to open the
|
|
83
|
+
# authorization URL in your browser.
|
|
82
84
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
85
|
+
# 3. Exchange the authorization code for a reusable access token (not visible
|
|
86
|
+
# to the user).
|
|
87
|
+
access_token = authenticator.auth_code.get_token(CODE) #=> #<OAuth2::AccessToken ...>`
|
|
88
|
+
access_token.token #=> "VofXAX8D..."
|
|
89
|
+
|
|
90
|
+
# Keep this token, you'll need it to initialize a `DropboxApi::Client` object:
|
|
91
|
+
client = DropboxApi::Client.new(access_token: access_token)
|
|
87
92
|
|
|
88
|
-
|
|
93
|
+
# For backwards compatibility, the following also works:
|
|
94
|
+
client = DropboxApi::Client.new(access_token.token)
|
|
95
|
+
```
|
|
89
96
|
|
|
90
|
-
|
|
91
|
-
Dropbox's [OAuth guide]
|
|
92
|
-
(https://www.dropbox.com/developers/reference/oauth-guide#oauth-2-on-the-web).
|
|
97
|
+
##### Integration with Rails
|
|
93
98
|
|
|
94
99
|
If you have a Rails application, you might be interested in this [setup
|
|
95
100
|
guide](http://jesus.github.io/dropbox_api/file.rails_setup.html).
|
|
96
101
|
|
|
102
|
+
|
|
103
|
+
##### Using refresh tokens
|
|
104
|
+
|
|
105
|
+
Access tokens are short-lived by default (as of September 30th, 2021),
|
|
106
|
+
applications that require long-lived access to the API without additional
|
|
107
|
+
interaction with the user should use refresh tokens.
|
|
108
|
+
|
|
109
|
+
The process is similar but a token refresh might seamlessly occur as you
|
|
110
|
+
perform API calls. When this happens you'll need to store the
|
|
111
|
+
new token hash if you want to continue using this session, you can use the
|
|
112
|
+
`on_token_refreshed` callback to do this.
|
|
113
|
+
|
|
114
|
+
```ruby
|
|
115
|
+
# 1. Get an authorization URL, requesting offline access type.
|
|
116
|
+
authenticator = DropboxApi::Authenticator.new(CLIENT_ID, CLIENT_SECRET)
|
|
117
|
+
authenticator.auth_code.authorize_url(token_access_type: 'offline')
|
|
118
|
+
|
|
119
|
+
# 2. Log into Dropbox and authorize your app. You need to open the
|
|
120
|
+
# authorization URL in your browser.
|
|
121
|
+
|
|
122
|
+
# 3. Exchange the authorization code for a reusable access token
|
|
123
|
+
access_token = authenticator.auth_code.get_token(CODE) #=> #<OAuth2::AccessToken ...>`
|
|
124
|
+
|
|
125
|
+
# You can now use the access token to initialize a DropboxApi::Client, you
|
|
126
|
+
# should also provide a callback function to store the updated access token
|
|
127
|
+
# whenever it's refreshed.
|
|
128
|
+
client = DropboxApi::Client.new(
|
|
129
|
+
access_token: access_token,
|
|
130
|
+
on_token_refreshed: lambda { |new_token_hash|
|
|
131
|
+
# token_hash is a serializable Hash, something like this:
|
|
132
|
+
# {
|
|
133
|
+
# "uid"=>"440",
|
|
134
|
+
# "token_type"=>"bearer",
|
|
135
|
+
# "scope"=>"account_info.read account_info.write...",
|
|
136
|
+
# "account_id"=>"dbid:AABOLtA1rT6rRK4vajKZ...",
|
|
137
|
+
# :access_token=>"sl.A5Ez_CBsqJILhDawHlmXSoZEhLZ4nuLFVRs6AJ...",
|
|
138
|
+
# :refresh_token=>"iMg4Me_oKYUAAAAAAAAAAapQixCgwfXOxuubCuK_...",
|
|
139
|
+
# :expires_at=>1632948328
|
|
140
|
+
# }
|
|
141
|
+
SomewhereSafe.save(new_token_hash)
|
|
142
|
+
}
|
|
143
|
+
)
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
Once you've gone through the process above, you can skip the steps that require
|
|
147
|
+
user interaction in subsequent initializations of `DropboxApi::Client`. For
|
|
148
|
+
example:
|
|
149
|
+
|
|
150
|
+
```ruby
|
|
151
|
+
# 1. Initialize an authenticator
|
|
152
|
+
authenticator = DropboxApi::Authenticator.new(CLIENT_ID, CLIENT_SECRET)
|
|
153
|
+
|
|
154
|
+
# 2. Retrieve the token hash you previously stored somewhere safe, you can use
|
|
155
|
+
# it to build a new access token.
|
|
156
|
+
access_token = OAuth2::AccessToken.from_hash(authenticator, token_hash)
|
|
157
|
+
|
|
158
|
+
# 3. You now have an access token, so you can initialize a client like you
|
|
159
|
+
# would normally:
|
|
160
|
+
client = DropboxApi::Client.new(
|
|
161
|
+
access_token: access_token,
|
|
162
|
+
on_token_refreshed: lambda { |new_token_hash|
|
|
163
|
+
SomewhereSafe.save(new_token_hash)
|
|
164
|
+
}
|
|
165
|
+
)
|
|
166
|
+
```
|
|
167
|
+
|
|
97
168
|
### Performing API calls
|
|
98
169
|
|
|
99
170
|
Once you've initialized a client, for example:
|
|
@@ -139,6 +210,26 @@ Check out the
|
|
|
139
210
|
[method documentation](http://www.xuuso.com/dropbox_api/DropboxApi/Client.html#upload_by_chunks-instance_method)
|
|
140
211
|
to find out all available options.
|
|
141
212
|
|
|
213
|
+
### Accessing Team Folders
|
|
214
|
+
|
|
215
|
+
In order to access your team scope you need to add the namespace_id to you request headers.
|
|
216
|
+
This can be done using the middlewere layer as per the below:
|
|
217
|
+
|
|
218
|
+
```ruby
|
|
219
|
+
client = DropboxApi::Client.new("VofXAX8D...")
|
|
220
|
+
#=> #<DropboxApi::Client ...>
|
|
221
|
+
client.namespace_id = client.get_current_account.root_info.root_namespace_id
|
|
222
|
+
|
|
223
|
+
client.list_folder('')
|
|
224
|
+
#=> Now returns the team folders
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
You could unset the namespace ID at any point afterwards with just:
|
|
228
|
+
|
|
229
|
+
```ruby
|
|
230
|
+
client.namespace_id = nil
|
|
231
|
+
```
|
|
232
|
+
|
|
142
233
|
## Dependencies
|
|
143
234
|
|
|
144
235
|
This gem depends on
|
|
@@ -6,15 +6,15 @@
|
|
|
6
6
|
<title>
|
|
7
7
|
Class: DropboxApi::Authenticator
|
|
8
8
|
|
|
9
|
-
— Documentation by YARD 0.9.
|
|
9
|
+
— Documentation by YARD 0.9.26
|
|
10
10
|
|
|
11
11
|
</title>
|
|
12
12
|
|
|
13
|
-
<link rel="stylesheet" href="../css/style.css" type="text/css"
|
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" />
|
|
14
14
|
|
|
15
|
-
<link rel="stylesheet" href="../css/common.css" type="text/css"
|
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
|
16
16
|
|
|
17
|
-
<script type="text/javascript"
|
|
17
|
+
<script type="text/javascript">
|
|
18
18
|
pathId = "DropboxApi::Authenticator";
|
|
19
19
|
relpath = '../';
|
|
20
20
|
</script>
|
|
@@ -165,7 +165,7 @@
|
|
|
165
165
|
|
|
166
166
|
</h3><div class="docstring">
|
|
167
167
|
<div class="discussion">
|
|
168
|
-
<p>Returns a new instance of Authenticator
|
|
168
|
+
<p>Returns a new instance of Authenticator.</p>
|
|
169
169
|
|
|
170
170
|
|
|
171
171
|
</div>
|
|
@@ -180,20 +180,20 @@
|
|
|
180
180
|
<pre class="lines">
|
|
181
181
|
|
|
182
182
|
|
|
183
|
-
7
|
|
184
183
|
8
|
|
185
184
|
9
|
|
186
185
|
10
|
|
187
186
|
11
|
|
188
|
-
12
|
|
187
|
+
12
|
|
188
|
+
13</pre>
|
|
189
189
|
</td>
|
|
190
190
|
<td>
|
|
191
|
-
<pre class="code"><span class="info file"># File 'lib/dropbox_api/authenticator.rb', line
|
|
191
|
+
<pre class="code"><span class="info file"># File 'lib/dropbox_api/authenticator.rb', line 8</span>
|
|
192
192
|
|
|
193
193
|
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_client_id'>client_id</span><span class='comma'>,</span> <span class='id identifier rubyid_client_secret'>client_secret</span><span class='rparen'>)</span>
|
|
194
194
|
<span class='ivar'>@auth_code</span> <span class='op'>=</span> <span class='const'>OAuth2</span><span class='op'>::</span><span class='const'>Client</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_client_id'>client_id</span><span class='comma'>,</span> <span class='id identifier rubyid_client_secret'>client_secret</span><span class='comma'>,</span> <span class='lbrace'>{</span>
|
|
195
|
-
<span class='
|
|
196
|
-
<span class='
|
|
195
|
+
<span class='label'>authorize_url:</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>https://www.dropbox.com/oauth2/authorize</span><span class='tstring_end'>'</span></span><span class='comma'>,</span>
|
|
196
|
+
<span class='label'>token_url:</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>https://api.dropboxapi.com/oauth2/token</span><span class='tstring_end'>'</span></span>
|
|
197
197
|
<span class='rbrace'>}</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_auth_code'>auth_code</span>
|
|
198
198
|
<span class='kw'>end</span></pre>
|
|
199
199
|
</td>
|
|
@@ -207,9 +207,9 @@
|
|
|
207
207
|
</div>
|
|
208
208
|
|
|
209
209
|
<div id="footer">
|
|
210
|
-
Generated on
|
|
210
|
+
Generated on Sun Feb 7 11:51:55 2021 by
|
|
211
211
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
|
212
|
-
0.9.
|
|
212
|
+
0.9.26 (ruby-2.5.1).
|
|
213
213
|
</div>
|
|
214
214
|
|
|
215
215
|
</div>
|
|
@@ -6,15 +6,15 @@
|
|
|
6
6
|
<title>
|
|
7
7
|
Class: DropboxApi::ChunkedUploader
|
|
8
8
|
|
|
9
|
-
— Documentation by YARD 0.9.
|
|
9
|
+
— Documentation by YARD 0.9.26
|
|
10
10
|
|
|
11
11
|
</title>
|
|
12
12
|
|
|
13
|
-
<link rel="stylesheet" href="../css/style.css" type="text/css"
|
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" />
|
|
14
14
|
|
|
15
|
-
<link rel="stylesheet" href="../css/common.css" type="text/css"
|
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
|
16
16
|
|
|
17
|
-
<script type="text/javascript"
|
|
17
|
+
<script type="text/javascript">
|
|
18
18
|
pathId = "DropboxApi::ChunkedUploader";
|
|
19
19
|
relpath = '../';
|
|
20
20
|
</script>
|
|
@@ -238,7 +238,7 @@
|
|
|
238
238
|
|
|
239
239
|
</h3><div class="docstring">
|
|
240
240
|
<div class="discussion">
|
|
241
|
-
<p>Returns a new instance of ChunkedUploader
|
|
241
|
+
<p>Returns a new instance of ChunkedUploader.</p>
|
|
242
242
|
|
|
243
243
|
|
|
244
244
|
</div>
|
|
@@ -253,17 +253,17 @@
|
|
|
253
253
|
<pre class="lines">
|
|
254
254
|
|
|
255
255
|
|
|
256
|
-
5
|
|
257
256
|
6
|
|
258
257
|
7
|
|
259
258
|
8
|
|
260
259
|
9
|
|
261
260
|
10
|
|
262
261
|
11
|
|
263
|
-
12
|
|
262
|
+
12
|
|
263
|
+
13</pre>
|
|
264
264
|
</td>
|
|
265
265
|
<td>
|
|
266
|
-
<pre class="code"><span class="info file"># File 'lib/dropbox_api/chunked_uploader.rb', line
|
|
266
|
+
<pre class="code"><span class="info file"># File 'lib/dropbox_api/chunked_uploader.rb', line 6</span>
|
|
267
267
|
|
|
268
268
|
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_client'>client</span><span class='comma'>,</span> <span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='id identifier rubyid_i_stream'>i_stream</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
|
269
269
|
<span class='ivar'>@chunk_size</span> <span class='op'>=</span> <span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:chunk_size</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='int'>4</span> <span class='op'>*</span> <span class='int'>1024</span> <span class='op'>*</span> <span class='int'>1024</span> <span class='comment'># 4 MiB
|
|
@@ -301,12 +301,12 @@
|
|
|
301
301
|
<pre class="lines">
|
|
302
302
|
|
|
303
303
|
|
|
304
|
-
31
|
|
305
304
|
32
|
|
306
|
-
33
|
|
305
|
+
33
|
|
306
|
+
34</pre>
|
|
307
307
|
</td>
|
|
308
308
|
<td>
|
|
309
|
-
<pre class="code"><span class="info file"># File 'lib/dropbox_api/chunked_uploader.rb', line
|
|
309
|
+
<pre class="code"><span class="info file"># File 'lib/dropbox_api/chunked_uploader.rb', line 32</span>
|
|
310
310
|
|
|
311
311
|
<span class='kw'>def</span> <span class='id identifier rubyid_finish'>finish</span>
|
|
312
312
|
<span class='ivar'>@client</span><span class='period'>.</span><span class='id identifier rubyid_upload_session_finish'>upload_session_finish</span> <span class='ivar'>@cursor</span><span class='comma'>,</span> <span class='ivar'>@commit_info</span>
|
|
@@ -332,19 +332,19 @@
|
|
|
332
332
|
<pre class="lines">
|
|
333
333
|
|
|
334
334
|
|
|
335
|
-
14
|
|
336
335
|
15
|
|
337
336
|
16
|
|
338
337
|
17
|
|
339
338
|
18
|
|
340
|
-
19
|
|
339
|
+
19
|
|
340
|
+
20</pre>
|
|
341
341
|
</td>
|
|
342
342
|
<td>
|
|
343
|
-
<pre class="code"><span class="info file"># File 'lib/dropbox_api/chunked_uploader.rb', line
|
|
343
|
+
<pre class="code"><span class="info file"># File 'lib/dropbox_api/chunked_uploader.rb', line 15</span>
|
|
344
344
|
|
|
345
345
|
<span class='kw'>def</span> <span class='id identifier rubyid_start'>start</span>
|
|
346
346
|
<span class='id identifier rubyid_chunk'>chunk</span> <span class='op'>=</span> <span class='ivar'>@i_stream</span><span class='period'>.</span><span class='id identifier rubyid_read'>read</span> <span class='ivar'>@chunk_size</span>
|
|
347
|
-
<span class='id identifier rubyid_chunk'>chunk</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'
|
|
347
|
+
<span class='id identifier rubyid_chunk'>chunk</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_chunk'>chunk</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
|
348
348
|
|
|
349
349
|
<span class='ivar'>@cursor</span> <span class='op'>=</span> <span class='ivar'>@client</span><span class='period'>.</span><span class='id identifier rubyid_upload_session_start'>upload_session_start</span> <span class='id identifier rubyid_chunk'>chunk</span>
|
|
350
350
|
<span class='kw'>end</span></pre>
|
|
@@ -369,7 +369,6 @@
|
|
|
369
369
|
<pre class="lines">
|
|
370
370
|
|
|
371
371
|
|
|
372
|
-
21
|
|
373
372
|
22
|
|
374
373
|
23
|
|
375
374
|
24
|
|
@@ -377,10 +376,11 @@
|
|
|
377
376
|
26
|
|
378
377
|
27
|
|
379
378
|
28
|
|
380
|
-
29
|
|
379
|
+
29
|
|
380
|
+
30</pre>
|
|
381
381
|
</td>
|
|
382
382
|
<td>
|
|
383
|
-
<pre class="code"><span class="info file"># File 'lib/dropbox_api/chunked_uploader.rb', line
|
|
383
|
+
<pre class="code"><span class="info file"># File 'lib/dropbox_api/chunked_uploader.rb', line 22</span>
|
|
384
384
|
|
|
385
385
|
<span class='kw'>def</span> <span class='id identifier rubyid_upload'>upload</span>
|
|
386
386
|
<span class='id identifier rubyid_loop'>loop</span> <span class='kw'>do</span>
|
|
@@ -401,9 +401,9 @@
|
|
|
401
401
|
</div>
|
|
402
402
|
|
|
403
403
|
<div id="footer">
|
|
404
|
-
Generated on
|
|
404
|
+
Generated on Sun Feb 7 11:51:55 2021 by
|
|
405
405
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
|
406
|
-
0.9.
|
|
406
|
+
0.9.26 (ruby-2.5.1).
|
|
407
407
|
</div>
|
|
408
408
|
|
|
409
409
|
</div>
|