AI Newsletter Digest improvements: fixed QP soft line break decoding, URL extraction, and content cleaning
This commit is contained in:
@@ -11,11 +11,9 @@
|
||||
|
||||
**Note:** Dropbox Business API uses POST for almost all endpoints, including read operations. Request bodies should be JSON (use `null` for endpoints with no parameters).
|
||||
|
||||
## Common Endpoints
|
||||
## Team Information
|
||||
|
||||
### Team Information
|
||||
|
||||
#### Get Team Info
|
||||
### Get Team Info
|
||||
```bash
|
||||
POST /dropbox-business/2/team/get_info
|
||||
Content-Type: application/json
|
||||
@@ -23,39 +21,72 @@ Content-Type: application/json
|
||||
null
|
||||
```
|
||||
|
||||
#### Get Team Features
|
||||
### Get Team Features
|
||||
```bash
|
||||
POST /dropbox-business/2/team/features/get_values
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"features": [{".tag": "upload_api_rate_limit"}]
|
||||
"features": [
|
||||
{".tag": "upload_api_rate_limit"},
|
||||
{".tag": "has_team_shared_dropbox"},
|
||||
{".tag": "has_team_file_events"},
|
||||
{".tag": "has_team_selective_sync"}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Team Members
|
||||
### Get Authenticated Admin
|
||||
```bash
|
||||
POST /dropbox-business/2/team/token/get_authenticated_admin
|
||||
Content-Type: application/json
|
||||
|
||||
#### List Members
|
||||
null
|
||||
```
|
||||
|
||||
## Team Members
|
||||
|
||||
### List Members
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/list
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"limit": 100
|
||||
}
|
||||
{"limit": 100}
|
||||
```
|
||||
|
||||
#### Get Member Info
|
||||
### List Members (V2) - Recommended
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/list_v2
|
||||
Content-Type: application/json
|
||||
|
||||
{"limit": 100, "include_removed": false}
|
||||
```
|
||||
|
||||
### Continue Listing Members
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/list/continue
|
||||
Content-Type: application/json
|
||||
|
||||
{"cursor": "..."}
|
||||
```
|
||||
|
||||
### Get Member Info
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/get_info
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"members": [{".tag": "email", "email": "user@company.com"}]
|
||||
}
|
||||
{"members": [{".tag": "email", "email": "user@company.com"}]}
|
||||
```
|
||||
|
||||
#### Add Member
|
||||
### Get Member Info (V2) - Recommended
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/get_info_v2
|
||||
Content-Type: application/json
|
||||
|
||||
{"members": [{".tag": "email", "email": "user@company.com"}]}
|
||||
```
|
||||
|
||||
### Add Member
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/add
|
||||
Content-Type: application/json
|
||||
@@ -64,24 +95,152 @@ Content-Type: application/json
|
||||
"new_members": [{
|
||||
"member_email": "user@company.com",
|
||||
"member_given_name": "John",
|
||||
"member_surname": "Doe"
|
||||
"member_surname": "Doe",
|
||||
"send_welcome_email": true
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### Groups
|
||||
### Suspend Member
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/suspend
|
||||
Content-Type: application/json
|
||||
|
||||
#### List Groups
|
||||
{"user": {".tag": "email", "email": "user@company.com"}, "wipe_data": false}
|
||||
```
|
||||
|
||||
### Unsuspend Member
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/unsuspend
|
||||
Content-Type: application/json
|
||||
|
||||
{"user": {".tag": "email", "email": "user@company.com"}}
|
||||
```
|
||||
|
||||
### Remove Member
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/remove
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"user": {".tag": "email", "email": "user@company.com"},
|
||||
"wipe_data": true,
|
||||
"transfer_dest_id": {".tag": "email", "email": "admin@company.com"},
|
||||
"transfer_admin_id": {".tag": "email", "email": "admin@company.com"},
|
||||
"keep_account": false
|
||||
}
|
||||
```
|
||||
|
||||
### Send Welcome Email
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/send_welcome_email
|
||||
Content-Type: application/json
|
||||
|
||||
{".tag": "email", "email": "pending@company.com"}
|
||||
```
|
||||
|
||||
### Set Member Profile (V2)
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/set_profile_v2
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"user": {".tag": "team_member_id", "team_member_id": "dbmid:AAA..."},
|
||||
"new_given_name": "John",
|
||||
"new_surname": "Smith"
|
||||
}
|
||||
```
|
||||
|
||||
### Set Admin Permissions (V2)
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/set_admin_permissions_v2
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"user": {".tag": "email", "email": "user@company.com"},
|
||||
"new_roles": ["pid_dbtmr:..."]
|
||||
}
|
||||
```
|
||||
|
||||
### Delete Profile Photo (V2)
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/delete_profile_photo_v2
|
||||
Content-Type: application/json
|
||||
|
||||
{"user": {".tag": "team_member_id", "team_member_id": "dbmid:AAA..."}}
|
||||
```
|
||||
|
||||
## Secondary Emails
|
||||
|
||||
### Add Secondary Emails
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/secondary_emails/add
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"new_secondary_emails": [{
|
||||
"user": {".tag": "email", "email": "user@company.com"},
|
||||
"secondary_emails": ["alias@company.com"]
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### Delete Secondary Emails
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/secondary_emails/delete
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"emails_to_delete": [{
|
||||
"user": {".tag": "email", "email": "user@company.com"},
|
||||
"secondary_emails": ["alias@company.com"]
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### Resend Verification Emails
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/secondary_emails/resend_verification_emails
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"emails_to_resend": [{
|
||||
"user": {".tag": "email", "email": "user@company.com"},
|
||||
"secondary_emails": ["alias@company.com"]
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
## Groups
|
||||
|
||||
### List Groups
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/list
|
||||
Content-Type: application/json
|
||||
|
||||
{"limit": 100}
|
||||
```
|
||||
|
||||
### Get Group Info
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/get_info
|
||||
Content-Type: application/json
|
||||
|
||||
{".tag": "group_ids", "group_ids": ["g:1d31f47b..."]}
|
||||
```
|
||||
|
||||
### List Group Members
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/members/list
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"group": {".tag": "group_id", "group_id": "g:1d31f47b..."},
|
||||
"limit": 100
|
||||
}
|
||||
```
|
||||
|
||||
#### Create Group
|
||||
### Create Group
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/create
|
||||
Content-Type: application/json
|
||||
@@ -92,43 +251,136 @@ Content-Type: application/json
|
||||
}
|
||||
```
|
||||
|
||||
### Team Folders
|
||||
### Update Group
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/update
|
||||
Content-Type: application/json
|
||||
|
||||
#### List Team Folders
|
||||
{
|
||||
"group": {".tag": "group_id", "group_id": "g:1d31f47b..."},
|
||||
"new_group_name": "New Name"
|
||||
}
|
||||
```
|
||||
|
||||
### Add Members to Group
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/members/add
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"group": {".tag": "group_id", "group_id": "g:1d31f47b..."},
|
||||
"members": [{"user": {".tag": "email", "email": "user@company.com"}, "access_type": {".tag": "member"}}],
|
||||
"return_members": true
|
||||
}
|
||||
```
|
||||
|
||||
### Remove Members from Group
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/members/remove
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"group": {".tag": "group_id", "group_id": "g:1d31f47b..."},
|
||||
"users": [{".tag": "email", "email": "user@company.com"}],
|
||||
"return_members": true
|
||||
}
|
||||
```
|
||||
|
||||
### Delete Group
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/delete
|
||||
Content-Type: application/json
|
||||
|
||||
{".tag": "group_id", "group_id": "g:1d31f47b..."}
|
||||
```
|
||||
|
||||
### Check Group Job Status
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/job_status/get
|
||||
Content-Type: application/json
|
||||
|
||||
{"async_job_id": "dbjid:..."}
|
||||
```
|
||||
|
||||
## Team Folders
|
||||
|
||||
### List Team Folders
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/list
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"limit": 100
|
||||
}
|
||||
{"limit": 100}
|
||||
```
|
||||
|
||||
#### Create Team Folder
|
||||
### Get Team Folder Info
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/get_info
|
||||
Content-Type: application/json
|
||||
|
||||
{"team_folder_ids": ["13646676387"]}
|
||||
```
|
||||
|
||||
### Create Team Folder
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/create
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"name": "Folder Name"
|
||||
}
|
||||
{"name": "Folder Name", "sync_setting": {".tag": "default"}}
|
||||
```
|
||||
|
||||
### Namespaces
|
||||
### Rename Team Folder
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/rename
|
||||
Content-Type: application/json
|
||||
|
||||
#### List Namespaces
|
||||
{"team_folder_id": "13646676387", "name": "New Name"}
|
||||
```
|
||||
|
||||
### Archive Team Folder
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/archive
|
||||
Content-Type: application/json
|
||||
|
||||
{"team_folder_id": "13646676387", "force_async_off": false}
|
||||
```
|
||||
|
||||
### Activate Team Folder
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/activate
|
||||
Content-Type: application/json
|
||||
|
||||
{"team_folder_id": "13646676387"}
|
||||
```
|
||||
|
||||
### Update Sync Settings
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/update_sync_settings
|
||||
Content-Type: application/json
|
||||
|
||||
{"team_folder_id": "13646676387", "sync_setting": {".tag": "default"}}
|
||||
```
|
||||
|
||||
### Permanently Delete Team Folder
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/permanently_delete
|
||||
Content-Type: application/json
|
||||
|
||||
{"team_folder_id": "13646676387"}
|
||||
```
|
||||
|
||||
## Namespaces
|
||||
|
||||
### List Namespaces
|
||||
```bash
|
||||
POST /dropbox-business/2/team/namespaces/list
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"limit": 100
|
||||
}
|
||||
{"limit": 100}
|
||||
```
|
||||
|
||||
### Devices
|
||||
## Devices
|
||||
|
||||
#### List Members' Devices
|
||||
### List Members' Devices
|
||||
```bash
|
||||
POST /dropbox-business/2/team/devices/list_members_devices
|
||||
Content-Type: application/json
|
||||
@@ -136,16 +388,147 @@ Content-Type: application/json
|
||||
{}
|
||||
```
|
||||
|
||||
### Audit Log
|
||||
### List Member Devices
|
||||
```bash
|
||||
POST /dropbox-business/2/team/devices/list_member_devices
|
||||
Content-Type: application/json
|
||||
|
||||
#### Get Events
|
||||
{"team_member_id": "dbmid:AAA..."}
|
||||
```
|
||||
|
||||
### Revoke Device Session
|
||||
```bash
|
||||
POST /dropbox-business/2/team/devices/revoke_device_session
|
||||
Content-Type: application/json
|
||||
|
||||
{".tag": "web_session", "session_id": "dbwsid:...", "team_member_id": "dbmid:AAA..."}
|
||||
```
|
||||
|
||||
### Revoke Device Sessions (Batch)
|
||||
```bash
|
||||
POST /dropbox-business/2/team/devices/revoke_device_session_batch
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"revoke_devices": [
|
||||
{".tag": "web_session", "session_id": "dbwsid:...", "team_member_id": "dbmid:AAA..."}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
## Linked Apps
|
||||
|
||||
### List Members' Linked Apps
|
||||
```bash
|
||||
POST /dropbox-business/2/team/linked_apps/list_members_linked_apps
|
||||
Content-Type: application/json
|
||||
|
||||
{}
|
||||
```
|
||||
|
||||
### List Team Linked Apps
|
||||
```bash
|
||||
POST /dropbox-business/2/team/linked_apps/list_team_linked_apps
|
||||
Content-Type: application/json
|
||||
|
||||
{}
|
||||
```
|
||||
|
||||
### Revoke Linked App
|
||||
```bash
|
||||
POST /dropbox-business/2/team/linked_apps/revoke_linked_app
|
||||
Content-Type: application/json
|
||||
|
||||
{"app_id": "...", "team_member_id": "dbmid:AAA..."}
|
||||
```
|
||||
|
||||
## Member Space Limits
|
||||
|
||||
### Get Custom Quotas
|
||||
```bash
|
||||
POST /dropbox-business/2/team/member_space_limits/get_custom_quota
|
||||
Content-Type: application/json
|
||||
|
||||
{"users": [{".tag": "email", "email": "user@company.com"}]}
|
||||
```
|
||||
|
||||
### Set Custom Quotas
|
||||
```bash
|
||||
POST /dropbox-business/2/team/member_space_limits/set_custom_quota
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"users_and_quotas": [{
|
||||
"user": {".tag": "email", "email": "user@company.com"},
|
||||
"quota_gb": 100
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### List Excluded Users
|
||||
```bash
|
||||
POST /dropbox-business/2/team/member_space_limits/excluded_users/list
|
||||
Content-Type: application/json
|
||||
|
||||
{}
|
||||
```
|
||||
|
||||
## Sharing Allowlist
|
||||
|
||||
### List Sharing Allowlist
|
||||
```bash
|
||||
POST /dropbox-business/2/team/sharing_allowlist/list
|
||||
Content-Type: application/json
|
||||
|
||||
{}
|
||||
```
|
||||
|
||||
### Add to Sharing Allowlist
|
||||
```bash
|
||||
POST /dropbox-business/2/team/sharing_allowlist/add
|
||||
Content-Type: application/json
|
||||
|
||||
{"domains": ["partner.com"], "emails": ["external@client.com"]}
|
||||
```
|
||||
|
||||
## Audit Log (Team Log)
|
||||
|
||||
### Get Events
|
||||
```bash
|
||||
POST /dropbox-business/2/team_log/get_events
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"limit": 100
|
||||
}
|
||||
{"limit": 100, "category": {".tag": "members"}}
|
||||
```
|
||||
|
||||
### Continue Getting Events
|
||||
```bash
|
||||
POST /dropbox-business/2/team_log/get_events/continue
|
||||
Content-Type: application/json
|
||||
|
||||
{"cursor": "..."}
|
||||
```
|
||||
|
||||
## Member File Access
|
||||
|
||||
Use the `Dropbox-API-Select-User` header with a team_member_id to access files on behalf of a member.
|
||||
|
||||
### List Member's Files
|
||||
```bash
|
||||
POST /dropbox-business/2/files/list_folder
|
||||
Content-Type: application/json
|
||||
Dropbox-API-Select-User: dbmid:AAA...
|
||||
|
||||
{"path": ""}
|
||||
```
|
||||
|
||||
### List Member's Shared Folders
|
||||
```bash
|
||||
POST /dropbox-business/2/sharing/list_folders
|
||||
Content-Type: application/json
|
||||
Dropbox-API-Select-User: dbmid:AAA...
|
||||
|
||||
{}
|
||||
```
|
||||
|
||||
## Notes
|
||||
@@ -154,9 +537,28 @@ Content-Type: application/json
|
||||
- Request bodies must be JSON (use `null` for no-parameter endpoints)
|
||||
- Many fields use `.tag` format for type indication
|
||||
- Pagination uses `cursor` and `has_more` fields
|
||||
- Requires team admin OAuth authorization
|
||||
- Use V2 endpoints for enhanced responses with roles info
|
||||
- `Dropbox-API-Select-User` header enables member file access
|
||||
- System-managed groups cannot be modified
|
||||
- Reports endpoints (`team/reports/*`) are deprecated
|
||||
|
||||
## OAuth Scopes
|
||||
|
||||
| Scope | Usage |
|
||||
|-------|-------|
|
||||
| `team_info.read` | Team info, features |
|
||||
| `members.read` | List/get members |
|
||||
| `members.write` | Add/modify members |
|
||||
| `members.delete` | Remove members |
|
||||
| `groups.read` | List/get groups |
|
||||
| `groups.write` | Create/modify groups |
|
||||
| `sessions.list` | List devices/sessions |
|
||||
| `sessions.modify` | Revoke sessions |
|
||||
| `events.read` | Team audit log |
|
||||
| `team_data.member` | Select-User header |
|
||||
|
||||
## Resources
|
||||
|
||||
- [Dropbox Business API Documentation](https://www.dropbox.com/developers/documentation/http/teams)
|
||||
- [Team Administration Guide](https://developers.dropbox.com/dbx-team-administration-guide)
|
||||
- [Team Files Guide](https://developers.dropbox.com/dbx-team-files-guide)
|
||||
|
||||
Reference in New Issue
Block a user