pax_global_header00006660000000000000000000000064146273713050014522gustar00rootroot0000000000000052 comment=b3970496747c3e1e12a0149c330952676505d104 dropbox-sdk-python-12.0.2/000077500000000000000000000000001462737130500153575ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/.coveragerc000066400000000000000000000000451462737130500174770ustar00rootroot00000000000000[run] branch = True source = dropbox/dropbox-sdk-python-12.0.2/.github/000077500000000000000000000000001462737130500167175ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/.github/ISSUE_TEMPLATE/000077500000000000000000000000001462737130500211025ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/.github/ISSUE_TEMPLATE/bug_report.md000066400000000000000000000012521462737130500235740ustar00rootroot00000000000000--- name: "\U0001F41B Bug report" about: Create a report to help us improve the SDK title: '' labels: bug assignees: '' --- **Describe the bug** A clear and concise description of the bug. **To Reproduce** The steps to reproduce the behavior **Expected Behavior** A clear description of what you expected to happen. **Actual Behavior** A clear description of what actually happened **Screenshots** If applicable, add screenshots to help explain your problem. **Versions** * What version of the SDK are you using? * What version of the language are you using? * What platform are you using? (if applicable) **Additional context** Add any other context about the problem here.dropbox-sdk-python-12.0.2/.github/ISSUE_TEMPLATE/config.yml000066400000000000000000000000331462737130500230660ustar00rootroot00000000000000blank_issues_enabled: falsedropbox-sdk-python-12.0.2/.github/ISSUE_TEMPLATE/feature_request.md000066400000000000000000000012131462737130500246240ustar00rootroot00000000000000--- name: "\U0001F680 Feature Request" about: Suggest an idea for this SDK title: '' labels: enhancement assignees: '' --- **Why is this feature valuable to you? Does it solve a problem you're having?** A clear and concise description of why this feature is valuable. Ex. I'm always frustrated when [...] **Describe the solution you'd like** A clear and concise description of what you want to happen. **Describe alternatives you've considered** A clear and concise description of any alternative solutions or features you've considered. (if applicable) **Additional context** Add any other context or screenshots about the feature request here. dropbox-sdk-python-12.0.2/.github/ISSUE_TEMPLATE/question_help.md000066400000000000000000000011711462737130500243030ustar00rootroot00000000000000--- name: "\U0001F4AC Questions / Help" about: Get help with issues you are experiencing title: '' labels: help-wanted, question assignees: '' --- **Before you start** Have you checked StackOverflow, previous issues, and Dropbox Developer Forums for help? **What is your question?** A clear and concise description of the question. **Screenshots** If applicable, add screenshots to help explain your question. **Versions** * What version of the SDK are you using? * What version of the language are you using? * What platform are you using? (if applicable) **Additional context** Add any other context about the question here. dropbox-sdk-python-12.0.2/.github/dependabot.yml000066400000000000000000000011331462737130500215450ustar00rootroot00000000000000# To get started with Dependabot version updates, you'll need to specify which # package ecosystems to update and where the package manifests are located. # Please see the documentation for all configuration options: # https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates version: 2 updates: - package-ecosystem: "pip" # See documentation for possible values directory: "/" # Location of package manifests schedule: interval: "monthly" - package-ecosystem: "github-actions" directory: "/" schedule: interval: "monthly" dropbox-sdk-python-12.0.2/.github/pull_request_template.md000066400000000000000000000007301462737130500236600ustar00rootroot00000000000000 ## **Checklist** **General Contributing** - [ ] Have you read the Code of Conduct and signed the [CLA](https://opensource.dropbox.com/cla/)? **Is This a Code Change?** - [ ] Non-code related change (markdown/git settings etc) - [ ] SDK Code Change - [ ] Example/Test Code Change **Validation** - [ ] Does `tox` pass? - [ ] Do the tests pass?dropbox-sdk-python-12.0.2/.github/workflows/000077500000000000000000000000001462737130500207545ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/.github/workflows/ci.yml000066400000000000000000000105531462737130500220760ustar00rootroot00000000000000name: CI on: pull_request: jobs: CI: continue-on-error: true runs-on: ${{ matrix.os }} # Supported Versions: # https://github.com/actions/python-versions/blob/main/versions-manifest.json strategy: matrix: os: [macos-13, windows-latest] python-version: [3.6, 3.7, 3.8, pypy-3.7] exclude: - os: windows-latest python-version: 3.6 include: - os: ubuntu-20.04 python-version: 3.7 - os: ubuntu-20.04 python-version: 2.7 steps: - uses: actions/checkout@v2 - if: ${{ matrix.python-version == '2.7' }} name: Setup Python environment (2.7) run: | sudo apt-get install python-is-python2 curl -sSL https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py python get-pip.py - if: ${{ matrix.python-version != '2.7' }} name: Setup Python environment uses: actions/setup-python@v3.1.4 with: python-version: ${{ matrix.python-version }} - name: Install Requirements run: | python -m pip install --upgrade pip pip install flake8 pytest pip install -r requirements.txt pip install -r test/requirements.txt python setup.py install --user - name: Run Linter run: | flake8 setup.py dropbox example test - name: Run Unit Tests run: | pytest -v test/unit/test_dropbox_unit.py Docs: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v2 - name: Setup Python environment uses: actions/setup-python@v3.1.4 with: python-version: '3.7' - name: Install Requirements run: | python -m pip install --upgrade pip pip install twine sphinx pip install -r requirements.txt pip install -r test/requirements.txt python setup.py install - name: Test Doc Generation run: | sphinx-build -b html docs build/html - name: Test Dist Generation run: | python setup.py sdist bdist_wheel twine check dist/* Integration: continue-on-error: true runs-on: ${{ matrix.os }} strategy: matrix: os: [macos-13, windows-latest] python-version: [3.6, 3.7, 3.8, pypy-3.7] exclude: - os: windows-latest python-version: 3.6 include: - os: ubuntu-20.04 python-version: 3.7 - os: ubuntu-20.04 python-version: 2.7 steps: - uses: actions/checkout@v2.3.4 - if: ${{ matrix.python-version == '2.7' }} name: Setup Python environment (2.7) run: | sudo apt-get install python-is-python2 curl -sSL https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py python get-pip.py - if: ${{ matrix.python-version != '2.7' }} name: Setup Python environment uses: actions/setup-python@v3.1.4 with: python-version: ${{ matrix.python-version }} - name: Install Requirements run: | python -m pip install --upgrade pip pip install flake8 pytest pip install -r requirements.txt pip install -r test/requirements.txt python setup.py install --user - name: Run Integration Tests env: LEGACY_USER_DROPBOX_TOKEN: ${{ secrets.LEGACY_USER_DROPBOX_TOKEN }} LEGACY_USER_CLIENT_ID: ${{ secrets.LEGACY_USER_CLIENT_ID }} LEGACY_USER_CLIENT_SECRET: ${{ secrets.LEGACY_USER_CLIENT_SECRET }} LEGACY_USER_REFRESH_TOKEN: ${{ secrets.LEGACY_USER_REFRESH_TOKEN }} SCOPED_USER_DROPBOX_TOKEN: ${{ secrets.SCOPED_USER_DROPBOX_TOKEN }} SCOPED_USER_CLIENT_ID: ${{ secrets.SCOPED_USER_CLIENT_ID }} SCOPED_USER_CLIENT_SECRET: ${{ secrets.SCOPED_USER_CLIENT_SECRET }} SCOPED_USER_REFRESH_TOKEN: ${{ secrets.SCOPED_USER_REFRESH_TOKEN }} SCOPED_TEAM_DROPBOX_TOKEN: ${{ secrets.SCOPED_TEAM_DROPBOX_TOKEN }} SCOPED_TEAM_CLIENT_ID: ${{ secrets.SCOPED_TEAM_CLIENT_ID }} SCOPED_TEAM_CLIENT_SECRET: ${{ secrets.SCOPED_TEAM_CLIENT_SECRET }} SCOPED_TEAM_REFRESH_TOKEN: ${{ secrets.SCOPED_TEAM_REFRESH_TOKEN }} DROPBOX_SHARED_LINK: ${{ secrets.DROPBOX_SHARED_LINK }} run: | pytest -v test/integration/test_dropbox.py dropbox-sdk-python-12.0.2/.github/workflows/coverage.yml000066400000000000000000000053201462737130500232720ustar00rootroot00000000000000name: Coverage on: push: branches: - main pull_request: schedule: - cron: 0 0 * * * jobs: Coverage: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Setup Python environment uses: actions/setup-python@v3.1.4 with: python-version: '3.7' - name: Install Requirements run: | python -m pip install --upgrade pip pip install coverage pytest pip install -r requirements.txt pip install -r test/requirements.txt python setup.py install - name: Generate Unit Test Coverage run: | coverage run --rcfile=.coveragerc -m pytest test/unit/test_dropbox_unit.py coverage xml - name: Publish Coverage uses: codecov/codecov-action@v3.1.6 with: token: ${{ secrets.CODECOV_TOKEN }} flags: unit fail_ci_if_error: true IntegrationCoverage: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Setup Python environment uses: actions/setup-python@v3.1.4 with: python-version: '3.7' - name: Install Requirements run: | python -m pip install --upgrade pip pip install coverage pytest pip install -r requirements.txt pip install -r test/requirements.txt python setup.py install - name: Generate Unit Test Coverage env: LEGACY_USER_DROPBOX_TOKEN: ${{ secrets.LEGACY_USER_DROPBOX_TOKEN }} LEGACY_USER_CLIENT_ID: ${{ secrets.LEGACY_USER_CLIENT_ID }} LEGACY_USER_CLIENT_SECRET: ${{ secrets.LEGACY_USER_CLIENT_SECRET }} LEGACY_USER_REFRESH_TOKEN: ${{ secrets.LEGACY_USER_REFRESH_TOKEN }} SCOPED_USER_DROPBOX_TOKEN: ${{ secrets.SCOPED_USER_DROPBOX_TOKEN }} SCOPED_USER_CLIENT_ID: ${{ secrets.SCOPED_USER_CLIENT_ID }} SCOPED_USER_CLIENT_SECRET: ${{ secrets.SCOPED_USER_CLIENT_SECRET }} SCOPED_USER_REFRESH_TOKEN: ${{ secrets.SCOPED_USER_REFRESH_TOKEN }} SCOPED_TEAM_DROPBOX_TOKEN: ${{ secrets.SCOPED_TEAM_DROPBOX_TOKEN }} SCOPED_TEAM_CLIENT_ID: ${{ secrets.SCOPED_TEAM_CLIENT_ID }} SCOPED_TEAM_CLIENT_SECRET: ${{ secrets.SCOPED_TEAM_CLIENT_SECRET }} SCOPED_TEAM_REFRESH_TOKEN: ${{ secrets.SCOPED_TEAM_REFRESH_TOKEN }} DROPBOX_SHARED_LINK: ${{ secrets.DROPBOX_SHARED_LINK }} run: | coverage run --rcfile=.coveragerc -m pytest test/integration/test_dropbox.py coverage xml - name: Publish Coverage uses: codecov/codecov-action@v3.1.6 with: token: ${{ secrets.CODECOV_TOKEN }} flags: integration fail_ci_if_error: true dropbox-sdk-python-12.0.2/.github/workflows/pypiupload.yml000066400000000000000000000025731462737130500236740ustar00rootroot00000000000000# This workflows will upload a Python Package using Twine when a release is created # For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries name: Publish to PyPi on: release: types: [created] jobs: deploy: runs-on: ubuntu-20.04 strategy: matrix: python-version: [2.7, 3.7] steps: - uses: actions/checkout@v2.3.4 - if: ${{ matrix.python-version == '2.7' }} name: Setup Python environment (2.7) run: | sudo apt-get install python-is-python2 curl -sSL https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py python get-pip.py - if: ${{ matrix.python-version != '2.7' }} name: Setup Python environment uses: actions/setup-python@v3.1.4 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install setuptools wheel twine - name: Build run: | python setup.py bdist_wheel - name: Build Sources (Python 3) run: python setup.py sdist if: ${{ matrix.python-version != '2.7' }} - name: Publish env: TWINE_USERNAME: __token__ TWINE_PASSWORD: ${{ secrets.pypi_secret }} run: | twine check dist/* twine upload dist/* dropbox-sdk-python-12.0.2/.github/workflows/spec_update.yml000066400000000000000000000043171462737130500240000ustar00rootroot00000000000000name: Spec Update on: workflow_dispatch: repository_dispatch: types: [spec_update] jobs: Update: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Setup Python environment uses: actions/setup-python@v3.1.4 with: python-version: 3.7 - name: Get current time uses: 1466587594/get-current-time@v2 id: current-time with: format: YYYY_MM_DD utcOffset: "-08:00" - name: Update Modules run: | git submodule init git submodule update --remote --recursive - name: Generate Branch Name id: git-branch run: | echo "::set-output name=branch::spec_update_${{ steps.current-time.outputs.formattedTime }}" - name: Generate Num Diffs id: git-diff-num run: | diffs=$(git diff --submodule spec | grep ">" | wc -l) echo "Number of Spec diffs: $diffs" echo "::set-output name=num-diff::$diffs" - name: Generate Diff id: git-diff run: | cd spec gitdiff=$(git log -n ${{ steps.git-diff-num.outputs.num-diff }} --pretty="format:%n %H %n%n %b") commit="Automated Spec Update $gitdiff" commit="${commit//'%'/'%25'}" commit="${commit//$'\n'/'%0A'}" commit="${commit//$'\r'/'%0D'}" echo "Commit Message: $commit" echo "::set-output name=commit::$commit" cd .. - name: Generate New Routes run: | python -m pip install --upgrade pip pip install -r requirements.txt python generate_base_client.py - name: Create Pull Request uses: peter-evans/create-pull-request@v5.0.0 if: steps.git-diff-num.outputs.num-diff != 0 with: token: ${{ secrets.SPEC_UPDATE_TOKEN }} commit-message: | ${{ steps.git-diff.outputs.commit}} branch: ${{ steps.git-branch.outputs.branch }} delete-branch: true title: 'Automated Spec Update' body: | ${{ steps.git-diff.outputs.commit}} base: 'main' team-reviewers: | owners maintainers draft: false dropbox-sdk-python-12.0.2/.gitignore000066400000000000000000000003401462737130500173440ustar00rootroot00000000000000# Coverage Files .coverage coverage.xml # Generic Python files /.cache/ /.eggs/ /.idea/ /.tox/ /build/ /dist/ /docs/_build/ __pycache__/ .DS_Store *.egg *.egg-info/ *.pyc *.pyo *~ # Virtual Environments .venv venv/ venv3/ dropbox-sdk-python-12.0.2/.gitmodules000066400000000000000000000001271462737130500175340ustar00rootroot00000000000000[submodule "spec"] path = spec url = https://github.com/dropbox/dropbox-api-spec.git dropbox-sdk-python-12.0.2/.pylintrc000066400000000000000000000002751462737130500172300ustar00rootroot00000000000000[MESSAGES CONTROL] disable=C,R,file-ignored,fixme,locally-disabled,protected-access,useless-else-on-loop,unnecessary-pass,raise-missing-from enable=useless-suppression [REPORTS] reports=n dropbox-sdk-python-12.0.2/.readthedocs.yml000066400000000000000000000005141462737130500204450ustar00rootroot00000000000000# .readthedocs.yaml # Read the Docs configuration file # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details version: 2 build: os: ubuntu-20.04 tools: python: "3.7" python: install: - requirements: requirements.txt - method: setuptools path: . sphinx: configuration: docs/conf.py dropbox-sdk-python-12.0.2/CODE_OF_CONDUCT.md000066400000000000000000000004751462737130500201640ustar00rootroot00000000000000# Dropbox Code Of Conduct *Dropbox believes that an inclusive development environment fosters greater technical achievement. To encourage a diverse group of contributors we've adopted this code of conduct.* Please read the Official Dropbox [Code of Conduct](https://opensource.dropbox.com/coc/) before contributing.dropbox-sdk-python-12.0.2/CONTRIBUTING.md000066400000000000000000000064061462737130500176160ustar00rootroot00000000000000# Contributing to the Dropbox SDK for Python We value and rely on the feedback from our community. This comes in the form of bug reports, feature requests, and general guidance. We welcome your issues and pull requests and try our hardest to be timely in both response and resolution. Please read through this document before submitting issues or pull requests to ensure we have the necessary information to help you resolve your issue. ## Filing Bug Reports You can file a bug report on the [GitHub Issues][issues] page. 1. Search through existing issues to ensure that your issue has not been reported. If it is a common issue, there is likely already an issue. 2. Please ensure you are using the latest version of the SDK. While this may be a valid issue, we only will fix bugs affecting the latest version and your bug may have been fixed in a newer version. 3. Provide as much information as you can regarding the language version, SDK version, and any other relevant information about your environment so we can help resolve the issue as quickly as possible. ## Submitting Pull Requests We are more than happy to recieve pull requests helping us improve the state of our SDK. You can open a new pull request on the [GitHub Pull Requests][pr] page. 1. Please ensure that you have read the [License][license], [Code of Conduct][coc] and have signed the [Contributing License Agreement (CLA)][cla]. 2. Please add tests confirming the new functionality works. Pull requests will not be merged without passing continuous integration tests unless the pull requests aims to fix existing issues with these tests. ## Updating Generated Code Generated code can be updated by running the following code: ``` $ pip install -r requirements.txt $ git submodule init $ git submodule update --remote --recursive $ python generate_base_client.py ``` Note: Stone updates must be made by updating `requirements.txt` as it is no longer a submodule. ## Testing the Code We use the [`tox`](https://tox.readthedocs.org/) package to run tests. To install and run the unit tests, you can use: ``` $ pip install tox $ tox ``` Or if you would like to specify a specific target to run you can run this: ``` $ tox -e {TARGET} ``` If you want to run the integration tests, you can use the following: ``` $ export DROPBOX_REFRESH_TOKEN={fill in refresh token} $ export DROPBOX_APP_KEY={fill in app key} $ export DROPBOX_APP_SECRET={fill in app secret} $ export DROPBOX_TEAM_TOKEN={fill in team token} $ export DROPBOX_TOKEN={fill in access token} $ tox -e test_integration ``` Note: If you do not have all of these tokens available, we run integration tests as a part of pull request validation and you are able to rely on those if you are unable to obtain yourself. We do recommend developing in a virtual environment in order to ensure you have a clean testing environment. If you want to build the documentation locally, you can run this: ``` $ tox -e docs ``` The documentation will be built into `build/html`. [issues]: https://github.com/dropbox/dropbox-sdk-python/issues [pr]: https://github.com/dropbox/dropbox-sdk-python/pulls [coc]: https://github.com/dropbox/dropbox-sdk-python/blob/main/CODE_OF_CONDUCT.md [license]: https://github.com/dropbox/dropbox-sdk-python/blob/main/LICENSE [cla]: https://opensource.dropbox.com/cla/dropbox-sdk-python-12.0.2/LICENSE000066400000000000000000000021701462737130500163640ustar00rootroot00000000000000Copyright (c) 2020 Dropbox Inc., http://www.dropbox.com/ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.dropbox-sdk-python-12.0.2/MANIFEST.in000066400000000000000000000001201462737130500171060ustar00rootroot00000000000000include ez_setup.py include LICENSE include *.rst include test/requirements.txt dropbox-sdk-python-12.0.2/README.rst000066400000000000000000000060621462737130500170520ustar00rootroot00000000000000.. image:: https://cfl.dropboxstatic.com/static/images/sdk/python_banner.png :target: https://github.com/dropbox/dropbox-sdk-python .. image:: https://img.shields.io/pypi/pyversions/dropbox.svg :target: https://pypi.python.org/pypi/dropbox .. image:: https://img.shields.io/pypi/v/dropbox.svg :target: https://pypi.python.org/pypi/dropbox .. image:: https://codecov.io/gh/dropbox/dropbox-sdk-python/branch/main/graph/badge.svg :target: https://codecov.io/gh/dropbox/dropbox-sdk-python The offical Dropbox SDK for Python. Documentation can be found on `Read The Docs`_. Installation ============ Create an app via the `Developer Console`_. Install via `pip `_: .. code-block:: console $ pip install dropbox Install from source: .. code-block:: console $ git clone git://github.com/dropbox/dropbox-sdk-python.git $ cd dropbox-sdk-python $ python setup.py install After installation, follow one of our `Examples`_ or read the documentation on `Read The Docs`_. You can also view our `OAuth Guide`_. Examples ======== We provide `Examples`_ to help get you started with a lot of the basic functionality in the SDK. - **OAuth** - `Commandline OAuth Basic `_ - Shows a simple example of commandline oauth (no redirect). - `Commandline OAuth Scopes `_ - Shows a simple example of commandline oauth using scopes. - `Commandline OAuth PKCE `_ - Shows a simple example of commandline oauth using PKCE. - **Other Examples** - `Updown `_ - Sample application that uploads the contents of your ``Downloads`` folder to Dropbox. - `Backup and Restore `_ - Sample application that shows how you can backup a file and restore previous versions if the file was modified/corrupted in any way. Getting Help ============ If you find a bug, please see `CONTRIBUTING.md`_ for information on how to report it. If you need help that is not specific to this SDK, please reach out to `Dropbox Support`_. License ======= This SDK is distributed under the MIT license, please see `LICENSE`_ for more information. .. _logo: {logo_link} .. _repo: https://github.com/dropbox/dropbox-sdk-python .. _`Read The Docs`: http://dropbox-sdk-python.readthedocs.org .. _`Examples`: https://github.com/dropbox/dropbox-sdk-python/tree/main/example .. _LICENSE: https://github.com/dropbox/dropbox-sdk-python/blob/main/LICENSE .. _CONTRIBUTING.md: https://github.com/dropbox/dropbox-sdk-python/blob/main/CONTRIBUTING.md .. _Developer Console: https://dropbox.com/developers/apps .. _OAuth Guide: https://www.dropbox.com/lp/developers/reference/oauth-guide .. _`Dropbox Support`: https://www.dropbox.com/developers/contactdropbox-sdk-python-12.0.2/UPGRADING.md000066400000000000000000000030141462737130500172170ustar00rootroot00000000000000# Upgrading the Dropbox SDK This document is designed to show you how to upgrade to the latest version of the SDK accomodating any breaking changes introduced by major version updates. If you find any issues with either this guide on upgrading or the changes introduced in the new version, please see [CONTRIBUTING.md](CONTRIBUTING.md) # Upgrading to v12.0.0 * The SDK no longer provides its own CA bundle to verify TLS connections. It will continue to verify connections through the `requests` library, which makes use of [`certifi`](https://github.com/certifi/python-certifi). You may still provide your own bundle through the `ca_certs` parameter of the `Dropbox` classes and of the `create_session` function (see the [documentation](https://dropbox-sdk-python.readthedocs.io/en/latest/api/dropbox.html) for details). * This will be the last major version to support Python 2. # Upgrading from v10.X.X to v11.0.0 The major change that happened in this new version is that we regenerated the client files using Stone 3.2.0, so relative imports are removed from the generated client files. This created some issues with the imports in the non-generated files in `dropbox/`. As a result, we renamed `dropbox.dropbox` to `dropbox.dropbox_client`. If you used to do imports like `dropbox.dropbox.foo`, such imports need to be changed to `dropbox.dropbox_client.foo`. However, we preserved the imports in `dropbox/__init__.py`, so imports like `from dropbox import DropboxOAuth2FlowNoRedirect`, `from dropbox import Dropbox` will continue to work. dropbox-sdk-python-12.0.2/codecov.yml000066400000000000000000000004461462737130500175300ustar00rootroot00000000000000coverage: status: project: default: target: auto threshold: 1% base: auto flags: - unittest paths: - "dropbox" if_not_found: success if_ci_failed: error informational: true only_pulls: falsedropbox-sdk-python-12.0.2/docs/000077500000000000000000000000001462737130500163075ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/docs/Makefile000066400000000000000000000025471462737130500177570ustar00rootroot00000000000000# Makefile for Sphinx documentation # # You can set these variables from the command line. SPHINXOPTS = SPHINXBUILD = sphinx-build PAPER = BUILDDIR = _build # User-friendly check for sphinx-build ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) $(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) endif # Internal variables. PAPEROPT_a4 = -D latex_paper_size=a4 PAPEROPT_letter = -D latex_paper_size=letter ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . # the i18n builder cannot share the environment and doctrees with the others I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . .PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext help: @echo "Please use \`make ' where is one of" @echo " html to make standalone HTML files" clean: rm -rf $(BUILDDIR)/* html: $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html @echo @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." dropbox-sdk-python-12.0.2/docs/api/000077500000000000000000000000001462737130500170605ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/docs/api/async.rst000066400000000000000000000006541462737130500207340ustar00rootroot00000000000000:mod:`dropbox.async_` -- Async ============================== *As of Python 3.5,* ``async`` *is a reserved keyword. For versions of Python prior to 3.5, the objects documented can be imported from either* ``dropbox.async`` *or* ``dropbox.async_``. *For Python 3.5+, only* ``dropbox.async_`` *is supported.* .. automodule:: dropbox.async_ :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/auth.rst000066400000000000000000000002511462737130500205510ustar00rootroot00000000000000:mod:`dropbox.auth` -- Auth =========================== .. automodule:: dropbox.auth :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/common.rst000066400000000000000000000002631462737130500211030ustar00rootroot00000000000000:mod:`dropbox.common` -- Common =============================== .. automodule:: dropbox.common :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/contacts.rst000066400000000000000000000002751462737130500214340ustar00rootroot00000000000000:mod:`dropbox.contacts` -- Contacts =================================== .. automodule:: dropbox.contacts :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/dropbox.rst000066400000000000000000000003261462737130500212700ustar00rootroot00000000000000:mod:`dropbox.dropbox` -- Dropbox ================================= .. automodule:: dropbox.dropbox_client :members: :show-inheritance: :inherited-members: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/exceptions.rst000066400000000000000000000003071462737130500217730ustar00rootroot00000000000000:mod:`dropbox.exceptions` -- Exceptions ======================================= .. automodule:: dropbox.exceptions :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/file_properties.rst000066400000000000000000000003401462737130500230020ustar00rootroot00000000000000:mod:`dropbox.file_properties` -- File Properties ================================================= .. automodule:: dropbox.file_properties :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/file_requests.rst000066400000000000000000000003261462737130500224650ustar00rootroot00000000000000:mod:`dropbox.file_requests` -- File Requests ============================================= .. automodule:: dropbox.file_requests :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/files.rst000066400000000000000000000002561462737130500207170ustar00rootroot00000000000000:mod:`dropbox.files` -- Files ============================= .. automodule:: dropbox.files :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/oauth.rst000066400000000000000000000002561462737130500207350ustar00rootroot00000000000000:mod:`dropbox.oauth` -- OAuth ============================= .. automodule:: dropbox.oauth :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/paper.rst000066400000000000000000000002561462737130500207240ustar00rootroot00000000000000:mod:`dropbox.paper` -- Paper ============================= .. automodule:: dropbox.paper :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/seen_state.rst000066400000000000000000000003071462737130500217440ustar00rootroot00000000000000:mod:`dropbox.seen_state` -- Seen State ======================================= .. automodule:: dropbox.seen_state :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/sharing.rst000066400000000000000000000002641462737130500212470ustar00rootroot00000000000000:mod:`dropbox.sharing` -- Sharing ================================= .. automodule:: dropbox.sharing :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/team.rst000066400000000000000000000002511462737130500205360ustar00rootroot00000000000000:mod:`dropbox.team` -- Team =========================== .. automodule:: dropbox.team :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/team_common.rst000066400000000000000000000003141462737130500221060ustar00rootroot00000000000000:mod:`dropbox.team_common` -- Team Common ========================================= .. automodule:: dropbox.team_common :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/team_log.rst000066400000000000000000000002751462737130500214050ustar00rootroot00000000000000:mod:`dropbox.team_log` -- Team Log =================================== .. automodule:: dropbox.team_log :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/team_policies.rst000066400000000000000000000003261462737130500224300ustar00rootroot00000000000000:mod:`dropbox.team_policies` -- Team Policies ============================================= .. automodule:: dropbox.team_policies :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/users.rst000066400000000000000000000002561462737130500207560ustar00rootroot00000000000000:mod:`dropbox.users` -- Users ============================= .. automodule:: dropbox.users :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/api/users_common.rst000066400000000000000000000003211462737130500223170ustar00rootroot00000000000000:mod:`dropbox.users_common` -- Users Common =========================================== .. automodule:: dropbox.users_common :members: :show-inheritance: :special-members: __init__ :undoc-members: dropbox-sdk-python-12.0.2/docs/conf.py000066400000000000000000000206611462737130500176130ustar00rootroot00000000000000# -*- coding: utf-8 -*- # # Dropbox for Python documentation build configuration file, created by # sphinx-quickstart on Fri Oct 24 13:42:45 2014. # # This file is execfile()d with the current directory set to its # containing dir. # # Note that not all possible configuration values are present in this # autogenerated file. # # All configuration values have a default; values that are commented out # serve to show the default. import sys import os # Assumes that the dropbox package to generate docs for is one-level above in # the directory hierarchy. This takes precendence over other dropbox packages # that may be in the sys.path. sys.path.insert(0, os.path.abspath('..')) import dropbox # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. #sys.path.insert(0, os.path.abspath('.')) # -- General configuration ------------------------------------------------ # If your documentation needs a minimal Sphinx version, state it here. #needs_sphinx = '1.0' # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ 'sphinx.ext.autodoc', 'sphinx.ext.mathjax', 'sphinx_rtd_theme', ] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] # The suffix of source filenames. source_suffix = '.rst' # The encoding of source files. #source_encoding = 'utf-8-sig' # The master toctree document. master_doc = 'index' # General information about the project. project = u'Dropbox for Python' copyright = u'2015-2024, Dropbox, Inc.' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # The short X.Y version. version = dropbox.__version__ # The full version, including alpha/beta/rc tags. release = dropbox.__version__ # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. #language = None # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: #today = '' # Else, today_fmt is used as the format for a strftime call. #today_fmt = '%B %d, %Y' # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. exclude_patterns = ['_build'] # The reST default role (used for this markup: `text`) to use for all # documents. #default_role = None # If true, '()' will be appended to :func: etc. cross-reference text. #add_function_parentheses = True # If true, the current module name will be prepended to all description # unit titles (such as .. function::). #add_module_names = True # If true, sectionauthor and moduleauthor directives will be shown in the # output. They are ignored by default. #show_authors = False # The name of the Pygments (syntax highlighting) style to use. pygments_style = 'sphinx' # A list of ignored prefixes for module index sorting. #modindex_common_prefix = [] # If true, keep warnings as "system message" paragraphs in the built documents. #keep_warnings = False # -- Options for HTML output ---------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. #html_theme_options = {} # Add any paths that contain custom themes here, relative to this directory. #html_theme_path = [] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". #html_title = None # A shorter title for the navigation bar. Default is the same as html_title. #html_short_title = None # The name of an image file (relative to this directory) to place at the top # of the sidebar. #html_logo = None # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # pixels large. #html_favicon = None # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied # directly to the root of the documentation. #html_extra_path = [] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. #html_last_updated_fmt = '%b %d, %Y' # If true, SmartyPants will be used to convert quotes and dashes to # typographically correct entities. #html_use_smartypants = True # Custom sidebar templates, maps document names to template names. #html_sidebars = {} # Additional templates that should be rendered to pages, maps page names to # template names. #html_additional_pages = {} # If false, no module index is generated. #html_domain_indices = True # If false, no index is generated. #html_use_index = True # If true, the index is split into individual pages for each letter. #html_split_index = False # If true, links to the reST sources are added to the pages. #html_show_sourcelink = True # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. #html_show_sphinx = True # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. #html_show_copyright = True # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the # base URL from which the finished HTML is served. #html_use_opensearch = '' # This is the file name suffix for HTML files (e.g. ".xhtml"). #html_file_suffix = None # Output file base name for HTML help builder. htmlhelp_basename = 'DropboxforPythondoc' # -- Options for LaTeX output --------------------------------------------- #latex_elements = { # The paper size ('letterpaper' or 'a4paper'). #'papersize': 'letterpaper', # The font size ('10pt', '11pt' or '12pt'). #'pointsize': '10pt', # Additional stuff for the LaTeX preamble. #'preamble': '', #} # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). #latex_documents = [ # ('index2', 'DropboxforPython.tex', u'Dropbox for Python Documentation', # u'Ken Elkabany', 'manual'), #] # The name of an image file (relative to this directory) to place at the top of # the title page. #latex_logo = None # For "manual" documents, if this is true, then toplevel headings are parts, # not chapters. #latex_use_parts = False # If true, show page references after internal links. #latex_show_pagerefs = False # If true, show URL addresses after external links. #latex_show_urls = False # Documents to append as an appendix to all manuals. #latex_appendices = [] # If false, no module index is generated. #latex_domain_indices = True # -- Options for manual page output --------------------------------------- # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). #man_pages = [ # ('index2', 'dropboxforpython', u'Dropbox for Python Documentation', # [u'Dropbox, Inc.'], 1) #] # If true, show URL addresses after external links. #man_show_urls = False # -- Options for Texinfo output ------------------------------------------- # Grouping the document tree into Texinfo files. List of tuples # (source start file, target name, title, author, # dir menu entry, description, category) #texinfo_documents = [ # ('index2', 'DropboxforPython', u'Dropbox for Python Documentation', # u'Dropbox, Inc.', 'DropboxforPython', 'One line description of project.', # 'Miscellaneous'), #] # Documents to append as an appendix to all manuals. #texinfo_appendices = [] # If false, no module index is generated. #texinfo_domain_indices = True # How to display URL addresses: 'footnote', 'no', or 'inline'. #texinfo_show_urls = 'footnote' # If true, do not generate a @detailmenu in the "Top" node's menu. #texinfo_no_detailmenu = False dropbox-sdk-python-12.0.2/docs/index.rst000066400000000000000000000010311462737130500201430ustar00rootroot00000000000000Dropbox for Python Documentation ================================ .. toctree:: :maxdepth: 2 tutorial .. toctree:: :maxdepth: 1 api/async api/auth api/common api/contacts api/dropbox api/exceptions api/file_properties api/file_requests api/files api/oauth api/paper api/seen_state api/sharing api/team api/team_common api/team_log api/team_policies api/users api/users_common Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search` dropbox-sdk-python-12.0.2/docs/make.bat000066400000000000000000000024531462737130500177200ustar00rootroot00000000000000@ECHO OFF REM Command file for Sphinx documentation if "%SPHINXBUILD%" == "" ( set SPHINXBUILD=sphinx-build ) set BUILDDIR=_build set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% . set I18NSPHINXOPTS=%SPHINXOPTS% . if NOT "%PAPER%" == "" ( set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS% set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS% ) if "%1" == "" goto help if "%1" == "help" ( :help echo.Please use `make ^` where ^ is one of echo. html to make standalone HTML files goto end ) if "%1" == "clean" ( for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i del /q /s %BUILDDIR%\* goto end ) %SPHINXBUILD% 2> nul if errorlevel 9009 ( echo. echo.The 'sphinx-build' command was not found. Make sure you have Sphinx echo.installed, then set the SPHINXBUILD environment variable to point echo.to the full path of the 'sphinx-build' executable. Alternatively you echo.may add the Sphinx directory to PATH. echo. echo.If you don't have Sphinx installed, grab it from echo.http://sphinx-doc.org/ exit /b 1 ) if "%1" == "html" ( %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html if errorlevel 1 exit /b 1 echo. echo.Build finished. The HTML pages are in %BUILDDIR%/html. goto end ) :end dropbox-sdk-python-12.0.2/docs/tutorial.rst000066400000000000000000000002621462737130500207040ustar00rootroot00000000000000******** Tutorial ******** For a tutorial on how to get started, please visit our `developers page `_. dropbox-sdk-python-12.0.2/dropbox/000077500000000000000000000000001462737130500170345ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/dropbox/__init__.py000066400000000000000000000004621462737130500211470ustar00rootroot00000000000000from __future__ import absolute_import from dropbox.dropbox_client import ( # noqa: F401 # pylint: disable=unused-import __version__, Dropbox, DropboxTeam, create_session ) from dropbox.oauth import ( # noqa: F401 # pylint: disable=unused-import DropboxOAuth2Flow, DropboxOAuth2FlowNoRedirect ) dropbox-sdk-python-12.0.2/dropbox/account.py000066400000000000000000000202501462737130500210410ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv class PhotoSourceArg(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str account.PhotoSourceArg.base64_data: Image data in base64-encoded bytes. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def base64_data(cls, val): """ Create an instance of this class set to the ``base64_data`` tag with value ``val``. :param str val: :rtype: PhotoSourceArg """ return cls('base64_data', val) def is_base64_data(self): """ Check if the union tag is ``base64_data``. :rtype: bool """ return self._tag == 'base64_data' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_base64_data(self): """ Image data in base64-encoded bytes. Only call this if :meth:`is_base64_data` is true. :rtype: str """ if not self.is_base64_data(): raise AttributeError("tag 'base64_data' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(PhotoSourceArg, self)._process_custom_annotations(annotation_type, field_path, processor) PhotoSourceArg_validator = bv.Union(PhotoSourceArg) class SetProfilePhotoArg(bb.Struct): """ :ivar account.SetProfilePhotoArg.photo: Image to set as the user's new profile photo. """ __slots__ = [ '_photo_value', ] _has_required_fields = True def __init__(self, photo=None): self._photo_value = bb.NOT_SET if photo is not None: self.photo = photo # Instance attribute type: PhotoSourceArg (validator is set below) photo = bb.Attribute("photo", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SetProfilePhotoArg, self)._process_custom_annotations(annotation_type, field_path, processor) SetProfilePhotoArg_validator = bv.Struct(SetProfilePhotoArg) class SetProfilePhotoError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar account.SetProfilePhotoError.file_type_error: File cannot be set as profile photo. :ivar account.SetProfilePhotoError.file_size_error: File cannot exceed 10 MB. :ivar account.SetProfilePhotoError.dimension_error: Image must be larger than 128 x 128. :ivar account.SetProfilePhotoError.thumbnail_error: Image could not be thumbnailed. :ivar account.SetProfilePhotoError.transient_error: Temporary infrastructure failure, please retry. """ _catch_all = 'other' # Attribute is overwritten below the class definition file_type_error = None # Attribute is overwritten below the class definition file_size_error = None # Attribute is overwritten below the class definition dimension_error = None # Attribute is overwritten below the class definition thumbnail_error = None # Attribute is overwritten below the class definition transient_error = None # Attribute is overwritten below the class definition other = None def is_file_type_error(self): """ Check if the union tag is ``file_type_error``. :rtype: bool """ return self._tag == 'file_type_error' def is_file_size_error(self): """ Check if the union tag is ``file_size_error``. :rtype: bool """ return self._tag == 'file_size_error' def is_dimension_error(self): """ Check if the union tag is ``dimension_error``. :rtype: bool """ return self._tag == 'dimension_error' def is_thumbnail_error(self): """ Check if the union tag is ``thumbnail_error``. :rtype: bool """ return self._tag == 'thumbnail_error' def is_transient_error(self): """ Check if the union tag is ``transient_error``. :rtype: bool """ return self._tag == 'transient_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SetProfilePhotoError, self)._process_custom_annotations(annotation_type, field_path, processor) SetProfilePhotoError_validator = bv.Union(SetProfilePhotoError) class SetProfilePhotoResult(bb.Struct): """ :ivar account.SetProfilePhotoResult.profile_photo_url: URL for the photo representing the user, if one is set. """ __slots__ = [ '_profile_photo_url_value', ] _has_required_fields = True def __init__(self, profile_photo_url=None): self._profile_photo_url_value = bb.NOT_SET if profile_photo_url is not None: self.profile_photo_url = profile_photo_url # Instance attribute type: str (validator is set below) profile_photo_url = bb.Attribute("profile_photo_url") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SetProfilePhotoResult, self)._process_custom_annotations(annotation_type, field_path, processor) SetProfilePhotoResult_validator = bv.Struct(SetProfilePhotoResult) PhotoSourceArg._base64_data_validator = bv.String() PhotoSourceArg._other_validator = bv.Void() PhotoSourceArg._tagmap = { 'base64_data': PhotoSourceArg._base64_data_validator, 'other': PhotoSourceArg._other_validator, } PhotoSourceArg.other = PhotoSourceArg('other') SetProfilePhotoArg.photo.validator = PhotoSourceArg_validator SetProfilePhotoArg._all_field_names_ = set(['photo']) SetProfilePhotoArg._all_fields_ = [('photo', SetProfilePhotoArg.photo.validator)] SetProfilePhotoError._file_type_error_validator = bv.Void() SetProfilePhotoError._file_size_error_validator = bv.Void() SetProfilePhotoError._dimension_error_validator = bv.Void() SetProfilePhotoError._thumbnail_error_validator = bv.Void() SetProfilePhotoError._transient_error_validator = bv.Void() SetProfilePhotoError._other_validator = bv.Void() SetProfilePhotoError._tagmap = { 'file_type_error': SetProfilePhotoError._file_type_error_validator, 'file_size_error': SetProfilePhotoError._file_size_error_validator, 'dimension_error': SetProfilePhotoError._dimension_error_validator, 'thumbnail_error': SetProfilePhotoError._thumbnail_error_validator, 'transient_error': SetProfilePhotoError._transient_error_validator, 'other': SetProfilePhotoError._other_validator, } SetProfilePhotoError.file_type_error = SetProfilePhotoError('file_type_error') SetProfilePhotoError.file_size_error = SetProfilePhotoError('file_size_error') SetProfilePhotoError.dimension_error = SetProfilePhotoError('dimension_error') SetProfilePhotoError.thumbnail_error = SetProfilePhotoError('thumbnail_error') SetProfilePhotoError.transient_error = SetProfilePhotoError('transient_error') SetProfilePhotoError.other = SetProfilePhotoError('other') SetProfilePhotoResult.profile_photo_url.validator = bv.String() SetProfilePhotoResult._all_field_names_ = set(['profile_photo_url']) SetProfilePhotoResult._all_fields_ = [('profile_photo_url', SetProfilePhotoResult.profile_photo_url.validator)] set_profile_photo = bb.Route( 'set_profile_photo', 1, False, SetProfilePhotoArg_validator, SetProfilePhotoResult_validator, SetProfilePhotoError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'set_profile_photo': set_profile_photo, } dropbox-sdk-python-12.0.2/dropbox/async.py000066400000000000000000000003621462737130500205240ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file # If you have issues importing this module because Python recognizes it as a keyword, use async_ instead. from .async_ import * dropbox-sdk-python-12.0.2/dropbox/async_.py000066400000000000000000000223371462737130500206710ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv class LaunchResultBase(bb.Union): """ Result returned by methods that launch an asynchronous job. A method who may either launch an asynchronous job, or complete the request synchronously, can use this union by extending it, and adding a 'complete' field with the type of the synchronous response. See :class:`LaunchEmptyResult` for an example. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str async.LaunchResultBase.async_job_id: This response indicates that the processing is asynchronous. The string is an id that can be used to obtain the status of the asynchronous job. """ _catch_all = None @classmethod def async_job_id(cls, val): """ Create an instance of this class set to the ``async_job_id`` tag with value ``val``. :param str val: :rtype: LaunchResultBase """ return cls('async_job_id', val) def is_async_job_id(self): """ Check if the union tag is ``async_job_id``. :rtype: bool """ return self._tag == 'async_job_id' def get_async_job_id(self): """ This response indicates that the processing is asynchronous. The string is an id that can be used to obtain the status of the asynchronous job. Only call this if :meth:`is_async_job_id` is true. :rtype: str """ if not self.is_async_job_id(): raise AttributeError("tag 'async_job_id' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(LaunchResultBase, self)._process_custom_annotations(annotation_type, field_path, processor) LaunchResultBase_validator = bv.Union(LaunchResultBase) class LaunchEmptyResult(LaunchResultBase): """ Result returned by methods that may either launch an asynchronous job or complete synchronously. Upon synchronous completion of the job, no additional information is returned. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar async.LaunchEmptyResult.complete: The job finished synchronously and successfully. """ # Attribute is overwritten below the class definition complete = None def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LaunchEmptyResult, self)._process_custom_annotations(annotation_type, field_path, processor) LaunchEmptyResult_validator = bv.Union(LaunchEmptyResult) class PollArg(bb.Struct): """ Arguments for methods that poll the status of an asynchronous job. :ivar async.PollArg.async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. """ __slots__ = [ '_async_job_id_value', ] _has_required_fields = True def __init__(self, async_job_id=None): self._async_job_id_value = bb.NOT_SET if async_job_id is not None: self.async_job_id = async_job_id # Instance attribute type: str (validator is set below) async_job_id = bb.Attribute("async_job_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PollArg, self)._process_custom_annotations(annotation_type, field_path, processor) PollArg_validator = bv.Struct(PollArg) class PollResultBase(bb.Union): """ Result returned by methods that poll for the status of an asynchronous job. Unions that extend this union should add a 'complete' field with a type of the information returned upon job completion. See :class:`PollEmptyResult` for an example. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar async.PollResultBase.in_progress: The asynchronous job is still in progress. """ _catch_all = None # Attribute is overwritten below the class definition in_progress = None def is_in_progress(self): """ Check if the union tag is ``in_progress``. :rtype: bool """ return self._tag == 'in_progress' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PollResultBase, self)._process_custom_annotations(annotation_type, field_path, processor) PollResultBase_validator = bv.Union(PollResultBase) class PollEmptyResult(PollResultBase): """ Result returned by methods that poll for the status of an asynchronous job. Upon completion of the job, no additional information is returned. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar async.PollEmptyResult.complete: The asynchronous job has completed successfully. """ # Attribute is overwritten below the class definition complete = None def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PollEmptyResult, self)._process_custom_annotations(annotation_type, field_path, processor) PollEmptyResult_validator = bv.Union(PollEmptyResult) class PollError(bb.Union): """ Error returned by methods for polling the status of asynchronous job. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar async.PollError.invalid_async_job_id: The job ID is invalid. :ivar async.PollError.internal_error: Something went wrong with the job on Dropbox's end. You'll need to verify that the action you were taking succeeded, and if not, try again. This should happen very rarely. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_async_job_id = None # Attribute is overwritten below the class definition internal_error = None # Attribute is overwritten below the class definition other = None def is_invalid_async_job_id(self): """ Check if the union tag is ``invalid_async_job_id``. :rtype: bool """ return self._tag == 'invalid_async_job_id' def is_internal_error(self): """ Check if the union tag is ``internal_error``. :rtype: bool """ return self._tag == 'internal_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PollError, self)._process_custom_annotations(annotation_type, field_path, processor) PollError_validator = bv.Union(PollError) AsyncJobId_validator = bv.String(min_length=1) LaunchResultBase._async_job_id_validator = AsyncJobId_validator LaunchResultBase._tagmap = { 'async_job_id': LaunchResultBase._async_job_id_validator, } LaunchEmptyResult._complete_validator = bv.Void() LaunchEmptyResult._tagmap = { 'complete': LaunchEmptyResult._complete_validator, } LaunchEmptyResult._tagmap.update(LaunchResultBase._tagmap) LaunchEmptyResult.complete = LaunchEmptyResult('complete') PollArg.async_job_id.validator = AsyncJobId_validator PollArg._all_field_names_ = set(['async_job_id']) PollArg._all_fields_ = [('async_job_id', PollArg.async_job_id.validator)] PollResultBase._in_progress_validator = bv.Void() PollResultBase._tagmap = { 'in_progress': PollResultBase._in_progress_validator, } PollResultBase.in_progress = PollResultBase('in_progress') PollEmptyResult._complete_validator = bv.Void() PollEmptyResult._tagmap = { 'complete': PollEmptyResult._complete_validator, } PollEmptyResult._tagmap.update(PollResultBase._tagmap) PollEmptyResult.complete = PollEmptyResult('complete') PollError._invalid_async_job_id_validator = bv.Void() PollError._internal_error_validator = bv.Void() PollError._other_validator = bv.Void() PollError._tagmap = { 'invalid_async_job_id': PollError._invalid_async_job_id_validator, 'internal_error': PollError._internal_error_validator, 'other': PollError._other_validator, } PollError.invalid_async_job_id = PollError('invalid_async_job_id') PollError.internal_error = PollError('internal_error') PollError.other = PollError('other') ROUTES = { } dropbox-sdk-python-12.0.2/dropbox/auth.py000066400000000000000000000554061462737130500203610ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv class AccessError(bb.Union): """ Error occurred because the account doesn't have permission to access the resource. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar InvalidAccountTypeError AccessError.invalid_account_type: Current account type cannot access the resource. :ivar PaperAccessError AccessError.paper_access_denied: Current account cannot access Paper. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def invalid_account_type(cls, val): """ Create an instance of this class set to the ``invalid_account_type`` tag with value ``val``. :param InvalidAccountTypeError val: :rtype: AccessError """ return cls('invalid_account_type', val) @classmethod def paper_access_denied(cls, val): """ Create an instance of this class set to the ``paper_access_denied`` tag with value ``val``. :param PaperAccessError val: :rtype: AccessError """ return cls('paper_access_denied', val) def is_invalid_account_type(self): """ Check if the union tag is ``invalid_account_type``. :rtype: bool """ return self._tag == 'invalid_account_type' def is_paper_access_denied(self): """ Check if the union tag is ``paper_access_denied``. :rtype: bool """ return self._tag == 'paper_access_denied' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_invalid_account_type(self): """ Current account type cannot access the resource. Only call this if :meth:`is_invalid_account_type` is true. :rtype: InvalidAccountTypeError """ if not self.is_invalid_account_type(): raise AttributeError("tag 'invalid_account_type' not set") return self._value def get_paper_access_denied(self): """ Current account cannot access Paper. Only call this if :meth:`is_paper_access_denied` is true. :rtype: PaperAccessError """ if not self.is_paper_access_denied(): raise AttributeError("tag 'paper_access_denied' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccessError, self)._process_custom_annotations(annotation_type, field_path, processor) AccessError_validator = bv.Union(AccessError) class AuthError(bb.Union): """ Errors occurred during authentication. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar auth.AuthError.invalid_access_token: The access token is invalid. :ivar auth.AuthError.invalid_select_user: The user specified in 'Dropbox-API-Select-User' is no longer on the team. :ivar auth.AuthError.invalid_select_admin: The user specified in 'Dropbox-API-Select-Admin' is not a Dropbox Business team admin. :ivar auth.AuthError.user_suspended: The user has been suspended. :ivar auth.AuthError.expired_access_token: The access token has expired. :ivar TokenScopeError AuthError.missing_scope: The access token does not have the required scope to access the route. :ivar auth.AuthError.route_access_denied: The route is not available to public. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_access_token = None # Attribute is overwritten below the class definition invalid_select_user = None # Attribute is overwritten below the class definition invalid_select_admin = None # Attribute is overwritten below the class definition user_suspended = None # Attribute is overwritten below the class definition expired_access_token = None # Attribute is overwritten below the class definition route_access_denied = None # Attribute is overwritten below the class definition other = None @classmethod def missing_scope(cls, val): """ Create an instance of this class set to the ``missing_scope`` tag with value ``val``. :param TokenScopeError val: :rtype: AuthError """ return cls('missing_scope', val) def is_invalid_access_token(self): """ Check if the union tag is ``invalid_access_token``. :rtype: bool """ return self._tag == 'invalid_access_token' def is_invalid_select_user(self): """ Check if the union tag is ``invalid_select_user``. :rtype: bool """ return self._tag == 'invalid_select_user' def is_invalid_select_admin(self): """ Check if the union tag is ``invalid_select_admin``. :rtype: bool """ return self._tag == 'invalid_select_admin' def is_user_suspended(self): """ Check if the union tag is ``user_suspended``. :rtype: bool """ return self._tag == 'user_suspended' def is_expired_access_token(self): """ Check if the union tag is ``expired_access_token``. :rtype: bool """ return self._tag == 'expired_access_token' def is_missing_scope(self): """ Check if the union tag is ``missing_scope``. :rtype: bool """ return self._tag == 'missing_scope' def is_route_access_denied(self): """ Check if the union tag is ``route_access_denied``. :rtype: bool """ return self._tag == 'route_access_denied' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_missing_scope(self): """ The access token does not have the required scope to access the route. Only call this if :meth:`is_missing_scope` is true. :rtype: TokenScopeError """ if not self.is_missing_scope(): raise AttributeError("tag 'missing_scope' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(AuthError, self)._process_custom_annotations(annotation_type, field_path, processor) AuthError_validator = bv.Union(AuthError) class InvalidAccountTypeError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar auth.InvalidAccountTypeError.endpoint: Current account type doesn't have permission to access this route endpoint. :ivar auth.InvalidAccountTypeError.feature: Current account type doesn't have permission to access this feature. """ _catch_all = 'other' # Attribute is overwritten below the class definition endpoint = None # Attribute is overwritten below the class definition feature = None # Attribute is overwritten below the class definition other = None def is_endpoint(self): """ Check if the union tag is ``endpoint``. :rtype: bool """ return self._tag == 'endpoint' def is_feature(self): """ Check if the union tag is ``feature``. :rtype: bool """ return self._tag == 'feature' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(InvalidAccountTypeError, self)._process_custom_annotations(annotation_type, field_path, processor) InvalidAccountTypeError_validator = bv.Union(InvalidAccountTypeError) class PaperAccessError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar auth.PaperAccessError.paper_disabled: Paper is disabled. :ivar auth.PaperAccessError.not_paper_user: The provided user has not used Paper yet. """ _catch_all = 'other' # Attribute is overwritten below the class definition paper_disabled = None # Attribute is overwritten below the class definition not_paper_user = None # Attribute is overwritten below the class definition other = None def is_paper_disabled(self): """ Check if the union tag is ``paper_disabled``. :rtype: bool """ return self._tag == 'paper_disabled' def is_not_paper_user(self): """ Check if the union tag is ``not_paper_user``. :rtype: bool """ return self._tag == 'not_paper_user' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperAccessError, self)._process_custom_annotations(annotation_type, field_path, processor) PaperAccessError_validator = bv.Union(PaperAccessError) class RateLimitError(bb.Struct): """ Error occurred because the app is being rate limited. :ivar auth.RateLimitError.reason: The reason why the app is being rate limited. :ivar auth.RateLimitError.retry_after: The number of seconds that the app should wait before making another request. """ __slots__ = [ '_reason_value', '_retry_after_value', ] _has_required_fields = True def __init__(self, reason=None, retry_after=None): self._reason_value = bb.NOT_SET self._retry_after_value = bb.NOT_SET if reason is not None: self.reason = reason if retry_after is not None: self.retry_after = retry_after # Instance attribute type: RateLimitReason (validator is set below) reason = bb.Attribute("reason", user_defined=True) # Instance attribute type: int (validator is set below) retry_after = bb.Attribute("retry_after") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RateLimitError, self)._process_custom_annotations(annotation_type, field_path, processor) RateLimitError_validator = bv.Struct(RateLimitError) class RateLimitReason(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar auth.RateLimitReason.too_many_requests: You are making too many requests in the past few minutes. :ivar auth.RateLimitReason.too_many_write_operations: There are currently too many write operations happening in the user's Dropbox. """ _catch_all = 'other' # Attribute is overwritten below the class definition too_many_requests = None # Attribute is overwritten below the class definition too_many_write_operations = None # Attribute is overwritten below the class definition other = None def is_too_many_requests(self): """ Check if the union tag is ``too_many_requests``. :rtype: bool """ return self._tag == 'too_many_requests' def is_too_many_write_operations(self): """ Check if the union tag is ``too_many_write_operations``. :rtype: bool """ return self._tag == 'too_many_write_operations' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(RateLimitReason, self)._process_custom_annotations(annotation_type, field_path, processor) RateLimitReason_validator = bv.Union(RateLimitReason) class TokenFromOAuth1Arg(bb.Struct): """ :ivar auth.TokenFromOAuth1Arg.oauth1_token: The supplied OAuth 1.0 access token. :ivar auth.TokenFromOAuth1Arg.oauth1_token_secret: The token secret associated with the supplied access token. """ __slots__ = [ '_oauth1_token_value', '_oauth1_token_secret_value', ] _has_required_fields = True def __init__(self, oauth1_token=None, oauth1_token_secret=None): self._oauth1_token_value = bb.NOT_SET self._oauth1_token_secret_value = bb.NOT_SET if oauth1_token is not None: self.oauth1_token = oauth1_token if oauth1_token_secret is not None: self.oauth1_token_secret = oauth1_token_secret # Instance attribute type: str (validator is set below) oauth1_token = bb.Attribute("oauth1_token") # Instance attribute type: str (validator is set below) oauth1_token_secret = bb.Attribute("oauth1_token_secret") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TokenFromOAuth1Arg, self)._process_custom_annotations(annotation_type, field_path, processor) TokenFromOAuth1Arg_validator = bv.Struct(TokenFromOAuth1Arg) class TokenFromOAuth1Error(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar auth.TokenFromOAuth1Error.invalid_oauth1_token_info: Part or all of the OAuth 1.0 access token info is invalid. :ivar auth.TokenFromOAuth1Error.app_id_mismatch: The authorized app does not match the app associated with the supplied access token. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_oauth1_token_info = None # Attribute is overwritten below the class definition app_id_mismatch = None # Attribute is overwritten below the class definition other = None def is_invalid_oauth1_token_info(self): """ Check if the union tag is ``invalid_oauth1_token_info``. :rtype: bool """ return self._tag == 'invalid_oauth1_token_info' def is_app_id_mismatch(self): """ Check if the union tag is ``app_id_mismatch``. :rtype: bool """ return self._tag == 'app_id_mismatch' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TokenFromOAuth1Error, self)._process_custom_annotations(annotation_type, field_path, processor) TokenFromOAuth1Error_validator = bv.Union(TokenFromOAuth1Error) class TokenFromOAuth1Result(bb.Struct): """ :ivar auth.TokenFromOAuth1Result.oauth2_token: The OAuth 2.0 token generated from the supplied OAuth 1.0 token. """ __slots__ = [ '_oauth2_token_value', ] _has_required_fields = True def __init__(self, oauth2_token=None): self._oauth2_token_value = bb.NOT_SET if oauth2_token is not None: self.oauth2_token = oauth2_token # Instance attribute type: str (validator is set below) oauth2_token = bb.Attribute("oauth2_token") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TokenFromOAuth1Result, self)._process_custom_annotations(annotation_type, field_path, processor) TokenFromOAuth1Result_validator = bv.Struct(TokenFromOAuth1Result) class TokenScopeError(bb.Struct): """ :ivar auth.TokenScopeError.required_scope: The required scope to access the route. """ __slots__ = [ '_required_scope_value', ] _has_required_fields = True def __init__(self, required_scope=None): self._required_scope_value = bb.NOT_SET if required_scope is not None: self.required_scope = required_scope # Instance attribute type: str (validator is set below) required_scope = bb.Attribute("required_scope") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TokenScopeError, self)._process_custom_annotations(annotation_type, field_path, processor) TokenScopeError_validator = bv.Struct(TokenScopeError) AccessError._invalid_account_type_validator = InvalidAccountTypeError_validator AccessError._paper_access_denied_validator = PaperAccessError_validator AccessError._other_validator = bv.Void() AccessError._tagmap = { 'invalid_account_type': AccessError._invalid_account_type_validator, 'paper_access_denied': AccessError._paper_access_denied_validator, 'other': AccessError._other_validator, } AccessError.other = AccessError('other') AuthError._invalid_access_token_validator = bv.Void() AuthError._invalid_select_user_validator = bv.Void() AuthError._invalid_select_admin_validator = bv.Void() AuthError._user_suspended_validator = bv.Void() AuthError._expired_access_token_validator = bv.Void() AuthError._missing_scope_validator = TokenScopeError_validator AuthError._route_access_denied_validator = bv.Void() AuthError._other_validator = bv.Void() AuthError._tagmap = { 'invalid_access_token': AuthError._invalid_access_token_validator, 'invalid_select_user': AuthError._invalid_select_user_validator, 'invalid_select_admin': AuthError._invalid_select_admin_validator, 'user_suspended': AuthError._user_suspended_validator, 'expired_access_token': AuthError._expired_access_token_validator, 'missing_scope': AuthError._missing_scope_validator, 'route_access_denied': AuthError._route_access_denied_validator, 'other': AuthError._other_validator, } AuthError.invalid_access_token = AuthError('invalid_access_token') AuthError.invalid_select_user = AuthError('invalid_select_user') AuthError.invalid_select_admin = AuthError('invalid_select_admin') AuthError.user_suspended = AuthError('user_suspended') AuthError.expired_access_token = AuthError('expired_access_token') AuthError.route_access_denied = AuthError('route_access_denied') AuthError.other = AuthError('other') InvalidAccountTypeError._endpoint_validator = bv.Void() InvalidAccountTypeError._feature_validator = bv.Void() InvalidAccountTypeError._other_validator = bv.Void() InvalidAccountTypeError._tagmap = { 'endpoint': InvalidAccountTypeError._endpoint_validator, 'feature': InvalidAccountTypeError._feature_validator, 'other': InvalidAccountTypeError._other_validator, } InvalidAccountTypeError.endpoint = InvalidAccountTypeError('endpoint') InvalidAccountTypeError.feature = InvalidAccountTypeError('feature') InvalidAccountTypeError.other = InvalidAccountTypeError('other') PaperAccessError._paper_disabled_validator = bv.Void() PaperAccessError._not_paper_user_validator = bv.Void() PaperAccessError._other_validator = bv.Void() PaperAccessError._tagmap = { 'paper_disabled': PaperAccessError._paper_disabled_validator, 'not_paper_user': PaperAccessError._not_paper_user_validator, 'other': PaperAccessError._other_validator, } PaperAccessError.paper_disabled = PaperAccessError('paper_disabled') PaperAccessError.not_paper_user = PaperAccessError('not_paper_user') PaperAccessError.other = PaperAccessError('other') RateLimitError.reason.validator = RateLimitReason_validator RateLimitError.retry_after.validator = bv.UInt64() RateLimitError._all_field_names_ = set([ 'reason', 'retry_after', ]) RateLimitError._all_fields_ = [ ('reason', RateLimitError.reason.validator), ('retry_after', RateLimitError.retry_after.validator), ] RateLimitReason._too_many_requests_validator = bv.Void() RateLimitReason._too_many_write_operations_validator = bv.Void() RateLimitReason._other_validator = bv.Void() RateLimitReason._tagmap = { 'too_many_requests': RateLimitReason._too_many_requests_validator, 'too_many_write_operations': RateLimitReason._too_many_write_operations_validator, 'other': RateLimitReason._other_validator, } RateLimitReason.too_many_requests = RateLimitReason('too_many_requests') RateLimitReason.too_many_write_operations = RateLimitReason('too_many_write_operations') RateLimitReason.other = RateLimitReason('other') TokenFromOAuth1Arg.oauth1_token.validator = bv.String(min_length=1) TokenFromOAuth1Arg.oauth1_token_secret.validator = bv.String(min_length=1) TokenFromOAuth1Arg._all_field_names_ = set([ 'oauth1_token', 'oauth1_token_secret', ]) TokenFromOAuth1Arg._all_fields_ = [ ('oauth1_token', TokenFromOAuth1Arg.oauth1_token.validator), ('oauth1_token_secret', TokenFromOAuth1Arg.oauth1_token_secret.validator), ] TokenFromOAuth1Error._invalid_oauth1_token_info_validator = bv.Void() TokenFromOAuth1Error._app_id_mismatch_validator = bv.Void() TokenFromOAuth1Error._other_validator = bv.Void() TokenFromOAuth1Error._tagmap = { 'invalid_oauth1_token_info': TokenFromOAuth1Error._invalid_oauth1_token_info_validator, 'app_id_mismatch': TokenFromOAuth1Error._app_id_mismatch_validator, 'other': TokenFromOAuth1Error._other_validator, } TokenFromOAuth1Error.invalid_oauth1_token_info = TokenFromOAuth1Error('invalid_oauth1_token_info') TokenFromOAuth1Error.app_id_mismatch = TokenFromOAuth1Error('app_id_mismatch') TokenFromOAuth1Error.other = TokenFromOAuth1Error('other') TokenFromOAuth1Result.oauth2_token.validator = bv.String(min_length=1) TokenFromOAuth1Result._all_field_names_ = set(['oauth2_token']) TokenFromOAuth1Result._all_fields_ = [('oauth2_token', TokenFromOAuth1Result.oauth2_token.validator)] TokenScopeError.required_scope.validator = bv.String() TokenScopeError._all_field_names_ = set(['required_scope']) TokenScopeError._all_fields_ = [('required_scope', TokenScopeError.required_scope.validator)] RateLimitError.retry_after.default = 1 token_from_oauth1 = bb.Route( 'token/from_oauth1', 1, True, TokenFromOAuth1Arg_validator, TokenFromOAuth1Result_validator, TokenFromOAuth1Error_validator, {'auth': 'app', 'host': 'api', 'style': 'rpc'}, ) token_revoke = bb.Route( 'token/revoke', 1, False, bv.Void(), bv.Void(), bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'token/from_oauth1': token_from_oauth1, 'token/revoke': token_revoke, } dropbox-sdk-python-12.0.2/dropbox/base.py000066400000000000000000007003011462737130500203210ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # flake8: noqa # pylint: skip-file from abc import ABCMeta, abstractmethod import warnings from dropbox import account from dropbox import async_ from dropbox import auth from dropbox import check from dropbox import common from dropbox import contacts from dropbox import file_properties from dropbox import file_requests from dropbox import files from dropbox import openid from dropbox import paper from dropbox import secondary_emails from dropbox import seen_state from dropbox import sharing from dropbox import team from dropbox import team_common from dropbox import team_log from dropbox import team_policies from dropbox import users from dropbox import users_common class DropboxBase(object): __metaclass__ = ABCMeta @abstractmethod def request(self, route, namespace, arg, arg_binary=None): pass # ------------------------------------------ # Routes in account namespace def account_set_profile_photo(self, photo): """ Sets a user's profile photo. Route attributes: scope: account_info.write :param photo: Image to set as the user's new profile photo. :type photo: :class:`dropbox.account.PhotoSourceArg` :rtype: :class:`dropbox.account.SetProfilePhotoResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.account.SetProfilePhotoError` """ arg = account.SetProfilePhotoArg(photo) r = self.request( account.set_profile_photo, 'account', arg, None, ) return r # ------------------------------------------ # Routes in auth namespace def auth_token_from_oauth1(self, oauth1_token, oauth1_token_secret): """ Creates an OAuth 2.0 access token from the supplied OAuth 1.0 access token. :param str oauth1_token: The supplied OAuth 1.0 access token. :param str oauth1_token_secret: The token secret associated with the supplied access token. :rtype: :class:`dropbox.auth.TokenFromOAuth1Result` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.auth.TokenFromOAuth1Error` """ warnings.warn( 'token/from_oauth1 is deprecated.', DeprecationWarning, ) arg = auth.TokenFromOAuth1Arg(oauth1_token, oauth1_token_secret) r = self.request( auth.token_from_oauth1, 'auth', arg, None, ) return r def auth_token_revoke(self): """ Disables the access token used to authenticate the call. If there is a corresponding refresh token for the access token, this disables that refresh token, as well as any other access tokens for that refresh token. :rtype: None """ arg = None r = self.request( auth.token_revoke, 'auth', arg, None, ) return None # ------------------------------------------ # Routes in check namespace def check_app(self, query=''): """ This endpoint performs App Authentication, validating the supplied app key and secret, and returns the supplied string, to allow you to test your code and connection to the Dropbox API. It has no other effect. If you receive an HTTP 200 response with the supplied query, it indicates at least part of the Dropbox API infrastructure is working and that the app key and secret valid. :param str query: The string that you'd like to be echoed back to you. :rtype: :class:`dropbox.check.EchoResult` """ arg = check.EchoArg(query) r = self.request( check.app, 'check', arg, None, ) return r def check_user(self, query=''): """ This endpoint performs User Authentication, validating the supplied access token, and returns the supplied string, to allow you to test your code and connection to the Dropbox API. It has no other effect. If you receive an HTTP 200 response with the supplied query, it indicates at least part of the Dropbox API infrastructure is working and that the access token is valid. Route attributes: scope: account_info.read :param str query: The string that you'd like to be echoed back to you. :rtype: :class:`dropbox.check.EchoResult` """ arg = check.EchoArg(query) r = self.request( check.user, 'check', arg, None, ) return r # ------------------------------------------ # Routes in contacts namespace def contacts_delete_manual_contacts(self): """ Removes all manually added contacts. You'll still keep contacts who are on your team or who you imported. New contacts will be added when you share. Route attributes: scope: contacts.write :rtype: None """ arg = None r = self.request( contacts.delete_manual_contacts, 'contacts', arg, None, ) return None def contacts_delete_manual_contacts_batch(self, email_addresses): """ Removes manually added contacts from the given list. Route attributes: scope: contacts.write :param List[str] email_addresses: List of manually added contacts to be deleted. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.contacts.DeleteManualContactsError` """ arg = contacts.DeleteManualContactsArg(email_addresses) r = self.request( contacts.delete_manual_contacts_batch, 'contacts', arg, None, ) return None # ------------------------------------------ # Routes in file_properties namespace def file_properties_properties_add(self, path, property_groups): """ Add property groups to a Dropbox file. See :meth:`file_properties_templates_add_for_user` or :meth:`file_properties_templates_add_for_team` to create new templates. Route attributes: scope: files.metadata.write :param str path: A unique identifier for the file or folder. :param List[:class:`dropbox.file_properties.PropertyGroup`] property_groups: The property groups which are to be added to a Dropbox file. No two groups in the input should refer to the same template. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.AddPropertiesError` """ arg = file_properties.AddPropertiesArg(path, property_groups) r = self.request( file_properties.properties_add, 'file_properties', arg, None, ) return None def file_properties_properties_overwrite(self, path, property_groups): """ Overwrite property groups associated with a file. This endpoint should be used instead of :meth:`file_properties_properties_update` when property groups are being updated via a "snapshot" instead of via a "delta". In other words, this endpoint will delete all omitted fields from a property group, whereas :meth:`file_properties_properties_update` will only delete fields that are explicitly marked for deletion. Route attributes: scope: files.metadata.write :param str path: A unique identifier for the file or folder. :param List[:class:`dropbox.file_properties.PropertyGroup`] property_groups: The property groups "snapshot" updates to force apply. No two groups in the input should refer to the same template. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.InvalidPropertyGroupError` """ arg = file_properties.OverwritePropertyGroupArg(path, property_groups) r = self.request( file_properties.properties_overwrite, 'file_properties', arg, None, ) return None def file_properties_properties_remove(self, path, property_template_ids): """ Permanently removes the specified property group from the file. To remove specific property field key value pairs, see :meth:`file_properties_properties_update`. To update a template, see :meth:`file_properties_templates_update_for_user` or :meth:`file_properties_templates_update_for_team`. To remove a template, see :meth:`file_properties_templates_remove_for_user` or :meth:`file_properties_templates_remove_for_team`. Route attributes: scope: files.metadata.write :param str path: A unique identifier for the file or folder. :param List[str] property_template_ids: A list of identifiers for a template created by :meth:`file_properties_templates_add_for_user` or :meth:`file_properties_templates_add_for_team`. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.RemovePropertiesError` """ arg = file_properties.RemovePropertiesArg(path, property_template_ids) r = self.request( file_properties.properties_remove, 'file_properties', arg, None, ) return None def file_properties_properties_search(self, queries, template_filter=file_properties.TemplateFilter.filter_none): """ Search across property templates for particular property field values. Route attributes: scope: files.metadata.read :param List[:class:`dropbox.file_properties.PropertiesSearchQuery`] queries: Queries to search. :param template_filter: Filter results to contain only properties associated with these template IDs. :type template_filter: :class:`dropbox.file_properties.TemplateFilter` :rtype: :class:`dropbox.file_properties.PropertiesSearchResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.PropertiesSearchError` """ arg = file_properties.PropertiesSearchArg(queries, template_filter) r = self.request( file_properties.properties_search, 'file_properties', arg, None, ) return r def file_properties_properties_search_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`file_properties_properties_search`, use this to paginate through all search results. Route attributes: scope: files.metadata.read :param str cursor: The cursor returned by your last call to :meth:`file_properties_properties_search` or :meth:`file_properties_properties_search_continue`. :rtype: :class:`dropbox.file_properties.PropertiesSearchResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.PropertiesSearchContinueError` """ arg = file_properties.PropertiesSearchContinueArg(cursor) r = self.request( file_properties.properties_search_continue, 'file_properties', arg, None, ) return r def file_properties_properties_update(self, path, update_property_groups): """ Add, update or remove properties associated with the supplied file and templates. This endpoint should be used instead of :meth:`file_properties_properties_overwrite` when property groups are being updated via a "delta" instead of via a "snapshot" . In other words, this endpoint will not delete any omitted fields from a property group, whereas :meth:`file_properties_properties_overwrite` will delete any fields that are omitted from a property group. Route attributes: scope: files.metadata.write :param str path: A unique identifier for the file or folder. :param List[:class:`dropbox.file_properties.PropertyGroupUpdate`] update_property_groups: The property groups "delta" updates to apply. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.UpdatePropertiesError` """ arg = file_properties.UpdatePropertiesArg(path, update_property_groups) r = self.request( file_properties.properties_update, 'file_properties', arg, None, ) return None def file_properties_templates_add_for_user(self, name, description, fields): """ Add a template associated with a user. See :meth:`file_properties_properties_add` to add properties to a file. This endpoint can't be called on a team member or admin's behalf. Route attributes: scope: files.metadata.write :rtype: :class:`dropbox.file_properties.AddTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.ModifyTemplateError` """ arg = file_properties.AddTemplateArg(name, description, fields) r = self.request( file_properties.templates_add_for_user, 'file_properties', arg, None, ) return r def file_properties_templates_get_for_user(self, template_id): """ Get the schema for a specified template. This endpoint can't be called on a team member or admin's behalf. Route attributes: scope: files.metadata.read :param str template_id: An identifier for template added by route See :meth:`file_properties_templates_add_for_user` or :meth:`file_properties_templates_add_for_team`. :rtype: :class:`dropbox.file_properties.GetTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.TemplateError` """ arg = file_properties.GetTemplateArg(template_id) r = self.request( file_properties.templates_get_for_user, 'file_properties', arg, None, ) return r def file_properties_templates_list_for_user(self): """ Get the template identifiers for a team. To get the schema of each template use :meth:`file_properties_templates_get_for_user`. This endpoint can't be called on a team member or admin's behalf. Route attributes: scope: files.metadata.read :rtype: :class:`dropbox.file_properties.ListTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.TemplateError` """ arg = None r = self.request( file_properties.templates_list_for_user, 'file_properties', arg, None, ) return r def file_properties_templates_remove_for_user(self, template_id): """ Permanently removes the specified template created from :meth:`file_properties_templates_add_for_user`. All properties associated with the template will also be removed. This action cannot be undone. Route attributes: scope: files.metadata.write :param str template_id: An identifier for a template created by :meth:`file_properties_templates_add_for_user` or :meth:`file_properties_templates_add_for_team`. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.TemplateError` """ arg = file_properties.RemoveTemplateArg(template_id) r = self.request( file_properties.templates_remove_for_user, 'file_properties', arg, None, ) return None def file_properties_templates_update_for_user(self, template_id, name=None, description=None, add_fields=None): """ Update a template associated with a user. This route can update the template name, the template description and add optional properties to templates. This endpoint can't be called on a team member or admin's behalf. Route attributes: scope: files.metadata.write :param str template_id: An identifier for template added by See :meth:`file_properties_templates_add_for_user` or :meth:`file_properties_templates_add_for_team`. :param Nullable[str] name: A display name for the template. template names can be up to 256 bytes. :param Nullable[str] description: Description for the new template. Template descriptions can be up to 1024 bytes. :param Nullable[List[:class:`dropbox.file_properties.PropertyFieldTemplate`]] add_fields: Property field templates to be added to the group template. There can be up to 32 properties in a single template. :rtype: :class:`dropbox.file_properties.UpdateTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.ModifyTemplateError` """ arg = file_properties.UpdateTemplateArg(template_id, name, description, add_fields) r = self.request( file_properties.templates_update_for_user, 'file_properties', arg, None, ) return r # ------------------------------------------ # Routes in file_requests namespace def file_requests_count(self): """ Returns the total number of file requests owned by this user. Includes both open and closed file requests. Route attributes: scope: file_requests.read :rtype: :class:`dropbox.file_requests.CountFileRequestsResult` """ arg = None r = self.request( file_requests.count, 'file_requests', arg, None, ) return r def file_requests_create(self, title, destination, deadline=None, open=True, description=None): """ Creates a file request for this user. Route attributes: scope: file_requests.write :param str title: The title of the file request. Must not be empty. :param str destination: The path of the folder in the Dropbox where uploaded files will be sent. For apps with the app folder permission, this will be relative to the app folder. :param Nullable[:class:`dropbox.file_requests.FileRequestDeadline`] deadline: The deadline for the file request. Deadlines can only be set by Professional and Business accounts. :param bool open: Whether or not the file request should be open. If the file request is closed, it will not accept any file submissions, but it can be opened later. :param Nullable[str] description: A description of the file request. :rtype: :class:`dropbox.file_requests.FileRequest` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_requests.CreateFileRequestError` """ arg = file_requests.CreateFileRequestArgs(title, destination, deadline, open, description) r = self.request( file_requests.create, 'file_requests', arg, None, ) return r def file_requests_delete(self, ids): """ Delete a batch of closed file requests. Route attributes: scope: file_requests.write :param List[str] ids: List IDs of the file requests to delete. :rtype: :class:`dropbox.file_requests.DeleteFileRequestsResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_requests.DeleteFileRequestError` """ arg = file_requests.DeleteFileRequestArgs(ids) r = self.request( file_requests.delete, 'file_requests', arg, None, ) return r def file_requests_delete_all_closed(self): """ Delete all closed file requests owned by this user. Route attributes: scope: file_requests.write :rtype: :class:`dropbox.file_requests.DeleteAllClosedFileRequestsResult` """ arg = None r = self.request( file_requests.delete_all_closed, 'file_requests', arg, None, ) return r def file_requests_get(self, id): """ Returns the specified file request. Route attributes: scope: file_requests.read :param str id: The ID of the file request to retrieve. :rtype: :class:`dropbox.file_requests.FileRequest` """ arg = file_requests.GetFileRequestArgs(id) r = self.request( file_requests.get, 'file_requests', arg, None, ) return r def file_requests_list_v2(self, limit=1000): """ Returns a list of file requests owned by this user. For apps with the app folder permission, this will only return file requests with destinations in the app folder. Route attributes: scope: file_requests.read :param int limit: The maximum number of file requests that should be returned per request. :rtype: :class:`dropbox.file_requests.ListFileRequestsV2Result` """ arg = file_requests.ListFileRequestsArg(limit) r = self.request( file_requests.list_v2, 'file_requests', arg, None, ) return r def file_requests_list(self): """ Returns a list of file requests owned by this user. For apps with the app folder permission, this will only return file requests with destinations in the app folder. Route attributes: scope: file_requests.read :rtype: :class:`dropbox.file_requests.ListFileRequestsResult` """ arg = None r = self.request( file_requests.list, 'file_requests', arg, None, ) return r def file_requests_list_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`file_requests_list_v2`, use this to paginate through all file requests. The cursor must come from a previous call to :meth:`file_requests_list_v2` or :meth:`file_requests_list_continue`. Route attributes: scope: file_requests.read :param str cursor: The cursor returned by the previous API call specified in the endpoint description. :rtype: :class:`dropbox.file_requests.ListFileRequestsV2Result` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_requests.ListFileRequestsContinueError` """ arg = file_requests.ListFileRequestsContinueArg(cursor) r = self.request( file_requests.list_continue, 'file_requests', arg, None, ) return r def file_requests_update(self, id, title=None, destination=None, deadline=file_requests.UpdateFileRequestDeadline.no_update, open=None, description=None): """ Update a file request. Route attributes: scope: file_requests.write :param str id: The ID of the file request to update. :param Nullable[str] title: The new title of the file request. Must not be empty. :param Nullable[str] destination: The new path of the folder in the Dropbox where uploaded files will be sent. For apps with the app folder permission, this will be relative to the app folder. :param deadline: The new deadline for the file request. Deadlines can only be set by Professional and Business accounts. :type deadline: :class:`dropbox.file_requests.UpdateFileRequestDeadline` :param Nullable[bool] open: Whether to set this file request as open or closed. :param Nullable[str] description: The description of the file request. :rtype: :class:`dropbox.file_requests.FileRequest` """ arg = file_requests.UpdateFileRequestArgs(id, title, destination, deadline, open, description) r = self.request( file_requests.update, 'file_requests', arg, None, ) return r # ------------------------------------------ # Routes in files namespace def files_alpha_get_metadata(self, path, include_media_info=False, include_deleted=False, include_has_explicit_shared_members=False, include_property_groups=None, include_property_templates=None): """ Returns the metadata for a file or folder. This is an alpha endpoint compatible with the properties API. Note: Metadata for the root folder is unsupported. Route attributes: scope: files.metadata.read :param Nullable[List[str]] include_property_templates: If set to a valid list of template IDs, ``FileMetadata.property_groups`` is set for files with custom properties. :rtype: :class:`dropbox.files.Metadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.AlphaGetMetadataError` """ warnings.warn( 'alpha/get_metadata is deprecated. Use get_metadata.', DeprecationWarning, ) arg = files.AlphaGetMetadataArg(path, include_media_info, include_deleted, include_has_explicit_shared_members, include_property_groups, include_property_templates) r = self.request( files.alpha_get_metadata, 'files', arg, None, ) return r def files_alpha_upload(self, f, path, mode=files.WriteMode.add, autorename=False, client_modified=None, mute=False, property_groups=None, strict_conflict=False, content_hash=None): """ Create a new file with the contents provided in the request. Note that the behavior of this alpha endpoint is unstable and subject to change. Do not use this to upload a file larger than 150 MB. Instead, create an upload session with :meth:`files_upload_session_start`. Route attributes: scope: files.content.write :param bytes f: Contents to upload. :param Nullable[str] content_hash: A hash of the file content uploaded in this call. If provided and the uploaded content does not match this hash, an error will be returned. For more information see our `Content hash `_ page. :rtype: :class:`dropbox.files.FileMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.UploadError` """ warnings.warn( 'alpha/upload is deprecated. Use upload.', DeprecationWarning, ) arg = files.UploadArg(path, mode, autorename, client_modified, mute, property_groups, strict_conflict, content_hash) r = self.request( files.alpha_upload, 'files', arg, f, ) return r def files_copy_v2(self, from_path, to_path, allow_shared_folder=False, autorename=False, allow_ownership_transfer=False): """ Copy a file or folder to a different location in the user's Dropbox. If the source path is a folder all its contents will be copied. Route attributes: scope: files.content.write :param bool allow_shared_folder: This flag has no effect. :param bool autorename: If there's a conflict, have the Dropbox server try to autorename the file to avoid the conflict. :param bool allow_ownership_transfer: Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. :rtype: :class:`dropbox.files.RelocationResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.RelocationError` """ arg = files.RelocationArg(from_path, to_path, allow_shared_folder, autorename, allow_ownership_transfer) r = self.request( files.copy_v2, 'files', arg, None, ) return r def files_copy(self, from_path, to_path, allow_shared_folder=False, autorename=False, allow_ownership_transfer=False): """ Copy a file or folder to a different location in the user's Dropbox. If the source path is a folder all its contents will be copied. Route attributes: scope: files.content.write :param bool allow_shared_folder: This flag has no effect. :param bool autorename: If there's a conflict, have the Dropbox server try to autorename the file to avoid the conflict. :param bool allow_ownership_transfer: Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. :rtype: :class:`dropbox.files.Metadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.RelocationError` """ warnings.warn( 'copy is deprecated. Use copy.', DeprecationWarning, ) arg = files.RelocationArg(from_path, to_path, allow_shared_folder, autorename, allow_ownership_transfer) r = self.request( files.copy, 'files', arg, None, ) return r def files_copy_batch_v2(self, entries, autorename=False): """ Copy multiple files or folders to different locations at once in the user's Dropbox. This route will replace :meth:`files_copy_batch`. The main difference is this route will return status for each entry, while :meth:`files_copy_batch` raises failure if any entry fails. This route will either finish synchronously, or return a job ID and do the async copy job in background. Please use :meth:`files_copy_batch_check_v2` to check the job status. Route attributes: scope: files.content.write :param List[:class:`dropbox.files.RelocationPath`] entries: List of entries to be moved or copied. Each entry is :class:`dropbox.files.RelocationPath`. :param bool autorename: If there's a conflict with any file, have the Dropbox server try to autorename that file to avoid the conflict. :rtype: :class:`dropbox.files.RelocationBatchV2Launch` """ arg = files.RelocationBatchArgBase(entries, autorename) r = self.request( files.copy_batch_v2, 'files', arg, None, ) return r def files_copy_batch(self, entries, autorename=False, allow_shared_folder=False, allow_ownership_transfer=False): """ Copy multiple files or folders to different locations at once in the user's Dropbox. This route will return job ID immediately and do the async copy job in background. Please use :meth:`files_copy_batch_check` to check the job status. Route attributes: scope: files.content.write :param bool allow_shared_folder: This flag has no effect. :param bool allow_ownership_transfer: Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. :rtype: :class:`dropbox.files.RelocationBatchLaunch` """ warnings.warn( 'copy_batch is deprecated. Use copy_batch.', DeprecationWarning, ) arg = files.RelocationBatchArg(entries, autorename, allow_shared_folder, allow_ownership_transfer) r = self.request( files.copy_batch, 'files', arg, None, ) return r def files_copy_batch_check_v2(self, async_job_id): """ Returns the status of an asynchronous job for :meth:`files_copy_batch_v2`. It returns list of results for each entry. Route attributes: scope: files.content.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.files.RelocationBatchV2JobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( files.copy_batch_check_v2, 'files', arg, None, ) return r def files_copy_batch_check(self, async_job_id): """ Returns the status of an asynchronous job for :meth:`files_copy_batch`. If success, it returns list of results for each entry. Route attributes: scope: files.content.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.files.RelocationBatchJobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.PollError` """ warnings.warn( 'copy_batch/check is deprecated. Use copy_batch/check.', DeprecationWarning, ) arg = async_.PollArg(async_job_id) r = self.request( files.copy_batch_check, 'files', arg, None, ) return r def files_copy_reference_get(self, path): """ Get a copy reference to a file or folder. This reference string can be used to save that file or folder to another user's Dropbox by passing it to :meth:`files_copy_reference_save`. Route attributes: scope: files.content.write :param str path: The path to the file or folder you want to get a copy reference to. :rtype: :class:`dropbox.files.GetCopyReferenceResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.GetCopyReferenceError` """ arg = files.GetCopyReferenceArg(path) r = self.request( files.copy_reference_get, 'files', arg, None, ) return r def files_copy_reference_save(self, copy_reference, path): """ Save a copy reference returned by :meth:`files_copy_reference_get` to the user's Dropbox. Route attributes: scope: files.content.write :param str copy_reference: A copy reference returned by :meth:`files_copy_reference_get`. :param str path: Path in the user's Dropbox that is the destination. :rtype: :class:`dropbox.files.SaveCopyReferenceResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.SaveCopyReferenceError` """ arg = files.SaveCopyReferenceArg(copy_reference, path) r = self.request( files.copy_reference_save, 'files', arg, None, ) return r def files_create_folder_v2(self, path, autorename=False): """ Create a folder at a given path. Route attributes: scope: files.content.write :param str path: Path in the user's Dropbox to create. :param bool autorename: If there's a conflict, have the Dropbox server try to autorename the folder to avoid the conflict. :rtype: :class:`dropbox.files.CreateFolderResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.CreateFolderError` """ arg = files.CreateFolderArg(path, autorename) r = self.request( files.create_folder_v2, 'files', arg, None, ) return r def files_create_folder(self, path, autorename=False): """ Create a folder at a given path. Route attributes: scope: files.content.write :param str path: Path in the user's Dropbox to create. :param bool autorename: If there's a conflict, have the Dropbox server try to autorename the folder to avoid the conflict. :rtype: :class:`dropbox.files.FolderMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.CreateFolderError` """ warnings.warn( 'create_folder is deprecated. Use create_folder.', DeprecationWarning, ) arg = files.CreateFolderArg(path, autorename) r = self.request( files.create_folder, 'files', arg, None, ) return r def files_create_folder_batch(self, paths, autorename=False, force_async=False): """ Create multiple folders at once. This route is asynchronous for large batches, which returns a job ID immediately and runs the create folder batch asynchronously. Otherwise, creates the folders and returns the result synchronously for smaller inputs. You can force asynchronous behaviour by using the ``CreateFolderBatchArg.force_async`` flag. Use :meth:`files_create_folder_batch_check` to check the job status. Route attributes: scope: files.content.write :param List[str] paths: List of paths to be created in the user's Dropbox. Duplicate path arguments in the batch are considered only once. :param bool autorename: If there's a conflict, have the Dropbox server try to autorename the folder to avoid the conflict. :param bool force_async: Whether to force the create to happen asynchronously. :rtype: :class:`dropbox.files.CreateFolderBatchLaunch` """ arg = files.CreateFolderBatchArg(paths, autorename, force_async) r = self.request( files.create_folder_batch, 'files', arg, None, ) return r def files_create_folder_batch_check(self, async_job_id): """ Returns the status of an asynchronous job for :meth:`files_create_folder_batch`. If success, it returns list of result for each entry. Route attributes: scope: files.content.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.files.CreateFolderBatchJobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( files.create_folder_batch_check, 'files', arg, None, ) return r def files_delete_v2(self, path, parent_rev=None): """ Delete the file or folder at a given path. If the path is a folder, all its contents will be deleted too. A successful response indicates that the file or folder was deleted. The returned metadata will be the corresponding :class:`dropbox.files.FileMetadata` or :class:`dropbox.files.FolderMetadata` for the item at time of deletion, and not a :class:`dropbox.files.DeletedMetadata` object. Route attributes: scope: files.content.write :param str path: Path in the user's Dropbox to delete. :param Nullable[str] parent_rev: Perform delete if given "rev" matches the existing file's latest "rev". This field does not support deleting a folder. :rtype: :class:`dropbox.files.DeleteResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.DeleteError` """ arg = files.DeleteArg(path, parent_rev) r = self.request( files.delete_v2, 'files', arg, None, ) return r def files_delete(self, path, parent_rev=None): """ Delete the file or folder at a given path. If the path is a folder, all its contents will be deleted too. A successful response indicates that the file or folder was deleted. The returned metadata will be the corresponding :class:`dropbox.files.FileMetadata` or :class:`dropbox.files.FolderMetadata` for the item at time of deletion, and not a :class:`dropbox.files.DeletedMetadata` object. Route attributes: scope: files.content.write :param str path: Path in the user's Dropbox to delete. :param Nullable[str] parent_rev: Perform delete if given "rev" matches the existing file's latest "rev". This field does not support deleting a folder. :rtype: :class:`dropbox.files.Metadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.DeleteError` """ warnings.warn( 'delete is deprecated. Use delete.', DeprecationWarning, ) arg = files.DeleteArg(path, parent_rev) r = self.request( files.delete, 'files', arg, None, ) return r def files_delete_batch(self, entries): """ Delete multiple files/folders at once. This route is asynchronous, which returns a job ID immediately and runs the delete batch asynchronously. Use :meth:`files_delete_batch_check` to check the job status. Route attributes: scope: files.content.write :type entries: List[:class:`dropbox.files.DeleteArg`] :rtype: :class:`dropbox.files.DeleteBatchLaunch` """ arg = files.DeleteBatchArg(entries) r = self.request( files.delete_batch, 'files', arg, None, ) return r def files_delete_batch_check(self, async_job_id): """ Returns the status of an asynchronous job for :meth:`files_delete_batch`. If success, it returns list of result for each entry. Route attributes: scope: files.content.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.files.DeleteBatchJobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( files.delete_batch_check, 'files', arg, None, ) return r def files_download(self, path, rev=None): """ Download a file from a user's Dropbox. Route attributes: scope: files.content.read :param str path: The path of the file to download. :param Nullable[str] rev: Please specify revision in ``path`` instead. :rtype: (:class:`dropbox.files.FileMetadata`, :class:`requests.models.Response`) :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.DownloadError` If you do not consume the entire response body, then you must call close on the response object, otherwise you will max out your available connections. We recommend using the `contextlib.closing `_ context manager to ensure this. """ arg = files.DownloadArg(path, rev) r = self.request( files.download, 'files', arg, None, ) return r def files_download_to_file(self, download_path, path, rev=None): """ Download a file from a user's Dropbox. Route attributes: scope: files.content.read :param str download_path: Path on local machine to save file. :param str path: The path of the file to download. :param Nullable[str] rev: Please specify revision in ``path`` instead. :rtype: :class:`dropbox.files.FileMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.DownloadError` """ arg = files.DownloadArg(path, rev) r = self.request( files.download, 'files', arg, None, ) self._save_body_to_file(download_path, r[1]) return r[0] def files_download_zip(self, path): """ Download a folder from the user's Dropbox, as a zip file. The folder must be less than 20 GB in size and any single file within must be less than 4 GB in size. The resulting zip must have fewer than 10,000 total file and folder entries, including the top level folder. The input cannot be a single file. Note: this endpoint does not support HTTP range requests. Route attributes: scope: files.content.read :param str path: The path of the folder to download. :rtype: (:class:`dropbox.files.DownloadZipResult`, :class:`requests.models.Response`) :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.DownloadZipError` If you do not consume the entire response body, then you must call close on the response object, otherwise you will max out your available connections. We recommend using the `contextlib.closing `_ context manager to ensure this. """ arg = files.DownloadZipArg(path) r = self.request( files.download_zip, 'files', arg, None, ) return r def files_download_zip_to_file(self, download_path, path): """ Download a folder from the user's Dropbox, as a zip file. The folder must be less than 20 GB in size and any single file within must be less than 4 GB in size. The resulting zip must have fewer than 10,000 total file and folder entries, including the top level folder. The input cannot be a single file. Note: this endpoint does not support HTTP range requests. Route attributes: scope: files.content.read :param str download_path: Path on local machine to save file. :param str path: The path of the folder to download. :rtype: :class:`dropbox.files.DownloadZipResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.DownloadZipError` """ arg = files.DownloadZipArg(path) r = self.request( files.download_zip, 'files', arg, None, ) self._save_body_to_file(download_path, r[1]) return r[0] def files_export(self, path, export_format=None): """ Export a file from a user's Dropbox. This route only supports exporting files that cannot be downloaded directly and whose ``ExportResult.file_metadata`` has ``ExportInfo.export_as`` populated. Route attributes: scope: files.content.read :param str path: The path of the file to be exported. :param Nullable[str] export_format: The file format to which the file should be exported. This must be one of the formats listed in the file's export_options returned by :meth:`files_get_metadata`. If none is specified, the default format (specified in export_as in file metadata) will be used. :rtype: (:class:`dropbox.files.ExportResult`, :class:`requests.models.Response`) :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.ExportError` If you do not consume the entire response body, then you must call close on the response object, otherwise you will max out your available connections. We recommend using the `contextlib.closing `_ context manager to ensure this. """ arg = files.ExportArg(path, export_format) r = self.request( files.export, 'files', arg, None, ) return r def files_export_to_file(self, download_path, path, export_format=None): """ Export a file from a user's Dropbox. This route only supports exporting files that cannot be downloaded directly and whose ``ExportResult.file_metadata`` has ``ExportInfo.export_as`` populated. Route attributes: scope: files.content.read :param str download_path: Path on local machine to save file. :param str path: The path of the file to be exported. :param Nullable[str] export_format: The file format to which the file should be exported. This must be one of the formats listed in the file's export_options returned by :meth:`files_get_metadata`. If none is specified, the default format (specified in export_as in file metadata) will be used. :rtype: :class:`dropbox.files.ExportResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.ExportError` """ arg = files.ExportArg(path, export_format) r = self.request( files.export, 'files', arg, None, ) self._save_body_to_file(download_path, r[1]) return r[0] def files_get_file_lock_batch(self, entries): """ Return the lock metadata for the given list of paths. Route attributes: scope: files.content.read :param List[:class:`dropbox.files.LockFileArg`] entries: List of 'entries'. Each 'entry' contains a path of the file which will be locked or queried. Duplicate path arguments in the batch are considered only once. :rtype: :class:`dropbox.files.LockFileBatchResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.LockFileError` """ arg = files.LockFileBatchArg(entries) r = self.request( files.get_file_lock_batch, 'files', arg, None, ) return r def files_get_metadata(self, path, include_media_info=False, include_deleted=False, include_has_explicit_shared_members=False, include_property_groups=None): """ Returns the metadata for a file or folder. Note: Metadata for the root folder is unsupported. Route attributes: scope: files.metadata.read :param str path: The path of a file or folder on Dropbox. :param bool include_media_info: If true, ``FileMetadata.media_info`` is set for photo and video. :param bool include_deleted: If true, :class:`dropbox.files.DeletedMetadata` will be returned for deleted file or folder, otherwise ``LookupError.not_found`` will be returned. :param bool include_has_explicit_shared_members: If true, the results will include a flag for each file indicating whether or not that file has any explicit members. :param Nullable[:class:`dropbox.files.TemplateFilterBase`] include_property_groups: If set to a valid list of template IDs, ``FileMetadata.property_groups`` is set if there exists property data associated with the file and each of the listed templates. :rtype: :class:`dropbox.files.Metadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.GetMetadataError` """ arg = files.GetMetadataArg(path, include_media_info, include_deleted, include_has_explicit_shared_members, include_property_groups) r = self.request( files.get_metadata, 'files', arg, None, ) return r def files_get_preview(self, path, rev=None): """ Get a preview for a file. Currently, PDF previews are generated for files with the following extensions: .ai, .doc, .docm, .docx, .eps, .gdoc, .gslides, .odp, .odt, .pps, .ppsm, .ppsx, .ppt, .pptm, .pptx, .rtf. HTML previews are generated for files with the following extensions: .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. Other formats will return an unsupported extension error. Route attributes: scope: files.content.read :param str path: The path of the file to preview. :param Nullable[str] rev: Please specify revision in ``path`` instead. :rtype: (:class:`dropbox.files.FileMetadata`, :class:`requests.models.Response`) :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.PreviewError` If you do not consume the entire response body, then you must call close on the response object, otherwise you will max out your available connections. We recommend using the `contextlib.closing `_ context manager to ensure this. """ arg = files.PreviewArg(path, rev) r = self.request( files.get_preview, 'files', arg, None, ) return r def files_get_preview_to_file(self, download_path, path, rev=None): """ Get a preview for a file. Currently, PDF previews are generated for files with the following extensions: .ai, .doc, .docm, .docx, .eps, .gdoc, .gslides, .odp, .odt, .pps, .ppsm, .ppsx, .ppt, .pptm, .pptx, .rtf. HTML previews are generated for files with the following extensions: .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. Other formats will return an unsupported extension error. Route attributes: scope: files.content.read :param str download_path: Path on local machine to save file. :param str path: The path of the file to preview. :param Nullable[str] rev: Please specify revision in ``path`` instead. :rtype: :class:`dropbox.files.FileMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.PreviewError` """ arg = files.PreviewArg(path, rev) r = self.request( files.get_preview, 'files', arg, None, ) self._save_body_to_file(download_path, r[1]) return r[0] def files_get_temporary_link(self, path): """ Get a temporary link to stream content of a file. This link will expire in four hours and afterwards you will get 410 Gone. This URL should not be used to display content directly in the browser. The Content-Type of the link is determined automatically by the file's mime type. Route attributes: scope: files.content.read :param str path: The path to the file you want a temporary link to. :rtype: :class:`dropbox.files.GetTemporaryLinkResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.GetTemporaryLinkError` """ arg = files.GetTemporaryLinkArg(path) r = self.request( files.get_temporary_link, 'files', arg, None, ) return r def files_get_temporary_upload_link(self, commit_info, duration=14400.0): """ Get a one-time use temporary upload link to upload a file to a Dropbox location. This endpoint acts as a delayed :meth:`files_upload`. The returned temporary upload link may be used to make a POST request with the data to be uploaded. The upload will then be perfomed with the :class:`dropbox.files.CommitInfo` previously provided to :meth:`files_get_temporary_upload_link` but evaluated only upon consumption. Hence, errors stemming from invalid :class:`dropbox.files.CommitInfo` with respect to the state of the user's Dropbox will only be communicated at consumption time. Additionally, these errors are surfaced as generic HTTP 409 Conflict responses, potentially hiding issue details. The maximum temporary upload link duration is 4 hours. Upon consumption or expiration, a new link will have to be generated. Multiple links may exist for a specific upload path at any given time. The POST request on the temporary upload link must have its Content-Type set to "application/octet-stream". Example temporary upload link consumption request: curl -X POST https://content.dropboxapi.com/apitul/1/bNi2uIYF51cVBND --header "Content-Type: application/octet-stream" --data-binary @local_file.txt A successful temporary upload link consumption request returns the content hash of the uploaded data in JSON format. Example successful temporary upload link consumption response: {"content-hash": "599d71033d700ac892a0e48fa61b125d2f5994"} An unsuccessful temporary upload link consumption request returns any of the following status codes: HTTP 400 Bad Request: Content-Type is not one of application/octet-stream and text/plain or request is invalid. HTTP 409 Conflict: The temporary upload link does not exist or is currently unavailable, the upload failed, or another error happened. HTTP 410 Gone: The temporary upload link is expired or consumed. Example unsuccessful temporary upload link consumption response: Temporary upload link has been recently consumed. Route attributes: scope: files.content.write :param commit_info: Contains the path and other optional modifiers for the future upload commit. Equivalent to the parameters provided to :meth:`files_upload`. :type commit_info: :class:`dropbox.files.CommitInfo` :param float duration: How long before this link expires, in seconds. Attempting to start an upload with this link longer than this period of time after link creation will result in an error. :rtype: :class:`dropbox.files.GetTemporaryUploadLinkResult` """ arg = files.GetTemporaryUploadLinkArg(commit_info, duration) r = self.request( files.get_temporary_upload_link, 'files', arg, None, ) return r def files_get_thumbnail(self, path, format=files.ThumbnailFormat.jpeg, size=files.ThumbnailSize.w64h64, mode=files.ThumbnailMode.strict): """ Get a thumbnail for an image. This method currently supports files with the following file extensions: jpg, jpeg, png, tiff, tif, gif, webp, ppm and bmp. Photos that are larger than 20MB in size won't be converted to a thumbnail. Route attributes: scope: files.content.read :param str path: The path to the image file you want to thumbnail. :param format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg should be preferred, while png is better for screenshots and digital arts. :type format: :class:`dropbox.files.ThumbnailFormat` :param size: The size for the thumbnail image. :type size: :class:`dropbox.files.ThumbnailSize` :param mode: How to resize and crop the image to achieve the desired size. :type mode: :class:`dropbox.files.ThumbnailMode` :rtype: (:class:`dropbox.files.FileMetadata`, :class:`requests.models.Response`) :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.ThumbnailError` If you do not consume the entire response body, then you must call close on the response object, otherwise you will max out your available connections. We recommend using the `contextlib.closing `_ context manager to ensure this. """ arg = files.ThumbnailArg(path, format, size, mode) r = self.request( files.get_thumbnail, 'files', arg, None, ) return r def files_get_thumbnail_to_file(self, download_path, path, format=files.ThumbnailFormat.jpeg, size=files.ThumbnailSize.w64h64, mode=files.ThumbnailMode.strict): """ Get a thumbnail for an image. This method currently supports files with the following file extensions: jpg, jpeg, png, tiff, tif, gif, webp, ppm and bmp. Photos that are larger than 20MB in size won't be converted to a thumbnail. Route attributes: scope: files.content.read :param str download_path: Path on local machine to save file. :param str path: The path to the image file you want to thumbnail. :param format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg should be preferred, while png is better for screenshots and digital arts. :type format: :class:`dropbox.files.ThumbnailFormat` :param size: The size for the thumbnail image. :type size: :class:`dropbox.files.ThumbnailSize` :param mode: How to resize and crop the image to achieve the desired size. :type mode: :class:`dropbox.files.ThumbnailMode` :rtype: :class:`dropbox.files.FileMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.ThumbnailError` """ arg = files.ThumbnailArg(path, format, size, mode) r = self.request( files.get_thumbnail, 'files', arg, None, ) self._save_body_to_file(download_path, r[1]) return r[0] def files_get_thumbnail_v2(self, resource, format=files.ThumbnailFormat.jpeg, size=files.ThumbnailSize.w64h64, mode=files.ThumbnailMode.strict): """ Get a thumbnail for an image. This method currently supports files with the following file extensions: jpg, jpeg, png, tiff, tif, gif, webp, ppm and bmp. Photos that are larger than 20MB in size won't be converted to a thumbnail. Route attributes: scope: files.content.read :param resource: Information specifying which file to preview. This could be a path to a file, a shared link pointing to a file, or a shared link pointing to a folder, with a relative path. :type resource: :class:`dropbox.files.PathOrLink` :param format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg should be preferred, while png is better for screenshots and digital arts. :type format: :class:`dropbox.files.ThumbnailFormat` :param size: The size for the thumbnail image. :type size: :class:`dropbox.files.ThumbnailSize` :param mode: How to resize and crop the image to achieve the desired size. :type mode: :class:`dropbox.files.ThumbnailMode` :rtype: (:class:`dropbox.files.PreviewResult`, :class:`requests.models.Response`) :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.ThumbnailV2Error` If you do not consume the entire response body, then you must call close on the response object, otherwise you will max out your available connections. We recommend using the `contextlib.closing `_ context manager to ensure this. """ arg = files.ThumbnailV2Arg(resource, format, size, mode) r = self.request( files.get_thumbnail_v2, 'files', arg, None, ) return r def files_get_thumbnail_to_file_v2(self, download_path, resource, format=files.ThumbnailFormat.jpeg, size=files.ThumbnailSize.w64h64, mode=files.ThumbnailMode.strict): """ Get a thumbnail for an image. This method currently supports files with the following file extensions: jpg, jpeg, png, tiff, tif, gif, webp, ppm and bmp. Photos that are larger than 20MB in size won't be converted to a thumbnail. Route attributes: scope: files.content.read :param str download_path: Path on local machine to save file. :param resource: Information specifying which file to preview. This could be a path to a file, a shared link pointing to a file, or a shared link pointing to a folder, with a relative path. :type resource: :class:`dropbox.files.PathOrLink` :param format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg should be preferred, while png is better for screenshots and digital arts. :type format: :class:`dropbox.files.ThumbnailFormat` :param size: The size for the thumbnail image. :type size: :class:`dropbox.files.ThumbnailSize` :param mode: How to resize and crop the image to achieve the desired size. :type mode: :class:`dropbox.files.ThumbnailMode` :rtype: :class:`dropbox.files.PreviewResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.ThumbnailV2Error` """ arg = files.ThumbnailV2Arg(resource, format, size, mode) r = self.request( files.get_thumbnail_v2, 'files', arg, None, ) self._save_body_to_file(download_path, r[1]) return r[0] def files_get_thumbnail_batch(self, entries): """ Get thumbnails for a list of images. We allow up to 25 thumbnails in a single batch. This method currently supports files with the following file extensions: jpg, jpeg, png, tiff, tif, gif, webp, ppm and bmp. Photos that are larger than 20MB in size won't be converted to a thumbnail. Route attributes: scope: files.content.read :param List[:class:`dropbox.files.ThumbnailArg`] entries: List of files to get thumbnails. :rtype: :class:`dropbox.files.GetThumbnailBatchResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.GetThumbnailBatchError` """ arg = files.GetThumbnailBatchArg(entries) r = self.request( files.get_thumbnail_batch, 'files', arg, None, ) return r def files_list_folder(self, path, recursive=False, include_media_info=False, include_deleted=False, include_has_explicit_shared_members=False, include_mounted_folders=True, limit=None, shared_link=None, include_property_groups=None, include_non_downloadable_files=True): """ Starts returning the contents of a folder. If the result's ``ListFolderResult.has_more`` field is ``True``, call :meth:`files_list_folder_continue` with the returned ``ListFolderResult.cursor`` to retrieve more entries. If you're using ``ListFolderArg.recursive`` set to ``True`` to keep a local cache of the contents of a Dropbox account, iterate through each entry in order and process them as follows to keep your local state in sync: For each :class:`dropbox.files.FileMetadata`, store the new entry at the given path in your local state. If the required parent folders don't exist yet, create them. If there's already something else at the given path, replace it and remove all its children. For each :class:`dropbox.files.FolderMetadata`, store the new entry at the given path in your local state. If the required parent folders don't exist yet, create them. If there's already something else at the given path, replace it but leave the children as they are. Check the new entry's ``FolderSharingInfo.read_only`` and set all its children's read-only statuses to match. For each :class:`dropbox.files.DeletedMetadata`, if your local state has something at the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. Note: :class:`dropbox.auth.RateLimitError` may be returned if multiple :meth:`files_list_folder` or :meth:`files_list_folder_continue` calls with same parameters are made simultaneously by same API app for same user. If your app implements retry logic, please hold off the retry until the previous request finishes. Route attributes: scope: files.metadata.read :param str path: A unique identifier for the file. :param bool recursive: If true, the list folder operation will be applied recursively to all subfolders and the response will contain contents of all subfolders. :param bool include_media_info: If true, ``FileMetadata.media_info`` is set for photo and video. This parameter will no longer have an effect starting December 2, 2019. :param bool include_deleted: If true, the results will include entries for files and folders that used to exist but were deleted. :param bool include_has_explicit_shared_members: If true, the results will include a flag for each file indicating whether or not that file has any explicit members. :param bool include_mounted_folders: If true, the results will include entries under mounted folders which includes app folder, shared folder and team folder. :param Nullable[int] limit: The maximum number of results to return per request. Note: This is an approximate number and there can be slightly more entries returned in some cases. :param Nullable[:class:`dropbox.files.SharedLink`] shared_link: A shared link to list the contents of. If the link is password-protected, the password must be provided. If this field is present, ``ListFolderArg.path`` will be relative to root of the shared link. Only non-recursive mode is supported for shared link. :param Nullable[:class:`dropbox.files.TemplateFilterBase`] include_property_groups: If set to a valid list of template IDs, ``FileMetadata.property_groups`` is set if there exists property data associated with the file and each of the listed templates. :param bool include_non_downloadable_files: If true, include files that are not downloadable, i.e. Google Docs. :rtype: :class:`dropbox.files.ListFolderResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.ListFolderError` """ arg = files.ListFolderArg(path, recursive, include_media_info, include_deleted, include_has_explicit_shared_members, include_mounted_folders, limit, shared_link, include_property_groups, include_non_downloadable_files) r = self.request( files.list_folder, 'files', arg, None, ) return r def files_list_folder_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`files_list_folder`, use this to paginate through all files and retrieve updates to the folder, following the same rules as documented for :meth:`files_list_folder`. Route attributes: scope: files.metadata.read :param str cursor: The cursor returned by your last call to :meth:`files_list_folder` or :meth:`files_list_folder_continue`. :rtype: :class:`dropbox.files.ListFolderResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.ListFolderContinueError` """ arg = files.ListFolderContinueArg(cursor) r = self.request( files.list_folder_continue, 'files', arg, None, ) return r def files_list_folder_get_latest_cursor(self, path, recursive=False, include_media_info=False, include_deleted=False, include_has_explicit_shared_members=False, include_mounted_folders=True, limit=None, shared_link=None, include_property_groups=None, include_non_downloadable_files=True): """ A way to quickly get a cursor for the folder's state. Unlike :meth:`files_list_folder`, :meth:`files_list_folder_get_latest_cursor` doesn't return any entries. This endpoint is for app which only needs to know about new files and modifications and doesn't need to know about files that already exist in Dropbox. Route attributes: scope: files.metadata.read :param str path: A unique identifier for the file. :param bool recursive: If true, the list folder operation will be applied recursively to all subfolders and the response will contain contents of all subfolders. :param bool include_media_info: If true, ``FileMetadata.media_info`` is set for photo and video. This parameter will no longer have an effect starting December 2, 2019. :param bool include_deleted: If true, the results will include entries for files and folders that used to exist but were deleted. :param bool include_has_explicit_shared_members: If true, the results will include a flag for each file indicating whether or not that file has any explicit members. :param bool include_mounted_folders: If true, the results will include entries under mounted folders which includes app folder, shared folder and team folder. :param Nullable[int] limit: The maximum number of results to return per request. Note: This is an approximate number and there can be slightly more entries returned in some cases. :param Nullable[:class:`dropbox.files.SharedLink`] shared_link: A shared link to list the contents of. If the link is password-protected, the password must be provided. If this field is present, ``ListFolderArg.path`` will be relative to root of the shared link. Only non-recursive mode is supported for shared link. :param Nullable[:class:`dropbox.files.TemplateFilterBase`] include_property_groups: If set to a valid list of template IDs, ``FileMetadata.property_groups`` is set if there exists property data associated with the file and each of the listed templates. :param bool include_non_downloadable_files: If true, include files that are not downloadable, i.e. Google Docs. :rtype: :class:`dropbox.files.ListFolderGetLatestCursorResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.ListFolderError` """ arg = files.ListFolderArg(path, recursive, include_media_info, include_deleted, include_has_explicit_shared_members, include_mounted_folders, limit, shared_link, include_property_groups, include_non_downloadable_files) r = self.request( files.list_folder_get_latest_cursor, 'files', arg, None, ) return r def files_list_folder_longpoll(self, cursor, timeout=30): """ A longpoll endpoint to wait for changes on an account. In conjunction with :meth:`files_list_folder_continue`, this call gives you a low-latency way to monitor an account for file changes. The connection will block until there are changes available or a timeout occurs. This endpoint is useful mostly for client-side apps. If you're looking for server-side notifications, check out our `webhooks documentation `_. Route attributes: scope: files.metadata.read :param str cursor: A cursor as returned by :meth:`files_list_folder` or :meth:`files_list_folder_continue`. Cursors retrieved by setting ``ListFolderArg.include_media_info`` to ``True`` are not supported. :param int timeout: A timeout in seconds. The request will block for at most this length of time, plus up to 90 seconds of random jitter added to avoid the thundering herd problem. Care should be taken when using this parameter, as some network infrastructure does not support long timeouts. :rtype: :class:`dropbox.files.ListFolderLongpollResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.ListFolderLongpollError` """ arg = files.ListFolderLongpollArg(cursor, timeout) r = self.request( files.list_folder_longpoll, 'files', arg, None, ) return r def files_list_revisions(self, path, mode=files.ListRevisionsMode.path, limit=10): """ Returns revisions for files based on a file path or a file id. The file path or file id is identified from the latest file entry at the given file path or id. This end point allows your app to query either by file path or file id by setting the mode parameter appropriately. In the ``ListRevisionsMode.path`` (default) mode, all revisions at the same file path as the latest file entry are returned. If revisions with the same file id are desired, then mode must be set to ``ListRevisionsMode.id``. The ``ListRevisionsMode.id`` mode is useful to retrieve revisions for a given file across moves or renames. Route attributes: scope: files.metadata.read :param str path: The path to the file you want to see the revisions of. :param mode: Determines the behavior of the API in listing the revisions for a given file path or id. :type mode: :class:`dropbox.files.ListRevisionsMode` :param int limit: The maximum number of revision entries returned. :rtype: :class:`dropbox.files.ListRevisionsResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.ListRevisionsError` """ arg = files.ListRevisionsArg(path, mode, limit) r = self.request( files.list_revisions, 'files', arg, None, ) return r def files_lock_file_batch(self, entries): """ Lock the files at the given paths. A locked file will be writable only by the lock holder. A successful response indicates that the file has been locked. Returns a list of the locked file paths and their metadata after this operation. Route attributes: scope: files.content.write :param List[:class:`dropbox.files.LockFileArg`] entries: List of 'entries'. Each 'entry' contains a path of the file which will be locked or queried. Duplicate path arguments in the batch are considered only once. :rtype: :class:`dropbox.files.LockFileBatchResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.LockFileError` """ arg = files.LockFileBatchArg(entries) r = self.request( files.lock_file_batch, 'files', arg, None, ) return r def files_move_v2(self, from_path, to_path, allow_shared_folder=False, autorename=False, allow_ownership_transfer=False): """ Move a file or folder to a different location in the user's Dropbox. If the source path is a folder all its contents will be moved. Note that we do not currently support case-only renaming. Route attributes: scope: files.content.write :param bool allow_shared_folder: This flag has no effect. :param bool autorename: If there's a conflict, have the Dropbox server try to autorename the file to avoid the conflict. :param bool allow_ownership_transfer: Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. :rtype: :class:`dropbox.files.RelocationResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.RelocationError` """ arg = files.RelocationArg(from_path, to_path, allow_shared_folder, autorename, allow_ownership_transfer) r = self.request( files.move_v2, 'files', arg, None, ) return r def files_move(self, from_path, to_path, allow_shared_folder=False, autorename=False, allow_ownership_transfer=False): """ Move a file or folder to a different location in the user's Dropbox. If the source path is a folder all its contents will be moved. Route attributes: scope: files.content.write :param bool allow_shared_folder: This flag has no effect. :param bool autorename: If there's a conflict, have the Dropbox server try to autorename the file to avoid the conflict. :param bool allow_ownership_transfer: Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. :rtype: :class:`dropbox.files.Metadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.RelocationError` """ warnings.warn( 'move is deprecated. Use move.', DeprecationWarning, ) arg = files.RelocationArg(from_path, to_path, allow_shared_folder, autorename, allow_ownership_transfer) r = self.request( files.move, 'files', arg, None, ) return r def files_move_batch_v2(self, entries, autorename=False, allow_ownership_transfer=False): """ Move multiple files or folders to different locations at once in the user's Dropbox. Note that we do not currently support case-only renaming. This route will replace :meth:`files_move_batch`. The main difference is this route will return status for each entry, while :meth:`files_move_batch` raises failure if any entry fails. This route will either finish synchronously, or return a job ID and do the async move job in background. Please use :meth:`files_move_batch_check_v2` to check the job status. Route attributes: scope: files.content.write :param bool allow_ownership_transfer: Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. :rtype: :class:`dropbox.files.RelocationBatchV2Launch` """ arg = files.MoveBatchArg(entries, autorename, allow_ownership_transfer) r = self.request( files.move_batch_v2, 'files', arg, None, ) return r def files_move_batch(self, entries, autorename=False, allow_shared_folder=False, allow_ownership_transfer=False): """ Move multiple files or folders to different locations at once in the user's Dropbox. This route will return job ID immediately and do the async moving job in background. Please use :meth:`files_move_batch_check` to check the job status. Route attributes: scope: files.content.write :param bool allow_shared_folder: This flag has no effect. :param bool allow_ownership_transfer: Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. :rtype: :class:`dropbox.files.RelocationBatchLaunch` """ warnings.warn( 'move_batch is deprecated. Use move_batch.', DeprecationWarning, ) arg = files.RelocationBatchArg(entries, autorename, allow_shared_folder, allow_ownership_transfer) r = self.request( files.move_batch, 'files', arg, None, ) return r def files_move_batch_check_v2(self, async_job_id): """ Returns the status of an asynchronous job for :meth:`files_move_batch_v2`. It returns list of results for each entry. Route attributes: scope: files.content.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.files.RelocationBatchV2JobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( files.move_batch_check_v2, 'files', arg, None, ) return r def files_move_batch_check(self, async_job_id): """ Returns the status of an asynchronous job for :meth:`files_move_batch`. If success, it returns list of results for each entry. Route attributes: scope: files.content.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.files.RelocationBatchJobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.PollError` """ warnings.warn( 'move_batch/check is deprecated. Use move_batch/check.', DeprecationWarning, ) arg = async_.PollArg(async_job_id) r = self.request( files.move_batch_check, 'files', arg, None, ) return r def files_paper_create(self, f, path, import_format): """ Creates a new Paper doc with the provided content. Route attributes: scope: files.content.write :param bytes f: Contents to upload. :param str path: The fully qualified path to the location in the user's Dropbox where the Paper Doc should be created. This should include the document's title and end with .paper. :param import_format: The format of the provided data. :type import_format: :class:`dropbox.files.ImportFormat` :rtype: :class:`dropbox.files.PaperCreateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.PaperCreateError` """ arg = files.PaperCreateArg(path, import_format) r = self.request( files.paper_create, 'files', arg, f, ) return r def files_paper_update(self, f, path, import_format, doc_update_policy, paper_revision=None): """ Updates an existing Paper doc with the provided content. Route attributes: scope: files.content.write :param bytes f: Contents to upload. :param str path: Path in the user's Dropbox to update. The path must correspond to a Paper doc or an error will be returned. :param import_format: The format of the provided data. :type import_format: :class:`dropbox.files.ImportFormat` :param doc_update_policy: How the provided content should be applied to the doc. :type doc_update_policy: :class:`dropbox.files.PaperDocUpdatePolicy` :param Nullable[int] paper_revision: The latest doc revision. Required when doc_update_policy is update. This value must match the current revision of the doc or error revision_mismatch will be returned. :rtype: :class:`dropbox.files.PaperUpdateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.PaperUpdateError` """ arg = files.PaperUpdateArg(path, import_format, doc_update_policy, paper_revision) r = self.request( files.paper_update, 'files', arg, f, ) return r def files_permanently_delete(self, path, parent_rev=None): """ Permanently delete the file or folder at a given path (see https://www.dropbox.com/en/help/40). If the given file or folder is not yet deleted, this route will first delete it. It is possible for this route to successfully delete, then fail to permanently delete. Note: This endpoint is only available for Dropbox Business apps. Route attributes: scope: files.permanent_delete :param str path: Path in the user's Dropbox to delete. :param Nullable[str] parent_rev: Perform delete if given "rev" matches the existing file's latest "rev". This field does not support deleting a folder. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.DeleteError` """ arg = files.DeleteArg(path, parent_rev) r = self.request( files.permanently_delete, 'files', arg, None, ) return None def files_properties_add(self, path, property_groups): """ Route attributes: scope: files.metadata.write :param str path: A unique identifier for the file or folder. :param List[:class:`dropbox.files.PropertyGroup`] property_groups: The property groups which are to be added to a Dropbox file. No two groups in the input should refer to the same template. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.AddPropertiesError` """ warnings.warn( 'properties/add is deprecated.', DeprecationWarning, ) arg = file_properties.AddPropertiesArg(path, property_groups) r = self.request( files.properties_add, 'files', arg, None, ) return None def files_properties_overwrite(self, path, property_groups): """ Route attributes: scope: files.metadata.write :param str path: A unique identifier for the file or folder. :param List[:class:`dropbox.files.PropertyGroup`] property_groups: The property groups "snapshot" updates to force apply. No two groups in the input should refer to the same template. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.InvalidPropertyGroupError` """ warnings.warn( 'properties/overwrite is deprecated.', DeprecationWarning, ) arg = file_properties.OverwritePropertyGroupArg(path, property_groups) r = self.request( files.properties_overwrite, 'files', arg, None, ) return None def files_properties_remove(self, path, property_template_ids): """ Route attributes: scope: files.metadata.write :param str path: A unique identifier for the file or folder. :param List[str] property_template_ids: A list of identifiers for a template created by :meth:`files_templates_add_for_user` or :meth:`files_templates_add_for_team`. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.RemovePropertiesError` """ warnings.warn( 'properties/remove is deprecated.', DeprecationWarning, ) arg = file_properties.RemovePropertiesArg(path, property_template_ids) r = self.request( files.properties_remove, 'files', arg, None, ) return None def files_properties_template_get(self, template_id): """ Route attributes: scope: files.metadata.read :param str template_id: An identifier for template added by route See :meth:`files_templates_add_for_user` or :meth:`files_templates_add_for_team`. :rtype: :class:`dropbox.files.GetTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.TemplateError` """ warnings.warn( 'properties/template/get is deprecated.', DeprecationWarning, ) arg = file_properties.GetTemplateArg(template_id) r = self.request( files.properties_template_get, 'files', arg, None, ) return r def files_properties_template_list(self): """ Route attributes: scope: files.metadata.read :rtype: :class:`dropbox.files.ListTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.TemplateError` """ warnings.warn( 'properties/template/list is deprecated.', DeprecationWarning, ) arg = None r = self.request( files.properties_template_list, 'files', arg, None, ) return r def files_properties_update(self, path, update_property_groups): """ Route attributes: scope: files.metadata.write :param str path: A unique identifier for the file or folder. :param List[:class:`dropbox.files.PropertyGroupUpdate`] update_property_groups: The property groups "delta" updates to apply. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.UpdatePropertiesError` """ warnings.warn( 'properties/update is deprecated.', DeprecationWarning, ) arg = file_properties.UpdatePropertiesArg(path, update_property_groups) r = self.request( files.properties_update, 'files', arg, None, ) return None def files_restore(self, path, rev): """ Restore a specific revision of a file to the given path. Route attributes: scope: files.content.write :param str path: The path to save the restored file. :param str rev: The revision to restore. :rtype: :class:`dropbox.files.FileMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.RestoreError` """ arg = files.RestoreArg(path, rev) r = self.request( files.restore, 'files', arg, None, ) return r def files_save_url(self, path, url): """ Save the data from a specified URL into a file in user's Dropbox. Note that the transfer from the URL must complete within 15 minutes, or the operation will time out and the job will fail. If the given path already exists, the file will be renamed to avoid the conflict (e.g. myfile (1).txt). Route attributes: scope: files.content.write :param str path: The path in Dropbox where the URL will be saved to. :param str url: The URL to be saved. :rtype: :class:`dropbox.files.SaveUrlResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.SaveUrlError` """ arg = files.SaveUrlArg(path, url) r = self.request( files.save_url, 'files', arg, None, ) return r def files_save_url_check_job_status(self, async_job_id): """ Check the status of a :meth:`files_save_url` job. Route attributes: scope: files.content.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.files.SaveUrlJobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( files.save_url_check_job_status, 'files', arg, None, ) return r def files_search(self, path, query, start=0, max_results=100, mode=files.SearchMode.filename): """ Searches for files and folders. Note: Recent changes will be reflected in search results within a few seconds and older revisions of existing files may still match your query for up to a few days. Route attributes: scope: files.metadata.read :param str path: The path in the user's Dropbox to search. Should probably be a folder. :param str query: The string to search for. Query string may be rewritten to improve relevance of results. The string is split on spaces into multiple tokens. For file name searching, the last token is used for prefix matching (i.e. "bat c" matches "bat cave" but not "batman car"). :param int start: The starting index within the search results (used for paging). :param int max_results: The maximum number of search results to return. :param mode: The search mode (filename, filename_and_content, or deleted_filename). Note that searching file content is only available for Dropbox Business accounts. :type mode: :class:`dropbox.files.SearchMode` :rtype: :class:`dropbox.files.SearchResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.SearchError` """ warnings.warn( 'search is deprecated. Use search.', DeprecationWarning, ) arg = files.SearchArg(path, query, start, max_results, mode) r = self.request( files.search, 'files', arg, None, ) return r def files_search_v2(self, query, options=None, match_field_options=None, include_highlights=None): """ Searches for files and folders. Note: :meth:`files_search_v2` along with :meth:`files_search_continue_v2` can only be used to retrieve a maximum of 10,000 matches. Recent changes may not immediately be reflected in search results due to a short delay in indexing. Duplicate results may be returned across pages. Some results may not be returned. Route attributes: scope: files.metadata.read :param str query: The string to search for. May match across multiple fields based on the request arguments. :param Nullable[:class:`dropbox.files.SearchOptions`] options: Options for more targeted search results. :param Nullable[:class:`dropbox.files.SearchMatchFieldOptions`] match_field_options: Options for search results match fields. :param Nullable[bool] include_highlights: Deprecated and moved this option to SearchMatchFieldOptions. :rtype: :class:`dropbox.files.SearchV2Result` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.SearchError` """ arg = files.SearchV2Arg(query, options, match_field_options, include_highlights) r = self.request( files.search_v2, 'files', arg, None, ) return r def files_search_continue_v2(self, cursor): """ Fetches the next page of search results returned from :meth:`files_search_v2`. Note: :meth:`files_search_v2` along with :meth:`files_search_continue_v2` can only be used to retrieve a maximum of 10,000 matches. Recent changes may not immediately be reflected in search results due to a short delay in indexing. Duplicate results may be returned across pages. Some results may not be returned. Route attributes: scope: files.metadata.read :param str cursor: The cursor returned by your last call to :meth:`files_search_v2`. Used to fetch the next page of results. :rtype: :class:`dropbox.files.SearchV2Result` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.SearchError` """ arg = files.SearchV2ContinueArg(cursor) r = self.request( files.search_continue_v2, 'files', arg, None, ) return r def files_tags_add(self, path, tag_text): """ Add a tag to an item. A tag is a string. The strings are automatically converted to lowercase letters. No more than 20 tags can be added to a given item. Route attributes: scope: files.metadata.write :param str path: Path to the item to be tagged. :param str tag_text: The value of the tag to add. Will be automatically converted to lowercase letters. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.AddTagError` """ arg = files.AddTagArg(path, tag_text) r = self.request( files.tags_add, 'files', arg, None, ) return None def files_tags_get(self, paths): """ Get list of tags assigned to items. Route attributes: scope: files.metadata.read :param List[str] paths: Path to the items. :rtype: :class:`dropbox.files.GetTagsResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.BaseTagError` """ arg = files.GetTagsArg(paths) r = self.request( files.tags_get, 'files', arg, None, ) return r def files_tags_remove(self, path, tag_text): """ Remove a tag from an item. Route attributes: scope: files.metadata.write :param str path: Path to the item to tag. :param str tag_text: The tag to remove. Will be automatically converted to lowercase letters. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.RemoveTagError` """ arg = files.RemoveTagArg(path, tag_text) r = self.request( files.tags_remove, 'files', arg, None, ) return None def files_unlock_file_batch(self, entries): """ Unlock the files at the given paths. A locked file can only be unlocked by the lock holder or, if a business account, a team admin. A successful response indicates that the file has been unlocked. Returns a list of the unlocked file paths and their metadata after this operation. Route attributes: scope: files.content.write :param List[:class:`dropbox.files.UnlockFileArg`] entries: List of 'entries'. Each 'entry' contains a path of the file which will be unlocked. Duplicate path arguments in the batch are considered only once. :rtype: :class:`dropbox.files.LockFileBatchResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.LockFileError` """ arg = files.UnlockFileBatchArg(entries) r = self.request( files.unlock_file_batch, 'files', arg, None, ) return r def files_upload(self, f, path, mode=files.WriteMode.add, autorename=False, client_modified=None, mute=False, property_groups=None, strict_conflict=False, content_hash=None): """ Create a new file with the contents provided in the request. Do not use this to upload a file larger than 150 MB. Instead, create an upload session with :meth:`files_upload_session_start`. Calls to this endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For more information, see the `Data transport limit page `_. Route attributes: scope: files.content.write :param bytes f: Contents to upload. :param Nullable[str] content_hash: A hash of the file content uploaded in this call. If provided and the uploaded content does not match this hash, an error will be returned. For more information see our `Content hash `_ page. :rtype: :class:`dropbox.files.FileMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.UploadError` """ arg = files.UploadArg(path, mode, autorename, client_modified, mute, property_groups, strict_conflict, content_hash) r = self.request( files.upload, 'files', arg, f, ) return r def files_upload_session_append_v2(self, f, cursor, close=False, content_hash=None): """ Append more data to an upload session. When the parameter close is set, this call will close the session. A single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. Calls to this endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For more information, see the `Data transport limit page `_. Route attributes: scope: files.content.write :param bytes f: Contents to upload. :param cursor: Contains the upload session ID and the offset. :type cursor: :class:`dropbox.files.UploadSessionCursor` :param bool close: If true, the current session will be closed, at which point you won't be able to call :meth:`files_upload_session_append_v2` anymore with the current session. :param Nullable[str] content_hash: A hash of the file content uploaded in this call. If provided and the uploaded content does not match this hash, an error will be returned. For more information see our `Content hash `_ page. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.UploadSessionAppendError` """ arg = files.UploadSessionAppendArg(cursor, close, content_hash) r = self.request( files.upload_session_append_v2, 'files', arg, f, ) return None def files_upload_session_append(self, f, session_id, offset): """ Append more data to an upload session. A single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. Calls to this endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For more information, see the `Data transport limit page `_. Route attributes: scope: files.content.write :param bytes f: Contents to upload. :param str session_id: The upload session ID (returned by :meth:`files_upload_session_start`). :param int offset: Offset in bytes at which data should be appended. We use this to make sure upload data isn't lost or duplicated in the event of a network error. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.UploadSessionAppendError` """ warnings.warn( 'upload_session/append is deprecated. Use upload_session/append.', DeprecationWarning, ) arg = files.UploadSessionCursor(session_id, offset) r = self.request( files.upload_session_append, 'files', arg, f, ) return None def files_upload_session_finish(self, f, cursor, commit, content_hash=None): """ Finish an upload session and save the uploaded data to the given file path. A single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. Calls to this endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For more information, see the `Data transport limit page `_. Route attributes: scope: files.content.write :param bytes f: Contents to upload. :param cursor: Contains the upload session ID and the offset. :type cursor: :class:`dropbox.files.UploadSessionCursor` :param commit: Contains the path and other optional modifiers for the commit. :type commit: :class:`dropbox.files.CommitInfo` :param Nullable[str] content_hash: A hash of the file content uploaded in this call. If provided and the uploaded content does not match this hash, an error will be returned. For more information see our `Content hash `_ page. :rtype: :class:`dropbox.files.FileMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.UploadSessionFinishError` """ arg = files.UploadSessionFinishArg(cursor, commit, content_hash) r = self.request( files.upload_session_finish, 'files', arg, f, ) return r def files_upload_session_finish_batch(self, entries): """ This route helps you commit many files at once into a user's Dropbox. Use :meth:`files_upload_session_start` and :meth:`files_upload_session_append_v2` to upload file contents. We recommend uploading many files in parallel to increase throughput. Once the file contents have been uploaded, rather than calling :meth:`files_upload_session_finish`, use this route to finish all your upload sessions in a single request. ``UploadSessionStartArg.close`` or ``UploadSessionAppendArg.close`` needs to be true for the last :meth:`files_upload_session_start` or :meth:`files_upload_session_append_v2` call. The maximum size of a file one can upload to an upload session is 350 GB. This route will return a job_id immediately and do the async commit job in background. Use :meth:`files_upload_session_finish_batch_check` to check the job status. For the same account, this route should be executed serially. That means you should not start the next job before current job finishes. We allow up to 1000 entries in a single request. Calls to this endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For more information, see the `Data transport limit page `_. Route attributes: scope: files.content.write :param List[:class:`dropbox.files.UploadSessionFinishArg`] entries: Commit information for each file in the batch. :rtype: :class:`dropbox.files.UploadSessionFinishBatchLaunch` """ warnings.warn( 'upload_session/finish_batch is deprecated. Use upload_session/finish_batch.', DeprecationWarning, ) arg = files.UploadSessionFinishBatchArg(entries) r = self.request( files.upload_session_finish_batch, 'files', arg, None, ) return r def files_upload_session_finish_batch_v2(self, entries): """ This route helps you commit many files at once into a user's Dropbox. Use :meth:`files_upload_session_start` and :meth:`files_upload_session_append_v2` to upload file contents. We recommend uploading many files in parallel to increase throughput. Once the file contents have been uploaded, rather than calling :meth:`files_upload_session_finish`, use this route to finish all your upload sessions in a single request. ``UploadSessionStartArg.close`` or ``UploadSessionAppendArg.close`` needs to be true for the last :meth:`files_upload_session_start` or :meth:`files_upload_session_append_v2` call of each upload session. The maximum size of a file one can upload to an upload session is 350 GB. We allow up to 1000 entries in a single request. Calls to this endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For more information, see the `Data transport limit page `_. Route attributes: scope: files.content.write :param List[:class:`dropbox.files.UploadSessionFinishArg`] entries: Commit information for each file in the batch. :rtype: :class:`dropbox.files.UploadSessionFinishBatchResult` """ arg = files.UploadSessionFinishBatchArg(entries) r = self.request( files.upload_session_finish_batch_v2, 'files', arg, None, ) return r def files_upload_session_finish_batch_check(self, async_job_id): """ Returns the status of an asynchronous job for :meth:`files_upload_session_finish_batch`. If success, it returns list of result for each entry. Route attributes: scope: files.content.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.files.UploadSessionFinishBatchJobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( files.upload_session_finish_batch_check, 'files', arg, None, ) return r def files_upload_session_start(self, f, close=False, session_type=None, content_hash=None): """ Upload sessions allow you to upload a single file in one or more requests, for example where the size of the file is greater than 150 MB. This call starts a new upload session with the given data. You can then use :meth:`files_upload_session_append_v2` to add more data and :meth:`files_upload_session_finish` to save all the data to a file in Dropbox. A single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. An upload session can be used for a maximum of 7 days. Attempting to use an ``UploadSessionStartResult.session_id`` with :meth:`files_upload_session_append_v2` or :meth:`files_upload_session_finish` more than 7 days after its creation will return a ``UploadSessionLookupError.not_found``. Calls to this endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For more information, see the `Data transport limit page `_. By default, upload sessions require you to send content of the file in sequential order via consecutive :meth:`files_upload_session_start`, :meth:`files_upload_session_append_v2`, :meth:`files_upload_session_finish` calls. For better performance, you can instead optionally use a ``UploadSessionType.concurrent`` upload session. To start a new concurrent session, set ``UploadSessionStartArg.session_type`` to ``UploadSessionType.concurrent``. After that, you can send file data in concurrent :meth:`files_upload_session_append_v2` requests. Finally finish the session with :meth:`files_upload_session_finish`. There are couple of constraints with concurrent sessions to make them work. You can not send data with :meth:`files_upload_session_start` or :meth:`files_upload_session_finish` call, only with :meth:`files_upload_session_append_v2` call. Also data uploaded in :meth:`files_upload_session_append_v2` call must be multiple of 4194304 bytes (except for last :meth:`files_upload_session_append_v2` with ``UploadSessionStartArg.close`` to ``True``, that may contain any remaining data). Route attributes: scope: files.content.write :param bytes f: Contents to upload. :param bool close: If true, the current session will be closed, at which point you won't be able to call :meth:`files_upload_session_append_v2` anymore with the current session. :param Nullable[:class:`dropbox.files.UploadSessionType`] session_type: Type of upload session you want to start. If not specified, default is ``UploadSessionType.sequential``. :param Nullable[str] content_hash: A hash of the file content uploaded in this call. If provided and the uploaded content does not match this hash, an error will be returned. For more information see our `Content hash `_ page. :rtype: :class:`dropbox.files.UploadSessionStartResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.files.UploadSessionStartError` """ arg = files.UploadSessionStartArg(close, session_type, content_hash) r = self.request( files.upload_session_start, 'files', arg, f, ) return r def files_upload_session_start_batch(self, num_sessions, session_type=None): """ This route starts batch of upload_sessions. Please refer to `upload_session/start` usage. Calls to this endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For more information, see the `Data transport limit page `_. Route attributes: scope: files.content.write :param Nullable[:class:`dropbox.files.UploadSessionType`] session_type: Type of upload session you want to start. If not specified, default is ``UploadSessionType.sequential``. :param int num_sessions: The number of upload sessions to start. :rtype: :class:`dropbox.files.UploadSessionStartBatchResult` """ arg = files.UploadSessionStartBatchArg(num_sessions, session_type) r = self.request( files.upload_session_start_batch, 'files', arg, None, ) return r # ------------------------------------------ # Routes in openid namespace def openid_userinfo(self): """ This route is used for refreshing the info that is found in the id_token during the OIDC flow. This route doesn't require any arguments and will use the scopes approved for the given access token. Route attributes: scope: openid :rtype: :class:`dropbox.openid.UserInfoResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.openid.UserInfoError` """ arg = openid.UserInfoArgs() r = self.request( openid.userinfo, 'openid', arg, None, ) return r # ------------------------------------------ # Routes in paper namespace def paper_docs_archive(self, doc_id): """ Marks the given Paper doc as archived. This action can be performed or undone by anyone with edit permissions to the doc. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. This endpoint will be retired in September 2020. Refer to the `Paper Migration Guide `_ for more information. Route attributes: scope: files.content.write :param str doc_id: The Paper doc ID. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.DocLookupError` """ warnings.warn( 'docs/archive is deprecated.', DeprecationWarning, ) arg = paper.RefPaperDoc(doc_id) r = self.request( paper.docs_archive, 'paper', arg, None, ) return None def paper_docs_create(self, f, import_format, parent_folder_id=None): """ Creates a new Paper doc with the provided content. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. This endpoint will be retired in September 2020. Refer to the `Paper Migration Guide `_ for more information. Route attributes: scope: files.content.write :param bytes f: Contents to upload. :param Nullable[str] parent_folder_id: The Paper folder ID where the Paper document should be created. The API user has to have write access to this folder or error is thrown. :param import_format: The format of provided data. :type import_format: :class:`dropbox.paper.ImportFormat` :rtype: :class:`dropbox.paper.PaperDocCreateUpdateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.PaperDocCreateError` """ warnings.warn( 'docs/create is deprecated.', DeprecationWarning, ) arg = paper.PaperDocCreateArgs(import_format, parent_folder_id) r = self.request( paper.docs_create, 'paper', arg, f, ) return r def paper_docs_download(self, doc_id, export_format): """ Exports and downloads Paper doc either as HTML or markdown. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: files.content.read :type export_format: :class:`dropbox.paper.ExportFormat` :rtype: (:class:`dropbox.paper.PaperDocExportResult`, :class:`requests.models.Response`) :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.DocLookupError` If you do not consume the entire response body, then you must call close on the response object, otherwise you will max out your available connections. We recommend using the `contextlib.closing `_ context manager to ensure this. """ warnings.warn( 'docs/download is deprecated.', DeprecationWarning, ) arg = paper.PaperDocExport(doc_id, export_format) r = self.request( paper.docs_download, 'paper', arg, None, ) return r def paper_docs_download_to_file(self, download_path, doc_id, export_format): """ Exports and downloads Paper doc either as HTML or markdown. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: files.content.read :param str download_path: Path on local machine to save file. :type export_format: :class:`dropbox.paper.ExportFormat` :rtype: :class:`dropbox.paper.PaperDocExportResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.DocLookupError` """ warnings.warn( 'docs/download is deprecated.', DeprecationWarning, ) arg = paper.PaperDocExport(doc_id, export_format) r = self.request( paper.docs_download, 'paper', arg, None, ) self._save_body_to_file(download_path, r[1]) return r[0] def paper_docs_folder_users_list(self, doc_id, limit=1000): """ Lists the users who are explicitly invited to the Paper folder in which the Paper doc is contained. For private folders all users (including owner) shared on the folder are listed and for team folders all non-team users shared on the folder are returned. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: sharing.read :param int limit: Size limit per batch. The maximum number of users that can be retrieved per batch is 1000. Higher value results in invalid arguments error. :rtype: :class:`dropbox.paper.ListUsersOnFolderResponse` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.DocLookupError` """ warnings.warn( 'docs/folder_users/list is deprecated.', DeprecationWarning, ) arg = paper.ListUsersOnFolderArgs(doc_id, limit) r = self.request( paper.docs_folder_users_list, 'paper', arg, None, ) return r def paper_docs_folder_users_list_continue(self, doc_id, cursor): """ Once a cursor has been retrieved from :meth:`paper_docs_folder_users_list`, use this to paginate through all users on the Paper folder. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: sharing.read :param str cursor: The cursor obtained from :meth:`paper_docs_folder_users_list` or :meth:`paper_docs_folder_users_list_continue`. Allows for pagination. :rtype: :class:`dropbox.paper.ListUsersOnFolderResponse` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.ListUsersCursorError` """ warnings.warn( 'docs/folder_users/list/continue is deprecated.', DeprecationWarning, ) arg = paper.ListUsersOnFolderContinueArgs(doc_id, cursor) r = self.request( paper.docs_folder_users_list_continue, 'paper', arg, None, ) return r def paper_docs_get_folder_info(self, doc_id): """ Retrieves folder information for the given Paper doc. This includes: - folder sharing policy; permissions for subfolders are set by the top-level folder. - full 'filepath', i.e. the list of folders (both folderId and folderName) from the root folder to the folder directly containing the Paper doc. If the Paper doc is not in any folder (aka unfiled) the response will be empty. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: sharing.read :param str doc_id: The Paper doc ID. :rtype: :class:`dropbox.paper.FoldersContainingPaperDoc` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.DocLookupError` """ warnings.warn( 'docs/get_folder_info is deprecated.', DeprecationWarning, ) arg = paper.RefPaperDoc(doc_id) r = self.request( paper.docs_get_folder_info, 'paper', arg, None, ) return r def paper_docs_list(self, filter_by=paper.ListPaperDocsFilterBy.docs_accessed, sort_by=paper.ListPaperDocsSortBy.accessed, sort_order=paper.ListPaperDocsSortOrder.ascending, limit=1000): """ Return the list of all Paper docs according to the argument specifications. To iterate over through the full pagination, pass the cursor to :meth:`paper_docs_list_continue`. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: files.metadata.read :param filter_by: Allows user to specify how the Paper docs should be filtered. :type filter_by: :class:`dropbox.paper.ListPaperDocsFilterBy` :param sort_by: Allows user to specify how the Paper docs should be sorted. :type sort_by: :class:`dropbox.paper.ListPaperDocsSortBy` :param sort_order: Allows user to specify the sort order of the result. :type sort_order: :class:`dropbox.paper.ListPaperDocsSortOrder` :param int limit: Size limit per batch. The maximum number of docs that can be retrieved per batch is 1000. Higher value results in invalid arguments error. :rtype: :class:`dropbox.paper.ListPaperDocsResponse` """ warnings.warn( 'docs/list is deprecated.', DeprecationWarning, ) arg = paper.ListPaperDocsArgs(filter_by, sort_by, sort_order, limit) r = self.request( paper.docs_list, 'paper', arg, None, ) return r def paper_docs_list_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`paper_docs_list`, use this to paginate through all Paper doc. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: files.metadata.read :param str cursor: The cursor obtained from :meth:`paper_docs_list` or :meth:`paper_docs_list_continue`. Allows for pagination. :rtype: :class:`dropbox.paper.ListPaperDocsResponse` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.ListDocsCursorError` """ warnings.warn( 'docs/list/continue is deprecated.', DeprecationWarning, ) arg = paper.ListPaperDocsContinueArgs(cursor) r = self.request( paper.docs_list_continue, 'paper', arg, None, ) return r def paper_docs_permanently_delete(self, doc_id): """ Permanently deletes the given Paper doc. This operation is final as the doc cannot be recovered. This action can be performed only by the doc owner. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: files.permanent_delete :param str doc_id: The Paper doc ID. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.DocLookupError` """ warnings.warn( 'docs/permanently_delete is deprecated.', DeprecationWarning, ) arg = paper.RefPaperDoc(doc_id) r = self.request( paper.docs_permanently_delete, 'paper', arg, None, ) return None def paper_docs_sharing_policy_get(self, doc_id): """ Gets the default sharing policy for the given Paper doc. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: sharing.read :param str doc_id: The Paper doc ID. :rtype: :class:`dropbox.paper.SharingPolicy` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.DocLookupError` """ warnings.warn( 'docs/sharing_policy/get is deprecated.', DeprecationWarning, ) arg = paper.RefPaperDoc(doc_id) r = self.request( paper.docs_sharing_policy_get, 'paper', arg, None, ) return r def paper_docs_sharing_policy_set(self, doc_id, sharing_policy): """ Sets the default sharing policy for the given Paper doc. The default 'team_sharing_policy' can be changed only by teams, omit this field for personal accounts. The 'public_sharing_policy' policy can't be set to the value 'disabled' because this setting can be changed only via the team admin console. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: sharing.write :param sharing_policy: The default sharing policy to be set for the Paper doc. :type sharing_policy: :class:`dropbox.paper.SharingPolicy` :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.DocLookupError` """ warnings.warn( 'docs/sharing_policy/set is deprecated.', DeprecationWarning, ) arg = paper.PaperDocSharingPolicy(doc_id, sharing_policy) r = self.request( paper.docs_sharing_policy_set, 'paper', arg, None, ) return None def paper_docs_update(self, f, doc_id, doc_update_policy, revision, import_format): """ Updates an existing Paper doc with the provided content. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. This endpoint will be retired in September 2020. Refer to the `Paper Migration Guide `_ for more information. Route attributes: scope: files.content.write :param bytes f: Contents to upload. :param doc_update_policy: The policy used for the current update call. :type doc_update_policy: :class:`dropbox.paper.PaperDocUpdatePolicy` :param int revision: The latest doc revision. This value must match the head revision or an error code will be returned. This is to prevent colliding writes. :param import_format: The format of provided data. :type import_format: :class:`dropbox.paper.ImportFormat` :rtype: :class:`dropbox.paper.PaperDocCreateUpdateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.PaperDocUpdateError` """ warnings.warn( 'docs/update is deprecated.', DeprecationWarning, ) arg = paper.PaperDocUpdateArgs(doc_id, doc_update_policy, revision, import_format) r = self.request( paper.docs_update, 'paper', arg, f, ) return r def paper_docs_users_add(self, doc_id, members, custom_message=None, quiet=False): """ Allows an owner or editor to add users to a Paper doc or change their permissions using their email address or Dropbox account ID. The doc owner's permissions cannot be changed. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: sharing.write :param List[:class:`dropbox.paper.AddMember`] members: User which should be added to the Paper doc. Specify only email address or Dropbox account ID. :param Nullable[str] custom_message: A personal message that will be emailed to each successfully added member. :param bool quiet: Clients should set this to true if no email message shall be sent to added users. :rtype: List[:class:`dropbox.paper.AddPaperDocUserMemberResult`] :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.DocLookupError` """ warnings.warn( 'docs/users/add is deprecated.', DeprecationWarning, ) arg = paper.AddPaperDocUser(doc_id, members, custom_message, quiet) r = self.request( paper.docs_users_add, 'paper', arg, None, ) return r def paper_docs_users_list(self, doc_id, limit=1000, filter_by=paper.UserOnPaperDocFilter.shared): """ Lists all users who visited the Paper doc or users with explicit access. This call excludes users who have been removed. The list is sorted by the date of the visit or the share date. The list will include both users, the explicitly shared ones as well as those who came in using the Paper url link. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: sharing.read :param int limit: Size limit per batch. The maximum number of users that can be retrieved per batch is 1000. Higher value results in invalid arguments error. :param filter_by: Specify this attribute if you want to obtain users that have already accessed the Paper doc. :type filter_by: :class:`dropbox.paper.UserOnPaperDocFilter` :rtype: :class:`dropbox.paper.ListUsersOnPaperDocResponse` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.DocLookupError` """ warnings.warn( 'docs/users/list is deprecated.', DeprecationWarning, ) arg = paper.ListUsersOnPaperDocArgs(doc_id, limit, filter_by) r = self.request( paper.docs_users_list, 'paper', arg, None, ) return r def paper_docs_users_list_continue(self, doc_id, cursor): """ Once a cursor has been retrieved from :meth:`paper_docs_users_list`, use this to paginate through all users on the Paper doc. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: sharing.read :param str cursor: The cursor obtained from :meth:`paper_docs_users_list` or :meth:`paper_docs_users_list_continue`. Allows for pagination. :rtype: :class:`dropbox.paper.ListUsersOnPaperDocResponse` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.ListUsersCursorError` """ warnings.warn( 'docs/users/list/continue is deprecated.', DeprecationWarning, ) arg = paper.ListUsersOnPaperDocContinueArgs(doc_id, cursor) r = self.request( paper.docs_users_list_continue, 'paper', arg, None, ) return r def paper_docs_users_remove(self, doc_id, member): """ Allows an owner or editor to remove users from a Paper doc using their email address or Dropbox account ID. The doc owner cannot be removed. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: sharing.write :param member: User which should be removed from the Paper doc. Specify only email address or Dropbox account ID. :type member: :class:`dropbox.paper.MemberSelector` :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.DocLookupError` """ warnings.warn( 'docs/users/remove is deprecated.', DeprecationWarning, ) arg = paper.RemovePaperDocUser(doc_id, member) r = self.request( paper.docs_users_remove, 'paper', arg, None, ) return None def paper_folders_create(self, name, parent_folder_id=None, is_team_folder=None): """ Create a new Paper folder with the provided info. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the `Paper Migration Guide `_ for migration information. Route attributes: scope: files.content.write :param str name: The name of the new Paper folder. :param Nullable[str] parent_folder_id: The encrypted Paper folder Id where the new Paper folder should be created. The API user has to have write access to this folder or error is thrown. If not supplied, the new folder will be created at top level. :param Nullable[bool] is_team_folder: Whether the folder to be created should be a team folder. This value will be ignored if parent_folder_id is supplied, as the new folder will inherit the type (private or team folder) from its parent. We will by default create a top-level private folder if both parent_folder_id and is_team_folder are not supplied. :rtype: :class:`dropbox.paper.PaperFolderCreateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.paper.PaperFolderCreateError` """ warnings.warn( 'folders/create is deprecated.', DeprecationWarning, ) arg = paper.PaperFolderCreateArg(name, parent_folder_id, is_team_folder) r = self.request( paper.folders_create, 'paper', arg, None, ) return r # ------------------------------------------ # Routes in sharing namespace def sharing_add_file_member(self, file, members, custom_message=None, quiet=False, access_level=sharing.AccessLevel.viewer, add_message_as_comment=False): """ Adds specified members to a file. Route attributes: scope: sharing.write :param str file: File to which to add members. :param List[:class:`dropbox.sharing.MemberSelector`] members: Members to add. Note that even an email address is given, this may result in a user being directly added to the membership if that email is the user's main account email. :param Nullable[str] custom_message: Message to send to added members in their invitation. :param bool quiet: Whether added members should be notified via email and device notifications of their invitation. :param access_level: AccessLevel union object, describing what access level we want to give new members. :type access_level: :class:`dropbox.sharing.AccessLevel` :param bool add_message_as_comment: If the custom message should be added as a comment on the file. :rtype: List[:class:`dropbox.sharing.FileMemberActionResult`] :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.AddFileMemberError` """ arg = sharing.AddFileMemberArgs(file, members, custom_message, quiet, access_level, add_message_as_comment) r = self.request( sharing.add_file_member, 'sharing', arg, None, ) return r def sharing_add_folder_member(self, shared_folder_id, members, quiet=False, custom_message=None): """ Allows an owner or editor (if the ACL update policy allows) of a shared folder to add another member. For the new member to get access to all the functionality for this folder, you will need to call :meth:`sharing_mount_folder` on their behalf. Route attributes: scope: sharing.write :param str shared_folder_id: The ID for the shared folder. :param List[:class:`dropbox.sharing.AddMember`] members: The intended list of members to add. Added members will receive invites to join the shared folder. :param bool quiet: Whether added members should be notified via email and device notifications of their invite. :param Nullable[str] custom_message: Optional message to display to added members in their invitation. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.AddFolderMemberError` """ arg = sharing.AddFolderMemberArg(shared_folder_id, members, quiet, custom_message) r = self.request( sharing.add_folder_member, 'sharing', arg, None, ) return None def sharing_check_job_status(self, async_job_id): """ Returns the status of an asynchronous job. Route attributes: scope: sharing.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.sharing.JobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( sharing.check_job_status, 'sharing', arg, None, ) return r def sharing_check_remove_member_job_status(self, async_job_id): """ Returns the status of an asynchronous job for sharing a folder. Route attributes: scope: sharing.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.sharing.RemoveMemberJobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( sharing.check_remove_member_job_status, 'sharing', arg, None, ) return r def sharing_check_share_job_status(self, async_job_id): """ Returns the status of an asynchronous job for sharing a folder. Route attributes: scope: sharing.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.sharing.ShareFolderJobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( sharing.check_share_job_status, 'sharing', arg, None, ) return r def sharing_create_shared_link(self, path, short_url=False, pending_upload=None): """ Create a shared link. If a shared link already exists for the given path, that link is returned. Previously, it was technically possible to break a shared link by moving or renaming the corresponding file or folder. In the future, this will no longer be the case, so your app shouldn't rely on this behavior. Instead, if your app needs to revoke a shared link, use :meth:`sharing_revoke_shared_link`. Route attributes: scope: sharing.write :param str path: The path to share. :type short_url: bool :param Nullable[:class:`dropbox.sharing.PendingUploadMode`] pending_upload: If it's okay to share a path that does not yet exist, set this to either ``PendingUploadMode.file`` or ``PendingUploadMode.folder`` to indicate whether to assume it's a file or folder. :rtype: :class:`dropbox.sharing.PathLinkMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.CreateSharedLinkError` """ warnings.warn( 'create_shared_link is deprecated. Use create_shared_link_with_settings.', DeprecationWarning, ) arg = sharing.CreateSharedLinkArg(path, short_url, pending_upload) r = self.request( sharing.create_shared_link, 'sharing', arg, None, ) return r def sharing_create_shared_link_with_settings(self, path, settings=None): """ Create a shared link with custom settings. If no settings are given then the default visibility is ``RequestedVisibility.public`` (The resolved visibility, though, may depend on other aspects such as team and shared folder settings). Route attributes: scope: sharing.write :param str path: The path to be shared by the shared link. :param Nullable[:class:`dropbox.sharing.SharedLinkSettings`] settings: The requested settings for the newly created shared link. :rtype: :class:`dropbox.sharing.SharedLinkMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.CreateSharedLinkWithSettingsError` """ arg = sharing.CreateSharedLinkWithSettingsArg(path, settings) r = self.request( sharing.create_shared_link_with_settings, 'sharing', arg, None, ) return r def sharing_get_file_metadata(self, file, actions=None): """ Returns shared file metadata. Route attributes: scope: sharing.read :param str file: The file to query. :param Nullable[List[:class:`dropbox.sharing.FileAction`]] actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's ``SharedFileMetadata.permissions`` field describing the actions the authenticated user can perform on the file. :rtype: :class:`dropbox.sharing.SharedFileMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.GetFileMetadataError` """ arg = sharing.GetFileMetadataArg(file, actions) r = self.request( sharing.get_file_metadata, 'sharing', arg, None, ) return r def sharing_get_file_metadata_batch(self, files, actions=None): """ Returns shared file metadata. Route attributes: scope: sharing.read :param List[str] files: The files to query. :param Nullable[List[:class:`dropbox.sharing.FileAction`]] actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's ``SharedFileMetadata.permissions`` field describing the actions the authenticated user can perform on the file. :rtype: List[:class:`dropbox.sharing.GetFileMetadataBatchResult`] :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.SharingUserError` """ arg = sharing.GetFileMetadataBatchArg(files, actions) r = self.request( sharing.get_file_metadata_batch, 'sharing', arg, None, ) return r def sharing_get_folder_metadata(self, shared_folder_id, actions=None): """ Returns shared folder metadata by its folder ID. Route attributes: scope: sharing.read :param str shared_folder_id: The ID for the shared folder. :param Nullable[List[:class:`dropbox.sharing.FolderAction`]] actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's ``SharedFolderMetadata.permissions`` field describing the actions the authenticated user can perform on the folder. :rtype: :class:`dropbox.sharing.SharedFolderMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.SharedFolderAccessError` """ arg = sharing.GetMetadataArgs(shared_folder_id, actions) r = self.request( sharing.get_folder_metadata, 'sharing', arg, None, ) return r def sharing_get_shared_link_file(self, url, path=None, link_password=None): """ Download the shared link's file from a user's Dropbox. Route attributes: scope: sharing.read :param str url: URL of the shared link. :param Nullable[str] path: If the shared link is to a folder, this parameter can be used to retrieve the metadata for a specific file or sub-folder in this folder. A relative path should be used. :param Nullable[str] link_password: If the shared link has a password, this parameter can be used. :rtype: (:class:`dropbox.sharing.SharedLinkMetadata`, :class:`requests.models.Response`) :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.GetSharedLinkFileError` If you do not consume the entire response body, then you must call close on the response object, otherwise you will max out your available connections. We recommend using the `contextlib.closing `_ context manager to ensure this. """ arg = sharing.GetSharedLinkMetadataArg(url, path, link_password) r = self.request( sharing.get_shared_link_file, 'sharing', arg, None, ) return r def sharing_get_shared_link_file_to_file(self, download_path, url, path=None, link_password=None): """ Download the shared link's file from a user's Dropbox. Route attributes: scope: sharing.read :param str download_path: Path on local machine to save file. :param str url: URL of the shared link. :param Nullable[str] path: If the shared link is to a folder, this parameter can be used to retrieve the metadata for a specific file or sub-folder in this folder. A relative path should be used. :param Nullable[str] link_password: If the shared link has a password, this parameter can be used. :rtype: :class:`dropbox.sharing.SharedLinkMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.GetSharedLinkFileError` """ arg = sharing.GetSharedLinkMetadataArg(url, path, link_password) r = self.request( sharing.get_shared_link_file, 'sharing', arg, None, ) self._save_body_to_file(download_path, r[1]) return r[0] def sharing_get_shared_link_metadata(self, url, path=None, link_password=None): """ Get the shared link's metadata. Route attributes: scope: sharing.read :param str url: URL of the shared link. :param Nullable[str] path: If the shared link is to a folder, this parameter can be used to retrieve the metadata for a specific file or sub-folder in this folder. A relative path should be used. :param Nullable[str] link_password: If the shared link has a password, this parameter can be used. :rtype: :class:`dropbox.sharing.SharedLinkMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.SharedLinkError` """ arg = sharing.GetSharedLinkMetadataArg(url, path, link_password) r = self.request( sharing.get_shared_link_metadata, 'sharing', arg, None, ) return r def sharing_get_shared_links(self, path=None): """ Returns a list of :class:`dropbox.sharing.LinkMetadata` objects for this user, including collection links. If no path is given, returns a list of all shared links for the current user, including collection links, up to a maximum of 1000 links. If a non-empty path is given, returns a list of all shared links that allow access to the given path. Collection links are never returned in this case. Route attributes: scope: sharing.read :param Nullable[str] path: See :meth:`sharing_get_shared_links` description. :rtype: :class:`dropbox.sharing.GetSharedLinksResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.GetSharedLinksError` """ warnings.warn( 'get_shared_links is deprecated. Use list_shared_links.', DeprecationWarning, ) arg = sharing.GetSharedLinksArg(path) r = self.request( sharing.get_shared_links, 'sharing', arg, None, ) return r def sharing_list_file_members(self, file, actions=None, include_inherited=True, limit=100): """ Use to obtain the members who have been invited to a file, both inherited and uninherited members. Route attributes: scope: sharing.read :param str file: The file for which you want to see members. :param Nullable[List[:class:`dropbox.sharing.MemberAction`]] actions: The actions for which to return permissions on a member. :param bool include_inherited: Whether to include members who only have access from a parent shared folder. :param int limit: Number of members to return max per query. Defaults to 100 if no limit is specified. :rtype: :class:`dropbox.sharing.SharedFileMembers` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.ListFileMembersError` """ arg = sharing.ListFileMembersArg(file, actions, include_inherited, limit) r = self.request( sharing.list_file_members, 'sharing', arg, None, ) return r def sharing_list_file_members_batch(self, files, limit=10): """ Get members of multiple files at once. The arguments to this route are more limited, and the limit on query result size per file is more strict. To customize the results more, use the individual file endpoint. Inherited users and groups are not included in the result, and permissions are not returned for this endpoint. Route attributes: scope: sharing.read :param List[str] files: Files for which to return members. :param int limit: Number of members to return max per query. Defaults to 10 if no limit is specified. :rtype: List[:class:`dropbox.sharing.ListFileMembersBatchResult`] :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.SharingUserError` """ arg = sharing.ListFileMembersBatchArg(files, limit) r = self.request( sharing.list_file_members_batch, 'sharing', arg, None, ) return r def sharing_list_file_members_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`sharing_list_file_members` or :meth:`sharing_list_file_members_batch`, use this to paginate through all shared file members. Route attributes: scope: sharing.read :param str cursor: The cursor returned by your last call to :meth:`sharing_list_file_members`, :meth:`sharing_list_file_members_continue`, or :meth:`sharing_list_file_members_batch`. :rtype: :class:`dropbox.sharing.SharedFileMembers` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.ListFileMembersContinueError` """ arg = sharing.ListFileMembersContinueArg(cursor) r = self.request( sharing.list_file_members_continue, 'sharing', arg, None, ) return r def sharing_list_folder_members(self, shared_folder_id, actions=None, limit=1000): """ Returns shared folder membership by its folder ID. Route attributes: scope: sharing.read :param str shared_folder_id: The ID for the shared folder. :rtype: :class:`dropbox.sharing.SharedFolderMembers` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.SharedFolderAccessError` """ arg = sharing.ListFolderMembersArgs(shared_folder_id, actions, limit) r = self.request( sharing.list_folder_members, 'sharing', arg, None, ) return r def sharing_list_folder_members_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`sharing_list_folder_members`, use this to paginate through all shared folder members. Route attributes: scope: sharing.read :param str cursor: The cursor returned by your last call to :meth:`sharing_list_folder_members` or :meth:`sharing_list_folder_members_continue`. :rtype: :class:`dropbox.sharing.SharedFolderMembers` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.ListFolderMembersContinueError` """ arg = sharing.ListFolderMembersContinueArg(cursor) r = self.request( sharing.list_folder_members_continue, 'sharing', arg, None, ) return r def sharing_list_folders(self, limit=1000, actions=None): """ Return the list of all shared folders the current user has access to. Route attributes: scope: sharing.read :param int limit: The maximum number of results to return per request. :param Nullable[List[:class:`dropbox.sharing.FolderAction`]] actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's ``SharedFolderMetadata.permissions`` field describing the actions the authenticated user can perform on the folder. :rtype: :class:`dropbox.sharing.ListFoldersResult` """ arg = sharing.ListFoldersArgs(limit, actions) r = self.request( sharing.list_folders, 'sharing', arg, None, ) return r def sharing_list_folders_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`sharing_list_folders`, use this to paginate through all shared folders. The cursor must come from a previous call to :meth:`sharing_list_folders` or :meth:`sharing_list_folders_continue`. Route attributes: scope: sharing.read :param str cursor: The cursor returned by the previous API call specified in the endpoint description. :rtype: :class:`dropbox.sharing.ListFoldersResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.ListFoldersContinueError` """ arg = sharing.ListFoldersContinueArg(cursor) r = self.request( sharing.list_folders_continue, 'sharing', arg, None, ) return r def sharing_list_mountable_folders(self, limit=1000, actions=None): """ Return the list of all shared folders the current user can mount or unmount. Route attributes: scope: sharing.read :param int limit: The maximum number of results to return per request. :param Nullable[List[:class:`dropbox.sharing.FolderAction`]] actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's ``SharedFolderMetadata.permissions`` field describing the actions the authenticated user can perform on the folder. :rtype: :class:`dropbox.sharing.ListFoldersResult` """ arg = sharing.ListFoldersArgs(limit, actions) r = self.request( sharing.list_mountable_folders, 'sharing', arg, None, ) return r def sharing_list_mountable_folders_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`sharing_list_mountable_folders`, use this to paginate through all mountable shared folders. The cursor must come from a previous call to :meth:`sharing_list_mountable_folders` or :meth:`sharing_list_mountable_folders_continue`. Route attributes: scope: sharing.read :param str cursor: The cursor returned by the previous API call specified in the endpoint description. :rtype: :class:`dropbox.sharing.ListFoldersResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.ListFoldersContinueError` """ arg = sharing.ListFoldersContinueArg(cursor) r = self.request( sharing.list_mountable_folders_continue, 'sharing', arg, None, ) return r def sharing_list_received_files(self, limit=100, actions=None): """ Returns a list of all files shared with current user. Does not include files the user has received via shared folders, and does not include unclaimed invitations. Route attributes: scope: sharing.read :param int limit: Number of files to return max per query. Defaults to 100 if no limit is specified. :param Nullable[List[:class:`dropbox.sharing.FileAction`]] actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's ``SharedFileMetadata.permissions`` field describing the actions the authenticated user can perform on the file. :rtype: :class:`dropbox.sharing.ListFilesResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.SharingUserError` """ arg = sharing.ListFilesArg(limit, actions) r = self.request( sharing.list_received_files, 'sharing', arg, None, ) return r def sharing_list_received_files_continue(self, cursor): """ Get more results with a cursor from :meth:`sharing_list_received_files`. Route attributes: scope: sharing.read :param str cursor: Cursor in ``ListFilesResult.cursor``. :rtype: :class:`dropbox.sharing.ListFilesResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.ListFilesContinueError` """ arg = sharing.ListFilesContinueArg(cursor) r = self.request( sharing.list_received_files_continue, 'sharing', arg, None, ) return r def sharing_list_shared_links(self, path=None, cursor=None, direct_only=None): """ List shared links of this user. If no path is given, returns a list of all shared links for the current user. For members of business teams using team space and member folders, returns all shared links in the team member's home folder unless the team space ID is specified in the request header. For more information, refer to the `Namespace Guide `_. If a non-empty path is given, returns a list of all shared links that allow access to the given path - direct links to the given path and links to parent folders of the given path. Links to parent folders can be suppressed by setting direct_only to true. Route attributes: scope: sharing.read :param Nullable[str] path: See :meth:`sharing_list_shared_links` description. :param Nullable[str] cursor: The cursor returned by your last call to :meth:`sharing_list_shared_links`. :param Nullable[bool] direct_only: See :meth:`sharing_list_shared_links` description. :rtype: :class:`dropbox.sharing.ListSharedLinksResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.ListSharedLinksError` """ arg = sharing.ListSharedLinksArg(path, cursor, direct_only) r = self.request( sharing.list_shared_links, 'sharing', arg, None, ) return r def sharing_modify_shared_link_settings(self, url, settings, remove_expiration=False): """ Modify the shared link's settings. If the requested visibility conflict with the shared links policy of the team or the shared folder (in case the linked file is part of a shared folder) then the ``LinkPermissions.resolved_visibility`` of the returned :class:`dropbox.sharing.SharedLinkMetadata` will reflect the actual visibility of the shared link and the ``LinkPermissions.requested_visibility`` will reflect the requested visibility. Route attributes: scope: sharing.write :param str url: URL of the shared link to change its settings. :param settings: Set of settings for the shared link. :type settings: :class:`dropbox.sharing.SharedLinkSettings` :param bool remove_expiration: If set to true, removes the expiration of the shared link. :rtype: :class:`dropbox.sharing.SharedLinkMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.ModifySharedLinkSettingsError` """ arg = sharing.ModifySharedLinkSettingsArgs(url, settings, remove_expiration) r = self.request( sharing.modify_shared_link_settings, 'sharing', arg, None, ) return r def sharing_mount_folder(self, shared_folder_id): """ The current user mounts the designated folder. Mount a shared folder for a user after they have been added as a member. Once mounted, the shared folder will appear in their Dropbox. Route attributes: scope: sharing.write :param str shared_folder_id: The ID of the shared folder to mount. :rtype: :class:`dropbox.sharing.SharedFolderMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.MountFolderError` """ arg = sharing.MountFolderArg(shared_folder_id) r = self.request( sharing.mount_folder, 'sharing', arg, None, ) return r def sharing_relinquish_file_membership(self, file): """ The current user relinquishes their membership in the designated file. Note that the current user may still have inherited access to this file through the parent folder. Route attributes: scope: sharing.write :param str file: The path or id for the file. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.RelinquishFileMembershipError` """ arg = sharing.RelinquishFileMembershipArg(file) r = self.request( sharing.relinquish_file_membership, 'sharing', arg, None, ) return None def sharing_relinquish_folder_membership(self, shared_folder_id, leave_a_copy=False): """ The current user relinquishes their membership in the designated shared folder and will no longer have access to the folder. A folder owner cannot relinquish membership in their own folder. This will run synchronously if leave_a_copy is false, and asynchronously if leave_a_copy is true. Route attributes: scope: sharing.write :param str shared_folder_id: The ID for the shared folder. :param bool leave_a_copy: Keep a copy of the folder's contents upon relinquishing membership. This must be set to false when the folder is within a team folder or another shared folder. :rtype: :class:`dropbox.sharing.LaunchEmptyResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.RelinquishFolderMembershipError` """ arg = sharing.RelinquishFolderMembershipArg(shared_folder_id, leave_a_copy) r = self.request( sharing.relinquish_folder_membership, 'sharing', arg, None, ) return r def sharing_remove_file_member(self, file, member): """ Identical to remove_file_member_2 but with less information returned. Route attributes: scope: sharing.write :param str file: File from which to remove members. :param member: Member to remove from this file. Note that even if an email is specified, it may result in the removal of a user (not an invitee) if the user's main account corresponds to that email address. :type member: :class:`dropbox.sharing.MemberSelector` :rtype: :class:`dropbox.sharing.FileMemberActionIndividualResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.RemoveFileMemberError` """ warnings.warn( 'remove_file_member is deprecated. Use remove_file_member_2.', DeprecationWarning, ) arg = sharing.RemoveFileMemberArg(file, member) r = self.request( sharing.remove_file_member, 'sharing', arg, None, ) return r def sharing_remove_file_member_2(self, file, member): """ Removes a specified member from the file. Route attributes: scope: sharing.write :param str file: File from which to remove members. :param member: Member to remove from this file. Note that even if an email is specified, it may result in the removal of a user (not an invitee) if the user's main account corresponds to that email address. :type member: :class:`dropbox.sharing.MemberSelector` :rtype: :class:`dropbox.sharing.FileMemberRemoveActionResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.RemoveFileMemberError` """ arg = sharing.RemoveFileMemberArg(file, member) r = self.request( sharing.remove_file_member_2, 'sharing', arg, None, ) return r def sharing_remove_folder_member(self, shared_folder_id, member, leave_a_copy): """ Allows an owner or editor (if the ACL update policy allows) of a shared folder to remove another member. Route attributes: scope: sharing.write :param str shared_folder_id: The ID for the shared folder. :param member: The member to remove from the folder. :type member: :class:`dropbox.sharing.MemberSelector` :param bool leave_a_copy: If true, the removed user will keep their copy of the folder after it's unshared, assuming it was mounted. Otherwise, it will be removed from their Dropbox. This must be set to false when removing a group, or when the folder is within a team folder or another shared folder. :rtype: :class:`dropbox.sharing.LaunchResultBase` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.RemoveFolderMemberError` """ arg = sharing.RemoveFolderMemberArg(shared_folder_id, member, leave_a_copy) r = self.request( sharing.remove_folder_member, 'sharing', arg, None, ) return r def sharing_revoke_shared_link(self, url): """ Revoke a shared link. Note that even after revoking a shared link to a file, the file may be accessible if there are shared links leading to any of the file parent folders. To list all shared links that enable access to a specific file, you can use the :meth:`sharing_list_shared_links` with the file as the ``ListSharedLinksArg.path`` argument. Route attributes: scope: sharing.write :param str url: URL of the shared link. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.RevokeSharedLinkError` """ arg = sharing.RevokeSharedLinkArg(url) r = self.request( sharing.revoke_shared_link, 'sharing', arg, None, ) return None def sharing_set_access_inheritance(self, shared_folder_id, access_inheritance=sharing.AccessInheritance.inherit): """ Change the inheritance policy of an existing Shared Folder. Only permitted for shared folders in a shared team root. If a ``ShareFolderLaunch.async_job_id`` is returned, you'll need to call :meth:`sharing_check_share_job_status` until the action completes to get the metadata for the folder. Route attributes: scope: sharing.write :param access_inheritance: The access inheritance settings for the folder. :type access_inheritance: :class:`dropbox.sharing.AccessInheritance` :param str shared_folder_id: The ID for the shared folder. :rtype: :class:`dropbox.sharing.ShareFolderLaunch` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.SetAccessInheritanceError` """ arg = sharing.SetAccessInheritanceArg(shared_folder_id, access_inheritance) r = self.request( sharing.set_access_inheritance, 'sharing', arg, None, ) return r def sharing_share_folder(self, path, acl_update_policy=None, force_async=False, member_policy=None, shared_link_policy=None, viewer_info_policy=None, access_inheritance=sharing.AccessInheritance.inherit, actions=None, link_settings=None): """ Share a folder with collaborators. Most sharing will be completed synchronously. Large folders will be completed asynchronously. To make testing the async case repeatable, set `ShareFolderArg.force_async`. If a ``ShareFolderLaunch.async_job_id`` is returned, you'll need to call :meth:`sharing_check_share_job_status` until the action completes to get the metadata for the folder. Route attributes: scope: sharing.write :param Nullable[List[:class:`dropbox.sharing.FolderAction`]] actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's ``SharedFolderMetadata.permissions`` field describing the actions the authenticated user can perform on the folder. :param Nullable[:class:`dropbox.sharing.LinkSettings`] link_settings: Settings on the link for this folder. :rtype: :class:`dropbox.sharing.ShareFolderLaunch` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.ShareFolderError` """ arg = sharing.ShareFolderArg(path, acl_update_policy, force_async, member_policy, shared_link_policy, viewer_info_policy, access_inheritance, actions, link_settings) r = self.request( sharing.share_folder, 'sharing', arg, None, ) return r def sharing_transfer_folder(self, shared_folder_id, to_dropbox_id): """ Transfer ownership of a shared folder to a member of the shared folder. User must have ``AccessLevel.owner`` access to the shared folder to perform a transfer. Route attributes: scope: sharing.write :param str shared_folder_id: The ID for the shared folder. :param str to_dropbox_id: A account or team member ID to transfer ownership to. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.TransferFolderError` """ arg = sharing.TransferFolderArg(shared_folder_id, to_dropbox_id) r = self.request( sharing.transfer_folder, 'sharing', arg, None, ) return None def sharing_unmount_folder(self, shared_folder_id): """ The current user unmounts the designated folder. They can re-mount the folder at a later time using :meth:`sharing_mount_folder`. Route attributes: scope: sharing.write :param str shared_folder_id: The ID for the shared folder. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.UnmountFolderError` """ arg = sharing.UnmountFolderArg(shared_folder_id) r = self.request( sharing.unmount_folder, 'sharing', arg, None, ) return None def sharing_unshare_file(self, file): """ Remove all members from this file. Does not remove inherited members. Route attributes: scope: sharing.write :param str file: The file to unshare. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.UnshareFileError` """ arg = sharing.UnshareFileArg(file) r = self.request( sharing.unshare_file, 'sharing', arg, None, ) return None def sharing_unshare_folder(self, shared_folder_id, leave_a_copy=False): """ Allows a shared folder owner to unshare the folder. You'll need to call :meth:`sharing_check_job_status` to determine if the action has completed successfully. Route attributes: scope: sharing.write :param str shared_folder_id: The ID for the shared folder. :param bool leave_a_copy: If true, members of this shared folder will get a copy of this folder after it's unshared. Otherwise, it will be removed from their Dropbox. The current user, who is an owner, will always retain their copy. :rtype: :class:`dropbox.sharing.LaunchEmptyResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.UnshareFolderError` """ arg = sharing.UnshareFolderArg(shared_folder_id, leave_a_copy) r = self.request( sharing.unshare_folder, 'sharing', arg, None, ) return r def sharing_update_file_member(self, file, member, access_level): """ Changes a member's access on a shared file. Route attributes: scope: sharing.write :param str file: File for which we are changing a member's access. :param member: The member whose access we are changing. :type member: :class:`dropbox.sharing.MemberSelector` :param access_level: The new access level for the member. :type access_level: :class:`dropbox.sharing.AccessLevel` :rtype: :class:`dropbox.sharing.MemberAccessLevelResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.FileMemberActionError` """ arg = sharing.UpdateFileMemberArgs(file, member, access_level) r = self.request( sharing.update_file_member, 'sharing', arg, None, ) return r def sharing_update_folder_member(self, shared_folder_id, member, access_level): """ Allows an owner or editor of a shared folder to update another member's permissions. Route attributes: scope: sharing.write :param str shared_folder_id: The ID for the shared folder. :param member: The member of the shared folder to update. Only the ``MemberSelector.dropbox_id`` may be set at this time. :type member: :class:`dropbox.sharing.MemberSelector` :param access_level: The new access level for ``member``. ``AccessLevel.owner`` is disallowed. :type access_level: :class:`dropbox.sharing.AccessLevel` :rtype: :class:`dropbox.sharing.MemberAccessLevelResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.UpdateFolderMemberError` """ arg = sharing.UpdateFolderMemberArg(shared_folder_id, member, access_level) r = self.request( sharing.update_folder_member, 'sharing', arg, None, ) return r def sharing_update_folder_policy(self, shared_folder_id, member_policy=None, acl_update_policy=None, viewer_info_policy=None, shared_link_policy=None, link_settings=None, actions=None): """ Update the sharing policies for a shared folder. User must have ``AccessLevel.owner`` access to the shared folder to update its policies. Route attributes: scope: sharing.write :param str shared_folder_id: The ID for the shared folder. :param Nullable[:class:`dropbox.sharing.MemberPolicy`] member_policy: Who can be a member of this shared folder. Only applicable if the current user is on a team. :param Nullable[:class:`dropbox.sharing.AclUpdatePolicy`] acl_update_policy: Who can add and remove members of this shared folder. :param Nullable[:class:`dropbox.sharing.ViewerInfoPolicy`] viewer_info_policy: Who can enable/disable viewer info for this shared folder. :param Nullable[:class:`dropbox.sharing.SharedLinkPolicy`] shared_link_policy: The policy to apply to shared links created for content inside this shared folder. The current user must be on a team to set this policy to ``SharedLinkPolicy.members``. :param Nullable[:class:`dropbox.sharing.LinkSettings`] link_settings: Settings on the link for this folder. :param Nullable[List[:class:`dropbox.sharing.FolderAction`]] actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's ``SharedFolderMetadata.permissions`` field describing the actions the authenticated user can perform on the folder. :rtype: :class:`dropbox.sharing.SharedFolderMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.sharing.UpdateFolderPolicyError` """ arg = sharing.UpdateFolderPolicyArg(shared_folder_id, member_policy, acl_update_policy, viewer_info_policy, shared_link_policy, link_settings, actions) r = self.request( sharing.update_folder_policy, 'sharing', arg, None, ) return r # ------------------------------------------ # Routes in team namespace # ------------------------------------------ # Routes in team_log namespace # ------------------------------------------ # Routes in users namespace def users_features_get_values(self, features): """ Get a list of feature values that may be configured for the current account. Route attributes: scope: account_info.read :param List[:class:`dropbox.users.UserFeature`] features: A list of features in :class:`dropbox.users.UserFeature`. If the list is empty, this route will return :class:`dropbox.users.UserFeaturesGetValuesBatchError`. :rtype: :class:`dropbox.users.UserFeaturesGetValuesBatchResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.users.UserFeaturesGetValuesBatchError` """ arg = users.UserFeaturesGetValuesBatchArg(features) r = self.request( users.features_get_values, 'users', arg, None, ) return r def users_get_account(self, account_id): """ Get information about a user's account. Route attributes: scope: sharing.read :param str account_id: A user's account identifier. :rtype: :class:`dropbox.users.BasicAccount` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.users.GetAccountError` """ arg = users.GetAccountArg(account_id) r = self.request( users.get_account, 'users', arg, None, ) return r def users_get_account_batch(self, account_ids): """ Get information about multiple user accounts. At most 300 accounts may be queried per request. Route attributes: scope: sharing.read :param List[str] account_ids: List of user account identifiers. Should not contain any duplicate account IDs. :rtype: List[:class:`dropbox.users.BasicAccount`] :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.users.GetAccountBatchError` """ arg = users.GetAccountBatchArg(account_ids) r = self.request( users.get_account_batch, 'users', arg, None, ) return r def users_get_current_account(self): """ Get information about the current user's account. Route attributes: scope: account_info.read :rtype: :class:`dropbox.users.FullAccount` """ arg = None r = self.request( users.get_current_account, 'users', arg, None, ) return r def users_get_space_usage(self): """ Get the space usage information for the current user's account. Route attributes: scope: account_info.read :rtype: :class:`dropbox.users.SpaceUsage` """ arg = None r = self.request( users.get_space_usage, 'users', arg, None, ) return r dropbox-sdk-python-12.0.2/dropbox/base_team.py000066400000000000000000003273611462737130500213420ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # flake8: noqa # pylint: skip-file from abc import ABCMeta, abstractmethod import warnings from dropbox import account from dropbox import async_ from dropbox import auth from dropbox import check from dropbox import common from dropbox import contacts from dropbox import file_properties from dropbox import file_requests from dropbox import files from dropbox import openid from dropbox import paper from dropbox import secondary_emails from dropbox import seen_state from dropbox import sharing from dropbox import team from dropbox import team_common from dropbox import team_log from dropbox import team_policies from dropbox import users from dropbox import users_common class DropboxTeamBase(object): __metaclass__ = ABCMeta @abstractmethod def request(self, route, namespace, arg, arg_binary=None): pass # ------------------------------------------ # Routes in account namespace # ------------------------------------------ # Routes in auth namespace # ------------------------------------------ # Routes in check namespace # ------------------------------------------ # Routes in contacts namespace # ------------------------------------------ # Routes in file_properties namespace def file_properties_templates_add_for_team(self, name, description, fields): """ Add a template associated with a team. See :meth:`file_properties_properties_add` to add properties to a file or folder. Note: this endpoint will create team-owned templates. Route attributes: scope: files.team_metadata.write :rtype: :class:`dropbox.file_properties.AddTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.ModifyTemplateError` """ arg = file_properties.AddTemplateArg(name, description, fields) r = self.request( file_properties.templates_add_for_team, 'file_properties', arg, None, ) return r def file_properties_templates_get_for_team(self, template_id): """ Get the schema for a specified template. Route attributes: scope: files.team_metadata.write :param str template_id: An identifier for template added by route See :meth:`file_properties_templates_add_for_user` or :meth:`file_properties_templates_add_for_team`. :rtype: :class:`dropbox.file_properties.GetTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.TemplateError` """ arg = file_properties.GetTemplateArg(template_id) r = self.request( file_properties.templates_get_for_team, 'file_properties', arg, None, ) return r def file_properties_templates_list_for_team(self): """ Get the template identifiers for a team. To get the schema of each template use :meth:`file_properties_templates_get_for_team`. Route attributes: scope: files.team_metadata.write :rtype: :class:`dropbox.file_properties.ListTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.TemplateError` """ arg = None r = self.request( file_properties.templates_list_for_team, 'file_properties', arg, None, ) return r def file_properties_templates_remove_for_team(self, template_id): """ Permanently removes the specified template created from :meth:`file_properties_templates_add_for_user`. All properties associated with the template will also be removed. This action cannot be undone. Route attributes: scope: files.team_metadata.write :param str template_id: An identifier for a template created by :meth:`file_properties_templates_add_for_user` or :meth:`file_properties_templates_add_for_team`. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.TemplateError` """ arg = file_properties.RemoveTemplateArg(template_id) r = self.request( file_properties.templates_remove_for_team, 'file_properties', arg, None, ) return None def file_properties_templates_update_for_team(self, template_id, name=None, description=None, add_fields=None): """ Update a template associated with a team. This route can update the template name, the template description and add optional properties to templates. Route attributes: scope: files.team_metadata.write :param str template_id: An identifier for template added by See :meth:`file_properties_templates_add_for_user` or :meth:`file_properties_templates_add_for_team`. :param Nullable[str] name: A display name for the template. template names can be up to 256 bytes. :param Nullable[str] description: Description for the new template. Template descriptions can be up to 1024 bytes. :param Nullable[List[:class:`dropbox.file_properties.PropertyFieldTemplate`]] add_fields: Property field templates to be added to the group template. There can be up to 32 properties in a single template. :rtype: :class:`dropbox.file_properties.UpdateTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.file_properties.ModifyTemplateError` """ arg = file_properties.UpdateTemplateArg(template_id, name, description, add_fields) r = self.request( file_properties.templates_update_for_team, 'file_properties', arg, None, ) return r # ------------------------------------------ # Routes in file_requests namespace # ------------------------------------------ # Routes in files namespace # ------------------------------------------ # Routes in openid namespace # ------------------------------------------ # Routes in paper namespace # ------------------------------------------ # Routes in sharing namespace # ------------------------------------------ # Routes in team namespace def team_devices_list_member_devices(self, team_member_id, include_web_sessions=True, include_desktop_clients=True, include_mobile_clients=True): """ List all device sessions of a team's member. Route attributes: scope: sessions.list :param str team_member_id: The team's member id. :param bool include_web_sessions: Whether to list web sessions of the team's member. :param bool include_desktop_clients: Whether to list linked desktop devices of the team's member. :param bool include_mobile_clients: Whether to list linked mobile devices of the team's member. :rtype: :class:`dropbox.team.ListMemberDevicesResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.ListMemberDevicesError` """ arg = team.ListMemberDevicesArg(team_member_id, include_web_sessions, include_desktop_clients, include_mobile_clients) r = self.request( team.devices_list_member_devices, 'team', arg, None, ) return r def team_devices_list_members_devices(self, cursor=None, include_web_sessions=True, include_desktop_clients=True, include_mobile_clients=True): """ List all device sessions of a team. Permission : Team member file access. Route attributes: scope: sessions.list :param Nullable[str] cursor: At the first call to the :meth:`team_devices_list_members_devices` the cursor shouldn't be passed. Then, if the result of the call includes a cursor, the following requests should include the received cursors in order to receive the next sub list of team devices. :param bool include_web_sessions: Whether to list web sessions of the team members. :param bool include_desktop_clients: Whether to list desktop clients of the team members. :param bool include_mobile_clients: Whether to list mobile clients of the team members. :rtype: :class:`dropbox.team.ListMembersDevicesResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.ListMembersDevicesError` """ arg = team.ListMembersDevicesArg(cursor, include_web_sessions, include_desktop_clients, include_mobile_clients) r = self.request( team.devices_list_members_devices, 'team', arg, None, ) return r def team_devices_list_team_devices(self, cursor=None, include_web_sessions=True, include_desktop_clients=True, include_mobile_clients=True): """ List all device sessions of a team. Permission : Team member file access. Route attributes: scope: sessions.list :param Nullable[str] cursor: At the first call to the :meth:`team_devices_list_team_devices` the cursor shouldn't be passed. Then, if the result of the call includes a cursor, the following requests should include the received cursors in order to receive the next sub list of team devices. :param bool include_web_sessions: Whether to list web sessions of the team members. :param bool include_desktop_clients: Whether to list desktop clients of the team members. :param bool include_mobile_clients: Whether to list mobile clients of the team members. :rtype: :class:`dropbox.team.ListTeamDevicesResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.ListTeamDevicesError` """ warnings.warn( 'devices/list_team_devices is deprecated. Use devices/list_members_devices.', DeprecationWarning, ) arg = team.ListTeamDevicesArg(cursor, include_web_sessions, include_desktop_clients, include_mobile_clients) r = self.request( team.devices_list_team_devices, 'team', arg, None, ) return r def team_devices_revoke_device_session(self, arg): """ Revoke a device session of a team's member. Route attributes: scope: sessions.modify :type arg: :class:`dropbox.team.RevokeDeviceSessionArg` :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.RevokeDeviceSessionError` """ r = self.request( team.devices_revoke_device_session, 'team', arg, None, ) return None def team_devices_revoke_device_session_batch(self, revoke_devices): """ Revoke a list of device sessions of team members. Route attributes: scope: sessions.modify :type revoke_devices: List[:class:`dropbox.team.RevokeDeviceSessionArg`] :rtype: :class:`dropbox.team.RevokeDeviceSessionBatchResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.RevokeDeviceSessionBatchError` """ arg = team.RevokeDeviceSessionBatchArg(revoke_devices) r = self.request( team.devices_revoke_device_session_batch, 'team', arg, None, ) return r def team_features_get_values(self, features): """ Get the values for one or more featues. This route allows you to check your account's capability for what feature you can access or what value you have for certain features. Permission : Team information. Route attributes: scope: team_info.read :param List[:class:`dropbox.team.Feature`] features: A list of features in :class:`dropbox.team.Feature`. If the list is empty, this route will return :class:`dropbox.team.FeaturesGetValuesBatchError`. :rtype: :class:`dropbox.team.FeaturesGetValuesBatchResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.FeaturesGetValuesBatchError` """ arg = team.FeaturesGetValuesBatchArg(features) r = self.request( team.features_get_values, 'team', arg, None, ) return r def team_get_info(self): """ Retrieves information about a team. Route attributes: scope: team_info.read :rtype: :class:`dropbox.team.TeamGetInfoResult` """ arg = None r = self.request( team.get_info, 'team', arg, None, ) return r def team_groups_create(self, group_name, add_creator_as_owner=False, group_external_id=None, group_management_type=None): """ Creates a new, empty group, with a requested name. Permission : Team member management. Route attributes: scope: groups.write :param str group_name: Group name. :param bool add_creator_as_owner: Automatically add the creator of the group. :param Nullable[str] group_external_id: The creator of a team can associate an arbitrary external ID to the group. :param Nullable[:class:`dropbox.team.GroupManagementType`] group_management_type: Whether the team can be managed by selected users, or only by team admins. :rtype: :class:`dropbox.team.GroupFullInfo` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.GroupCreateError` """ arg = team.GroupCreateArg(group_name, add_creator_as_owner, group_external_id, group_management_type) r = self.request( team.groups_create, 'team', arg, None, ) return r def team_groups_delete(self, arg): """ Deletes a group. The group is deleted immediately. However the revoking of group-owned resources may take additional time. Use the :meth:`team_groups_job_status_get` to determine whether this process has completed. Permission : Team member management. Route attributes: scope: groups.write :param arg: Argument for selecting a single group, either by group_id or by external group ID. :type arg: :class:`dropbox.team.GroupSelector` :rtype: :class:`dropbox.team.LaunchEmptyResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.GroupDeleteError` """ r = self.request( team.groups_delete, 'team', arg, None, ) return r def team_groups_get_info(self, arg): """ Retrieves information about one or more groups. Note that the optional field ``GroupFullInfo.members`` is not returned for system-managed groups. Permission : Team Information. Route attributes: scope: groups.read :param arg: Argument for selecting a list of groups, either by group_ids, or external group IDs. :type arg: :class:`dropbox.team.GroupsSelector` :rtype: List[:class:`dropbox.team.GroupsGetInfoItem`] :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.GroupsGetInfoError` """ r = self.request( team.groups_get_info, 'team', arg, None, ) return r def team_groups_job_status_get(self, async_job_id): """ Once an async_job_id is returned from :meth:`team_groups_delete`, :meth:`team_groups_members_add` , or :meth:`team_groups_members_remove` use this method to poll the status of granting/revoking group members' access to group-owned resources. Permission : Team member management. Route attributes: scope: groups.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.team.PollEmptyResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.GroupsPollError` """ arg = async_.PollArg(async_job_id) r = self.request( team.groups_job_status_get, 'team', arg, None, ) return r def team_groups_list(self, limit=1000): """ Lists groups on a team. Permission : Team Information. Route attributes: scope: groups.read :param int limit: Number of results to return per call. :rtype: :class:`dropbox.team.GroupsListResult` """ arg = team.GroupsListArg(limit) r = self.request( team.groups_list, 'team', arg, None, ) return r def team_groups_list_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`team_groups_list`, use this to paginate through all groups. Permission : Team Information. Route attributes: scope: groups.read :param str cursor: Indicates from what point to get the next set of groups. :rtype: :class:`dropbox.team.GroupsListResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.GroupsListContinueError` """ arg = team.GroupsListContinueArg(cursor) r = self.request( team.groups_list_continue, 'team', arg, None, ) return r def team_groups_members_add(self, group, members, return_members=True): """ Adds members to a group. The members are added immediately. However the granting of group-owned resources may take additional time. Use the :meth:`team_groups_job_status_get` to determine whether this process has completed. Permission : Team member management. Route attributes: scope: groups.write :param group: Group to which users will be added. :type group: :class:`dropbox.team.GroupSelector` :param List[:class:`dropbox.team.MemberAccess`] members: List of users to be added to the group. :rtype: :class:`dropbox.team.GroupMembersChangeResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.GroupMembersAddError` """ arg = team.GroupMembersAddArg(group, members, return_members) r = self.request( team.groups_members_add, 'team', arg, None, ) return r def team_groups_members_list(self, group, limit=1000): """ Lists members of a group. Permission : Team Information. Route attributes: scope: groups.read :param group: The group whose members are to be listed. :type group: :class:`dropbox.team.GroupSelector` :param int limit: Number of results to return per call. :rtype: :class:`dropbox.team.GroupsMembersListResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.GroupSelectorError` """ arg = team.GroupsMembersListArg(group, limit) r = self.request( team.groups_members_list, 'team', arg, None, ) return r def team_groups_members_list_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`team_groups_members_list`, use this to paginate through all members of the group. Permission : Team information. Route attributes: scope: groups.read :param str cursor: Indicates from what point to get the next set of groups. :rtype: :class:`dropbox.team.GroupsMembersListResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.GroupsMembersListContinueError` """ arg = team.GroupsMembersListContinueArg(cursor) r = self.request( team.groups_members_list_continue, 'team', arg, None, ) return r def team_groups_members_remove(self, group, users, return_members=True): """ Removes members from a group. The members are removed immediately. However the revoking of group-owned resources may take additional time. Use the :meth:`team_groups_job_status_get` to determine whether this process has completed. This method permits removing the only owner of a group, even in cases where this is not possible via the web client. Permission : Team member management. Route attributes: scope: groups.write :param group: Group from which users will be removed. :type group: :class:`dropbox.team.GroupSelector` :param List[:class:`dropbox.team.UserSelectorArg`] users: List of users to be removed from the group. :rtype: :class:`dropbox.team.GroupMembersChangeResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.GroupMembersRemoveError` """ arg = team.GroupMembersRemoveArg(group, users, return_members) r = self.request( team.groups_members_remove, 'team', arg, None, ) return r def team_groups_members_set_access_type(self, group, user, access_type, return_members=True): """ Sets a member's access type in a group. Permission : Team member management. Route attributes: scope: groups.write :param access_type: New group access type the user will have. :type access_type: :class:`dropbox.team.GroupAccessType` :param bool return_members: Whether to return the list of members in the group. Note that the default value will cause all the group members to be returned in the response. This may take a long time for large groups. :rtype: List[:class:`dropbox.team.GroupsGetInfoItem`] :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.GroupMemberSetAccessTypeError` """ arg = team.GroupMembersSetAccessTypeArg(group, user, access_type, return_members) r = self.request( team.groups_members_set_access_type, 'team', arg, None, ) return r def team_groups_update(self, group, return_members=True, new_group_name=None, new_group_external_id=None, new_group_management_type=None): """ Updates a group's name and/or external ID. Permission : Team member management. Route attributes: scope: groups.write :param group: Specify a group. :type group: :class:`dropbox.team.GroupSelector` :param Nullable[str] new_group_name: Optional argument. Set group name to this if provided. :param Nullable[str] new_group_external_id: Optional argument. New group external ID. If the argument is None, the group's external_id won't be updated. If the argument is empty string, the group's external id will be cleared. :param Nullable[:class:`dropbox.team.GroupManagementType`] new_group_management_type: Set new group management type, if provided. :rtype: :class:`dropbox.team.GroupFullInfo` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.GroupUpdateError` """ arg = team.GroupUpdateArgs(group, return_members, new_group_name, new_group_external_id, new_group_management_type) r = self.request( team.groups_update, 'team', arg, None, ) return r def team_legal_holds_create_policy(self, name, members, description=None, start_date=None, end_date=None): """ Creates new legal hold policy. Note: Legal Holds is a paid add-on. Not all teams have the feature. Permission : Team member file access. Route attributes: scope: team_data.governance.write :param str name: Policy name. :param Nullable[str] description: A description of the legal hold policy. :param List[str] members: List of team member IDs added to the hold. :param Nullable[datetime] start_date: start date of the legal hold policy. :param Nullable[datetime] end_date: end date of the legal hold policy. :rtype: :class:`dropbox.team.LegalHoldPolicy` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.LegalHoldsPolicyCreateError` """ arg = team.LegalHoldsPolicyCreateArg(name, members, description, start_date, end_date) r = self.request( team.legal_holds_create_policy, 'team', arg, None, ) return r def team_legal_holds_get_policy(self, id): """ Gets a legal hold by Id. Note: Legal Holds is a paid add-on. Not all teams have the feature. Permission : Team member file access. Route attributes: scope: team_data.governance.write :param str id: The legal hold Id. :rtype: :class:`dropbox.team.LegalHoldPolicy` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.LegalHoldsGetPolicyError` """ arg = team.LegalHoldsGetPolicyArg(id) r = self.request( team.legal_holds_get_policy, 'team', arg, None, ) return r def team_legal_holds_list_held_revisions(self, id): """ List the file metadata that's under the hold. Note: Legal Holds is a paid add-on. Not all teams have the feature. Permission : Team member file access. Route attributes: scope: team_data.governance.write :param str id: The legal hold Id. :rtype: :class:`dropbox.team.LegalHoldsListHeldRevisionResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.LegalHoldsListHeldRevisionsError` """ arg = team.LegalHoldsListHeldRevisionsArg(id) r = self.request( team.legal_holds_list_held_revisions, 'team', arg, None, ) return r def team_legal_holds_list_held_revisions_continue(self, id, cursor=None): """ Continue listing the file metadata that's under the hold. Note: Legal Holds is a paid add-on. Not all teams have the feature. Permission : Team member file access. Route attributes: scope: team_data.governance.write :param str id: The legal hold Id. :param Nullable[str] cursor: The cursor idicates where to continue reading file metadata entries for the next API call. When there are no more entries, the cursor will return none. :rtype: :class:`dropbox.team.LegalHoldsListHeldRevisionResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.LegalHoldsListHeldRevisionsError` """ arg = team.LegalHoldsListHeldRevisionsContinueArg(id, cursor) r = self.request( team.legal_holds_list_held_revisions_continue, 'team', arg, None, ) return r def team_legal_holds_list_policies(self, include_released=False): """ Lists legal holds on a team. Note: Legal Holds is a paid add-on. Not all teams have the feature. Permission : Team member file access. Route attributes: scope: team_data.governance.write :param bool include_released: Whether to return holds that were released. :rtype: :class:`dropbox.team.LegalHoldsListPoliciesResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.LegalHoldsListPoliciesError` """ arg = team.LegalHoldsListPoliciesArg(include_released) r = self.request( team.legal_holds_list_policies, 'team', arg, None, ) return r def team_legal_holds_release_policy(self, id): """ Releases a legal hold by Id. Note: Legal Holds is a paid add-on. Not all teams have the feature. Permission : Team member file access. Route attributes: scope: team_data.governance.write :param str id: The legal hold Id. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.LegalHoldsPolicyReleaseError` """ arg = team.LegalHoldsPolicyReleaseArg(id) r = self.request( team.legal_holds_release_policy, 'team', arg, None, ) return None def team_legal_holds_update_policy(self, id, name=None, description=None, members=None): """ Updates a legal hold. Note: Legal Holds is a paid add-on. Not all teams have the feature. Permission : Team member file access. Route attributes: scope: team_data.governance.write :param str id: The legal hold Id. :param Nullable[str] name: Policy new name. :param Nullable[str] description: Policy new description. :param Nullable[List[str]] members: List of team member IDs to apply the policy on. :rtype: :class:`dropbox.team.LegalHoldPolicy` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.LegalHoldsPolicyUpdateError` """ arg = team.LegalHoldsPolicyUpdateArg(id, name, description, members) r = self.request( team.legal_holds_update_policy, 'team', arg, None, ) return r def team_linked_apps_list_member_linked_apps(self, team_member_id): """ List all linked applications of the team member. Note, this endpoint does not list any team-linked applications. Route attributes: scope: sessions.list :param str team_member_id: The team member id. :rtype: :class:`dropbox.team.ListMemberAppsResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.ListMemberAppsError` """ arg = team.ListMemberAppsArg(team_member_id) r = self.request( team.linked_apps_list_member_linked_apps, 'team', arg, None, ) return r def team_linked_apps_list_members_linked_apps(self, cursor=None): """ List all applications linked to the team members' accounts. Note, this endpoint does not list any team-linked applications. Route attributes: scope: sessions.list :param Nullable[str] cursor: At the first call to the :meth:`team_linked_apps_list_members_linked_apps` the cursor shouldn't be passed. Then, if the result of the call includes a cursor, the following requests should include the received cursors in order to receive the next sub list of the team applications. :rtype: :class:`dropbox.team.ListMembersAppsResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.ListMembersAppsError` """ arg = team.ListMembersAppsArg(cursor) r = self.request( team.linked_apps_list_members_linked_apps, 'team', arg, None, ) return r def team_linked_apps_list_team_linked_apps(self, cursor=None): """ List all applications linked to the team members' accounts. Note, this endpoint doesn't list any team-linked applications. Route attributes: scope: sessions.list :param Nullable[str] cursor: At the first call to the :meth:`team_linked_apps_list_team_linked_apps` the cursor shouldn't be passed. Then, if the result of the call includes a cursor, the following requests should include the received cursors in order to receive the next sub list of the team applications. :rtype: :class:`dropbox.team.ListTeamAppsResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.ListTeamAppsError` """ warnings.warn( 'linked_apps/list_team_linked_apps is deprecated. Use linked_apps/list_members_linked_apps.', DeprecationWarning, ) arg = team.ListTeamAppsArg(cursor) r = self.request( team.linked_apps_list_team_linked_apps, 'team', arg, None, ) return r def team_linked_apps_revoke_linked_app(self, app_id, team_member_id, keep_app_folder=True): """ Revoke a linked application of the team member. Route attributes: scope: sessions.modify :param str app_id: The application's unique id. :param str team_member_id: The unique id of the member owning the device. :param bool keep_app_folder: This flag is not longer supported, the application dedicated folder (in case the application uses one) will be kept. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.RevokeLinkedAppError` """ arg = team.RevokeLinkedApiAppArg(app_id, team_member_id, keep_app_folder) r = self.request( team.linked_apps_revoke_linked_app, 'team', arg, None, ) return None def team_linked_apps_revoke_linked_app_batch(self, revoke_linked_app): """ Revoke a list of linked applications of the team members. Route attributes: scope: sessions.modify :type revoke_linked_app: List[:class:`dropbox.team.RevokeLinkedApiAppArg`] :rtype: :class:`dropbox.team.RevokeLinkedAppBatchResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.RevokeLinkedAppBatchError` """ arg = team.RevokeLinkedApiAppBatchArg(revoke_linked_app) r = self.request( team.linked_apps_revoke_linked_app_batch, 'team', arg, None, ) return r def team_member_space_limits_excluded_users_add(self, users=None): """ Add users to member space limits excluded users list. Route attributes: scope: members.write :param Nullable[List[:class:`dropbox.team.UserSelectorArg`]] users: List of users to be added/removed. :rtype: :class:`dropbox.team.ExcludedUsersUpdateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.ExcludedUsersUpdateError` """ arg = team.ExcludedUsersUpdateArg(users) r = self.request( team.member_space_limits_excluded_users_add, 'team', arg, None, ) return r def team_member_space_limits_excluded_users_list(self, limit=1000): """ List member space limits excluded users. Route attributes: scope: members.read :param int limit: Number of results to return per call. :rtype: :class:`dropbox.team.ExcludedUsersListResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.ExcludedUsersListError` """ arg = team.ExcludedUsersListArg(limit) r = self.request( team.member_space_limits_excluded_users_list, 'team', arg, None, ) return r def team_member_space_limits_excluded_users_list_continue(self, cursor): """ Continue listing member space limits excluded users. Route attributes: scope: members.read :param str cursor: Indicates from what point to get the next set of users. :rtype: :class:`dropbox.team.ExcludedUsersListResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.ExcludedUsersListContinueError` """ arg = team.ExcludedUsersListContinueArg(cursor) r = self.request( team.member_space_limits_excluded_users_list_continue, 'team', arg, None, ) return r def team_member_space_limits_excluded_users_remove(self, users=None): """ Remove users from member space limits excluded users list. Route attributes: scope: members.write :param Nullable[List[:class:`dropbox.team.UserSelectorArg`]] users: List of users to be added/removed. :rtype: :class:`dropbox.team.ExcludedUsersUpdateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.ExcludedUsersUpdateError` """ arg = team.ExcludedUsersUpdateArg(users) r = self.request( team.member_space_limits_excluded_users_remove, 'team', arg, None, ) return r def team_member_space_limits_get_custom_quota(self, users): """ Get users custom quota. A maximum of 1000 members can be specified in a single call. Note: to apply a custom space limit, a team admin needs to set a member space limit for the team first. (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space). Route attributes: scope: members.read :param List[:class:`dropbox.team.UserSelectorArg`] users: List of users. :rtype: List[:class:`dropbox.team.CustomQuotaResult`] :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.CustomQuotaError` """ arg = team.CustomQuotaUsersArg(users) r = self.request( team.member_space_limits_get_custom_quota, 'team', arg, None, ) return r def team_member_space_limits_remove_custom_quota(self, users): """ Remove users custom quota. A maximum of 1000 members can be specified in a single call. Note: to apply a custom space limit, a team admin needs to set a member space limit for the team first. (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space). Route attributes: scope: members.write :param List[:class:`dropbox.team.UserSelectorArg`] users: List of users. :rtype: List[:class:`dropbox.team.RemoveCustomQuotaResult`] :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.CustomQuotaError` """ arg = team.CustomQuotaUsersArg(users) r = self.request( team.member_space_limits_remove_custom_quota, 'team', arg, None, ) return r def team_member_space_limits_set_custom_quota(self, users_and_quotas): """ Set users custom quota. Custom quota has to be at least 15GB. A maximum of 1000 members can be specified in a single call. Note: to apply a custom space limit, a team admin needs to set a member space limit for the team first. (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space). Route attributes: scope: members.read :param List[:class:`dropbox.team.UserCustomQuotaArg`] users_and_quotas: List of users and their custom quotas. :rtype: List[:class:`dropbox.team.CustomQuotaResult`] :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.SetCustomQuotaError` """ arg = team.SetCustomQuotaArg(users_and_quotas) r = self.request( team.member_space_limits_set_custom_quota, 'team', arg, None, ) return r def team_members_add_v2(self, new_members, force_async=False): """ Adds members to a team. Permission : Team member management A maximum of 20 members can be specified in a single call. If no Dropbox account exists with the email address specified, a new Dropbox account will be created with the given email address, and that account will be invited to the team. If a personal Dropbox account exists with the email address specified in the call, this call will create a placeholder Dropbox account for the user on the team and send an email inviting the user to migrate their existing personal account onto the team. Team member management apps are required to set an initial given_name and surname for a user to use in the team invitation and for 'Perform as team member' actions taken on the user before they become 'active'. Route attributes: scope: members.write :param List[:class:`dropbox.team.MemberAddV2Arg`] new_members: Details of new members to be added to the team. :rtype: :class:`dropbox.team.MembersAddLaunchV2Result` """ arg = team.MembersAddV2Arg(new_members, force_async) r = self.request( team.members_add_v2, 'team', arg, None, ) return r def team_members_add(self, new_members, force_async=False): """ Adds members to a team. Permission : Team member management A maximum of 20 members can be specified in a single call. If no Dropbox account exists with the email address specified, a new Dropbox account will be created with the given email address, and that account will be invited to the team. If a personal Dropbox account exists with the email address specified in the call, this call will create a placeholder Dropbox account for the user on the team and send an email inviting the user to migrate their existing personal account onto the team. Team member management apps are required to set an initial given_name and surname for a user to use in the team invitation and for 'Perform as team member' actions taken on the user before they become 'active'. Route attributes: scope: members.write :param List[:class:`dropbox.team.MemberAddArg`] new_members: Details of new members to be added to the team. :rtype: :class:`dropbox.team.MembersAddLaunch` """ arg = team.MembersAddArg(new_members, force_async) r = self.request( team.members_add, 'team', arg, None, ) return r def team_members_add_job_status_get_v2(self, async_job_id): """ Once an async_job_id is returned from :meth:`team_members_add_v2` , use this to poll the status of the asynchronous request. Permission : Team member management. Route attributes: scope: members.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.team.MembersAddJobStatusV2Result` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( team.members_add_job_status_get_v2, 'team', arg, None, ) return r def team_members_add_job_status_get(self, async_job_id): """ Once an async_job_id is returned from :meth:`team_members_add` , use this to poll the status of the asynchronous request. Permission : Team member management. Route attributes: scope: members.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.team.MembersAddJobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( team.members_add_job_status_get, 'team', arg, None, ) return r def team_members_delete_profile_photo_v2(self, user): """ Deletes a team member's profile photo. Permission : Team member management. Route attributes: scope: members.write :param user: Identity of the user whose profile photo will be deleted. :type user: :class:`dropbox.team.UserSelectorArg` :rtype: :class:`dropbox.team.TeamMemberInfoV2Result` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersDeleteProfilePhotoError` """ arg = team.MembersDeleteProfilePhotoArg(user) r = self.request( team.members_delete_profile_photo_v2, 'team', arg, None, ) return r def team_members_delete_profile_photo(self, user): """ Deletes a team member's profile photo. Permission : Team member management. Route attributes: scope: members.write :param user: Identity of the user whose profile photo will be deleted. :type user: :class:`dropbox.team.UserSelectorArg` :rtype: :class:`dropbox.team.TeamMemberInfo` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersDeleteProfilePhotoError` """ arg = team.MembersDeleteProfilePhotoArg(user) r = self.request( team.members_delete_profile_photo, 'team', arg, None, ) return r def team_members_get_available_team_member_roles(self): """ Get available TeamMemberRoles for the connected team. To be used with :meth:`team_members_set_admin_permissions_v2`. Permission : Team member management. Route attributes: scope: members.read :rtype: :class:`dropbox.team.MembersGetAvailableTeamMemberRolesResult` """ arg = None r = self.request( team.members_get_available_team_member_roles, 'team', arg, None, ) return r def team_members_get_info_v2(self, members): """ Returns information about multiple team members. Permission : Team information This endpoint will return ``MembersGetInfoItem.id_not_found``, for IDs (or emails) that cannot be matched to a valid team member. Route attributes: scope: members.read :param List[:class:`dropbox.team.UserSelectorArg`] members: List of team members. :rtype: :class:`dropbox.team.MembersGetInfoV2Result` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersGetInfoError` """ arg = team.MembersGetInfoV2Arg(members) r = self.request( team.members_get_info_v2, 'team', arg, None, ) return r def team_members_get_info(self, members): """ Returns information about multiple team members. Permission : Team information This endpoint will return ``MembersGetInfoItem.id_not_found``, for IDs (or emails) that cannot be matched to a valid team member. Route attributes: scope: members.read :param List[:class:`dropbox.team.UserSelectorArg`] members: List of team members. :rtype: List[:class:`dropbox.team.MembersGetInfoItem`] :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersGetInfoError` """ arg = team.MembersGetInfoArgs(members) r = self.request( team.members_get_info, 'team', arg, None, ) return r def team_members_list_v2(self, limit=1000, include_removed=False): """ Lists members of a team. Permission : Team information. Route attributes: scope: members.read :param int limit: Number of results to return per call. :param bool include_removed: Whether to return removed members. :rtype: :class:`dropbox.team.MembersListV2Result` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersListError` """ arg = team.MembersListArg(limit, include_removed) r = self.request( team.members_list_v2, 'team', arg, None, ) return r def team_members_list(self, limit=1000, include_removed=False): """ Lists members of a team. Permission : Team information. Route attributes: scope: members.read :param int limit: Number of results to return per call. :param bool include_removed: Whether to return removed members. :rtype: :class:`dropbox.team.MembersListResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersListError` """ arg = team.MembersListArg(limit, include_removed) r = self.request( team.members_list, 'team', arg, None, ) return r def team_members_list_continue_v2(self, cursor): """ Once a cursor has been retrieved from :meth:`team_members_list_v2`, use this to paginate through all team members. Permission : Team information. Route attributes: scope: members.read :param str cursor: Indicates from what point to get the next set of members. :rtype: :class:`dropbox.team.MembersListV2Result` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersListContinueError` """ arg = team.MembersListContinueArg(cursor) r = self.request( team.members_list_continue_v2, 'team', arg, None, ) return r def team_members_list_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`team_members_list`, use this to paginate through all team members. Permission : Team information. Route attributes: scope: members.read :param str cursor: Indicates from what point to get the next set of members. :rtype: :class:`dropbox.team.MembersListResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersListContinueError` """ arg = team.MembersListContinueArg(cursor) r = self.request( team.members_list_continue, 'team', arg, None, ) return r def team_members_move_former_member_files(self, user, transfer_dest_id, transfer_admin_id): """ Moves removed member's files to a different member. This endpoint initiates an asynchronous job. To obtain the final result of the job, the client should periodically poll :meth:`team_members_move_former_member_files_job_status_check`. Permission : Team member management. Route attributes: scope: members.write :param transfer_dest_id: Files from the deleted member account will be transferred to this user. :type transfer_dest_id: :class:`dropbox.team.UserSelectorArg` :param transfer_admin_id: Errors during the transfer process will be sent via email to this user. :type transfer_admin_id: :class:`dropbox.team.UserSelectorArg` :rtype: :class:`dropbox.team.LaunchEmptyResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersTransferFormerMembersFilesError` """ arg = team.MembersDataTransferArg(user, transfer_dest_id, transfer_admin_id) r = self.request( team.members_move_former_member_files, 'team', arg, None, ) return r def team_members_move_former_member_files_job_status_check(self, async_job_id): """ Once an async_job_id is returned from :meth:`team_members_move_former_member_files` , use this to poll the status of the asynchronous request. Permission : Team member management. Route attributes: scope: members.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.team.PollEmptyResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( team.members_move_former_member_files_job_status_check, 'team', arg, None, ) return r def team_members_recover(self, user): """ Recover a deleted member. Permission : Team member management Exactly one of team_member_id, email, or external_id must be provided to identify the user account. Route attributes: scope: members.delete :param user: Identity of user to recover. :type user: :class:`dropbox.team.UserSelectorArg` :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersRecoverError` """ arg = team.MembersRecoverArg(user) r = self.request( team.members_recover, 'team', arg, None, ) return None def team_members_remove(self, user, wipe_data=True, transfer_dest_id=None, transfer_admin_id=None, keep_account=False, retain_team_shares=False): """ Removes a member from a team. Permission : Team member management Exactly one of team_member_id, email, or external_id must be provided to identify the user account. Accounts can be recovered via :meth:`team_members_recover` for a 7 day period or until the account has been permanently deleted or transferred to another account (whichever comes first). Calling :meth:`team_members_add` while a user is still recoverable on your team will return with ``MemberAddResult.user_already_on_team``. Accounts can have their files transferred via the admin console for a limited time, based on the version history length associated with the team (180 days for most teams). This endpoint may initiate an asynchronous job. To obtain the final result of the job, the client should periodically poll :meth:`team_members_remove_job_status_get`. Route attributes: scope: members.delete :param Nullable[:class:`dropbox.team.UserSelectorArg`] transfer_dest_id: If provided, files from the deleted member account will be transferred to this user. :param Nullable[:class:`dropbox.team.UserSelectorArg`] transfer_admin_id: If provided, errors during the transfer process will be sent via email to this user. If the transfer_dest_id argument was provided, then this argument must be provided as well. :param bool keep_account: Downgrade the member to a Basic account. The user will retain the email address associated with their Dropbox account and data in their account that is not restricted to team members. In order to keep the account the argument ``wipe_data`` should be set to ``False``. :param bool retain_team_shares: If provided, allows removed users to keep access to Dropbox folders (not Dropbox Paper folders) already explicitly shared with them (not via a group) when they are downgraded to a Basic account. Users will not retain access to folders that do not allow external sharing. In order to keep the sharing relationships, the arguments ``wipe_data`` should be set to ``False`` and ``keep_account`` should be set to ``True``. :rtype: :class:`dropbox.team.LaunchEmptyResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersRemoveError` """ arg = team.MembersRemoveArg(user, wipe_data, transfer_dest_id, transfer_admin_id, keep_account, retain_team_shares) r = self.request( team.members_remove, 'team', arg, None, ) return r def team_members_remove_job_status_get(self, async_job_id): """ Once an async_job_id is returned from :meth:`team_members_remove` , use this to poll the status of the asynchronous request. Permission : Team member management. Route attributes: scope: members.delete :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.team.PollEmptyResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( team.members_remove_job_status_get, 'team', arg, None, ) return r def team_members_secondary_emails_add(self, new_secondary_emails): """ Add secondary emails to users. Permission : Team member management. Emails that are on verified domains will be verified automatically. For each email address not on a verified domain a verification email will be sent. Route attributes: scope: members.write :param List[:class:`dropbox.team.UserSecondaryEmailsArg`] new_secondary_emails: List of users and secondary emails to add. :rtype: :class:`dropbox.team.AddSecondaryEmailsResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.AddSecondaryEmailsError` """ arg = team.AddSecondaryEmailsArg(new_secondary_emails) r = self.request( team.members_secondary_emails_add, 'team', arg, None, ) return r def team_members_secondary_emails_delete(self, emails_to_delete): """ Delete secondary emails from users Permission : Team member management. Users will be notified of deletions of verified secondary emails at both the secondary email and their primary email. Route attributes: scope: members.write :param List[:class:`dropbox.team.UserSecondaryEmailsArg`] emails_to_delete: List of users and their secondary emails to delete. :rtype: :class:`dropbox.team.DeleteSecondaryEmailsResult` """ arg = team.DeleteSecondaryEmailsArg(emails_to_delete) r = self.request( team.members_secondary_emails_delete, 'team', arg, None, ) return r def team_members_secondary_emails_resend_verification_emails(self, emails_to_resend): """ Resend secondary email verification emails. Permission : Team member management. Route attributes: scope: members.write :param List[:class:`dropbox.team.UserSecondaryEmailsArg`] emails_to_resend: List of users and secondary emails to resend verification emails to. :rtype: :class:`dropbox.team.ResendVerificationEmailResult` """ arg = team.ResendVerificationEmailArg(emails_to_resend) r = self.request( team.members_secondary_emails_resend_verification_emails, 'team', arg, None, ) return r def team_members_send_welcome_email(self, arg): """ Sends welcome email to pending team member. Permission : Team member management Exactly one of team_member_id, email, or external_id must be provided to identify the user account. No-op if team member is not pending. Route attributes: scope: members.write :param arg: Argument for selecting a single user, either by team_member_id, external_id or email. :type arg: :class:`dropbox.team.UserSelectorArg` :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersSendWelcomeError` """ r = self.request( team.members_send_welcome_email, 'team', arg, None, ) return None def team_members_set_admin_permissions_v2(self, user, new_roles=None): """ Updates a team member's permissions. Permission : Team member management. Route attributes: scope: members.write :param user: Identity of user whose role will be set. :type user: :class:`dropbox.team.UserSelectorArg` :param Nullable[List[str]] new_roles: The new roles for the member. Send empty list to make user member only. For now, only up to one role is allowed. :rtype: :class:`dropbox.team.MembersSetPermissions2Result` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersSetPermissions2Error` """ arg = team.MembersSetPermissions2Arg(user, new_roles) r = self.request( team.members_set_admin_permissions_v2, 'team', arg, None, ) return r def team_members_set_admin_permissions(self, user, new_role): """ Updates a team member's permissions. Permission : Team member management. Route attributes: scope: members.write :param user: Identity of user whose role will be set. :type user: :class:`dropbox.team.UserSelectorArg` :param new_role: The new role of the member. :type new_role: :class:`dropbox.team.AdminTier` :rtype: :class:`dropbox.team.MembersSetPermissionsResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersSetPermissionsError` """ arg = team.MembersSetPermissionsArg(user, new_role) r = self.request( team.members_set_admin_permissions, 'team', arg, None, ) return r def team_members_set_profile_v2(self, user, new_email=None, new_external_id=None, new_given_name=None, new_surname=None, new_persistent_id=None, new_is_directory_restricted=None): """ Updates a team member's profile. Permission : Team member management. Route attributes: scope: members.write :param user: Identity of user whose profile will be set. :type user: :class:`dropbox.team.UserSelectorArg` :param Nullable[str] new_email: New email for member. :param Nullable[str] new_external_id: New external ID for member. :param Nullable[str] new_given_name: New given name for member. :param Nullable[str] new_surname: New surname for member. :param Nullable[str] new_persistent_id: New persistent ID. This field only available to teams using persistent ID SAML configuration. :param Nullable[bool] new_is_directory_restricted: New value for whether the user is a directory restricted user. :rtype: :class:`dropbox.team.TeamMemberInfoV2Result` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersSetProfileError` """ arg = team.MembersSetProfileArg(user, new_email, new_external_id, new_given_name, new_surname, new_persistent_id, new_is_directory_restricted) r = self.request( team.members_set_profile_v2, 'team', arg, None, ) return r def team_members_set_profile(self, user, new_email=None, new_external_id=None, new_given_name=None, new_surname=None, new_persistent_id=None, new_is_directory_restricted=None): """ Updates a team member's profile. Permission : Team member management. Route attributes: scope: members.write :param user: Identity of user whose profile will be set. :type user: :class:`dropbox.team.UserSelectorArg` :param Nullable[str] new_email: New email for member. :param Nullable[str] new_external_id: New external ID for member. :param Nullable[str] new_given_name: New given name for member. :param Nullable[str] new_surname: New surname for member. :param Nullable[str] new_persistent_id: New persistent ID. This field only available to teams using persistent ID SAML configuration. :param Nullable[bool] new_is_directory_restricted: New value for whether the user is a directory restricted user. :rtype: :class:`dropbox.team.TeamMemberInfo` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersSetProfileError` """ arg = team.MembersSetProfileArg(user, new_email, new_external_id, new_given_name, new_surname, new_persistent_id, new_is_directory_restricted) r = self.request( team.members_set_profile, 'team', arg, None, ) return r def team_members_set_profile_photo_v2(self, user, photo): """ Updates a team member's profile photo. Permission : Team member management. Route attributes: scope: members.write :param user: Identity of the user whose profile photo will be set. :type user: :class:`dropbox.team.UserSelectorArg` :param photo: Image to set as the member's new profile photo. :type photo: :class:`dropbox.team.PhotoSourceArg` :rtype: :class:`dropbox.team.TeamMemberInfoV2Result` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersSetProfilePhotoError` """ arg = team.MembersSetProfilePhotoArg(user, photo) r = self.request( team.members_set_profile_photo_v2, 'team', arg, None, ) return r def team_members_set_profile_photo(self, user, photo): """ Updates a team member's profile photo. Permission : Team member management. Route attributes: scope: members.write :param user: Identity of the user whose profile photo will be set. :type user: :class:`dropbox.team.UserSelectorArg` :param photo: Image to set as the member's new profile photo. :type photo: :class:`dropbox.team.PhotoSourceArg` :rtype: :class:`dropbox.team.TeamMemberInfo` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersSetProfilePhotoError` """ arg = team.MembersSetProfilePhotoArg(user, photo) r = self.request( team.members_set_profile_photo, 'team', arg, None, ) return r def team_members_suspend(self, user, wipe_data=True): """ Suspend a member from a team. Permission : Team member management Exactly one of team_member_id, email, or external_id must be provided to identify the user account. Route attributes: scope: members.write :param bool wipe_data: If provided, controls if the user's data will be deleted on their linked devices. :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersSuspendError` """ arg = team.MembersDeactivateArg(user, wipe_data) r = self.request( team.members_suspend, 'team', arg, None, ) return None def team_members_unsuspend(self, user): """ Unsuspend a member from a team. Permission : Team member management Exactly one of team_member_id, email, or external_id must be provided to identify the user account. Route attributes: scope: members.write :param user: Identity of user to unsuspend. :type user: :class:`dropbox.team.UserSelectorArg` :rtype: None :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.MembersUnsuspendError` """ arg = team.MembersUnsuspendArg(user) r = self.request( team.members_unsuspend, 'team', arg, None, ) return None def team_namespaces_list(self, limit=1000): """ Returns a list of all team-accessible namespaces. This list includes team folders, shared folders containing team members, team members' home namespaces, and team members' app folders. Home namespaces and app folders are always owned by this team or members of the team, but shared folders may be owned by other users or other teams. Duplicates may occur in the list. Route attributes: scope: team_data.member :param int limit: Specifying a value here has no effect. :rtype: :class:`dropbox.team.TeamNamespacesListResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.TeamNamespacesListError` """ arg = team.TeamNamespacesListArg(limit) r = self.request( team.namespaces_list, 'team', arg, None, ) return r def team_namespaces_list_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`team_namespaces_list`, use this to paginate through all team-accessible namespaces. Duplicates may occur in the list. Route attributes: scope: team_data.member :param str cursor: Indicates from what point to get the next set of team-accessible namespaces. :rtype: :class:`dropbox.team.TeamNamespacesListResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.TeamNamespacesListContinueError` """ arg = team.TeamNamespacesListContinueArg(cursor) r = self.request( team.namespaces_list_continue, 'team', arg, None, ) return r def team_properties_template_add(self, name, description, fields): """ Permission : Team member file access. Route attributes: scope: files.team_metadata.write :rtype: :class:`dropbox.team.AddTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.ModifyTemplateError` """ warnings.warn( 'properties/template/add is deprecated.', DeprecationWarning, ) arg = file_properties.AddTemplateArg(name, description, fields) r = self.request( team.properties_template_add, 'team', arg, None, ) return r def team_properties_template_get(self, template_id): """ Permission : Team member file access. The scope for the route is files.team_metadata.write. Route attributes: scope: files.team_metadata.write :param str template_id: An identifier for template added by route See :meth:`team_templates_add_for_user` or :meth:`team_templates_add_for_team`. :rtype: :class:`dropbox.team.GetTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.TemplateError` """ warnings.warn( 'properties/template/get is deprecated.', DeprecationWarning, ) arg = file_properties.GetTemplateArg(template_id) r = self.request( team.properties_template_get, 'team', arg, None, ) return r def team_properties_template_list(self): """ Permission : Team member file access. The scope for the route is files.team_metadata.write. Route attributes: scope: files.team_metadata.write :rtype: :class:`dropbox.team.ListTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.TemplateError` """ warnings.warn( 'properties/template/list is deprecated.', DeprecationWarning, ) arg = None r = self.request( team.properties_template_list, 'team', arg, None, ) return r def team_properties_template_update(self, template_id, name=None, description=None, add_fields=None): """ Permission : Team member file access. Route attributes: scope: files.team_metadata.write :param str template_id: An identifier for template added by See :meth:`team_templates_add_for_user` or :meth:`team_templates_add_for_team`. :param Nullable[str] name: A display name for the template. template names can be up to 256 bytes. :param Nullable[str] description: Description for the new template. Template descriptions can be up to 1024 bytes. :param Nullable[List[:class:`dropbox.team.PropertyFieldTemplate`]] add_fields: Property field templates to be added to the group template. There can be up to 32 properties in a single template. :rtype: :class:`dropbox.team.UpdateTemplateResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.ModifyTemplateError` """ warnings.warn( 'properties/template/update is deprecated.', DeprecationWarning, ) arg = file_properties.UpdateTemplateArg(template_id, name, description, add_fields) r = self.request( team.properties_template_update, 'team', arg, None, ) return r def team_reports_get_activity(self, start_date=None, end_date=None): """ Retrieves reporting data about a team's user activity. Deprecated: Will be removed on July 1st 2021. Route attributes: scope: team_info.read :param Nullable[datetime] start_date: Optional starting date (inclusive). If start_date is None or too long ago, this field will be set to 6 months ago. :param Nullable[datetime] end_date: Optional ending date (exclusive). :rtype: :class:`dropbox.team.GetActivityReport` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.DateRangeError` """ warnings.warn( 'reports/get_activity is deprecated.', DeprecationWarning, ) arg = team.DateRange(start_date, end_date) r = self.request( team.reports_get_activity, 'team', arg, None, ) return r def team_reports_get_devices(self, start_date=None, end_date=None): """ Retrieves reporting data about a team's linked devices. Deprecated: Will be removed on July 1st 2021. Route attributes: scope: team_info.read :param Nullable[datetime] start_date: Optional starting date (inclusive). If start_date is None or too long ago, this field will be set to 6 months ago. :param Nullable[datetime] end_date: Optional ending date (exclusive). :rtype: :class:`dropbox.team.GetDevicesReport` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.DateRangeError` """ warnings.warn( 'reports/get_devices is deprecated.', DeprecationWarning, ) arg = team.DateRange(start_date, end_date) r = self.request( team.reports_get_devices, 'team', arg, None, ) return r def team_reports_get_membership(self, start_date=None, end_date=None): """ Retrieves reporting data about a team's membership. Deprecated: Will be removed on July 1st 2021. Route attributes: scope: team_info.read :param Nullable[datetime] start_date: Optional starting date (inclusive). If start_date is None or too long ago, this field will be set to 6 months ago. :param Nullable[datetime] end_date: Optional ending date (exclusive). :rtype: :class:`dropbox.team.GetMembershipReport` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.DateRangeError` """ warnings.warn( 'reports/get_membership is deprecated.', DeprecationWarning, ) arg = team.DateRange(start_date, end_date) r = self.request( team.reports_get_membership, 'team', arg, None, ) return r def team_reports_get_storage(self, start_date=None, end_date=None): """ Retrieves reporting data about a team's storage usage. Deprecated: Will be removed on July 1st 2021. Route attributes: scope: team_info.read :param Nullable[datetime] start_date: Optional starting date (inclusive). If start_date is None or too long ago, this field will be set to 6 months ago. :param Nullable[datetime] end_date: Optional ending date (exclusive). :rtype: :class:`dropbox.team.GetStorageReport` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.DateRangeError` """ warnings.warn( 'reports/get_storage is deprecated.', DeprecationWarning, ) arg = team.DateRange(start_date, end_date) r = self.request( team.reports_get_storage, 'team', arg, None, ) return r def team_sharing_allowlist_add(self, domains=None, emails=None): """ Endpoint adds Approve List entries. Changes are effective immediately. Changes are committed in transaction. In case of single validation error - all entries are rejected. Valid domains (RFC-1034/5) and emails (RFC-5322/822) are accepted. Added entries cannot overflow limit of 10000 entries per team. Maximum 100 entries per call is allowed. Route attributes: scope: team_info.write :param Nullable[List[str]] domains: List of domains represented by valid string representation (RFC-1034/5). :param Nullable[List[str]] emails: List of emails represented by valid string representation (RFC-5322/822). :rtype: :class:`dropbox.team.SharingAllowlistAddResponse` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.SharingAllowlistAddError` """ arg = team.SharingAllowlistAddArgs(domains, emails) r = self.request( team.sharing_allowlist_add, 'team', arg, None, ) return r def team_sharing_allowlist_list(self, limit=1000): """ Lists Approve List entries for given team, from newest to oldest, returning up to `limit` entries at a time. If there are more than `limit` entries associated with the current team, more can be fetched by passing the returned `cursor` to :meth:`team_sharing_allowlist_list_continue`. Route attributes: scope: team_info.read :param int limit: The number of entries to fetch at one time. :rtype: :class:`dropbox.team.SharingAllowlistListResponse` """ arg = team.SharingAllowlistListArg(limit) r = self.request( team.sharing_allowlist_list, 'team', arg, None, ) return r def team_sharing_allowlist_list_continue(self, cursor): """ Lists entries associated with given team, starting from a the cursor. See :meth:`team_sharing_allowlist_list`. Route attributes: scope: team_info.read :param str cursor: The cursor returned from a previous call to :meth:`team_sharing_allowlist_list` or :meth:`team_sharing_allowlist_list_continue`. :rtype: :class:`dropbox.team.SharingAllowlistListResponse` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.SharingAllowlistListContinueError` """ arg = team.SharingAllowlistListContinueArg(cursor) r = self.request( team.sharing_allowlist_list_continue, 'team', arg, None, ) return r def team_sharing_allowlist_remove(self, domains=None, emails=None): """ Endpoint removes Approve List entries. Changes are effective immediately. Changes are committed in transaction. In case of single validation error - all entries are rejected. Valid domains (RFC-1034/5) and emails (RFC-5322/822) are accepted. Entries being removed have to be present on the list. Maximum 1000 entries per call is allowed. Route attributes: scope: team_info.write :param Nullable[List[str]] domains: List of domains represented by valid string representation (RFC-1034/5). :param Nullable[List[str]] emails: List of emails represented by valid string representation (RFC-5322/822). :rtype: :class:`dropbox.team.SharingAllowlistRemoveResponse` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.SharingAllowlistRemoveError` """ arg = team.SharingAllowlistRemoveArgs(domains, emails) r = self.request( team.sharing_allowlist_remove, 'team', arg, None, ) return r def team_team_folder_activate(self, team_folder_id): """ Sets an archived team folder's status to active. Permission : Team member file access. Route attributes: scope: team_data.content.write :param str team_folder_id: The ID of the team folder. :rtype: :class:`dropbox.team.TeamFolderMetadata` """ arg = team.TeamFolderIdArg(team_folder_id) r = self.request( team.team_folder_activate, 'team', arg, None, ) return r def team_team_folder_archive(self, team_folder_id, force_async_off=False): """ Sets an active team folder's status to archived and removes all folder and file members. This endpoint cannot be used for teams that have a shared team space. Permission : Team member file access. Route attributes: scope: team_data.content.write :param bool force_async_off: Whether to force the archive to happen synchronously. :rtype: :class:`dropbox.team.TeamFolderArchiveLaunch` """ arg = team.TeamFolderArchiveArg(team_folder_id, force_async_off) r = self.request( team.team_folder_archive, 'team', arg, None, ) return r def team_team_folder_archive_check(self, async_job_id): """ Returns the status of an asynchronous job for archiving a team folder. Permission : Team member file access. Route attributes: scope: team_data.content.write :param str async_job_id: Id of the asynchronous job. This is the value of a response returned from the method that launched the job. :rtype: :class:`dropbox.team.TeamFolderArchiveJobStatus` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.PollError` """ arg = async_.PollArg(async_job_id) r = self.request( team.team_folder_archive_check, 'team', arg, None, ) return r def team_team_folder_create(self, name, sync_setting=None): """ Creates a new, active, team folder with no members. This endpoint can only be used for teams that do not already have a shared team space. Permission : Team member file access. Route attributes: scope: team_data.content.write :param str name: Name for the new team folder. :param Nullable[:class:`dropbox.team.SyncSettingArg`] sync_setting: The sync setting to apply to this team folder. Only permitted if the team has team selective sync enabled. :rtype: :class:`dropbox.team.TeamFolderMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.TeamFolderCreateError` """ arg = team.TeamFolderCreateArg(name, sync_setting) r = self.request( team.team_folder_create, 'team', arg, None, ) return r def team_team_folder_get_info(self, team_folder_ids): """ Retrieves metadata for team folders. Permission : Team member file access. Route attributes: scope: team_data.content.read :param List[str] team_folder_ids: The list of team folder IDs. :rtype: List[:class:`dropbox.team.TeamFolderGetInfoItem`] """ arg = team.TeamFolderIdListArg(team_folder_ids) r = self.request( team.team_folder_get_info, 'team', arg, None, ) return r def team_team_folder_list(self, limit=1000): """ Lists all team folders. Permission : Team member file access. Route attributes: scope: team_data.content.read :param int limit: The maximum number of results to return per request. :rtype: :class:`dropbox.team.TeamFolderListResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.TeamFolderListError` """ arg = team.TeamFolderListArg(limit) r = self.request( team.team_folder_list, 'team', arg, None, ) return r def team_team_folder_list_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`team_team_folder_list`, use this to paginate through all team folders. Permission : Team member file access. Route attributes: scope: team_data.content.read :param str cursor: Indicates from what point to get the next set of team folders. :rtype: :class:`dropbox.team.TeamFolderListResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.TeamFolderListContinueError` """ arg = team.TeamFolderListContinueArg(cursor) r = self.request( team.team_folder_list_continue, 'team', arg, None, ) return r def team_team_folder_permanently_delete(self, team_folder_id): """ Permanently deletes an archived team folder. This endpoint cannot be used for teams that have a shared team space. Permission : Team member file access. Route attributes: scope: team_data.content.write :param str team_folder_id: The ID of the team folder. :rtype: None """ arg = team.TeamFolderIdArg(team_folder_id) r = self.request( team.team_folder_permanently_delete, 'team', arg, None, ) return None def team_team_folder_rename(self, team_folder_id, name): """ Changes an active team folder's name. Permission : Team member file access. Route attributes: scope: team_data.content.write :param str name: New team folder name. :rtype: :class:`dropbox.team.TeamFolderMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.TeamFolderRenameError` """ arg = team.TeamFolderRenameArg(team_folder_id, name) r = self.request( team.team_folder_rename, 'team', arg, None, ) return r def team_team_folder_update_sync_settings(self, team_folder_id, sync_setting=None, content_sync_settings=None): """ Updates the sync settings on a team folder or its contents. Use of this endpoint requires that the team has team selective sync enabled. Route attributes: scope: team_data.content.write :param Nullable[:class:`dropbox.team.SyncSettingArg`] sync_setting: Sync setting to apply to the team folder itself. Only meaningful if the team folder is not a shared team root. :param Nullable[List[:class:`dropbox.team.ContentSyncSettingArg`]] content_sync_settings: Sync settings to apply to contents of this team folder. :rtype: :class:`dropbox.team.TeamFolderMetadata` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.TeamFolderUpdateSyncSettingsError` """ arg = team.TeamFolderUpdateSyncSettingsArg(team_folder_id, sync_setting, content_sync_settings) r = self.request( team.team_folder_update_sync_settings, 'team', arg, None, ) return r def team_token_get_authenticated_admin(self): """ Returns the member profile of the admin who generated the team access token used to make the call. Route attributes: scope: team_info.read :rtype: :class:`dropbox.team.TokenGetAuthenticatedAdminResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team.TokenGetAuthenticatedAdminError` """ arg = None r = self.request( team.token_get_authenticated_admin, 'team', arg, None, ) return r # ------------------------------------------ # Routes in team_log namespace def team_log_get_events(self, limit=1000, account_id=None, time=None, category=None, event_type=None): """ Retrieves team events. If the result's ``GetTeamEventsResult.has_more`` field is ``True``, call :meth:`team_log_get_events_continue` with the returned cursor to retrieve more entries. If end_time is not specified in your request, you may use the returned cursor to poll :meth:`team_log_get_events_continue` for new events. Many attributes note 'may be missing due to historical data gap'. Note that the file_operations category and & analogous paper events are not available on all Dropbox Business `plans `_. Use `features/get_values `_ to check for this feature. Permission : Team Auditing. Route attributes: scope: events.read :param int limit: The maximal number of results to return per call. Note that some calls may not return ``limit`` number of events, and may even return no events, even with `has_more` set to true. In this case, callers should fetch again using :meth:`team_log_get_events_continue`. :param Nullable[str] account_id: Filter the events by account ID. Return only events with this account_id as either Actor, Context, or Participants. :param Nullable[:class:`dropbox.team_log.TimeRange`] time: Filter by time range. :param Nullable[:class:`dropbox.team_log.EventCategory`] category: Filter the returned events to a single category. Note that category shouldn't be provided together with event_type. :param Nullable[:class:`dropbox.team_log.EventTypeArg`] event_type: Filter the returned events to a single event type. Note that event_type shouldn't be provided together with category. :rtype: :class:`dropbox.team_log.GetTeamEventsResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team_log.GetTeamEventsError` """ arg = team_log.GetTeamEventsArg(limit, account_id, time, category, event_type) r = self.request( team_log.get_events, 'team_log', arg, None, ) return r def team_log_get_events_continue(self, cursor): """ Once a cursor has been retrieved from :meth:`team_log_get_events`, use this to paginate through all events. Permission : Team Auditing. Route attributes: scope: events.read :param str cursor: Indicates from what point to get the next set of events. :rtype: :class:`dropbox.team_log.GetTeamEventsResult` :raises: :class:`.exceptions.ApiError` If this raises, ApiError will contain: :class:`dropbox.team_log.GetTeamEventsContinueError` """ arg = team_log.GetTeamEventsContinueArg(cursor) r = self.request( team_log.get_events_continue, 'team_log', arg, None, ) return r # ------------------------------------------ # Routes in users namespace dropbox-sdk-python-12.0.2/dropbox/check.py000066400000000000000000000050351462737130500204660ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv class EchoArg(bb.Struct): """ Contains the arguments to be sent to the Dropbox servers. :ivar check.EchoArg.query: The string that you'd like to be echoed back to you. """ __slots__ = [ '_query_value', ] _has_required_fields = False def __init__(self, query=None): self._query_value = bb.NOT_SET if query is not None: self.query = query # Instance attribute type: str (validator is set below) query = bb.Attribute("query") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EchoArg, self)._process_custom_annotations(annotation_type, field_path, processor) EchoArg_validator = bv.Struct(EchoArg) class EchoResult(bb.Struct): """ EchoResult contains the result returned from the Dropbox servers. :ivar check.EchoResult.result: If everything worked correctly, this would be the same as query. """ __slots__ = [ '_result_value', ] _has_required_fields = False def __init__(self, result=None): self._result_value = bb.NOT_SET if result is not None: self.result = result # Instance attribute type: str (validator is set below) result = bb.Attribute("result") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EchoResult, self)._process_custom_annotations(annotation_type, field_path, processor) EchoResult_validator = bv.Struct(EchoResult) EchoArg.query.validator = bv.String(max_length=500) EchoArg._all_field_names_ = set(['query']) EchoArg._all_fields_ = [('query', EchoArg.query.validator)] EchoResult.result.validator = bv.String() EchoResult._all_field_names_ = set(['result']) EchoResult._all_fields_ = [('result', EchoResult.result.validator)] EchoArg.query.default = '' EchoResult.result.default = '' app = bb.Route( 'app', 1, False, EchoArg_validator, EchoResult_validator, bv.Void(), {'auth': 'app', 'host': 'api', 'style': 'rpc'}, ) user = bb.Route( 'user', 1, False, EchoArg_validator, EchoResult_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'app': app, 'user': user, } dropbox-sdk-python-12.0.2/dropbox/common.py000066400000000000000000000270221462737130500207010ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv class PathRoot(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar common.PathRoot.home: Paths are relative to the authenticating user's home namespace, whether or not that user belongs to a team. :ivar str common.PathRoot.root: Paths are relative to the authenticating user's root namespace (This results in :field:`PathRootError.invalid_root` if the user's root namespace has changed.). :ivar str common.PathRoot.namespace_id: Paths are relative to given namespace id (This results in :field:`PathRootError.no_permission` if you don't have access to this namespace.). """ _catch_all = 'other' # Attribute is overwritten below the class definition home = None # Attribute is overwritten below the class definition other = None @classmethod def root(cls, val): """ Create an instance of this class set to the ``root`` tag with value ``val``. :param str val: :rtype: PathRoot """ return cls('root', val) @classmethod def namespace_id(cls, val): """ Create an instance of this class set to the ``namespace_id`` tag with value ``val``. :param str val: :rtype: PathRoot """ return cls('namespace_id', val) def is_home(self): """ Check if the union tag is ``home``. :rtype: bool """ return self._tag == 'home' def is_root(self): """ Check if the union tag is ``root``. :rtype: bool """ return self._tag == 'root' def is_namespace_id(self): """ Check if the union tag is ``namespace_id``. :rtype: bool """ return self._tag == 'namespace_id' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_root(self): """ Paths are relative to the authenticating user's root namespace (This results in ``PathRootError.invalid_root`` if the user's root namespace has changed.). Only call this if :meth:`is_root` is true. :rtype: str """ if not self.is_root(): raise AttributeError("tag 'root' not set") return self._value def get_namespace_id(self): """ Paths are relative to given namespace id (This results in ``PathRootError.no_permission`` if you don't have access to this namespace.). Only call this if :meth:`is_namespace_id` is true. :rtype: str """ if not self.is_namespace_id(): raise AttributeError("tag 'namespace_id' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(PathRoot, self)._process_custom_annotations(annotation_type, field_path, processor) PathRoot_validator = bv.Union(PathRoot) class PathRootError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar RootInfo PathRootError.invalid_root: The root namespace id in Dropbox-API-Path-Root header is not valid. The value of this error is the user's latest root info. :ivar common.PathRootError.no_permission: You don't have permission to access the namespace id in Dropbox-API-Path-Root header. """ _catch_all = 'other' # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition other = None @classmethod def invalid_root(cls, val): """ Create an instance of this class set to the ``invalid_root`` tag with value ``val``. :param RootInfo val: :rtype: PathRootError """ return cls('invalid_root', val) def is_invalid_root(self): """ Check if the union tag is ``invalid_root``. :rtype: bool """ return self._tag == 'invalid_root' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_invalid_root(self): """ The root namespace id in Dropbox-API-Path-Root header is not valid. The value of this error is the user's latest root info. Only call this if :meth:`is_invalid_root` is true. :rtype: RootInfo """ if not self.is_invalid_root(): raise AttributeError("tag 'invalid_root' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(PathRootError, self)._process_custom_annotations(annotation_type, field_path, processor) PathRootError_validator = bv.Union(PathRootError) class RootInfo(bb.Struct): """ Information about current user's root. :ivar common.RootInfo.root_namespace_id: The namespace ID for user's root namespace. It will be the namespace ID of the shared team root if the user is member of a team with a separate team root. Otherwise it will be same as ``RootInfo.home_namespace_id``. :ivar common.RootInfo.home_namespace_id: The namespace ID for user's home namespace. """ __slots__ = [ '_root_namespace_id_value', '_home_namespace_id_value', ] _has_required_fields = True def __init__(self, root_namespace_id=None, home_namespace_id=None): self._root_namespace_id_value = bb.NOT_SET self._home_namespace_id_value = bb.NOT_SET if root_namespace_id is not None: self.root_namespace_id = root_namespace_id if home_namespace_id is not None: self.home_namespace_id = home_namespace_id # Instance attribute type: str (validator is set below) root_namespace_id = bb.Attribute("root_namespace_id") # Instance attribute type: str (validator is set below) home_namespace_id = bb.Attribute("home_namespace_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RootInfo, self)._process_custom_annotations(annotation_type, field_path, processor) RootInfo_validator = bv.StructTree(RootInfo) class TeamRootInfo(RootInfo): """ Root info when user is member of a team with a separate root namespace ID. :ivar common.TeamRootInfo.home_path: The path for user's home directory under the shared team root. """ __slots__ = [ '_home_path_value', ] _has_required_fields = True def __init__(self, root_namespace_id=None, home_namespace_id=None, home_path=None): super(TeamRootInfo, self).__init__(root_namespace_id, home_namespace_id) self._home_path_value = bb.NOT_SET if home_path is not None: self.home_path = home_path # Instance attribute type: str (validator is set below) home_path = bb.Attribute("home_path") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamRootInfo, self)._process_custom_annotations(annotation_type, field_path, processor) TeamRootInfo_validator = bv.Struct(TeamRootInfo) class UserRootInfo(RootInfo): """ Root info when user is not member of a team or the user is a member of a team and the team does not have a separate root namespace. """ __slots__ = [ ] _has_required_fields = True def __init__(self, root_namespace_id=None, home_namespace_id=None): super(UserRootInfo, self).__init__(root_namespace_id, home_namespace_id) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserRootInfo, self)._process_custom_annotations(annotation_type, field_path, processor) UserRootInfo_validator = bv.Struct(UserRootInfo) Date_validator = bv.Timestamp('%Y-%m-%d') DisplayName_validator = bv.String(pattern='[^/:?*<>"|]*') DisplayNameLegacy_validator = bv.String() DropboxTimestamp_validator = bv.Timestamp('%Y-%m-%dT%H:%M:%SZ') EmailAddress_validator = bv.String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\\.[A-Za-z]{2,15}$") # A ISO639-1 code. LanguageCode_validator = bv.String(min_length=2) NamePart_validator = bv.String(min_length=1, max_length=100, pattern='[^/:?*<>"|]*') NamespaceId_validator = bv.String(pattern='[-_0-9a-zA-Z:]+') OptionalNamePart_validator = bv.String(max_length=100, pattern='[^/:?*<>"|]*') SessionId_validator = bv.String() SharedFolderId_validator = NamespaceId_validator PathRoot._home_validator = bv.Void() PathRoot._root_validator = NamespaceId_validator PathRoot._namespace_id_validator = NamespaceId_validator PathRoot._other_validator = bv.Void() PathRoot._tagmap = { 'home': PathRoot._home_validator, 'root': PathRoot._root_validator, 'namespace_id': PathRoot._namespace_id_validator, 'other': PathRoot._other_validator, } PathRoot.home = PathRoot('home') PathRoot.other = PathRoot('other') PathRootError._invalid_root_validator = RootInfo_validator PathRootError._no_permission_validator = bv.Void() PathRootError._other_validator = bv.Void() PathRootError._tagmap = { 'invalid_root': PathRootError._invalid_root_validator, 'no_permission': PathRootError._no_permission_validator, 'other': PathRootError._other_validator, } PathRootError.no_permission = PathRootError('no_permission') PathRootError.other = PathRootError('other') RootInfo.root_namespace_id.validator = NamespaceId_validator RootInfo.home_namespace_id.validator = NamespaceId_validator RootInfo._field_names_ = set([ 'root_namespace_id', 'home_namespace_id', ]) RootInfo._all_field_names_ = RootInfo._field_names_ RootInfo._fields_ = [ ('root_namespace_id', RootInfo.root_namespace_id.validator), ('home_namespace_id', RootInfo.home_namespace_id.validator), ] RootInfo._all_fields_ = RootInfo._fields_ RootInfo._tag_to_subtype_ = { ('team',): TeamRootInfo_validator, ('user',): UserRootInfo_validator, } RootInfo._pytype_to_tag_and_subtype_ = { TeamRootInfo: (('team',), TeamRootInfo_validator), UserRootInfo: (('user',), UserRootInfo_validator), } RootInfo._is_catch_all_ = True TeamRootInfo.home_path.validator = bv.String() TeamRootInfo._field_names_ = set(['home_path']) TeamRootInfo._all_field_names_ = RootInfo._all_field_names_.union(TeamRootInfo._field_names_) TeamRootInfo._fields_ = [('home_path', TeamRootInfo.home_path.validator)] TeamRootInfo._all_fields_ = RootInfo._all_fields_ + TeamRootInfo._fields_ UserRootInfo._field_names_ = set([]) UserRootInfo._all_field_names_ = RootInfo._all_field_names_.union(UserRootInfo._field_names_) UserRootInfo._fields_ = [] UserRootInfo._all_fields_ = RootInfo._all_fields_ + UserRootInfo._fields_ ROUTES = { } dropbox-sdk-python-12.0.2/dropbox/contacts.py000066400000000000000000000104031462737130500212220ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv from dropbox import common class DeleteManualContactsArg(bb.Struct): """ :ivar contacts.DeleteManualContactsArg.email_addresses: List of manually added contacts to be deleted. """ __slots__ = [ '_email_addresses_value', ] _has_required_fields = True def __init__(self, email_addresses=None): self._email_addresses_value = bb.NOT_SET if email_addresses is not None: self.email_addresses = email_addresses # Instance attribute type: list of [str] (validator is set below) email_addresses = bb.Attribute("email_addresses") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteManualContactsArg, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteManualContactsArg_validator = bv.Struct(DeleteManualContactsArg) class DeleteManualContactsError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar list of [str] contacts.DeleteManualContactsError.contacts_not_found: Can't delete contacts from this list. Make sure the list only has manually added contacts. The deletion was cancelled. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def contacts_not_found(cls, val): """ Create an instance of this class set to the ``contacts_not_found`` tag with value ``val``. :param list of [str] val: :rtype: DeleteManualContactsError """ return cls('contacts_not_found', val) def is_contacts_not_found(self): """ Check if the union tag is ``contacts_not_found``. :rtype: bool """ return self._tag == 'contacts_not_found' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_contacts_not_found(self): """ Can't delete contacts from this list. Make sure the list only has manually added contacts. The deletion was cancelled. Only call this if :meth:`is_contacts_not_found` is true. :rtype: list of [str] """ if not self.is_contacts_not_found(): raise AttributeError("tag 'contacts_not_found' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteManualContactsError, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteManualContactsError_validator = bv.Union(DeleteManualContactsError) DeleteManualContactsArg.email_addresses.validator = bv.List(common.EmailAddress_validator) DeleteManualContactsArg._all_field_names_ = set(['email_addresses']) DeleteManualContactsArg._all_fields_ = [('email_addresses', DeleteManualContactsArg.email_addresses.validator)] DeleteManualContactsError._contacts_not_found_validator = bv.List(common.EmailAddress_validator) DeleteManualContactsError._other_validator = bv.Void() DeleteManualContactsError._tagmap = { 'contacts_not_found': DeleteManualContactsError._contacts_not_found_validator, 'other': DeleteManualContactsError._other_validator, } DeleteManualContactsError.other = DeleteManualContactsError('other') delete_manual_contacts = bb.Route( 'delete_manual_contacts', 1, False, bv.Void(), bv.Void(), bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) delete_manual_contacts_batch = bb.Route( 'delete_manual_contacts_batch', 1, False, DeleteManualContactsArg_validator, bv.Void(), DeleteManualContactsError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'delete_manual_contacts': delete_manual_contacts, 'delete_manual_contacts_batch': delete_manual_contacts_batch, } dropbox-sdk-python-12.0.2/dropbox/dropbox_client.py000066400000000000000000001007351462737130500224270ustar00rootroot00000000000000__all__ = [ 'Dropbox', 'DropboxTeam', 'create_session', ] # This should always be 0.0.0 in main. Only update this after tagging # before release. __version__ = '12.0.2' import base64 import contextlib import json import logging import random import time import requests import six from datetime import datetime, timedelta from dropbox.auth import ( AuthError_validator, RateLimitError_validator, ) from dropbox import files from dropbox.common import ( PathRoot, PathRoot_validator, PathRootError_validator ) from dropbox.base import DropboxBase from dropbox.base_team import DropboxTeamBase from dropbox.exceptions import ( ApiError, AuthError, BadInputError, HttpError, PathRootError, InternalServerError, RateLimitError, ) from dropbox.session import ( API_HOST, API_CONTENT_HOST, API_NOTIFICATION_HOST, HOST_API, HOST_CONTENT, HOST_NOTIFY, pinned_session, DEFAULT_TIMEOUT ) from stone.backends.python_rsrc import stone_serializers PATH_ROOT_HEADER = 'Dropbox-API-Path-Root' HTTP_STATUS_INVALID_PATH_ROOT = 422 TOKEN_EXPIRATION_BUFFER = 300 SELECT_ADMIN_HEADER = 'Dropbox-API-Select-Admin' SELECT_USER_HEADER = 'Dropbox-API-Select-User' USER_AUTH = 'user' TEAM_AUTH = 'team' APP_AUTH = 'app' NO_AUTH = 'noauth' class RouteResult(object): """The successful result of a call to a route.""" def __init__(self, obj_result, http_resp=None): """ :param str obj_result: The result of a route not including the binary payload portion, if one exists. Must be serialized JSON. :param requests.models.Response http_resp: A raw HTTP response. It will be used to stream the binary-body payload of the response. """ assert isinstance(obj_result, six.string_types), \ 'obj_result: expected string, got %r' % type(obj_result) if http_resp is not None: assert isinstance(http_resp, requests.models.Response), \ 'http_resp: expected requests.models.Response, got %r' % \ type(http_resp) self.obj_result = obj_result self.http_resp = http_resp class RouteErrorResult(object): """The error result of a call to a route.""" def __init__(self, request_id, obj_result): """ :param str request_id: A request_id can be shared with Dropbox Support to pinpoint the exact request that returns an error. :param str obj_result: The result of a route not including the binary payload portion, if one exists. """ self.request_id = request_id self.obj_result = obj_result def create_session(max_connections=8, proxies=None, ca_certs=None): """ Creates a session object that can be used by multiple :class:`Dropbox` and :class:`DropboxTeam` instances. This lets you share a connection pool amongst them, as well as proxy parameters. :param int max_connections: Maximum connection pool size. :param dict proxies: See the `requests module `_ for more details. :rtype: :class:`requests.sessions.Session`. `See the requests module `_ for more details. """ # We only need as many pool_connections as we have unique hostnames. session = pinned_session(pool_maxsize=max_connections, ca_certs=ca_certs) if proxies: session.proxies = proxies return session class _DropboxTransport(object): """ Responsible for implementing the wire protocol for making requests to the Dropbox API. """ _API_VERSION = '2' # Download style means that the route argument goes in a Dropbox-API-Arg # header, and the result comes back in a Dropbox-API-Result header. The # HTTP response body contains a binary payload. _ROUTE_STYLE_DOWNLOAD = 'download' # Upload style means that the route argument goes in a Dropbox-API-Arg # header. The HTTP request body contains a binary payload. The result # comes back in a Dropbox-API-Result header. _ROUTE_STYLE_UPLOAD = 'upload' # RPC style means that the argument and result of a route are contained in # the HTTP body. _ROUTE_STYLE_RPC = 'rpc' def __init__(self, oauth2_access_token=None, max_retries_on_error=4, max_retries_on_rate_limit=None, user_agent=None, session=None, headers=None, timeout=DEFAULT_TIMEOUT, oauth2_refresh_token=None, oauth2_access_token_expiration=None, app_key=None, app_secret=None, scope=None, ca_certs=None): """ :param str oauth2_access_token: OAuth2 access token for making client requests. :param int max_retries_on_error: On 5xx errors, the number of times to retry. :param Optional[int] max_retries_on_rate_limit: On 429 errors, the number of times to retry. If `None`, always retries. :param str user_agent: The user agent to use when making requests. This helps us identify requests coming from your application. We recommend you use the format "AppName/Version". If set, we append "/OfficialDropboxPythonSDKv2/__version__" to the user_agent, :param session: If not provided, a new session (connection pool) is created. To share a session across multiple clients, use :func:`create_session`. :type session: :class:`requests.sessions.Session` :param dict headers: Additional headers to add to requests. :param Optional[float] timeout: Maximum duration in seconds that client will wait for any single packet from the server. After the timeout the client will give up on connection. If `None`, client will wait forever. Defaults to 100 seconds. :param str oauth2_refresh_token: OAuth2 refresh token for refreshing access token :param datetime oauth2_access_token_expiration: Expiration for oauth2_access_token :param str app_key: application key of requesting application; used for token refresh :param str app_secret: application secret of requesting application; used for token refresh Not required if PKCE was used to authorize the token :param list scope: list of scopes to request on refresh. If left blank, refresh will request all available scopes for application :param str ca_certs: a path to a file of concatenated CA certificates in PEM format. Has the same meaning as when using :func:`ssl.wrap_socket`. """ if not (oauth2_access_token or oauth2_refresh_token or (app_key and app_secret)): raise BadInputException( 'OAuth2 access token or refresh token or app key/secret must be set' ) if headers is not None and not isinstance(headers, dict): raise BadInputException('Expected dict, got {}'.format(headers)) if oauth2_refresh_token and not app_key: raise BadInputException("app_key is required to refresh tokens") if scope is not None and (len(scope) == 0 or not isinstance(scope, list)): raise BadInputException("Scope list must be of type list") self._oauth2_access_token = oauth2_access_token self._oauth2_refresh_token = oauth2_refresh_token self._oauth2_access_token_expiration = oauth2_access_token_expiration self._app_key = app_key self._app_secret = app_secret self._scope = scope self._max_retries_on_error = max_retries_on_error self._max_retries_on_rate_limit = max_retries_on_rate_limit if session: if not isinstance(session, requests.sessions.Session): raise BadInputException('Expected requests.sessions.Session, got {}' .format(session)) self._session = session else: self._session = create_session(ca_certs=ca_certs) self._headers = headers base_user_agent = 'OfficialDropboxPythonSDKv2/' + __version__ if user_agent: self._raw_user_agent = user_agent self._user_agent = '{}/{}'.format(user_agent, base_user_agent) else: self._raw_user_agent = None self._user_agent = base_user_agent self._logger = logging.getLogger('dropbox') self._host_map = {HOST_API: API_HOST, HOST_CONTENT: API_CONTENT_HOST, HOST_NOTIFY: API_NOTIFICATION_HOST} self._timeout = timeout def clone( self, oauth2_access_token=None, max_retries_on_error=None, max_retries_on_rate_limit=None, user_agent=None, session=None, headers=None, timeout=None, oauth2_refresh_token=None, oauth2_access_token_expiration=None, app_key=None, app_secret=None, scope=None): """ Creates a new copy of the Dropbox client with the same defaults unless modified by arguments to clone() See constructor for original parameter descriptions. :return: New instance of Dropbox client :rtype: Dropbox """ return self.__class__( oauth2_access_token or self._oauth2_access_token, max_retries_on_error or self._max_retries_on_error, max_retries_on_rate_limit or self._max_retries_on_rate_limit, user_agent or self._user_agent, session or self._session, headers or self._headers, timeout or self._timeout, oauth2_refresh_token or self._oauth2_refresh_token, oauth2_access_token_expiration or self._oauth2_access_token_expiration, app_key or self._app_key, app_secret or self._app_secret, scope or self._scope ) def request(self, route, namespace, request_arg, request_binary, timeout=None): """ Makes a request to the Dropbox API and in the process validates that the route argument and result are the expected data types. The request_arg is converted to JSON based on the arg_data_type. Likewise, the response is deserialized from JSON and converted to an object based on the {result,error}_data_type. :param host: The Dropbox API host to connect to. :param route: The route to make the request to. :type route: :class:`stone.backends.python_rsrc.stone_base.Route` :param request_arg: Argument for the route that conforms to the validator specified by route.arg_type. :param request_binary: String or file pointer representing the binary payload. Use None if there is no binary payload. :param Optional[float] timeout: Maximum duration in seconds that client will wait for any single packet from the server. After the timeout the client will give up on connection. If `None`, will use default timeout set on Dropbox object. Defaults to `None`. :return: The route's result. """ self.check_and_refresh_access_token() host = route.attrs['host'] or 'api' auth_type = route.attrs['auth'] route_name = namespace + '/' + route.name if route.version > 1: route_name += '_v{}'.format(route.version) route_style = route.attrs['style'] or 'rpc' serialized_arg = stone_serializers.json_encode(route.arg_type, request_arg) if (timeout is None and route == files.list_folder_longpoll): # The client normally sends a timeout value to the # longpoll route. The server will respond after # + random(0, 90) seconds. We increase the # socket timeout to the longpoll timeout value plus 90 # seconds so that we don't cut the server response short # due to a shorter socket timeout. # NB: This is done here because base.py is auto-generated timeout = request_arg.timeout + 90 res = self.request_json_string_with_retry(host, route_name, route_style, serialized_arg, auth_type, request_binary, timeout=timeout) decoded_obj_result = json.loads(res.obj_result) if isinstance(res, RouteResult): returned_data_type = route.result_type obj = decoded_obj_result elif isinstance(res, RouteErrorResult): returned_data_type = route.error_type obj = decoded_obj_result['error'] user_message = decoded_obj_result.get('user_message') user_message_text = user_message and user_message.get('text') user_message_locale = user_message and user_message.get('locale') else: raise AssertionError('Expected RouteResult or RouteErrorResult, ' 'but res is %s' % type(res)) deserialized_result = stone_serializers.json_compat_obj_decode( returned_data_type, obj, strict=False) if isinstance(res, RouteErrorResult): raise ApiError(res.request_id, deserialized_result, user_message_text, user_message_locale) elif route_style == self._ROUTE_STYLE_DOWNLOAD: return (deserialized_result, res.http_resp) else: return deserialized_result def check_and_refresh_access_token(self): """ Checks if access token needs to be refreshed and refreshes if possible :return: """ can_refresh = self._oauth2_refresh_token and self._app_key needs_refresh = self._oauth2_refresh_token and \ (not self._oauth2_access_token_expiration or (datetime.utcnow() + timedelta(seconds=TOKEN_EXPIRATION_BUFFER)) >= self._oauth2_access_token_expiration) needs_token = not self._oauth2_access_token if (needs_refresh or needs_token) and can_refresh: self.refresh_access_token(scope=self._scope) def refresh_access_token(self, host=API_HOST, scope=None): """ Refreshes an access token via refresh token if available :param host: host to hit token endpoint with :param scope: list of permission scopes for access token :return: """ if scope is not None and (len(scope) == 0 or not isinstance(scope, list)): raise BadInputException("Scope list must be of type list") if not (self._oauth2_refresh_token and self._app_key): self._logger.warning('Unable to refresh access token without \ refresh token and app key') return self._logger.info('Refreshing access token.') url = "https://{}/oauth2/token".format(host) body = {'grant_type': 'refresh_token', 'refresh_token': self._oauth2_refresh_token, 'client_id': self._app_key, } if self._app_secret: body['client_secret'] = self._app_secret if scope: scope = " ".join(scope) body['scope'] = scope timeout = DEFAULT_TIMEOUT if self._timeout: timeout = self._timeout res = self._session.post(url, data=body, timeout=timeout) self.raise_dropbox_error_for_resp(res) token_content = res.json() self._oauth2_access_token = token_content["access_token"] self._oauth2_access_token_expiration = datetime.utcnow() + \ timedelta(seconds=int(token_content["expires_in"])) def request_json_object(self, host, route_name, route_style, request_arg, auth_type, request_binary, timeout=None): """ Makes a request to the Dropbox API, taking a JSON-serializable Python object as an argument, and returning one as a response. :param host: The Dropbox API host to connect to. :param route_name: The name of the route to invoke. :param route_style: The style of the route. :param str request_arg: A JSON-serializable Python object representing the argument for the route. :param auth_type str :param Optional[bytes] request_binary: Bytes representing the binary payload. Use None if there is no binary payload. :param Optional[float] timeout: Maximum duration in seconds that client will wait for any single packet from the server. After the timeout the client will give up on connection. If `None`, will use default timeout set on Dropbox object. Defaults to `None`. :return: The route's result as a JSON-serializable Python object. """ serialized_arg = json.dumps(request_arg) res = self.request_json_string_with_retry(host, route_name, route_style, serialized_arg, auth_type, request_binary, timeout=timeout) # This can throw a ValueError if the result is not deserializable, # but that would be completely unexpected. deserialized_result = json.loads(res.obj_result) if isinstance(res, RouteResult) and res.http_resp is not None: return (deserialized_result, res.http_resp) else: return deserialized_result def request_json_string_with_retry(self, host, route_name, route_style, request_json_arg, auth_type, request_binary, timeout=None): """ See :meth:`request_json_object` for description of parameters. :param request_json_arg: A string representing the serialized JSON argument to the route. """ attempt = 0 rate_limit_errors = 0 has_refreshed = False while True: self._logger.info('Request to %s', route_name) try: return self.request_json_string(host, route_name, route_style, request_json_arg, auth_type, request_binary, timeout=timeout) except AuthError as e: if e.error and e.error.is_expired_access_token(): if has_refreshed: raise else: self._logger.info( 'ExpiredCredentials status_code=%s: Refreshing and Retrying', e.status_code) self.refresh_access_token() has_refreshed = True else: raise except InternalServerError as e: attempt += 1 if attempt <= self._max_retries_on_error: # Use exponential backoff backoff = 2**attempt * random.random() self._logger.info( 'HttpError status_code=%s: Retrying in %.1f seconds', e.status_code, backoff) time.sleep(backoff) else: raise except RateLimitError as e: rate_limit_errors += 1 if (self._max_retries_on_rate_limit is None or self._max_retries_on_rate_limit >= rate_limit_errors): # Set default backoff to 5 seconds. backoff = e.backoff if e.backoff is not None else 5.0 self._logger.info( 'Ratelimit: Retrying in %.1f seconds.', backoff) time.sleep(backoff) else: raise def request_json_string(self, host, func_name, route_style, request_json_arg, auth_type, request_binary, timeout=None): """ See :meth:`request_json_string_with_retry` for description of parameters. """ if host not in self._host_map: raise ValueError('Unknown value for host: %r' % host) if not isinstance(request_binary, (six.binary_type, type(None))): # Disallow streams and file-like objects even though the underlying # requests library supports them. This is to prevent incorrect # behavior when a non-rewindable stream is read from, but the # request fails and needs to be re-tried at a later time. raise TypeError('expected request_binary as binary type, got %s' % type(request_binary)) # Fully qualified hostname fq_hostname = self._host_map[host] url = self._get_route_url(fq_hostname, func_name) headers = {'User-Agent': self._user_agent} auth_types = auth_type.replace(' ', '').split(',') if (USER_AUTH in auth_types or TEAM_AUTH in auth_types) and self._oauth2_access_token: headers['Authorization'] = 'Bearer %s' % self._oauth2_access_token if self._headers: headers.update(self._headers) elif APP_AUTH in auth_types: if self._app_key is None or self._app_secret is None: raise BadInputException( 'Client id and client secret are required for routes with app auth') auth_header = base64.b64encode( "{}:{}".format(self._app_key, self._app_secret).encode("utf-8") ) headers['Authorization'] = 'Basic {}'.format(auth_header.decode("utf-8")) if self._headers: headers.update(self._headers) elif auth_type == NO_AUTH: pass else: raise BadInputException('Unhandled auth type: {}'.format(auth_type)) # The contents of the body of the HTTP request body = None # Whether the response should be streamed incrementally, or buffered # entirely. If stream is True, the caller is responsible for closing # the HTTP response. stream = False if route_style == self._ROUTE_STYLE_RPC: headers['Content-Type'] = 'application/json' body = request_json_arg elif route_style == self._ROUTE_STYLE_DOWNLOAD: headers['Dropbox-API-Arg'] = request_json_arg stream = True elif route_style == self._ROUTE_STYLE_UPLOAD: headers['Content-Type'] = 'application/octet-stream' headers['Dropbox-API-Arg'] = request_json_arg body = request_binary else: raise ValueError('Unknown operation style: %r' % route_style) if timeout is None: timeout = self._timeout r = self._session.post(url, headers=headers, data=body, stream=stream, timeout=timeout, ) self.raise_dropbox_error_for_resp(r) request_id = r.headers.get('x-dropbox-request-id') if r.status_code in (403, 404, 409): raw_resp = r.content.decode('utf-8') return RouteErrorResult(request_id, raw_resp) if route_style == self._ROUTE_STYLE_DOWNLOAD: raw_resp = r.headers['dropbox-api-result'] else: assert r.headers.get('content-type') == 'application/json', ( 'Expected content-type to be application/json, got %r' % r.headers.get('content-type')) raw_resp = r.content.decode('utf-8') if route_style == self._ROUTE_STYLE_DOWNLOAD: return RouteResult(raw_resp, r) else: return RouteResult(raw_resp) def raise_dropbox_error_for_resp(self, res): """Checks for errors from a res and handles appropiately. :param res: Response of an api request. """ request_id = res.headers.get('x-dropbox-request-id') if res.status_code >= 500: raise InternalServerError(request_id, res.status_code, res.text) elif res.status_code == 400: try: if res.json()['error'] == 'invalid_grant': request_id = res.headers.get('x-dropbox-request-id') err = stone_serializers.json_compat_obj_decode( AuthError_validator, 'invalid_access_token') raise AuthError(request_id, err) else: raise BadInputError(request_id, res.text) except ValueError: raise BadInputError(request_id, res.text) elif res.status_code == 401: assert res.headers.get('content-type') == 'application/json', ( 'Expected content-type to be application/json, got %r' % res.headers.get('content-type')) err = stone_serializers.json_compat_obj_decode( AuthError_validator, res.json()['error']) raise AuthError(request_id, err) elif res.status_code == HTTP_STATUS_INVALID_PATH_ROOT: err = stone_serializers.json_compat_obj_decode( PathRootError_validator, res.json()['error']) raise PathRootError(request_id, err) elif res.status_code == 429: err = None if res.headers.get('content-type') == 'application/json': err = stone_serializers.json_compat_obj_decode( RateLimitError_validator, res.json()['error']) retry_after = err.retry_after else: retry_after_str = res.headers.get('retry-after') if retry_after_str is not None: retry_after = int(retry_after_str) else: retry_after = None raise RateLimitError(request_id, err, retry_after) elif res.status_code in (403, 404, 409): # special case handled by requester return elif not (200 <= res.status_code <= 299): raise HttpError(request_id, res.status_code, res.text) def _get_route_url(self, hostname, route_name): """Returns the URL of the route. :param str hostname: Hostname to make the request to. :param str route_name: Name of the route. :rtype: str """ return 'https://{hostname}/{version}/{route_name}'.format( hostname=hostname, version=Dropbox._API_VERSION, route_name=route_name, ) def _save_body_to_file(self, download_path, http_resp, chunksize=2**16): """ Saves the body of an HTTP response to a file. :param str download_path: Local path to save data to. :param http_resp: The HTTP response whose body will be saved. :type http_resp: :class:`requests.models.Response` :rtype: None """ with open(download_path, 'wb') as f: with contextlib.closing(http_resp): for c in http_resp.iter_content(chunksize): f.write(c) def with_path_root(self, path_root): """ Creates a clone of the Dropbox instance with the Dropbox-API-Path-Root header as the appropriate serialized instance of PathRoot. For more information, see https://www.dropbox.com/developers/reference/namespace-guide#pathrootmodes :param PathRoot path_root: instance of PathRoot to serialize into the headers field :return: A :class: `Dropbox` :rtype: Dropbox """ if not isinstance(path_root, PathRoot): raise ValueError("path_root must be an instance of PathRoot") new_headers = self._headers.copy() if self._headers else {} new_headers[PATH_ROOT_HEADER] = stone_serializers.json_encode(PathRoot_validator, path_root) return self.clone( headers=new_headers ) def close(self): """ Cleans up all resources like the request session/network connection. """ self._session.close() def __enter__(self): return self def __exit__(self, *args): self.close() class Dropbox(_DropboxTransport, DropboxBase): """ Use this class to make requests to the Dropbox API using a user's access token. Methods of this class are meant to act on the corresponding user's Dropbox. """ pass class DropboxTeam(_DropboxTransport, DropboxTeamBase): """ Use this class to make requests to the Dropbox API using a team's access token. Methods of this class are meant to act on the team, but there is also an :meth:`as_user` method for assuming a team member's identity. """ def as_admin(self, team_member_id): """ Allows a team credential to assume the identity of an administrator on the team and perform operations on any team-owned content. :param str team_member_id: team member id of administrator to perform actions with :return: A :class:`Dropbox` object that can be used to query on behalf of this admin of the team. :rtype: Dropbox """ return self._get_dropbox_client_with_select_header(SELECT_ADMIN_HEADER, team_member_id) def as_user(self, team_member_id): """ Allows a team credential to assume the identity of a member of the team. :param str team_member_id: team member id of team member to perform actions with :return: A :class:`Dropbox` object that can be used to query on behalf of this member of the team. :rtype: Dropbox """ return self._get_dropbox_client_with_select_header(SELECT_USER_HEADER, team_member_id) def _get_dropbox_client_with_select_header(self, select_header_name, team_member_id): """ Get Dropbox client with modified headers :param str select_header_name: Header name used to select users :param str team_member_id: team member id of team member to perform actions with :return: A :class:`Dropbox` object that can be used to query on behalf of a member or admin of the team :rtype: Dropbox """ new_headers = self._headers.copy() if self._headers else {} new_headers[select_header_name] = team_member_id return Dropbox( oauth2_access_token=self._oauth2_access_token, oauth2_refresh_token=self._oauth2_refresh_token, oauth2_access_token_expiration=self._oauth2_access_token_expiration, max_retries_on_error=self._max_retries_on_error, max_retries_on_rate_limit=self._max_retries_on_rate_limit, timeout=self._timeout, user_agent=self._raw_user_agent, session=self._session, headers=new_headers, app_key=self._app_key, app_secret=self._app_secret, scope=self._scope, ) class BadInputException(Exception): """ Thrown if incorrect types/values are used This should only ever be thrown during testing, app should have validation of input prior to reaching this point """ pass dropbox-sdk-python-12.0.2/dropbox/exceptions.py000066400000000000000000000065411462737130500215750ustar00rootroot00000000000000class DropboxException(Exception): """All errors related to making an API request extend this.""" def __init__(self, request_id, *args, **kwargs): # A request_id can be shared with Dropbox Support to pinpoint the exact # request that returns an error. super(DropboxException, self).__init__(request_id, *args, **kwargs) self.request_id = request_id def __str__(self): return repr(self) class ApiError(DropboxException): """Errors produced by the Dropbox API.""" def __init__(self, request_id, error, user_message_text, user_message_locale): """ :param (str) request_id: A request_id can be shared with Dropbox Support to pinpoint the exact request that returns an error. :param error: An instance of the error data type for the route. :param (str) user_message_text: A human-readable message that can be displayed to the end user. Is None, if unavailable. :param (str) user_message_locale: The locale of ``user_message_text``, if present. """ super(ApiError, self).__init__(request_id, error) self.error = error self.user_message_text = user_message_text self.user_message_locale = user_message_locale def __repr__(self): return 'ApiError({!r}, {})'.format(self.request_id, self.error) class HttpError(DropboxException): """Errors produced at the HTTP layer.""" def __init__(self, request_id, status_code, body): super(HttpError, self).__init__(request_id, status_code, body) self.status_code = status_code self.body = body def __repr__(self): return 'HttpError({!r}, {}, {!r})'.format(self.request_id, self.status_code, self.body) class PathRootError(HttpError): """Error caused by an invalid path root.""" def __init__(self, request_id, error=None): super(PathRootError, self).__init__(request_id, 422, None) self.error = error def __repr__(self): return 'PathRootError({!r}, {!r})'.format(self.request_id, self.error) class BadInputError(HttpError): """Errors due to bad input parameters to an API Operation.""" def __init__(self, request_id, message): super(BadInputError, self).__init__(request_id, 400, message) self.message = message def __repr__(self): return 'BadInputError({!r}, {!r})'.format(self.request_id, self.message) class AuthError(HttpError): """Errors due to invalid authentication credentials.""" def __init__(self, request_id, error): super(AuthError, self).__init__(request_id, 401, None) self.error = error def __repr__(self): return 'AuthError({!r}, {!r})'.format(self.request_id, self.error) class RateLimitError(HttpError): """Error caused by rate limiting.""" def __init__(self, request_id, error=None, backoff=None): super(RateLimitError, self).__init__(request_id, 429, None) self.error = error self.backoff = backoff def __repr__(self): return 'RateLimitError({!r}, {!r}, {!r})'.format( self.request_id, self.error, self.backoff) class InternalServerError(HttpError): """Errors due to a problem on Dropbox.""" def __repr__(self): return 'InternalServerError({!r}, {}, {!r})'.format( self.request_id, self.status_code, self.body) dropbox-sdk-python-12.0.2/dropbox/file_properties.py000066400000000000000000002330261462737130500226070ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file """ This namespace contains helpers for property and template metadata endpoints. These endpoints enable you to tag arbitrary key/value data to Dropbox files. The most basic unit in this namespace is the :class:`PropertyField`. These fields encapsulate the actual key/value data. Fields are added to a Dropbox file using a :class:`PropertyGroup`. Property groups contain a reference to a Dropbox file and a :class:`PropertyGroupTemplate`. Property groups are uniquely identified by the combination of their associated Dropbox file and template. The :class:`PropertyGroupTemplate` is a way of restricting the possible key names and value types of the data within a property group. The possible key names and value types are explicitly enumerated using :class:`PropertyFieldTemplate` objects. You can think of a property group template as a class definition for a particular key/value metadata object, and the property groups themselves as the instantiations of these objects. Templates are owned either by a user/app pair or team/app pair. Templates and their associated properties can't be accessed by any app other than the app that created them, and even then, only when the app is linked with the owner of the template (either a user or team). User-owned templates are accessed via the user-auth file_properties/templates/*_for_user endpoints, while team-owned templates are accessed via the team-auth file_properties/templates/*_for_team endpoints. Properties associated with either type of template can be accessed via the user-auth properties/* endpoints. Finally, properties can be accessed from a number of endpoints that return metadata, including `files/get_metadata`, and `files/list_folder`. Properties can also be added during upload, using `files/upload`. """ from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv class AddPropertiesArg(bb.Struct): """ :ivar file_properties.AddPropertiesArg.path: A unique identifier for the file or folder. :ivar file_properties.AddPropertiesArg.property_groups: The property groups which are to be added to a Dropbox file. No two groups in the input should refer to the same template. """ __slots__ = [ '_path_value', '_property_groups_value', ] _has_required_fields = True def __init__(self, path=None, property_groups=None): self._path_value = bb.NOT_SET self._property_groups_value = bb.NOT_SET if path is not None: self.path = path if property_groups is not None: self.property_groups = property_groups # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: list of [PropertyGroup] (validator is set below) property_groups = bb.Attribute("property_groups") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddPropertiesArg, self)._process_custom_annotations(annotation_type, field_path, processor) AddPropertiesArg_validator = bv.Struct(AddPropertiesArg) class TemplateError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str file_properties.TemplateError.template_not_found: Template does not exist for the given identifier. :ivar file_properties.TemplateError.restricted_content: You do not have permission to modify this template. """ _catch_all = 'other' # Attribute is overwritten below the class definition restricted_content = None # Attribute is overwritten below the class definition other = None @classmethod def template_not_found(cls, val): """ Create an instance of this class set to the ``template_not_found`` tag with value ``val``. :param str val: :rtype: TemplateError """ return cls('template_not_found', val) def is_template_not_found(self): """ Check if the union tag is ``template_not_found``. :rtype: bool """ return self._tag == 'template_not_found' def is_restricted_content(self): """ Check if the union tag is ``restricted_content``. :rtype: bool """ return self._tag == 'restricted_content' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_template_not_found(self): """ Template does not exist for the given identifier. Only call this if :meth:`is_template_not_found` is true. :rtype: str """ if not self.is_template_not_found(): raise AttributeError("tag 'template_not_found' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TemplateError, self)._process_custom_annotations(annotation_type, field_path, processor) TemplateError_validator = bv.Union(TemplateError) class PropertiesError(TemplateError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_properties.PropertiesError.unsupported_folder: This folder cannot be tagged. Tagging folders is not supported for team-owned templates. """ # Attribute is overwritten below the class definition unsupported_folder = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: PropertiesError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_unsupported_folder(self): """ Check if the union tag is ``unsupported_folder``. :rtype: bool """ return self._tag == 'unsupported_folder' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertiesError, self)._process_custom_annotations(annotation_type, field_path, processor) PropertiesError_validator = bv.Union(PropertiesError) class InvalidPropertyGroupError(PropertiesError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_properties.InvalidPropertyGroupError.property_field_too_large: One or more of the supplied property field values is too large. :ivar file_properties.InvalidPropertyGroupError.does_not_fit_template: One or more of the supplied property fields does not conform to the template specifications. :ivar file_properties.InvalidPropertyGroupError.duplicate_property_groups: There are 2 or more property groups referring to the same templates in the input. """ # Attribute is overwritten below the class definition property_field_too_large = None # Attribute is overwritten below the class definition does_not_fit_template = None # Attribute is overwritten below the class definition duplicate_property_groups = None def is_property_field_too_large(self): """ Check if the union tag is ``property_field_too_large``. :rtype: bool """ return self._tag == 'property_field_too_large' def is_does_not_fit_template(self): """ Check if the union tag is ``does_not_fit_template``. :rtype: bool """ return self._tag == 'does_not_fit_template' def is_duplicate_property_groups(self): """ Check if the union tag is ``duplicate_property_groups``. :rtype: bool """ return self._tag == 'duplicate_property_groups' def _process_custom_annotations(self, annotation_type, field_path, processor): super(InvalidPropertyGroupError, self)._process_custom_annotations(annotation_type, field_path, processor) InvalidPropertyGroupError_validator = bv.Union(InvalidPropertyGroupError) class AddPropertiesError(InvalidPropertyGroupError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_properties.AddPropertiesError.property_group_already_exists: A property group associated with this template and file already exists. """ # Attribute is overwritten below the class definition property_group_already_exists = None def is_property_group_already_exists(self): """ Check if the union tag is ``property_group_already_exists``. :rtype: bool """ return self._tag == 'property_group_already_exists' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddPropertiesError, self)._process_custom_annotations(annotation_type, field_path, processor) AddPropertiesError_validator = bv.Union(AddPropertiesError) class PropertyGroupTemplate(bb.Struct): """ Defines how a property group may be structured. :ivar file_properties.PropertyGroupTemplate.name: Display name for the template. Template names can be up to 256 bytes. :ivar file_properties.PropertyGroupTemplate.description: Description for the template. Template descriptions can be up to 1024 bytes. :ivar file_properties.PropertyGroupTemplate.fields: Definitions of the property fields associated with this template. There can be up to 32 properties in a single template. """ __slots__ = [ '_name_value', '_description_value', '_fields_value', ] _has_required_fields = True def __init__(self, name=None, description=None, fields=None): self._name_value = bb.NOT_SET self._description_value = bb.NOT_SET self._fields_value = bb.NOT_SET if name is not None: self.name = name if description is not None: self.description = description if fields is not None: self.fields = fields # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) description = bb.Attribute("description") # Instance attribute type: list of [PropertyFieldTemplate] (validator is set below) fields = bb.Attribute("fields") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertyGroupTemplate, self)._process_custom_annotations(annotation_type, field_path, processor) PropertyGroupTemplate_validator = bv.Struct(PropertyGroupTemplate) class AddTemplateArg(PropertyGroupTemplate): __slots__ = [ ] _has_required_fields = True def __init__(self, name=None, description=None, fields=None): super(AddTemplateArg, self).__init__(name, description, fields) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddTemplateArg, self)._process_custom_annotations(annotation_type, field_path, processor) AddTemplateArg_validator = bv.Struct(AddTemplateArg) class AddTemplateResult(bb.Struct): """ :ivar file_properties.AddTemplateResult.template_id: An identifier for template added by See :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_user` or :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_team`. """ __slots__ = [ '_template_id_value', ] _has_required_fields = True def __init__(self, template_id=None): self._template_id_value = bb.NOT_SET if template_id is not None: self.template_id = template_id # Instance attribute type: str (validator is set below) template_id = bb.Attribute("template_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddTemplateResult, self)._process_custom_annotations(annotation_type, field_path, processor) AddTemplateResult_validator = bv.Struct(AddTemplateResult) class GetTemplateArg(bb.Struct): """ :ivar file_properties.GetTemplateArg.template_id: An identifier for template added by route See :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_user` or :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_team`. """ __slots__ = [ '_template_id_value', ] _has_required_fields = True def __init__(self, template_id=None): self._template_id_value = bb.NOT_SET if template_id is not None: self.template_id = template_id # Instance attribute type: str (validator is set below) template_id = bb.Attribute("template_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTemplateArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetTemplateArg_validator = bv.Struct(GetTemplateArg) class GetTemplateResult(PropertyGroupTemplate): __slots__ = [ ] _has_required_fields = True def __init__(self, name=None, description=None, fields=None): super(GetTemplateResult, self).__init__(name, description, fields) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTemplateResult, self)._process_custom_annotations(annotation_type, field_path, processor) GetTemplateResult_validator = bv.Struct(GetTemplateResult) class ListTemplateResult(bb.Struct): """ :ivar file_properties.ListTemplateResult.template_ids: List of identifiers for templates added by See :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_user` or :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_team`. """ __slots__ = [ '_template_ids_value', ] _has_required_fields = True def __init__(self, template_ids=None): self._template_ids_value = bb.NOT_SET if template_ids is not None: self.template_ids = template_ids # Instance attribute type: list of [str] (validator is set below) template_ids = bb.Attribute("template_ids") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListTemplateResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListTemplateResult_validator = bv.Struct(ListTemplateResult) class LogicalOperator(bb.Union): """ Logical operator to join search queries together. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_properties.LogicalOperator.or_operator: Append a query with an "or" operator. """ _catch_all = 'other' # Attribute is overwritten below the class definition or_operator = None # Attribute is overwritten below the class definition other = None def is_or_operator(self): """ Check if the union tag is ``or_operator``. :rtype: bool """ return self._tag == 'or_operator' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LogicalOperator, self)._process_custom_annotations(annotation_type, field_path, processor) LogicalOperator_validator = bv.Union(LogicalOperator) class LookUpPropertiesError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_properties.LookUpPropertiesError.property_group_not_found: No property group was found. """ _catch_all = 'other' # Attribute is overwritten below the class definition property_group_not_found = None # Attribute is overwritten below the class definition other = None def is_property_group_not_found(self): """ Check if the union tag is ``property_group_not_found``. :rtype: bool """ return self._tag == 'property_group_not_found' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LookUpPropertiesError, self)._process_custom_annotations(annotation_type, field_path, processor) LookUpPropertiesError_validator = bv.Union(LookUpPropertiesError) class LookupError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_properties.LookupError.not_found: There is nothing at the given path. :ivar file_properties.LookupError.not_file: We were expecting a file, but the given path refers to something that isn't a file. :ivar file_properties.LookupError.not_folder: We were expecting a folder, but the given path refers to something that isn't a folder. :ivar file_properties.LookupError.restricted_content: The file cannot be transferred because the content is restricted. For example, we might restrict a file due to legal requirements. """ _catch_all = 'other' # Attribute is overwritten below the class definition not_found = None # Attribute is overwritten below the class definition not_file = None # Attribute is overwritten below the class definition not_folder = None # Attribute is overwritten below the class definition restricted_content = None # Attribute is overwritten below the class definition other = None @classmethod def malformed_path(cls, val): """ Create an instance of this class set to the ``malformed_path`` tag with value ``val``. :param str val: :rtype: LookupError """ return cls('malformed_path', val) def is_malformed_path(self): """ Check if the union tag is ``malformed_path``. :rtype: bool """ return self._tag == 'malformed_path' def is_not_found(self): """ Check if the union tag is ``not_found``. :rtype: bool """ return self._tag == 'not_found' def is_not_file(self): """ Check if the union tag is ``not_file``. :rtype: bool """ return self._tag == 'not_file' def is_not_folder(self): """ Check if the union tag is ``not_folder``. :rtype: bool """ return self._tag == 'not_folder' def is_restricted_content(self): """ Check if the union tag is ``restricted_content``. :rtype: bool """ return self._tag == 'restricted_content' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_malformed_path(self): """ Only call this if :meth:`is_malformed_path` is true. :rtype: str """ if not self.is_malformed_path(): raise AttributeError("tag 'malformed_path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(LookupError, self)._process_custom_annotations(annotation_type, field_path, processor) LookupError_validator = bv.Union(LookupError) class ModifyTemplateError(TemplateError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_properties.ModifyTemplateError.conflicting_property_names: A property field key with that name already exists in the template. :ivar file_properties.ModifyTemplateError.too_many_properties: There are too many properties in the changed template. The maximum number of properties per template is 32. :ivar file_properties.ModifyTemplateError.too_many_templates: There are too many templates for the team. :ivar file_properties.ModifyTemplateError.template_attribute_too_large: The template name, description or one or more of the property field keys is too large. """ # Attribute is overwritten below the class definition conflicting_property_names = None # Attribute is overwritten below the class definition too_many_properties = None # Attribute is overwritten below the class definition too_many_templates = None # Attribute is overwritten below the class definition template_attribute_too_large = None def is_conflicting_property_names(self): """ Check if the union tag is ``conflicting_property_names``. :rtype: bool """ return self._tag == 'conflicting_property_names' def is_too_many_properties(self): """ Check if the union tag is ``too_many_properties``. :rtype: bool """ return self._tag == 'too_many_properties' def is_too_many_templates(self): """ Check if the union tag is ``too_many_templates``. :rtype: bool """ return self._tag == 'too_many_templates' def is_template_attribute_too_large(self): """ Check if the union tag is ``template_attribute_too_large``. :rtype: bool """ return self._tag == 'template_attribute_too_large' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ModifyTemplateError, self)._process_custom_annotations(annotation_type, field_path, processor) ModifyTemplateError_validator = bv.Union(ModifyTemplateError) class OverwritePropertyGroupArg(bb.Struct): """ :ivar file_properties.OverwritePropertyGroupArg.path: A unique identifier for the file or folder. :ivar file_properties.OverwritePropertyGroupArg.property_groups: The property groups "snapshot" updates to force apply. No two groups in the input should refer to the same template. """ __slots__ = [ '_path_value', '_property_groups_value', ] _has_required_fields = True def __init__(self, path=None, property_groups=None): self._path_value = bb.NOT_SET self._property_groups_value = bb.NOT_SET if path is not None: self.path = path if property_groups is not None: self.property_groups = property_groups # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: list of [PropertyGroup] (validator is set below) property_groups = bb.Attribute("property_groups") def _process_custom_annotations(self, annotation_type, field_path, processor): super(OverwritePropertyGroupArg, self)._process_custom_annotations(annotation_type, field_path, processor) OverwritePropertyGroupArg_validator = bv.Struct(OverwritePropertyGroupArg) class PropertiesSearchArg(bb.Struct): """ :ivar file_properties.PropertiesSearchArg.queries: Queries to search. :ivar file_properties.PropertiesSearchArg.template_filter: Filter results to contain only properties associated with these template IDs. """ __slots__ = [ '_queries_value', '_template_filter_value', ] _has_required_fields = True def __init__(self, queries=None, template_filter=None): self._queries_value = bb.NOT_SET self._template_filter_value = bb.NOT_SET if queries is not None: self.queries = queries if template_filter is not None: self.template_filter = template_filter # Instance attribute type: list of [PropertiesSearchQuery] (validator is set below) queries = bb.Attribute("queries") # Instance attribute type: TemplateFilter (validator is set below) template_filter = bb.Attribute("template_filter", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertiesSearchArg, self)._process_custom_annotations(annotation_type, field_path, processor) PropertiesSearchArg_validator = bv.Struct(PropertiesSearchArg) class PropertiesSearchContinueArg(bb.Struct): """ :ivar file_properties.PropertiesSearchContinueArg.cursor: The cursor returned by your last call to :meth:`dropbox.dropbox_client.Dropbox.file_properties_properties_search` or :meth:`dropbox.dropbox_client.Dropbox.file_properties_properties_search_continue`. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertiesSearchContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) PropertiesSearchContinueArg_validator = bv.Struct(PropertiesSearchContinueArg) class PropertiesSearchContinueError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_properties.PropertiesSearchContinueError.reset: Indicates that the cursor has been invalidated. Call :meth:`dropbox.dropbox_client.Dropbox.file_properties_properties_search` to obtain a new cursor. """ _catch_all = 'other' # Attribute is overwritten below the class definition reset = None # Attribute is overwritten below the class definition other = None def is_reset(self): """ Check if the union tag is ``reset``. :rtype: bool """ return self._tag == 'reset' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertiesSearchContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) PropertiesSearchContinueError_validator = bv.Union(PropertiesSearchContinueError) class PropertiesSearchError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def property_group_lookup(cls, val): """ Create an instance of this class set to the ``property_group_lookup`` tag with value ``val``. :param LookUpPropertiesError val: :rtype: PropertiesSearchError """ return cls('property_group_lookup', val) def is_property_group_lookup(self): """ Check if the union tag is ``property_group_lookup``. :rtype: bool """ return self._tag == 'property_group_lookup' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_property_group_lookup(self): """ Only call this if :meth:`is_property_group_lookup` is true. :rtype: LookUpPropertiesError """ if not self.is_property_group_lookup(): raise AttributeError("tag 'property_group_lookup' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertiesSearchError, self)._process_custom_annotations(annotation_type, field_path, processor) PropertiesSearchError_validator = bv.Union(PropertiesSearchError) class PropertiesSearchMatch(bb.Struct): """ :ivar file_properties.PropertiesSearchMatch.id: The ID for the matched file or folder. :ivar file_properties.PropertiesSearchMatch.path: The path for the matched file or folder. :ivar file_properties.PropertiesSearchMatch.is_deleted: Whether the file or folder is deleted. :ivar file_properties.PropertiesSearchMatch.property_groups: List of custom property groups associated with the file. """ __slots__ = [ '_id_value', '_path_value', '_is_deleted_value', '_property_groups_value', ] _has_required_fields = True def __init__(self, id=None, path=None, is_deleted=None, property_groups=None): self._id_value = bb.NOT_SET self._path_value = bb.NOT_SET self._is_deleted_value = bb.NOT_SET self._property_groups_value = bb.NOT_SET if id is not None: self.id = id if path is not None: self.path = path if is_deleted is not None: self.is_deleted = is_deleted if property_groups is not None: self.property_groups = property_groups # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: bool (validator is set below) is_deleted = bb.Attribute("is_deleted") # Instance attribute type: list of [PropertyGroup] (validator is set below) property_groups = bb.Attribute("property_groups") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertiesSearchMatch, self)._process_custom_annotations(annotation_type, field_path, processor) PropertiesSearchMatch_validator = bv.Struct(PropertiesSearchMatch) class PropertiesSearchMode(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str file_properties.PropertiesSearchMode.field_name: Search for a value associated with this field name. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def field_name(cls, val): """ Create an instance of this class set to the ``field_name`` tag with value ``val``. :param str val: :rtype: PropertiesSearchMode """ return cls('field_name', val) def is_field_name(self): """ Check if the union tag is ``field_name``. :rtype: bool """ return self._tag == 'field_name' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_field_name(self): """ Search for a value associated with this field name. Only call this if :meth:`is_field_name` is true. :rtype: str """ if not self.is_field_name(): raise AttributeError("tag 'field_name' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertiesSearchMode, self)._process_custom_annotations(annotation_type, field_path, processor) PropertiesSearchMode_validator = bv.Union(PropertiesSearchMode) class PropertiesSearchQuery(bb.Struct): """ :ivar file_properties.PropertiesSearchQuery.query: The property field value for which to search across templates. :ivar file_properties.PropertiesSearchQuery.mode: The mode with which to perform the search. :ivar file_properties.PropertiesSearchQuery.logical_operator: The logical operator with which to append the query. """ __slots__ = [ '_query_value', '_mode_value', '_logical_operator_value', ] _has_required_fields = True def __init__(self, query=None, mode=None, logical_operator=None): self._query_value = bb.NOT_SET self._mode_value = bb.NOT_SET self._logical_operator_value = bb.NOT_SET if query is not None: self.query = query if mode is not None: self.mode = mode if logical_operator is not None: self.logical_operator = logical_operator # Instance attribute type: str (validator is set below) query = bb.Attribute("query") # Instance attribute type: PropertiesSearchMode (validator is set below) mode = bb.Attribute("mode", user_defined=True) # Instance attribute type: LogicalOperator (validator is set below) logical_operator = bb.Attribute("logical_operator", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertiesSearchQuery, self)._process_custom_annotations(annotation_type, field_path, processor) PropertiesSearchQuery_validator = bv.Struct(PropertiesSearchQuery) class PropertiesSearchResult(bb.Struct): """ :ivar file_properties.PropertiesSearchResult.matches: A list (possibly empty) of matches for the query. :ivar file_properties.PropertiesSearchResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.file_properties_properties_search_continue` to continue to receive search results. Cursor will be null when there are no more results. """ __slots__ = [ '_matches_value', '_cursor_value', ] _has_required_fields = True def __init__(self, matches=None, cursor=None): self._matches_value = bb.NOT_SET self._cursor_value = bb.NOT_SET if matches is not None: self.matches = matches if cursor is not None: self.cursor = cursor # Instance attribute type: list of [PropertiesSearchMatch] (validator is set below) matches = bb.Attribute("matches") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertiesSearchResult, self)._process_custom_annotations(annotation_type, field_path, processor) PropertiesSearchResult_validator = bv.Struct(PropertiesSearchResult) class PropertyField(bb.Struct): """ Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a :class:`PropertyGroup`. :ivar file_properties.PropertyField.name: Key of the property field associated with a file and template. Keys can be up to 256 bytes. :ivar file_properties.PropertyField.value: Value of the property field associated with a file and template. Values can be up to 1024 bytes. """ __slots__ = [ '_name_value', '_value_value', ] _has_required_fields = True def __init__(self, name=None, value=None): self._name_value = bb.NOT_SET self._value_value = bb.NOT_SET if name is not None: self.name = name if value is not None: self.value = value # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) value = bb.Attribute("value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertyField, self)._process_custom_annotations(annotation_type, field_path, processor) PropertyField_validator = bv.Struct(PropertyField) class PropertyFieldTemplate(bb.Struct): """ Defines how a single property field may be structured. Used exclusively by :class:`PropertyGroupTemplate`. :ivar file_properties.PropertyFieldTemplate.name: Key of the property field being described. Property field keys can be up to 256 bytes. :ivar file_properties.PropertyFieldTemplate.description: Description of the property field. Property field descriptions can be up to 1024 bytes. :ivar file_properties.PropertyFieldTemplate.type: Data type of the value of this property field. This type will be enforced upon property creation and modifications. """ __slots__ = [ '_name_value', '_description_value', '_type_value', ] _has_required_fields = True def __init__(self, name=None, description=None, type=None): self._name_value = bb.NOT_SET self._description_value = bb.NOT_SET self._type_value = bb.NOT_SET if name is not None: self.name = name if description is not None: self.description = description if type is not None: self.type = type # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) description = bb.Attribute("description") # Instance attribute type: PropertyType (validator is set below) type = bb.Attribute("type", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertyFieldTemplate, self)._process_custom_annotations(annotation_type, field_path, processor) PropertyFieldTemplate_validator = bv.Struct(PropertyFieldTemplate) class PropertyGroup(bb.Struct): """ A subset of the property fields described by the corresponding :class:`PropertyGroupTemplate`. Properties are always added to a Dropbox file as a :class:`PropertyGroup`. The possible key names and value types in this group are defined by the corresponding :class:`PropertyGroupTemplate`. :ivar file_properties.PropertyGroup.template_id: A unique identifier for the associated template. :ivar file_properties.PropertyGroup.fields: The actual properties associated with the template. There can be up to 32 property types per template. """ __slots__ = [ '_template_id_value', '_fields_value', ] _has_required_fields = True def __init__(self, template_id=None, fields=None): self._template_id_value = bb.NOT_SET self._fields_value = bb.NOT_SET if template_id is not None: self.template_id = template_id if fields is not None: self.fields = fields # Instance attribute type: str (validator is set below) template_id = bb.Attribute("template_id") # Instance attribute type: list of [PropertyField] (validator is set below) fields = bb.Attribute("fields") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertyGroup, self)._process_custom_annotations(annotation_type, field_path, processor) PropertyGroup_validator = bv.Struct(PropertyGroup) class PropertyGroupUpdate(bb.Struct): """ :ivar file_properties.PropertyGroupUpdate.template_id: A unique identifier for a property template. :ivar file_properties.PropertyGroupUpdate.add_or_update_fields: Property fields to update. If the property field already exists, it is updated. If the property field doesn't exist, the property group is added. :ivar file_properties.PropertyGroupUpdate.remove_fields: Property fields to remove (by name), provided they exist. """ __slots__ = [ '_template_id_value', '_add_or_update_fields_value', '_remove_fields_value', ] _has_required_fields = True def __init__(self, template_id=None, add_or_update_fields=None, remove_fields=None): self._template_id_value = bb.NOT_SET self._add_or_update_fields_value = bb.NOT_SET self._remove_fields_value = bb.NOT_SET if template_id is not None: self.template_id = template_id if add_or_update_fields is not None: self.add_or_update_fields = add_or_update_fields if remove_fields is not None: self.remove_fields = remove_fields # Instance attribute type: str (validator is set below) template_id = bb.Attribute("template_id") # Instance attribute type: list of [PropertyField] (validator is set below) add_or_update_fields = bb.Attribute("add_or_update_fields", nullable=True) # Instance attribute type: list of [str] (validator is set below) remove_fields = bb.Attribute("remove_fields", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertyGroupUpdate, self)._process_custom_annotations(annotation_type, field_path, processor) PropertyGroupUpdate_validator = bv.Struct(PropertyGroupUpdate) class PropertyType(bb.Union): """ Data type of the given property field added. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_properties.PropertyType.string: The associated property field will be of type string. Unicode is supported. """ _catch_all = 'other' # Attribute is overwritten below the class definition string = None # Attribute is overwritten below the class definition other = None def is_string(self): """ Check if the union tag is ``string``. :rtype: bool """ return self._tag == 'string' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PropertyType, self)._process_custom_annotations(annotation_type, field_path, processor) PropertyType_validator = bv.Union(PropertyType) class RemovePropertiesArg(bb.Struct): """ :ivar file_properties.RemovePropertiesArg.path: A unique identifier for the file or folder. :ivar file_properties.RemovePropertiesArg.property_template_ids: A list of identifiers for a template created by :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_user` or :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_team`. """ __slots__ = [ '_path_value', '_property_template_ids_value', ] _has_required_fields = True def __init__(self, path=None, property_template_ids=None): self._path_value = bb.NOT_SET self._property_template_ids_value = bb.NOT_SET if path is not None: self.path = path if property_template_ids is not None: self.property_template_ids = property_template_ids # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: list of [str] (validator is set below) property_template_ids = bb.Attribute("property_template_ids") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemovePropertiesArg, self)._process_custom_annotations(annotation_type, field_path, processor) RemovePropertiesArg_validator = bv.Struct(RemovePropertiesArg) class RemovePropertiesError(PropertiesError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ @classmethod def property_group_lookup(cls, val): """ Create an instance of this class set to the ``property_group_lookup`` tag with value ``val``. :param LookUpPropertiesError val: :rtype: RemovePropertiesError """ return cls('property_group_lookup', val) def is_property_group_lookup(self): """ Check if the union tag is ``property_group_lookup``. :rtype: bool """ return self._tag == 'property_group_lookup' def get_property_group_lookup(self): """ Only call this if :meth:`is_property_group_lookup` is true. :rtype: LookUpPropertiesError """ if not self.is_property_group_lookup(): raise AttributeError("tag 'property_group_lookup' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemovePropertiesError, self)._process_custom_annotations(annotation_type, field_path, processor) RemovePropertiesError_validator = bv.Union(RemovePropertiesError) class RemoveTemplateArg(bb.Struct): """ :ivar file_properties.RemoveTemplateArg.template_id: An identifier for a template created by :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_user` or :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_team`. """ __slots__ = [ '_template_id_value', ] _has_required_fields = True def __init__(self, template_id=None): self._template_id_value = bb.NOT_SET if template_id is not None: self.template_id = template_id # Instance attribute type: str (validator is set below) template_id = bb.Attribute("template_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemoveTemplateArg, self)._process_custom_annotations(annotation_type, field_path, processor) RemoveTemplateArg_validator = bv.Struct(RemoveTemplateArg) class TemplateFilterBase(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar list of [str] file_properties.TemplateFilterBase.filter_some: Only templates with an ID in the supplied list will be returned (a subset of templates will be returned). """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def filter_some(cls, val): """ Create an instance of this class set to the ``filter_some`` tag with value ``val``. :param list of [str] val: :rtype: TemplateFilterBase """ return cls('filter_some', val) def is_filter_some(self): """ Check if the union tag is ``filter_some``. :rtype: bool """ return self._tag == 'filter_some' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_filter_some(self): """ Only templates with an ID in the supplied list will be returned (a subset of templates will be returned). Only call this if :meth:`is_filter_some` is true. :rtype: list of [str] """ if not self.is_filter_some(): raise AttributeError("tag 'filter_some' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TemplateFilterBase, self)._process_custom_annotations(annotation_type, field_path, processor) TemplateFilterBase_validator = bv.Union(TemplateFilterBase) class TemplateFilter(TemplateFilterBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_properties.TemplateFilter.filter_none: No templates will be filtered from the result (all templates will be returned). """ # Attribute is overwritten below the class definition filter_none = None def is_filter_none(self): """ Check if the union tag is ``filter_none``. :rtype: bool """ return self._tag == 'filter_none' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TemplateFilter, self)._process_custom_annotations(annotation_type, field_path, processor) TemplateFilter_validator = bv.Union(TemplateFilter) class TemplateOwnerType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_properties.TemplateOwnerType.user: Template will be associated with a user. :ivar file_properties.TemplateOwnerType.team: Template will be associated with a team. """ _catch_all = 'other' # Attribute is overwritten below the class definition user = None # Attribute is overwritten below the class definition team = None # Attribute is overwritten below the class definition other = None def is_user(self): """ Check if the union tag is ``user``. :rtype: bool """ return self._tag == 'user' def is_team(self): """ Check if the union tag is ``team``. :rtype: bool """ return self._tag == 'team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TemplateOwnerType, self)._process_custom_annotations(annotation_type, field_path, processor) TemplateOwnerType_validator = bv.Union(TemplateOwnerType) class UpdatePropertiesArg(bb.Struct): """ :ivar file_properties.UpdatePropertiesArg.path: A unique identifier for the file or folder. :ivar file_properties.UpdatePropertiesArg.update_property_groups: The property groups "delta" updates to apply. """ __slots__ = [ '_path_value', '_update_property_groups_value', ] _has_required_fields = True def __init__(self, path=None, update_property_groups=None): self._path_value = bb.NOT_SET self._update_property_groups_value = bb.NOT_SET if path is not None: self.path = path if update_property_groups is not None: self.update_property_groups = update_property_groups # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: list of [PropertyGroupUpdate] (validator is set below) update_property_groups = bb.Attribute("update_property_groups") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UpdatePropertiesArg, self)._process_custom_annotations(annotation_type, field_path, processor) UpdatePropertiesArg_validator = bv.Struct(UpdatePropertiesArg) class UpdatePropertiesError(InvalidPropertyGroupError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ @classmethod def property_group_lookup(cls, val): """ Create an instance of this class set to the ``property_group_lookup`` tag with value ``val``. :param LookUpPropertiesError val: :rtype: UpdatePropertiesError """ return cls('property_group_lookup', val) def is_property_group_lookup(self): """ Check if the union tag is ``property_group_lookup``. :rtype: bool """ return self._tag == 'property_group_lookup' def get_property_group_lookup(self): """ Only call this if :meth:`is_property_group_lookup` is true. :rtype: LookUpPropertiesError """ if not self.is_property_group_lookup(): raise AttributeError("tag 'property_group_lookup' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UpdatePropertiesError, self)._process_custom_annotations(annotation_type, field_path, processor) UpdatePropertiesError_validator = bv.Union(UpdatePropertiesError) class UpdateTemplateArg(bb.Struct): """ :ivar file_properties.UpdateTemplateArg.template_id: An identifier for template added by See :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_user` or :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_team`. :ivar file_properties.UpdateTemplateArg.name: A display name for the template. template names can be up to 256 bytes. :ivar file_properties.UpdateTemplateArg.description: Description for the new template. Template descriptions can be up to 1024 bytes. :ivar file_properties.UpdateTemplateArg.add_fields: Property field templates to be added to the group template. There can be up to 32 properties in a single template. """ __slots__ = [ '_template_id_value', '_name_value', '_description_value', '_add_fields_value', ] _has_required_fields = True def __init__(self, template_id=None, name=None, description=None, add_fields=None): self._template_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._description_value = bb.NOT_SET self._add_fields_value = bb.NOT_SET if template_id is not None: self.template_id = template_id if name is not None: self.name = name if description is not None: self.description = description if add_fields is not None: self.add_fields = add_fields # Instance attribute type: str (validator is set below) template_id = bb.Attribute("template_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name", nullable=True) # Instance attribute type: str (validator is set below) description = bb.Attribute("description", nullable=True) # Instance attribute type: list of [PropertyFieldTemplate] (validator is set below) add_fields = bb.Attribute("add_fields", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UpdateTemplateArg, self)._process_custom_annotations(annotation_type, field_path, processor) UpdateTemplateArg_validator = bv.Struct(UpdateTemplateArg) class UpdateTemplateResult(bb.Struct): """ :ivar file_properties.UpdateTemplateResult.template_id: An identifier for template added by route See :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_user` or :meth:`dropbox.dropbox_client.Dropbox.file_properties_templates_add_for_team`. """ __slots__ = [ '_template_id_value', ] _has_required_fields = True def __init__(self, template_id=None): self._template_id_value = bb.NOT_SET if template_id is not None: self.template_id = template_id # Instance attribute type: str (validator is set below) template_id = bb.Attribute("template_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UpdateTemplateResult, self)._process_custom_annotations(annotation_type, field_path, processor) UpdateTemplateResult_validator = bv.Struct(UpdateTemplateResult) Id_validator = bv.String(min_length=1) PathOrId_validator = bv.String(pattern='/(.|[\\r\\n])*|id:.*|(ns:[0-9]+(/.*)?)') PropertiesSearchCursor_validator = bv.String(min_length=1) TemplateId_validator = bv.String(min_length=1, pattern='(/|ptid:).*') AddPropertiesArg.path.validator = PathOrId_validator AddPropertiesArg.property_groups.validator = bv.List(PropertyGroup_validator) AddPropertiesArg._all_field_names_ = set([ 'path', 'property_groups', ]) AddPropertiesArg._all_fields_ = [ ('path', AddPropertiesArg.path.validator), ('property_groups', AddPropertiesArg.property_groups.validator), ] TemplateError._template_not_found_validator = TemplateId_validator TemplateError._restricted_content_validator = bv.Void() TemplateError._other_validator = bv.Void() TemplateError._tagmap = { 'template_not_found': TemplateError._template_not_found_validator, 'restricted_content': TemplateError._restricted_content_validator, 'other': TemplateError._other_validator, } TemplateError.restricted_content = TemplateError('restricted_content') TemplateError.other = TemplateError('other') PropertiesError._path_validator = LookupError_validator PropertiesError._unsupported_folder_validator = bv.Void() PropertiesError._tagmap = { 'path': PropertiesError._path_validator, 'unsupported_folder': PropertiesError._unsupported_folder_validator, } PropertiesError._tagmap.update(TemplateError._tagmap) PropertiesError.unsupported_folder = PropertiesError('unsupported_folder') InvalidPropertyGroupError._property_field_too_large_validator = bv.Void() InvalidPropertyGroupError._does_not_fit_template_validator = bv.Void() InvalidPropertyGroupError._duplicate_property_groups_validator = bv.Void() InvalidPropertyGroupError._tagmap = { 'property_field_too_large': InvalidPropertyGroupError._property_field_too_large_validator, 'does_not_fit_template': InvalidPropertyGroupError._does_not_fit_template_validator, 'duplicate_property_groups': InvalidPropertyGroupError._duplicate_property_groups_validator, } InvalidPropertyGroupError._tagmap.update(PropertiesError._tagmap) InvalidPropertyGroupError.property_field_too_large = InvalidPropertyGroupError('property_field_too_large') InvalidPropertyGroupError.does_not_fit_template = InvalidPropertyGroupError('does_not_fit_template') InvalidPropertyGroupError.duplicate_property_groups = InvalidPropertyGroupError('duplicate_property_groups') AddPropertiesError._property_group_already_exists_validator = bv.Void() AddPropertiesError._tagmap = { 'property_group_already_exists': AddPropertiesError._property_group_already_exists_validator, } AddPropertiesError._tagmap.update(InvalidPropertyGroupError._tagmap) AddPropertiesError.property_group_already_exists = AddPropertiesError('property_group_already_exists') PropertyGroupTemplate.name.validator = bv.String() PropertyGroupTemplate.description.validator = bv.String() PropertyGroupTemplate.fields.validator = bv.List(PropertyFieldTemplate_validator) PropertyGroupTemplate._all_field_names_ = set([ 'name', 'description', 'fields', ]) PropertyGroupTemplate._all_fields_ = [ ('name', PropertyGroupTemplate.name.validator), ('description', PropertyGroupTemplate.description.validator), ('fields', PropertyGroupTemplate.fields.validator), ] AddTemplateArg._all_field_names_ = PropertyGroupTemplate._all_field_names_.union(set([])) AddTemplateArg._all_fields_ = PropertyGroupTemplate._all_fields_ + [] AddTemplateResult.template_id.validator = TemplateId_validator AddTemplateResult._all_field_names_ = set(['template_id']) AddTemplateResult._all_fields_ = [('template_id', AddTemplateResult.template_id.validator)] GetTemplateArg.template_id.validator = TemplateId_validator GetTemplateArg._all_field_names_ = set(['template_id']) GetTemplateArg._all_fields_ = [('template_id', GetTemplateArg.template_id.validator)] GetTemplateResult._all_field_names_ = PropertyGroupTemplate._all_field_names_.union(set([])) GetTemplateResult._all_fields_ = PropertyGroupTemplate._all_fields_ + [] ListTemplateResult.template_ids.validator = bv.List(TemplateId_validator) ListTemplateResult._all_field_names_ = set(['template_ids']) ListTemplateResult._all_fields_ = [('template_ids', ListTemplateResult.template_ids.validator)] LogicalOperator._or_operator_validator = bv.Void() LogicalOperator._other_validator = bv.Void() LogicalOperator._tagmap = { 'or_operator': LogicalOperator._or_operator_validator, 'other': LogicalOperator._other_validator, } LogicalOperator.or_operator = LogicalOperator('or_operator') LogicalOperator.other = LogicalOperator('other') LookUpPropertiesError._property_group_not_found_validator = bv.Void() LookUpPropertiesError._other_validator = bv.Void() LookUpPropertiesError._tagmap = { 'property_group_not_found': LookUpPropertiesError._property_group_not_found_validator, 'other': LookUpPropertiesError._other_validator, } LookUpPropertiesError.property_group_not_found = LookUpPropertiesError('property_group_not_found') LookUpPropertiesError.other = LookUpPropertiesError('other') LookupError._malformed_path_validator = bv.String() LookupError._not_found_validator = bv.Void() LookupError._not_file_validator = bv.Void() LookupError._not_folder_validator = bv.Void() LookupError._restricted_content_validator = bv.Void() LookupError._other_validator = bv.Void() LookupError._tagmap = { 'malformed_path': LookupError._malformed_path_validator, 'not_found': LookupError._not_found_validator, 'not_file': LookupError._not_file_validator, 'not_folder': LookupError._not_folder_validator, 'restricted_content': LookupError._restricted_content_validator, 'other': LookupError._other_validator, } LookupError.not_found = LookupError('not_found') LookupError.not_file = LookupError('not_file') LookupError.not_folder = LookupError('not_folder') LookupError.restricted_content = LookupError('restricted_content') LookupError.other = LookupError('other') ModifyTemplateError._conflicting_property_names_validator = bv.Void() ModifyTemplateError._too_many_properties_validator = bv.Void() ModifyTemplateError._too_many_templates_validator = bv.Void() ModifyTemplateError._template_attribute_too_large_validator = bv.Void() ModifyTemplateError._tagmap = { 'conflicting_property_names': ModifyTemplateError._conflicting_property_names_validator, 'too_many_properties': ModifyTemplateError._too_many_properties_validator, 'too_many_templates': ModifyTemplateError._too_many_templates_validator, 'template_attribute_too_large': ModifyTemplateError._template_attribute_too_large_validator, } ModifyTemplateError._tagmap.update(TemplateError._tagmap) ModifyTemplateError.conflicting_property_names = ModifyTemplateError('conflicting_property_names') ModifyTemplateError.too_many_properties = ModifyTemplateError('too_many_properties') ModifyTemplateError.too_many_templates = ModifyTemplateError('too_many_templates') ModifyTemplateError.template_attribute_too_large = ModifyTemplateError('template_attribute_too_large') OverwritePropertyGroupArg.path.validator = PathOrId_validator OverwritePropertyGroupArg.property_groups.validator = bv.List(PropertyGroup_validator, min_items=1) OverwritePropertyGroupArg._all_field_names_ = set([ 'path', 'property_groups', ]) OverwritePropertyGroupArg._all_fields_ = [ ('path', OverwritePropertyGroupArg.path.validator), ('property_groups', OverwritePropertyGroupArg.property_groups.validator), ] PropertiesSearchArg.queries.validator = bv.List(PropertiesSearchQuery_validator, min_items=1) PropertiesSearchArg.template_filter.validator = TemplateFilter_validator PropertiesSearchArg._all_field_names_ = set([ 'queries', 'template_filter', ]) PropertiesSearchArg._all_fields_ = [ ('queries', PropertiesSearchArg.queries.validator), ('template_filter', PropertiesSearchArg.template_filter.validator), ] PropertiesSearchContinueArg.cursor.validator = PropertiesSearchCursor_validator PropertiesSearchContinueArg._all_field_names_ = set(['cursor']) PropertiesSearchContinueArg._all_fields_ = [('cursor', PropertiesSearchContinueArg.cursor.validator)] PropertiesSearchContinueError._reset_validator = bv.Void() PropertiesSearchContinueError._other_validator = bv.Void() PropertiesSearchContinueError._tagmap = { 'reset': PropertiesSearchContinueError._reset_validator, 'other': PropertiesSearchContinueError._other_validator, } PropertiesSearchContinueError.reset = PropertiesSearchContinueError('reset') PropertiesSearchContinueError.other = PropertiesSearchContinueError('other') PropertiesSearchError._property_group_lookup_validator = LookUpPropertiesError_validator PropertiesSearchError._other_validator = bv.Void() PropertiesSearchError._tagmap = { 'property_group_lookup': PropertiesSearchError._property_group_lookup_validator, 'other': PropertiesSearchError._other_validator, } PropertiesSearchError.other = PropertiesSearchError('other') PropertiesSearchMatch.id.validator = Id_validator PropertiesSearchMatch.path.validator = bv.String() PropertiesSearchMatch.is_deleted.validator = bv.Boolean() PropertiesSearchMatch.property_groups.validator = bv.List(PropertyGroup_validator) PropertiesSearchMatch._all_field_names_ = set([ 'id', 'path', 'is_deleted', 'property_groups', ]) PropertiesSearchMatch._all_fields_ = [ ('id', PropertiesSearchMatch.id.validator), ('path', PropertiesSearchMatch.path.validator), ('is_deleted', PropertiesSearchMatch.is_deleted.validator), ('property_groups', PropertiesSearchMatch.property_groups.validator), ] PropertiesSearchMode._field_name_validator = bv.String() PropertiesSearchMode._other_validator = bv.Void() PropertiesSearchMode._tagmap = { 'field_name': PropertiesSearchMode._field_name_validator, 'other': PropertiesSearchMode._other_validator, } PropertiesSearchMode.other = PropertiesSearchMode('other') PropertiesSearchQuery.query.validator = bv.String() PropertiesSearchQuery.mode.validator = PropertiesSearchMode_validator PropertiesSearchQuery.logical_operator.validator = LogicalOperator_validator PropertiesSearchQuery._all_field_names_ = set([ 'query', 'mode', 'logical_operator', ]) PropertiesSearchQuery._all_fields_ = [ ('query', PropertiesSearchQuery.query.validator), ('mode', PropertiesSearchQuery.mode.validator), ('logical_operator', PropertiesSearchQuery.logical_operator.validator), ] PropertiesSearchResult.matches.validator = bv.List(PropertiesSearchMatch_validator) PropertiesSearchResult.cursor.validator = bv.Nullable(PropertiesSearchCursor_validator) PropertiesSearchResult._all_field_names_ = set([ 'matches', 'cursor', ]) PropertiesSearchResult._all_fields_ = [ ('matches', PropertiesSearchResult.matches.validator), ('cursor', PropertiesSearchResult.cursor.validator), ] PropertyField.name.validator = bv.String() PropertyField.value.validator = bv.String() PropertyField._all_field_names_ = set([ 'name', 'value', ]) PropertyField._all_fields_ = [ ('name', PropertyField.name.validator), ('value', PropertyField.value.validator), ] PropertyFieldTemplate.name.validator = bv.String() PropertyFieldTemplate.description.validator = bv.String() PropertyFieldTemplate.type.validator = PropertyType_validator PropertyFieldTemplate._all_field_names_ = set([ 'name', 'description', 'type', ]) PropertyFieldTemplate._all_fields_ = [ ('name', PropertyFieldTemplate.name.validator), ('description', PropertyFieldTemplate.description.validator), ('type', PropertyFieldTemplate.type.validator), ] PropertyGroup.template_id.validator = TemplateId_validator PropertyGroup.fields.validator = bv.List(PropertyField_validator) PropertyGroup._all_field_names_ = set([ 'template_id', 'fields', ]) PropertyGroup._all_fields_ = [ ('template_id', PropertyGroup.template_id.validator), ('fields', PropertyGroup.fields.validator), ] PropertyGroupUpdate.template_id.validator = TemplateId_validator PropertyGroupUpdate.add_or_update_fields.validator = bv.Nullable(bv.List(PropertyField_validator)) PropertyGroupUpdate.remove_fields.validator = bv.Nullable(bv.List(bv.String())) PropertyGroupUpdate._all_field_names_ = set([ 'template_id', 'add_or_update_fields', 'remove_fields', ]) PropertyGroupUpdate._all_fields_ = [ ('template_id', PropertyGroupUpdate.template_id.validator), ('add_or_update_fields', PropertyGroupUpdate.add_or_update_fields.validator), ('remove_fields', PropertyGroupUpdate.remove_fields.validator), ] PropertyType._string_validator = bv.Void() PropertyType._other_validator = bv.Void() PropertyType._tagmap = { 'string': PropertyType._string_validator, 'other': PropertyType._other_validator, } PropertyType.string = PropertyType('string') PropertyType.other = PropertyType('other') RemovePropertiesArg.path.validator = PathOrId_validator RemovePropertiesArg.property_template_ids.validator = bv.List(TemplateId_validator) RemovePropertiesArg._all_field_names_ = set([ 'path', 'property_template_ids', ]) RemovePropertiesArg._all_fields_ = [ ('path', RemovePropertiesArg.path.validator), ('property_template_ids', RemovePropertiesArg.property_template_ids.validator), ] RemovePropertiesError._property_group_lookup_validator = LookUpPropertiesError_validator RemovePropertiesError._tagmap = { 'property_group_lookup': RemovePropertiesError._property_group_lookup_validator, } RemovePropertiesError._tagmap.update(PropertiesError._tagmap) RemoveTemplateArg.template_id.validator = TemplateId_validator RemoveTemplateArg._all_field_names_ = set(['template_id']) RemoveTemplateArg._all_fields_ = [('template_id', RemoveTemplateArg.template_id.validator)] TemplateFilterBase._filter_some_validator = bv.List(TemplateId_validator, min_items=1) TemplateFilterBase._other_validator = bv.Void() TemplateFilterBase._tagmap = { 'filter_some': TemplateFilterBase._filter_some_validator, 'other': TemplateFilterBase._other_validator, } TemplateFilterBase.other = TemplateFilterBase('other') TemplateFilter._filter_none_validator = bv.Void() TemplateFilter._tagmap = { 'filter_none': TemplateFilter._filter_none_validator, } TemplateFilter._tagmap.update(TemplateFilterBase._tagmap) TemplateFilter.filter_none = TemplateFilter('filter_none') TemplateOwnerType._user_validator = bv.Void() TemplateOwnerType._team_validator = bv.Void() TemplateOwnerType._other_validator = bv.Void() TemplateOwnerType._tagmap = { 'user': TemplateOwnerType._user_validator, 'team': TemplateOwnerType._team_validator, 'other': TemplateOwnerType._other_validator, } TemplateOwnerType.user = TemplateOwnerType('user') TemplateOwnerType.team = TemplateOwnerType('team') TemplateOwnerType.other = TemplateOwnerType('other') UpdatePropertiesArg.path.validator = PathOrId_validator UpdatePropertiesArg.update_property_groups.validator = bv.List(PropertyGroupUpdate_validator) UpdatePropertiesArg._all_field_names_ = set([ 'path', 'update_property_groups', ]) UpdatePropertiesArg._all_fields_ = [ ('path', UpdatePropertiesArg.path.validator), ('update_property_groups', UpdatePropertiesArg.update_property_groups.validator), ] UpdatePropertiesError._property_group_lookup_validator = LookUpPropertiesError_validator UpdatePropertiesError._tagmap = { 'property_group_lookup': UpdatePropertiesError._property_group_lookup_validator, } UpdatePropertiesError._tagmap.update(InvalidPropertyGroupError._tagmap) UpdateTemplateArg.template_id.validator = TemplateId_validator UpdateTemplateArg.name.validator = bv.Nullable(bv.String()) UpdateTemplateArg.description.validator = bv.Nullable(bv.String()) UpdateTemplateArg.add_fields.validator = bv.Nullable(bv.List(PropertyFieldTemplate_validator)) UpdateTemplateArg._all_field_names_ = set([ 'template_id', 'name', 'description', 'add_fields', ]) UpdateTemplateArg._all_fields_ = [ ('template_id', UpdateTemplateArg.template_id.validator), ('name', UpdateTemplateArg.name.validator), ('description', UpdateTemplateArg.description.validator), ('add_fields', UpdateTemplateArg.add_fields.validator), ] UpdateTemplateResult.template_id.validator = TemplateId_validator UpdateTemplateResult._all_field_names_ = set(['template_id']) UpdateTemplateResult._all_fields_ = [('template_id', UpdateTemplateResult.template_id.validator)] PropertiesSearchArg.template_filter.default = TemplateFilter.filter_none PropertiesSearchQuery.logical_operator.default = LogicalOperator.or_operator properties_add = bb.Route( 'properties/add', 1, False, AddPropertiesArg_validator, bv.Void(), AddPropertiesError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) properties_overwrite = bb.Route( 'properties/overwrite', 1, False, OverwritePropertyGroupArg_validator, bv.Void(), InvalidPropertyGroupError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) properties_remove = bb.Route( 'properties/remove', 1, False, RemovePropertiesArg_validator, bv.Void(), RemovePropertiesError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) properties_search = bb.Route( 'properties/search', 1, False, PropertiesSearchArg_validator, PropertiesSearchResult_validator, PropertiesSearchError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) properties_search_continue = bb.Route( 'properties/search/continue', 1, False, PropertiesSearchContinueArg_validator, PropertiesSearchResult_validator, PropertiesSearchContinueError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) properties_update = bb.Route( 'properties/update', 1, False, UpdatePropertiesArg_validator, bv.Void(), UpdatePropertiesError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) templates_add_for_team = bb.Route( 'templates/add_for_team', 1, False, AddTemplateArg_validator, AddTemplateResult_validator, ModifyTemplateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) templates_add_for_user = bb.Route( 'templates/add_for_user', 1, False, AddTemplateArg_validator, AddTemplateResult_validator, ModifyTemplateError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) templates_get_for_team = bb.Route( 'templates/get_for_team', 1, False, GetTemplateArg_validator, GetTemplateResult_validator, TemplateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) templates_get_for_user = bb.Route( 'templates/get_for_user', 1, False, GetTemplateArg_validator, GetTemplateResult_validator, TemplateError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) templates_list_for_team = bb.Route( 'templates/list_for_team', 1, False, bv.Void(), ListTemplateResult_validator, TemplateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) templates_list_for_user = bb.Route( 'templates/list_for_user', 1, False, bv.Void(), ListTemplateResult_validator, TemplateError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) templates_remove_for_team = bb.Route( 'templates/remove_for_team', 1, False, RemoveTemplateArg_validator, bv.Void(), TemplateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) templates_remove_for_user = bb.Route( 'templates/remove_for_user', 1, False, RemoveTemplateArg_validator, bv.Void(), TemplateError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) templates_update_for_team = bb.Route( 'templates/update_for_team', 1, False, UpdateTemplateArg_validator, UpdateTemplateResult_validator, ModifyTemplateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) templates_update_for_user = bb.Route( 'templates/update_for_user', 1, False, UpdateTemplateArg_validator, UpdateTemplateResult_validator, ModifyTemplateError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'properties/add': properties_add, 'properties/overwrite': properties_overwrite, 'properties/remove': properties_remove, 'properties/search': properties_search, 'properties/search/continue': properties_search_continue, 'properties/update': properties_update, 'templates/add_for_team': templates_add_for_team, 'templates/add_for_user': templates_add_for_user, 'templates/get_for_team': templates_get_for_team, 'templates/get_for_user': templates_get_for_user, 'templates/list_for_team': templates_list_for_team, 'templates/list_for_user': templates_list_for_user, 'templates/remove_for_team': templates_remove_for_team, 'templates/remove_for_user': templates_remove_for_user, 'templates/update_for_team': templates_update_for_team, 'templates/update_for_user': templates_update_for_user, } dropbox-sdk-python-12.0.2/dropbox/file_requests.py000066400000000000000000001370401462737130500222650ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file """ This namespace contains endpoints and data types for file request operations. """ from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv from dropbox import common from dropbox import files class GeneralFileRequestsError(bb.Union): """ There is an error accessing the file requests functionality. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_requests.GeneralFileRequestsError.disabled_for_team: This user's Dropbox Business team doesn't allow file requests. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled_for_team = None # Attribute is overwritten below the class definition other = None def is_disabled_for_team(self): """ Check if the union tag is ``disabled_for_team``. :rtype: bool """ return self._tag == 'disabled_for_team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GeneralFileRequestsError, self)._process_custom_annotations(annotation_type, field_path, processor) GeneralFileRequestsError_validator = bv.Union(GeneralFileRequestsError) class CountFileRequestsError(GeneralFileRequestsError): """ There was an error counting the file requests. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ def _process_custom_annotations(self, annotation_type, field_path, processor): super(CountFileRequestsError, self)._process_custom_annotations(annotation_type, field_path, processor) CountFileRequestsError_validator = bv.Union(CountFileRequestsError) class CountFileRequestsResult(bb.Struct): """ Result for :meth:`dropbox.dropbox_client.Dropbox.file_requests_count`. :ivar file_requests.CountFileRequestsResult.file_request_count: The number file requests owner by this user. """ __slots__ = [ '_file_request_count_value', ] _has_required_fields = True def __init__(self, file_request_count=None): self._file_request_count_value = bb.NOT_SET if file_request_count is not None: self.file_request_count = file_request_count # Instance attribute type: int (validator is set below) file_request_count = bb.Attribute("file_request_count") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CountFileRequestsResult, self)._process_custom_annotations(annotation_type, field_path, processor) CountFileRequestsResult_validator = bv.Struct(CountFileRequestsResult) class CreateFileRequestArgs(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.file_requests_create`. :ivar file_requests.CreateFileRequestArgs.title: The title of the file request. Must not be empty. :ivar file_requests.CreateFileRequestArgs.destination: The path of the folder in the Dropbox where uploaded files will be sent. For apps with the app folder permission, this will be relative to the app folder. :ivar file_requests.CreateFileRequestArgs.deadline: The deadline for the file request. Deadlines can only be set by Professional and Business accounts. :ivar file_requests.CreateFileRequestArgs.open: Whether or not the file request should be open. If the file request is closed, it will not accept any file submissions, but it can be opened later. :ivar file_requests.CreateFileRequestArgs.description: A description of the file request. """ __slots__ = [ '_title_value', '_destination_value', '_deadline_value', '_open_value', '_description_value', ] _has_required_fields = True def __init__(self, title=None, destination=None, deadline=None, open=None, description=None): self._title_value = bb.NOT_SET self._destination_value = bb.NOT_SET self._deadline_value = bb.NOT_SET self._open_value = bb.NOT_SET self._description_value = bb.NOT_SET if title is not None: self.title = title if destination is not None: self.destination = destination if deadline is not None: self.deadline = deadline if open is not None: self.open = open if description is not None: self.description = description # Instance attribute type: str (validator is set below) title = bb.Attribute("title") # Instance attribute type: str (validator is set below) destination = bb.Attribute("destination") # Instance attribute type: FileRequestDeadline (validator is set below) deadline = bb.Attribute("deadline", nullable=True, user_defined=True) # Instance attribute type: bool (validator is set below) open = bb.Attribute("open") # Instance attribute type: str (validator is set below) description = bb.Attribute("description", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFileRequestArgs, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFileRequestArgs_validator = bv.Struct(CreateFileRequestArgs) class FileRequestError(GeneralFileRequestsError): """ There is an error with the file request. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_requests.FileRequestError.not_found: This file request ID was not found. :ivar file_requests.FileRequestError.not_a_folder: The specified path is not a folder. :ivar file_requests.FileRequestError.app_lacks_access: This file request is not accessible to this app. Apps with the app folder permission can only access file requests in their app folder. :ivar file_requests.FileRequestError.no_permission: This user doesn't have permission to access or modify this file request. :ivar file_requests.FileRequestError.email_unverified: This user's email address is not verified. File requests are only available on accounts with a verified email address. Users can verify their email address `here `_. :ivar file_requests.FileRequestError.validation_error: There was an error validating the request. For example, the title was invalid, or there were disallowed characters in the destination path. """ # Attribute is overwritten below the class definition not_found = None # Attribute is overwritten below the class definition not_a_folder = None # Attribute is overwritten below the class definition app_lacks_access = None # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition email_unverified = None # Attribute is overwritten below the class definition validation_error = None def is_not_found(self): """ Check if the union tag is ``not_found``. :rtype: bool """ return self._tag == 'not_found' def is_not_a_folder(self): """ Check if the union tag is ``not_a_folder``. :rtype: bool """ return self._tag == 'not_a_folder' def is_app_lacks_access(self): """ Check if the union tag is ``app_lacks_access``. :rtype: bool """ return self._tag == 'app_lacks_access' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_email_unverified(self): """ Check if the union tag is ``email_unverified``. :rtype: bool """ return self._tag == 'email_unverified' def is_validation_error(self): """ Check if the union tag is ``validation_error``. :rtype: bool """ return self._tag == 'validation_error' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestError, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestError_validator = bv.Union(FileRequestError) class CreateFileRequestError(FileRequestError): """ There was an error creating the file request. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_requests.CreateFileRequestError.invalid_location: File requests are not available on the specified folder. :ivar file_requests.CreateFileRequestError.rate_limit: The user has reached the rate limit for creating file requests. The limit is currently 4000 file requests total. """ # Attribute is overwritten below the class definition invalid_location = None # Attribute is overwritten below the class definition rate_limit = None def is_invalid_location(self): """ Check if the union tag is ``invalid_location``. :rtype: bool """ return self._tag == 'invalid_location' def is_rate_limit(self): """ Check if the union tag is ``rate_limit``. :rtype: bool """ return self._tag == 'rate_limit' def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFileRequestError, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFileRequestError_validator = bv.Union(CreateFileRequestError) class DeleteAllClosedFileRequestsError(FileRequestError): """ There was an error deleting all closed file requests. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteAllClosedFileRequestsError, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteAllClosedFileRequestsError_validator = bv.Union(DeleteAllClosedFileRequestsError) class DeleteAllClosedFileRequestsResult(bb.Struct): """ Result for :meth:`dropbox.dropbox_client.Dropbox.file_requests_delete_all_closed`. :ivar file_requests.DeleteAllClosedFileRequestsResult.file_requests: The file requests deleted for this user. """ __slots__ = [ '_file_requests_value', ] _has_required_fields = True def __init__(self, file_requests=None): self._file_requests_value = bb.NOT_SET if file_requests is not None: self.file_requests = file_requests # Instance attribute type: list of [FileRequest] (validator is set below) file_requests = bb.Attribute("file_requests") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteAllClosedFileRequestsResult, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteAllClosedFileRequestsResult_validator = bv.Struct(DeleteAllClosedFileRequestsResult) class DeleteFileRequestArgs(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.file_requests_delete`. :ivar file_requests.DeleteFileRequestArgs.ids: List IDs of the file requests to delete. """ __slots__ = [ '_ids_value', ] _has_required_fields = True def __init__(self, ids=None): self._ids_value = bb.NOT_SET if ids is not None: self.ids = ids # Instance attribute type: list of [str] (validator is set below) ids = bb.Attribute("ids") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteFileRequestArgs, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteFileRequestArgs_validator = bv.Struct(DeleteFileRequestArgs) class DeleteFileRequestError(FileRequestError): """ There was an error deleting these file requests. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_requests.DeleteFileRequestError.file_request_open: One or more file requests currently open. """ # Attribute is overwritten below the class definition file_request_open = None def is_file_request_open(self): """ Check if the union tag is ``file_request_open``. :rtype: bool """ return self._tag == 'file_request_open' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteFileRequestError, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteFileRequestError_validator = bv.Union(DeleteFileRequestError) class DeleteFileRequestsResult(bb.Struct): """ Result for :meth:`dropbox.dropbox_client.Dropbox.file_requests_delete`. :ivar file_requests.DeleteFileRequestsResult.file_requests: The file requests deleted by the request. """ __slots__ = [ '_file_requests_value', ] _has_required_fields = True def __init__(self, file_requests=None): self._file_requests_value = bb.NOT_SET if file_requests is not None: self.file_requests = file_requests # Instance attribute type: list of [FileRequest] (validator is set below) file_requests = bb.Attribute("file_requests") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteFileRequestsResult, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteFileRequestsResult_validator = bv.Struct(DeleteFileRequestsResult) class FileRequest(bb.Struct): """ A `file request `_ for receiving files into the user's Dropbox account. :ivar file_requests.FileRequest.id: The ID of the file request. :ivar file_requests.FileRequest.url: The URL of the file request. :ivar file_requests.FileRequest.title: The title of the file request. :ivar file_requests.FileRequest.destination: The path of the folder in the Dropbox where uploaded files will be sent. This can be None if the destination was removed. For apps with the app folder permission, this will be relative to the app folder. :ivar file_requests.FileRequest.created: When this file request was created. :ivar file_requests.FileRequest.deadline: The deadline for this file request. Only set if the request has a deadline. :ivar file_requests.FileRequest.is_open: Whether or not the file request is open. If the file request is closed, it will not accept any more file submissions. :ivar file_requests.FileRequest.file_count: The number of files this file request has received. :ivar file_requests.FileRequest.description: A description of the file request. """ __slots__ = [ '_id_value', '_url_value', '_title_value', '_destination_value', '_created_value', '_deadline_value', '_is_open_value', '_file_count_value', '_description_value', ] _has_required_fields = True def __init__(self, id=None, url=None, title=None, created=None, is_open=None, file_count=None, destination=None, deadline=None, description=None): self._id_value = bb.NOT_SET self._url_value = bb.NOT_SET self._title_value = bb.NOT_SET self._destination_value = bb.NOT_SET self._created_value = bb.NOT_SET self._deadline_value = bb.NOT_SET self._is_open_value = bb.NOT_SET self._file_count_value = bb.NOT_SET self._description_value = bb.NOT_SET if id is not None: self.id = id if url is not None: self.url = url if title is not None: self.title = title if destination is not None: self.destination = destination if created is not None: self.created = created if deadline is not None: self.deadline = deadline if is_open is not None: self.is_open = is_open if file_count is not None: self.file_count = file_count if description is not None: self.description = description # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: str (validator is set below) url = bb.Attribute("url") # Instance attribute type: str (validator is set below) title = bb.Attribute("title") # Instance attribute type: str (validator is set below) destination = bb.Attribute("destination", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) created = bb.Attribute("created") # Instance attribute type: FileRequestDeadline (validator is set below) deadline = bb.Attribute("deadline", nullable=True, user_defined=True) # Instance attribute type: bool (validator is set below) is_open = bb.Attribute("is_open") # Instance attribute type: int (validator is set below) file_count = bb.Attribute("file_count") # Instance attribute type: str (validator is set below) description = bb.Attribute("description", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequest, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequest_validator = bv.Struct(FileRequest) class FileRequestDeadline(bb.Struct): """ :ivar file_requests.FileRequestDeadline.deadline: The deadline for this file request. :ivar file_requests.FileRequestDeadline.allow_late_uploads: If set, allow uploads after the deadline has passed. These uploads will be marked overdue. """ __slots__ = [ '_deadline_value', '_allow_late_uploads_value', ] _has_required_fields = True def __init__(self, deadline=None, allow_late_uploads=None): self._deadline_value = bb.NOT_SET self._allow_late_uploads_value = bb.NOT_SET if deadline is not None: self.deadline = deadline if allow_late_uploads is not None: self.allow_late_uploads = allow_late_uploads # Instance attribute type: datetime.datetime (validator is set below) deadline = bb.Attribute("deadline") # Instance attribute type: GracePeriod (validator is set below) allow_late_uploads = bb.Attribute("allow_late_uploads", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestDeadline, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestDeadline_validator = bv.Struct(FileRequestDeadline) class GetFileRequestArgs(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.file_requests_get`. :ivar file_requests.GetFileRequestArgs.id: The ID of the file request to retrieve. """ __slots__ = [ '_id_value', ] _has_required_fields = True def __init__(self, id=None): self._id_value = bb.NOT_SET if id is not None: self.id = id # Instance attribute type: str (validator is set below) id = bb.Attribute("id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetFileRequestArgs, self)._process_custom_annotations(annotation_type, field_path, processor) GetFileRequestArgs_validator = bv.Struct(GetFileRequestArgs) class GetFileRequestError(FileRequestError): """ There was an error retrieving the specified file request. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetFileRequestError, self)._process_custom_annotations(annotation_type, field_path, processor) GetFileRequestError_validator = bv.Union(GetFileRequestError) class GracePeriod(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition one_day = None # Attribute is overwritten below the class definition two_days = None # Attribute is overwritten below the class definition seven_days = None # Attribute is overwritten below the class definition thirty_days = None # Attribute is overwritten below the class definition always = None # Attribute is overwritten below the class definition other = None def is_one_day(self): """ Check if the union tag is ``one_day``. :rtype: bool """ return self._tag == 'one_day' def is_two_days(self): """ Check if the union tag is ``two_days``. :rtype: bool """ return self._tag == 'two_days' def is_seven_days(self): """ Check if the union tag is ``seven_days``. :rtype: bool """ return self._tag == 'seven_days' def is_thirty_days(self): """ Check if the union tag is ``thirty_days``. :rtype: bool """ return self._tag == 'thirty_days' def is_always(self): """ Check if the union tag is ``always``. :rtype: bool """ return self._tag == 'always' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GracePeriod, self)._process_custom_annotations(annotation_type, field_path, processor) GracePeriod_validator = bv.Union(GracePeriod) class ListFileRequestsArg(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.file_requests_list`. :ivar file_requests.ListFileRequestsArg.limit: The maximum number of file requests that should be returned per request. """ __slots__ = [ '_limit_value', ] _has_required_fields = False def __init__(self, limit=None): self._limit_value = bb.NOT_SET if limit is not None: self.limit = limit # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileRequestsArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileRequestsArg_validator = bv.Struct(ListFileRequestsArg) class ListFileRequestsContinueArg(bb.Struct): """ :ivar file_requests.ListFileRequestsContinueArg.cursor: The cursor returned by the previous API call specified in the endpoint description. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileRequestsContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileRequestsContinueArg_validator = bv.Struct(ListFileRequestsContinueArg) class ListFileRequestsContinueError(GeneralFileRequestsError): """ There was an error retrieving the file requests. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_requests.ListFileRequestsContinueError.invalid_cursor: The cursor is invalid. """ # Attribute is overwritten below the class definition invalid_cursor = None def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileRequestsContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileRequestsContinueError_validator = bv.Union(ListFileRequestsContinueError) class ListFileRequestsError(GeneralFileRequestsError): """ There was an error retrieving the file requests. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileRequestsError, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileRequestsError_validator = bv.Union(ListFileRequestsError) class ListFileRequestsResult(bb.Struct): """ Result for :meth:`dropbox.dropbox_client.Dropbox.file_requests_list`. :ivar file_requests.ListFileRequestsResult.file_requests: The file requests owned by this user. Apps with the app folder permission will only see file requests in their app folder. """ __slots__ = [ '_file_requests_value', ] _has_required_fields = True def __init__(self, file_requests=None): self._file_requests_value = bb.NOT_SET if file_requests is not None: self.file_requests = file_requests # Instance attribute type: list of [FileRequest] (validator is set below) file_requests = bb.Attribute("file_requests") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileRequestsResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileRequestsResult_validator = bv.Struct(ListFileRequestsResult) class ListFileRequestsV2Result(bb.Struct): """ Result for :meth:`dropbox.dropbox_client.Dropbox.file_requests_list` and :meth:`dropbox.dropbox_client.Dropbox.file_requests_list_continue`. :ivar file_requests.ListFileRequestsV2Result.file_requests: The file requests owned by this user. Apps with the app folder permission will only see file requests in their app folder. :ivar file_requests.ListFileRequestsV2Result.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.file_requests_list_continue` to obtain additional file requests. :ivar file_requests.ListFileRequestsV2Result.has_more: Is true if there are additional file requests that have not been returned yet. An additional call to :route:list/continue` can retrieve them. """ __slots__ = [ '_file_requests_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, file_requests=None, cursor=None, has_more=None): self._file_requests_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if file_requests is not None: self.file_requests = file_requests if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [FileRequest] (validator is set below) file_requests = bb.Attribute("file_requests") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileRequestsV2Result, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileRequestsV2Result_validator = bv.Struct(ListFileRequestsV2Result) class UpdateFileRequestArgs(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.file_requests_update`. :ivar file_requests.UpdateFileRequestArgs.id: The ID of the file request to update. :ivar file_requests.UpdateFileRequestArgs.title: The new title of the file request. Must not be empty. :ivar file_requests.UpdateFileRequestArgs.destination: The new path of the folder in the Dropbox where uploaded files will be sent. For apps with the app folder permission, this will be relative to the app folder. :ivar file_requests.UpdateFileRequestArgs.deadline: The new deadline for the file request. Deadlines can only be set by Professional and Business accounts. :ivar file_requests.UpdateFileRequestArgs.open: Whether to set this file request as open or closed. :ivar file_requests.UpdateFileRequestArgs.description: The description of the file request. """ __slots__ = [ '_id_value', '_title_value', '_destination_value', '_deadline_value', '_open_value', '_description_value', ] _has_required_fields = True def __init__(self, id=None, title=None, destination=None, deadline=None, open=None, description=None): self._id_value = bb.NOT_SET self._title_value = bb.NOT_SET self._destination_value = bb.NOT_SET self._deadline_value = bb.NOT_SET self._open_value = bb.NOT_SET self._description_value = bb.NOT_SET if id is not None: self.id = id if title is not None: self.title = title if destination is not None: self.destination = destination if deadline is not None: self.deadline = deadline if open is not None: self.open = open if description is not None: self.description = description # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: str (validator is set below) title = bb.Attribute("title", nullable=True) # Instance attribute type: str (validator is set below) destination = bb.Attribute("destination", nullable=True) # Instance attribute type: UpdateFileRequestDeadline (validator is set below) deadline = bb.Attribute("deadline", user_defined=True) # Instance attribute type: bool (validator is set below) open = bb.Attribute("open", nullable=True) # Instance attribute type: str (validator is set below) description = bb.Attribute("description", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UpdateFileRequestArgs, self)._process_custom_annotations(annotation_type, field_path, processor) UpdateFileRequestArgs_validator = bv.Struct(UpdateFileRequestArgs) class UpdateFileRequestDeadline(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar file_requests.UpdateFileRequestDeadline.no_update: Do not change the file request's deadline. :ivar Optional[FileRequestDeadline] file_requests.UpdateFileRequestDeadline.update: If :val:`null`, the file request's deadline is cleared. """ _catch_all = 'other' # Attribute is overwritten below the class definition no_update = None # Attribute is overwritten below the class definition other = None @classmethod def update(cls, val): """ Create an instance of this class set to the ``update`` tag with value ``val``. :param FileRequestDeadline val: :rtype: UpdateFileRequestDeadline """ return cls('update', val) def is_no_update(self): """ Check if the union tag is ``no_update``. :rtype: bool """ return self._tag == 'no_update' def is_update(self): """ Check if the union tag is ``update``. :rtype: bool """ return self._tag == 'update' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_update(self): """ If None, the file request's deadline is cleared. Only call this if :meth:`is_update` is true. :rtype: FileRequestDeadline """ if not self.is_update(): raise AttributeError("tag 'update' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UpdateFileRequestDeadline, self)._process_custom_annotations(annotation_type, field_path, processor) UpdateFileRequestDeadline_validator = bv.Union(UpdateFileRequestDeadline) class UpdateFileRequestError(FileRequestError): """ There is an error updating the file request. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ def _process_custom_annotations(self, annotation_type, field_path, processor): super(UpdateFileRequestError, self)._process_custom_annotations(annotation_type, field_path, processor) UpdateFileRequestError_validator = bv.Union(UpdateFileRequestError) FileRequestId_validator = bv.String(min_length=1, pattern='[-_0-9a-zA-Z]+') FileRequestValidationError_validator = bv.Nullable(bv.String()) GeneralFileRequestsError._disabled_for_team_validator = bv.Void() GeneralFileRequestsError._other_validator = bv.Void() GeneralFileRequestsError._tagmap = { 'disabled_for_team': GeneralFileRequestsError._disabled_for_team_validator, 'other': GeneralFileRequestsError._other_validator, } GeneralFileRequestsError.disabled_for_team = GeneralFileRequestsError('disabled_for_team') GeneralFileRequestsError.other = GeneralFileRequestsError('other') CountFileRequestsError._tagmap = { } CountFileRequestsError._tagmap.update(GeneralFileRequestsError._tagmap) CountFileRequestsResult.file_request_count.validator = bv.UInt64() CountFileRequestsResult._all_field_names_ = set(['file_request_count']) CountFileRequestsResult._all_fields_ = [('file_request_count', CountFileRequestsResult.file_request_count.validator)] CreateFileRequestArgs.title.validator = bv.String(min_length=1) CreateFileRequestArgs.destination.validator = files.Path_validator CreateFileRequestArgs.deadline.validator = bv.Nullable(FileRequestDeadline_validator) CreateFileRequestArgs.open.validator = bv.Boolean() CreateFileRequestArgs.description.validator = bv.Nullable(bv.String()) CreateFileRequestArgs._all_field_names_ = set([ 'title', 'destination', 'deadline', 'open', 'description', ]) CreateFileRequestArgs._all_fields_ = [ ('title', CreateFileRequestArgs.title.validator), ('destination', CreateFileRequestArgs.destination.validator), ('deadline', CreateFileRequestArgs.deadline.validator), ('open', CreateFileRequestArgs.open.validator), ('description', CreateFileRequestArgs.description.validator), ] FileRequestError._not_found_validator = bv.Void() FileRequestError._not_a_folder_validator = bv.Void() FileRequestError._app_lacks_access_validator = bv.Void() FileRequestError._no_permission_validator = bv.Void() FileRequestError._email_unverified_validator = bv.Void() FileRequestError._validation_error_validator = bv.Void() FileRequestError._tagmap = { 'not_found': FileRequestError._not_found_validator, 'not_a_folder': FileRequestError._not_a_folder_validator, 'app_lacks_access': FileRequestError._app_lacks_access_validator, 'no_permission': FileRequestError._no_permission_validator, 'email_unverified': FileRequestError._email_unverified_validator, 'validation_error': FileRequestError._validation_error_validator, } FileRequestError._tagmap.update(GeneralFileRequestsError._tagmap) FileRequestError.not_found = FileRequestError('not_found') FileRequestError.not_a_folder = FileRequestError('not_a_folder') FileRequestError.app_lacks_access = FileRequestError('app_lacks_access') FileRequestError.no_permission = FileRequestError('no_permission') FileRequestError.email_unverified = FileRequestError('email_unverified') FileRequestError.validation_error = FileRequestError('validation_error') CreateFileRequestError._invalid_location_validator = bv.Void() CreateFileRequestError._rate_limit_validator = bv.Void() CreateFileRequestError._tagmap = { 'invalid_location': CreateFileRequestError._invalid_location_validator, 'rate_limit': CreateFileRequestError._rate_limit_validator, } CreateFileRequestError._tagmap.update(FileRequestError._tagmap) CreateFileRequestError.invalid_location = CreateFileRequestError('invalid_location') CreateFileRequestError.rate_limit = CreateFileRequestError('rate_limit') DeleteAllClosedFileRequestsError._tagmap = { } DeleteAllClosedFileRequestsError._tagmap.update(FileRequestError._tagmap) DeleteAllClosedFileRequestsResult.file_requests.validator = bv.List(FileRequest_validator) DeleteAllClosedFileRequestsResult._all_field_names_ = set(['file_requests']) DeleteAllClosedFileRequestsResult._all_fields_ = [('file_requests', DeleteAllClosedFileRequestsResult.file_requests.validator)] DeleteFileRequestArgs.ids.validator = bv.List(FileRequestId_validator) DeleteFileRequestArgs._all_field_names_ = set(['ids']) DeleteFileRequestArgs._all_fields_ = [('ids', DeleteFileRequestArgs.ids.validator)] DeleteFileRequestError._file_request_open_validator = bv.Void() DeleteFileRequestError._tagmap = { 'file_request_open': DeleteFileRequestError._file_request_open_validator, } DeleteFileRequestError._tagmap.update(FileRequestError._tagmap) DeleteFileRequestError.file_request_open = DeleteFileRequestError('file_request_open') DeleteFileRequestsResult.file_requests.validator = bv.List(FileRequest_validator) DeleteFileRequestsResult._all_field_names_ = set(['file_requests']) DeleteFileRequestsResult._all_fields_ = [('file_requests', DeleteFileRequestsResult.file_requests.validator)] FileRequest.id.validator = FileRequestId_validator FileRequest.url.validator = bv.String(min_length=1) FileRequest.title.validator = bv.String(min_length=1) FileRequest.destination.validator = bv.Nullable(files.Path_validator) FileRequest.created.validator = common.DropboxTimestamp_validator FileRequest.deadline.validator = bv.Nullable(FileRequestDeadline_validator) FileRequest.is_open.validator = bv.Boolean() FileRequest.file_count.validator = bv.Int64() FileRequest.description.validator = bv.Nullable(bv.String()) FileRequest._all_field_names_ = set([ 'id', 'url', 'title', 'destination', 'created', 'deadline', 'is_open', 'file_count', 'description', ]) FileRequest._all_fields_ = [ ('id', FileRequest.id.validator), ('url', FileRequest.url.validator), ('title', FileRequest.title.validator), ('destination', FileRequest.destination.validator), ('created', FileRequest.created.validator), ('deadline', FileRequest.deadline.validator), ('is_open', FileRequest.is_open.validator), ('file_count', FileRequest.file_count.validator), ('description', FileRequest.description.validator), ] FileRequestDeadline.deadline.validator = common.DropboxTimestamp_validator FileRequestDeadline.allow_late_uploads.validator = bv.Nullable(GracePeriod_validator) FileRequestDeadline._all_field_names_ = set([ 'deadline', 'allow_late_uploads', ]) FileRequestDeadline._all_fields_ = [ ('deadline', FileRequestDeadline.deadline.validator), ('allow_late_uploads', FileRequestDeadline.allow_late_uploads.validator), ] GetFileRequestArgs.id.validator = FileRequestId_validator GetFileRequestArgs._all_field_names_ = set(['id']) GetFileRequestArgs._all_fields_ = [('id', GetFileRequestArgs.id.validator)] GetFileRequestError._tagmap = { } GetFileRequestError._tagmap.update(FileRequestError._tagmap) GracePeriod._one_day_validator = bv.Void() GracePeriod._two_days_validator = bv.Void() GracePeriod._seven_days_validator = bv.Void() GracePeriod._thirty_days_validator = bv.Void() GracePeriod._always_validator = bv.Void() GracePeriod._other_validator = bv.Void() GracePeriod._tagmap = { 'one_day': GracePeriod._one_day_validator, 'two_days': GracePeriod._two_days_validator, 'seven_days': GracePeriod._seven_days_validator, 'thirty_days': GracePeriod._thirty_days_validator, 'always': GracePeriod._always_validator, 'other': GracePeriod._other_validator, } GracePeriod.one_day = GracePeriod('one_day') GracePeriod.two_days = GracePeriod('two_days') GracePeriod.seven_days = GracePeriod('seven_days') GracePeriod.thirty_days = GracePeriod('thirty_days') GracePeriod.always = GracePeriod('always') GracePeriod.other = GracePeriod('other') ListFileRequestsArg.limit.validator = bv.UInt64() ListFileRequestsArg._all_field_names_ = set(['limit']) ListFileRequestsArg._all_fields_ = [('limit', ListFileRequestsArg.limit.validator)] ListFileRequestsContinueArg.cursor.validator = bv.String() ListFileRequestsContinueArg._all_field_names_ = set(['cursor']) ListFileRequestsContinueArg._all_fields_ = [('cursor', ListFileRequestsContinueArg.cursor.validator)] ListFileRequestsContinueError._invalid_cursor_validator = bv.Void() ListFileRequestsContinueError._tagmap = { 'invalid_cursor': ListFileRequestsContinueError._invalid_cursor_validator, } ListFileRequestsContinueError._tagmap.update(GeneralFileRequestsError._tagmap) ListFileRequestsContinueError.invalid_cursor = ListFileRequestsContinueError('invalid_cursor') ListFileRequestsError._tagmap = { } ListFileRequestsError._tagmap.update(GeneralFileRequestsError._tagmap) ListFileRequestsResult.file_requests.validator = bv.List(FileRequest_validator) ListFileRequestsResult._all_field_names_ = set(['file_requests']) ListFileRequestsResult._all_fields_ = [('file_requests', ListFileRequestsResult.file_requests.validator)] ListFileRequestsV2Result.file_requests.validator = bv.List(FileRequest_validator) ListFileRequestsV2Result.cursor.validator = bv.String() ListFileRequestsV2Result.has_more.validator = bv.Boolean() ListFileRequestsV2Result._all_field_names_ = set([ 'file_requests', 'cursor', 'has_more', ]) ListFileRequestsV2Result._all_fields_ = [ ('file_requests', ListFileRequestsV2Result.file_requests.validator), ('cursor', ListFileRequestsV2Result.cursor.validator), ('has_more', ListFileRequestsV2Result.has_more.validator), ] UpdateFileRequestArgs.id.validator = FileRequestId_validator UpdateFileRequestArgs.title.validator = bv.Nullable(bv.String(min_length=1)) UpdateFileRequestArgs.destination.validator = bv.Nullable(files.Path_validator) UpdateFileRequestArgs.deadline.validator = UpdateFileRequestDeadline_validator UpdateFileRequestArgs.open.validator = bv.Nullable(bv.Boolean()) UpdateFileRequestArgs.description.validator = bv.Nullable(bv.String()) UpdateFileRequestArgs._all_field_names_ = set([ 'id', 'title', 'destination', 'deadline', 'open', 'description', ]) UpdateFileRequestArgs._all_fields_ = [ ('id', UpdateFileRequestArgs.id.validator), ('title', UpdateFileRequestArgs.title.validator), ('destination', UpdateFileRequestArgs.destination.validator), ('deadline', UpdateFileRequestArgs.deadline.validator), ('open', UpdateFileRequestArgs.open.validator), ('description', UpdateFileRequestArgs.description.validator), ] UpdateFileRequestDeadline._no_update_validator = bv.Void() UpdateFileRequestDeadline._update_validator = bv.Nullable(FileRequestDeadline_validator) UpdateFileRequestDeadline._other_validator = bv.Void() UpdateFileRequestDeadline._tagmap = { 'no_update': UpdateFileRequestDeadline._no_update_validator, 'update': UpdateFileRequestDeadline._update_validator, 'other': UpdateFileRequestDeadline._other_validator, } UpdateFileRequestDeadline.no_update = UpdateFileRequestDeadline('no_update') UpdateFileRequestDeadline.other = UpdateFileRequestDeadline('other') UpdateFileRequestError._tagmap = { } UpdateFileRequestError._tagmap.update(FileRequestError._tagmap) CreateFileRequestArgs.open.default = True ListFileRequestsArg.limit.default = 1000 UpdateFileRequestArgs.deadline.default = UpdateFileRequestDeadline.no_update count = bb.Route( 'count', 1, False, bv.Void(), CountFileRequestsResult_validator, CountFileRequestsError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) create = bb.Route( 'create', 1, False, CreateFileRequestArgs_validator, FileRequest_validator, CreateFileRequestError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) delete = bb.Route( 'delete', 1, False, DeleteFileRequestArgs_validator, DeleteFileRequestsResult_validator, DeleteFileRequestError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) delete_all_closed = bb.Route( 'delete_all_closed', 1, False, bv.Void(), DeleteAllClosedFileRequestsResult_validator, DeleteAllClosedFileRequestsError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get = bb.Route( 'get', 1, False, GetFileRequestArgs_validator, FileRequest_validator, GetFileRequestError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_v2 = bb.Route( 'list', 2, False, ListFileRequestsArg_validator, ListFileRequestsV2Result_validator, ListFileRequestsError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list = bb.Route( 'list', 1, False, bv.Void(), ListFileRequestsResult_validator, ListFileRequestsError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_continue = bb.Route( 'list/continue', 1, False, ListFileRequestsContinueArg_validator, ListFileRequestsV2Result_validator, ListFileRequestsContinueError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) update = bb.Route( 'update', 1, False, UpdateFileRequestArgs_validator, FileRequest_validator, UpdateFileRequestError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'count': count, 'create': create, 'delete': delete, 'delete_all_closed': delete_all_closed, 'get': get, 'list:2': list_v2, 'list': list, 'list/continue': list_continue, 'update': update, } dropbox-sdk-python-12.0.2/dropbox/files.py000066400000000000000000016331571462737130500205300ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file """ This namespace contains endpoints and data types for basic file operations. """ from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv from dropbox import async_ from dropbox import common from dropbox import file_properties from dropbox import users_common class AddTagArg(bb.Struct): """ :ivar files.AddTagArg.path: Path to the item to be tagged. :ivar files.AddTagArg.tag_text: The value of the tag to add. Will be automatically converted to lowercase letters. """ __slots__ = [ '_path_value', '_tag_text_value', ] _has_required_fields = True def __init__(self, path=None, tag_text=None): self._path_value = bb.NOT_SET self._tag_text_value = bb.NOT_SET if path is not None: self.path = path if tag_text is not None: self.tag_text = tag_text # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: str (validator is set below) tag_text = bb.Attribute("tag_text") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddTagArg, self)._process_custom_annotations(annotation_type, field_path, processor) AddTagArg_validator = bv.Struct(AddTagArg) class BaseTagError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: BaseTagError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(BaseTagError, self)._process_custom_annotations(annotation_type, field_path, processor) BaseTagError_validator = bv.Union(BaseTagError) class AddTagError(BaseTagError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.AddTagError.too_many_tags: The item already has the maximum supported number of tags. """ # Attribute is overwritten below the class definition too_many_tags = None def is_too_many_tags(self): """ Check if the union tag is ``too_many_tags``. :rtype: bool """ return self._tag == 'too_many_tags' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddTagError, self)._process_custom_annotations(annotation_type, field_path, processor) AddTagError_validator = bv.Union(AddTagError) class GetMetadataArg(bb.Struct): """ :ivar files.GetMetadataArg.path: The path of a file or folder on Dropbox. :ivar files.GetMetadataArg.include_media_info: If true, ``FileMetadata.media_info`` is set for photo and video. :ivar files.GetMetadataArg.include_deleted: If true, :class:`DeletedMetadata` will be returned for deleted file or folder, otherwise ``LookupError.not_found`` will be returned. :ivar files.GetMetadataArg.include_has_explicit_shared_members: If true, the results will include a flag for each file indicating whether or not that file has any explicit members. :ivar files.GetMetadataArg.include_property_groups: If set to a valid list of template IDs, ``FileMetadata.property_groups`` is set if there exists property data associated with the file and each of the listed templates. """ __slots__ = [ '_path_value', '_include_media_info_value', '_include_deleted_value', '_include_has_explicit_shared_members_value', '_include_property_groups_value', ] _has_required_fields = True def __init__(self, path=None, include_media_info=None, include_deleted=None, include_has_explicit_shared_members=None, include_property_groups=None): self._path_value = bb.NOT_SET self._include_media_info_value = bb.NOT_SET self._include_deleted_value = bb.NOT_SET self._include_has_explicit_shared_members_value = bb.NOT_SET self._include_property_groups_value = bb.NOT_SET if path is not None: self.path = path if include_media_info is not None: self.include_media_info = include_media_info if include_deleted is not None: self.include_deleted = include_deleted if include_has_explicit_shared_members is not None: self.include_has_explicit_shared_members = include_has_explicit_shared_members if include_property_groups is not None: self.include_property_groups = include_property_groups # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: bool (validator is set below) include_media_info = bb.Attribute("include_media_info") # Instance attribute type: bool (validator is set below) include_deleted = bb.Attribute("include_deleted") # Instance attribute type: bool (validator is set below) include_has_explicit_shared_members = bb.Attribute("include_has_explicit_shared_members") # Instance attribute type: file_properties.TemplateFilterBase (validator is set below) include_property_groups = bb.Attribute("include_property_groups", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetMetadataArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetMetadataArg_validator = bv.Struct(GetMetadataArg) class AlphaGetMetadataArg(GetMetadataArg): """ :ivar files.AlphaGetMetadataArg.include_property_templates: If set to a valid list of template IDs, ``FileMetadata.property_groups`` is set for files with custom properties. """ __slots__ = [ '_include_property_templates_value', ] _has_required_fields = True def __init__(self, path=None, include_media_info=None, include_deleted=None, include_has_explicit_shared_members=None, include_property_groups=None, include_property_templates=None): super(AlphaGetMetadataArg, self).__init__(path, include_media_info, include_deleted, include_has_explicit_shared_members, include_property_groups) self._include_property_templates_value = bb.NOT_SET if include_property_templates is not None: self.include_property_templates = include_property_templates # Instance attribute type: list of [str] (validator is set below) include_property_templates = bb.Attribute("include_property_templates", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AlphaGetMetadataArg, self)._process_custom_annotations(annotation_type, field_path, processor) AlphaGetMetadataArg_validator = bv.Struct(AlphaGetMetadataArg) class GetMetadataError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: GetMetadataError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetMetadataError, self)._process_custom_annotations(annotation_type, field_path, processor) GetMetadataError_validator = bv.Union(GetMetadataError) class AlphaGetMetadataError(GetMetadataError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ @classmethod def properties_error(cls, val): """ Create an instance of this class set to the ``properties_error`` tag with value ``val``. :param file_properties.LookUpPropertiesError val: :rtype: AlphaGetMetadataError """ return cls('properties_error', val) def is_properties_error(self): """ Check if the union tag is ``properties_error``. :rtype: bool """ return self._tag == 'properties_error' def get_properties_error(self): """ Only call this if :meth:`is_properties_error` is true. :rtype: file_properties.LookUpPropertiesError """ if not self.is_properties_error(): raise AttributeError("tag 'properties_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(AlphaGetMetadataError, self)._process_custom_annotations(annotation_type, field_path, processor) AlphaGetMetadataError_validator = bv.Union(AlphaGetMetadataError) class CommitInfo(bb.Struct): """ :ivar files.CommitInfo.path: Path in the user's Dropbox to save the file. :ivar files.CommitInfo.mode: Selects what to do if the file already exists. :ivar files.CommitInfo.autorename: If there's a conflict, as determined by ``mode``, have the Dropbox server try to autorename the file to avoid conflict. :ivar files.CommitInfo.client_modified: The value to store as the ``client_modified`` timestamp. Dropbox automatically records the time at which the file was written to the Dropbox servers. It can also record an additional timestamp, provided by Dropbox desktop clients, mobile clients, and API apps of when the file was actually created or modified. :ivar files.CommitInfo.mute: Normally, users are made aware of any file modifications in their Dropbox account via notifications in the client software. If ``True``, this tells the clients that this modification shouldn't result in a user notification. :ivar files.CommitInfo.property_groups: List of custom properties to add to file. :ivar files.CommitInfo.strict_conflict: Be more strict about how each :class:`WriteMode` detects conflict. For example, always return a conflict error when ``mode`` = ``WriteMode.update`` and the given "rev" doesn't match the existing file's "rev", even if the existing file has been deleted. This also forces a conflict even when the target path refers to a file with identical contents. """ __slots__ = [ '_path_value', '_mode_value', '_autorename_value', '_client_modified_value', '_mute_value', '_property_groups_value', '_strict_conflict_value', ] _has_required_fields = True def __init__(self, path=None, mode=None, autorename=None, client_modified=None, mute=None, property_groups=None, strict_conflict=None): self._path_value = bb.NOT_SET self._mode_value = bb.NOT_SET self._autorename_value = bb.NOT_SET self._client_modified_value = bb.NOT_SET self._mute_value = bb.NOT_SET self._property_groups_value = bb.NOT_SET self._strict_conflict_value = bb.NOT_SET if path is not None: self.path = path if mode is not None: self.mode = mode if autorename is not None: self.autorename = autorename if client_modified is not None: self.client_modified = client_modified if mute is not None: self.mute = mute if property_groups is not None: self.property_groups = property_groups if strict_conflict is not None: self.strict_conflict = strict_conflict # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: WriteMode (validator is set below) mode = bb.Attribute("mode", user_defined=True) # Instance attribute type: bool (validator is set below) autorename = bb.Attribute("autorename") # Instance attribute type: datetime.datetime (validator is set below) client_modified = bb.Attribute("client_modified", nullable=True) # Instance attribute type: bool (validator is set below) mute = bb.Attribute("mute") # Instance attribute type: list of [file_properties.PropertyGroup] (validator is set below) property_groups = bb.Attribute("property_groups", nullable=True) # Instance attribute type: bool (validator is set below) strict_conflict = bb.Attribute("strict_conflict") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CommitInfo, self)._process_custom_annotations(annotation_type, field_path, processor) CommitInfo_validator = bv.Struct(CommitInfo) class ContentSyncSetting(bb.Struct): """ :ivar files.ContentSyncSetting.id: Id of the item this setting is applied to. :ivar files.ContentSyncSetting.sync_setting: Setting for this item. """ __slots__ = [ '_id_value', '_sync_setting_value', ] _has_required_fields = True def __init__(self, id=None, sync_setting=None): self._id_value = bb.NOT_SET self._sync_setting_value = bb.NOT_SET if id is not None: self.id = id if sync_setting is not None: self.sync_setting = sync_setting # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: SyncSetting (validator is set below) sync_setting = bb.Attribute("sync_setting", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ContentSyncSetting, self)._process_custom_annotations(annotation_type, field_path, processor) ContentSyncSetting_validator = bv.Struct(ContentSyncSetting) class ContentSyncSettingArg(bb.Struct): """ :ivar files.ContentSyncSettingArg.id: Id of the item this setting is applied to. :ivar files.ContentSyncSettingArg.sync_setting: Setting for this item. """ __slots__ = [ '_id_value', '_sync_setting_value', ] _has_required_fields = True def __init__(self, id=None, sync_setting=None): self._id_value = bb.NOT_SET self._sync_setting_value = bb.NOT_SET if id is not None: self.id = id if sync_setting is not None: self.sync_setting = sync_setting # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: SyncSettingArg (validator is set below) sync_setting = bb.Attribute("sync_setting", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ContentSyncSettingArg, self)._process_custom_annotations(annotation_type, field_path, processor) ContentSyncSettingArg_validator = bv.Struct(ContentSyncSettingArg) class CreateFolderArg(bb.Struct): """ :ivar files.CreateFolderArg.path: Path in the user's Dropbox to create. :ivar files.CreateFolderArg.autorename: If there's a conflict, have the Dropbox server try to autorename the folder to avoid the conflict. """ __slots__ = [ '_path_value', '_autorename_value', ] _has_required_fields = True def __init__(self, path=None, autorename=None): self._path_value = bb.NOT_SET self._autorename_value = bb.NOT_SET if path is not None: self.path = path if autorename is not None: self.autorename = autorename # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: bool (validator is set below) autorename = bb.Attribute("autorename") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderArg, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderArg_validator = bv.Struct(CreateFolderArg) class CreateFolderBatchArg(bb.Struct): """ :ivar files.CreateFolderBatchArg.paths: List of paths to be created in the user's Dropbox. Duplicate path arguments in the batch are considered only once. :ivar files.CreateFolderBatchArg.autorename: If there's a conflict, have the Dropbox server try to autorename the folder to avoid the conflict. :ivar files.CreateFolderBatchArg.force_async: Whether to force the create to happen asynchronously. """ __slots__ = [ '_paths_value', '_autorename_value', '_force_async_value', ] _has_required_fields = True def __init__(self, paths=None, autorename=None, force_async=None): self._paths_value = bb.NOT_SET self._autorename_value = bb.NOT_SET self._force_async_value = bb.NOT_SET if paths is not None: self.paths = paths if autorename is not None: self.autorename = autorename if force_async is not None: self.force_async = force_async # Instance attribute type: list of [str] (validator is set below) paths = bb.Attribute("paths") # Instance attribute type: bool (validator is set below) autorename = bb.Attribute("autorename") # Instance attribute type: bool (validator is set below) force_async = bb.Attribute("force_async") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderBatchArg_validator = bv.Struct(CreateFolderBatchArg) class CreateFolderBatchError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.CreateFolderBatchError.too_many_files: The operation would involve too many files or folders. """ _catch_all = 'other' # Attribute is overwritten below the class definition too_many_files = None # Attribute is overwritten below the class definition other = None def is_too_many_files(self): """ Check if the union tag is ``too_many_files``. :rtype: bool """ return self._tag == 'too_many_files' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderBatchError, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderBatchError_validator = bv.Union(CreateFolderBatchError) class CreateFolderBatchJobStatus(async_.PollResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar CreateFolderBatchResult CreateFolderBatchJobStatus.complete: The batch create folder has finished. :ivar CreateFolderBatchError CreateFolderBatchJobStatus.failed: The batch create folder has failed. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param CreateFolderBatchResult val: :rtype: CreateFolderBatchJobStatus """ return cls('complete', val) @classmethod def failed(cls, val): """ Create an instance of this class set to the ``failed`` tag with value ``val``. :param CreateFolderBatchError val: :rtype: CreateFolderBatchJobStatus """ return cls('failed', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_failed(self): """ Check if the union tag is ``failed``. :rtype: bool """ return self._tag == 'failed' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_complete(self): """ The batch create folder has finished. Only call this if :meth:`is_complete` is true. :rtype: CreateFolderBatchResult """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def get_failed(self): """ The batch create folder has failed. Only call this if :meth:`is_failed` is true. :rtype: CreateFolderBatchError """ if not self.is_failed(): raise AttributeError("tag 'failed' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderBatchJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderBatchJobStatus_validator = bv.Union(CreateFolderBatchJobStatus) class CreateFolderBatchLaunch(async_.LaunchResultBase): """ Result returned by :meth:`dropbox.dropbox_client.Dropbox.files_create_folder_batch` that may either launch an asynchronous job or complete synchronously. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param CreateFolderBatchResult val: :rtype: CreateFolderBatchLaunch """ return cls('complete', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_complete(self): """ Only call this if :meth:`is_complete` is true. :rtype: CreateFolderBatchResult """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderBatchLaunch, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderBatchLaunch_validator = bv.Union(CreateFolderBatchLaunch) class FileOpsResult(bb.Struct): __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileOpsResult, self)._process_custom_annotations(annotation_type, field_path, processor) FileOpsResult_validator = bv.Struct(FileOpsResult) class CreateFolderBatchResult(FileOpsResult): """ :ivar files.CreateFolderBatchResult.entries: Each entry in ``CreateFolderBatchArg.paths`` will appear at the same position inside ``CreateFolderBatchResult.entries``. """ __slots__ = [ '_entries_value', ] _has_required_fields = True def __init__(self, entries=None): super(CreateFolderBatchResult, self).__init__() self._entries_value = bb.NOT_SET if entries is not None: self.entries = entries # Instance attribute type: list of [CreateFolderBatchResultEntry] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderBatchResult_validator = bv.Struct(CreateFolderBatchResult) class CreateFolderBatchResultEntry(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param CreateFolderEntryResult val: :rtype: CreateFolderBatchResultEntry """ return cls('success', val) @classmethod def failure(cls, val): """ Create an instance of this class set to the ``failure`` tag with value ``val``. :param CreateFolderEntryError val: :rtype: CreateFolderBatchResultEntry """ return cls('failure', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_failure(self): """ Check if the union tag is ``failure``. :rtype: bool """ return self._tag == 'failure' def get_success(self): """ Only call this if :meth:`is_success` is true. :rtype: CreateFolderEntryResult """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_failure(self): """ Only call this if :meth:`is_failure` is true. :rtype: CreateFolderEntryError """ if not self.is_failure(): raise AttributeError("tag 'failure' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderBatchResultEntry, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderBatchResultEntry_validator = bv.Union(CreateFolderBatchResultEntry) class CreateFolderEntryError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param WriteError val: :rtype: CreateFolderEntryError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: WriteError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderEntryError, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderEntryError_validator = bv.Union(CreateFolderEntryError) class CreateFolderEntryResult(bb.Struct): """ :ivar files.CreateFolderEntryResult.metadata: Metadata of the created folder. """ __slots__ = [ '_metadata_value', ] _has_required_fields = True def __init__(self, metadata=None): self._metadata_value = bb.NOT_SET if metadata is not None: self.metadata = metadata # Instance attribute type: FolderMetadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderEntryResult, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderEntryResult_validator = bv.Struct(CreateFolderEntryResult) class CreateFolderError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param WriteError val: :rtype: CreateFolderError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: WriteError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderError, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderError_validator = bv.Union(CreateFolderError) class CreateFolderResult(FileOpsResult): """ :ivar files.CreateFolderResult.metadata: Metadata of the created folder. """ __slots__ = [ '_metadata_value', ] _has_required_fields = True def __init__(self, metadata=None): super(CreateFolderResult, self).__init__() self._metadata_value = bb.NOT_SET if metadata is not None: self.metadata = metadata # Instance attribute type: FolderMetadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderResult, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderResult_validator = bv.Struct(CreateFolderResult) class DeleteArg(bb.Struct): """ :ivar files.DeleteArg.path: Path in the user's Dropbox to delete. :ivar files.DeleteArg.parent_rev: Perform delete if given "rev" matches the existing file's latest "rev". This field does not support deleting a folder. """ __slots__ = [ '_path_value', '_parent_rev_value', ] _has_required_fields = True def __init__(self, path=None, parent_rev=None): self._path_value = bb.NOT_SET self._parent_rev_value = bb.NOT_SET if path is not None: self.path = path if parent_rev is not None: self.parent_rev = parent_rev # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: str (validator is set below) parent_rev = bb.Attribute("parent_rev", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteArg, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteArg_validator = bv.Struct(DeleteArg) class DeleteBatchArg(bb.Struct): __slots__ = [ '_entries_value', ] _has_required_fields = True def __init__(self, entries=None): self._entries_value = bb.NOT_SET if entries is not None: self.entries = entries # Instance attribute type: list of [DeleteArg] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteBatchArg_validator = bv.Struct(DeleteBatchArg) class DeleteBatchError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.DeleteBatchError.too_many_write_operations: Use ``DeleteError.too_many_write_operations``. :meth:`dropbox.dropbox_client.Dropbox.files_delete_batch` now provides smaller granularity about which entry has failed because of this. """ _catch_all = 'other' # Attribute is overwritten below the class definition too_many_write_operations = None # Attribute is overwritten below the class definition other = None def is_too_many_write_operations(self): """ Check if the union tag is ``too_many_write_operations``. :rtype: bool """ return self._tag == 'too_many_write_operations' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteBatchError, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteBatchError_validator = bv.Union(DeleteBatchError) class DeleteBatchJobStatus(async_.PollResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar DeleteBatchResult DeleteBatchJobStatus.complete: The batch delete has finished. :ivar DeleteBatchError DeleteBatchJobStatus.failed: The batch delete has failed. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param DeleteBatchResult val: :rtype: DeleteBatchJobStatus """ return cls('complete', val) @classmethod def failed(cls, val): """ Create an instance of this class set to the ``failed`` tag with value ``val``. :param DeleteBatchError val: :rtype: DeleteBatchJobStatus """ return cls('failed', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_failed(self): """ Check if the union tag is ``failed``. :rtype: bool """ return self._tag == 'failed' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_complete(self): """ The batch delete has finished. Only call this if :meth:`is_complete` is true. :rtype: DeleteBatchResult """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def get_failed(self): """ The batch delete has failed. Only call this if :meth:`is_failed` is true. :rtype: DeleteBatchError """ if not self.is_failed(): raise AttributeError("tag 'failed' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteBatchJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteBatchJobStatus_validator = bv.Union(DeleteBatchJobStatus) class DeleteBatchLaunch(async_.LaunchResultBase): """ Result returned by :meth:`dropbox.dropbox_client.Dropbox.files_delete_batch` that may either launch an asynchronous job or complete synchronously. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param DeleteBatchResult val: :rtype: DeleteBatchLaunch """ return cls('complete', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_complete(self): """ Only call this if :meth:`is_complete` is true. :rtype: DeleteBatchResult """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteBatchLaunch, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteBatchLaunch_validator = bv.Union(DeleteBatchLaunch) class DeleteBatchResult(FileOpsResult): """ :ivar files.DeleteBatchResult.entries: Each entry in ``DeleteBatchArg.entries`` will appear at the same position inside ``DeleteBatchResult.entries``. """ __slots__ = [ '_entries_value', ] _has_required_fields = True def __init__(self, entries=None): super(DeleteBatchResult, self).__init__() self._entries_value = bb.NOT_SET if entries is not None: self.entries = entries # Instance attribute type: list of [DeleteBatchResultEntry] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteBatchResult_validator = bv.Struct(DeleteBatchResult) class DeleteBatchResultData(bb.Struct): """ :ivar files.DeleteBatchResultData.metadata: Metadata of the deleted object. """ __slots__ = [ '_metadata_value', ] _has_required_fields = True def __init__(self, metadata=None): self._metadata_value = bb.NOT_SET if metadata is not None: self.metadata = metadata # Instance attribute type: Metadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteBatchResultData, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteBatchResultData_validator = bv.Struct(DeleteBatchResultData) class DeleteBatchResultEntry(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param DeleteBatchResultData val: :rtype: DeleteBatchResultEntry """ return cls('success', val) @classmethod def failure(cls, val): """ Create an instance of this class set to the ``failure`` tag with value ``val``. :param DeleteError val: :rtype: DeleteBatchResultEntry """ return cls('failure', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_failure(self): """ Check if the union tag is ``failure``. :rtype: bool """ return self._tag == 'failure' def get_success(self): """ Only call this if :meth:`is_success` is true. :rtype: DeleteBatchResultData """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_failure(self): """ Only call this if :meth:`is_failure` is true. :rtype: DeleteError """ if not self.is_failure(): raise AttributeError("tag 'failure' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteBatchResultEntry, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteBatchResultEntry_validator = bv.Union(DeleteBatchResultEntry) class DeleteError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.DeleteError.too_many_write_operations: There are too many write operations in user's Dropbox. Please retry this request. :ivar files.DeleteError.too_many_files: There are too many files in one request. Please retry with fewer files. """ _catch_all = 'other' # Attribute is overwritten below the class definition too_many_write_operations = None # Attribute is overwritten below the class definition too_many_files = None # Attribute is overwritten below the class definition other = None @classmethod def path_lookup(cls, val): """ Create an instance of this class set to the ``path_lookup`` tag with value ``val``. :param LookupError val: :rtype: DeleteError """ return cls('path_lookup', val) @classmethod def path_write(cls, val): """ Create an instance of this class set to the ``path_write`` tag with value ``val``. :param WriteError val: :rtype: DeleteError """ return cls('path_write', val) def is_path_lookup(self): """ Check if the union tag is ``path_lookup``. :rtype: bool """ return self._tag == 'path_lookup' def is_path_write(self): """ Check if the union tag is ``path_write``. :rtype: bool """ return self._tag == 'path_write' def is_too_many_write_operations(self): """ Check if the union tag is ``too_many_write_operations``. :rtype: bool """ return self._tag == 'too_many_write_operations' def is_too_many_files(self): """ Check if the union tag is ``too_many_files``. :rtype: bool """ return self._tag == 'too_many_files' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path_lookup(self): """ Only call this if :meth:`is_path_lookup` is true. :rtype: LookupError """ if not self.is_path_lookup(): raise AttributeError("tag 'path_lookup' not set") return self._value def get_path_write(self): """ Only call this if :meth:`is_path_write` is true. :rtype: WriteError """ if not self.is_path_write(): raise AttributeError("tag 'path_write' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteError, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteError_validator = bv.Union(DeleteError) class DeleteResult(FileOpsResult): """ :ivar files.DeleteResult.metadata: Metadata of the deleted object. """ __slots__ = [ '_metadata_value', ] _has_required_fields = True def __init__(self, metadata=None): super(DeleteResult, self).__init__() self._metadata_value = bb.NOT_SET if metadata is not None: self.metadata = metadata # Instance attribute type: Metadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteResult, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteResult_validator = bv.Struct(DeleteResult) class Metadata(bb.Struct): """ Metadata for a file or folder. :ivar files.Metadata.name: The last component of the path (including extension). This never contains a slash. :ivar files.Metadata.path_lower: The lowercased full path in the user's Dropbox. This always starts with a slash. This field will be null if the file or folder is not mounted. :ivar files.Metadata.path_display: The cased path to be used for display purposes only. In rare instances the casing will not correctly match the user's filesystem, but this behavior will match the path provided in the Core API v1, and at least the last path component will have the correct casing. Changes to only the casing of paths won't be returned by :meth:`dropbox.dropbox_client.Dropbox.files_list_folder_continue`. This field will be null if the file or folder is not mounted. :ivar files.Metadata.parent_shared_folder_id: Please use ``FileSharingInfo.parent_shared_folder_id`` or ``FolderSharingInfo.parent_shared_folder_id`` instead. :ivar files.Metadata.preview_url: The preview URL of the file. """ __slots__ = [ '_name_value', '_path_lower_value', '_path_display_value', '_parent_shared_folder_id_value', '_preview_url_value', ] _has_required_fields = True def __init__(self, name=None, path_lower=None, path_display=None, parent_shared_folder_id=None, preview_url=None): self._name_value = bb.NOT_SET self._path_lower_value = bb.NOT_SET self._path_display_value = bb.NOT_SET self._parent_shared_folder_id_value = bb.NOT_SET self._preview_url_value = bb.NOT_SET if name is not None: self.name = name if path_lower is not None: self.path_lower = path_lower if path_display is not None: self.path_display = path_display if parent_shared_folder_id is not None: self.parent_shared_folder_id = parent_shared_folder_id if preview_url is not None: self.preview_url = preview_url # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) path_lower = bb.Attribute("path_lower", nullable=True) # Instance attribute type: str (validator is set below) path_display = bb.Attribute("path_display", nullable=True) # Instance attribute type: str (validator is set below) parent_shared_folder_id = bb.Attribute("parent_shared_folder_id", nullable=True) # Instance attribute type: str (validator is set below) preview_url = bb.Attribute("preview_url", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(Metadata, self)._process_custom_annotations(annotation_type, field_path, processor) Metadata_validator = bv.StructTree(Metadata) class DeletedMetadata(Metadata): """ Indicates that there used to be a file or folder at this path, but it no longer exists. """ __slots__ = [ ] _has_required_fields = True def __init__(self, name=None, path_lower=None, path_display=None, parent_shared_folder_id=None, preview_url=None): super(DeletedMetadata, self).__init__(name, path_lower, path_display, parent_shared_folder_id, preview_url) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeletedMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) DeletedMetadata_validator = bv.Struct(DeletedMetadata) class Dimensions(bb.Struct): """ Dimensions for a photo or video. :ivar files.Dimensions.height: Height of the photo/video. :ivar files.Dimensions.width: Width of the photo/video. """ __slots__ = [ '_height_value', '_width_value', ] _has_required_fields = True def __init__(self, height=None, width=None): self._height_value = bb.NOT_SET self._width_value = bb.NOT_SET if height is not None: self.height = height if width is not None: self.width = width # Instance attribute type: int (validator is set below) height = bb.Attribute("height") # Instance attribute type: int (validator is set below) width = bb.Attribute("width") def _process_custom_annotations(self, annotation_type, field_path, processor): super(Dimensions, self)._process_custom_annotations(annotation_type, field_path, processor) Dimensions_validator = bv.Struct(Dimensions) class DownloadArg(bb.Struct): """ :ivar files.DownloadArg.path: The path of the file to download. :ivar files.DownloadArg.rev: Please specify revision in ``path`` instead. """ __slots__ = [ '_path_value', '_rev_value', ] _has_required_fields = True def __init__(self, path=None, rev=None): self._path_value = bb.NOT_SET self._rev_value = bb.NOT_SET if path is not None: self.path = path if rev is not None: self.rev = rev # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: str (validator is set below) rev = bb.Attribute("rev", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DownloadArg, self)._process_custom_annotations(annotation_type, field_path, processor) DownloadArg_validator = bv.Struct(DownloadArg) class DownloadError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.DownloadError.unsupported_file: This file type cannot be downloaded directly; use :meth:`dropbox.dropbox_client.Dropbox.files_export` instead. """ _catch_all = 'other' # Attribute is overwritten below the class definition unsupported_file = None # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: DownloadError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_unsupported_file(self): """ Check if the union tag is ``unsupported_file``. :rtype: bool """ return self._tag == 'unsupported_file' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(DownloadError, self)._process_custom_annotations(annotation_type, field_path, processor) DownloadError_validator = bv.Union(DownloadError) class DownloadZipArg(bb.Struct): """ :ivar files.DownloadZipArg.path: The path of the folder to download. """ __slots__ = [ '_path_value', ] _has_required_fields = True def __init__(self, path=None): self._path_value = bb.NOT_SET if path is not None: self.path = path # Instance attribute type: str (validator is set below) path = bb.Attribute("path") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DownloadZipArg, self)._process_custom_annotations(annotation_type, field_path, processor) DownloadZipArg_validator = bv.Struct(DownloadZipArg) class DownloadZipError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.DownloadZipError.too_large: The folder or a file is too large to download. :ivar files.DownloadZipError.too_many_files: The folder has too many files to download. """ _catch_all = 'other' # Attribute is overwritten below the class definition too_large = None # Attribute is overwritten below the class definition too_many_files = None # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: DownloadZipError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_too_large(self): """ Check if the union tag is ``too_large``. :rtype: bool """ return self._tag == 'too_large' def is_too_many_files(self): """ Check if the union tag is ``too_many_files``. :rtype: bool """ return self._tag == 'too_many_files' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(DownloadZipError, self)._process_custom_annotations(annotation_type, field_path, processor) DownloadZipError_validator = bv.Union(DownloadZipError) class DownloadZipResult(bb.Struct): __slots__ = [ '_metadata_value', ] _has_required_fields = True def __init__(self, metadata=None): self._metadata_value = bb.NOT_SET if metadata is not None: self.metadata = metadata # Instance attribute type: FolderMetadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DownloadZipResult, self)._process_custom_annotations(annotation_type, field_path, processor) DownloadZipResult_validator = bv.Struct(DownloadZipResult) class ExportArg(bb.Struct): """ :ivar files.ExportArg.path: The path of the file to be exported. :ivar files.ExportArg.export_format: The file format to which the file should be exported. This must be one of the formats listed in the file's export_options returned by :meth:`dropbox.dropbox_client.Dropbox.files_get_metadata`. If none is specified, the default format (specified in export_as in file metadata) will be used. """ __slots__ = [ '_path_value', '_export_format_value', ] _has_required_fields = True def __init__(self, path=None, export_format=None): self._path_value = bb.NOT_SET self._export_format_value = bb.NOT_SET if path is not None: self.path = path if export_format is not None: self.export_format = export_format # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: str (validator is set below) export_format = bb.Attribute("export_format", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExportArg, self)._process_custom_annotations(annotation_type, field_path, processor) ExportArg_validator = bv.Struct(ExportArg) class ExportError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.ExportError.non_exportable: This file type cannot be exported. Use :meth:`dropbox.dropbox_client.Dropbox.files_download` instead. :ivar files.ExportError.invalid_export_format: The specified export format is not a valid option for this file type. :ivar files.ExportError.retry_error: The exportable content is not yet available. Please retry later. """ _catch_all = 'other' # Attribute is overwritten below the class definition non_exportable = None # Attribute is overwritten below the class definition invalid_export_format = None # Attribute is overwritten below the class definition retry_error = None # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: ExportError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_non_exportable(self): """ Check if the union tag is ``non_exportable``. :rtype: bool """ return self._tag == 'non_exportable' def is_invalid_export_format(self): """ Check if the union tag is ``invalid_export_format``. :rtype: bool """ return self._tag == 'invalid_export_format' def is_retry_error(self): """ Check if the union tag is ``retry_error``. :rtype: bool """ return self._tag == 'retry_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExportError, self)._process_custom_annotations(annotation_type, field_path, processor) ExportError_validator = bv.Union(ExportError) class ExportInfo(bb.Struct): """ Export information for a file. :ivar files.ExportInfo.export_as: Format to which the file can be exported to. :ivar files.ExportInfo.export_options: Additional formats to which the file can be exported. These values can be specified as the export_format in /files/export. """ __slots__ = [ '_export_as_value', '_export_options_value', ] _has_required_fields = False def __init__(self, export_as=None, export_options=None): self._export_as_value = bb.NOT_SET self._export_options_value = bb.NOT_SET if export_as is not None: self.export_as = export_as if export_options is not None: self.export_options = export_options # Instance attribute type: str (validator is set below) export_as = bb.Attribute("export_as", nullable=True) # Instance attribute type: list of [str] (validator is set below) export_options = bb.Attribute("export_options", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExportInfo, self)._process_custom_annotations(annotation_type, field_path, processor) ExportInfo_validator = bv.Struct(ExportInfo) class ExportMetadata(bb.Struct): """ :ivar files.ExportMetadata.name: The last component of the path (including extension). This never contains a slash. :ivar files.ExportMetadata.size: The file size in bytes. :ivar files.ExportMetadata.export_hash: A hash based on the exported file content. This field can be used to verify data integrity. Similar to content hash. For more information see our `Content hash `_ page. :ivar files.ExportMetadata.paper_revision: If the file is a Paper doc, this gives the latest doc revision which can be used in :meth:`dropbox.dropbox_client.Dropbox.files_paper_update`. """ __slots__ = [ '_name_value', '_size_value', '_export_hash_value', '_paper_revision_value', ] _has_required_fields = True def __init__(self, name=None, size=None, export_hash=None, paper_revision=None): self._name_value = bb.NOT_SET self._size_value = bb.NOT_SET self._export_hash_value = bb.NOT_SET self._paper_revision_value = bb.NOT_SET if name is not None: self.name = name if size is not None: self.size = size if export_hash is not None: self.export_hash = export_hash if paper_revision is not None: self.paper_revision = paper_revision # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: int (validator is set below) size = bb.Attribute("size") # Instance attribute type: str (validator is set below) export_hash = bb.Attribute("export_hash", nullable=True) # Instance attribute type: int (validator is set below) paper_revision = bb.Attribute("paper_revision", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExportMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) ExportMetadata_validator = bv.Struct(ExportMetadata) class ExportResult(bb.Struct): """ :ivar files.ExportResult.export_metadata: Metadata for the exported version of the file. :ivar files.ExportResult.file_metadata: Metadata for the original file. """ __slots__ = [ '_export_metadata_value', '_file_metadata_value', ] _has_required_fields = True def __init__(self, export_metadata=None, file_metadata=None): self._export_metadata_value = bb.NOT_SET self._file_metadata_value = bb.NOT_SET if export_metadata is not None: self.export_metadata = export_metadata if file_metadata is not None: self.file_metadata = file_metadata # Instance attribute type: ExportMetadata (validator is set below) export_metadata = bb.Attribute("export_metadata", user_defined=True) # Instance attribute type: FileMetadata (validator is set below) file_metadata = bb.Attribute("file_metadata", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExportResult, self)._process_custom_annotations(annotation_type, field_path, processor) ExportResult_validator = bv.Struct(ExportResult) class FileCategory(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.FileCategory.image: jpg, png, gif, and more. :ivar files.FileCategory.document: doc, docx, txt, and more. :ivar files.FileCategory.pdf: pdf. :ivar files.FileCategory.spreadsheet: xlsx, xls, csv, and more. :ivar files.FileCategory.presentation: ppt, pptx, key, and more. :ivar files.FileCategory.audio: mp3, wav, mid, and more. :ivar files.FileCategory.video: mov, wmv, mp4, and more. :ivar files.FileCategory.folder: dropbox folder. :ivar files.FileCategory.paper: dropbox paper doc. :ivar files.FileCategory.others: any file not in one of the categories above. """ _catch_all = 'other' # Attribute is overwritten below the class definition image = None # Attribute is overwritten below the class definition document = None # Attribute is overwritten below the class definition pdf = None # Attribute is overwritten below the class definition spreadsheet = None # Attribute is overwritten below the class definition presentation = None # Attribute is overwritten below the class definition audio = None # Attribute is overwritten below the class definition video = None # Attribute is overwritten below the class definition folder = None # Attribute is overwritten below the class definition paper = None # Attribute is overwritten below the class definition others = None # Attribute is overwritten below the class definition other = None def is_image(self): """ Check if the union tag is ``image``. :rtype: bool """ return self._tag == 'image' def is_document(self): """ Check if the union tag is ``document``. :rtype: bool """ return self._tag == 'document' def is_pdf(self): """ Check if the union tag is ``pdf``. :rtype: bool """ return self._tag == 'pdf' def is_spreadsheet(self): """ Check if the union tag is ``spreadsheet``. :rtype: bool """ return self._tag == 'spreadsheet' def is_presentation(self): """ Check if the union tag is ``presentation``. :rtype: bool """ return self._tag == 'presentation' def is_audio(self): """ Check if the union tag is ``audio``. :rtype: bool """ return self._tag == 'audio' def is_video(self): """ Check if the union tag is ``video``. :rtype: bool """ return self._tag == 'video' def is_folder(self): """ Check if the union tag is ``folder``. :rtype: bool """ return self._tag == 'folder' def is_paper(self): """ Check if the union tag is ``paper``. :rtype: bool """ return self._tag == 'paper' def is_others(self): """ Check if the union tag is ``others``. :rtype: bool """ return self._tag == 'others' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileCategory, self)._process_custom_annotations(annotation_type, field_path, processor) FileCategory_validator = bv.Union(FileCategory) class FileLock(bb.Struct): """ :ivar files.FileLock.content: The lock description. """ __slots__ = [ '_content_value', ] _has_required_fields = True def __init__(self, content=None): self._content_value = bb.NOT_SET if content is not None: self.content = content # Instance attribute type: FileLockContent (validator is set below) content = bb.Attribute("content", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLock, self)._process_custom_annotations(annotation_type, field_path, processor) FileLock_validator = bv.Struct(FileLock) class FileLockContent(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.FileLockContent.unlocked: Empty type to indicate no lock. :ivar SingleUserLock FileLockContent.single_user: A lock held by a single user. """ _catch_all = 'other' # Attribute is overwritten below the class definition unlocked = None # Attribute is overwritten below the class definition other = None @classmethod def single_user(cls, val): """ Create an instance of this class set to the ``single_user`` tag with value ``val``. :param SingleUserLock val: :rtype: FileLockContent """ return cls('single_user', val) def is_unlocked(self): """ Check if the union tag is ``unlocked``. :rtype: bool """ return self._tag == 'unlocked' def is_single_user(self): """ Check if the union tag is ``single_user``. :rtype: bool """ return self._tag == 'single_user' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_single_user(self): """ A lock held by a single user. Only call this if :meth:`is_single_user` is true. :rtype: SingleUserLock """ if not self.is_single_user(): raise AttributeError("tag 'single_user' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLockContent, self)._process_custom_annotations(annotation_type, field_path, processor) FileLockContent_validator = bv.Union(FileLockContent) class FileLockMetadata(bb.Struct): """ :ivar files.FileLockMetadata.is_lockholder: True if caller holds the file lock. :ivar files.FileLockMetadata.lockholder_name: The display name of the lock holder. :ivar files.FileLockMetadata.lockholder_account_id: The account ID of the lock holder if known. :ivar files.FileLockMetadata.created: The timestamp of the lock was created. """ __slots__ = [ '_is_lockholder_value', '_lockholder_name_value', '_lockholder_account_id_value', '_created_value', ] _has_required_fields = False def __init__(self, is_lockholder=None, lockholder_name=None, lockholder_account_id=None, created=None): self._is_lockholder_value = bb.NOT_SET self._lockholder_name_value = bb.NOT_SET self._lockholder_account_id_value = bb.NOT_SET self._created_value = bb.NOT_SET if is_lockholder is not None: self.is_lockholder = is_lockholder if lockholder_name is not None: self.lockholder_name = lockholder_name if lockholder_account_id is not None: self.lockholder_account_id = lockholder_account_id if created is not None: self.created = created # Instance attribute type: bool (validator is set below) is_lockholder = bb.Attribute("is_lockholder", nullable=True) # Instance attribute type: str (validator is set below) lockholder_name = bb.Attribute("lockholder_name", nullable=True) # Instance attribute type: str (validator is set below) lockholder_account_id = bb.Attribute("lockholder_account_id", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) created = bb.Attribute("created", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLockMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) FileLockMetadata_validator = bv.Struct(FileLockMetadata) class FileMetadata(Metadata): """ :ivar files.FileMetadata.id: A unique identifier for the file. :ivar files.FileMetadata.client_modified: For files, this is the modification time set by the desktop client when the file was added to Dropbox. Since this time is not verified (the Dropbox server stores whatever the desktop client sends up), this should only be used for display purposes (such as sorting) and not, for example, to determine if a file has changed or not. :ivar files.FileMetadata.server_modified: The last time the file was modified on Dropbox. :ivar files.FileMetadata.rev: A unique identifier for the current revision of a file. This field is the same rev as elsewhere in the API and can be used to detect changes and avoid conflicts. :ivar files.FileMetadata.size: The file size in bytes. :ivar files.FileMetadata.media_info: Additional information if the file is a photo or video. This field will not be set on entries returned by :meth:`dropbox.dropbox_client.Dropbox.files_list_folder`, :meth:`dropbox.dropbox_client.Dropbox.files_list_folder_continue`, or :meth:`dropbox.dropbox_client.Dropbox.files_get_thumbnail_batch`, starting December 2, 2019. :ivar files.FileMetadata.symlink_info: Set if this file is a symlink. :ivar files.FileMetadata.sharing_info: Set if this file is contained in a shared folder. :ivar files.FileMetadata.is_downloadable: If true, file can be downloaded directly; else the file must be exported. :ivar files.FileMetadata.export_info: Information about format this file can be exported to. This filed must be set if ``is_downloadable`` is set to false. :ivar files.FileMetadata.property_groups: Additional information if the file has custom properties with the property template specified. :ivar files.FileMetadata.has_explicit_shared_members: This flag will only be present if include_has_explicit_shared_members is true in :meth:`dropbox.dropbox_client.Dropbox.files_list_folder` or :meth:`dropbox.dropbox_client.Dropbox.files_get_metadata`. If this flag is present, it will be true if this file has any explicit shared members. This is different from sharing_info in that this could be true in the case where a file has explicit members but is not contained within a shared folder. :ivar files.FileMetadata.content_hash: A hash of the file content. This field can be used to verify data integrity. For more information see our `Content hash `_ page. :ivar files.FileMetadata.file_lock_info: If present, the metadata associated with the file's current lock. """ __slots__ = [ '_id_value', '_client_modified_value', '_server_modified_value', '_rev_value', '_size_value', '_media_info_value', '_symlink_info_value', '_sharing_info_value', '_is_downloadable_value', '_export_info_value', '_property_groups_value', '_has_explicit_shared_members_value', '_content_hash_value', '_file_lock_info_value', ] _has_required_fields = True def __init__(self, name=None, id=None, client_modified=None, server_modified=None, rev=None, size=None, path_lower=None, path_display=None, parent_shared_folder_id=None, preview_url=None, media_info=None, symlink_info=None, sharing_info=None, is_downloadable=None, export_info=None, property_groups=None, has_explicit_shared_members=None, content_hash=None, file_lock_info=None): super(FileMetadata, self).__init__(name, path_lower, path_display, parent_shared_folder_id, preview_url) self._id_value = bb.NOT_SET self._client_modified_value = bb.NOT_SET self._server_modified_value = bb.NOT_SET self._rev_value = bb.NOT_SET self._size_value = bb.NOT_SET self._media_info_value = bb.NOT_SET self._symlink_info_value = bb.NOT_SET self._sharing_info_value = bb.NOT_SET self._is_downloadable_value = bb.NOT_SET self._export_info_value = bb.NOT_SET self._property_groups_value = bb.NOT_SET self._has_explicit_shared_members_value = bb.NOT_SET self._content_hash_value = bb.NOT_SET self._file_lock_info_value = bb.NOT_SET if id is not None: self.id = id if client_modified is not None: self.client_modified = client_modified if server_modified is not None: self.server_modified = server_modified if rev is not None: self.rev = rev if size is not None: self.size = size if media_info is not None: self.media_info = media_info if symlink_info is not None: self.symlink_info = symlink_info if sharing_info is not None: self.sharing_info = sharing_info if is_downloadable is not None: self.is_downloadable = is_downloadable if export_info is not None: self.export_info = export_info if property_groups is not None: self.property_groups = property_groups if has_explicit_shared_members is not None: self.has_explicit_shared_members = has_explicit_shared_members if content_hash is not None: self.content_hash = content_hash if file_lock_info is not None: self.file_lock_info = file_lock_info # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: datetime.datetime (validator is set below) client_modified = bb.Attribute("client_modified") # Instance attribute type: datetime.datetime (validator is set below) server_modified = bb.Attribute("server_modified") # Instance attribute type: str (validator is set below) rev = bb.Attribute("rev") # Instance attribute type: int (validator is set below) size = bb.Attribute("size") # Instance attribute type: MediaInfo (validator is set below) media_info = bb.Attribute("media_info", nullable=True, user_defined=True) # Instance attribute type: SymlinkInfo (validator is set below) symlink_info = bb.Attribute("symlink_info", nullable=True, user_defined=True) # Instance attribute type: FileSharingInfo (validator is set below) sharing_info = bb.Attribute("sharing_info", nullable=True, user_defined=True) # Instance attribute type: bool (validator is set below) is_downloadable = bb.Attribute("is_downloadable") # Instance attribute type: ExportInfo (validator is set below) export_info = bb.Attribute("export_info", nullable=True, user_defined=True) # Instance attribute type: list of [file_properties.PropertyGroup] (validator is set below) property_groups = bb.Attribute("property_groups", nullable=True) # Instance attribute type: bool (validator is set below) has_explicit_shared_members = bb.Attribute("has_explicit_shared_members", nullable=True) # Instance attribute type: str (validator is set below) content_hash = bb.Attribute("content_hash", nullable=True) # Instance attribute type: FileLockMetadata (validator is set below) file_lock_info = bb.Attribute("file_lock_info", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) FileMetadata_validator = bv.Struct(FileMetadata) class SharingInfo(bb.Struct): """ Sharing info for a file or folder. :ivar files.SharingInfo.read_only: True if the file or folder is inside a read-only shared folder. """ __slots__ = [ '_read_only_value', ] _has_required_fields = True def __init__(self, read_only=None): self._read_only_value = bb.NOT_SET if read_only is not None: self.read_only = read_only # Instance attribute type: bool (validator is set below) read_only = bb.Attribute("read_only") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingInfo, self)._process_custom_annotations(annotation_type, field_path, processor) SharingInfo_validator = bv.Struct(SharingInfo) class FileSharingInfo(SharingInfo): """ Sharing info for a file which is contained by a shared folder. :ivar files.FileSharingInfo.parent_shared_folder_id: ID of shared folder that holds this file. :ivar files.FileSharingInfo.modified_by: The last user who modified the file. This field will be null if the user's account has been deleted. """ __slots__ = [ '_parent_shared_folder_id_value', '_modified_by_value', ] _has_required_fields = True def __init__(self, read_only=None, parent_shared_folder_id=None, modified_by=None): super(FileSharingInfo, self).__init__(read_only) self._parent_shared_folder_id_value = bb.NOT_SET self._modified_by_value = bb.NOT_SET if parent_shared_folder_id is not None: self.parent_shared_folder_id = parent_shared_folder_id if modified_by is not None: self.modified_by = modified_by # Instance attribute type: str (validator is set below) parent_shared_folder_id = bb.Attribute("parent_shared_folder_id") # Instance attribute type: str (validator is set below) modified_by = bb.Attribute("modified_by", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileSharingInfo, self)._process_custom_annotations(annotation_type, field_path, processor) FileSharingInfo_validator = bv.Struct(FileSharingInfo) class FileStatus(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition active = None # Attribute is overwritten below the class definition deleted = None # Attribute is overwritten below the class definition other = None def is_active(self): """ Check if the union tag is ``active``. :rtype: bool """ return self._tag == 'active' def is_deleted(self): """ Check if the union tag is ``deleted``. :rtype: bool """ return self._tag == 'deleted' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileStatus, self)._process_custom_annotations(annotation_type, field_path, processor) FileStatus_validator = bv.Union(FileStatus) class FolderMetadata(Metadata): """ :ivar files.FolderMetadata.id: A unique identifier for the folder. :ivar files.FolderMetadata.shared_folder_id: Please use ``sharing_info`` instead. :ivar files.FolderMetadata.sharing_info: Set if the folder is contained in a shared folder or is a shared folder mount point. :ivar files.FolderMetadata.property_groups: Additional information if the file has custom properties with the property template specified. Note that only properties associated with user-owned templates, not team-owned templates, can be attached to folders. """ __slots__ = [ '_id_value', '_shared_folder_id_value', '_sharing_info_value', '_property_groups_value', ] _has_required_fields = True def __init__(self, name=None, id=None, path_lower=None, path_display=None, parent_shared_folder_id=None, preview_url=None, shared_folder_id=None, sharing_info=None, property_groups=None): super(FolderMetadata, self).__init__(name, path_lower, path_display, parent_shared_folder_id, preview_url) self._id_value = bb.NOT_SET self._shared_folder_id_value = bb.NOT_SET self._sharing_info_value = bb.NOT_SET self._property_groups_value = bb.NOT_SET if id is not None: self.id = id if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if sharing_info is not None: self.sharing_info = sharing_info if property_groups is not None: self.property_groups = property_groups # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id", nullable=True) # Instance attribute type: FolderSharingInfo (validator is set below) sharing_info = bb.Attribute("sharing_info", nullable=True, user_defined=True) # Instance attribute type: list of [file_properties.PropertyGroup] (validator is set below) property_groups = bb.Attribute("property_groups", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) FolderMetadata_validator = bv.Struct(FolderMetadata) class FolderSharingInfo(SharingInfo): """ Sharing info for a folder which is contained in a shared folder or is a shared folder mount point. :ivar files.FolderSharingInfo.parent_shared_folder_id: Set if the folder is contained by a shared folder. :ivar files.FolderSharingInfo.shared_folder_id: If this folder is a shared folder mount point, the ID of the shared folder mounted at this location. :ivar files.FolderSharingInfo.traverse_only: Specifies that the folder can only be traversed and the user can only see a limited subset of the contents of this folder because they don't have read access to this folder. They do, however, have access to some sub folder. :ivar files.FolderSharingInfo.no_access: Specifies that the folder cannot be accessed by the user. """ __slots__ = [ '_parent_shared_folder_id_value', '_shared_folder_id_value', '_traverse_only_value', '_no_access_value', ] _has_required_fields = True def __init__(self, read_only=None, parent_shared_folder_id=None, shared_folder_id=None, traverse_only=None, no_access=None): super(FolderSharingInfo, self).__init__(read_only) self._parent_shared_folder_id_value = bb.NOT_SET self._shared_folder_id_value = bb.NOT_SET self._traverse_only_value = bb.NOT_SET self._no_access_value = bb.NOT_SET if parent_shared_folder_id is not None: self.parent_shared_folder_id = parent_shared_folder_id if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if traverse_only is not None: self.traverse_only = traverse_only if no_access is not None: self.no_access = no_access # Instance attribute type: str (validator is set below) parent_shared_folder_id = bb.Attribute("parent_shared_folder_id", nullable=True) # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id", nullable=True) # Instance attribute type: bool (validator is set below) traverse_only = bb.Attribute("traverse_only") # Instance attribute type: bool (validator is set below) no_access = bb.Attribute("no_access") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderSharingInfo, self)._process_custom_annotations(annotation_type, field_path, processor) FolderSharingInfo_validator = bv.Struct(FolderSharingInfo) class GetCopyReferenceArg(bb.Struct): """ :ivar files.GetCopyReferenceArg.path: The path to the file or folder you want to get a copy reference to. """ __slots__ = [ '_path_value', ] _has_required_fields = True def __init__(self, path=None): self._path_value = bb.NOT_SET if path is not None: self.path = path # Instance attribute type: str (validator is set below) path = bb.Attribute("path") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetCopyReferenceArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetCopyReferenceArg_validator = bv.Struct(GetCopyReferenceArg) class GetCopyReferenceError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: GetCopyReferenceError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetCopyReferenceError, self)._process_custom_annotations(annotation_type, field_path, processor) GetCopyReferenceError_validator = bv.Union(GetCopyReferenceError) class GetCopyReferenceResult(bb.Struct): """ :ivar files.GetCopyReferenceResult.metadata: Metadata of the file or folder. :ivar files.GetCopyReferenceResult.copy_reference: A copy reference to the file or folder. :ivar files.GetCopyReferenceResult.expires: The expiration date of the copy reference. This value is currently set to be far enough in the future so that expiration is effectively not an issue. """ __slots__ = [ '_metadata_value', '_copy_reference_value', '_expires_value', ] _has_required_fields = True def __init__(self, metadata=None, copy_reference=None, expires=None): self._metadata_value = bb.NOT_SET self._copy_reference_value = bb.NOT_SET self._expires_value = bb.NOT_SET if metadata is not None: self.metadata = metadata if copy_reference is not None: self.copy_reference = copy_reference if expires is not None: self.expires = expires # Instance attribute type: Metadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) # Instance attribute type: str (validator is set below) copy_reference = bb.Attribute("copy_reference") # Instance attribute type: datetime.datetime (validator is set below) expires = bb.Attribute("expires") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetCopyReferenceResult, self)._process_custom_annotations(annotation_type, field_path, processor) GetCopyReferenceResult_validator = bv.Struct(GetCopyReferenceResult) class GetTagsArg(bb.Struct): """ :ivar files.GetTagsArg.paths: Path to the items. """ __slots__ = [ '_paths_value', ] _has_required_fields = True def __init__(self, paths=None): self._paths_value = bb.NOT_SET if paths is not None: self.paths = paths # Instance attribute type: list of [str] (validator is set below) paths = bb.Attribute("paths") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTagsArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetTagsArg_validator = bv.Struct(GetTagsArg) class GetTagsResult(bb.Struct): """ :ivar files.GetTagsResult.paths_to_tags: List of paths and their corresponding tags. """ __slots__ = [ '_paths_to_tags_value', ] _has_required_fields = True def __init__(self, paths_to_tags=None): self._paths_to_tags_value = bb.NOT_SET if paths_to_tags is not None: self.paths_to_tags = paths_to_tags # Instance attribute type: list of [PathToTags] (validator is set below) paths_to_tags = bb.Attribute("paths_to_tags") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTagsResult, self)._process_custom_annotations(annotation_type, field_path, processor) GetTagsResult_validator = bv.Struct(GetTagsResult) class GetTemporaryLinkArg(bb.Struct): """ :ivar files.GetTemporaryLinkArg.path: The path to the file you want a temporary link to. """ __slots__ = [ '_path_value', ] _has_required_fields = True def __init__(self, path=None): self._path_value = bb.NOT_SET if path is not None: self.path = path # Instance attribute type: str (validator is set below) path = bb.Attribute("path") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTemporaryLinkArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetTemporaryLinkArg_validator = bv.Struct(GetTemporaryLinkArg) class GetTemporaryLinkError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.GetTemporaryLinkError.email_not_verified: This user's email address is not verified. This functionality is only available on accounts with a verified email address. Users can verify their email address `here `_. :ivar files.GetTemporaryLinkError.unsupported_file: Cannot get temporary link to this file type; use :meth:`dropbox.dropbox_client.Dropbox.files_export` instead. :ivar files.GetTemporaryLinkError.not_allowed: The user is not allowed to request a temporary link to the specified file. For example, this can occur if the file is restricted or if the user's links are `banned `_. """ _catch_all = 'other' # Attribute is overwritten below the class definition email_not_verified = None # Attribute is overwritten below the class definition unsupported_file = None # Attribute is overwritten below the class definition not_allowed = None # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: GetTemporaryLinkError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_email_not_verified(self): """ Check if the union tag is ``email_not_verified``. :rtype: bool """ return self._tag == 'email_not_verified' def is_unsupported_file(self): """ Check if the union tag is ``unsupported_file``. :rtype: bool """ return self._tag == 'unsupported_file' def is_not_allowed(self): """ Check if the union tag is ``not_allowed``. :rtype: bool """ return self._tag == 'not_allowed' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTemporaryLinkError, self)._process_custom_annotations(annotation_type, field_path, processor) GetTemporaryLinkError_validator = bv.Union(GetTemporaryLinkError) class GetTemporaryLinkResult(bb.Struct): """ :ivar files.GetTemporaryLinkResult.metadata: Metadata of the file. :ivar files.GetTemporaryLinkResult.link: The temporary link which can be used to stream content the file. """ __slots__ = [ '_metadata_value', '_link_value', ] _has_required_fields = True def __init__(self, metadata=None, link=None): self._metadata_value = bb.NOT_SET self._link_value = bb.NOT_SET if metadata is not None: self.metadata = metadata if link is not None: self.link = link # Instance attribute type: FileMetadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) # Instance attribute type: str (validator is set below) link = bb.Attribute("link") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTemporaryLinkResult, self)._process_custom_annotations(annotation_type, field_path, processor) GetTemporaryLinkResult_validator = bv.Struct(GetTemporaryLinkResult) class GetTemporaryUploadLinkArg(bb.Struct): """ :ivar files.GetTemporaryUploadLinkArg.commit_info: Contains the path and other optional modifiers for the future upload commit. Equivalent to the parameters provided to :meth:`dropbox.dropbox_client.Dropbox.files_upload`. :ivar files.GetTemporaryUploadLinkArg.duration: How long before this link expires, in seconds. Attempting to start an upload with this link longer than this period of time after link creation will result in an error. """ __slots__ = [ '_commit_info_value', '_duration_value', ] _has_required_fields = True def __init__(self, commit_info=None, duration=None): self._commit_info_value = bb.NOT_SET self._duration_value = bb.NOT_SET if commit_info is not None: self.commit_info = commit_info if duration is not None: self.duration = duration # Instance attribute type: CommitInfo (validator is set below) commit_info = bb.Attribute("commit_info", user_defined=True) # Instance attribute type: float (validator is set below) duration = bb.Attribute("duration") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTemporaryUploadLinkArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetTemporaryUploadLinkArg_validator = bv.Struct(GetTemporaryUploadLinkArg) class GetTemporaryUploadLinkResult(bb.Struct): """ :ivar files.GetTemporaryUploadLinkResult.link: The temporary link which can be used to stream a file to a Dropbox location. """ __slots__ = [ '_link_value', ] _has_required_fields = True def __init__(self, link=None): self._link_value = bb.NOT_SET if link is not None: self.link = link # Instance attribute type: str (validator is set below) link = bb.Attribute("link") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTemporaryUploadLinkResult, self)._process_custom_annotations(annotation_type, field_path, processor) GetTemporaryUploadLinkResult_validator = bv.Struct(GetTemporaryUploadLinkResult) class GetThumbnailBatchArg(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.files_get_thumbnail_batch`. :ivar files.GetThumbnailBatchArg.entries: List of files to get thumbnails. """ __slots__ = [ '_entries_value', ] _has_required_fields = True def __init__(self, entries=None): self._entries_value = bb.NOT_SET if entries is not None: self.entries = entries # Instance attribute type: list of [ThumbnailArg] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetThumbnailBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetThumbnailBatchArg_validator = bv.Struct(GetThumbnailBatchArg) class GetThumbnailBatchError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.GetThumbnailBatchError.too_many_files: The operation involves more than 25 files. """ _catch_all = 'other' # Attribute is overwritten below the class definition too_many_files = None # Attribute is overwritten below the class definition other = None def is_too_many_files(self): """ Check if the union tag is ``too_many_files``. :rtype: bool """ return self._tag == 'too_many_files' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetThumbnailBatchError, self)._process_custom_annotations(annotation_type, field_path, processor) GetThumbnailBatchError_validator = bv.Union(GetThumbnailBatchError) class GetThumbnailBatchResult(bb.Struct): """ :ivar files.GetThumbnailBatchResult.entries: List of files and their thumbnails. """ __slots__ = [ '_entries_value', ] _has_required_fields = True def __init__(self, entries=None): self._entries_value = bb.NOT_SET if entries is not None: self.entries = entries # Instance attribute type: list of [GetThumbnailBatchResultEntry] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetThumbnailBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) GetThumbnailBatchResult_validator = bv.Struct(GetThumbnailBatchResult) class GetThumbnailBatchResultData(bb.Struct): """ :ivar files.GetThumbnailBatchResultData.thumbnail: A string containing the base64-encoded thumbnail data for this file. """ __slots__ = [ '_metadata_value', '_thumbnail_value', ] _has_required_fields = True def __init__(self, metadata=None, thumbnail=None): self._metadata_value = bb.NOT_SET self._thumbnail_value = bb.NOT_SET if metadata is not None: self.metadata = metadata if thumbnail is not None: self.thumbnail = thumbnail # Instance attribute type: FileMetadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) # Instance attribute type: str (validator is set below) thumbnail = bb.Attribute("thumbnail") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetThumbnailBatchResultData, self)._process_custom_annotations(annotation_type, field_path, processor) GetThumbnailBatchResultData_validator = bv.Struct(GetThumbnailBatchResultData) class GetThumbnailBatchResultEntry(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar ThumbnailError GetThumbnailBatchResultEntry.failure: The result for this file if it was an error. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param GetThumbnailBatchResultData val: :rtype: GetThumbnailBatchResultEntry """ return cls('success', val) @classmethod def failure(cls, val): """ Create an instance of this class set to the ``failure`` tag with value ``val``. :param ThumbnailError val: :rtype: GetThumbnailBatchResultEntry """ return cls('failure', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_failure(self): """ Check if the union tag is ``failure``. :rtype: bool """ return self._tag == 'failure' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_success(self): """ Only call this if :meth:`is_success` is true. :rtype: GetThumbnailBatchResultData """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_failure(self): """ The result for this file if it was an error. Only call this if :meth:`is_failure` is true. :rtype: ThumbnailError """ if not self.is_failure(): raise AttributeError("tag 'failure' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetThumbnailBatchResultEntry, self)._process_custom_annotations(annotation_type, field_path, processor) GetThumbnailBatchResultEntry_validator = bv.Union(GetThumbnailBatchResultEntry) class GpsCoordinates(bb.Struct): """ GPS coordinates for a photo or video. :ivar files.GpsCoordinates.latitude: Latitude of the GPS coordinates. :ivar files.GpsCoordinates.longitude: Longitude of the GPS coordinates. """ __slots__ = [ '_latitude_value', '_longitude_value', ] _has_required_fields = True def __init__(self, latitude=None, longitude=None): self._latitude_value = bb.NOT_SET self._longitude_value = bb.NOT_SET if latitude is not None: self.latitude = latitude if longitude is not None: self.longitude = longitude # Instance attribute type: float (validator is set below) latitude = bb.Attribute("latitude") # Instance attribute type: float (validator is set below) longitude = bb.Attribute("longitude") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GpsCoordinates, self)._process_custom_annotations(annotation_type, field_path, processor) GpsCoordinates_validator = bv.Struct(GpsCoordinates) class HighlightSpan(bb.Struct): """ :ivar files.HighlightSpan.highlight_str: String to be determined whether it should be highlighted or not. :ivar files.HighlightSpan.is_highlighted: The string should be highlighted or not. """ __slots__ = [ '_highlight_str_value', '_is_highlighted_value', ] _has_required_fields = True def __init__(self, highlight_str=None, is_highlighted=None): self._highlight_str_value = bb.NOT_SET self._is_highlighted_value = bb.NOT_SET if highlight_str is not None: self.highlight_str = highlight_str if is_highlighted is not None: self.is_highlighted = is_highlighted # Instance attribute type: str (validator is set below) highlight_str = bb.Attribute("highlight_str") # Instance attribute type: bool (validator is set below) is_highlighted = bb.Attribute("is_highlighted") def _process_custom_annotations(self, annotation_type, field_path, processor): super(HighlightSpan, self)._process_custom_annotations(annotation_type, field_path, processor) HighlightSpan_validator = bv.Struct(HighlightSpan) class ImportFormat(bb.Union): """ The import format of the incoming Paper doc content. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.ImportFormat.html: The provided data is interpreted as standard HTML. :ivar files.ImportFormat.markdown: The provided data is interpreted as markdown. :ivar files.ImportFormat.plain_text: The provided data is interpreted as plain text. """ _catch_all = 'other' # Attribute is overwritten below the class definition html = None # Attribute is overwritten below the class definition markdown = None # Attribute is overwritten below the class definition plain_text = None # Attribute is overwritten below the class definition other = None def is_html(self): """ Check if the union tag is ``html``. :rtype: bool """ return self._tag == 'html' def is_markdown(self): """ Check if the union tag is ``markdown``. :rtype: bool """ return self._tag == 'markdown' def is_plain_text(self): """ Check if the union tag is ``plain_text``. :rtype: bool """ return self._tag == 'plain_text' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ImportFormat, self)._process_custom_annotations(annotation_type, field_path, processor) ImportFormat_validator = bv.Union(ImportFormat) class ListFolderArg(bb.Struct): """ :ivar files.ListFolderArg.path: A unique identifier for the file. :ivar files.ListFolderArg.recursive: If true, the list folder operation will be applied recursively to all subfolders and the response will contain contents of all subfolders. :ivar files.ListFolderArg.include_media_info: If true, ``FileMetadata.media_info`` is set for photo and video. This parameter will no longer have an effect starting December 2, 2019. :ivar files.ListFolderArg.include_deleted: If true, the results will include entries for files and folders that used to exist but were deleted. :ivar files.ListFolderArg.include_has_explicit_shared_members: If true, the results will include a flag for each file indicating whether or not that file has any explicit members. :ivar files.ListFolderArg.include_mounted_folders: If true, the results will include entries under mounted folders which includes app folder, shared folder and team folder. :ivar files.ListFolderArg.limit: The maximum number of results to return per request. Note: This is an approximate number and there can be slightly more entries returned in some cases. :ivar files.ListFolderArg.shared_link: A shared link to list the contents of. If the link is password-protected, the password must be provided. If this field is present, ``ListFolderArg.path`` will be relative to root of the shared link. Only non-recursive mode is supported for shared link. :ivar files.ListFolderArg.include_property_groups: If set to a valid list of template IDs, ``FileMetadata.property_groups`` is set if there exists property data associated with the file and each of the listed templates. :ivar files.ListFolderArg.include_non_downloadable_files: If true, include files that are not downloadable, i.e. Google Docs. """ __slots__ = [ '_path_value', '_recursive_value', '_include_media_info_value', '_include_deleted_value', '_include_has_explicit_shared_members_value', '_include_mounted_folders_value', '_limit_value', '_shared_link_value', '_include_property_groups_value', '_include_non_downloadable_files_value', ] _has_required_fields = True def __init__(self, path=None, recursive=None, include_media_info=None, include_deleted=None, include_has_explicit_shared_members=None, include_mounted_folders=None, limit=None, shared_link=None, include_property_groups=None, include_non_downloadable_files=None): self._path_value = bb.NOT_SET self._recursive_value = bb.NOT_SET self._include_media_info_value = bb.NOT_SET self._include_deleted_value = bb.NOT_SET self._include_has_explicit_shared_members_value = bb.NOT_SET self._include_mounted_folders_value = bb.NOT_SET self._limit_value = bb.NOT_SET self._shared_link_value = bb.NOT_SET self._include_property_groups_value = bb.NOT_SET self._include_non_downloadable_files_value = bb.NOT_SET if path is not None: self.path = path if recursive is not None: self.recursive = recursive if include_media_info is not None: self.include_media_info = include_media_info if include_deleted is not None: self.include_deleted = include_deleted if include_has_explicit_shared_members is not None: self.include_has_explicit_shared_members = include_has_explicit_shared_members if include_mounted_folders is not None: self.include_mounted_folders = include_mounted_folders if limit is not None: self.limit = limit if shared_link is not None: self.shared_link = shared_link if include_property_groups is not None: self.include_property_groups = include_property_groups if include_non_downloadable_files is not None: self.include_non_downloadable_files = include_non_downloadable_files # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: bool (validator is set below) recursive = bb.Attribute("recursive") # Instance attribute type: bool (validator is set below) include_media_info = bb.Attribute("include_media_info") # Instance attribute type: bool (validator is set below) include_deleted = bb.Attribute("include_deleted") # Instance attribute type: bool (validator is set below) include_has_explicit_shared_members = bb.Attribute("include_has_explicit_shared_members") # Instance attribute type: bool (validator is set below) include_mounted_folders = bb.Attribute("include_mounted_folders") # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit", nullable=True) # Instance attribute type: SharedLink (validator is set below) shared_link = bb.Attribute("shared_link", nullable=True, user_defined=True) # Instance attribute type: file_properties.TemplateFilterBase (validator is set below) include_property_groups = bb.Attribute("include_property_groups", nullable=True, user_defined=True) # Instance attribute type: bool (validator is set below) include_non_downloadable_files = bb.Attribute("include_non_downloadable_files") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderArg_validator = bv.Struct(ListFolderArg) class ListFolderContinueArg(bb.Struct): """ :ivar files.ListFolderContinueArg.cursor: The cursor returned by your last call to :meth:`dropbox.dropbox_client.Dropbox.files_list_folder` or :meth:`dropbox.dropbox_client.Dropbox.files_list_folder_continue`. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderContinueArg_validator = bv.Struct(ListFolderContinueArg) class ListFolderContinueError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.ListFolderContinueError.reset: Indicates that the cursor has been invalidated. Call :meth:`dropbox.dropbox_client.Dropbox.files_list_folder` to obtain a new cursor. """ _catch_all = 'other' # Attribute is overwritten below the class definition reset = None # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: ListFolderContinueError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_reset(self): """ Check if the union tag is ``reset``. :rtype: bool """ return self._tag == 'reset' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderContinueError_validator = bv.Union(ListFolderContinueError) class ListFolderError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: ListFolderError """ return cls('path', val) @classmethod def template_error(cls, val): """ Create an instance of this class set to the ``template_error`` tag with value ``val``. :param file_properties.TemplateError val: :rtype: ListFolderError """ return cls('template_error', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_template_error(self): """ Check if the union tag is ``template_error``. :rtype: bool """ return self._tag == 'template_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def get_template_error(self): """ Only call this if :meth:`is_template_error` is true. :rtype: file_properties.TemplateError """ if not self.is_template_error(): raise AttributeError("tag 'template_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderError, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderError_validator = bv.Union(ListFolderError) class ListFolderGetLatestCursorResult(bb.Struct): """ :ivar files.ListFolderGetLatestCursorResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.files_list_folder_continue` to see what's changed in the folder since your previous query. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderGetLatestCursorResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderGetLatestCursorResult_validator = bv.Struct(ListFolderGetLatestCursorResult) class ListFolderLongpollArg(bb.Struct): """ :ivar files.ListFolderLongpollArg.cursor: A cursor as returned by :meth:`dropbox.dropbox_client.Dropbox.files_list_folder` or :meth:`dropbox.dropbox_client.Dropbox.files_list_folder_continue`. Cursors retrieved by setting ``ListFolderArg.include_media_info`` to ``True`` are not supported. :ivar files.ListFolderLongpollArg.timeout: A timeout in seconds. The request will block for at most this length of time, plus up to 90 seconds of random jitter added to avoid the thundering herd problem. Care should be taken when using this parameter, as some network infrastructure does not support long timeouts. """ __slots__ = [ '_cursor_value', '_timeout_value', ] _has_required_fields = True def __init__(self, cursor=None, timeout=None): self._cursor_value = bb.NOT_SET self._timeout_value = bb.NOT_SET if cursor is not None: self.cursor = cursor if timeout is not None: self.timeout = timeout # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") # Instance attribute type: int (validator is set below) timeout = bb.Attribute("timeout") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderLongpollArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderLongpollArg_validator = bv.Struct(ListFolderLongpollArg) class ListFolderLongpollError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.ListFolderLongpollError.reset: Indicates that the cursor has been invalidated. Call :meth:`dropbox.dropbox_client.Dropbox.files_list_folder` to obtain a new cursor. """ _catch_all = 'other' # Attribute is overwritten below the class definition reset = None # Attribute is overwritten below the class definition other = None def is_reset(self): """ Check if the union tag is ``reset``. :rtype: bool """ return self._tag == 'reset' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderLongpollError, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderLongpollError_validator = bv.Union(ListFolderLongpollError) class ListFolderLongpollResult(bb.Struct): """ :ivar files.ListFolderLongpollResult.changes: Indicates whether new changes are available. If true, call :meth:`dropbox.dropbox_client.Dropbox.files_list_folder_continue` to retrieve the changes. :ivar files.ListFolderLongpollResult.backoff: If present, backoff for at least this many seconds before calling :meth:`dropbox.dropbox_client.Dropbox.files_list_folder_longpoll` again. """ __slots__ = [ '_changes_value', '_backoff_value', ] _has_required_fields = True def __init__(self, changes=None, backoff=None): self._changes_value = bb.NOT_SET self._backoff_value = bb.NOT_SET if changes is not None: self.changes = changes if backoff is not None: self.backoff = backoff # Instance attribute type: bool (validator is set below) changes = bb.Attribute("changes") # Instance attribute type: int (validator is set below) backoff = bb.Attribute("backoff", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderLongpollResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderLongpollResult_validator = bv.Struct(ListFolderLongpollResult) class ListFolderResult(bb.Struct): """ :ivar files.ListFolderResult.entries: The files and (direct) subfolders in the folder. :ivar files.ListFolderResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.files_list_folder_continue` to see what's changed in the folder since your previous query. :ivar files.ListFolderResult.has_more: If true, then there are more entries available. Pass the cursor to :meth:`dropbox.dropbox_client.Dropbox.files_list_folder_continue` to retrieve the rest. """ __slots__ = [ '_entries_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, entries=None, cursor=None, has_more=None): self._entries_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if entries is not None: self.entries = entries if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [Metadata] (validator is set below) entries = bb.Attribute("entries") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderResult_validator = bv.Struct(ListFolderResult) class ListRevisionsArg(bb.Struct): """ :ivar files.ListRevisionsArg.path: The path to the file you want to see the revisions of. :ivar files.ListRevisionsArg.mode: Determines the behavior of the API in listing the revisions for a given file path or id. :ivar files.ListRevisionsArg.limit: The maximum number of revision entries returned. """ __slots__ = [ '_path_value', '_mode_value', '_limit_value', ] _has_required_fields = True def __init__(self, path=None, mode=None, limit=None): self._path_value = bb.NOT_SET self._mode_value = bb.NOT_SET self._limit_value = bb.NOT_SET if path is not None: self.path = path if mode is not None: self.mode = mode if limit is not None: self.limit = limit # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: ListRevisionsMode (validator is set below) mode = bb.Attribute("mode", user_defined=True) # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListRevisionsArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListRevisionsArg_validator = bv.Struct(ListRevisionsArg) class ListRevisionsError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: ListRevisionsError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListRevisionsError, self)._process_custom_annotations(annotation_type, field_path, processor) ListRevisionsError_validator = bv.Union(ListRevisionsError) class ListRevisionsMode(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.ListRevisionsMode.path: Returns revisions with the same file path as identified by the latest file entry at the given file path or id. :ivar files.ListRevisionsMode.id: Returns revisions with the same file id as identified by the latest file entry at the given file path or id. """ _catch_all = 'other' # Attribute is overwritten below the class definition path = None # Attribute is overwritten below the class definition id = None # Attribute is overwritten below the class definition other = None def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_id(self): """ Check if the union tag is ``id``. :rtype: bool """ return self._tag == 'id' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListRevisionsMode, self)._process_custom_annotations(annotation_type, field_path, processor) ListRevisionsMode_validator = bv.Union(ListRevisionsMode) class ListRevisionsResult(bb.Struct): """ :ivar files.ListRevisionsResult.is_deleted: If the file identified by the latest revision in the response is either deleted or moved. :ivar files.ListRevisionsResult.server_deleted: The time of deletion if the file was deleted. :ivar files.ListRevisionsResult.entries: The revisions for the file. Only revisions that are not deleted will show up here. """ __slots__ = [ '_is_deleted_value', '_server_deleted_value', '_entries_value', ] _has_required_fields = True def __init__(self, is_deleted=None, entries=None, server_deleted=None): self._is_deleted_value = bb.NOT_SET self._server_deleted_value = bb.NOT_SET self._entries_value = bb.NOT_SET if is_deleted is not None: self.is_deleted = is_deleted if server_deleted is not None: self.server_deleted = server_deleted if entries is not None: self.entries = entries # Instance attribute type: bool (validator is set below) is_deleted = bb.Attribute("is_deleted") # Instance attribute type: datetime.datetime (validator is set below) server_deleted = bb.Attribute("server_deleted", nullable=True) # Instance attribute type: list of [FileMetadata] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListRevisionsResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListRevisionsResult_validator = bv.Struct(ListRevisionsResult) class LockConflictError(bb.Struct): """ :ivar files.LockConflictError.lock: The lock that caused the conflict. """ __slots__ = [ '_lock_value', ] _has_required_fields = True def __init__(self, lock=None): self._lock_value = bb.NOT_SET if lock is not None: self.lock = lock # Instance attribute type: FileLock (validator is set below) lock = bb.Attribute("lock", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LockConflictError, self)._process_custom_annotations(annotation_type, field_path, processor) LockConflictError_validator = bv.Struct(LockConflictError) class LockFileArg(bb.Struct): """ :ivar files.LockFileArg.path: Path in the user's Dropbox to a file. """ __slots__ = [ '_path_value', ] _has_required_fields = True def __init__(self, path=None): self._path_value = bb.NOT_SET if path is not None: self.path = path # Instance attribute type: str (validator is set below) path = bb.Attribute("path") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LockFileArg, self)._process_custom_annotations(annotation_type, field_path, processor) LockFileArg_validator = bv.Struct(LockFileArg) class LockFileBatchArg(bb.Struct): """ :ivar files.LockFileBatchArg.entries: List of 'entries'. Each 'entry' contains a path of the file which will be locked or queried. Duplicate path arguments in the batch are considered only once. """ __slots__ = [ '_entries_value', ] _has_required_fields = True def __init__(self, entries=None): self._entries_value = bb.NOT_SET if entries is not None: self.entries = entries # Instance attribute type: list of [LockFileArg] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LockFileBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) LockFileBatchArg_validator = bv.Struct(LockFileBatchArg) class LockFileBatchResult(FileOpsResult): """ :ivar files.LockFileBatchResult.entries: Each Entry in the 'entries' will have '.tag' with the operation status (e.g. success), the metadata for the file and the lock state after the operation. """ __slots__ = [ '_entries_value', ] _has_required_fields = True def __init__(self, entries=None): super(LockFileBatchResult, self).__init__() self._entries_value = bb.NOT_SET if entries is not None: self.entries = entries # Instance attribute type: list of [LockFileResultEntry] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LockFileBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) LockFileBatchResult_validator = bv.Struct(LockFileBatchResult) class LockFileError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar LookupError LockFileError.path_lookup: Could not find the specified resource. :ivar files.LockFileError.too_many_write_operations: There are too many write operations in user's Dropbox. Please retry this request. :ivar files.LockFileError.too_many_files: There are too many files in one request. Please retry with fewer files. :ivar files.LockFileError.no_write_permission: The user does not have permissions to change the lock state or access the file. :ivar files.LockFileError.cannot_be_locked: Item is a type that cannot be locked. :ivar files.LockFileError.file_not_shared: Requested file is not currently shared. :ivar LockConflictError LockFileError.lock_conflict: The user action conflicts with an existing lock on the file. :ivar files.LockFileError.internal_error: Something went wrong with the job on Dropbox's end. You'll need to verify that the action you were taking succeeded, and if not, try again. This should happen very rarely. """ _catch_all = 'other' # Attribute is overwritten below the class definition too_many_write_operations = None # Attribute is overwritten below the class definition too_many_files = None # Attribute is overwritten below the class definition no_write_permission = None # Attribute is overwritten below the class definition cannot_be_locked = None # Attribute is overwritten below the class definition file_not_shared = None # Attribute is overwritten below the class definition internal_error = None # Attribute is overwritten below the class definition other = None @classmethod def path_lookup(cls, val): """ Create an instance of this class set to the ``path_lookup`` tag with value ``val``. :param LookupError val: :rtype: LockFileError """ return cls('path_lookup', val) @classmethod def lock_conflict(cls, val): """ Create an instance of this class set to the ``lock_conflict`` tag with value ``val``. :param LockConflictError val: :rtype: LockFileError """ return cls('lock_conflict', val) def is_path_lookup(self): """ Check if the union tag is ``path_lookup``. :rtype: bool """ return self._tag == 'path_lookup' def is_too_many_write_operations(self): """ Check if the union tag is ``too_many_write_operations``. :rtype: bool """ return self._tag == 'too_many_write_operations' def is_too_many_files(self): """ Check if the union tag is ``too_many_files``. :rtype: bool """ return self._tag == 'too_many_files' def is_no_write_permission(self): """ Check if the union tag is ``no_write_permission``. :rtype: bool """ return self._tag == 'no_write_permission' def is_cannot_be_locked(self): """ Check if the union tag is ``cannot_be_locked``. :rtype: bool """ return self._tag == 'cannot_be_locked' def is_file_not_shared(self): """ Check if the union tag is ``file_not_shared``. :rtype: bool """ return self._tag == 'file_not_shared' def is_lock_conflict(self): """ Check if the union tag is ``lock_conflict``. :rtype: bool """ return self._tag == 'lock_conflict' def is_internal_error(self): """ Check if the union tag is ``internal_error``. :rtype: bool """ return self._tag == 'internal_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path_lookup(self): """ Could not find the specified resource. Only call this if :meth:`is_path_lookup` is true. :rtype: LookupError """ if not self.is_path_lookup(): raise AttributeError("tag 'path_lookup' not set") return self._value def get_lock_conflict(self): """ The user action conflicts with an existing lock on the file. Only call this if :meth:`is_lock_conflict` is true. :rtype: LockConflictError """ if not self.is_lock_conflict(): raise AttributeError("tag 'lock_conflict' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(LockFileError, self)._process_custom_annotations(annotation_type, field_path, processor) LockFileError_validator = bv.Union(LockFileError) class LockFileResult(bb.Struct): """ :ivar files.LockFileResult.metadata: Metadata of the file. :ivar files.LockFileResult.lock: The file lock state after the operation. """ __slots__ = [ '_metadata_value', '_lock_value', ] _has_required_fields = True def __init__(self, metadata=None, lock=None): self._metadata_value = bb.NOT_SET self._lock_value = bb.NOT_SET if metadata is not None: self.metadata = metadata if lock is not None: self.lock = lock # Instance attribute type: Metadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) # Instance attribute type: FileLock (validator is set below) lock = bb.Attribute("lock", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LockFileResult, self)._process_custom_annotations(annotation_type, field_path, processor) LockFileResult_validator = bv.Struct(LockFileResult) class LockFileResultEntry(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param LockFileResult val: :rtype: LockFileResultEntry """ return cls('success', val) @classmethod def failure(cls, val): """ Create an instance of this class set to the ``failure`` tag with value ``val``. :param LockFileError val: :rtype: LockFileResultEntry """ return cls('failure', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_failure(self): """ Check if the union tag is ``failure``. :rtype: bool """ return self._tag == 'failure' def get_success(self): """ Only call this if :meth:`is_success` is true. :rtype: LockFileResult """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_failure(self): """ Only call this if :meth:`is_failure` is true. :rtype: LockFileError """ if not self.is_failure(): raise AttributeError("tag 'failure' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(LockFileResultEntry, self)._process_custom_annotations(annotation_type, field_path, processor) LockFileResultEntry_validator = bv.Union(LockFileResultEntry) class LookupError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar Optional[str] files.LookupError.malformed_path: The given path does not satisfy the required path format. Please refer to the :link:`Path formats documentation https://www.dropbox.com/developers/documentation/http/documentation#path-formats` for more information. :ivar files.LookupError.not_found: There is nothing at the given path. :ivar files.LookupError.not_file: We were expecting a file, but the given path refers to something that isn't a file. :ivar files.LookupError.not_folder: We were expecting a folder, but the given path refers to something that isn't a folder. :ivar files.LookupError.restricted_content: The file cannot be transferred because the content is restricted. For example, we might restrict a file due to legal requirements. :ivar files.LookupError.unsupported_content_type: This operation is not supported for this content type. :ivar files.LookupError.locked: The given path is locked. """ _catch_all = 'other' # Attribute is overwritten below the class definition not_found = None # Attribute is overwritten below the class definition not_file = None # Attribute is overwritten below the class definition not_folder = None # Attribute is overwritten below the class definition restricted_content = None # Attribute is overwritten below the class definition unsupported_content_type = None # Attribute is overwritten below the class definition locked = None # Attribute is overwritten below the class definition other = None @classmethod def malformed_path(cls, val): """ Create an instance of this class set to the ``malformed_path`` tag with value ``val``. :param Optional[str] val: :rtype: LookupError """ return cls('malformed_path', val) def is_malformed_path(self): """ Check if the union tag is ``malformed_path``. :rtype: bool """ return self._tag == 'malformed_path' def is_not_found(self): """ Check if the union tag is ``not_found``. :rtype: bool """ return self._tag == 'not_found' def is_not_file(self): """ Check if the union tag is ``not_file``. :rtype: bool """ return self._tag == 'not_file' def is_not_folder(self): """ Check if the union tag is ``not_folder``. :rtype: bool """ return self._tag == 'not_folder' def is_restricted_content(self): """ Check if the union tag is ``restricted_content``. :rtype: bool """ return self._tag == 'restricted_content' def is_unsupported_content_type(self): """ Check if the union tag is ``unsupported_content_type``. :rtype: bool """ return self._tag == 'unsupported_content_type' def is_locked(self): """ Check if the union tag is ``locked``. :rtype: bool """ return self._tag == 'locked' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_malformed_path(self): """ The given path does not satisfy the required path format. Please refer to the `Path formats documentation `_ for more information. Only call this if :meth:`is_malformed_path` is true. :rtype: Optional[str] """ if not self.is_malformed_path(): raise AttributeError("tag 'malformed_path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(LookupError, self)._process_custom_annotations(annotation_type, field_path, processor) LookupError_validator = bv.Union(LookupError) class MediaInfo(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.MediaInfo.pending: Indicate the photo/video is still under processing and metadata is not available yet. :ivar MediaMetadata MediaInfo.metadata: The metadata for the photo/video. """ _catch_all = None # Attribute is overwritten below the class definition pending = None @classmethod def metadata(cls, val): """ Create an instance of this class set to the ``metadata`` tag with value ``val``. :param MediaMetadata val: :rtype: MediaInfo """ return cls('metadata', val) def is_pending(self): """ Check if the union tag is ``pending``. :rtype: bool """ return self._tag == 'pending' def is_metadata(self): """ Check if the union tag is ``metadata``. :rtype: bool """ return self._tag == 'metadata' def get_metadata(self): """ The metadata for the photo/video. Only call this if :meth:`is_metadata` is true. :rtype: MediaMetadata """ if not self.is_metadata(): raise AttributeError("tag 'metadata' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MediaInfo, self)._process_custom_annotations(annotation_type, field_path, processor) MediaInfo_validator = bv.Union(MediaInfo) class MediaMetadata(bb.Struct): """ Metadata for a photo or video. :ivar files.MediaMetadata.dimensions: Dimension of the photo/video. :ivar files.MediaMetadata.location: The GPS coordinate of the photo/video. :ivar files.MediaMetadata.time_taken: The timestamp when the photo/video is taken. """ __slots__ = [ '_dimensions_value', '_location_value', '_time_taken_value', ] _has_required_fields = False def __init__(self, dimensions=None, location=None, time_taken=None): self._dimensions_value = bb.NOT_SET self._location_value = bb.NOT_SET self._time_taken_value = bb.NOT_SET if dimensions is not None: self.dimensions = dimensions if location is not None: self.location = location if time_taken is not None: self.time_taken = time_taken # Instance attribute type: Dimensions (validator is set below) dimensions = bb.Attribute("dimensions", nullable=True, user_defined=True) # Instance attribute type: GpsCoordinates (validator is set below) location = bb.Attribute("location", nullable=True, user_defined=True) # Instance attribute type: datetime.datetime (validator is set below) time_taken = bb.Attribute("time_taken", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MediaMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) MediaMetadata_validator = bv.StructTree(MediaMetadata) class MetadataV2(bb.Union): """ Metadata for a file, folder or other resource types. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def metadata(cls, val): """ Create an instance of this class set to the ``metadata`` tag with value ``val``. :param Metadata val: :rtype: MetadataV2 """ return cls('metadata', val) def is_metadata(self): """ Check if the union tag is ``metadata``. :rtype: bool """ return self._tag == 'metadata' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_metadata(self): """ Only call this if :meth:`is_metadata` is true. :rtype: Metadata """ if not self.is_metadata(): raise AttributeError("tag 'metadata' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MetadataV2, self)._process_custom_annotations(annotation_type, field_path, processor) MetadataV2_validator = bv.Union(MetadataV2) class MinimalFileLinkMetadata(bb.Struct): """ :ivar files.MinimalFileLinkMetadata.url: URL of the shared link. :ivar files.MinimalFileLinkMetadata.id: Unique identifier for the linked file. :ivar files.MinimalFileLinkMetadata.path: Full path in the user's Dropbox. This always starts with a slash. This field will only be present only if the linked file is in the authenticated user's Dropbox. :ivar files.MinimalFileLinkMetadata.rev: A unique identifier for the current revision of a file. This field is the same rev as elsewhere in the API and can be used to detect changes and avoid conflicts. """ __slots__ = [ '_url_value', '_id_value', '_path_value', '_rev_value', ] _has_required_fields = True def __init__(self, url=None, rev=None, id=None, path=None): self._url_value = bb.NOT_SET self._id_value = bb.NOT_SET self._path_value = bb.NOT_SET self._rev_value = bb.NOT_SET if url is not None: self.url = url if id is not None: self.id = id if path is not None: self.path = path if rev is not None: self.rev = rev # Instance attribute type: str (validator is set below) url = bb.Attribute("url") # Instance attribute type: str (validator is set below) id = bb.Attribute("id", nullable=True) # Instance attribute type: str (validator is set below) path = bb.Attribute("path", nullable=True) # Instance attribute type: str (validator is set below) rev = bb.Attribute("rev") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MinimalFileLinkMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) MinimalFileLinkMetadata_validator = bv.Struct(MinimalFileLinkMetadata) class RelocationBatchArgBase(bb.Struct): """ :ivar files.RelocationBatchArgBase.entries: List of entries to be moved or copied. Each entry is :class:`RelocationPath`. :ivar files.RelocationBatchArgBase.autorename: If there's a conflict with any file, have the Dropbox server try to autorename that file to avoid the conflict. """ __slots__ = [ '_entries_value', '_autorename_value', ] _has_required_fields = True def __init__(self, entries=None, autorename=None): self._entries_value = bb.NOT_SET self._autorename_value = bb.NOT_SET if entries is not None: self.entries = entries if autorename is not None: self.autorename = autorename # Instance attribute type: list of [RelocationPath] (validator is set below) entries = bb.Attribute("entries") # Instance attribute type: bool (validator is set below) autorename = bb.Attribute("autorename") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationBatchArgBase, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationBatchArgBase_validator = bv.Struct(RelocationBatchArgBase) class MoveBatchArg(RelocationBatchArgBase): """ :ivar files.MoveBatchArg.allow_ownership_transfer: Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. """ __slots__ = [ '_allow_ownership_transfer_value', ] _has_required_fields = True def __init__(self, entries=None, autorename=None, allow_ownership_transfer=None): super(MoveBatchArg, self).__init__(entries, autorename) self._allow_ownership_transfer_value = bb.NOT_SET if allow_ownership_transfer is not None: self.allow_ownership_transfer = allow_ownership_transfer # Instance attribute type: bool (validator is set below) allow_ownership_transfer = bb.Attribute("allow_ownership_transfer") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MoveBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) MoveBatchArg_validator = bv.Struct(MoveBatchArg) class MoveIntoFamilyError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.MoveIntoFamilyError.is_shared_folder: Moving shared folder into Family Room folder is not allowed. """ _catch_all = 'other' # Attribute is overwritten below the class definition is_shared_folder = None # Attribute is overwritten below the class definition other = None def is_is_shared_folder(self): """ Check if the union tag is ``is_shared_folder``. :rtype: bool """ return self._tag == 'is_shared_folder' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MoveIntoFamilyError, self)._process_custom_annotations(annotation_type, field_path, processor) MoveIntoFamilyError_validator = bv.Union(MoveIntoFamilyError) class MoveIntoVaultError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.MoveIntoVaultError.is_shared_folder: Moving shared folder into Vault is not allowed. """ _catch_all = 'other' # Attribute is overwritten below the class definition is_shared_folder = None # Attribute is overwritten below the class definition other = None def is_is_shared_folder(self): """ Check if the union tag is ``is_shared_folder``. :rtype: bool """ return self._tag == 'is_shared_folder' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MoveIntoVaultError, self)._process_custom_annotations(annotation_type, field_path, processor) MoveIntoVaultError_validator = bv.Union(MoveIntoVaultError) class PaperContentError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.PaperContentError.insufficient_permissions: Your account does not have permissions to edit Paper docs. :ivar files.PaperContentError.content_malformed: The provided content was malformed and cannot be imported to Paper. :ivar files.PaperContentError.doc_length_exceeded: The Paper doc would be too large, split the content into multiple docs. :ivar files.PaperContentError.image_size_exceeded: The imported document contains an image that is too large. The current limit is 1MB. This only applies to HTML with data URI. """ _catch_all = 'other' # Attribute is overwritten below the class definition insufficient_permissions = None # Attribute is overwritten below the class definition content_malformed = None # Attribute is overwritten below the class definition doc_length_exceeded = None # Attribute is overwritten below the class definition image_size_exceeded = None # Attribute is overwritten below the class definition other = None def is_insufficient_permissions(self): """ Check if the union tag is ``insufficient_permissions``. :rtype: bool """ return self._tag == 'insufficient_permissions' def is_content_malformed(self): """ Check if the union tag is ``content_malformed``. :rtype: bool """ return self._tag == 'content_malformed' def is_doc_length_exceeded(self): """ Check if the union tag is ``doc_length_exceeded``. :rtype: bool """ return self._tag == 'doc_length_exceeded' def is_image_size_exceeded(self): """ Check if the union tag is ``image_size_exceeded``. :rtype: bool """ return self._tag == 'image_size_exceeded' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentError, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentError_validator = bv.Union(PaperContentError) class PaperCreateArg(bb.Struct): """ :ivar files.PaperCreateArg.path: The fully qualified path to the location in the user's Dropbox where the Paper Doc should be created. This should include the document's title and end with .paper. :ivar files.PaperCreateArg.import_format: The format of the provided data. """ __slots__ = [ '_path_value', '_import_format_value', ] _has_required_fields = True def __init__(self, path=None, import_format=None): self._path_value = bb.NOT_SET self._import_format_value = bb.NOT_SET if path is not None: self.path = path if import_format is not None: self.import_format = import_format # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: ImportFormat (validator is set below) import_format = bb.Attribute("import_format", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperCreateArg, self)._process_custom_annotations(annotation_type, field_path, processor) PaperCreateArg_validator = bv.Struct(PaperCreateArg) class PaperCreateError(PaperContentError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.PaperCreateError.invalid_path: The file could not be saved to the specified location. :ivar files.PaperCreateError.email_unverified: The user's email must be verified to create Paper docs. :ivar files.PaperCreateError.invalid_file_extension: The file path must end in .paper. :ivar files.PaperCreateError.paper_disabled: Paper is disabled for your team. """ # Attribute is overwritten below the class definition invalid_path = None # Attribute is overwritten below the class definition email_unverified = None # Attribute is overwritten below the class definition invalid_file_extension = None # Attribute is overwritten below the class definition paper_disabled = None def is_invalid_path(self): """ Check if the union tag is ``invalid_path``. :rtype: bool """ return self._tag == 'invalid_path' def is_email_unverified(self): """ Check if the union tag is ``email_unverified``. :rtype: bool """ return self._tag == 'email_unverified' def is_invalid_file_extension(self): """ Check if the union tag is ``invalid_file_extension``. :rtype: bool """ return self._tag == 'invalid_file_extension' def is_paper_disabled(self): """ Check if the union tag is ``paper_disabled``. :rtype: bool """ return self._tag == 'paper_disabled' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperCreateError, self)._process_custom_annotations(annotation_type, field_path, processor) PaperCreateError_validator = bv.Union(PaperCreateError) class PaperCreateResult(bb.Struct): """ :ivar files.PaperCreateResult.url: URL to open the Paper Doc. :ivar files.PaperCreateResult.result_path: The fully qualified path the Paper Doc was actually created at. :ivar files.PaperCreateResult.file_id: The id to use in Dropbox APIs when referencing the Paper Doc. :ivar files.PaperCreateResult.paper_revision: The current doc revision. """ __slots__ = [ '_url_value', '_result_path_value', '_file_id_value', '_paper_revision_value', ] _has_required_fields = True def __init__(self, url=None, result_path=None, file_id=None, paper_revision=None): self._url_value = bb.NOT_SET self._result_path_value = bb.NOT_SET self._file_id_value = bb.NOT_SET self._paper_revision_value = bb.NOT_SET if url is not None: self.url = url if result_path is not None: self.result_path = result_path if file_id is not None: self.file_id = file_id if paper_revision is not None: self.paper_revision = paper_revision # Instance attribute type: str (validator is set below) url = bb.Attribute("url") # Instance attribute type: str (validator is set below) result_path = bb.Attribute("result_path") # Instance attribute type: str (validator is set below) file_id = bb.Attribute("file_id") # Instance attribute type: int (validator is set below) paper_revision = bb.Attribute("paper_revision") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperCreateResult, self)._process_custom_annotations(annotation_type, field_path, processor) PaperCreateResult_validator = bv.Struct(PaperCreateResult) class PaperDocUpdatePolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.PaperDocUpdatePolicy.update: Sets the doc content to the provided content if the provided paper_revision matches the latest doc revision. Otherwise, returns an error. :ivar files.PaperDocUpdatePolicy.overwrite: Sets the doc content to the provided content without checking paper_revision. :ivar files.PaperDocUpdatePolicy.prepend: Adds the provided content to the beginning of the doc without checking paper_revision. :ivar files.PaperDocUpdatePolicy.append: Adds the provided content to the end of the doc without checking paper_revision. """ _catch_all = 'other' # Attribute is overwritten below the class definition update = None # Attribute is overwritten below the class definition overwrite = None # Attribute is overwritten below the class definition prepend = None # Attribute is overwritten below the class definition append = None # Attribute is overwritten below the class definition other = None def is_update(self): """ Check if the union tag is ``update``. :rtype: bool """ return self._tag == 'update' def is_overwrite(self): """ Check if the union tag is ``overwrite``. :rtype: bool """ return self._tag == 'overwrite' def is_prepend(self): """ Check if the union tag is ``prepend``. :rtype: bool """ return self._tag == 'prepend' def is_append(self): """ Check if the union tag is ``append``. :rtype: bool """ return self._tag == 'append' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocUpdatePolicy, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocUpdatePolicy_validator = bv.Union(PaperDocUpdatePolicy) class PaperUpdateArg(bb.Struct): """ :ivar files.PaperUpdateArg.path: Path in the user's Dropbox to update. The path must correspond to a Paper doc or an error will be returned. :ivar files.PaperUpdateArg.import_format: The format of the provided data. :ivar files.PaperUpdateArg.doc_update_policy: How the provided content should be applied to the doc. :ivar files.PaperUpdateArg.paper_revision: The latest doc revision. Required when doc_update_policy is update. This value must match the current revision of the doc or error revision_mismatch will be returned. """ __slots__ = [ '_path_value', '_import_format_value', '_doc_update_policy_value', '_paper_revision_value', ] _has_required_fields = True def __init__(self, path=None, import_format=None, doc_update_policy=None, paper_revision=None): self._path_value = bb.NOT_SET self._import_format_value = bb.NOT_SET self._doc_update_policy_value = bb.NOT_SET self._paper_revision_value = bb.NOT_SET if path is not None: self.path = path if import_format is not None: self.import_format = import_format if doc_update_policy is not None: self.doc_update_policy = doc_update_policy if paper_revision is not None: self.paper_revision = paper_revision # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: ImportFormat (validator is set below) import_format = bb.Attribute("import_format", user_defined=True) # Instance attribute type: PaperDocUpdatePolicy (validator is set below) doc_update_policy = bb.Attribute("doc_update_policy", user_defined=True) # Instance attribute type: int (validator is set below) paper_revision = bb.Attribute("paper_revision", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperUpdateArg, self)._process_custom_annotations(annotation_type, field_path, processor) PaperUpdateArg_validator = bv.Struct(PaperUpdateArg) class PaperUpdateError(PaperContentError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.PaperUpdateError.revision_mismatch: The provided revision does not match the document head. :ivar files.PaperUpdateError.doc_archived: This operation is not allowed on archived Paper docs. :ivar files.PaperUpdateError.doc_deleted: This operation is not allowed on deleted Paper docs. """ # Attribute is overwritten below the class definition revision_mismatch = None # Attribute is overwritten below the class definition doc_archived = None # Attribute is overwritten below the class definition doc_deleted = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: PaperUpdateError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_revision_mismatch(self): """ Check if the union tag is ``revision_mismatch``. :rtype: bool """ return self._tag == 'revision_mismatch' def is_doc_archived(self): """ Check if the union tag is ``doc_archived``. :rtype: bool """ return self._tag == 'doc_archived' def is_doc_deleted(self): """ Check if the union tag is ``doc_deleted``. :rtype: bool """ return self._tag == 'doc_deleted' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperUpdateError, self)._process_custom_annotations(annotation_type, field_path, processor) PaperUpdateError_validator = bv.Union(PaperUpdateError) class PaperUpdateResult(bb.Struct): """ :ivar files.PaperUpdateResult.paper_revision: The current doc revision. """ __slots__ = [ '_paper_revision_value', ] _has_required_fields = True def __init__(self, paper_revision=None): self._paper_revision_value = bb.NOT_SET if paper_revision is not None: self.paper_revision = paper_revision # Instance attribute type: int (validator is set below) paper_revision = bb.Attribute("paper_revision") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperUpdateResult, self)._process_custom_annotations(annotation_type, field_path, processor) PaperUpdateResult_validator = bv.Struct(PaperUpdateResult) class PathOrLink(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param str val: :rtype: PathOrLink """ return cls('path', val) @classmethod def link(cls, val): """ Create an instance of this class set to the ``link`` tag with value ``val``. :param SharedLinkFileInfo val: :rtype: PathOrLink """ return cls('link', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_link(self): """ Check if the union tag is ``link``. :rtype: bool """ return self._tag == 'link' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: str """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def get_link(self): """ Only call this if :meth:`is_link` is true. :rtype: SharedLinkFileInfo """ if not self.is_link(): raise AttributeError("tag 'link' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(PathOrLink, self)._process_custom_annotations(annotation_type, field_path, processor) PathOrLink_validator = bv.Union(PathOrLink) class PathToTags(bb.Struct): """ :ivar files.PathToTags.path: Path of the item. :ivar files.PathToTags.tags: Tags assigned to this item. """ __slots__ = [ '_path_value', '_tags_value', ] _has_required_fields = True def __init__(self, path=None, tags=None): self._path_value = bb.NOT_SET self._tags_value = bb.NOT_SET if path is not None: self.path = path if tags is not None: self.tags = tags # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: list of [Tag] (validator is set below) tags = bb.Attribute("tags") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PathToTags, self)._process_custom_annotations(annotation_type, field_path, processor) PathToTags_validator = bv.Struct(PathToTags) class PhotoMetadata(MediaMetadata): """ Metadata for a photo. """ __slots__ = [ ] _has_required_fields = False def __init__(self, dimensions=None, location=None, time_taken=None): super(PhotoMetadata, self).__init__(dimensions, location, time_taken) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PhotoMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) PhotoMetadata_validator = bv.Struct(PhotoMetadata) class PreviewArg(bb.Struct): """ :ivar files.PreviewArg.path: The path of the file to preview. :ivar files.PreviewArg.rev: Please specify revision in ``path`` instead. """ __slots__ = [ '_path_value', '_rev_value', ] _has_required_fields = True def __init__(self, path=None, rev=None): self._path_value = bb.NOT_SET self._rev_value = bb.NOT_SET if path is not None: self.path = path if rev is not None: self.rev = rev # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: str (validator is set below) rev = bb.Attribute("rev", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PreviewArg, self)._process_custom_annotations(annotation_type, field_path, processor) PreviewArg_validator = bv.Struct(PreviewArg) class PreviewError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar LookupError PreviewError.path: An error occurs when downloading metadata for the file. :ivar files.PreviewError.in_progress: This preview generation is still in progress and the file is not ready for preview yet. :ivar files.PreviewError.unsupported_extension: The file extension is not supported preview generation. :ivar files.PreviewError.unsupported_content: The file content is not supported for preview generation. """ _catch_all = None # Attribute is overwritten below the class definition in_progress = None # Attribute is overwritten below the class definition unsupported_extension = None # Attribute is overwritten below the class definition unsupported_content = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: PreviewError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_in_progress(self): """ Check if the union tag is ``in_progress``. :rtype: bool """ return self._tag == 'in_progress' def is_unsupported_extension(self): """ Check if the union tag is ``unsupported_extension``. :rtype: bool """ return self._tag == 'unsupported_extension' def is_unsupported_content(self): """ Check if the union tag is ``unsupported_content``. :rtype: bool """ return self._tag == 'unsupported_content' def get_path(self): """ An error occurs when downloading metadata for the file. Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(PreviewError, self)._process_custom_annotations(annotation_type, field_path, processor) PreviewError_validator = bv.Union(PreviewError) class PreviewResult(bb.Struct): """ :ivar files.PreviewResult.file_metadata: Metadata corresponding to the file received as an argument. Will be populated if the endpoint is called with a path (ReadPath). :ivar files.PreviewResult.link_metadata: Minimal metadata corresponding to the file received as an argument. Will be populated if the endpoint is called using a shared link (SharedLinkFileInfo). """ __slots__ = [ '_file_metadata_value', '_link_metadata_value', ] _has_required_fields = False def __init__(self, file_metadata=None, link_metadata=None): self._file_metadata_value = bb.NOT_SET self._link_metadata_value = bb.NOT_SET if file_metadata is not None: self.file_metadata = file_metadata if link_metadata is not None: self.link_metadata = link_metadata # Instance attribute type: FileMetadata (validator is set below) file_metadata = bb.Attribute("file_metadata", nullable=True, user_defined=True) # Instance attribute type: MinimalFileLinkMetadata (validator is set below) link_metadata = bb.Attribute("link_metadata", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PreviewResult, self)._process_custom_annotations(annotation_type, field_path, processor) PreviewResult_validator = bv.Struct(PreviewResult) class RelocationPath(bb.Struct): """ :ivar files.RelocationPath.from_path: Path in the user's Dropbox to be copied or moved. :ivar files.RelocationPath.to_path: Path in the user's Dropbox that is the destination. """ __slots__ = [ '_from_path_value', '_to_path_value', ] _has_required_fields = True def __init__(self, from_path=None, to_path=None): self._from_path_value = bb.NOT_SET self._to_path_value = bb.NOT_SET if from_path is not None: self.from_path = from_path if to_path is not None: self.to_path = to_path # Instance attribute type: str (validator is set below) from_path = bb.Attribute("from_path") # Instance attribute type: str (validator is set below) to_path = bb.Attribute("to_path") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationPath, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationPath_validator = bv.Struct(RelocationPath) class RelocationArg(RelocationPath): """ :ivar files.RelocationArg.allow_shared_folder: This flag has no effect. :ivar files.RelocationArg.autorename: If there's a conflict, have the Dropbox server try to autorename the file to avoid the conflict. :ivar files.RelocationArg.allow_ownership_transfer: Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. """ __slots__ = [ '_allow_shared_folder_value', '_autorename_value', '_allow_ownership_transfer_value', ] _has_required_fields = True def __init__(self, from_path=None, to_path=None, allow_shared_folder=None, autorename=None, allow_ownership_transfer=None): super(RelocationArg, self).__init__(from_path, to_path) self._allow_shared_folder_value = bb.NOT_SET self._autorename_value = bb.NOT_SET self._allow_ownership_transfer_value = bb.NOT_SET if allow_shared_folder is not None: self.allow_shared_folder = allow_shared_folder if autorename is not None: self.autorename = autorename if allow_ownership_transfer is not None: self.allow_ownership_transfer = allow_ownership_transfer # Instance attribute type: bool (validator is set below) allow_shared_folder = bb.Attribute("allow_shared_folder") # Instance attribute type: bool (validator is set below) autorename = bb.Attribute("autorename") # Instance attribute type: bool (validator is set below) allow_ownership_transfer = bb.Attribute("allow_ownership_transfer") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationArg, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationArg_validator = bv.Struct(RelocationArg) class RelocationBatchArg(RelocationBatchArgBase): """ :ivar files.RelocationBatchArg.allow_shared_folder: This flag has no effect. :ivar files.RelocationBatchArg.allow_ownership_transfer: Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. """ __slots__ = [ '_allow_shared_folder_value', '_allow_ownership_transfer_value', ] _has_required_fields = True def __init__(self, entries=None, autorename=None, allow_shared_folder=None, allow_ownership_transfer=None): super(RelocationBatchArg, self).__init__(entries, autorename) self._allow_shared_folder_value = bb.NOT_SET self._allow_ownership_transfer_value = bb.NOT_SET if allow_shared_folder is not None: self.allow_shared_folder = allow_shared_folder if allow_ownership_transfer is not None: self.allow_ownership_transfer = allow_ownership_transfer # Instance attribute type: bool (validator is set below) allow_shared_folder = bb.Attribute("allow_shared_folder") # Instance attribute type: bool (validator is set below) allow_ownership_transfer = bb.Attribute("allow_ownership_transfer") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationBatchArg_validator = bv.Struct(RelocationBatchArg) class RelocationError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.RelocationError.cant_copy_shared_folder: Shared folders can't be copied. :ivar files.RelocationError.cant_nest_shared_folder: Your move operation would result in nested shared folders. This is not allowed. :ivar files.RelocationError.cant_move_folder_into_itself: You cannot move a folder into itself. :ivar files.RelocationError.too_many_files: The operation would involve more than 10,000 files and folders. :ivar files.RelocationError.duplicated_or_nested_paths: There are duplicated/nested paths among ``RelocationArg.from_path`` and ``RelocationArg.to_path``. :ivar files.RelocationError.cant_transfer_ownership: Your move operation would result in an ownership transfer. You may reissue the request with the field ``RelocationArg.allow_ownership_transfer`` to true. :ivar files.RelocationError.insufficient_quota: The current user does not have enough space to move or copy the files. :ivar files.RelocationError.internal_error: Something went wrong with the job on Dropbox's end. You'll need to verify that the action you were taking succeeded, and if not, try again. This should happen very rarely. :ivar files.RelocationError.cant_move_shared_folder: Can't move the shared folder to the given destination. :ivar MoveIntoVaultError RelocationError.cant_move_into_vault: Some content cannot be moved into Vault under certain circumstances, see detailed error. :ivar MoveIntoFamilyError RelocationError.cant_move_into_family: Some content cannot be moved into the Family Room folder under certain circumstances, see detailed error. """ _catch_all = 'other' # Attribute is overwritten below the class definition cant_copy_shared_folder = None # Attribute is overwritten below the class definition cant_nest_shared_folder = None # Attribute is overwritten below the class definition cant_move_folder_into_itself = None # Attribute is overwritten below the class definition too_many_files = None # Attribute is overwritten below the class definition duplicated_or_nested_paths = None # Attribute is overwritten below the class definition cant_transfer_ownership = None # Attribute is overwritten below the class definition insufficient_quota = None # Attribute is overwritten below the class definition internal_error = None # Attribute is overwritten below the class definition cant_move_shared_folder = None # Attribute is overwritten below the class definition other = None @classmethod def from_lookup(cls, val): """ Create an instance of this class set to the ``from_lookup`` tag with value ``val``. :param LookupError val: :rtype: RelocationError """ return cls('from_lookup', val) @classmethod def from_write(cls, val): """ Create an instance of this class set to the ``from_write`` tag with value ``val``. :param WriteError val: :rtype: RelocationError """ return cls('from_write', val) @classmethod def to(cls, val): """ Create an instance of this class set to the ``to`` tag with value ``val``. :param WriteError val: :rtype: RelocationError """ return cls('to', val) @classmethod def cant_move_into_vault(cls, val): """ Create an instance of this class set to the ``cant_move_into_vault`` tag with value ``val``. :param MoveIntoVaultError val: :rtype: RelocationError """ return cls('cant_move_into_vault', val) @classmethod def cant_move_into_family(cls, val): """ Create an instance of this class set to the ``cant_move_into_family`` tag with value ``val``. :param MoveIntoFamilyError val: :rtype: RelocationError """ return cls('cant_move_into_family', val) def is_from_lookup(self): """ Check if the union tag is ``from_lookup``. :rtype: bool """ return self._tag == 'from_lookup' def is_from_write(self): """ Check if the union tag is ``from_write``. :rtype: bool """ return self._tag == 'from_write' def is_to(self): """ Check if the union tag is ``to``. :rtype: bool """ return self._tag == 'to' def is_cant_copy_shared_folder(self): """ Check if the union tag is ``cant_copy_shared_folder``. :rtype: bool """ return self._tag == 'cant_copy_shared_folder' def is_cant_nest_shared_folder(self): """ Check if the union tag is ``cant_nest_shared_folder``. :rtype: bool """ return self._tag == 'cant_nest_shared_folder' def is_cant_move_folder_into_itself(self): """ Check if the union tag is ``cant_move_folder_into_itself``. :rtype: bool """ return self._tag == 'cant_move_folder_into_itself' def is_too_many_files(self): """ Check if the union tag is ``too_many_files``. :rtype: bool """ return self._tag == 'too_many_files' def is_duplicated_or_nested_paths(self): """ Check if the union tag is ``duplicated_or_nested_paths``. :rtype: bool """ return self._tag == 'duplicated_or_nested_paths' def is_cant_transfer_ownership(self): """ Check if the union tag is ``cant_transfer_ownership``. :rtype: bool """ return self._tag == 'cant_transfer_ownership' def is_insufficient_quota(self): """ Check if the union tag is ``insufficient_quota``. :rtype: bool """ return self._tag == 'insufficient_quota' def is_internal_error(self): """ Check if the union tag is ``internal_error``. :rtype: bool """ return self._tag == 'internal_error' def is_cant_move_shared_folder(self): """ Check if the union tag is ``cant_move_shared_folder``. :rtype: bool """ return self._tag == 'cant_move_shared_folder' def is_cant_move_into_vault(self): """ Check if the union tag is ``cant_move_into_vault``. :rtype: bool """ return self._tag == 'cant_move_into_vault' def is_cant_move_into_family(self): """ Check if the union tag is ``cant_move_into_family``. :rtype: bool """ return self._tag == 'cant_move_into_family' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_from_lookup(self): """ Only call this if :meth:`is_from_lookup` is true. :rtype: LookupError """ if not self.is_from_lookup(): raise AttributeError("tag 'from_lookup' not set") return self._value def get_from_write(self): """ Only call this if :meth:`is_from_write` is true. :rtype: WriteError """ if not self.is_from_write(): raise AttributeError("tag 'from_write' not set") return self._value def get_to(self): """ Only call this if :meth:`is_to` is true. :rtype: WriteError """ if not self.is_to(): raise AttributeError("tag 'to' not set") return self._value def get_cant_move_into_vault(self): """ Some content cannot be moved into Vault under certain circumstances, see detailed error. Only call this if :meth:`is_cant_move_into_vault` is true. :rtype: MoveIntoVaultError """ if not self.is_cant_move_into_vault(): raise AttributeError("tag 'cant_move_into_vault' not set") return self._value def get_cant_move_into_family(self): """ Some content cannot be moved into the Family Room folder under certain circumstances, see detailed error. Only call this if :meth:`is_cant_move_into_family` is true. :rtype: MoveIntoFamilyError """ if not self.is_cant_move_into_family(): raise AttributeError("tag 'cant_move_into_family' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationError, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationError_validator = bv.Union(RelocationError) class RelocationBatchError(RelocationError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.RelocationBatchError.too_many_write_operations: There are too many write operations in user's Dropbox. Please retry this request. """ # Attribute is overwritten below the class definition too_many_write_operations = None def is_too_many_write_operations(self): """ Check if the union tag is ``too_many_write_operations``. :rtype: bool """ return self._tag == 'too_many_write_operations' def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationBatchError, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationBatchError_validator = bv.Union(RelocationBatchError) class RelocationBatchErrorEntry(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar RelocationError RelocationBatchErrorEntry.relocation_error: User errors that retry won't help. :ivar files.RelocationBatchErrorEntry.internal_error: Something went wrong with the job on Dropbox's end. You'll need to verify that the action you were taking succeeded, and if not, try again. This should happen very rarely. :ivar files.RelocationBatchErrorEntry.too_many_write_operations: There are too many write operations in user's Dropbox. Please retry this request. """ _catch_all = 'other' # Attribute is overwritten below the class definition internal_error = None # Attribute is overwritten below the class definition too_many_write_operations = None # Attribute is overwritten below the class definition other = None @classmethod def relocation_error(cls, val): """ Create an instance of this class set to the ``relocation_error`` tag with value ``val``. :param RelocationError val: :rtype: RelocationBatchErrorEntry """ return cls('relocation_error', val) def is_relocation_error(self): """ Check if the union tag is ``relocation_error``. :rtype: bool """ return self._tag == 'relocation_error' def is_internal_error(self): """ Check if the union tag is ``internal_error``. :rtype: bool """ return self._tag == 'internal_error' def is_too_many_write_operations(self): """ Check if the union tag is ``too_many_write_operations``. :rtype: bool """ return self._tag == 'too_many_write_operations' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_relocation_error(self): """ User errors that retry won't help. Only call this if :meth:`is_relocation_error` is true. :rtype: RelocationError """ if not self.is_relocation_error(): raise AttributeError("tag 'relocation_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationBatchErrorEntry, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationBatchErrorEntry_validator = bv.Union(RelocationBatchErrorEntry) class RelocationBatchJobStatus(async_.PollResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar RelocationBatchResult RelocationBatchJobStatus.complete: The copy or move batch job has finished. :ivar RelocationBatchError RelocationBatchJobStatus.failed: The copy or move batch job has failed with exception. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param RelocationBatchResult val: :rtype: RelocationBatchJobStatus """ return cls('complete', val) @classmethod def failed(cls, val): """ Create an instance of this class set to the ``failed`` tag with value ``val``. :param RelocationBatchError val: :rtype: RelocationBatchJobStatus """ return cls('failed', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_failed(self): """ Check if the union tag is ``failed``. :rtype: bool """ return self._tag == 'failed' def get_complete(self): """ The copy or move batch job has finished. Only call this if :meth:`is_complete` is true. :rtype: RelocationBatchResult """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def get_failed(self): """ The copy or move batch job has failed with exception. Only call this if :meth:`is_failed` is true. :rtype: RelocationBatchError """ if not self.is_failed(): raise AttributeError("tag 'failed' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationBatchJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationBatchJobStatus_validator = bv.Union(RelocationBatchJobStatus) class RelocationBatchLaunch(async_.LaunchResultBase): """ Result returned by :meth:`dropbox.dropbox_client.Dropbox.files_copy_batch` or :meth:`dropbox.dropbox_client.Dropbox.files_move_batch` that may either launch an asynchronous job or complete synchronously. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param RelocationBatchResult val: :rtype: RelocationBatchLaunch """ return cls('complete', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_complete(self): """ Only call this if :meth:`is_complete` is true. :rtype: RelocationBatchResult """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationBatchLaunch, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationBatchLaunch_validator = bv.Union(RelocationBatchLaunch) class RelocationBatchResult(FileOpsResult): __slots__ = [ '_entries_value', ] _has_required_fields = True def __init__(self, entries=None): super(RelocationBatchResult, self).__init__() self._entries_value = bb.NOT_SET if entries is not None: self.entries = entries # Instance attribute type: list of [RelocationBatchResultData] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationBatchResult_validator = bv.Struct(RelocationBatchResult) class RelocationBatchResultData(bb.Struct): """ :ivar files.RelocationBatchResultData.metadata: Metadata of the relocated object. """ __slots__ = [ '_metadata_value', ] _has_required_fields = True def __init__(self, metadata=None): self._metadata_value = bb.NOT_SET if metadata is not None: self.metadata = metadata # Instance attribute type: Metadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationBatchResultData, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationBatchResultData_validator = bv.Struct(RelocationBatchResultData) class RelocationBatchResultEntry(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param Metadata val: :rtype: RelocationBatchResultEntry """ return cls('success', val) @classmethod def failure(cls, val): """ Create an instance of this class set to the ``failure`` tag with value ``val``. :param RelocationBatchErrorEntry val: :rtype: RelocationBatchResultEntry """ return cls('failure', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_failure(self): """ Check if the union tag is ``failure``. :rtype: bool """ return self._tag == 'failure' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_success(self): """ Only call this if :meth:`is_success` is true. :rtype: Metadata """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_failure(self): """ Only call this if :meth:`is_failure` is true. :rtype: RelocationBatchErrorEntry """ if not self.is_failure(): raise AttributeError("tag 'failure' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationBatchResultEntry, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationBatchResultEntry_validator = bv.Union(RelocationBatchResultEntry) class RelocationBatchV2JobStatus(async_.PollResultBase): """ Result returned by :meth:`dropbox.dropbox_client.Dropbox.files_copy_batch_check` or :meth:`dropbox.dropbox_client.Dropbox.files_move_batch_check` that may either be in progress or completed with result for each entry. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar RelocationBatchV2Result RelocationBatchV2JobStatus.complete: The copy or move batch job has finished. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param RelocationBatchV2Result val: :rtype: RelocationBatchV2JobStatus """ return cls('complete', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def get_complete(self): """ The copy or move batch job has finished. Only call this if :meth:`is_complete` is true. :rtype: RelocationBatchV2Result """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationBatchV2JobStatus, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationBatchV2JobStatus_validator = bv.Union(RelocationBatchV2JobStatus) class RelocationBatchV2Launch(async_.LaunchResultBase): """ Result returned by :meth:`dropbox.dropbox_client.Dropbox.files_copy_batch` or :meth:`dropbox.dropbox_client.Dropbox.files_move_batch` that may either launch an asynchronous job or complete synchronously. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param RelocationBatchV2Result val: :rtype: RelocationBatchV2Launch """ return cls('complete', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def get_complete(self): """ Only call this if :meth:`is_complete` is true. :rtype: RelocationBatchV2Result """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationBatchV2Launch, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationBatchV2Launch_validator = bv.Union(RelocationBatchV2Launch) class RelocationBatchV2Result(FileOpsResult): """ :ivar files.RelocationBatchV2Result.entries: Each entry in CopyBatchArg.entries or ``MoveBatchArg.entries`` will appear at the same position inside ``RelocationBatchV2Result.entries``. """ __slots__ = [ '_entries_value', ] _has_required_fields = True def __init__(self, entries=None): super(RelocationBatchV2Result, self).__init__() self._entries_value = bb.NOT_SET if entries is not None: self.entries = entries # Instance attribute type: list of [RelocationBatchResultEntry] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationBatchV2Result, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationBatchV2Result_validator = bv.Struct(RelocationBatchV2Result) class RelocationResult(FileOpsResult): """ :ivar files.RelocationResult.metadata: Metadata of the relocated object. """ __slots__ = [ '_metadata_value', ] _has_required_fields = True def __init__(self, metadata=None): super(RelocationResult, self).__init__() self._metadata_value = bb.NOT_SET if metadata is not None: self.metadata = metadata # Instance attribute type: Metadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocationResult, self)._process_custom_annotations(annotation_type, field_path, processor) RelocationResult_validator = bv.Struct(RelocationResult) class RemoveTagArg(bb.Struct): """ :ivar files.RemoveTagArg.path: Path to the item to tag. :ivar files.RemoveTagArg.tag_text: The tag to remove. Will be automatically converted to lowercase letters. """ __slots__ = [ '_path_value', '_tag_text_value', ] _has_required_fields = True def __init__(self, path=None, tag_text=None): self._path_value = bb.NOT_SET self._tag_text_value = bb.NOT_SET if path is not None: self.path = path if tag_text is not None: self.tag_text = tag_text # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: str (validator is set below) tag_text = bb.Attribute("tag_text") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemoveTagArg, self)._process_custom_annotations(annotation_type, field_path, processor) RemoveTagArg_validator = bv.Struct(RemoveTagArg) class RemoveTagError(BaseTagError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.RemoveTagError.tag_not_present: That tag doesn't exist at this path. """ # Attribute is overwritten below the class definition tag_not_present = None def is_tag_not_present(self): """ Check if the union tag is ``tag_not_present``. :rtype: bool """ return self._tag == 'tag_not_present' def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemoveTagError, self)._process_custom_annotations(annotation_type, field_path, processor) RemoveTagError_validator = bv.Union(RemoveTagError) class RestoreArg(bb.Struct): """ :ivar files.RestoreArg.path: The path to save the restored file. :ivar files.RestoreArg.rev: The revision to restore. """ __slots__ = [ '_path_value', '_rev_value', ] _has_required_fields = True def __init__(self, path=None, rev=None): self._path_value = bb.NOT_SET self._rev_value = bb.NOT_SET if path is not None: self.path = path if rev is not None: self.rev = rev # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: str (validator is set below) rev = bb.Attribute("rev") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RestoreArg, self)._process_custom_annotations(annotation_type, field_path, processor) RestoreArg_validator = bv.Struct(RestoreArg) class RestoreError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar LookupError RestoreError.path_lookup: An error occurs when downloading metadata for the file. :ivar WriteError RestoreError.path_write: An error occurs when trying to restore the file to that path. :ivar files.RestoreError.invalid_revision: The revision is invalid. It may not exist or may point to a deleted file. :ivar files.RestoreError.in_progress: The restore is currently executing, but has not yet completed. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_revision = None # Attribute is overwritten below the class definition in_progress = None # Attribute is overwritten below the class definition other = None @classmethod def path_lookup(cls, val): """ Create an instance of this class set to the ``path_lookup`` tag with value ``val``. :param LookupError val: :rtype: RestoreError """ return cls('path_lookup', val) @classmethod def path_write(cls, val): """ Create an instance of this class set to the ``path_write`` tag with value ``val``. :param WriteError val: :rtype: RestoreError """ return cls('path_write', val) def is_path_lookup(self): """ Check if the union tag is ``path_lookup``. :rtype: bool """ return self._tag == 'path_lookup' def is_path_write(self): """ Check if the union tag is ``path_write``. :rtype: bool """ return self._tag == 'path_write' def is_invalid_revision(self): """ Check if the union tag is ``invalid_revision``. :rtype: bool """ return self._tag == 'invalid_revision' def is_in_progress(self): """ Check if the union tag is ``in_progress``. :rtype: bool """ return self._tag == 'in_progress' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path_lookup(self): """ An error occurs when downloading metadata for the file. Only call this if :meth:`is_path_lookup` is true. :rtype: LookupError """ if not self.is_path_lookup(): raise AttributeError("tag 'path_lookup' not set") return self._value def get_path_write(self): """ An error occurs when trying to restore the file to that path. Only call this if :meth:`is_path_write` is true. :rtype: WriteError """ if not self.is_path_write(): raise AttributeError("tag 'path_write' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RestoreError, self)._process_custom_annotations(annotation_type, field_path, processor) RestoreError_validator = bv.Union(RestoreError) class SaveCopyReferenceArg(bb.Struct): """ :ivar files.SaveCopyReferenceArg.copy_reference: A copy reference returned by :meth:`dropbox.dropbox_client.Dropbox.files_copy_reference_get`. :ivar files.SaveCopyReferenceArg.path: Path in the user's Dropbox that is the destination. """ __slots__ = [ '_copy_reference_value', '_path_value', ] _has_required_fields = True def __init__(self, copy_reference=None, path=None): self._copy_reference_value = bb.NOT_SET self._path_value = bb.NOT_SET if copy_reference is not None: self.copy_reference = copy_reference if path is not None: self.path = path # Instance attribute type: str (validator is set below) copy_reference = bb.Attribute("copy_reference") # Instance attribute type: str (validator is set below) path = bb.Attribute("path") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SaveCopyReferenceArg, self)._process_custom_annotations(annotation_type, field_path, processor) SaveCopyReferenceArg_validator = bv.Struct(SaveCopyReferenceArg) class SaveCopyReferenceError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.SaveCopyReferenceError.invalid_copy_reference: The copy reference is invalid. :ivar files.SaveCopyReferenceError.no_permission: You don't have permission to save the given copy reference. Please make sure this app is same app which created the copy reference and the source user is still linked to the app. :ivar files.SaveCopyReferenceError.not_found: The file referenced by the copy reference cannot be found. :ivar files.SaveCopyReferenceError.too_many_files: The operation would involve more than 10,000 files and folders. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_copy_reference = None # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition not_found = None # Attribute is overwritten below the class definition too_many_files = None # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param WriteError val: :rtype: SaveCopyReferenceError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_invalid_copy_reference(self): """ Check if the union tag is ``invalid_copy_reference``. :rtype: bool """ return self._tag == 'invalid_copy_reference' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_not_found(self): """ Check if the union tag is ``not_found``. :rtype: bool """ return self._tag == 'not_found' def is_too_many_files(self): """ Check if the union tag is ``too_many_files``. :rtype: bool """ return self._tag == 'too_many_files' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: WriteError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SaveCopyReferenceError, self)._process_custom_annotations(annotation_type, field_path, processor) SaveCopyReferenceError_validator = bv.Union(SaveCopyReferenceError) class SaveCopyReferenceResult(bb.Struct): """ :ivar files.SaveCopyReferenceResult.metadata: The metadata of the saved file or folder in the user's Dropbox. """ __slots__ = [ '_metadata_value', ] _has_required_fields = True def __init__(self, metadata=None): self._metadata_value = bb.NOT_SET if metadata is not None: self.metadata = metadata # Instance attribute type: Metadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SaveCopyReferenceResult, self)._process_custom_annotations(annotation_type, field_path, processor) SaveCopyReferenceResult_validator = bv.Struct(SaveCopyReferenceResult) class SaveUrlArg(bb.Struct): """ :ivar files.SaveUrlArg.path: The path in Dropbox where the URL will be saved to. :ivar files.SaveUrlArg.url: The URL to be saved. """ __slots__ = [ '_path_value', '_url_value', ] _has_required_fields = True def __init__(self, path=None, url=None): self._path_value = bb.NOT_SET self._url_value = bb.NOT_SET if path is not None: self.path = path if url is not None: self.url = url # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: str (validator is set below) url = bb.Attribute("url") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SaveUrlArg, self)._process_custom_annotations(annotation_type, field_path, processor) SaveUrlArg_validator = bv.Struct(SaveUrlArg) class SaveUrlError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.SaveUrlError.download_failed: Failed downloading the given URL. The URL may be password-protected and the password provided was incorrect, or the link may be disabled. :ivar files.SaveUrlError.invalid_url: The given URL is invalid. :ivar files.SaveUrlError.not_found: The file where the URL is saved to no longer exists. """ _catch_all = 'other' # Attribute is overwritten below the class definition download_failed = None # Attribute is overwritten below the class definition invalid_url = None # Attribute is overwritten below the class definition not_found = None # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param WriteError val: :rtype: SaveUrlError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_download_failed(self): """ Check if the union tag is ``download_failed``. :rtype: bool """ return self._tag == 'download_failed' def is_invalid_url(self): """ Check if the union tag is ``invalid_url``. :rtype: bool """ return self._tag == 'invalid_url' def is_not_found(self): """ Check if the union tag is ``not_found``. :rtype: bool """ return self._tag == 'not_found' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: WriteError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SaveUrlError, self)._process_custom_annotations(annotation_type, field_path, processor) SaveUrlError_validator = bv.Union(SaveUrlError) class SaveUrlJobStatus(async_.PollResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar FileMetadata SaveUrlJobStatus.complete: Metadata of the file where the URL is saved to. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param FileMetadata val: :rtype: SaveUrlJobStatus """ return cls('complete', val) @classmethod def failed(cls, val): """ Create an instance of this class set to the ``failed`` tag with value ``val``. :param SaveUrlError val: :rtype: SaveUrlJobStatus """ return cls('failed', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_failed(self): """ Check if the union tag is ``failed``. :rtype: bool """ return self._tag == 'failed' def get_complete(self): """ Metadata of the file where the URL is saved to. Only call this if :meth:`is_complete` is true. :rtype: FileMetadata """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def get_failed(self): """ Only call this if :meth:`is_failed` is true. :rtype: SaveUrlError """ if not self.is_failed(): raise AttributeError("tag 'failed' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SaveUrlJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor) SaveUrlJobStatus_validator = bv.Union(SaveUrlJobStatus) class SaveUrlResult(async_.LaunchResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar FileMetadata SaveUrlResult.complete: Metadata of the file where the URL is saved to. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param FileMetadata val: :rtype: SaveUrlResult """ return cls('complete', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def get_complete(self): """ Metadata of the file where the URL is saved to. Only call this if :meth:`is_complete` is true. :rtype: FileMetadata """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SaveUrlResult, self)._process_custom_annotations(annotation_type, field_path, processor) SaveUrlResult_validator = bv.Union(SaveUrlResult) class SearchArg(bb.Struct): """ :ivar files.SearchArg.path: The path in the user's Dropbox to search. Should probably be a folder. :ivar files.SearchArg.query: The string to search for. Query string may be rewritten to improve relevance of results. The string is split on spaces into multiple tokens. For file name searching, the last token is used for prefix matching (i.e. "bat c" matches "bat cave" but not "batman car"). :ivar files.SearchArg.start: The starting index within the search results (used for paging). :ivar files.SearchArg.max_results: The maximum number of search results to return. :ivar files.SearchArg.mode: The search mode (filename, filename_and_content, or deleted_filename). Note that searching file content is only available for Dropbox Business accounts. """ __slots__ = [ '_path_value', '_query_value', '_start_value', '_max_results_value', '_mode_value', ] _has_required_fields = True def __init__(self, path=None, query=None, start=None, max_results=None, mode=None): self._path_value = bb.NOT_SET self._query_value = bb.NOT_SET self._start_value = bb.NOT_SET self._max_results_value = bb.NOT_SET self._mode_value = bb.NOT_SET if path is not None: self.path = path if query is not None: self.query = query if start is not None: self.start = start if max_results is not None: self.max_results = max_results if mode is not None: self.mode = mode # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: str (validator is set below) query = bb.Attribute("query") # Instance attribute type: int (validator is set below) start = bb.Attribute("start") # Instance attribute type: int (validator is set below) max_results = bb.Attribute("max_results") # Instance attribute type: SearchMode (validator is set below) mode = bb.Attribute("mode", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchArg, self)._process_custom_annotations(annotation_type, field_path, processor) SearchArg_validator = bv.Struct(SearchArg) class SearchError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.SearchError.internal_error: Something went wrong, please try again. """ _catch_all = 'other' # Attribute is overwritten below the class definition internal_error = None # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: SearchError """ return cls('path', val) @classmethod def invalid_argument(cls, val): """ Create an instance of this class set to the ``invalid_argument`` tag with value ``val``. :param str val: :rtype: SearchError """ return cls('invalid_argument', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_invalid_argument(self): """ Check if the union tag is ``invalid_argument``. :rtype: bool """ return self._tag == 'invalid_argument' def is_internal_error(self): """ Check if the union tag is ``internal_error``. :rtype: bool """ return self._tag == 'internal_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def get_invalid_argument(self): """ Only call this if :meth:`is_invalid_argument` is true. :rtype: str """ if not self.is_invalid_argument(): raise AttributeError("tag 'invalid_argument' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchError, self)._process_custom_annotations(annotation_type, field_path, processor) SearchError_validator = bv.Union(SearchError) class SearchMatch(bb.Struct): """ :ivar files.SearchMatch.match_type: The type of the match. :ivar files.SearchMatch.metadata: The metadata for the matched file or folder. """ __slots__ = [ '_match_type_value', '_metadata_value', ] _has_required_fields = True def __init__(self, match_type=None, metadata=None): self._match_type_value = bb.NOT_SET self._metadata_value = bb.NOT_SET if match_type is not None: self.match_type = match_type if metadata is not None: self.metadata = metadata # Instance attribute type: SearchMatchType (validator is set below) match_type = bb.Attribute("match_type", user_defined=True) # Instance attribute type: Metadata (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchMatch, self)._process_custom_annotations(annotation_type, field_path, processor) SearchMatch_validator = bv.Struct(SearchMatch) class SearchMatchFieldOptions(bb.Struct): """ :ivar files.SearchMatchFieldOptions.include_highlights: Whether to include highlight span from file title. """ __slots__ = [ '_include_highlights_value', ] _has_required_fields = False def __init__(self, include_highlights=None): self._include_highlights_value = bb.NOT_SET if include_highlights is not None: self.include_highlights = include_highlights # Instance attribute type: bool (validator is set below) include_highlights = bb.Attribute("include_highlights") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchMatchFieldOptions, self)._process_custom_annotations(annotation_type, field_path, processor) SearchMatchFieldOptions_validator = bv.Struct(SearchMatchFieldOptions) class SearchMatchType(bb.Union): """ Indicates what type of match was found for a given item. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.SearchMatchType.filename: This item was matched on its file or folder name. :ivar files.SearchMatchType.content: This item was matched based on its file contents. :ivar files.SearchMatchType.both: This item was matched based on both its contents and its file name. """ _catch_all = None # Attribute is overwritten below the class definition filename = None # Attribute is overwritten below the class definition content = None # Attribute is overwritten below the class definition both = None def is_filename(self): """ Check if the union tag is ``filename``. :rtype: bool """ return self._tag == 'filename' def is_content(self): """ Check if the union tag is ``content``. :rtype: bool """ return self._tag == 'content' def is_both(self): """ Check if the union tag is ``both``. :rtype: bool """ return self._tag == 'both' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchMatchType, self)._process_custom_annotations(annotation_type, field_path, processor) SearchMatchType_validator = bv.Union(SearchMatchType) class SearchMatchTypeV2(bb.Union): """ Indicates what type of match was found for a given item. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.SearchMatchTypeV2.filename: This item was matched on its file or folder name. :ivar files.SearchMatchTypeV2.file_content: This item was matched based on its file contents. :ivar files.SearchMatchTypeV2.filename_and_content: This item was matched based on both its contents and its file name. :ivar files.SearchMatchTypeV2.image_content: This item was matched on image content. """ _catch_all = 'other' # Attribute is overwritten below the class definition filename = None # Attribute is overwritten below the class definition file_content = None # Attribute is overwritten below the class definition filename_and_content = None # Attribute is overwritten below the class definition image_content = None # Attribute is overwritten below the class definition other = None def is_filename(self): """ Check if the union tag is ``filename``. :rtype: bool """ return self._tag == 'filename' def is_file_content(self): """ Check if the union tag is ``file_content``. :rtype: bool """ return self._tag == 'file_content' def is_filename_and_content(self): """ Check if the union tag is ``filename_and_content``. :rtype: bool """ return self._tag == 'filename_and_content' def is_image_content(self): """ Check if the union tag is ``image_content``. :rtype: bool """ return self._tag == 'image_content' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchMatchTypeV2, self)._process_custom_annotations(annotation_type, field_path, processor) SearchMatchTypeV2_validator = bv.Union(SearchMatchTypeV2) class SearchMatchV2(bb.Struct): """ :ivar files.SearchMatchV2.metadata: The metadata for the matched file or folder. :ivar files.SearchMatchV2.match_type: The type of the match. :ivar files.SearchMatchV2.highlight_spans: The list of HighlightSpan determines which parts of the file title should be highlighted. """ __slots__ = [ '_metadata_value', '_match_type_value', '_highlight_spans_value', ] _has_required_fields = True def __init__(self, metadata=None, match_type=None, highlight_spans=None): self._metadata_value = bb.NOT_SET self._match_type_value = bb.NOT_SET self._highlight_spans_value = bb.NOT_SET if metadata is not None: self.metadata = metadata if match_type is not None: self.match_type = match_type if highlight_spans is not None: self.highlight_spans = highlight_spans # Instance attribute type: MetadataV2 (validator is set below) metadata = bb.Attribute("metadata", user_defined=True) # Instance attribute type: SearchMatchTypeV2 (validator is set below) match_type = bb.Attribute("match_type", nullable=True, user_defined=True) # Instance attribute type: list of [HighlightSpan] (validator is set below) highlight_spans = bb.Attribute("highlight_spans", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchMatchV2, self)._process_custom_annotations(annotation_type, field_path, processor) SearchMatchV2_validator = bv.Struct(SearchMatchV2) class SearchMode(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.SearchMode.filename: Search file and folder names. :ivar files.SearchMode.filename_and_content: Search file and folder names as well as file contents. :ivar files.SearchMode.deleted_filename: Search for deleted file and folder names. """ _catch_all = None # Attribute is overwritten below the class definition filename = None # Attribute is overwritten below the class definition filename_and_content = None # Attribute is overwritten below the class definition deleted_filename = None def is_filename(self): """ Check if the union tag is ``filename``. :rtype: bool """ return self._tag == 'filename' def is_filename_and_content(self): """ Check if the union tag is ``filename_and_content``. :rtype: bool """ return self._tag == 'filename_and_content' def is_deleted_filename(self): """ Check if the union tag is ``deleted_filename``. :rtype: bool """ return self._tag == 'deleted_filename' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchMode, self)._process_custom_annotations(annotation_type, field_path, processor) SearchMode_validator = bv.Union(SearchMode) class SearchOptions(bb.Struct): """ :ivar files.SearchOptions.path: Scopes the search to a path in the user's Dropbox. Searches the entire Dropbox if not specified. :ivar files.SearchOptions.max_results: The maximum number of search results to return. :ivar files.SearchOptions.order_by: Specified property of the order of search results. By default, results are sorted by relevance. :ivar files.SearchOptions.file_status: Restricts search to the given file status. :ivar files.SearchOptions.filename_only: Restricts search to only match on filenames. :ivar files.SearchOptions.file_extensions: Restricts search to only the extensions specified. Only supported for active file search. :ivar files.SearchOptions.file_categories: Restricts search to only the file categories specified. Only supported for active file search. :ivar files.SearchOptions.account_id: Restricts results to the given account id. """ __slots__ = [ '_path_value', '_max_results_value', '_order_by_value', '_file_status_value', '_filename_only_value', '_file_extensions_value', '_file_categories_value', '_account_id_value', ] _has_required_fields = False def __init__(self, path=None, max_results=None, order_by=None, file_status=None, filename_only=None, file_extensions=None, file_categories=None, account_id=None): self._path_value = bb.NOT_SET self._max_results_value = bb.NOT_SET self._order_by_value = bb.NOT_SET self._file_status_value = bb.NOT_SET self._filename_only_value = bb.NOT_SET self._file_extensions_value = bb.NOT_SET self._file_categories_value = bb.NOT_SET self._account_id_value = bb.NOT_SET if path is not None: self.path = path if max_results is not None: self.max_results = max_results if order_by is not None: self.order_by = order_by if file_status is not None: self.file_status = file_status if filename_only is not None: self.filename_only = filename_only if file_extensions is not None: self.file_extensions = file_extensions if file_categories is not None: self.file_categories = file_categories if account_id is not None: self.account_id = account_id # Instance attribute type: str (validator is set below) path = bb.Attribute("path", nullable=True) # Instance attribute type: int (validator is set below) max_results = bb.Attribute("max_results") # Instance attribute type: SearchOrderBy (validator is set below) order_by = bb.Attribute("order_by", nullable=True, user_defined=True) # Instance attribute type: FileStatus (validator is set below) file_status = bb.Attribute("file_status", user_defined=True) # Instance attribute type: bool (validator is set below) filename_only = bb.Attribute("filename_only") # Instance attribute type: list of [str] (validator is set below) file_extensions = bb.Attribute("file_extensions", nullable=True) # Instance attribute type: list of [FileCategory] (validator is set below) file_categories = bb.Attribute("file_categories", nullable=True) # Instance attribute type: str (validator is set below) account_id = bb.Attribute("account_id", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchOptions, self)._process_custom_annotations(annotation_type, field_path, processor) SearchOptions_validator = bv.Struct(SearchOptions) class SearchOrderBy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition relevance = None # Attribute is overwritten below the class definition last_modified_time = None # Attribute is overwritten below the class definition other = None def is_relevance(self): """ Check if the union tag is ``relevance``. :rtype: bool """ return self._tag == 'relevance' def is_last_modified_time(self): """ Check if the union tag is ``last_modified_time``. :rtype: bool """ return self._tag == 'last_modified_time' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchOrderBy, self)._process_custom_annotations(annotation_type, field_path, processor) SearchOrderBy_validator = bv.Union(SearchOrderBy) class SearchResult(bb.Struct): """ :ivar files.SearchResult.matches: A list (possibly empty) of matches for the query. :ivar files.SearchResult.more: Used for paging. If true, indicates there is another page of results available that can be fetched by calling :meth:`dropbox.dropbox_client.Dropbox.files_search` again. :ivar files.SearchResult.start: Used for paging. Value to set the start argument to when calling :meth:`dropbox.dropbox_client.Dropbox.files_search` to fetch the next page of results. """ __slots__ = [ '_matches_value', '_more_value', '_start_value', ] _has_required_fields = True def __init__(self, matches=None, more=None, start=None): self._matches_value = bb.NOT_SET self._more_value = bb.NOT_SET self._start_value = bb.NOT_SET if matches is not None: self.matches = matches if more is not None: self.more = more if start is not None: self.start = start # Instance attribute type: list of [SearchMatch] (validator is set below) matches = bb.Attribute("matches") # Instance attribute type: bool (validator is set below) more = bb.Attribute("more") # Instance attribute type: int (validator is set below) start = bb.Attribute("start") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchResult, self)._process_custom_annotations(annotation_type, field_path, processor) SearchResult_validator = bv.Struct(SearchResult) class SearchV2Arg(bb.Struct): """ :ivar files.SearchV2Arg.query: The string to search for. May match across multiple fields based on the request arguments. :ivar files.SearchV2Arg.options: Options for more targeted search results. :ivar files.SearchV2Arg.match_field_options: Options for search results match fields. :ivar files.SearchV2Arg.include_highlights: Deprecated and moved this option to SearchMatchFieldOptions. """ __slots__ = [ '_query_value', '_options_value', '_match_field_options_value', '_include_highlights_value', ] _has_required_fields = True def __init__(self, query=None, options=None, match_field_options=None, include_highlights=None): self._query_value = bb.NOT_SET self._options_value = bb.NOT_SET self._match_field_options_value = bb.NOT_SET self._include_highlights_value = bb.NOT_SET if query is not None: self.query = query if options is not None: self.options = options if match_field_options is not None: self.match_field_options = match_field_options if include_highlights is not None: self.include_highlights = include_highlights # Instance attribute type: str (validator is set below) query = bb.Attribute("query") # Instance attribute type: SearchOptions (validator is set below) options = bb.Attribute("options", nullable=True, user_defined=True) # Instance attribute type: SearchMatchFieldOptions (validator is set below) match_field_options = bb.Attribute("match_field_options", nullable=True, user_defined=True) # Instance attribute type: bool (validator is set below) include_highlights = bb.Attribute("include_highlights", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchV2Arg, self)._process_custom_annotations(annotation_type, field_path, processor) SearchV2Arg_validator = bv.Struct(SearchV2Arg) class SearchV2ContinueArg(bb.Struct): """ :ivar files.SearchV2ContinueArg.cursor: The cursor returned by your last call to :meth:`dropbox.dropbox_client.Dropbox.files_search`. Used to fetch the next page of results. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchV2ContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) SearchV2ContinueArg_validator = bv.Struct(SearchV2ContinueArg) class SearchV2Result(bb.Struct): """ :ivar files.SearchV2Result.matches: A list (possibly empty) of matches for the query. :ivar files.SearchV2Result.has_more: Used for paging. If true, indicates there is another page of results available that can be fetched by calling :meth:`dropbox.dropbox_client.Dropbox.files_search_continue` with the cursor. :ivar files.SearchV2Result.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.files_search_continue` to fetch the next page of results. """ __slots__ = [ '_matches_value', '_has_more_value', '_cursor_value', ] _has_required_fields = True def __init__(self, matches=None, has_more=None, cursor=None): self._matches_value = bb.NOT_SET self._has_more_value = bb.NOT_SET self._cursor_value = bb.NOT_SET if matches is not None: self.matches = matches if has_more is not None: self.has_more = has_more if cursor is not None: self.cursor = cursor # Instance attribute type: list of [SearchMatchV2] (validator is set below) matches = bb.Attribute("matches") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SearchV2Result, self)._process_custom_annotations(annotation_type, field_path, processor) SearchV2Result_validator = bv.Struct(SearchV2Result) class SharedLink(bb.Struct): """ :ivar files.SharedLink.url: Shared link url. :ivar files.SharedLink.password: Password for the shared link. """ __slots__ = [ '_url_value', '_password_value', ] _has_required_fields = True def __init__(self, url=None, password=None): self._url_value = bb.NOT_SET self._password_value = bb.NOT_SET if url is not None: self.url = url if password is not None: self.password = password # Instance attribute type: str (validator is set below) url = bb.Attribute("url") # Instance attribute type: str (validator is set below) password = bb.Attribute("password", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLink, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLink_validator = bv.Struct(SharedLink) class SharedLinkFileInfo(bb.Struct): """ :ivar files.SharedLinkFileInfo.url: The shared link corresponding to either a file or shared link to a folder. If it is for a folder shared link, we use the path param to determine for which file in the folder the view is for. :ivar files.SharedLinkFileInfo.path: The path corresponding to a file in a shared link to a folder. Required for shared links to folders. :ivar files.SharedLinkFileInfo.password: Password for the shared link. Required for password-protected shared links to files unless it can be read from a cookie. """ __slots__ = [ '_url_value', '_path_value', '_password_value', ] _has_required_fields = True def __init__(self, url=None, path=None, password=None): self._url_value = bb.NOT_SET self._path_value = bb.NOT_SET self._password_value = bb.NOT_SET if url is not None: self.url = url if path is not None: self.path = path if password is not None: self.password = password # Instance attribute type: str (validator is set below) url = bb.Attribute("url") # Instance attribute type: str (validator is set below) path = bb.Attribute("path", nullable=True) # Instance attribute type: str (validator is set below) password = bb.Attribute("password", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkFileInfo, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkFileInfo_validator = bv.Struct(SharedLinkFileInfo) class SingleUserLock(bb.Struct): """ :ivar files.SingleUserLock.created: The time the lock was created. :ivar files.SingleUserLock.lock_holder_account_id: The account ID of the lock holder if known. :ivar files.SingleUserLock.lock_holder_team_id: The id of the team of the account holder if it exists. """ __slots__ = [ '_created_value', '_lock_holder_account_id_value', '_lock_holder_team_id_value', ] _has_required_fields = True def __init__(self, created=None, lock_holder_account_id=None, lock_holder_team_id=None): self._created_value = bb.NOT_SET self._lock_holder_account_id_value = bb.NOT_SET self._lock_holder_team_id_value = bb.NOT_SET if created is not None: self.created = created if lock_holder_account_id is not None: self.lock_holder_account_id = lock_holder_account_id if lock_holder_team_id is not None: self.lock_holder_team_id = lock_holder_team_id # Instance attribute type: datetime.datetime (validator is set below) created = bb.Attribute("created") # Instance attribute type: str (validator is set below) lock_holder_account_id = bb.Attribute("lock_holder_account_id") # Instance attribute type: str (validator is set below) lock_holder_team_id = bb.Attribute("lock_holder_team_id", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SingleUserLock, self)._process_custom_annotations(annotation_type, field_path, processor) SingleUserLock_validator = bv.Struct(SingleUserLock) class SymlinkInfo(bb.Struct): """ :ivar files.SymlinkInfo.target: The target this symlink points to. """ __slots__ = [ '_target_value', ] _has_required_fields = True def __init__(self, target=None): self._target_value = bb.NOT_SET if target is not None: self.target = target # Instance attribute type: str (validator is set below) target = bb.Attribute("target") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SymlinkInfo, self)._process_custom_annotations(annotation_type, field_path, processor) SymlinkInfo_validator = bv.Struct(SymlinkInfo) class SyncSetting(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.SyncSetting.default: On first sync to members' computers, the specified folder will follow its parent folder's setting or otherwise follow default sync behavior. :ivar files.SyncSetting.not_synced: On first sync to members' computers, the specified folder will be set to not sync with selective sync. :ivar files.SyncSetting.not_synced_inactive: The specified folder's not_synced setting is inactive due to its location or other configuration changes. It will follow its parent folder's setting. """ _catch_all = 'other' # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition not_synced = None # Attribute is overwritten below the class definition not_synced_inactive = None # Attribute is overwritten below the class definition other = None def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_not_synced(self): """ Check if the union tag is ``not_synced``. :rtype: bool """ return self._tag == 'not_synced' def is_not_synced_inactive(self): """ Check if the union tag is ``not_synced_inactive``. :rtype: bool """ return self._tag == 'not_synced_inactive' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SyncSetting, self)._process_custom_annotations(annotation_type, field_path, processor) SyncSetting_validator = bv.Union(SyncSetting) class SyncSettingArg(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.SyncSettingArg.default: On first sync to members' computers, the specified folder will follow its parent folder's setting or otherwise follow default sync behavior. :ivar files.SyncSettingArg.not_synced: On first sync to members' computers, the specified folder will be set to not sync with selective sync. """ _catch_all = 'other' # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition not_synced = None # Attribute is overwritten below the class definition other = None def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_not_synced(self): """ Check if the union tag is ``not_synced``. :rtype: bool """ return self._tag == 'not_synced' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SyncSettingArg, self)._process_custom_annotations(annotation_type, field_path, processor) SyncSettingArg_validator = bv.Union(SyncSettingArg) class SyncSettingsError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.SyncSettingsError.unsupported_combination: Setting this combination of sync settings simultaneously is not supported. :ivar files.SyncSettingsError.unsupported_configuration: The specified configuration is not supported. """ _catch_all = 'other' # Attribute is overwritten below the class definition unsupported_combination = None # Attribute is overwritten below the class definition unsupported_configuration = None # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: SyncSettingsError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_unsupported_combination(self): """ Check if the union tag is ``unsupported_combination``. :rtype: bool """ return self._tag == 'unsupported_combination' def is_unsupported_configuration(self): """ Check if the union tag is ``unsupported_configuration``. :rtype: bool """ return self._tag == 'unsupported_configuration' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SyncSettingsError, self)._process_custom_annotations(annotation_type, field_path, processor) SyncSettingsError_validator = bv.Union(SyncSettingsError) class Tag(bb.Union): """ Tag that can be added in multiple ways. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar UserGeneratedTag Tag.user_generated_tag: Tag generated by the user. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def user_generated_tag(cls, val): """ Create an instance of this class set to the ``user_generated_tag`` tag with value ``val``. :param UserGeneratedTag val: :rtype: Tag """ return cls('user_generated_tag', val) def is_user_generated_tag(self): """ Check if the union tag is ``user_generated_tag``. :rtype: bool """ return self._tag == 'user_generated_tag' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_user_generated_tag(self): """ Tag generated by the user. Only call this if :meth:`is_user_generated_tag` is true. :rtype: UserGeneratedTag """ if not self.is_user_generated_tag(): raise AttributeError("tag 'user_generated_tag' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(Tag, self)._process_custom_annotations(annotation_type, field_path, processor) Tag_validator = bv.Union(Tag) class ThumbnailArg(bb.Struct): """ :ivar files.ThumbnailArg.path: The path to the image file you want to thumbnail. :ivar files.ThumbnailArg.format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg should be preferred, while png is better for screenshots and digital arts. :ivar files.ThumbnailArg.size: The size for the thumbnail image. :ivar files.ThumbnailArg.mode: How to resize and crop the image to achieve the desired size. """ __slots__ = [ '_path_value', '_format_value', '_size_value', '_mode_value', ] _has_required_fields = True def __init__(self, path=None, format=None, size=None, mode=None): self._path_value = bb.NOT_SET self._format_value = bb.NOT_SET self._size_value = bb.NOT_SET self._mode_value = bb.NOT_SET if path is not None: self.path = path if format is not None: self.format = format if size is not None: self.size = size if mode is not None: self.mode = mode # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: ThumbnailFormat (validator is set below) format = bb.Attribute("format", user_defined=True) # Instance attribute type: ThumbnailSize (validator is set below) size = bb.Attribute("size", user_defined=True) # Instance attribute type: ThumbnailMode (validator is set below) mode = bb.Attribute("mode", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ThumbnailArg, self)._process_custom_annotations(annotation_type, field_path, processor) ThumbnailArg_validator = bv.Struct(ThumbnailArg) class ThumbnailError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar LookupError ThumbnailError.path: An error occurs when downloading metadata for the image. :ivar files.ThumbnailError.unsupported_extension: The file extension doesn't allow conversion to a thumbnail. :ivar files.ThumbnailError.unsupported_image: The image cannot be converted to a thumbnail. :ivar files.ThumbnailError.conversion_error: An error occurs during thumbnail conversion. """ _catch_all = None # Attribute is overwritten below the class definition unsupported_extension = None # Attribute is overwritten below the class definition unsupported_image = None # Attribute is overwritten below the class definition conversion_error = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: ThumbnailError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_unsupported_extension(self): """ Check if the union tag is ``unsupported_extension``. :rtype: bool """ return self._tag == 'unsupported_extension' def is_unsupported_image(self): """ Check if the union tag is ``unsupported_image``. :rtype: bool """ return self._tag == 'unsupported_image' def is_conversion_error(self): """ Check if the union tag is ``conversion_error``. :rtype: bool """ return self._tag == 'conversion_error' def get_path(self): """ An error occurs when downloading metadata for the image. Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ThumbnailError, self)._process_custom_annotations(annotation_type, field_path, processor) ThumbnailError_validator = bv.Union(ThumbnailError) class ThumbnailFormat(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = None # Attribute is overwritten below the class definition jpeg = None # Attribute is overwritten below the class definition png = None def is_jpeg(self): """ Check if the union tag is ``jpeg``. :rtype: bool """ return self._tag == 'jpeg' def is_png(self): """ Check if the union tag is ``png``. :rtype: bool """ return self._tag == 'png' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ThumbnailFormat, self)._process_custom_annotations(annotation_type, field_path, processor) ThumbnailFormat_validator = bv.Union(ThumbnailFormat) class ThumbnailMode(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.ThumbnailMode.strict: Scale down the image to fit within the given size. :ivar files.ThumbnailMode.bestfit: Scale down the image to fit within the given size or its transpose. :ivar files.ThumbnailMode.fitone_bestfit: Scale down the image to completely cover the given size or its transpose. """ _catch_all = None # Attribute is overwritten below the class definition strict = None # Attribute is overwritten below the class definition bestfit = None # Attribute is overwritten below the class definition fitone_bestfit = None def is_strict(self): """ Check if the union tag is ``strict``. :rtype: bool """ return self._tag == 'strict' def is_bestfit(self): """ Check if the union tag is ``bestfit``. :rtype: bool """ return self._tag == 'bestfit' def is_fitone_bestfit(self): """ Check if the union tag is ``fitone_bestfit``. :rtype: bool """ return self._tag == 'fitone_bestfit' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ThumbnailMode, self)._process_custom_annotations(annotation_type, field_path, processor) ThumbnailMode_validator = bv.Union(ThumbnailMode) class ThumbnailSize(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.ThumbnailSize.w32h32: 32 by 32 px. :ivar files.ThumbnailSize.w64h64: 64 by 64 px. :ivar files.ThumbnailSize.w128h128: 128 by 128 px. :ivar files.ThumbnailSize.w256h256: 256 by 256 px. :ivar files.ThumbnailSize.w480h320: 480 by 320 px. :ivar files.ThumbnailSize.w640h480: 640 by 480 px. :ivar files.ThumbnailSize.w960h640: 960 by 640 px. :ivar files.ThumbnailSize.w1024h768: 1024 by 768 px. :ivar files.ThumbnailSize.w2048h1536: 2048 by 1536 px. """ _catch_all = None # Attribute is overwritten below the class definition w32h32 = None # Attribute is overwritten below the class definition w64h64 = None # Attribute is overwritten below the class definition w128h128 = None # Attribute is overwritten below the class definition w256h256 = None # Attribute is overwritten below the class definition w480h320 = None # Attribute is overwritten below the class definition w640h480 = None # Attribute is overwritten below the class definition w960h640 = None # Attribute is overwritten below the class definition w1024h768 = None # Attribute is overwritten below the class definition w2048h1536 = None def is_w32h32(self): """ Check if the union tag is ``w32h32``. :rtype: bool """ return self._tag == 'w32h32' def is_w64h64(self): """ Check if the union tag is ``w64h64``. :rtype: bool """ return self._tag == 'w64h64' def is_w128h128(self): """ Check if the union tag is ``w128h128``. :rtype: bool """ return self._tag == 'w128h128' def is_w256h256(self): """ Check if the union tag is ``w256h256``. :rtype: bool """ return self._tag == 'w256h256' def is_w480h320(self): """ Check if the union tag is ``w480h320``. :rtype: bool """ return self._tag == 'w480h320' def is_w640h480(self): """ Check if the union tag is ``w640h480``. :rtype: bool """ return self._tag == 'w640h480' def is_w960h640(self): """ Check if the union tag is ``w960h640``. :rtype: bool """ return self._tag == 'w960h640' def is_w1024h768(self): """ Check if the union tag is ``w1024h768``. :rtype: bool """ return self._tag == 'w1024h768' def is_w2048h1536(self): """ Check if the union tag is ``w2048h1536``. :rtype: bool """ return self._tag == 'w2048h1536' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ThumbnailSize, self)._process_custom_annotations(annotation_type, field_path, processor) ThumbnailSize_validator = bv.Union(ThumbnailSize) class ThumbnailV2Arg(bb.Struct): """ :ivar files.ThumbnailV2Arg.resource: Information specifying which file to preview. This could be a path to a file, a shared link pointing to a file, or a shared link pointing to a folder, with a relative path. :ivar files.ThumbnailV2Arg.format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg should be preferred, while png is better for screenshots and digital arts. :ivar files.ThumbnailV2Arg.size: The size for the thumbnail image. :ivar files.ThumbnailV2Arg.mode: How to resize and crop the image to achieve the desired size. """ __slots__ = [ '_resource_value', '_format_value', '_size_value', '_mode_value', ] _has_required_fields = True def __init__(self, resource=None, format=None, size=None, mode=None): self._resource_value = bb.NOT_SET self._format_value = bb.NOT_SET self._size_value = bb.NOT_SET self._mode_value = bb.NOT_SET if resource is not None: self.resource = resource if format is not None: self.format = format if size is not None: self.size = size if mode is not None: self.mode = mode # Instance attribute type: PathOrLink (validator is set below) resource = bb.Attribute("resource", user_defined=True) # Instance attribute type: ThumbnailFormat (validator is set below) format = bb.Attribute("format", user_defined=True) # Instance attribute type: ThumbnailSize (validator is set below) size = bb.Attribute("size", user_defined=True) # Instance attribute type: ThumbnailMode (validator is set below) mode = bb.Attribute("mode", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ThumbnailV2Arg, self)._process_custom_annotations(annotation_type, field_path, processor) ThumbnailV2Arg_validator = bv.Struct(ThumbnailV2Arg) class ThumbnailV2Error(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar LookupError ThumbnailV2Error.path: An error occurred when downloading metadata for the image. :ivar files.ThumbnailV2Error.unsupported_extension: The file extension doesn't allow conversion to a thumbnail. :ivar files.ThumbnailV2Error.unsupported_image: The image cannot be converted to a thumbnail. :ivar files.ThumbnailV2Error.conversion_error: An error occurred during thumbnail conversion. :ivar files.ThumbnailV2Error.access_denied: Access to this shared link is forbidden. :ivar files.ThumbnailV2Error.not_found: The shared link does not exist. """ _catch_all = 'other' # Attribute is overwritten below the class definition unsupported_extension = None # Attribute is overwritten below the class definition unsupported_image = None # Attribute is overwritten below the class definition conversion_error = None # Attribute is overwritten below the class definition access_denied = None # Attribute is overwritten below the class definition not_found = None # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param LookupError val: :rtype: ThumbnailV2Error """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_unsupported_extension(self): """ Check if the union tag is ``unsupported_extension``. :rtype: bool """ return self._tag == 'unsupported_extension' def is_unsupported_image(self): """ Check if the union tag is ``unsupported_image``. :rtype: bool """ return self._tag == 'unsupported_image' def is_conversion_error(self): """ Check if the union tag is ``conversion_error``. :rtype: bool """ return self._tag == 'conversion_error' def is_access_denied(self): """ Check if the union tag is ``access_denied``. :rtype: bool """ return self._tag == 'access_denied' def is_not_found(self): """ Check if the union tag is ``not_found``. :rtype: bool """ return self._tag == 'not_found' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ An error occurred when downloading metadata for the image. Only call this if :meth:`is_path` is true. :rtype: LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ThumbnailV2Error, self)._process_custom_annotations(annotation_type, field_path, processor) ThumbnailV2Error_validator = bv.Union(ThumbnailV2Error) class UnlockFileArg(bb.Struct): """ :ivar files.UnlockFileArg.path: Path in the user's Dropbox to a file. """ __slots__ = [ '_path_value', ] _has_required_fields = True def __init__(self, path=None): self._path_value = bb.NOT_SET if path is not None: self.path = path # Instance attribute type: str (validator is set below) path = bb.Attribute("path") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UnlockFileArg, self)._process_custom_annotations(annotation_type, field_path, processor) UnlockFileArg_validator = bv.Struct(UnlockFileArg) class UnlockFileBatchArg(bb.Struct): """ :ivar files.UnlockFileBatchArg.entries: List of 'entries'. Each 'entry' contains a path of the file which will be unlocked. Duplicate path arguments in the batch are considered only once. """ __slots__ = [ '_entries_value', ] _has_required_fields = True def __init__(self, entries=None): self._entries_value = bb.NOT_SET if entries is not None: self.entries = entries # Instance attribute type: list of [UnlockFileArg] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UnlockFileBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) UnlockFileBatchArg_validator = bv.Struct(UnlockFileBatchArg) class UploadArg(CommitInfo): """ :ivar files.UploadArg.content_hash: A hash of the file content uploaded in this call. If provided and the uploaded content does not match this hash, an error will be returned. For more information see our `Content hash `_ page. """ __slots__ = [ '_content_hash_value', ] _has_required_fields = True def __init__(self, path=None, mode=None, autorename=None, client_modified=None, mute=None, property_groups=None, strict_conflict=None, content_hash=None): super(UploadArg, self).__init__(path, mode, autorename, client_modified, mute, property_groups, strict_conflict) self._content_hash_value = bb.NOT_SET if content_hash is not None: self.content_hash = content_hash # Instance attribute type: str (validator is set below) content_hash = bb.Attribute("content_hash", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadArg, self)._process_custom_annotations(annotation_type, field_path, processor) UploadArg_validator = bv.Struct(UploadArg) class UploadError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar UploadWriteFailed UploadError.path: Unable to save the uploaded contents to a file. :ivar InvalidPropertyGroupError UploadError.properties_error: The supplied property group is invalid. The file has uploaded without property groups. :ivar files.UploadError.payload_too_large: The request payload must be at most 150 MB. :ivar files.UploadError.content_hash_mismatch: The content received by the Dropbox server in this call does not match the provided content hash. """ _catch_all = 'other' # Attribute is overwritten below the class definition payload_too_large = None # Attribute is overwritten below the class definition content_hash_mismatch = None # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param UploadWriteFailed val: :rtype: UploadError """ return cls('path', val) @classmethod def properties_error(cls, val): """ Create an instance of this class set to the ``properties_error`` tag with value ``val``. :param file_properties.InvalidPropertyGroupError val: :rtype: UploadError """ return cls('properties_error', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_properties_error(self): """ Check if the union tag is ``properties_error``. :rtype: bool """ return self._tag == 'properties_error' def is_payload_too_large(self): """ Check if the union tag is ``payload_too_large``. :rtype: bool """ return self._tag == 'payload_too_large' def is_content_hash_mismatch(self): """ Check if the union tag is ``content_hash_mismatch``. :rtype: bool """ return self._tag == 'content_hash_mismatch' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Unable to save the uploaded contents to a file. Only call this if :meth:`is_path` is true. :rtype: UploadWriteFailed """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def get_properties_error(self): """ The supplied property group is invalid. The file has uploaded without property groups. Only call this if :meth:`is_properties_error` is true. :rtype: file_properties.InvalidPropertyGroupError """ if not self.is_properties_error(): raise AttributeError("tag 'properties_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadError, self)._process_custom_annotations(annotation_type, field_path, processor) UploadError_validator = bv.Union(UploadError) class UploadSessionAppendArg(bb.Struct): """ :ivar files.UploadSessionAppendArg.cursor: Contains the upload session ID and the offset. :ivar files.UploadSessionAppendArg.close: If true, the current session will be closed, at which point you won't be able to call :meth:`dropbox.dropbox_client.Dropbox.files_upload_session_append` anymore with the current session. :ivar files.UploadSessionAppendArg.content_hash: A hash of the file content uploaded in this call. If provided and the uploaded content does not match this hash, an error will be returned. For more information see our `Content hash `_ page. """ __slots__ = [ '_cursor_value', '_close_value', '_content_hash_value', ] _has_required_fields = True def __init__(self, cursor=None, close=None, content_hash=None): self._cursor_value = bb.NOT_SET self._close_value = bb.NOT_SET self._content_hash_value = bb.NOT_SET if cursor is not None: self.cursor = cursor if close is not None: self.close = close if content_hash is not None: self.content_hash = content_hash # Instance attribute type: UploadSessionCursor (validator is set below) cursor = bb.Attribute("cursor", user_defined=True) # Instance attribute type: bool (validator is set below) close = bb.Attribute("close") # Instance attribute type: str (validator is set below) content_hash = bb.Attribute("content_hash", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionAppendArg, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionAppendArg_validator = bv.Struct(UploadSessionAppendArg) class UploadSessionLookupError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.UploadSessionLookupError.not_found: The upload session ID was not found or has expired. Upload sessions are valid for 7 days. :ivar UploadSessionOffsetError UploadSessionLookupError.incorrect_offset: The specified offset was incorrect. See the value for the correct offset. This error may occur when a previous request was received and processed successfully but the client did not receive the response, e.g. due to a network error. :ivar files.UploadSessionLookupError.closed: You are attempting to append data to an upload session that has already been closed (i.e. committed). :ivar files.UploadSessionLookupError.not_closed: The session must be closed before calling upload_session/finish_batch. :ivar files.UploadSessionLookupError.too_large: You can not append to the upload session because the size of a file should not reach the max file size limit (i.e. 350GB). :ivar files.UploadSessionLookupError.concurrent_session_invalid_offset: For concurrent upload sessions, offset needs to be multiple of 4194304 bytes. :ivar files.UploadSessionLookupError.concurrent_session_invalid_data_size: For concurrent upload sessions, only chunks with size multiple of 4194304 bytes can be uploaded. :ivar files.UploadSessionLookupError.payload_too_large: The request payload must be at most 150 MB. """ _catch_all = 'other' # Attribute is overwritten below the class definition not_found = None # Attribute is overwritten below the class definition closed = None # Attribute is overwritten below the class definition not_closed = None # Attribute is overwritten below the class definition too_large = None # Attribute is overwritten below the class definition concurrent_session_invalid_offset = None # Attribute is overwritten below the class definition concurrent_session_invalid_data_size = None # Attribute is overwritten below the class definition payload_too_large = None # Attribute is overwritten below the class definition other = None @classmethod def incorrect_offset(cls, val): """ Create an instance of this class set to the ``incorrect_offset`` tag with value ``val``. :param UploadSessionOffsetError val: :rtype: UploadSessionLookupError """ return cls('incorrect_offset', val) def is_not_found(self): """ Check if the union tag is ``not_found``. :rtype: bool """ return self._tag == 'not_found' def is_incorrect_offset(self): """ Check if the union tag is ``incorrect_offset``. :rtype: bool """ return self._tag == 'incorrect_offset' def is_closed(self): """ Check if the union tag is ``closed``. :rtype: bool """ return self._tag == 'closed' def is_not_closed(self): """ Check if the union tag is ``not_closed``. :rtype: bool """ return self._tag == 'not_closed' def is_too_large(self): """ Check if the union tag is ``too_large``. :rtype: bool """ return self._tag == 'too_large' def is_concurrent_session_invalid_offset(self): """ Check if the union tag is ``concurrent_session_invalid_offset``. :rtype: bool """ return self._tag == 'concurrent_session_invalid_offset' def is_concurrent_session_invalid_data_size(self): """ Check if the union tag is ``concurrent_session_invalid_data_size``. :rtype: bool """ return self._tag == 'concurrent_session_invalid_data_size' def is_payload_too_large(self): """ Check if the union tag is ``payload_too_large``. :rtype: bool """ return self._tag == 'payload_too_large' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_incorrect_offset(self): """ The specified offset was incorrect. See the value for the correct offset. This error may occur when a previous request was received and processed successfully but the client did not receive the response, e.g. due to a network error. Only call this if :meth:`is_incorrect_offset` is true. :rtype: UploadSessionOffsetError """ if not self.is_incorrect_offset(): raise AttributeError("tag 'incorrect_offset' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionLookupError, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionLookupError_validator = bv.Union(UploadSessionLookupError) class UploadSessionAppendError(UploadSessionLookupError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.UploadSessionAppendError.content_hash_mismatch: The content received by the Dropbox server in this call does not match the provided content hash. """ # Attribute is overwritten below the class definition content_hash_mismatch = None def is_content_hash_mismatch(self): """ Check if the union tag is ``content_hash_mismatch``. :rtype: bool """ return self._tag == 'content_hash_mismatch' def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionAppendError, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionAppendError_validator = bv.Union(UploadSessionAppendError) class UploadSessionCursor(bb.Struct): """ :ivar files.UploadSessionCursor.session_id: The upload session ID (returned by :meth:`dropbox.dropbox_client.Dropbox.files_upload_session_start`). :ivar files.UploadSessionCursor.offset: Offset in bytes at which data should be appended. We use this to make sure upload data isn't lost or duplicated in the event of a network error. """ __slots__ = [ '_session_id_value', '_offset_value', ] _has_required_fields = True def __init__(self, session_id=None, offset=None): self._session_id_value = bb.NOT_SET self._offset_value = bb.NOT_SET if session_id is not None: self.session_id = session_id if offset is not None: self.offset = offset # Instance attribute type: str (validator is set below) session_id = bb.Attribute("session_id") # Instance attribute type: int (validator is set below) offset = bb.Attribute("offset") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionCursor, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionCursor_validator = bv.Struct(UploadSessionCursor) class UploadSessionFinishArg(bb.Struct): """ :ivar files.UploadSessionFinishArg.cursor: Contains the upload session ID and the offset. :ivar files.UploadSessionFinishArg.commit: Contains the path and other optional modifiers for the commit. :ivar files.UploadSessionFinishArg.content_hash: A hash of the file content uploaded in this call. If provided and the uploaded content does not match this hash, an error will be returned. For more information see our `Content hash `_ page. """ __slots__ = [ '_cursor_value', '_commit_value', '_content_hash_value', ] _has_required_fields = True def __init__(self, cursor=None, commit=None, content_hash=None): self._cursor_value = bb.NOT_SET self._commit_value = bb.NOT_SET self._content_hash_value = bb.NOT_SET if cursor is not None: self.cursor = cursor if commit is not None: self.commit = commit if content_hash is not None: self.content_hash = content_hash # Instance attribute type: UploadSessionCursor (validator is set below) cursor = bb.Attribute("cursor", user_defined=True) # Instance attribute type: CommitInfo (validator is set below) commit = bb.Attribute("commit", user_defined=True) # Instance attribute type: str (validator is set below) content_hash = bb.Attribute("content_hash", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionFinishArg, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionFinishArg_validator = bv.Struct(UploadSessionFinishArg) class UploadSessionFinishBatchArg(bb.Struct): """ :ivar files.UploadSessionFinishBatchArg.entries: Commit information for each file in the batch. """ __slots__ = [ '_entries_value', ] _has_required_fields = True def __init__(self, entries=None): self._entries_value = bb.NOT_SET if entries is not None: self.entries = entries # Instance attribute type: list of [UploadSessionFinishArg] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionFinishBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionFinishBatchArg_validator = bv.Struct(UploadSessionFinishBatchArg) class UploadSessionFinishBatchJobStatus(async_.PollResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar UploadSessionFinishBatchResult UploadSessionFinishBatchJobStatus.complete: The :meth:`dropbox.dropbox_client.Dropbox.files_upload_session_finish_batch` has finished. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param UploadSessionFinishBatchResult val: :rtype: UploadSessionFinishBatchJobStatus """ return cls('complete', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def get_complete(self): """ The :meth:`dropbox.dropbox_client.Dropbox.files_upload_session_finish_batch` has finished. Only call this if :meth:`is_complete` is true. :rtype: UploadSessionFinishBatchResult """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionFinishBatchJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionFinishBatchJobStatus_validator = bv.Union(UploadSessionFinishBatchJobStatus) class UploadSessionFinishBatchLaunch(async_.LaunchResultBase): """ Result returned by :meth:`dropbox.dropbox_client.Dropbox.files_upload_session_finish_batch` that may either launch an asynchronous job or complete synchronously. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param UploadSessionFinishBatchResult val: :rtype: UploadSessionFinishBatchLaunch """ return cls('complete', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_complete(self): """ Only call this if :meth:`is_complete` is true. :rtype: UploadSessionFinishBatchResult """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionFinishBatchLaunch, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionFinishBatchLaunch_validator = bv.Union(UploadSessionFinishBatchLaunch) class UploadSessionFinishBatchResult(bb.Struct): """ :ivar files.UploadSessionFinishBatchResult.entries: Each entry in ``UploadSessionFinishBatchArg.entries`` will appear at the same position inside ``UploadSessionFinishBatchResult.entries``. """ __slots__ = [ '_entries_value', ] _has_required_fields = True def __init__(self, entries=None): self._entries_value = bb.NOT_SET if entries is not None: self.entries = entries # Instance attribute type: list of [UploadSessionFinishBatchResultEntry] (validator is set below) entries = bb.Attribute("entries") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionFinishBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionFinishBatchResult_validator = bv.Struct(UploadSessionFinishBatchResult) class UploadSessionFinishBatchResultEntry(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param FileMetadata val: :rtype: UploadSessionFinishBatchResultEntry """ return cls('success', val) @classmethod def failure(cls, val): """ Create an instance of this class set to the ``failure`` tag with value ``val``. :param UploadSessionFinishError val: :rtype: UploadSessionFinishBatchResultEntry """ return cls('failure', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_failure(self): """ Check if the union tag is ``failure``. :rtype: bool """ return self._tag == 'failure' def get_success(self): """ Only call this if :meth:`is_success` is true. :rtype: FileMetadata """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_failure(self): """ Only call this if :meth:`is_failure` is true. :rtype: UploadSessionFinishError """ if not self.is_failure(): raise AttributeError("tag 'failure' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionFinishBatchResultEntry, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionFinishBatchResultEntry_validator = bv.Union(UploadSessionFinishBatchResultEntry) class UploadSessionFinishError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar UploadSessionLookupError UploadSessionFinishError.lookup_failed: The session arguments are incorrect; the value explains the reason. :ivar WriteError UploadSessionFinishError.path: Unable to save the uploaded contents to a file. Data has already been appended to the upload session. Please retry with empty data body and updated offset. :ivar InvalidPropertyGroupError UploadSessionFinishError.properties_error: The supplied property group is invalid. The file has uploaded without property groups. :ivar files.UploadSessionFinishError.too_many_shared_folder_targets: The batch request commits files into too many different shared folders. Please limit your batch request to files contained in a single shared folder. :ivar files.UploadSessionFinishError.too_many_write_operations: There are too many write operations happening in the user's Dropbox. You should retry uploading this file. :ivar files.UploadSessionFinishError.concurrent_session_data_not_allowed: Uploading data not allowed when finishing concurrent upload session. :ivar files.UploadSessionFinishError.concurrent_session_not_closed: Concurrent upload sessions need to be closed before finishing. :ivar files.UploadSessionFinishError.concurrent_session_missing_data: Not all pieces of data were uploaded before trying to finish the session. :ivar files.UploadSessionFinishError.payload_too_large: The request payload must be at most 150 MB. :ivar files.UploadSessionFinishError.content_hash_mismatch: The content received by the Dropbox server in this call does not match the provided content hash. """ _catch_all = 'other' # Attribute is overwritten below the class definition too_many_shared_folder_targets = None # Attribute is overwritten below the class definition too_many_write_operations = None # Attribute is overwritten below the class definition concurrent_session_data_not_allowed = None # Attribute is overwritten below the class definition concurrent_session_not_closed = None # Attribute is overwritten below the class definition concurrent_session_missing_data = None # Attribute is overwritten below the class definition payload_too_large = None # Attribute is overwritten below the class definition content_hash_mismatch = None # Attribute is overwritten below the class definition other = None @classmethod def lookup_failed(cls, val): """ Create an instance of this class set to the ``lookup_failed`` tag with value ``val``. :param UploadSessionLookupError val: :rtype: UploadSessionFinishError """ return cls('lookup_failed', val) @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param WriteError val: :rtype: UploadSessionFinishError """ return cls('path', val) @classmethod def properties_error(cls, val): """ Create an instance of this class set to the ``properties_error`` tag with value ``val``. :param file_properties.InvalidPropertyGroupError val: :rtype: UploadSessionFinishError """ return cls('properties_error', val) def is_lookup_failed(self): """ Check if the union tag is ``lookup_failed``. :rtype: bool """ return self._tag == 'lookup_failed' def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_properties_error(self): """ Check if the union tag is ``properties_error``. :rtype: bool """ return self._tag == 'properties_error' def is_too_many_shared_folder_targets(self): """ Check if the union tag is ``too_many_shared_folder_targets``. :rtype: bool """ return self._tag == 'too_many_shared_folder_targets' def is_too_many_write_operations(self): """ Check if the union tag is ``too_many_write_operations``. :rtype: bool """ return self._tag == 'too_many_write_operations' def is_concurrent_session_data_not_allowed(self): """ Check if the union tag is ``concurrent_session_data_not_allowed``. :rtype: bool """ return self._tag == 'concurrent_session_data_not_allowed' def is_concurrent_session_not_closed(self): """ Check if the union tag is ``concurrent_session_not_closed``. :rtype: bool """ return self._tag == 'concurrent_session_not_closed' def is_concurrent_session_missing_data(self): """ Check if the union tag is ``concurrent_session_missing_data``. :rtype: bool """ return self._tag == 'concurrent_session_missing_data' def is_payload_too_large(self): """ Check if the union tag is ``payload_too_large``. :rtype: bool """ return self._tag == 'payload_too_large' def is_content_hash_mismatch(self): """ Check if the union tag is ``content_hash_mismatch``. :rtype: bool """ return self._tag == 'content_hash_mismatch' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_lookup_failed(self): """ The session arguments are incorrect; the value explains the reason. Only call this if :meth:`is_lookup_failed` is true. :rtype: UploadSessionLookupError """ if not self.is_lookup_failed(): raise AttributeError("tag 'lookup_failed' not set") return self._value def get_path(self): """ Unable to save the uploaded contents to a file. Data has already been appended to the upload session. Please retry with empty data body and updated offset. Only call this if :meth:`is_path` is true. :rtype: WriteError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def get_properties_error(self): """ The supplied property group is invalid. The file has uploaded without property groups. Only call this if :meth:`is_properties_error` is true. :rtype: file_properties.InvalidPropertyGroupError """ if not self.is_properties_error(): raise AttributeError("tag 'properties_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionFinishError, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionFinishError_validator = bv.Union(UploadSessionFinishError) class UploadSessionOffsetError(bb.Struct): """ :ivar files.UploadSessionOffsetError.correct_offset: The offset up to which data has been collected. """ __slots__ = [ '_correct_offset_value', ] _has_required_fields = True def __init__(self, correct_offset=None): self._correct_offset_value = bb.NOT_SET if correct_offset is not None: self.correct_offset = correct_offset # Instance attribute type: int (validator is set below) correct_offset = bb.Attribute("correct_offset") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionOffsetError, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionOffsetError_validator = bv.Struct(UploadSessionOffsetError) class UploadSessionStartArg(bb.Struct): """ :ivar files.UploadSessionStartArg.close: If true, the current session will be closed, at which point you won't be able to call :meth:`dropbox.dropbox_client.Dropbox.files_upload_session_append` anymore with the current session. :ivar files.UploadSessionStartArg.session_type: Type of upload session you want to start. If not specified, default is ``UploadSessionType.sequential``. :ivar files.UploadSessionStartArg.content_hash: A hash of the file content uploaded in this call. If provided and the uploaded content does not match this hash, an error will be returned. For more information see our `Content hash `_ page. """ __slots__ = [ '_close_value', '_session_type_value', '_content_hash_value', ] _has_required_fields = False def __init__(self, close=None, session_type=None, content_hash=None): self._close_value = bb.NOT_SET self._session_type_value = bb.NOT_SET self._content_hash_value = bb.NOT_SET if close is not None: self.close = close if session_type is not None: self.session_type = session_type if content_hash is not None: self.content_hash = content_hash # Instance attribute type: bool (validator is set below) close = bb.Attribute("close") # Instance attribute type: UploadSessionType (validator is set below) session_type = bb.Attribute("session_type", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) content_hash = bb.Attribute("content_hash", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionStartArg, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionStartArg_validator = bv.Struct(UploadSessionStartArg) class UploadSessionStartBatchArg(bb.Struct): """ :ivar files.UploadSessionStartBatchArg.session_type: Type of upload session you want to start. If not specified, default is ``UploadSessionType.sequential``. :ivar files.UploadSessionStartBatchArg.num_sessions: The number of upload sessions to start. """ __slots__ = [ '_session_type_value', '_num_sessions_value', ] _has_required_fields = True def __init__(self, num_sessions=None, session_type=None): self._session_type_value = bb.NOT_SET self._num_sessions_value = bb.NOT_SET if session_type is not None: self.session_type = session_type if num_sessions is not None: self.num_sessions = num_sessions # Instance attribute type: UploadSessionType (validator is set below) session_type = bb.Attribute("session_type", nullable=True, user_defined=True) # Instance attribute type: int (validator is set below) num_sessions = bb.Attribute("num_sessions") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionStartBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionStartBatchArg_validator = bv.Struct(UploadSessionStartBatchArg) class UploadSessionStartBatchResult(bb.Struct): """ :ivar files.UploadSessionStartBatchResult.session_ids: A List of unique identifiers for the upload session. Pass each session_id to :meth:`dropbox.dropbox_client.Dropbox.files_upload_session_append` and :meth:`dropbox.dropbox_client.Dropbox.files_upload_session_finish`. """ __slots__ = [ '_session_ids_value', ] _has_required_fields = True def __init__(self, session_ids=None): self._session_ids_value = bb.NOT_SET if session_ids is not None: self.session_ids = session_ids # Instance attribute type: list of [str] (validator is set below) session_ids = bb.Attribute("session_ids") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionStartBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionStartBatchResult_validator = bv.Struct(UploadSessionStartBatchResult) class UploadSessionStartError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.UploadSessionStartError.concurrent_session_data_not_allowed: Uploading data not allowed when starting concurrent upload session. :ivar files.UploadSessionStartError.concurrent_session_close_not_allowed: Can not start a closed concurrent upload session. :ivar files.UploadSessionStartError.payload_too_large: The request payload must be at most 150 MB. :ivar files.UploadSessionStartError.content_hash_mismatch: The content received by the Dropbox server in this call does not match the provided content hash. """ _catch_all = 'other' # Attribute is overwritten below the class definition concurrent_session_data_not_allowed = None # Attribute is overwritten below the class definition concurrent_session_close_not_allowed = None # Attribute is overwritten below the class definition payload_too_large = None # Attribute is overwritten below the class definition content_hash_mismatch = None # Attribute is overwritten below the class definition other = None def is_concurrent_session_data_not_allowed(self): """ Check if the union tag is ``concurrent_session_data_not_allowed``. :rtype: bool """ return self._tag == 'concurrent_session_data_not_allowed' def is_concurrent_session_close_not_allowed(self): """ Check if the union tag is ``concurrent_session_close_not_allowed``. :rtype: bool """ return self._tag == 'concurrent_session_close_not_allowed' def is_payload_too_large(self): """ Check if the union tag is ``payload_too_large``. :rtype: bool """ return self._tag == 'payload_too_large' def is_content_hash_mismatch(self): """ Check if the union tag is ``content_hash_mismatch``. :rtype: bool """ return self._tag == 'content_hash_mismatch' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionStartError, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionStartError_validator = bv.Union(UploadSessionStartError) class UploadSessionStartResult(bb.Struct): """ :ivar files.UploadSessionStartResult.session_id: A unique identifier for the upload session. Pass this to :meth:`dropbox.dropbox_client.Dropbox.files_upload_session_append` and :meth:`dropbox.dropbox_client.Dropbox.files_upload_session_finish`. """ __slots__ = [ '_session_id_value', ] _has_required_fields = True def __init__(self, session_id=None): self._session_id_value = bb.NOT_SET if session_id is not None: self.session_id = session_id # Instance attribute type: str (validator is set below) session_id = bb.Attribute("session_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionStartResult, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionStartResult_validator = bv.Struct(UploadSessionStartResult) class UploadSessionType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.UploadSessionType.sequential: Pieces of data are uploaded sequentially one after another. This is the default behavior. :ivar files.UploadSessionType.concurrent: Pieces of data can be uploaded in concurrent RPCs in any order. """ _catch_all = 'other' # Attribute is overwritten below the class definition sequential = None # Attribute is overwritten below the class definition concurrent = None # Attribute is overwritten below the class definition other = None def is_sequential(self): """ Check if the union tag is ``sequential``. :rtype: bool """ return self._tag == 'sequential' def is_concurrent(self): """ Check if the union tag is ``concurrent``. :rtype: bool """ return self._tag == 'concurrent' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadSessionType, self)._process_custom_annotations(annotation_type, field_path, processor) UploadSessionType_validator = bv.Union(UploadSessionType) class UploadWriteFailed(bb.Struct): """ :ivar files.UploadWriteFailed.reason: The reason why the file couldn't be saved. :ivar files.UploadWriteFailed.upload_session_id: The upload session ID; data has already been uploaded to the corresponding upload session and this ID may be used to retry the commit with :meth:`dropbox.dropbox_client.Dropbox.files_upload_session_finish`. """ __slots__ = [ '_reason_value', '_upload_session_id_value', ] _has_required_fields = True def __init__(self, reason=None, upload_session_id=None): self._reason_value = bb.NOT_SET self._upload_session_id_value = bb.NOT_SET if reason is not None: self.reason = reason if upload_session_id is not None: self.upload_session_id = upload_session_id # Instance attribute type: WriteError (validator is set below) reason = bb.Attribute("reason", user_defined=True) # Instance attribute type: str (validator is set below) upload_session_id = bb.Attribute("upload_session_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadWriteFailed, self)._process_custom_annotations(annotation_type, field_path, processor) UploadWriteFailed_validator = bv.Struct(UploadWriteFailed) class UserGeneratedTag(bb.Struct): __slots__ = [ '_tag_text_value', ] _has_required_fields = True def __init__(self, tag_text=None): self._tag_text_value = bb.NOT_SET if tag_text is not None: self.tag_text = tag_text # Instance attribute type: str (validator is set below) tag_text = bb.Attribute("tag_text") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserGeneratedTag, self)._process_custom_annotations(annotation_type, field_path, processor) UserGeneratedTag_validator = bv.Struct(UserGeneratedTag) class VideoMetadata(MediaMetadata): """ Metadata for a video. :ivar files.VideoMetadata.duration: The duration of the video in milliseconds. """ __slots__ = [ '_duration_value', ] _has_required_fields = False def __init__(self, dimensions=None, location=None, time_taken=None, duration=None): super(VideoMetadata, self).__init__(dimensions, location, time_taken) self._duration_value = bb.NOT_SET if duration is not None: self.duration = duration # Instance attribute type: int (validator is set below) duration = bb.Attribute("duration", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(VideoMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) VideoMetadata_validator = bv.Struct(VideoMetadata) class WriteConflictError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.WriteConflictError.file: There's a file in the way. :ivar files.WriteConflictError.folder: There's a folder in the way. :ivar files.WriteConflictError.file_ancestor: There's a file at an ancestor path, so we couldn't create the required parent folders. """ _catch_all = 'other' # Attribute is overwritten below the class definition file = None # Attribute is overwritten below the class definition folder = None # Attribute is overwritten below the class definition file_ancestor = None # Attribute is overwritten below the class definition other = None def is_file(self): """ Check if the union tag is ``file``. :rtype: bool """ return self._tag == 'file' def is_folder(self): """ Check if the union tag is ``folder``. :rtype: bool """ return self._tag == 'folder' def is_file_ancestor(self): """ Check if the union tag is ``file_ancestor``. :rtype: bool """ return self._tag == 'file_ancestor' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(WriteConflictError, self)._process_custom_annotations(annotation_type, field_path, processor) WriteConflictError_validator = bv.Union(WriteConflictError) class WriteError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar Optional[str] files.WriteError.malformed_path: The given path does not satisfy the required path format. Please refer to the :link:`Path formats documentation https://www.dropbox.com/developers/documentation/http/documentation#path-formats` for more information. :ivar WriteConflictError WriteError.conflict: Couldn't write to the target path because there was something in the way. :ivar files.WriteError.no_write_permission: The user doesn't have permissions to write to the target location. :ivar files.WriteError.insufficient_space: The user doesn't have enough available space (bytes) to write more data. :ivar files.WriteError.disallowed_name: Dropbox will not save the file or folder because of its name. :ivar files.WriteError.team_folder: This endpoint cannot move or delete team folders. :ivar files.WriteError.operation_suppressed: This file operation is not allowed at this path. :ivar files.WriteError.too_many_write_operations: There are too many write operations in user's Dropbox. Please retry this request. """ _catch_all = 'other' # Attribute is overwritten below the class definition no_write_permission = None # Attribute is overwritten below the class definition insufficient_space = None # Attribute is overwritten below the class definition disallowed_name = None # Attribute is overwritten below the class definition team_folder = None # Attribute is overwritten below the class definition operation_suppressed = None # Attribute is overwritten below the class definition too_many_write_operations = None # Attribute is overwritten below the class definition other = None @classmethod def malformed_path(cls, val): """ Create an instance of this class set to the ``malformed_path`` tag with value ``val``. :param Optional[str] val: :rtype: WriteError """ return cls('malformed_path', val) @classmethod def conflict(cls, val): """ Create an instance of this class set to the ``conflict`` tag with value ``val``. :param WriteConflictError val: :rtype: WriteError """ return cls('conflict', val) def is_malformed_path(self): """ Check if the union tag is ``malformed_path``. :rtype: bool """ return self._tag == 'malformed_path' def is_conflict(self): """ Check if the union tag is ``conflict``. :rtype: bool """ return self._tag == 'conflict' def is_no_write_permission(self): """ Check if the union tag is ``no_write_permission``. :rtype: bool """ return self._tag == 'no_write_permission' def is_insufficient_space(self): """ Check if the union tag is ``insufficient_space``. :rtype: bool """ return self._tag == 'insufficient_space' def is_disallowed_name(self): """ Check if the union tag is ``disallowed_name``. :rtype: bool """ return self._tag == 'disallowed_name' def is_team_folder(self): """ Check if the union tag is ``team_folder``. :rtype: bool """ return self._tag == 'team_folder' def is_operation_suppressed(self): """ Check if the union tag is ``operation_suppressed``. :rtype: bool """ return self._tag == 'operation_suppressed' def is_too_many_write_operations(self): """ Check if the union tag is ``too_many_write_operations``. :rtype: bool """ return self._tag == 'too_many_write_operations' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_malformed_path(self): """ The given path does not satisfy the required path format. Please refer to the `Path formats documentation `_ for more information. Only call this if :meth:`is_malformed_path` is true. :rtype: Optional[str] """ if not self.is_malformed_path(): raise AttributeError("tag 'malformed_path' not set") return self._value def get_conflict(self): """ Couldn't write to the target path because there was something in the way. Only call this if :meth:`is_conflict` is true. :rtype: WriteConflictError """ if not self.is_conflict(): raise AttributeError("tag 'conflict' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(WriteError, self)._process_custom_annotations(annotation_type, field_path, processor) WriteError_validator = bv.Union(WriteError) class WriteMode(bb.Union): """ Your intent when writing a file to some path. This is used to determine what constitutes a conflict and what the autorename strategy is. In some situations, the conflict behavior is identical: (a) If the target path doesn't refer to anything, the file is always written; no conflict. (b) If the target path refers to a folder, it's always a conflict. (c) If the target path refers to a file with identical contents, nothing gets written; no conflict. The conflict checking differs in the case where there's a file at the target path with contents different from the contents you're trying to write. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar files.WriteMode.add: Do not overwrite an existing file if there is a conflict. The autorename strategy is to append a number to the file name. For example, "document.txt" might become "document (2).txt". :ivar files.WriteMode.overwrite: Always overwrite the existing file. The autorename strategy is the same as it is for ``add``. :ivar str files.WriteMode.update: Overwrite if the given "rev" matches the existing file's "rev". The supplied value should be the latest known "rev" of the file, for example, from :type:`FileMetadata`, from when the file was last downloaded by the app. This will cause the file on the Dropbox servers to be overwritten if the given "rev" matches the existing file's current "rev" on the Dropbox servers. The autorename strategy is to append the string "conflicted copy" to the file name. For example, "document.txt" might become "document (conflicted copy).txt" or "document (Panda's conflicted copy).txt". """ _catch_all = None # Attribute is overwritten below the class definition add = None # Attribute is overwritten below the class definition overwrite = None @classmethod def update(cls, val): """ Create an instance of this class set to the ``update`` tag with value ``val``. :param str val: :rtype: WriteMode """ return cls('update', val) def is_add(self): """ Check if the union tag is ``add``. :rtype: bool """ return self._tag == 'add' def is_overwrite(self): """ Check if the union tag is ``overwrite``. :rtype: bool """ return self._tag == 'overwrite' def is_update(self): """ Check if the union tag is ``update``. :rtype: bool """ return self._tag == 'update' def get_update(self): """ Overwrite if the given "rev" matches the existing file's "rev". The supplied value should be the latest known "rev" of the file, for example, from :class:`FileMetadata`, from when the file was last downloaded by the app. This will cause the file on the Dropbox servers to be overwritten if the given "rev" matches the existing file's current "rev" on the Dropbox servers. The autorename strategy is to append the string "conflicted copy" to the file name. For example, "document.txt" might become "document (conflicted copy).txt" or "document (Panda's conflicted copy).txt". Only call this if :meth:`is_update` is true. :rtype: str """ if not self.is_update(): raise AttributeError("tag 'update' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(WriteMode, self)._process_custom_annotations(annotation_type, field_path, processor) WriteMode_validator = bv.Union(WriteMode) CopyBatchArg_validator = RelocationBatchArgBase_validator CopyBatchArg = RelocationBatchArgBase FileId_validator = bv.String(min_length=4, pattern='id:.+') Id_validator = bv.String(min_length=1) ListFolderCursor_validator = bv.String(min_length=1) MalformedPathError_validator = bv.Nullable(bv.String()) Path_validator = bv.String(pattern='/(.|[\\r\\n])*') PathOrId_validator = bv.String(pattern='/(.|[\\r\\n])*|id:.*|(ns:[0-9]+(/.*)?)') PathR_validator = bv.String(pattern='(/(.|[\\r\\n])*)?|(ns:[0-9]+(/.*)?)') PathROrId_validator = bv.String(pattern='(/(.|[\\r\\n])*)?|id:.*|(ns:[0-9]+(/.*)?)') ReadPath_validator = bv.String(pattern='(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)') Rev_validator = bv.String(min_length=9, pattern='[0-9a-f]+') SearchV2Cursor_validator = bv.String(min_length=1) Sha256HexHash_validator = bv.String(min_length=64, max_length=64) SharedLinkUrl_validator = bv.String() TagText_validator = bv.String(min_length=1, max_length=32, pattern='[\\w]+') WritePath_validator = bv.String(pattern='(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)') WritePathOrId_validator = bv.String(pattern='(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)') AddTagArg.path.validator = Path_validator AddTagArg.tag_text.validator = TagText_validator AddTagArg._all_field_names_ = set([ 'path', 'tag_text', ]) AddTagArg._all_fields_ = [ ('path', AddTagArg.path.validator), ('tag_text', AddTagArg.tag_text.validator), ] BaseTagError._path_validator = LookupError_validator BaseTagError._other_validator = bv.Void() BaseTagError._tagmap = { 'path': BaseTagError._path_validator, 'other': BaseTagError._other_validator, } BaseTagError.other = BaseTagError('other') AddTagError._too_many_tags_validator = bv.Void() AddTagError._tagmap = { 'too_many_tags': AddTagError._too_many_tags_validator, } AddTagError._tagmap.update(BaseTagError._tagmap) AddTagError.too_many_tags = AddTagError('too_many_tags') GetMetadataArg.path.validator = ReadPath_validator GetMetadataArg.include_media_info.validator = bv.Boolean() GetMetadataArg.include_deleted.validator = bv.Boolean() GetMetadataArg.include_has_explicit_shared_members.validator = bv.Boolean() GetMetadataArg.include_property_groups.validator = bv.Nullable(file_properties.TemplateFilterBase_validator) GetMetadataArg._all_field_names_ = set([ 'path', 'include_media_info', 'include_deleted', 'include_has_explicit_shared_members', 'include_property_groups', ]) GetMetadataArg._all_fields_ = [ ('path', GetMetadataArg.path.validator), ('include_media_info', GetMetadataArg.include_media_info.validator), ('include_deleted', GetMetadataArg.include_deleted.validator), ('include_has_explicit_shared_members', GetMetadataArg.include_has_explicit_shared_members.validator), ('include_property_groups', GetMetadataArg.include_property_groups.validator), ] AlphaGetMetadataArg.include_property_templates.validator = bv.Nullable(bv.List(file_properties.TemplateId_validator)) AlphaGetMetadataArg._all_field_names_ = GetMetadataArg._all_field_names_.union(set(['include_property_templates'])) AlphaGetMetadataArg._all_fields_ = GetMetadataArg._all_fields_ + [('include_property_templates', AlphaGetMetadataArg.include_property_templates.validator)] GetMetadataError._path_validator = LookupError_validator GetMetadataError._tagmap = { 'path': GetMetadataError._path_validator, } AlphaGetMetadataError._properties_error_validator = file_properties.LookUpPropertiesError_validator AlphaGetMetadataError._tagmap = { 'properties_error': AlphaGetMetadataError._properties_error_validator, } AlphaGetMetadataError._tagmap.update(GetMetadataError._tagmap) CommitInfo.path.validator = WritePathOrId_validator CommitInfo.mode.validator = WriteMode_validator CommitInfo.autorename.validator = bv.Boolean() CommitInfo.client_modified.validator = bv.Nullable(common.DropboxTimestamp_validator) CommitInfo.mute.validator = bv.Boolean() CommitInfo.property_groups.validator = bv.Nullable(bv.List(file_properties.PropertyGroup_validator)) CommitInfo.strict_conflict.validator = bv.Boolean() CommitInfo._all_field_names_ = set([ 'path', 'mode', 'autorename', 'client_modified', 'mute', 'property_groups', 'strict_conflict', ]) CommitInfo._all_fields_ = [ ('path', CommitInfo.path.validator), ('mode', CommitInfo.mode.validator), ('autorename', CommitInfo.autorename.validator), ('client_modified', CommitInfo.client_modified.validator), ('mute', CommitInfo.mute.validator), ('property_groups', CommitInfo.property_groups.validator), ('strict_conflict', CommitInfo.strict_conflict.validator), ] ContentSyncSetting.id.validator = FileId_validator ContentSyncSetting.sync_setting.validator = SyncSetting_validator ContentSyncSetting._all_field_names_ = set([ 'id', 'sync_setting', ]) ContentSyncSetting._all_fields_ = [ ('id', ContentSyncSetting.id.validator), ('sync_setting', ContentSyncSetting.sync_setting.validator), ] ContentSyncSettingArg.id.validator = FileId_validator ContentSyncSettingArg.sync_setting.validator = SyncSettingArg_validator ContentSyncSettingArg._all_field_names_ = set([ 'id', 'sync_setting', ]) ContentSyncSettingArg._all_fields_ = [ ('id', ContentSyncSettingArg.id.validator), ('sync_setting', ContentSyncSettingArg.sync_setting.validator), ] CreateFolderArg.path.validator = WritePath_validator CreateFolderArg.autorename.validator = bv.Boolean() CreateFolderArg._all_field_names_ = set([ 'path', 'autorename', ]) CreateFolderArg._all_fields_ = [ ('path', CreateFolderArg.path.validator), ('autorename', CreateFolderArg.autorename.validator), ] CreateFolderBatchArg.paths.validator = bv.List(WritePath_validator, max_items=10000) CreateFolderBatchArg.autorename.validator = bv.Boolean() CreateFolderBatchArg.force_async.validator = bv.Boolean() CreateFolderBatchArg._all_field_names_ = set([ 'paths', 'autorename', 'force_async', ]) CreateFolderBatchArg._all_fields_ = [ ('paths', CreateFolderBatchArg.paths.validator), ('autorename', CreateFolderBatchArg.autorename.validator), ('force_async', CreateFolderBatchArg.force_async.validator), ] CreateFolderBatchError._too_many_files_validator = bv.Void() CreateFolderBatchError._other_validator = bv.Void() CreateFolderBatchError._tagmap = { 'too_many_files': CreateFolderBatchError._too_many_files_validator, 'other': CreateFolderBatchError._other_validator, } CreateFolderBatchError.too_many_files = CreateFolderBatchError('too_many_files') CreateFolderBatchError.other = CreateFolderBatchError('other') CreateFolderBatchJobStatus._complete_validator = CreateFolderBatchResult_validator CreateFolderBatchJobStatus._failed_validator = CreateFolderBatchError_validator CreateFolderBatchJobStatus._other_validator = bv.Void() CreateFolderBatchJobStatus._tagmap = { 'complete': CreateFolderBatchJobStatus._complete_validator, 'failed': CreateFolderBatchJobStatus._failed_validator, 'other': CreateFolderBatchJobStatus._other_validator, } CreateFolderBatchJobStatus._tagmap.update(async_.PollResultBase._tagmap) CreateFolderBatchJobStatus.other = CreateFolderBatchJobStatus('other') CreateFolderBatchLaunch._complete_validator = CreateFolderBatchResult_validator CreateFolderBatchLaunch._other_validator = bv.Void() CreateFolderBatchLaunch._tagmap = { 'complete': CreateFolderBatchLaunch._complete_validator, 'other': CreateFolderBatchLaunch._other_validator, } CreateFolderBatchLaunch._tagmap.update(async_.LaunchResultBase._tagmap) CreateFolderBatchLaunch.other = CreateFolderBatchLaunch('other') FileOpsResult._all_field_names_ = set([]) FileOpsResult._all_fields_ = [] CreateFolderBatchResult.entries.validator = bv.List(CreateFolderBatchResultEntry_validator) CreateFolderBatchResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['entries'])) CreateFolderBatchResult._all_fields_ = FileOpsResult._all_fields_ + [('entries', CreateFolderBatchResult.entries.validator)] CreateFolderBatchResultEntry._success_validator = CreateFolderEntryResult_validator CreateFolderBatchResultEntry._failure_validator = CreateFolderEntryError_validator CreateFolderBatchResultEntry._tagmap = { 'success': CreateFolderBatchResultEntry._success_validator, 'failure': CreateFolderBatchResultEntry._failure_validator, } CreateFolderEntryError._path_validator = WriteError_validator CreateFolderEntryError._other_validator = bv.Void() CreateFolderEntryError._tagmap = { 'path': CreateFolderEntryError._path_validator, 'other': CreateFolderEntryError._other_validator, } CreateFolderEntryError.other = CreateFolderEntryError('other') CreateFolderEntryResult.metadata.validator = FolderMetadata_validator CreateFolderEntryResult._all_field_names_ = set(['metadata']) CreateFolderEntryResult._all_fields_ = [('metadata', CreateFolderEntryResult.metadata.validator)] CreateFolderError._path_validator = WriteError_validator CreateFolderError._tagmap = { 'path': CreateFolderError._path_validator, } CreateFolderResult.metadata.validator = FolderMetadata_validator CreateFolderResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['metadata'])) CreateFolderResult._all_fields_ = FileOpsResult._all_fields_ + [('metadata', CreateFolderResult.metadata.validator)] DeleteArg.path.validator = WritePathOrId_validator DeleteArg.parent_rev.validator = bv.Nullable(Rev_validator) DeleteArg._all_field_names_ = set([ 'path', 'parent_rev', ]) DeleteArg._all_fields_ = [ ('path', DeleteArg.path.validator), ('parent_rev', DeleteArg.parent_rev.validator), ] DeleteBatchArg.entries.validator = bv.List(DeleteArg_validator, max_items=1000) DeleteBatchArg._all_field_names_ = set(['entries']) DeleteBatchArg._all_fields_ = [('entries', DeleteBatchArg.entries.validator)] DeleteBatchError._too_many_write_operations_validator = bv.Void() DeleteBatchError._other_validator = bv.Void() DeleteBatchError._tagmap = { 'too_many_write_operations': DeleteBatchError._too_many_write_operations_validator, 'other': DeleteBatchError._other_validator, } DeleteBatchError.too_many_write_operations = DeleteBatchError('too_many_write_operations') DeleteBatchError.other = DeleteBatchError('other') DeleteBatchJobStatus._complete_validator = DeleteBatchResult_validator DeleteBatchJobStatus._failed_validator = DeleteBatchError_validator DeleteBatchJobStatus._other_validator = bv.Void() DeleteBatchJobStatus._tagmap = { 'complete': DeleteBatchJobStatus._complete_validator, 'failed': DeleteBatchJobStatus._failed_validator, 'other': DeleteBatchJobStatus._other_validator, } DeleteBatchJobStatus._tagmap.update(async_.PollResultBase._tagmap) DeleteBatchJobStatus.other = DeleteBatchJobStatus('other') DeleteBatchLaunch._complete_validator = DeleteBatchResult_validator DeleteBatchLaunch._other_validator = bv.Void() DeleteBatchLaunch._tagmap = { 'complete': DeleteBatchLaunch._complete_validator, 'other': DeleteBatchLaunch._other_validator, } DeleteBatchLaunch._tagmap.update(async_.LaunchResultBase._tagmap) DeleteBatchLaunch.other = DeleteBatchLaunch('other') DeleteBatchResult.entries.validator = bv.List(DeleteBatchResultEntry_validator) DeleteBatchResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['entries'])) DeleteBatchResult._all_fields_ = FileOpsResult._all_fields_ + [('entries', DeleteBatchResult.entries.validator)] DeleteBatchResultData.metadata.validator = Metadata_validator DeleteBatchResultData._all_field_names_ = set(['metadata']) DeleteBatchResultData._all_fields_ = [('metadata', DeleteBatchResultData.metadata.validator)] DeleteBatchResultEntry._success_validator = DeleteBatchResultData_validator DeleteBatchResultEntry._failure_validator = DeleteError_validator DeleteBatchResultEntry._tagmap = { 'success': DeleteBatchResultEntry._success_validator, 'failure': DeleteBatchResultEntry._failure_validator, } DeleteError._path_lookup_validator = LookupError_validator DeleteError._path_write_validator = WriteError_validator DeleteError._too_many_write_operations_validator = bv.Void() DeleteError._too_many_files_validator = bv.Void() DeleteError._other_validator = bv.Void() DeleteError._tagmap = { 'path_lookup': DeleteError._path_lookup_validator, 'path_write': DeleteError._path_write_validator, 'too_many_write_operations': DeleteError._too_many_write_operations_validator, 'too_many_files': DeleteError._too_many_files_validator, 'other': DeleteError._other_validator, } DeleteError.too_many_write_operations = DeleteError('too_many_write_operations') DeleteError.too_many_files = DeleteError('too_many_files') DeleteError.other = DeleteError('other') DeleteResult.metadata.validator = Metadata_validator DeleteResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['metadata'])) DeleteResult._all_fields_ = FileOpsResult._all_fields_ + [('metadata', DeleteResult.metadata.validator)] Metadata.name.validator = bv.String() Metadata.path_lower.validator = bv.Nullable(bv.String()) Metadata.path_display.validator = bv.Nullable(bv.String()) Metadata.parent_shared_folder_id.validator = bv.Nullable(common.SharedFolderId_validator) Metadata.preview_url.validator = bv.Nullable(bv.String()) Metadata._field_names_ = set([ 'name', 'path_lower', 'path_display', 'parent_shared_folder_id', 'preview_url', ]) Metadata._all_field_names_ = Metadata._field_names_ Metadata._fields_ = [ ('name', Metadata.name.validator), ('path_lower', Metadata.path_lower.validator), ('path_display', Metadata.path_display.validator), ('parent_shared_folder_id', Metadata.parent_shared_folder_id.validator), ('preview_url', Metadata.preview_url.validator), ] Metadata._all_fields_ = Metadata._fields_ Metadata._tag_to_subtype_ = { ('file',): FileMetadata_validator, ('folder',): FolderMetadata_validator, ('deleted',): DeletedMetadata_validator, } Metadata._pytype_to_tag_and_subtype_ = { FileMetadata: (('file',), FileMetadata_validator), FolderMetadata: (('folder',), FolderMetadata_validator), DeletedMetadata: (('deleted',), DeletedMetadata_validator), } Metadata._is_catch_all_ = False DeletedMetadata._field_names_ = set([]) DeletedMetadata._all_field_names_ = Metadata._all_field_names_.union(DeletedMetadata._field_names_) DeletedMetadata._fields_ = [] DeletedMetadata._all_fields_ = Metadata._all_fields_ + DeletedMetadata._fields_ Dimensions.height.validator = bv.UInt64() Dimensions.width.validator = bv.UInt64() Dimensions._all_field_names_ = set([ 'height', 'width', ]) Dimensions._all_fields_ = [ ('height', Dimensions.height.validator), ('width', Dimensions.width.validator), ] DownloadArg.path.validator = ReadPath_validator DownloadArg.rev.validator = bv.Nullable(Rev_validator) DownloadArg._all_field_names_ = set([ 'path', 'rev', ]) DownloadArg._all_fields_ = [ ('path', DownloadArg.path.validator), ('rev', DownloadArg.rev.validator), ] DownloadError._path_validator = LookupError_validator DownloadError._unsupported_file_validator = bv.Void() DownloadError._other_validator = bv.Void() DownloadError._tagmap = { 'path': DownloadError._path_validator, 'unsupported_file': DownloadError._unsupported_file_validator, 'other': DownloadError._other_validator, } DownloadError.unsupported_file = DownloadError('unsupported_file') DownloadError.other = DownloadError('other') DownloadZipArg.path.validator = ReadPath_validator DownloadZipArg._all_field_names_ = set(['path']) DownloadZipArg._all_fields_ = [('path', DownloadZipArg.path.validator)] DownloadZipError._path_validator = LookupError_validator DownloadZipError._too_large_validator = bv.Void() DownloadZipError._too_many_files_validator = bv.Void() DownloadZipError._other_validator = bv.Void() DownloadZipError._tagmap = { 'path': DownloadZipError._path_validator, 'too_large': DownloadZipError._too_large_validator, 'too_many_files': DownloadZipError._too_many_files_validator, 'other': DownloadZipError._other_validator, } DownloadZipError.too_large = DownloadZipError('too_large') DownloadZipError.too_many_files = DownloadZipError('too_many_files') DownloadZipError.other = DownloadZipError('other') DownloadZipResult.metadata.validator = FolderMetadata_validator DownloadZipResult._all_field_names_ = set(['metadata']) DownloadZipResult._all_fields_ = [('metadata', DownloadZipResult.metadata.validator)] ExportArg.path.validator = ReadPath_validator ExportArg.export_format.validator = bv.Nullable(bv.String()) ExportArg._all_field_names_ = set([ 'path', 'export_format', ]) ExportArg._all_fields_ = [ ('path', ExportArg.path.validator), ('export_format', ExportArg.export_format.validator), ] ExportError._path_validator = LookupError_validator ExportError._non_exportable_validator = bv.Void() ExportError._invalid_export_format_validator = bv.Void() ExportError._retry_error_validator = bv.Void() ExportError._other_validator = bv.Void() ExportError._tagmap = { 'path': ExportError._path_validator, 'non_exportable': ExportError._non_exportable_validator, 'invalid_export_format': ExportError._invalid_export_format_validator, 'retry_error': ExportError._retry_error_validator, 'other': ExportError._other_validator, } ExportError.non_exportable = ExportError('non_exportable') ExportError.invalid_export_format = ExportError('invalid_export_format') ExportError.retry_error = ExportError('retry_error') ExportError.other = ExportError('other') ExportInfo.export_as.validator = bv.Nullable(bv.String()) ExportInfo.export_options.validator = bv.Nullable(bv.List(bv.String())) ExportInfo._all_field_names_ = set([ 'export_as', 'export_options', ]) ExportInfo._all_fields_ = [ ('export_as', ExportInfo.export_as.validator), ('export_options', ExportInfo.export_options.validator), ] ExportMetadata.name.validator = bv.String() ExportMetadata.size.validator = bv.UInt64() ExportMetadata.export_hash.validator = bv.Nullable(Sha256HexHash_validator) ExportMetadata.paper_revision.validator = bv.Nullable(bv.Int64()) ExportMetadata._all_field_names_ = set([ 'name', 'size', 'export_hash', 'paper_revision', ]) ExportMetadata._all_fields_ = [ ('name', ExportMetadata.name.validator), ('size', ExportMetadata.size.validator), ('export_hash', ExportMetadata.export_hash.validator), ('paper_revision', ExportMetadata.paper_revision.validator), ] ExportResult.export_metadata.validator = ExportMetadata_validator ExportResult.file_metadata.validator = FileMetadata_validator ExportResult._all_field_names_ = set([ 'export_metadata', 'file_metadata', ]) ExportResult._all_fields_ = [ ('export_metadata', ExportResult.export_metadata.validator), ('file_metadata', ExportResult.file_metadata.validator), ] FileCategory._image_validator = bv.Void() FileCategory._document_validator = bv.Void() FileCategory._pdf_validator = bv.Void() FileCategory._spreadsheet_validator = bv.Void() FileCategory._presentation_validator = bv.Void() FileCategory._audio_validator = bv.Void() FileCategory._video_validator = bv.Void() FileCategory._folder_validator = bv.Void() FileCategory._paper_validator = bv.Void() FileCategory._others_validator = bv.Void() FileCategory._other_validator = bv.Void() FileCategory._tagmap = { 'image': FileCategory._image_validator, 'document': FileCategory._document_validator, 'pdf': FileCategory._pdf_validator, 'spreadsheet': FileCategory._spreadsheet_validator, 'presentation': FileCategory._presentation_validator, 'audio': FileCategory._audio_validator, 'video': FileCategory._video_validator, 'folder': FileCategory._folder_validator, 'paper': FileCategory._paper_validator, 'others': FileCategory._others_validator, 'other': FileCategory._other_validator, } FileCategory.image = FileCategory('image') FileCategory.document = FileCategory('document') FileCategory.pdf = FileCategory('pdf') FileCategory.spreadsheet = FileCategory('spreadsheet') FileCategory.presentation = FileCategory('presentation') FileCategory.audio = FileCategory('audio') FileCategory.video = FileCategory('video') FileCategory.folder = FileCategory('folder') FileCategory.paper = FileCategory('paper') FileCategory.others = FileCategory('others') FileCategory.other = FileCategory('other') FileLock.content.validator = FileLockContent_validator FileLock._all_field_names_ = set(['content']) FileLock._all_fields_ = [('content', FileLock.content.validator)] FileLockContent._unlocked_validator = bv.Void() FileLockContent._single_user_validator = SingleUserLock_validator FileLockContent._other_validator = bv.Void() FileLockContent._tagmap = { 'unlocked': FileLockContent._unlocked_validator, 'single_user': FileLockContent._single_user_validator, 'other': FileLockContent._other_validator, } FileLockContent.unlocked = FileLockContent('unlocked') FileLockContent.other = FileLockContent('other') FileLockMetadata.is_lockholder.validator = bv.Nullable(bv.Boolean()) FileLockMetadata.lockholder_name.validator = bv.Nullable(bv.String()) FileLockMetadata.lockholder_account_id.validator = bv.Nullable(users_common.AccountId_validator) FileLockMetadata.created.validator = bv.Nullable(common.DropboxTimestamp_validator) FileLockMetadata._all_field_names_ = set([ 'is_lockholder', 'lockholder_name', 'lockholder_account_id', 'created', ]) FileLockMetadata._all_fields_ = [ ('is_lockholder', FileLockMetadata.is_lockholder.validator), ('lockholder_name', FileLockMetadata.lockholder_name.validator), ('lockholder_account_id', FileLockMetadata.lockholder_account_id.validator), ('created', FileLockMetadata.created.validator), ] FileMetadata.id.validator = Id_validator FileMetadata.client_modified.validator = common.DropboxTimestamp_validator FileMetadata.server_modified.validator = common.DropboxTimestamp_validator FileMetadata.rev.validator = Rev_validator FileMetadata.size.validator = bv.UInt64() FileMetadata.media_info.validator = bv.Nullable(MediaInfo_validator) FileMetadata.symlink_info.validator = bv.Nullable(SymlinkInfo_validator) FileMetadata.sharing_info.validator = bv.Nullable(FileSharingInfo_validator) FileMetadata.is_downloadable.validator = bv.Boolean() FileMetadata.export_info.validator = bv.Nullable(ExportInfo_validator) FileMetadata.property_groups.validator = bv.Nullable(bv.List(file_properties.PropertyGroup_validator)) FileMetadata.has_explicit_shared_members.validator = bv.Nullable(bv.Boolean()) FileMetadata.content_hash.validator = bv.Nullable(Sha256HexHash_validator) FileMetadata.file_lock_info.validator = bv.Nullable(FileLockMetadata_validator) FileMetadata._field_names_ = set([ 'id', 'client_modified', 'server_modified', 'rev', 'size', 'media_info', 'symlink_info', 'sharing_info', 'is_downloadable', 'export_info', 'property_groups', 'has_explicit_shared_members', 'content_hash', 'file_lock_info', ]) FileMetadata._all_field_names_ = Metadata._all_field_names_.union(FileMetadata._field_names_) FileMetadata._fields_ = [ ('id', FileMetadata.id.validator), ('client_modified', FileMetadata.client_modified.validator), ('server_modified', FileMetadata.server_modified.validator), ('rev', FileMetadata.rev.validator), ('size', FileMetadata.size.validator), ('media_info', FileMetadata.media_info.validator), ('symlink_info', FileMetadata.symlink_info.validator), ('sharing_info', FileMetadata.sharing_info.validator), ('is_downloadable', FileMetadata.is_downloadable.validator), ('export_info', FileMetadata.export_info.validator), ('property_groups', FileMetadata.property_groups.validator), ('has_explicit_shared_members', FileMetadata.has_explicit_shared_members.validator), ('content_hash', FileMetadata.content_hash.validator), ('file_lock_info', FileMetadata.file_lock_info.validator), ] FileMetadata._all_fields_ = Metadata._all_fields_ + FileMetadata._fields_ SharingInfo.read_only.validator = bv.Boolean() SharingInfo._all_field_names_ = set(['read_only']) SharingInfo._all_fields_ = [('read_only', SharingInfo.read_only.validator)] FileSharingInfo.parent_shared_folder_id.validator = common.SharedFolderId_validator FileSharingInfo.modified_by.validator = bv.Nullable(users_common.AccountId_validator) FileSharingInfo._all_field_names_ = SharingInfo._all_field_names_.union(set([ 'parent_shared_folder_id', 'modified_by', ])) FileSharingInfo._all_fields_ = SharingInfo._all_fields_ + [ ('parent_shared_folder_id', FileSharingInfo.parent_shared_folder_id.validator), ('modified_by', FileSharingInfo.modified_by.validator), ] FileStatus._active_validator = bv.Void() FileStatus._deleted_validator = bv.Void() FileStatus._other_validator = bv.Void() FileStatus._tagmap = { 'active': FileStatus._active_validator, 'deleted': FileStatus._deleted_validator, 'other': FileStatus._other_validator, } FileStatus.active = FileStatus('active') FileStatus.deleted = FileStatus('deleted') FileStatus.other = FileStatus('other') FolderMetadata.id.validator = Id_validator FolderMetadata.shared_folder_id.validator = bv.Nullable(common.SharedFolderId_validator) FolderMetadata.sharing_info.validator = bv.Nullable(FolderSharingInfo_validator) FolderMetadata.property_groups.validator = bv.Nullable(bv.List(file_properties.PropertyGroup_validator)) FolderMetadata._field_names_ = set([ 'id', 'shared_folder_id', 'sharing_info', 'property_groups', ]) FolderMetadata._all_field_names_ = Metadata._all_field_names_.union(FolderMetadata._field_names_) FolderMetadata._fields_ = [ ('id', FolderMetadata.id.validator), ('shared_folder_id', FolderMetadata.shared_folder_id.validator), ('sharing_info', FolderMetadata.sharing_info.validator), ('property_groups', FolderMetadata.property_groups.validator), ] FolderMetadata._all_fields_ = Metadata._all_fields_ + FolderMetadata._fields_ FolderSharingInfo.parent_shared_folder_id.validator = bv.Nullable(common.SharedFolderId_validator) FolderSharingInfo.shared_folder_id.validator = bv.Nullable(common.SharedFolderId_validator) FolderSharingInfo.traverse_only.validator = bv.Boolean() FolderSharingInfo.no_access.validator = bv.Boolean() FolderSharingInfo._all_field_names_ = SharingInfo._all_field_names_.union(set([ 'parent_shared_folder_id', 'shared_folder_id', 'traverse_only', 'no_access', ])) FolderSharingInfo._all_fields_ = SharingInfo._all_fields_ + [ ('parent_shared_folder_id', FolderSharingInfo.parent_shared_folder_id.validator), ('shared_folder_id', FolderSharingInfo.shared_folder_id.validator), ('traverse_only', FolderSharingInfo.traverse_only.validator), ('no_access', FolderSharingInfo.no_access.validator), ] GetCopyReferenceArg.path.validator = ReadPath_validator GetCopyReferenceArg._all_field_names_ = set(['path']) GetCopyReferenceArg._all_fields_ = [('path', GetCopyReferenceArg.path.validator)] GetCopyReferenceError._path_validator = LookupError_validator GetCopyReferenceError._other_validator = bv.Void() GetCopyReferenceError._tagmap = { 'path': GetCopyReferenceError._path_validator, 'other': GetCopyReferenceError._other_validator, } GetCopyReferenceError.other = GetCopyReferenceError('other') GetCopyReferenceResult.metadata.validator = Metadata_validator GetCopyReferenceResult.copy_reference.validator = bv.String() GetCopyReferenceResult.expires.validator = common.DropboxTimestamp_validator GetCopyReferenceResult._all_field_names_ = set([ 'metadata', 'copy_reference', 'expires', ]) GetCopyReferenceResult._all_fields_ = [ ('metadata', GetCopyReferenceResult.metadata.validator), ('copy_reference', GetCopyReferenceResult.copy_reference.validator), ('expires', GetCopyReferenceResult.expires.validator), ] GetTagsArg.paths.validator = bv.List(Path_validator) GetTagsArg._all_field_names_ = set(['paths']) GetTagsArg._all_fields_ = [('paths', GetTagsArg.paths.validator)] GetTagsResult.paths_to_tags.validator = bv.List(PathToTags_validator) GetTagsResult._all_field_names_ = set(['paths_to_tags']) GetTagsResult._all_fields_ = [('paths_to_tags', GetTagsResult.paths_to_tags.validator)] GetTemporaryLinkArg.path.validator = ReadPath_validator GetTemporaryLinkArg._all_field_names_ = set(['path']) GetTemporaryLinkArg._all_fields_ = [('path', GetTemporaryLinkArg.path.validator)] GetTemporaryLinkError._path_validator = LookupError_validator GetTemporaryLinkError._email_not_verified_validator = bv.Void() GetTemporaryLinkError._unsupported_file_validator = bv.Void() GetTemporaryLinkError._not_allowed_validator = bv.Void() GetTemporaryLinkError._other_validator = bv.Void() GetTemporaryLinkError._tagmap = { 'path': GetTemporaryLinkError._path_validator, 'email_not_verified': GetTemporaryLinkError._email_not_verified_validator, 'unsupported_file': GetTemporaryLinkError._unsupported_file_validator, 'not_allowed': GetTemporaryLinkError._not_allowed_validator, 'other': GetTemporaryLinkError._other_validator, } GetTemporaryLinkError.email_not_verified = GetTemporaryLinkError('email_not_verified') GetTemporaryLinkError.unsupported_file = GetTemporaryLinkError('unsupported_file') GetTemporaryLinkError.not_allowed = GetTemporaryLinkError('not_allowed') GetTemporaryLinkError.other = GetTemporaryLinkError('other') GetTemporaryLinkResult.metadata.validator = FileMetadata_validator GetTemporaryLinkResult.link.validator = bv.String() GetTemporaryLinkResult._all_field_names_ = set([ 'metadata', 'link', ]) GetTemporaryLinkResult._all_fields_ = [ ('metadata', GetTemporaryLinkResult.metadata.validator), ('link', GetTemporaryLinkResult.link.validator), ] GetTemporaryUploadLinkArg.commit_info.validator = CommitInfo_validator GetTemporaryUploadLinkArg.duration.validator = bv.Float64(min_value=60.0, max_value=14400.0) GetTemporaryUploadLinkArg._all_field_names_ = set([ 'commit_info', 'duration', ]) GetTemporaryUploadLinkArg._all_fields_ = [ ('commit_info', GetTemporaryUploadLinkArg.commit_info.validator), ('duration', GetTemporaryUploadLinkArg.duration.validator), ] GetTemporaryUploadLinkResult.link.validator = bv.String() GetTemporaryUploadLinkResult._all_field_names_ = set(['link']) GetTemporaryUploadLinkResult._all_fields_ = [('link', GetTemporaryUploadLinkResult.link.validator)] GetThumbnailBatchArg.entries.validator = bv.List(ThumbnailArg_validator) GetThumbnailBatchArg._all_field_names_ = set(['entries']) GetThumbnailBatchArg._all_fields_ = [('entries', GetThumbnailBatchArg.entries.validator)] GetThumbnailBatchError._too_many_files_validator = bv.Void() GetThumbnailBatchError._other_validator = bv.Void() GetThumbnailBatchError._tagmap = { 'too_many_files': GetThumbnailBatchError._too_many_files_validator, 'other': GetThumbnailBatchError._other_validator, } GetThumbnailBatchError.too_many_files = GetThumbnailBatchError('too_many_files') GetThumbnailBatchError.other = GetThumbnailBatchError('other') GetThumbnailBatchResult.entries.validator = bv.List(GetThumbnailBatchResultEntry_validator) GetThumbnailBatchResult._all_field_names_ = set(['entries']) GetThumbnailBatchResult._all_fields_ = [('entries', GetThumbnailBatchResult.entries.validator)] GetThumbnailBatchResultData.metadata.validator = FileMetadata_validator GetThumbnailBatchResultData.thumbnail.validator = bv.String() GetThumbnailBatchResultData._all_field_names_ = set([ 'metadata', 'thumbnail', ]) GetThumbnailBatchResultData._all_fields_ = [ ('metadata', GetThumbnailBatchResultData.metadata.validator), ('thumbnail', GetThumbnailBatchResultData.thumbnail.validator), ] GetThumbnailBatchResultEntry._success_validator = GetThumbnailBatchResultData_validator GetThumbnailBatchResultEntry._failure_validator = ThumbnailError_validator GetThumbnailBatchResultEntry._other_validator = bv.Void() GetThumbnailBatchResultEntry._tagmap = { 'success': GetThumbnailBatchResultEntry._success_validator, 'failure': GetThumbnailBatchResultEntry._failure_validator, 'other': GetThumbnailBatchResultEntry._other_validator, } GetThumbnailBatchResultEntry.other = GetThumbnailBatchResultEntry('other') GpsCoordinates.latitude.validator = bv.Float64() GpsCoordinates.longitude.validator = bv.Float64() GpsCoordinates._all_field_names_ = set([ 'latitude', 'longitude', ]) GpsCoordinates._all_fields_ = [ ('latitude', GpsCoordinates.latitude.validator), ('longitude', GpsCoordinates.longitude.validator), ] HighlightSpan.highlight_str.validator = bv.String() HighlightSpan.is_highlighted.validator = bv.Boolean() HighlightSpan._all_field_names_ = set([ 'highlight_str', 'is_highlighted', ]) HighlightSpan._all_fields_ = [ ('highlight_str', HighlightSpan.highlight_str.validator), ('is_highlighted', HighlightSpan.is_highlighted.validator), ] ImportFormat._html_validator = bv.Void() ImportFormat._markdown_validator = bv.Void() ImportFormat._plain_text_validator = bv.Void() ImportFormat._other_validator = bv.Void() ImportFormat._tagmap = { 'html': ImportFormat._html_validator, 'markdown': ImportFormat._markdown_validator, 'plain_text': ImportFormat._plain_text_validator, 'other': ImportFormat._other_validator, } ImportFormat.html = ImportFormat('html') ImportFormat.markdown = ImportFormat('markdown') ImportFormat.plain_text = ImportFormat('plain_text') ImportFormat.other = ImportFormat('other') ListFolderArg.path.validator = PathROrId_validator ListFolderArg.recursive.validator = bv.Boolean() ListFolderArg.include_media_info.validator = bv.Boolean() ListFolderArg.include_deleted.validator = bv.Boolean() ListFolderArg.include_has_explicit_shared_members.validator = bv.Boolean() ListFolderArg.include_mounted_folders.validator = bv.Boolean() ListFolderArg.limit.validator = bv.Nullable(bv.UInt32(min_value=1, max_value=2000)) ListFolderArg.shared_link.validator = bv.Nullable(SharedLink_validator) ListFolderArg.include_property_groups.validator = bv.Nullable(file_properties.TemplateFilterBase_validator) ListFolderArg.include_non_downloadable_files.validator = bv.Boolean() ListFolderArg._all_field_names_ = set([ 'path', 'recursive', 'include_media_info', 'include_deleted', 'include_has_explicit_shared_members', 'include_mounted_folders', 'limit', 'shared_link', 'include_property_groups', 'include_non_downloadable_files', ]) ListFolderArg._all_fields_ = [ ('path', ListFolderArg.path.validator), ('recursive', ListFolderArg.recursive.validator), ('include_media_info', ListFolderArg.include_media_info.validator), ('include_deleted', ListFolderArg.include_deleted.validator), ('include_has_explicit_shared_members', ListFolderArg.include_has_explicit_shared_members.validator), ('include_mounted_folders', ListFolderArg.include_mounted_folders.validator), ('limit', ListFolderArg.limit.validator), ('shared_link', ListFolderArg.shared_link.validator), ('include_property_groups', ListFolderArg.include_property_groups.validator), ('include_non_downloadable_files', ListFolderArg.include_non_downloadable_files.validator), ] ListFolderContinueArg.cursor.validator = ListFolderCursor_validator ListFolderContinueArg._all_field_names_ = set(['cursor']) ListFolderContinueArg._all_fields_ = [('cursor', ListFolderContinueArg.cursor.validator)] ListFolderContinueError._path_validator = LookupError_validator ListFolderContinueError._reset_validator = bv.Void() ListFolderContinueError._other_validator = bv.Void() ListFolderContinueError._tagmap = { 'path': ListFolderContinueError._path_validator, 'reset': ListFolderContinueError._reset_validator, 'other': ListFolderContinueError._other_validator, } ListFolderContinueError.reset = ListFolderContinueError('reset') ListFolderContinueError.other = ListFolderContinueError('other') ListFolderError._path_validator = LookupError_validator ListFolderError._template_error_validator = file_properties.TemplateError_validator ListFolderError._other_validator = bv.Void() ListFolderError._tagmap = { 'path': ListFolderError._path_validator, 'template_error': ListFolderError._template_error_validator, 'other': ListFolderError._other_validator, } ListFolderError.other = ListFolderError('other') ListFolderGetLatestCursorResult.cursor.validator = ListFolderCursor_validator ListFolderGetLatestCursorResult._all_field_names_ = set(['cursor']) ListFolderGetLatestCursorResult._all_fields_ = [('cursor', ListFolderGetLatestCursorResult.cursor.validator)] ListFolderLongpollArg.cursor.validator = ListFolderCursor_validator ListFolderLongpollArg.timeout.validator = bv.UInt64(min_value=30, max_value=480) ListFolderLongpollArg._all_field_names_ = set([ 'cursor', 'timeout', ]) ListFolderLongpollArg._all_fields_ = [ ('cursor', ListFolderLongpollArg.cursor.validator), ('timeout', ListFolderLongpollArg.timeout.validator), ] ListFolderLongpollError._reset_validator = bv.Void() ListFolderLongpollError._other_validator = bv.Void() ListFolderLongpollError._tagmap = { 'reset': ListFolderLongpollError._reset_validator, 'other': ListFolderLongpollError._other_validator, } ListFolderLongpollError.reset = ListFolderLongpollError('reset') ListFolderLongpollError.other = ListFolderLongpollError('other') ListFolderLongpollResult.changes.validator = bv.Boolean() ListFolderLongpollResult.backoff.validator = bv.Nullable(bv.UInt64()) ListFolderLongpollResult._all_field_names_ = set([ 'changes', 'backoff', ]) ListFolderLongpollResult._all_fields_ = [ ('changes', ListFolderLongpollResult.changes.validator), ('backoff', ListFolderLongpollResult.backoff.validator), ] ListFolderResult.entries.validator = bv.List(Metadata_validator) ListFolderResult.cursor.validator = ListFolderCursor_validator ListFolderResult.has_more.validator = bv.Boolean() ListFolderResult._all_field_names_ = set([ 'entries', 'cursor', 'has_more', ]) ListFolderResult._all_fields_ = [ ('entries', ListFolderResult.entries.validator), ('cursor', ListFolderResult.cursor.validator), ('has_more', ListFolderResult.has_more.validator), ] ListRevisionsArg.path.validator = PathOrId_validator ListRevisionsArg.mode.validator = ListRevisionsMode_validator ListRevisionsArg.limit.validator = bv.UInt64(min_value=1, max_value=100) ListRevisionsArg._all_field_names_ = set([ 'path', 'mode', 'limit', ]) ListRevisionsArg._all_fields_ = [ ('path', ListRevisionsArg.path.validator), ('mode', ListRevisionsArg.mode.validator), ('limit', ListRevisionsArg.limit.validator), ] ListRevisionsError._path_validator = LookupError_validator ListRevisionsError._other_validator = bv.Void() ListRevisionsError._tagmap = { 'path': ListRevisionsError._path_validator, 'other': ListRevisionsError._other_validator, } ListRevisionsError.other = ListRevisionsError('other') ListRevisionsMode._path_validator = bv.Void() ListRevisionsMode._id_validator = bv.Void() ListRevisionsMode._other_validator = bv.Void() ListRevisionsMode._tagmap = { 'path': ListRevisionsMode._path_validator, 'id': ListRevisionsMode._id_validator, 'other': ListRevisionsMode._other_validator, } ListRevisionsMode.path = ListRevisionsMode('path') ListRevisionsMode.id = ListRevisionsMode('id') ListRevisionsMode.other = ListRevisionsMode('other') ListRevisionsResult.is_deleted.validator = bv.Boolean() ListRevisionsResult.server_deleted.validator = bv.Nullable(common.DropboxTimestamp_validator) ListRevisionsResult.entries.validator = bv.List(FileMetadata_validator) ListRevisionsResult._all_field_names_ = set([ 'is_deleted', 'server_deleted', 'entries', ]) ListRevisionsResult._all_fields_ = [ ('is_deleted', ListRevisionsResult.is_deleted.validator), ('server_deleted', ListRevisionsResult.server_deleted.validator), ('entries', ListRevisionsResult.entries.validator), ] LockConflictError.lock.validator = FileLock_validator LockConflictError._all_field_names_ = set(['lock']) LockConflictError._all_fields_ = [('lock', LockConflictError.lock.validator)] LockFileArg.path.validator = WritePathOrId_validator LockFileArg._all_field_names_ = set(['path']) LockFileArg._all_fields_ = [('path', LockFileArg.path.validator)] LockFileBatchArg.entries.validator = bv.List(LockFileArg_validator) LockFileBatchArg._all_field_names_ = set(['entries']) LockFileBatchArg._all_fields_ = [('entries', LockFileBatchArg.entries.validator)] LockFileBatchResult.entries.validator = bv.List(LockFileResultEntry_validator) LockFileBatchResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['entries'])) LockFileBatchResult._all_fields_ = FileOpsResult._all_fields_ + [('entries', LockFileBatchResult.entries.validator)] LockFileError._path_lookup_validator = LookupError_validator LockFileError._too_many_write_operations_validator = bv.Void() LockFileError._too_many_files_validator = bv.Void() LockFileError._no_write_permission_validator = bv.Void() LockFileError._cannot_be_locked_validator = bv.Void() LockFileError._file_not_shared_validator = bv.Void() LockFileError._lock_conflict_validator = LockConflictError_validator LockFileError._internal_error_validator = bv.Void() LockFileError._other_validator = bv.Void() LockFileError._tagmap = { 'path_lookup': LockFileError._path_lookup_validator, 'too_many_write_operations': LockFileError._too_many_write_operations_validator, 'too_many_files': LockFileError._too_many_files_validator, 'no_write_permission': LockFileError._no_write_permission_validator, 'cannot_be_locked': LockFileError._cannot_be_locked_validator, 'file_not_shared': LockFileError._file_not_shared_validator, 'lock_conflict': LockFileError._lock_conflict_validator, 'internal_error': LockFileError._internal_error_validator, 'other': LockFileError._other_validator, } LockFileError.too_many_write_operations = LockFileError('too_many_write_operations') LockFileError.too_many_files = LockFileError('too_many_files') LockFileError.no_write_permission = LockFileError('no_write_permission') LockFileError.cannot_be_locked = LockFileError('cannot_be_locked') LockFileError.file_not_shared = LockFileError('file_not_shared') LockFileError.internal_error = LockFileError('internal_error') LockFileError.other = LockFileError('other') LockFileResult.metadata.validator = Metadata_validator LockFileResult.lock.validator = FileLock_validator LockFileResult._all_field_names_ = set([ 'metadata', 'lock', ]) LockFileResult._all_fields_ = [ ('metadata', LockFileResult.metadata.validator), ('lock', LockFileResult.lock.validator), ] LockFileResultEntry._success_validator = LockFileResult_validator LockFileResultEntry._failure_validator = LockFileError_validator LockFileResultEntry._tagmap = { 'success': LockFileResultEntry._success_validator, 'failure': LockFileResultEntry._failure_validator, } LookupError._malformed_path_validator = MalformedPathError_validator LookupError._not_found_validator = bv.Void() LookupError._not_file_validator = bv.Void() LookupError._not_folder_validator = bv.Void() LookupError._restricted_content_validator = bv.Void() LookupError._unsupported_content_type_validator = bv.Void() LookupError._locked_validator = bv.Void() LookupError._other_validator = bv.Void() LookupError._tagmap = { 'malformed_path': LookupError._malformed_path_validator, 'not_found': LookupError._not_found_validator, 'not_file': LookupError._not_file_validator, 'not_folder': LookupError._not_folder_validator, 'restricted_content': LookupError._restricted_content_validator, 'unsupported_content_type': LookupError._unsupported_content_type_validator, 'locked': LookupError._locked_validator, 'other': LookupError._other_validator, } LookupError.not_found = LookupError('not_found') LookupError.not_file = LookupError('not_file') LookupError.not_folder = LookupError('not_folder') LookupError.restricted_content = LookupError('restricted_content') LookupError.unsupported_content_type = LookupError('unsupported_content_type') LookupError.locked = LookupError('locked') LookupError.other = LookupError('other') MediaInfo._pending_validator = bv.Void() MediaInfo._metadata_validator = MediaMetadata_validator MediaInfo._tagmap = { 'pending': MediaInfo._pending_validator, 'metadata': MediaInfo._metadata_validator, } MediaInfo.pending = MediaInfo('pending') MediaMetadata.dimensions.validator = bv.Nullable(Dimensions_validator) MediaMetadata.location.validator = bv.Nullable(GpsCoordinates_validator) MediaMetadata.time_taken.validator = bv.Nullable(common.DropboxTimestamp_validator) MediaMetadata._field_names_ = set([ 'dimensions', 'location', 'time_taken', ]) MediaMetadata._all_field_names_ = MediaMetadata._field_names_ MediaMetadata._fields_ = [ ('dimensions', MediaMetadata.dimensions.validator), ('location', MediaMetadata.location.validator), ('time_taken', MediaMetadata.time_taken.validator), ] MediaMetadata._all_fields_ = MediaMetadata._fields_ MediaMetadata._tag_to_subtype_ = { ('photo',): PhotoMetadata_validator, ('video',): VideoMetadata_validator, } MediaMetadata._pytype_to_tag_and_subtype_ = { PhotoMetadata: (('photo',), PhotoMetadata_validator), VideoMetadata: (('video',), VideoMetadata_validator), } MediaMetadata._is_catch_all_ = False MetadataV2._metadata_validator = Metadata_validator MetadataV2._other_validator = bv.Void() MetadataV2._tagmap = { 'metadata': MetadataV2._metadata_validator, 'other': MetadataV2._other_validator, } MetadataV2.other = MetadataV2('other') MinimalFileLinkMetadata.url.validator = bv.String() MinimalFileLinkMetadata.id.validator = bv.Nullable(Id_validator) MinimalFileLinkMetadata.path.validator = bv.Nullable(bv.String()) MinimalFileLinkMetadata.rev.validator = Rev_validator MinimalFileLinkMetadata._all_field_names_ = set([ 'url', 'id', 'path', 'rev', ]) MinimalFileLinkMetadata._all_fields_ = [ ('url', MinimalFileLinkMetadata.url.validator), ('id', MinimalFileLinkMetadata.id.validator), ('path', MinimalFileLinkMetadata.path.validator), ('rev', MinimalFileLinkMetadata.rev.validator), ] RelocationBatchArgBase.entries.validator = bv.List(RelocationPath_validator, min_items=1, max_items=1000) RelocationBatchArgBase.autorename.validator = bv.Boolean() RelocationBatchArgBase._all_field_names_ = set([ 'entries', 'autorename', ]) RelocationBatchArgBase._all_fields_ = [ ('entries', RelocationBatchArgBase.entries.validator), ('autorename', RelocationBatchArgBase.autorename.validator), ] MoveBatchArg.allow_ownership_transfer.validator = bv.Boolean() MoveBatchArg._all_field_names_ = RelocationBatchArgBase._all_field_names_.union(set(['allow_ownership_transfer'])) MoveBatchArg._all_fields_ = RelocationBatchArgBase._all_fields_ + [('allow_ownership_transfer', MoveBatchArg.allow_ownership_transfer.validator)] MoveIntoFamilyError._is_shared_folder_validator = bv.Void() MoveIntoFamilyError._other_validator = bv.Void() MoveIntoFamilyError._tagmap = { 'is_shared_folder': MoveIntoFamilyError._is_shared_folder_validator, 'other': MoveIntoFamilyError._other_validator, } MoveIntoFamilyError.is_shared_folder = MoveIntoFamilyError('is_shared_folder') MoveIntoFamilyError.other = MoveIntoFamilyError('other') MoveIntoVaultError._is_shared_folder_validator = bv.Void() MoveIntoVaultError._other_validator = bv.Void() MoveIntoVaultError._tagmap = { 'is_shared_folder': MoveIntoVaultError._is_shared_folder_validator, 'other': MoveIntoVaultError._other_validator, } MoveIntoVaultError.is_shared_folder = MoveIntoVaultError('is_shared_folder') MoveIntoVaultError.other = MoveIntoVaultError('other') PaperContentError._insufficient_permissions_validator = bv.Void() PaperContentError._content_malformed_validator = bv.Void() PaperContentError._doc_length_exceeded_validator = bv.Void() PaperContentError._image_size_exceeded_validator = bv.Void() PaperContentError._other_validator = bv.Void() PaperContentError._tagmap = { 'insufficient_permissions': PaperContentError._insufficient_permissions_validator, 'content_malformed': PaperContentError._content_malformed_validator, 'doc_length_exceeded': PaperContentError._doc_length_exceeded_validator, 'image_size_exceeded': PaperContentError._image_size_exceeded_validator, 'other': PaperContentError._other_validator, } PaperContentError.insufficient_permissions = PaperContentError('insufficient_permissions') PaperContentError.content_malformed = PaperContentError('content_malformed') PaperContentError.doc_length_exceeded = PaperContentError('doc_length_exceeded') PaperContentError.image_size_exceeded = PaperContentError('image_size_exceeded') PaperContentError.other = PaperContentError('other') PaperCreateArg.path.validator = Path_validator PaperCreateArg.import_format.validator = ImportFormat_validator PaperCreateArg._all_field_names_ = set([ 'path', 'import_format', ]) PaperCreateArg._all_fields_ = [ ('path', PaperCreateArg.path.validator), ('import_format', PaperCreateArg.import_format.validator), ] PaperCreateError._invalid_path_validator = bv.Void() PaperCreateError._email_unverified_validator = bv.Void() PaperCreateError._invalid_file_extension_validator = bv.Void() PaperCreateError._paper_disabled_validator = bv.Void() PaperCreateError._tagmap = { 'invalid_path': PaperCreateError._invalid_path_validator, 'email_unverified': PaperCreateError._email_unverified_validator, 'invalid_file_extension': PaperCreateError._invalid_file_extension_validator, 'paper_disabled': PaperCreateError._paper_disabled_validator, } PaperCreateError._tagmap.update(PaperContentError._tagmap) PaperCreateError.invalid_path = PaperCreateError('invalid_path') PaperCreateError.email_unverified = PaperCreateError('email_unverified') PaperCreateError.invalid_file_extension = PaperCreateError('invalid_file_extension') PaperCreateError.paper_disabled = PaperCreateError('paper_disabled') PaperCreateResult.url.validator = bv.String() PaperCreateResult.result_path.validator = bv.String() PaperCreateResult.file_id.validator = FileId_validator PaperCreateResult.paper_revision.validator = bv.Int64() PaperCreateResult._all_field_names_ = set([ 'url', 'result_path', 'file_id', 'paper_revision', ]) PaperCreateResult._all_fields_ = [ ('url', PaperCreateResult.url.validator), ('result_path', PaperCreateResult.result_path.validator), ('file_id', PaperCreateResult.file_id.validator), ('paper_revision', PaperCreateResult.paper_revision.validator), ] PaperDocUpdatePolicy._update_validator = bv.Void() PaperDocUpdatePolicy._overwrite_validator = bv.Void() PaperDocUpdatePolicy._prepend_validator = bv.Void() PaperDocUpdatePolicy._append_validator = bv.Void() PaperDocUpdatePolicy._other_validator = bv.Void() PaperDocUpdatePolicy._tagmap = { 'update': PaperDocUpdatePolicy._update_validator, 'overwrite': PaperDocUpdatePolicy._overwrite_validator, 'prepend': PaperDocUpdatePolicy._prepend_validator, 'append': PaperDocUpdatePolicy._append_validator, 'other': PaperDocUpdatePolicy._other_validator, } PaperDocUpdatePolicy.update = PaperDocUpdatePolicy('update') PaperDocUpdatePolicy.overwrite = PaperDocUpdatePolicy('overwrite') PaperDocUpdatePolicy.prepend = PaperDocUpdatePolicy('prepend') PaperDocUpdatePolicy.append = PaperDocUpdatePolicy('append') PaperDocUpdatePolicy.other = PaperDocUpdatePolicy('other') PaperUpdateArg.path.validator = WritePathOrId_validator PaperUpdateArg.import_format.validator = ImportFormat_validator PaperUpdateArg.doc_update_policy.validator = PaperDocUpdatePolicy_validator PaperUpdateArg.paper_revision.validator = bv.Nullable(bv.Int64()) PaperUpdateArg._all_field_names_ = set([ 'path', 'import_format', 'doc_update_policy', 'paper_revision', ]) PaperUpdateArg._all_fields_ = [ ('path', PaperUpdateArg.path.validator), ('import_format', PaperUpdateArg.import_format.validator), ('doc_update_policy', PaperUpdateArg.doc_update_policy.validator), ('paper_revision', PaperUpdateArg.paper_revision.validator), ] PaperUpdateError._path_validator = LookupError_validator PaperUpdateError._revision_mismatch_validator = bv.Void() PaperUpdateError._doc_archived_validator = bv.Void() PaperUpdateError._doc_deleted_validator = bv.Void() PaperUpdateError._tagmap = { 'path': PaperUpdateError._path_validator, 'revision_mismatch': PaperUpdateError._revision_mismatch_validator, 'doc_archived': PaperUpdateError._doc_archived_validator, 'doc_deleted': PaperUpdateError._doc_deleted_validator, } PaperUpdateError._tagmap.update(PaperContentError._tagmap) PaperUpdateError.revision_mismatch = PaperUpdateError('revision_mismatch') PaperUpdateError.doc_archived = PaperUpdateError('doc_archived') PaperUpdateError.doc_deleted = PaperUpdateError('doc_deleted') PaperUpdateResult.paper_revision.validator = bv.Int64() PaperUpdateResult._all_field_names_ = set(['paper_revision']) PaperUpdateResult._all_fields_ = [('paper_revision', PaperUpdateResult.paper_revision.validator)] PathOrLink._path_validator = ReadPath_validator PathOrLink._link_validator = SharedLinkFileInfo_validator PathOrLink._other_validator = bv.Void() PathOrLink._tagmap = { 'path': PathOrLink._path_validator, 'link': PathOrLink._link_validator, 'other': PathOrLink._other_validator, } PathOrLink.other = PathOrLink('other') PathToTags.path.validator = Path_validator PathToTags.tags.validator = bv.List(Tag_validator) PathToTags._all_field_names_ = set([ 'path', 'tags', ]) PathToTags._all_fields_ = [ ('path', PathToTags.path.validator), ('tags', PathToTags.tags.validator), ] PhotoMetadata._field_names_ = set([]) PhotoMetadata._all_field_names_ = MediaMetadata._all_field_names_.union(PhotoMetadata._field_names_) PhotoMetadata._fields_ = [] PhotoMetadata._all_fields_ = MediaMetadata._all_fields_ + PhotoMetadata._fields_ PreviewArg.path.validator = ReadPath_validator PreviewArg.rev.validator = bv.Nullable(Rev_validator) PreviewArg._all_field_names_ = set([ 'path', 'rev', ]) PreviewArg._all_fields_ = [ ('path', PreviewArg.path.validator), ('rev', PreviewArg.rev.validator), ] PreviewError._path_validator = LookupError_validator PreviewError._in_progress_validator = bv.Void() PreviewError._unsupported_extension_validator = bv.Void() PreviewError._unsupported_content_validator = bv.Void() PreviewError._tagmap = { 'path': PreviewError._path_validator, 'in_progress': PreviewError._in_progress_validator, 'unsupported_extension': PreviewError._unsupported_extension_validator, 'unsupported_content': PreviewError._unsupported_content_validator, } PreviewError.in_progress = PreviewError('in_progress') PreviewError.unsupported_extension = PreviewError('unsupported_extension') PreviewError.unsupported_content = PreviewError('unsupported_content') PreviewResult.file_metadata.validator = bv.Nullable(FileMetadata_validator) PreviewResult.link_metadata.validator = bv.Nullable(MinimalFileLinkMetadata_validator) PreviewResult._all_field_names_ = set([ 'file_metadata', 'link_metadata', ]) PreviewResult._all_fields_ = [ ('file_metadata', PreviewResult.file_metadata.validator), ('link_metadata', PreviewResult.link_metadata.validator), ] RelocationPath.from_path.validator = WritePathOrId_validator RelocationPath.to_path.validator = WritePathOrId_validator RelocationPath._all_field_names_ = set([ 'from_path', 'to_path', ]) RelocationPath._all_fields_ = [ ('from_path', RelocationPath.from_path.validator), ('to_path', RelocationPath.to_path.validator), ] RelocationArg.allow_shared_folder.validator = bv.Boolean() RelocationArg.autorename.validator = bv.Boolean() RelocationArg.allow_ownership_transfer.validator = bv.Boolean() RelocationArg._all_field_names_ = RelocationPath._all_field_names_.union(set([ 'allow_shared_folder', 'autorename', 'allow_ownership_transfer', ])) RelocationArg._all_fields_ = RelocationPath._all_fields_ + [ ('allow_shared_folder', RelocationArg.allow_shared_folder.validator), ('autorename', RelocationArg.autorename.validator), ('allow_ownership_transfer', RelocationArg.allow_ownership_transfer.validator), ] RelocationBatchArg.allow_shared_folder.validator = bv.Boolean() RelocationBatchArg.allow_ownership_transfer.validator = bv.Boolean() RelocationBatchArg._all_field_names_ = RelocationBatchArgBase._all_field_names_.union(set([ 'allow_shared_folder', 'allow_ownership_transfer', ])) RelocationBatchArg._all_fields_ = RelocationBatchArgBase._all_fields_ + [ ('allow_shared_folder', RelocationBatchArg.allow_shared_folder.validator), ('allow_ownership_transfer', RelocationBatchArg.allow_ownership_transfer.validator), ] RelocationError._from_lookup_validator = LookupError_validator RelocationError._from_write_validator = WriteError_validator RelocationError._to_validator = WriteError_validator RelocationError._cant_copy_shared_folder_validator = bv.Void() RelocationError._cant_nest_shared_folder_validator = bv.Void() RelocationError._cant_move_folder_into_itself_validator = bv.Void() RelocationError._too_many_files_validator = bv.Void() RelocationError._duplicated_or_nested_paths_validator = bv.Void() RelocationError._cant_transfer_ownership_validator = bv.Void() RelocationError._insufficient_quota_validator = bv.Void() RelocationError._internal_error_validator = bv.Void() RelocationError._cant_move_shared_folder_validator = bv.Void() RelocationError._cant_move_into_vault_validator = MoveIntoVaultError_validator RelocationError._cant_move_into_family_validator = MoveIntoFamilyError_validator RelocationError._other_validator = bv.Void() RelocationError._tagmap = { 'from_lookup': RelocationError._from_lookup_validator, 'from_write': RelocationError._from_write_validator, 'to': RelocationError._to_validator, 'cant_copy_shared_folder': RelocationError._cant_copy_shared_folder_validator, 'cant_nest_shared_folder': RelocationError._cant_nest_shared_folder_validator, 'cant_move_folder_into_itself': RelocationError._cant_move_folder_into_itself_validator, 'too_many_files': RelocationError._too_many_files_validator, 'duplicated_or_nested_paths': RelocationError._duplicated_or_nested_paths_validator, 'cant_transfer_ownership': RelocationError._cant_transfer_ownership_validator, 'insufficient_quota': RelocationError._insufficient_quota_validator, 'internal_error': RelocationError._internal_error_validator, 'cant_move_shared_folder': RelocationError._cant_move_shared_folder_validator, 'cant_move_into_vault': RelocationError._cant_move_into_vault_validator, 'cant_move_into_family': RelocationError._cant_move_into_family_validator, 'other': RelocationError._other_validator, } RelocationError.cant_copy_shared_folder = RelocationError('cant_copy_shared_folder') RelocationError.cant_nest_shared_folder = RelocationError('cant_nest_shared_folder') RelocationError.cant_move_folder_into_itself = RelocationError('cant_move_folder_into_itself') RelocationError.too_many_files = RelocationError('too_many_files') RelocationError.duplicated_or_nested_paths = RelocationError('duplicated_or_nested_paths') RelocationError.cant_transfer_ownership = RelocationError('cant_transfer_ownership') RelocationError.insufficient_quota = RelocationError('insufficient_quota') RelocationError.internal_error = RelocationError('internal_error') RelocationError.cant_move_shared_folder = RelocationError('cant_move_shared_folder') RelocationError.other = RelocationError('other') RelocationBatchError._too_many_write_operations_validator = bv.Void() RelocationBatchError._tagmap = { 'too_many_write_operations': RelocationBatchError._too_many_write_operations_validator, } RelocationBatchError._tagmap.update(RelocationError._tagmap) RelocationBatchError.too_many_write_operations = RelocationBatchError('too_many_write_operations') RelocationBatchErrorEntry._relocation_error_validator = RelocationError_validator RelocationBatchErrorEntry._internal_error_validator = bv.Void() RelocationBatchErrorEntry._too_many_write_operations_validator = bv.Void() RelocationBatchErrorEntry._other_validator = bv.Void() RelocationBatchErrorEntry._tagmap = { 'relocation_error': RelocationBatchErrorEntry._relocation_error_validator, 'internal_error': RelocationBatchErrorEntry._internal_error_validator, 'too_many_write_operations': RelocationBatchErrorEntry._too_many_write_operations_validator, 'other': RelocationBatchErrorEntry._other_validator, } RelocationBatchErrorEntry.internal_error = RelocationBatchErrorEntry('internal_error') RelocationBatchErrorEntry.too_many_write_operations = RelocationBatchErrorEntry('too_many_write_operations') RelocationBatchErrorEntry.other = RelocationBatchErrorEntry('other') RelocationBatchJobStatus._complete_validator = RelocationBatchResult_validator RelocationBatchJobStatus._failed_validator = RelocationBatchError_validator RelocationBatchJobStatus._tagmap = { 'complete': RelocationBatchJobStatus._complete_validator, 'failed': RelocationBatchJobStatus._failed_validator, } RelocationBatchJobStatus._tagmap.update(async_.PollResultBase._tagmap) RelocationBatchLaunch._complete_validator = RelocationBatchResult_validator RelocationBatchLaunch._other_validator = bv.Void() RelocationBatchLaunch._tagmap = { 'complete': RelocationBatchLaunch._complete_validator, 'other': RelocationBatchLaunch._other_validator, } RelocationBatchLaunch._tagmap.update(async_.LaunchResultBase._tagmap) RelocationBatchLaunch.other = RelocationBatchLaunch('other') RelocationBatchResult.entries.validator = bv.List(RelocationBatchResultData_validator) RelocationBatchResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['entries'])) RelocationBatchResult._all_fields_ = FileOpsResult._all_fields_ + [('entries', RelocationBatchResult.entries.validator)] RelocationBatchResultData.metadata.validator = Metadata_validator RelocationBatchResultData._all_field_names_ = set(['metadata']) RelocationBatchResultData._all_fields_ = [('metadata', RelocationBatchResultData.metadata.validator)] RelocationBatchResultEntry._success_validator = Metadata_validator RelocationBatchResultEntry._failure_validator = RelocationBatchErrorEntry_validator RelocationBatchResultEntry._other_validator = bv.Void() RelocationBatchResultEntry._tagmap = { 'success': RelocationBatchResultEntry._success_validator, 'failure': RelocationBatchResultEntry._failure_validator, 'other': RelocationBatchResultEntry._other_validator, } RelocationBatchResultEntry.other = RelocationBatchResultEntry('other') RelocationBatchV2JobStatus._complete_validator = RelocationBatchV2Result_validator RelocationBatchV2JobStatus._tagmap = { 'complete': RelocationBatchV2JobStatus._complete_validator, } RelocationBatchV2JobStatus._tagmap.update(async_.PollResultBase._tagmap) RelocationBatchV2Launch._complete_validator = RelocationBatchV2Result_validator RelocationBatchV2Launch._tagmap = { 'complete': RelocationBatchV2Launch._complete_validator, } RelocationBatchV2Launch._tagmap.update(async_.LaunchResultBase._tagmap) RelocationBatchV2Result.entries.validator = bv.List(RelocationBatchResultEntry_validator) RelocationBatchV2Result._all_field_names_ = FileOpsResult._all_field_names_.union(set(['entries'])) RelocationBatchV2Result._all_fields_ = FileOpsResult._all_fields_ + [('entries', RelocationBatchV2Result.entries.validator)] RelocationResult.metadata.validator = Metadata_validator RelocationResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['metadata'])) RelocationResult._all_fields_ = FileOpsResult._all_fields_ + [('metadata', RelocationResult.metadata.validator)] RemoveTagArg.path.validator = Path_validator RemoveTagArg.tag_text.validator = TagText_validator RemoveTagArg._all_field_names_ = set([ 'path', 'tag_text', ]) RemoveTagArg._all_fields_ = [ ('path', RemoveTagArg.path.validator), ('tag_text', RemoveTagArg.tag_text.validator), ] RemoveTagError._tag_not_present_validator = bv.Void() RemoveTagError._tagmap = { 'tag_not_present': RemoveTagError._tag_not_present_validator, } RemoveTagError._tagmap.update(BaseTagError._tagmap) RemoveTagError.tag_not_present = RemoveTagError('tag_not_present') RestoreArg.path.validator = WritePath_validator RestoreArg.rev.validator = Rev_validator RestoreArg._all_field_names_ = set([ 'path', 'rev', ]) RestoreArg._all_fields_ = [ ('path', RestoreArg.path.validator), ('rev', RestoreArg.rev.validator), ] RestoreError._path_lookup_validator = LookupError_validator RestoreError._path_write_validator = WriteError_validator RestoreError._invalid_revision_validator = bv.Void() RestoreError._in_progress_validator = bv.Void() RestoreError._other_validator = bv.Void() RestoreError._tagmap = { 'path_lookup': RestoreError._path_lookup_validator, 'path_write': RestoreError._path_write_validator, 'invalid_revision': RestoreError._invalid_revision_validator, 'in_progress': RestoreError._in_progress_validator, 'other': RestoreError._other_validator, } RestoreError.invalid_revision = RestoreError('invalid_revision') RestoreError.in_progress = RestoreError('in_progress') RestoreError.other = RestoreError('other') SaveCopyReferenceArg.copy_reference.validator = bv.String() SaveCopyReferenceArg.path.validator = Path_validator SaveCopyReferenceArg._all_field_names_ = set([ 'copy_reference', 'path', ]) SaveCopyReferenceArg._all_fields_ = [ ('copy_reference', SaveCopyReferenceArg.copy_reference.validator), ('path', SaveCopyReferenceArg.path.validator), ] SaveCopyReferenceError._path_validator = WriteError_validator SaveCopyReferenceError._invalid_copy_reference_validator = bv.Void() SaveCopyReferenceError._no_permission_validator = bv.Void() SaveCopyReferenceError._not_found_validator = bv.Void() SaveCopyReferenceError._too_many_files_validator = bv.Void() SaveCopyReferenceError._other_validator = bv.Void() SaveCopyReferenceError._tagmap = { 'path': SaveCopyReferenceError._path_validator, 'invalid_copy_reference': SaveCopyReferenceError._invalid_copy_reference_validator, 'no_permission': SaveCopyReferenceError._no_permission_validator, 'not_found': SaveCopyReferenceError._not_found_validator, 'too_many_files': SaveCopyReferenceError._too_many_files_validator, 'other': SaveCopyReferenceError._other_validator, } SaveCopyReferenceError.invalid_copy_reference = SaveCopyReferenceError('invalid_copy_reference') SaveCopyReferenceError.no_permission = SaveCopyReferenceError('no_permission') SaveCopyReferenceError.not_found = SaveCopyReferenceError('not_found') SaveCopyReferenceError.too_many_files = SaveCopyReferenceError('too_many_files') SaveCopyReferenceError.other = SaveCopyReferenceError('other') SaveCopyReferenceResult.metadata.validator = Metadata_validator SaveCopyReferenceResult._all_field_names_ = set(['metadata']) SaveCopyReferenceResult._all_fields_ = [('metadata', SaveCopyReferenceResult.metadata.validator)] SaveUrlArg.path.validator = Path_validator SaveUrlArg.url.validator = bv.String() SaveUrlArg._all_field_names_ = set([ 'path', 'url', ]) SaveUrlArg._all_fields_ = [ ('path', SaveUrlArg.path.validator), ('url', SaveUrlArg.url.validator), ] SaveUrlError._path_validator = WriteError_validator SaveUrlError._download_failed_validator = bv.Void() SaveUrlError._invalid_url_validator = bv.Void() SaveUrlError._not_found_validator = bv.Void() SaveUrlError._other_validator = bv.Void() SaveUrlError._tagmap = { 'path': SaveUrlError._path_validator, 'download_failed': SaveUrlError._download_failed_validator, 'invalid_url': SaveUrlError._invalid_url_validator, 'not_found': SaveUrlError._not_found_validator, 'other': SaveUrlError._other_validator, } SaveUrlError.download_failed = SaveUrlError('download_failed') SaveUrlError.invalid_url = SaveUrlError('invalid_url') SaveUrlError.not_found = SaveUrlError('not_found') SaveUrlError.other = SaveUrlError('other') SaveUrlJobStatus._complete_validator = FileMetadata_validator SaveUrlJobStatus._failed_validator = SaveUrlError_validator SaveUrlJobStatus._tagmap = { 'complete': SaveUrlJobStatus._complete_validator, 'failed': SaveUrlJobStatus._failed_validator, } SaveUrlJobStatus._tagmap.update(async_.PollResultBase._tagmap) SaveUrlResult._complete_validator = FileMetadata_validator SaveUrlResult._tagmap = { 'complete': SaveUrlResult._complete_validator, } SaveUrlResult._tagmap.update(async_.LaunchResultBase._tagmap) SearchArg.path.validator = PathROrId_validator SearchArg.query.validator = bv.String(max_length=1000) SearchArg.start.validator = bv.UInt64(max_value=9999) SearchArg.max_results.validator = bv.UInt64(min_value=1, max_value=1000) SearchArg.mode.validator = SearchMode_validator SearchArg._all_field_names_ = set([ 'path', 'query', 'start', 'max_results', 'mode', ]) SearchArg._all_fields_ = [ ('path', SearchArg.path.validator), ('query', SearchArg.query.validator), ('start', SearchArg.start.validator), ('max_results', SearchArg.max_results.validator), ('mode', SearchArg.mode.validator), ] SearchError._path_validator = LookupError_validator SearchError._invalid_argument_validator = bv.Nullable(bv.String()) SearchError._internal_error_validator = bv.Void() SearchError._other_validator = bv.Void() SearchError._tagmap = { 'path': SearchError._path_validator, 'invalid_argument': SearchError._invalid_argument_validator, 'internal_error': SearchError._internal_error_validator, 'other': SearchError._other_validator, } SearchError.internal_error = SearchError('internal_error') SearchError.other = SearchError('other') SearchMatch.match_type.validator = SearchMatchType_validator SearchMatch.metadata.validator = Metadata_validator SearchMatch._all_field_names_ = set([ 'match_type', 'metadata', ]) SearchMatch._all_fields_ = [ ('match_type', SearchMatch.match_type.validator), ('metadata', SearchMatch.metadata.validator), ] SearchMatchFieldOptions.include_highlights.validator = bv.Boolean() SearchMatchFieldOptions._all_field_names_ = set(['include_highlights']) SearchMatchFieldOptions._all_fields_ = [('include_highlights', SearchMatchFieldOptions.include_highlights.validator)] SearchMatchType._filename_validator = bv.Void() SearchMatchType._content_validator = bv.Void() SearchMatchType._both_validator = bv.Void() SearchMatchType._tagmap = { 'filename': SearchMatchType._filename_validator, 'content': SearchMatchType._content_validator, 'both': SearchMatchType._both_validator, } SearchMatchType.filename = SearchMatchType('filename') SearchMatchType.content = SearchMatchType('content') SearchMatchType.both = SearchMatchType('both') SearchMatchTypeV2._filename_validator = bv.Void() SearchMatchTypeV2._file_content_validator = bv.Void() SearchMatchTypeV2._filename_and_content_validator = bv.Void() SearchMatchTypeV2._image_content_validator = bv.Void() SearchMatchTypeV2._other_validator = bv.Void() SearchMatchTypeV2._tagmap = { 'filename': SearchMatchTypeV2._filename_validator, 'file_content': SearchMatchTypeV2._file_content_validator, 'filename_and_content': SearchMatchTypeV2._filename_and_content_validator, 'image_content': SearchMatchTypeV2._image_content_validator, 'other': SearchMatchTypeV2._other_validator, } SearchMatchTypeV2.filename = SearchMatchTypeV2('filename') SearchMatchTypeV2.file_content = SearchMatchTypeV2('file_content') SearchMatchTypeV2.filename_and_content = SearchMatchTypeV2('filename_and_content') SearchMatchTypeV2.image_content = SearchMatchTypeV2('image_content') SearchMatchTypeV2.other = SearchMatchTypeV2('other') SearchMatchV2.metadata.validator = MetadataV2_validator SearchMatchV2.match_type.validator = bv.Nullable(SearchMatchTypeV2_validator) SearchMatchV2.highlight_spans.validator = bv.Nullable(bv.List(HighlightSpan_validator)) SearchMatchV2._all_field_names_ = set([ 'metadata', 'match_type', 'highlight_spans', ]) SearchMatchV2._all_fields_ = [ ('metadata', SearchMatchV2.metadata.validator), ('match_type', SearchMatchV2.match_type.validator), ('highlight_spans', SearchMatchV2.highlight_spans.validator), ] SearchMode._filename_validator = bv.Void() SearchMode._filename_and_content_validator = bv.Void() SearchMode._deleted_filename_validator = bv.Void() SearchMode._tagmap = { 'filename': SearchMode._filename_validator, 'filename_and_content': SearchMode._filename_and_content_validator, 'deleted_filename': SearchMode._deleted_filename_validator, } SearchMode.filename = SearchMode('filename') SearchMode.filename_and_content = SearchMode('filename_and_content') SearchMode.deleted_filename = SearchMode('deleted_filename') SearchOptions.path.validator = bv.Nullable(PathROrId_validator) SearchOptions.max_results.validator = bv.UInt64(min_value=1, max_value=1000) SearchOptions.order_by.validator = bv.Nullable(SearchOrderBy_validator) SearchOptions.file_status.validator = FileStatus_validator SearchOptions.filename_only.validator = bv.Boolean() SearchOptions.file_extensions.validator = bv.Nullable(bv.List(bv.String())) SearchOptions.file_categories.validator = bv.Nullable(bv.List(FileCategory_validator)) SearchOptions.account_id.validator = bv.Nullable(users_common.AccountId_validator) SearchOptions._all_field_names_ = set([ 'path', 'max_results', 'order_by', 'file_status', 'filename_only', 'file_extensions', 'file_categories', 'account_id', ]) SearchOptions._all_fields_ = [ ('path', SearchOptions.path.validator), ('max_results', SearchOptions.max_results.validator), ('order_by', SearchOptions.order_by.validator), ('file_status', SearchOptions.file_status.validator), ('filename_only', SearchOptions.filename_only.validator), ('file_extensions', SearchOptions.file_extensions.validator), ('file_categories', SearchOptions.file_categories.validator), ('account_id', SearchOptions.account_id.validator), ] SearchOrderBy._relevance_validator = bv.Void() SearchOrderBy._last_modified_time_validator = bv.Void() SearchOrderBy._other_validator = bv.Void() SearchOrderBy._tagmap = { 'relevance': SearchOrderBy._relevance_validator, 'last_modified_time': SearchOrderBy._last_modified_time_validator, 'other': SearchOrderBy._other_validator, } SearchOrderBy.relevance = SearchOrderBy('relevance') SearchOrderBy.last_modified_time = SearchOrderBy('last_modified_time') SearchOrderBy.other = SearchOrderBy('other') SearchResult.matches.validator = bv.List(SearchMatch_validator) SearchResult.more.validator = bv.Boolean() SearchResult.start.validator = bv.UInt64() SearchResult._all_field_names_ = set([ 'matches', 'more', 'start', ]) SearchResult._all_fields_ = [ ('matches', SearchResult.matches.validator), ('more', SearchResult.more.validator), ('start', SearchResult.start.validator), ] SearchV2Arg.query.validator = bv.String(max_length=1000) SearchV2Arg.options.validator = bv.Nullable(SearchOptions_validator) SearchV2Arg.match_field_options.validator = bv.Nullable(SearchMatchFieldOptions_validator) SearchV2Arg.include_highlights.validator = bv.Nullable(bv.Boolean()) SearchV2Arg._all_field_names_ = set([ 'query', 'options', 'match_field_options', 'include_highlights', ]) SearchV2Arg._all_fields_ = [ ('query', SearchV2Arg.query.validator), ('options', SearchV2Arg.options.validator), ('match_field_options', SearchV2Arg.match_field_options.validator), ('include_highlights', SearchV2Arg.include_highlights.validator), ] SearchV2ContinueArg.cursor.validator = SearchV2Cursor_validator SearchV2ContinueArg._all_field_names_ = set(['cursor']) SearchV2ContinueArg._all_fields_ = [('cursor', SearchV2ContinueArg.cursor.validator)] SearchV2Result.matches.validator = bv.List(SearchMatchV2_validator) SearchV2Result.has_more.validator = bv.Boolean() SearchV2Result.cursor.validator = bv.Nullable(SearchV2Cursor_validator) SearchV2Result._all_field_names_ = set([ 'matches', 'has_more', 'cursor', ]) SearchV2Result._all_fields_ = [ ('matches', SearchV2Result.matches.validator), ('has_more', SearchV2Result.has_more.validator), ('cursor', SearchV2Result.cursor.validator), ] SharedLink.url.validator = SharedLinkUrl_validator SharedLink.password.validator = bv.Nullable(bv.String()) SharedLink._all_field_names_ = set([ 'url', 'password', ]) SharedLink._all_fields_ = [ ('url', SharedLink.url.validator), ('password', SharedLink.password.validator), ] SharedLinkFileInfo.url.validator = bv.String() SharedLinkFileInfo.path.validator = bv.Nullable(bv.String()) SharedLinkFileInfo.password.validator = bv.Nullable(bv.String()) SharedLinkFileInfo._all_field_names_ = set([ 'url', 'path', 'password', ]) SharedLinkFileInfo._all_fields_ = [ ('url', SharedLinkFileInfo.url.validator), ('path', SharedLinkFileInfo.path.validator), ('password', SharedLinkFileInfo.password.validator), ] SingleUserLock.created.validator = common.DropboxTimestamp_validator SingleUserLock.lock_holder_account_id.validator = users_common.AccountId_validator SingleUserLock.lock_holder_team_id.validator = bv.Nullable(bv.String()) SingleUserLock._all_field_names_ = set([ 'created', 'lock_holder_account_id', 'lock_holder_team_id', ]) SingleUserLock._all_fields_ = [ ('created', SingleUserLock.created.validator), ('lock_holder_account_id', SingleUserLock.lock_holder_account_id.validator), ('lock_holder_team_id', SingleUserLock.lock_holder_team_id.validator), ] SymlinkInfo.target.validator = bv.String() SymlinkInfo._all_field_names_ = set(['target']) SymlinkInfo._all_fields_ = [('target', SymlinkInfo.target.validator)] SyncSetting._default_validator = bv.Void() SyncSetting._not_synced_validator = bv.Void() SyncSetting._not_synced_inactive_validator = bv.Void() SyncSetting._other_validator = bv.Void() SyncSetting._tagmap = { 'default': SyncSetting._default_validator, 'not_synced': SyncSetting._not_synced_validator, 'not_synced_inactive': SyncSetting._not_synced_inactive_validator, 'other': SyncSetting._other_validator, } SyncSetting.default = SyncSetting('default') SyncSetting.not_synced = SyncSetting('not_synced') SyncSetting.not_synced_inactive = SyncSetting('not_synced_inactive') SyncSetting.other = SyncSetting('other') SyncSettingArg._default_validator = bv.Void() SyncSettingArg._not_synced_validator = bv.Void() SyncSettingArg._other_validator = bv.Void() SyncSettingArg._tagmap = { 'default': SyncSettingArg._default_validator, 'not_synced': SyncSettingArg._not_synced_validator, 'other': SyncSettingArg._other_validator, } SyncSettingArg.default = SyncSettingArg('default') SyncSettingArg.not_synced = SyncSettingArg('not_synced') SyncSettingArg.other = SyncSettingArg('other') SyncSettingsError._path_validator = LookupError_validator SyncSettingsError._unsupported_combination_validator = bv.Void() SyncSettingsError._unsupported_configuration_validator = bv.Void() SyncSettingsError._other_validator = bv.Void() SyncSettingsError._tagmap = { 'path': SyncSettingsError._path_validator, 'unsupported_combination': SyncSettingsError._unsupported_combination_validator, 'unsupported_configuration': SyncSettingsError._unsupported_configuration_validator, 'other': SyncSettingsError._other_validator, } SyncSettingsError.unsupported_combination = SyncSettingsError('unsupported_combination') SyncSettingsError.unsupported_configuration = SyncSettingsError('unsupported_configuration') SyncSettingsError.other = SyncSettingsError('other') Tag._user_generated_tag_validator = UserGeneratedTag_validator Tag._other_validator = bv.Void() Tag._tagmap = { 'user_generated_tag': Tag._user_generated_tag_validator, 'other': Tag._other_validator, } Tag.other = Tag('other') ThumbnailArg.path.validator = ReadPath_validator ThumbnailArg.format.validator = ThumbnailFormat_validator ThumbnailArg.size.validator = ThumbnailSize_validator ThumbnailArg.mode.validator = ThumbnailMode_validator ThumbnailArg._all_field_names_ = set([ 'path', 'format', 'size', 'mode', ]) ThumbnailArg._all_fields_ = [ ('path', ThumbnailArg.path.validator), ('format', ThumbnailArg.format.validator), ('size', ThumbnailArg.size.validator), ('mode', ThumbnailArg.mode.validator), ] ThumbnailError._path_validator = LookupError_validator ThumbnailError._unsupported_extension_validator = bv.Void() ThumbnailError._unsupported_image_validator = bv.Void() ThumbnailError._conversion_error_validator = bv.Void() ThumbnailError._tagmap = { 'path': ThumbnailError._path_validator, 'unsupported_extension': ThumbnailError._unsupported_extension_validator, 'unsupported_image': ThumbnailError._unsupported_image_validator, 'conversion_error': ThumbnailError._conversion_error_validator, } ThumbnailError.unsupported_extension = ThumbnailError('unsupported_extension') ThumbnailError.unsupported_image = ThumbnailError('unsupported_image') ThumbnailError.conversion_error = ThumbnailError('conversion_error') ThumbnailFormat._jpeg_validator = bv.Void() ThumbnailFormat._png_validator = bv.Void() ThumbnailFormat._tagmap = { 'jpeg': ThumbnailFormat._jpeg_validator, 'png': ThumbnailFormat._png_validator, } ThumbnailFormat.jpeg = ThumbnailFormat('jpeg') ThumbnailFormat.png = ThumbnailFormat('png') ThumbnailMode._strict_validator = bv.Void() ThumbnailMode._bestfit_validator = bv.Void() ThumbnailMode._fitone_bestfit_validator = bv.Void() ThumbnailMode._tagmap = { 'strict': ThumbnailMode._strict_validator, 'bestfit': ThumbnailMode._bestfit_validator, 'fitone_bestfit': ThumbnailMode._fitone_bestfit_validator, } ThumbnailMode.strict = ThumbnailMode('strict') ThumbnailMode.bestfit = ThumbnailMode('bestfit') ThumbnailMode.fitone_bestfit = ThumbnailMode('fitone_bestfit') ThumbnailSize._w32h32_validator = bv.Void() ThumbnailSize._w64h64_validator = bv.Void() ThumbnailSize._w128h128_validator = bv.Void() ThumbnailSize._w256h256_validator = bv.Void() ThumbnailSize._w480h320_validator = bv.Void() ThumbnailSize._w640h480_validator = bv.Void() ThumbnailSize._w960h640_validator = bv.Void() ThumbnailSize._w1024h768_validator = bv.Void() ThumbnailSize._w2048h1536_validator = bv.Void() ThumbnailSize._tagmap = { 'w32h32': ThumbnailSize._w32h32_validator, 'w64h64': ThumbnailSize._w64h64_validator, 'w128h128': ThumbnailSize._w128h128_validator, 'w256h256': ThumbnailSize._w256h256_validator, 'w480h320': ThumbnailSize._w480h320_validator, 'w640h480': ThumbnailSize._w640h480_validator, 'w960h640': ThumbnailSize._w960h640_validator, 'w1024h768': ThumbnailSize._w1024h768_validator, 'w2048h1536': ThumbnailSize._w2048h1536_validator, } ThumbnailSize.w32h32 = ThumbnailSize('w32h32') ThumbnailSize.w64h64 = ThumbnailSize('w64h64') ThumbnailSize.w128h128 = ThumbnailSize('w128h128') ThumbnailSize.w256h256 = ThumbnailSize('w256h256') ThumbnailSize.w480h320 = ThumbnailSize('w480h320') ThumbnailSize.w640h480 = ThumbnailSize('w640h480') ThumbnailSize.w960h640 = ThumbnailSize('w960h640') ThumbnailSize.w1024h768 = ThumbnailSize('w1024h768') ThumbnailSize.w2048h1536 = ThumbnailSize('w2048h1536') ThumbnailV2Arg.resource.validator = PathOrLink_validator ThumbnailV2Arg.format.validator = ThumbnailFormat_validator ThumbnailV2Arg.size.validator = ThumbnailSize_validator ThumbnailV2Arg.mode.validator = ThumbnailMode_validator ThumbnailV2Arg._all_field_names_ = set([ 'resource', 'format', 'size', 'mode', ]) ThumbnailV2Arg._all_fields_ = [ ('resource', ThumbnailV2Arg.resource.validator), ('format', ThumbnailV2Arg.format.validator), ('size', ThumbnailV2Arg.size.validator), ('mode', ThumbnailV2Arg.mode.validator), ] ThumbnailV2Error._path_validator = LookupError_validator ThumbnailV2Error._unsupported_extension_validator = bv.Void() ThumbnailV2Error._unsupported_image_validator = bv.Void() ThumbnailV2Error._conversion_error_validator = bv.Void() ThumbnailV2Error._access_denied_validator = bv.Void() ThumbnailV2Error._not_found_validator = bv.Void() ThumbnailV2Error._other_validator = bv.Void() ThumbnailV2Error._tagmap = { 'path': ThumbnailV2Error._path_validator, 'unsupported_extension': ThumbnailV2Error._unsupported_extension_validator, 'unsupported_image': ThumbnailV2Error._unsupported_image_validator, 'conversion_error': ThumbnailV2Error._conversion_error_validator, 'access_denied': ThumbnailV2Error._access_denied_validator, 'not_found': ThumbnailV2Error._not_found_validator, 'other': ThumbnailV2Error._other_validator, } ThumbnailV2Error.unsupported_extension = ThumbnailV2Error('unsupported_extension') ThumbnailV2Error.unsupported_image = ThumbnailV2Error('unsupported_image') ThumbnailV2Error.conversion_error = ThumbnailV2Error('conversion_error') ThumbnailV2Error.access_denied = ThumbnailV2Error('access_denied') ThumbnailV2Error.not_found = ThumbnailV2Error('not_found') ThumbnailV2Error.other = ThumbnailV2Error('other') UnlockFileArg.path.validator = WritePathOrId_validator UnlockFileArg._all_field_names_ = set(['path']) UnlockFileArg._all_fields_ = [('path', UnlockFileArg.path.validator)] UnlockFileBatchArg.entries.validator = bv.List(UnlockFileArg_validator) UnlockFileBatchArg._all_field_names_ = set(['entries']) UnlockFileBatchArg._all_fields_ = [('entries', UnlockFileBatchArg.entries.validator)] UploadArg.content_hash.validator = bv.Nullable(Sha256HexHash_validator) UploadArg._all_field_names_ = CommitInfo._all_field_names_.union(set(['content_hash'])) UploadArg._all_fields_ = CommitInfo._all_fields_ + [('content_hash', UploadArg.content_hash.validator)] UploadError._path_validator = UploadWriteFailed_validator UploadError._properties_error_validator = file_properties.InvalidPropertyGroupError_validator UploadError._payload_too_large_validator = bv.Void() UploadError._content_hash_mismatch_validator = bv.Void() UploadError._other_validator = bv.Void() UploadError._tagmap = { 'path': UploadError._path_validator, 'properties_error': UploadError._properties_error_validator, 'payload_too_large': UploadError._payload_too_large_validator, 'content_hash_mismatch': UploadError._content_hash_mismatch_validator, 'other': UploadError._other_validator, } UploadError.payload_too_large = UploadError('payload_too_large') UploadError.content_hash_mismatch = UploadError('content_hash_mismatch') UploadError.other = UploadError('other') UploadSessionAppendArg.cursor.validator = UploadSessionCursor_validator UploadSessionAppendArg.close.validator = bv.Boolean() UploadSessionAppendArg.content_hash.validator = bv.Nullable(Sha256HexHash_validator) UploadSessionAppendArg._all_field_names_ = set([ 'cursor', 'close', 'content_hash', ]) UploadSessionAppendArg._all_fields_ = [ ('cursor', UploadSessionAppendArg.cursor.validator), ('close', UploadSessionAppendArg.close.validator), ('content_hash', UploadSessionAppendArg.content_hash.validator), ] UploadSessionLookupError._not_found_validator = bv.Void() UploadSessionLookupError._incorrect_offset_validator = UploadSessionOffsetError_validator UploadSessionLookupError._closed_validator = bv.Void() UploadSessionLookupError._not_closed_validator = bv.Void() UploadSessionLookupError._too_large_validator = bv.Void() UploadSessionLookupError._concurrent_session_invalid_offset_validator = bv.Void() UploadSessionLookupError._concurrent_session_invalid_data_size_validator = bv.Void() UploadSessionLookupError._payload_too_large_validator = bv.Void() UploadSessionLookupError._other_validator = bv.Void() UploadSessionLookupError._tagmap = { 'not_found': UploadSessionLookupError._not_found_validator, 'incorrect_offset': UploadSessionLookupError._incorrect_offset_validator, 'closed': UploadSessionLookupError._closed_validator, 'not_closed': UploadSessionLookupError._not_closed_validator, 'too_large': UploadSessionLookupError._too_large_validator, 'concurrent_session_invalid_offset': UploadSessionLookupError._concurrent_session_invalid_offset_validator, 'concurrent_session_invalid_data_size': UploadSessionLookupError._concurrent_session_invalid_data_size_validator, 'payload_too_large': UploadSessionLookupError._payload_too_large_validator, 'other': UploadSessionLookupError._other_validator, } UploadSessionLookupError.not_found = UploadSessionLookupError('not_found') UploadSessionLookupError.closed = UploadSessionLookupError('closed') UploadSessionLookupError.not_closed = UploadSessionLookupError('not_closed') UploadSessionLookupError.too_large = UploadSessionLookupError('too_large') UploadSessionLookupError.concurrent_session_invalid_offset = UploadSessionLookupError('concurrent_session_invalid_offset') UploadSessionLookupError.concurrent_session_invalid_data_size = UploadSessionLookupError('concurrent_session_invalid_data_size') UploadSessionLookupError.payload_too_large = UploadSessionLookupError('payload_too_large') UploadSessionLookupError.other = UploadSessionLookupError('other') UploadSessionAppendError._content_hash_mismatch_validator = bv.Void() UploadSessionAppendError._tagmap = { 'content_hash_mismatch': UploadSessionAppendError._content_hash_mismatch_validator, } UploadSessionAppendError._tagmap.update(UploadSessionLookupError._tagmap) UploadSessionAppendError.content_hash_mismatch = UploadSessionAppendError('content_hash_mismatch') UploadSessionCursor.session_id.validator = bv.String() UploadSessionCursor.offset.validator = bv.UInt64() UploadSessionCursor._all_field_names_ = set([ 'session_id', 'offset', ]) UploadSessionCursor._all_fields_ = [ ('session_id', UploadSessionCursor.session_id.validator), ('offset', UploadSessionCursor.offset.validator), ] UploadSessionFinishArg.cursor.validator = UploadSessionCursor_validator UploadSessionFinishArg.commit.validator = CommitInfo_validator UploadSessionFinishArg.content_hash.validator = bv.Nullable(Sha256HexHash_validator) UploadSessionFinishArg._all_field_names_ = set([ 'cursor', 'commit', 'content_hash', ]) UploadSessionFinishArg._all_fields_ = [ ('cursor', UploadSessionFinishArg.cursor.validator), ('commit', UploadSessionFinishArg.commit.validator), ('content_hash', UploadSessionFinishArg.content_hash.validator), ] UploadSessionFinishBatchArg.entries.validator = bv.List(UploadSessionFinishArg_validator, max_items=1000) UploadSessionFinishBatchArg._all_field_names_ = set(['entries']) UploadSessionFinishBatchArg._all_fields_ = [('entries', UploadSessionFinishBatchArg.entries.validator)] UploadSessionFinishBatchJobStatus._complete_validator = UploadSessionFinishBatchResult_validator UploadSessionFinishBatchJobStatus._tagmap = { 'complete': UploadSessionFinishBatchJobStatus._complete_validator, } UploadSessionFinishBatchJobStatus._tagmap.update(async_.PollResultBase._tagmap) UploadSessionFinishBatchLaunch._complete_validator = UploadSessionFinishBatchResult_validator UploadSessionFinishBatchLaunch._other_validator = bv.Void() UploadSessionFinishBatchLaunch._tagmap = { 'complete': UploadSessionFinishBatchLaunch._complete_validator, 'other': UploadSessionFinishBatchLaunch._other_validator, } UploadSessionFinishBatchLaunch._tagmap.update(async_.LaunchResultBase._tagmap) UploadSessionFinishBatchLaunch.other = UploadSessionFinishBatchLaunch('other') UploadSessionFinishBatchResult.entries.validator = bv.List(UploadSessionFinishBatchResultEntry_validator) UploadSessionFinishBatchResult._all_field_names_ = set(['entries']) UploadSessionFinishBatchResult._all_fields_ = [('entries', UploadSessionFinishBatchResult.entries.validator)] UploadSessionFinishBatchResultEntry._success_validator = FileMetadata_validator UploadSessionFinishBatchResultEntry._failure_validator = UploadSessionFinishError_validator UploadSessionFinishBatchResultEntry._tagmap = { 'success': UploadSessionFinishBatchResultEntry._success_validator, 'failure': UploadSessionFinishBatchResultEntry._failure_validator, } UploadSessionFinishError._lookup_failed_validator = UploadSessionLookupError_validator UploadSessionFinishError._path_validator = WriteError_validator UploadSessionFinishError._properties_error_validator = file_properties.InvalidPropertyGroupError_validator UploadSessionFinishError._too_many_shared_folder_targets_validator = bv.Void() UploadSessionFinishError._too_many_write_operations_validator = bv.Void() UploadSessionFinishError._concurrent_session_data_not_allowed_validator = bv.Void() UploadSessionFinishError._concurrent_session_not_closed_validator = bv.Void() UploadSessionFinishError._concurrent_session_missing_data_validator = bv.Void() UploadSessionFinishError._payload_too_large_validator = bv.Void() UploadSessionFinishError._content_hash_mismatch_validator = bv.Void() UploadSessionFinishError._other_validator = bv.Void() UploadSessionFinishError._tagmap = { 'lookup_failed': UploadSessionFinishError._lookup_failed_validator, 'path': UploadSessionFinishError._path_validator, 'properties_error': UploadSessionFinishError._properties_error_validator, 'too_many_shared_folder_targets': UploadSessionFinishError._too_many_shared_folder_targets_validator, 'too_many_write_operations': UploadSessionFinishError._too_many_write_operations_validator, 'concurrent_session_data_not_allowed': UploadSessionFinishError._concurrent_session_data_not_allowed_validator, 'concurrent_session_not_closed': UploadSessionFinishError._concurrent_session_not_closed_validator, 'concurrent_session_missing_data': UploadSessionFinishError._concurrent_session_missing_data_validator, 'payload_too_large': UploadSessionFinishError._payload_too_large_validator, 'content_hash_mismatch': UploadSessionFinishError._content_hash_mismatch_validator, 'other': UploadSessionFinishError._other_validator, } UploadSessionFinishError.too_many_shared_folder_targets = UploadSessionFinishError('too_many_shared_folder_targets') UploadSessionFinishError.too_many_write_operations = UploadSessionFinishError('too_many_write_operations') UploadSessionFinishError.concurrent_session_data_not_allowed = UploadSessionFinishError('concurrent_session_data_not_allowed') UploadSessionFinishError.concurrent_session_not_closed = UploadSessionFinishError('concurrent_session_not_closed') UploadSessionFinishError.concurrent_session_missing_data = UploadSessionFinishError('concurrent_session_missing_data') UploadSessionFinishError.payload_too_large = UploadSessionFinishError('payload_too_large') UploadSessionFinishError.content_hash_mismatch = UploadSessionFinishError('content_hash_mismatch') UploadSessionFinishError.other = UploadSessionFinishError('other') UploadSessionOffsetError.correct_offset.validator = bv.UInt64() UploadSessionOffsetError._all_field_names_ = set(['correct_offset']) UploadSessionOffsetError._all_fields_ = [('correct_offset', UploadSessionOffsetError.correct_offset.validator)] UploadSessionStartArg.close.validator = bv.Boolean() UploadSessionStartArg.session_type.validator = bv.Nullable(UploadSessionType_validator) UploadSessionStartArg.content_hash.validator = bv.Nullable(Sha256HexHash_validator) UploadSessionStartArg._all_field_names_ = set([ 'close', 'session_type', 'content_hash', ]) UploadSessionStartArg._all_fields_ = [ ('close', UploadSessionStartArg.close.validator), ('session_type', UploadSessionStartArg.session_type.validator), ('content_hash', UploadSessionStartArg.content_hash.validator), ] UploadSessionStartBatchArg.session_type.validator = bv.Nullable(UploadSessionType_validator) UploadSessionStartBatchArg.num_sessions.validator = bv.UInt64(min_value=1, max_value=1000) UploadSessionStartBatchArg._all_field_names_ = set([ 'session_type', 'num_sessions', ]) UploadSessionStartBatchArg._all_fields_ = [ ('session_type', UploadSessionStartBatchArg.session_type.validator), ('num_sessions', UploadSessionStartBatchArg.num_sessions.validator), ] UploadSessionStartBatchResult.session_ids.validator = bv.List(bv.String()) UploadSessionStartBatchResult._all_field_names_ = set(['session_ids']) UploadSessionStartBatchResult._all_fields_ = [('session_ids', UploadSessionStartBatchResult.session_ids.validator)] UploadSessionStartError._concurrent_session_data_not_allowed_validator = bv.Void() UploadSessionStartError._concurrent_session_close_not_allowed_validator = bv.Void() UploadSessionStartError._payload_too_large_validator = bv.Void() UploadSessionStartError._content_hash_mismatch_validator = bv.Void() UploadSessionStartError._other_validator = bv.Void() UploadSessionStartError._tagmap = { 'concurrent_session_data_not_allowed': UploadSessionStartError._concurrent_session_data_not_allowed_validator, 'concurrent_session_close_not_allowed': UploadSessionStartError._concurrent_session_close_not_allowed_validator, 'payload_too_large': UploadSessionStartError._payload_too_large_validator, 'content_hash_mismatch': UploadSessionStartError._content_hash_mismatch_validator, 'other': UploadSessionStartError._other_validator, } UploadSessionStartError.concurrent_session_data_not_allowed = UploadSessionStartError('concurrent_session_data_not_allowed') UploadSessionStartError.concurrent_session_close_not_allowed = UploadSessionStartError('concurrent_session_close_not_allowed') UploadSessionStartError.payload_too_large = UploadSessionStartError('payload_too_large') UploadSessionStartError.content_hash_mismatch = UploadSessionStartError('content_hash_mismatch') UploadSessionStartError.other = UploadSessionStartError('other') UploadSessionStartResult.session_id.validator = bv.String() UploadSessionStartResult._all_field_names_ = set(['session_id']) UploadSessionStartResult._all_fields_ = [('session_id', UploadSessionStartResult.session_id.validator)] UploadSessionType._sequential_validator = bv.Void() UploadSessionType._concurrent_validator = bv.Void() UploadSessionType._other_validator = bv.Void() UploadSessionType._tagmap = { 'sequential': UploadSessionType._sequential_validator, 'concurrent': UploadSessionType._concurrent_validator, 'other': UploadSessionType._other_validator, } UploadSessionType.sequential = UploadSessionType('sequential') UploadSessionType.concurrent = UploadSessionType('concurrent') UploadSessionType.other = UploadSessionType('other') UploadWriteFailed.reason.validator = WriteError_validator UploadWriteFailed.upload_session_id.validator = bv.String() UploadWriteFailed._all_field_names_ = set([ 'reason', 'upload_session_id', ]) UploadWriteFailed._all_fields_ = [ ('reason', UploadWriteFailed.reason.validator), ('upload_session_id', UploadWriteFailed.upload_session_id.validator), ] UserGeneratedTag.tag_text.validator = TagText_validator UserGeneratedTag._all_field_names_ = set(['tag_text']) UserGeneratedTag._all_fields_ = [('tag_text', UserGeneratedTag.tag_text.validator)] VideoMetadata.duration.validator = bv.Nullable(bv.UInt64()) VideoMetadata._field_names_ = set(['duration']) VideoMetadata._all_field_names_ = MediaMetadata._all_field_names_.union(VideoMetadata._field_names_) VideoMetadata._fields_ = [('duration', VideoMetadata.duration.validator)] VideoMetadata._all_fields_ = MediaMetadata._all_fields_ + VideoMetadata._fields_ WriteConflictError._file_validator = bv.Void() WriteConflictError._folder_validator = bv.Void() WriteConflictError._file_ancestor_validator = bv.Void() WriteConflictError._other_validator = bv.Void() WriteConflictError._tagmap = { 'file': WriteConflictError._file_validator, 'folder': WriteConflictError._folder_validator, 'file_ancestor': WriteConflictError._file_ancestor_validator, 'other': WriteConflictError._other_validator, } WriteConflictError.file = WriteConflictError('file') WriteConflictError.folder = WriteConflictError('folder') WriteConflictError.file_ancestor = WriteConflictError('file_ancestor') WriteConflictError.other = WriteConflictError('other') WriteError._malformed_path_validator = MalformedPathError_validator WriteError._conflict_validator = WriteConflictError_validator WriteError._no_write_permission_validator = bv.Void() WriteError._insufficient_space_validator = bv.Void() WriteError._disallowed_name_validator = bv.Void() WriteError._team_folder_validator = bv.Void() WriteError._operation_suppressed_validator = bv.Void() WriteError._too_many_write_operations_validator = bv.Void() WriteError._other_validator = bv.Void() WriteError._tagmap = { 'malformed_path': WriteError._malformed_path_validator, 'conflict': WriteError._conflict_validator, 'no_write_permission': WriteError._no_write_permission_validator, 'insufficient_space': WriteError._insufficient_space_validator, 'disallowed_name': WriteError._disallowed_name_validator, 'team_folder': WriteError._team_folder_validator, 'operation_suppressed': WriteError._operation_suppressed_validator, 'too_many_write_operations': WriteError._too_many_write_operations_validator, 'other': WriteError._other_validator, } WriteError.no_write_permission = WriteError('no_write_permission') WriteError.insufficient_space = WriteError('insufficient_space') WriteError.disallowed_name = WriteError('disallowed_name') WriteError.team_folder = WriteError('team_folder') WriteError.operation_suppressed = WriteError('operation_suppressed') WriteError.too_many_write_operations = WriteError('too_many_write_operations') WriteError.other = WriteError('other') WriteMode._add_validator = bv.Void() WriteMode._overwrite_validator = bv.Void() WriteMode._update_validator = Rev_validator WriteMode._tagmap = { 'add': WriteMode._add_validator, 'overwrite': WriteMode._overwrite_validator, 'update': WriteMode._update_validator, } WriteMode.add = WriteMode('add') WriteMode.overwrite = WriteMode('overwrite') GetMetadataArg.include_media_info.default = False GetMetadataArg.include_deleted.default = False GetMetadataArg.include_has_explicit_shared_members.default = False CommitInfo.mode.default = WriteMode.add CommitInfo.autorename.default = False CommitInfo.mute.default = False CommitInfo.strict_conflict.default = False CreateFolderArg.autorename.default = False CreateFolderBatchArg.autorename.default = False CreateFolderBatchArg.force_async.default = False FileMetadata.is_downloadable.default = True FolderSharingInfo.traverse_only.default = False FolderSharingInfo.no_access.default = False GetTemporaryUploadLinkArg.duration.default = 14400.0 ListFolderArg.recursive.default = False ListFolderArg.include_media_info.default = False ListFolderArg.include_deleted.default = False ListFolderArg.include_has_explicit_shared_members.default = False ListFolderArg.include_mounted_folders.default = True ListFolderArg.include_non_downloadable_files.default = True ListFolderLongpollArg.timeout.default = 30 ListRevisionsArg.mode.default = ListRevisionsMode.path ListRevisionsArg.limit.default = 10 RelocationBatchArgBase.autorename.default = False MoveBatchArg.allow_ownership_transfer.default = False RelocationArg.allow_shared_folder.default = False RelocationArg.autorename.default = False RelocationArg.allow_ownership_transfer.default = False RelocationBatchArg.allow_shared_folder.default = False RelocationBatchArg.allow_ownership_transfer.default = False SearchArg.start.default = 0 SearchArg.max_results.default = 100 SearchArg.mode.default = SearchMode.filename SearchMatchFieldOptions.include_highlights.default = False SearchOptions.max_results.default = 100 SearchOptions.file_status.default = FileStatus.active SearchOptions.filename_only.default = False ThumbnailArg.format.default = ThumbnailFormat.jpeg ThumbnailArg.size.default = ThumbnailSize.w64h64 ThumbnailArg.mode.default = ThumbnailMode.strict ThumbnailV2Arg.format.default = ThumbnailFormat.jpeg ThumbnailV2Arg.size.default = ThumbnailSize.w64h64 ThumbnailV2Arg.mode.default = ThumbnailMode.strict UploadSessionAppendArg.close.default = False UploadSessionStartArg.close.default = False alpha_get_metadata = bb.Route( 'alpha/get_metadata', 1, True, AlphaGetMetadataArg_validator, Metadata_validator, AlphaGetMetadataError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) alpha_upload = bb.Route( 'alpha/upload', 1, True, UploadArg_validator, FileMetadata_validator, UploadError_validator, {'auth': 'user', 'host': 'content', 'style': 'upload'}, ) copy_v2 = bb.Route( 'copy', 2, False, RelocationArg_validator, RelocationResult_validator, RelocationError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) copy = bb.Route( 'copy', 1, True, RelocationArg_validator, Metadata_validator, RelocationError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) copy_batch_v2 = bb.Route( 'copy_batch', 2, False, CopyBatchArg_validator, RelocationBatchV2Launch_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) copy_batch = bb.Route( 'copy_batch', 1, True, RelocationBatchArg_validator, RelocationBatchLaunch_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) copy_batch_check_v2 = bb.Route( 'copy_batch/check', 2, False, async_.PollArg_validator, RelocationBatchV2JobStatus_validator, async_.PollError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) copy_batch_check = bb.Route( 'copy_batch/check', 1, True, async_.PollArg_validator, RelocationBatchJobStatus_validator, async_.PollError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) copy_reference_get = bb.Route( 'copy_reference/get', 1, False, GetCopyReferenceArg_validator, GetCopyReferenceResult_validator, GetCopyReferenceError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) copy_reference_save = bb.Route( 'copy_reference/save', 1, False, SaveCopyReferenceArg_validator, SaveCopyReferenceResult_validator, SaveCopyReferenceError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) create_folder_v2 = bb.Route( 'create_folder', 2, False, CreateFolderArg_validator, CreateFolderResult_validator, CreateFolderError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) create_folder = bb.Route( 'create_folder', 1, True, CreateFolderArg_validator, FolderMetadata_validator, CreateFolderError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) create_folder_batch = bb.Route( 'create_folder_batch', 1, False, CreateFolderBatchArg_validator, CreateFolderBatchLaunch_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) create_folder_batch_check = bb.Route( 'create_folder_batch/check', 1, False, async_.PollArg_validator, CreateFolderBatchJobStatus_validator, async_.PollError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) delete_v2 = bb.Route( 'delete', 2, False, DeleteArg_validator, DeleteResult_validator, DeleteError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) delete = bb.Route( 'delete', 1, True, DeleteArg_validator, Metadata_validator, DeleteError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) delete_batch = bb.Route( 'delete_batch', 1, False, DeleteBatchArg_validator, DeleteBatchLaunch_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) delete_batch_check = bb.Route( 'delete_batch/check', 1, False, async_.PollArg_validator, DeleteBatchJobStatus_validator, async_.PollError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) download = bb.Route( 'download', 1, False, DownloadArg_validator, FileMetadata_validator, DownloadError_validator, {'auth': 'user', 'host': 'content', 'style': 'download'}, ) download_zip = bb.Route( 'download_zip', 1, False, DownloadZipArg_validator, DownloadZipResult_validator, DownloadZipError_validator, {'auth': 'user', 'host': 'content', 'style': 'download'}, ) export = bb.Route( 'export', 1, False, ExportArg_validator, ExportResult_validator, ExportError_validator, {'auth': 'user', 'host': 'content', 'style': 'download'}, ) get_file_lock_batch = bb.Route( 'get_file_lock_batch', 1, False, LockFileBatchArg_validator, LockFileBatchResult_validator, LockFileError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get_metadata = bb.Route( 'get_metadata', 1, False, GetMetadataArg_validator, Metadata_validator, GetMetadataError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get_preview = bb.Route( 'get_preview', 1, False, PreviewArg_validator, FileMetadata_validator, PreviewError_validator, {'auth': 'user', 'host': 'content', 'style': 'download'}, ) get_temporary_link = bb.Route( 'get_temporary_link', 1, False, GetTemporaryLinkArg_validator, GetTemporaryLinkResult_validator, GetTemporaryLinkError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get_temporary_upload_link = bb.Route( 'get_temporary_upload_link', 1, False, GetTemporaryUploadLinkArg_validator, GetTemporaryUploadLinkResult_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get_thumbnail = bb.Route( 'get_thumbnail', 1, False, ThumbnailArg_validator, FileMetadata_validator, ThumbnailError_validator, {'auth': 'user', 'host': 'content', 'style': 'download'}, ) get_thumbnail_v2 = bb.Route( 'get_thumbnail', 2, False, ThumbnailV2Arg_validator, PreviewResult_validator, ThumbnailV2Error_validator, {'auth': 'app, user', 'host': 'content', 'style': 'download'}, ) get_thumbnail_batch = bb.Route( 'get_thumbnail_batch', 1, False, GetThumbnailBatchArg_validator, GetThumbnailBatchResult_validator, GetThumbnailBatchError_validator, {'auth': 'user', 'host': 'content', 'style': 'rpc'}, ) list_folder = bb.Route( 'list_folder', 1, False, ListFolderArg_validator, ListFolderResult_validator, ListFolderError_validator, {'auth': 'app, user', 'host': 'api', 'style': 'rpc'}, ) list_folder_continue = bb.Route( 'list_folder/continue', 1, False, ListFolderContinueArg_validator, ListFolderResult_validator, ListFolderContinueError_validator, {'auth': 'app, user', 'host': 'api', 'style': 'rpc'}, ) list_folder_get_latest_cursor = bb.Route( 'list_folder/get_latest_cursor', 1, False, ListFolderArg_validator, ListFolderGetLatestCursorResult_validator, ListFolderError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_folder_longpoll = bb.Route( 'list_folder/longpoll', 1, False, ListFolderLongpollArg_validator, ListFolderLongpollResult_validator, ListFolderLongpollError_validator, {'auth': 'noauth', 'host': 'notify', 'style': 'rpc'}, ) list_revisions = bb.Route( 'list_revisions', 1, False, ListRevisionsArg_validator, ListRevisionsResult_validator, ListRevisionsError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) lock_file_batch = bb.Route( 'lock_file_batch', 1, False, LockFileBatchArg_validator, LockFileBatchResult_validator, LockFileError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) move_v2 = bb.Route( 'move', 2, False, RelocationArg_validator, RelocationResult_validator, RelocationError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) move = bb.Route( 'move', 1, True, RelocationArg_validator, Metadata_validator, RelocationError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) move_batch_v2 = bb.Route( 'move_batch', 2, False, MoveBatchArg_validator, RelocationBatchV2Launch_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) move_batch = bb.Route( 'move_batch', 1, True, RelocationBatchArg_validator, RelocationBatchLaunch_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) move_batch_check_v2 = bb.Route( 'move_batch/check', 2, False, async_.PollArg_validator, RelocationBatchV2JobStatus_validator, async_.PollError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) move_batch_check = bb.Route( 'move_batch/check', 1, True, async_.PollArg_validator, RelocationBatchJobStatus_validator, async_.PollError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) paper_create = bb.Route( 'paper/create', 1, False, PaperCreateArg_validator, PaperCreateResult_validator, PaperCreateError_validator, {'auth': 'user', 'host': 'api', 'style': 'upload'}, ) paper_update = bb.Route( 'paper/update', 1, False, PaperUpdateArg_validator, PaperUpdateResult_validator, PaperUpdateError_validator, {'auth': 'user', 'host': 'api', 'style': 'upload'}, ) permanently_delete = bb.Route( 'permanently_delete', 1, False, DeleteArg_validator, bv.Void(), DeleteError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) properties_add = bb.Route( 'properties/add', 1, True, file_properties.AddPropertiesArg_validator, bv.Void(), file_properties.AddPropertiesError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) properties_overwrite = bb.Route( 'properties/overwrite', 1, True, file_properties.OverwritePropertyGroupArg_validator, bv.Void(), file_properties.InvalidPropertyGroupError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) properties_remove = bb.Route( 'properties/remove', 1, True, file_properties.RemovePropertiesArg_validator, bv.Void(), file_properties.RemovePropertiesError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) properties_template_get = bb.Route( 'properties/template/get', 1, True, file_properties.GetTemplateArg_validator, file_properties.GetTemplateResult_validator, file_properties.TemplateError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) properties_template_list = bb.Route( 'properties/template/list', 1, True, bv.Void(), file_properties.ListTemplateResult_validator, file_properties.TemplateError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) properties_update = bb.Route( 'properties/update', 1, True, file_properties.UpdatePropertiesArg_validator, bv.Void(), file_properties.UpdatePropertiesError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) restore = bb.Route( 'restore', 1, False, RestoreArg_validator, FileMetadata_validator, RestoreError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) save_url = bb.Route( 'save_url', 1, False, SaveUrlArg_validator, SaveUrlResult_validator, SaveUrlError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) save_url_check_job_status = bb.Route( 'save_url/check_job_status', 1, False, async_.PollArg_validator, SaveUrlJobStatus_validator, async_.PollError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) search = bb.Route( 'search', 1, True, SearchArg_validator, SearchResult_validator, SearchError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) search_v2 = bb.Route( 'search', 2, False, SearchV2Arg_validator, SearchV2Result_validator, SearchError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) search_continue_v2 = bb.Route( 'search/continue', 2, False, SearchV2ContinueArg_validator, SearchV2Result_validator, SearchError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) tags_add = bb.Route( 'tags/add', 1, False, AddTagArg_validator, bv.Void(), AddTagError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) tags_get = bb.Route( 'tags/get', 1, False, GetTagsArg_validator, GetTagsResult_validator, BaseTagError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) tags_remove = bb.Route( 'tags/remove', 1, False, RemoveTagArg_validator, bv.Void(), RemoveTagError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) unlock_file_batch = bb.Route( 'unlock_file_batch', 1, False, UnlockFileBatchArg_validator, LockFileBatchResult_validator, LockFileError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) upload = bb.Route( 'upload', 1, False, UploadArg_validator, FileMetadata_validator, UploadError_validator, {'auth': 'user', 'host': 'content', 'style': 'upload'}, ) upload_session_append_v2 = bb.Route( 'upload_session/append', 2, False, UploadSessionAppendArg_validator, bv.Void(), UploadSessionAppendError_validator, {'auth': 'user', 'host': 'content', 'style': 'upload'}, ) upload_session_append = bb.Route( 'upload_session/append', 1, True, UploadSessionCursor_validator, bv.Void(), UploadSessionAppendError_validator, {'auth': 'user', 'host': 'content', 'style': 'upload'}, ) upload_session_finish = bb.Route( 'upload_session/finish', 1, False, UploadSessionFinishArg_validator, FileMetadata_validator, UploadSessionFinishError_validator, {'auth': 'user', 'host': 'content', 'style': 'upload'}, ) upload_session_finish_batch = bb.Route( 'upload_session/finish_batch', 1, True, UploadSessionFinishBatchArg_validator, UploadSessionFinishBatchLaunch_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) upload_session_finish_batch_v2 = bb.Route( 'upload_session/finish_batch', 2, False, UploadSessionFinishBatchArg_validator, UploadSessionFinishBatchResult_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) upload_session_finish_batch_check = bb.Route( 'upload_session/finish_batch/check', 1, False, async_.PollArg_validator, UploadSessionFinishBatchJobStatus_validator, async_.PollError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) upload_session_start = bb.Route( 'upload_session/start', 1, False, UploadSessionStartArg_validator, UploadSessionStartResult_validator, UploadSessionStartError_validator, {'auth': 'user', 'host': 'content', 'style': 'upload'}, ) upload_session_start_batch = bb.Route( 'upload_session/start_batch', 1, False, UploadSessionStartBatchArg_validator, UploadSessionStartBatchResult_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'alpha/get_metadata': alpha_get_metadata, 'alpha/upload': alpha_upload, 'copy:2': copy_v2, 'copy': copy, 'copy_batch:2': copy_batch_v2, 'copy_batch': copy_batch, 'copy_batch/check:2': copy_batch_check_v2, 'copy_batch/check': copy_batch_check, 'copy_reference/get': copy_reference_get, 'copy_reference/save': copy_reference_save, 'create_folder:2': create_folder_v2, 'create_folder': create_folder, 'create_folder_batch': create_folder_batch, 'create_folder_batch/check': create_folder_batch_check, 'delete:2': delete_v2, 'delete': delete, 'delete_batch': delete_batch, 'delete_batch/check': delete_batch_check, 'download': download, 'download_zip': download_zip, 'export': export, 'get_file_lock_batch': get_file_lock_batch, 'get_metadata': get_metadata, 'get_preview': get_preview, 'get_temporary_link': get_temporary_link, 'get_temporary_upload_link': get_temporary_upload_link, 'get_thumbnail': get_thumbnail, 'get_thumbnail:2': get_thumbnail_v2, 'get_thumbnail_batch': get_thumbnail_batch, 'list_folder': list_folder, 'list_folder/continue': list_folder_continue, 'list_folder/get_latest_cursor': list_folder_get_latest_cursor, 'list_folder/longpoll': list_folder_longpoll, 'list_revisions': list_revisions, 'lock_file_batch': lock_file_batch, 'move:2': move_v2, 'move': move, 'move_batch:2': move_batch_v2, 'move_batch': move_batch, 'move_batch/check:2': move_batch_check_v2, 'move_batch/check': move_batch_check, 'paper/create': paper_create, 'paper/update': paper_update, 'permanently_delete': permanently_delete, 'properties/add': properties_add, 'properties/overwrite': properties_overwrite, 'properties/remove': properties_remove, 'properties/template/get': properties_template_get, 'properties/template/list': properties_template_list, 'properties/update': properties_update, 'restore': restore, 'save_url': save_url, 'save_url/check_job_status': save_url_check_job_status, 'search': search, 'search:2': search_v2, 'search/continue:2': search_continue_v2, 'tags/add': tags_add, 'tags/get': tags_get, 'tags/remove': tags_remove, 'unlock_file_batch': unlock_file_batch, 'upload': upload, 'upload_session/append:2': upload_session_append_v2, 'upload_session/append': upload_session_append, 'upload_session/finish': upload_session_finish, 'upload_session/finish_batch': upload_session_finish_batch, 'upload_session/finish_batch:2': upload_session_finish_batch_v2, 'upload_session/finish_batch/check': upload_session_finish_batch_check, 'upload_session/start': upload_session_start, 'upload_session/start_batch': upload_session_start_batch, } dropbox-sdk-python-12.0.2/dropbox/oauth.py000066400000000000000000000614531462737130500205370ustar00rootroot00000000000000import hashlib __all__ = [ 'BadRequestException', 'BadStateException', 'CsrfException', 'DropboxOAuth2Flow', 'DropboxOAuth2FlowNoRedirect', 'NotApprovedException', 'OAuth2FlowNoRedirectResult', 'OAuth2FlowResult', 'ProviderException', ] import base64 import os import six import urllib import re from datetime import datetime, timedelta from .session import ( API_HOST, WEB_HOST, pinned_session, DEFAULT_TIMEOUT, ) if six.PY3: url_path_quote = urllib.parse.quote # pylint: disable=no-member,useless-suppression url_encode = urllib.parse.urlencode # pylint: disable=no-member,useless-suppression else: url_path_quote = urllib.quote # pylint: disable=no-member,useless-suppression url_encode = urllib.urlencode # pylint: disable=no-member,useless-suppression TOKEN_ACCESS_TYPES = ['offline', 'online', 'legacy'] INCLUDE_GRANTED_SCOPES_TYPES = ['user', 'team'] PKCE_VERIFIER_LENGTH = 128 class OAuth2FlowNoRedirectResult(object): """ Authorization information for an OAuth2Flow performed with no redirect. """ def __init__(self, access_token, account_id, user_id, refresh_token, expiration, scope): """ :param str access_token: Token to be used to authenticate later requests. :param str account_id: The Dropbox user's account ID. :param str user_id: Deprecated (use :attr:`account_id` instead). :param str refresh_token: Token to be used to acquire new access token when existing one expires. :param expiration: Either the number of seconds from now that the token expires in or the datetime at which the token expires. :type expiration: int or datetime :param list scope: List of scopes to request in base oauth flow. """ self.access_token = access_token if not expiration: self.expires_at = None elif isinstance(expiration, datetime): self.expires_at = expiration else: self.expires_at = datetime.utcnow() + timedelta(seconds=int(expiration)) self.refresh_token = refresh_token self.account_id = account_id self.user_id = user_id self.scope = scope def __repr__(self): return 'OAuth2FlowNoRedirectResult(%s, %s, %s, %s, %s, %s)' % ( self.access_token, self.account_id, self.user_id, self.refresh_token, self.expires_at, self.scope, ) class OAuth2FlowResult(OAuth2FlowNoRedirectResult): """ Authorization information for an :class:`OAuth2Flow` with redirect. """ def __init__(self, access_token, account_id, user_id, url_state, refresh_token, expires_in, scope): """ Same as :class:`OAuth2FlowNoRedirectResult` but with url_state. :param str url_state: The url state that was set by :meth:`DropboxOAuth2Flow.start`. """ super(OAuth2FlowResult, self).__init__( access_token=access_token, account_id=account_id, user_id=user_id, refresh_token=refresh_token, expiration=expires_in, scope=scope) self.url_state = url_state @classmethod def from_no_redirect_result(cls, result, url_state): assert isinstance(result, OAuth2FlowNoRedirectResult) return cls(result.access_token, result.account_id, result.user_id, url_state, result.refresh_token, result.expires_at, result.scope) def __repr__(self): return 'OAuth2FlowResult(%s, %s, %s, %s, %s, %s, %s)' % ( self.access_token, self.account_id, self.user_id, self.url_state, self.refresh_token, self.expires_at, self.scope, ) class DropboxOAuth2FlowBase(object): def __init__(self, consumer_key, consumer_secret=None, locale=None, token_access_type=None, scope=None, include_granted_scopes=None, use_pkce=False, timeout=DEFAULT_TIMEOUT, ca_certs=None): if scope is not None and (len(scope) == 0 or not isinstance(scope, list)): raise BadInputException("Scope list must be of type list") if token_access_type is not None and token_access_type not in TOKEN_ACCESS_TYPES: raise BadInputException("Token access type must be from the following enum: {}".format( TOKEN_ACCESS_TYPES)) if not (use_pkce or consumer_secret): raise BadInputException("Must pass in either consumer secret or use PKCE") if include_granted_scopes and not scope: raise BadInputException("Must pass in scope to pass include_granted_scopes") self.consumer_key = consumer_key self.consumer_secret = consumer_secret self.locale = locale self.token_access_type = token_access_type self.requests_session = pinned_session(ca_certs=ca_certs) self.scope = scope self.include_granted_scopes = include_granted_scopes self._timeout = timeout if use_pkce: self.code_verifier = _generate_pkce_code_verifier() self.code_challenge = _generate_pkce_code_challenge(self.code_verifier) else: self.code_verifier = None self.code_challenge = None def _get_authorize_url(self, redirect_uri, state, token_access_type=None, scope=None, include_granted_scopes=None, code_challenge=None): params = dict(response_type='code', client_id=self.consumer_key) if redirect_uri is not None: params['redirect_uri'] = redirect_uri if state is not None: params['state'] = state if token_access_type is not None: assert token_access_type in TOKEN_ACCESS_TYPES params['token_access_type'] = token_access_type if code_challenge: params['code_challenge'] = code_challenge params['code_challenge_method'] = 'S256' if scope is not None: params['scope'] = " ".join(scope) if include_granted_scopes is not None: assert include_granted_scopes in INCLUDE_GRANTED_SCOPES_TYPES params['include_granted_scopes'] = include_granted_scopes return self.build_url('/oauth2/authorize', params, WEB_HOST) def _finish(self, code, redirect_uri, code_verifier): url = self.build_url('/oauth2/token') params = {'grant_type': 'authorization_code', 'code': code, 'client_id': self.consumer_key, } if code_verifier: params['code_verifier'] = code_verifier else: params['client_secret'] = self.consumer_secret if self.locale is not None: params['locale'] = self.locale if redirect_uri is not None: params['redirect_uri'] = redirect_uri resp = self.requests_session.post(url, data=params, timeout=self._timeout) resp.raise_for_status() d = resp.json() if 'team_id' in d: account_id = d['team_id'] else: account_id = d['account_id'] access_token = d['access_token'] if 'refresh_token' in d: refresh_token = d['refresh_token'] else: refresh_token = "" if 'expires_in' in d: expires_in = d['expires_in'] else: expires_in = None if 'scope' in d: scope = d['scope'] else: scope = None uid = d['uid'] return OAuth2FlowNoRedirectResult( access_token, account_id, uid, refresh_token, expires_in, scope) def build_path(self, target, params=None): """Build the path component for an API URL. This method urlencodes the parameters, adds them to the end of the target url, and puts a marker for the API version in front. :param str target: A target url (e.g. '/files') to build upon. :param dict params: Optional dictionary of parameters (name to value). :return: The path and parameters components of an API URL. :rtype: str """ if six.PY2 and isinstance(target, six.text_type): target = target.encode('utf8') target_path = url_path_quote(target) params = params or {} params = params.copy() if self.locale: params['locale'] = self.locale if params: query_string = _params_to_urlencoded(params) return "%s?%s" % (target_path, query_string) else: return target_path def build_url(self, target, params=None, host=API_HOST): """Build an API URL. This method adds scheme and hostname to the path returned from build_path. :param str target: A target url (e.g. '/files') to build upon. :param dict params: Optional dictionary of parameters (name to value). :return: The full API URL. :rtype: str """ return "https://%s%s" % (host, self.build_path(target, params)) class DropboxOAuth2FlowNoRedirect(DropboxOAuth2FlowBase): """ OAuth 2 authorization helper for apps that can't provide a redirect URI (such as the command-line example apps). See examples under `example/oauth `_ """ def __init__(self, consumer_key, consumer_secret=None, locale=None, token_access_type=None, scope=None, include_granted_scopes=None, use_pkce=False, timeout=DEFAULT_TIMEOUT, ca_certs=None): # noqa: E501; """ Construct an instance. :param str consumer_key: Your API app's "app key". :param str consumer_secret: Your API app's "app secret". :param str locale: The locale of the user of your application. For example "en" or "en_US". Some API calls return localized data and error messages; this setting tells the server which locale to use. By default, the server uses "en_US". :param str token_access_type: the type of token to be requested. From the following enum: * None - creates a token with the app default (either legacy or online) * legacy - creates one long-lived token with no expiration * online - create one short-lived token with an expiration * offline - create one short-lived token with an expiration with a refresh token :param list scope: list of scopes to request in base oauth flow. If left blank, will default to all scopes for app. :param str include_granted_scopes: which scopes to include from previous grants. From the following enum: * user - include user scopes in the grant * team - include team scopes in the grant * *Note*: if this user has never linked the app, include_granted_scopes must be None :param bool use_pkce: Whether or not to use Sha256 based PKCE. PKCE should be only use on client apps which doesn't call your server. It is less secure than non-PKCE flow but can be used if you are unable to safely retrieve your app secret. :param Optional[float] timeout: Maximum duration in seconds that client will wait for any single packet from the server. After the timeout the client will give up on connection. If `None`, client will wait forever. Defaults to 100 seconds. :param str ca_cert: path to CA certificate. If left blank, default certificate location \ will be used """ super(DropboxOAuth2FlowNoRedirect, self).__init__( consumer_key=consumer_key, consumer_secret=consumer_secret, locale=locale, token_access_type=token_access_type, scope=scope, include_granted_scopes=include_granted_scopes, use_pkce=use_pkce, timeout=timeout, ca_certs=ca_certs ) def start(self): """ Starts the OAuth 2 authorization process. :return: The URL for a page on Dropbox's website. This page will let the user "approve" your app, which gives your app permission to access the user's Dropbox account. Tell the user to visit this URL and approve your app. """ return self._get_authorize_url(None, None, self.token_access_type, scope=self.scope, include_granted_scopes=self.include_granted_scopes, code_challenge=self.code_challenge) def finish(self, code): """ If the user approves your app, they will be presented with an "authorization code". Have the user copy/paste that authorization code into your app and then call this method to get an access token. :param str code: The authorization code shown to the user when they approved your app. :rtype: :class:`OAuth2FlowNoRedirectResult` :raises: The same exceptions as :meth:`DropboxOAuth2Flow.finish()`. """ return self._finish(code, None, self.code_verifier) class DropboxOAuth2Flow(DropboxOAuth2FlowBase): """ OAuth 2 authorization helper. Use this for web apps. OAuth 2 has a two-step authorization process. The first step is having the user authorize your app. The second involves getting an OAuth 2 access token from Dropbox. See examples under `example/oauth `_ """ def __init__(self, consumer_key, redirect_uri, session, csrf_token_session_key, consumer_secret=None, locale=None, token_access_type=None, scope=None, include_granted_scopes=None, use_pkce=False, timeout=DEFAULT_TIMEOUT, ca_certs=None): """ Construct an instance. :param str consumer_key: Your API app's "app key". :param str redirect_uri: The URI that the Dropbox server will redirect the user to after the user finishes authorizing your app. This URI must be HTTPS-based and pre-registered with the Dropbox servers, though localhost URIs are allowed without pre-registration and can be either HTTP or HTTPS. :param dict session: A dict-like object that represents the current user's web session (Will be used to save the CSRF token). :param str csrf_token_session_key: The key to use when storing the CSRF token in the session (For example: "dropbox-auth-csrf-token"). :param str consumer_secret: Your API app's "app secret". :param str locale: The locale of the user of your application. For example "en" or "en_US". Some API calls return localized data and error messages; this setting tells the server which locale to use. By default, the server uses "en_US". :param str token_access_type: The type of token to be requested. From the following enum: * None - creates a token with the app default (either legacy or online) * legacy - creates one long-lived token with no expiration * online - create one short-lived token with an expiration * offline - create one short-lived token with an expiration with a refresh token :param list scope: List of scopes to request in base oauth flow. If left blank, will default to all scopes for app. :param str include_granted_scopes: Which scopes to include from previous grants. From the following enum: * user - include user scopes in the grant * team - include team scopes in the grant * *Note*: If this user has never linked the app, :attr:`include_granted_scopes` must \ be `None` :param bool use_pkce: Whether or not to use Sha256 based PKCE :param Optional[float] timeout: Maximum duration in seconds that client will wait for any single packet from the server. After the timeout the client will give up on connection. If `None`, client will wait forever. Defaults to 100 seconds. :param str ca_cert: path to CA certificate. If left blank, default certificate location \ will be used """ super(DropboxOAuth2Flow, self).__init__( consumer_key=consumer_key, consumer_secret=consumer_secret, locale=locale, token_access_type=token_access_type, scope=scope, include_granted_scopes=include_granted_scopes, use_pkce=use_pkce, timeout=timeout, ca_certs=ca_certs ) self.redirect_uri = redirect_uri self.session = session self.csrf_token_session_key = csrf_token_session_key def start(self, url_state=None): """ Starts the OAuth 2 authorization process. This function builds an "authorization URL". You should redirect your user's browser to this URL, which will give them an opportunity to grant your app access to their Dropbox account. When the user completes this process, they will be automatically redirected to the :attr:`redirect_uri` you passed in to the constructor. This function will also save a CSRF token to :attr:`session[csrf_token_session_key]` (as provided to the constructor). This CSRF token will be checked on :meth:`finish()` to prevent request forgery. :param str url_state: Any data that you would like to keep in the URL through the authorization process. This exact value will be returned to you by :meth:`finish()`. :return: The URL for a page on Dropbox's website. This page will let the user "approve" your app, which gives your app permission to access the user's Dropbox account. Tell the user to visit this URL and approve your app. """ csrf_token = base64.urlsafe_b64encode(os.urandom(16)).decode('ascii') state = csrf_token if url_state is not None: state += "|" + url_state self.session[self.csrf_token_session_key] = csrf_token return self._get_authorize_url(self.redirect_uri, state, self.token_access_type, scope=self.scope, include_granted_scopes=self.include_granted_scopes, code_challenge=self.code_challenge) def finish(self, query_params): """ Call this after the user has visited the authorize URL (see :meth:`start()`), approved your app and was redirected to your redirect URI. :param dict query_params: The query parameters on the GET request to your redirect URI. :rtype: class:`OAuth2FlowResult` :raises: :class:`BadRequestException` If the redirect URL was missing parameters or if the given parameters were not valid. :raises: :class:`BadStateException` If there's no CSRF token in the session. :raises: :class:`CsrfException` If the :attr:`state` query parameter doesn't contain the CSRF token from the user's session. :raises: :class:`NotApprovedException` If the user chose not to approve your app. :raises: :class:`ProviderException` If Dropbox redirected to your redirect URI with some unexpected error identifier and error message. """ # Check well-formedness of request. state = query_params.get('state') if state is None: raise BadRequestException("Missing query parameter 'state'.") error = query_params.get('error') error_description = query_params.get('error_description') code = query_params.get('code') if error is not None and code is not None: raise BadRequestException( "Query parameters 'code' and 'error' are both set; " "only one must be set.") if error is None and code is None: raise BadRequestException( "Neither query parameter 'code' or 'error' is set.") # Check CSRF token if self.csrf_token_session_key not in self.session: raise BadStateException('Missing CSRF token in session.') csrf_token_from_session = self.session[self.csrf_token_session_key] if len(csrf_token_from_session) <= 20: raise AssertionError('CSRF token unexpectedly short: %r' % csrf_token_from_session) split_pos = state.find('|') if split_pos < 0: given_csrf_token = state url_state = None else: given_csrf_token = state[0:split_pos] url_state = state[split_pos + 1:] if not _safe_equals(csrf_token_from_session, given_csrf_token): raise CsrfException('expected %r, got %r' % (csrf_token_from_session, given_csrf_token)) del self.session[self.csrf_token_session_key] # Check for error identifier if error is not None: if error == 'access_denied': # The user clicked "Deny" if error_description is None: raise NotApprovedException( 'No additional description from Dropbox') else: raise NotApprovedException( 'Additional description from Dropbox: %s' % error_description) else: # All other errors full_message = error if error_description is not None: full_message += ": " + error_description raise ProviderException(full_message) # If everything went ok, make the network call to get an access token. no_redirect_result = self._finish(code, self.redirect_uri, self.code_verifier) return OAuth2FlowResult.from_no_redirect_result( no_redirect_result, url_state) class BadRequestException(Exception): """ Thrown if the redirect URL was missing parameters or if the given parameters were not valid. The recommended action is to show an HTTP 400 error page. """ pass class BadStateException(Exception): """ Thrown if all the parameters are correct, but there's no CSRF token in the session. This probably means that the session expired. The recommended action is to redirect the user's browser to try the approval process again. """ pass class CsrfException(Exception): """ Thrown if the given 'state' parameter doesn't contain the CSRF token from the user's session. This is blocked to prevent CSRF attacks. The recommended action is to respond with an HTTP 403 error page. """ pass class NotApprovedException(Exception): """ The user chose not to approve your app. """ pass class ProviderException(Exception): """ Dropbox redirected to your redirect URI with some unexpected error identifier and error message. The recommended action is to log the error, tell the user something went wrong, and let them try again. """ pass class BadInputException(Exception): """ Thrown if incorrect types/values are used This should only ever be thrown during testing, app should have validation of input prior to reaching this point """ pass def _safe_equals(a, b): if len(a) != len(b): return False res = 0 for ca, cb in zip(a, b): res |= ord(ca) ^ ord(cb) return res == 0 def _params_to_urlencoded(params): """ Returns a application/x-www-form-urlencoded :class:`str` representing the key/value pairs in :attr:`params`. Keys are values are ``str()``'d before calling :meth:`urllib.urlencode`, with the exception of unicode objects which are utf8-encoded. """ def encode(o): if isinstance(o, six.binary_type): return o else: if isinstance(o, six.text_type): return o.encode('utf-8') else: return str(o).encode('utf-8') utf8_params = {encode(k): encode(v) for k, v in six.iteritems(params)} return url_encode(utf8_params) def _generate_pkce_code_verifier(): code_verifier = base64.urlsafe_b64encode(os.urandom(PKCE_VERIFIER_LENGTH)).decode('utf-8') code_verifier = re.sub('[^a-zA-Z0-9]+', '', code_verifier) if len(code_verifier) > PKCE_VERIFIER_LENGTH: code_verifier = code_verifier[:128] return code_verifier def _generate_pkce_code_challenge(code_verifier): code_challenge = hashlib.sha256(code_verifier.encode('utf-8')).digest() code_challenge = base64.urlsafe_b64encode(code_challenge).decode('utf-8') code_challenge = code_challenge.replace('=', '') return code_challenge dropbox-sdk-python-12.0.2/dropbox/openid.py000066400000000000000000000170301462737130500206650ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv class OpenIdError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar openid.OpenIdError.incorrect_openid_scopes: Missing openid claims for the associated access token. """ _catch_all = 'other' # Attribute is overwritten below the class definition incorrect_openid_scopes = None # Attribute is overwritten below the class definition other = None def is_incorrect_openid_scopes(self): """ Check if the union tag is ``incorrect_openid_scopes``. :rtype: bool """ return self._tag == 'incorrect_openid_scopes' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(OpenIdError, self)._process_custom_annotations(annotation_type, field_path, processor) OpenIdError_validator = bv.Union(OpenIdError) class UserInfoArgs(bb.Struct): """ No Parameters """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserInfoArgs, self)._process_custom_annotations(annotation_type, field_path, processor) UserInfoArgs_validator = bv.Struct(UserInfoArgs) class UserInfoError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def openid_error(cls, val): """ Create an instance of this class set to the ``openid_error`` tag with value ``val``. :param OpenIdError val: :rtype: UserInfoError """ return cls('openid_error', val) def is_openid_error(self): """ Check if the union tag is ``openid_error``. :rtype: bool """ return self._tag == 'openid_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_openid_error(self): """ Only call this if :meth:`is_openid_error` is true. :rtype: OpenIdError """ if not self.is_openid_error(): raise AttributeError("tag 'openid_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserInfoError, self)._process_custom_annotations(annotation_type, field_path, processor) UserInfoError_validator = bv.Union(UserInfoError) class UserInfoResult(bb.Struct): """ :ivar openid.UserInfoResult.family_name: Last name of user. :ivar openid.UserInfoResult.given_name: First name of user. :ivar openid.UserInfoResult.email: Email address of user. :ivar openid.UserInfoResult.email_verified: If user is email verified. :ivar openid.UserInfoResult.iss: Issuer of token (in this case Dropbox). :ivar openid.UserInfoResult.sub: An identifier for the user. This is the Dropbox account_id, a string value such as dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc. """ __slots__ = [ '_family_name_value', '_given_name_value', '_email_value', '_email_verified_value', '_iss_value', '_sub_value', ] _has_required_fields = False def __init__(self, family_name=None, given_name=None, email=None, email_verified=None, iss=None, sub=None): self._family_name_value = bb.NOT_SET self._given_name_value = bb.NOT_SET self._email_value = bb.NOT_SET self._email_verified_value = bb.NOT_SET self._iss_value = bb.NOT_SET self._sub_value = bb.NOT_SET if family_name is not None: self.family_name = family_name if given_name is not None: self.given_name = given_name if email is not None: self.email = email if email_verified is not None: self.email_verified = email_verified if iss is not None: self.iss = iss if sub is not None: self.sub = sub # Instance attribute type: str (validator is set below) family_name = bb.Attribute("family_name", nullable=True) # Instance attribute type: str (validator is set below) given_name = bb.Attribute("given_name", nullable=True) # Instance attribute type: str (validator is set below) email = bb.Attribute("email", nullable=True) # Instance attribute type: bool (validator is set below) email_verified = bb.Attribute("email_verified", nullable=True) # Instance attribute type: str (validator is set below) iss = bb.Attribute("iss") # Instance attribute type: str (validator is set below) sub = bb.Attribute("sub") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserInfoResult, self)._process_custom_annotations(annotation_type, field_path, processor) UserInfoResult_validator = bv.Struct(UserInfoResult) OpenIdError._incorrect_openid_scopes_validator = bv.Void() OpenIdError._other_validator = bv.Void() OpenIdError._tagmap = { 'incorrect_openid_scopes': OpenIdError._incorrect_openid_scopes_validator, 'other': OpenIdError._other_validator, } OpenIdError.incorrect_openid_scopes = OpenIdError('incorrect_openid_scopes') OpenIdError.other = OpenIdError('other') UserInfoArgs._all_field_names_ = set([]) UserInfoArgs._all_fields_ = [] UserInfoError._openid_error_validator = OpenIdError_validator UserInfoError._other_validator = bv.Void() UserInfoError._tagmap = { 'openid_error': UserInfoError._openid_error_validator, 'other': UserInfoError._other_validator, } UserInfoError.other = UserInfoError('other') UserInfoResult.family_name.validator = bv.Nullable(bv.String()) UserInfoResult.given_name.validator = bv.Nullable(bv.String()) UserInfoResult.email.validator = bv.Nullable(bv.String()) UserInfoResult.email_verified.validator = bv.Nullable(bv.Boolean()) UserInfoResult.iss.validator = bv.String() UserInfoResult.sub.validator = bv.String() UserInfoResult._all_field_names_ = set([ 'family_name', 'given_name', 'email', 'email_verified', 'iss', 'sub', ]) UserInfoResult._all_fields_ = [ ('family_name', UserInfoResult.family_name.validator), ('given_name', UserInfoResult.given_name.validator), ('email', UserInfoResult.email.validator), ('email_verified', UserInfoResult.email_verified.validator), ('iss', UserInfoResult.iss.validator), ('sub', UserInfoResult.sub.validator), ] UserInfoResult.iss.default = '' UserInfoResult.sub.default = '' userinfo = bb.Route( 'userinfo', 1, False, UserInfoArgs_validator, UserInfoResult_validator, UserInfoError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'userinfo': userinfo, } dropbox-sdk-python-12.0.2/dropbox/paper.py000066400000000000000000003346541462737130500205340ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file """ This namespace contains endpoints and data types for managing docs and folders in Dropbox Paper. New Paper users will see docs they create in their filesystem as '.paper' files alongside their other Dropbox content. The /paper endpoints are being deprecated and you'll need to use /files and /sharing endpoints to interact with their Paper content. Read more in the `Paper Migration Guide `_. """ from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv from dropbox import common from dropbox import sharing class AddMember(bb.Struct): """ :ivar paper.AddMember.permission_level: Permission for the user. :ivar paper.AddMember.member: User which should be added to the Paper doc. Specify only email address or Dropbox account ID. """ __slots__ = [ '_permission_level_value', '_member_value', ] _has_required_fields = True def __init__(self, member=None, permission_level=None): self._permission_level_value = bb.NOT_SET self._member_value = bb.NOT_SET if permission_level is not None: self.permission_level = permission_level if member is not None: self.member = member # Instance attribute type: PaperDocPermissionLevel (validator is set below) permission_level = bb.Attribute("permission_level", user_defined=True) # Instance attribute type: sharing.MemberSelector (validator is set below) member = bb.Attribute("member", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddMember, self)._process_custom_annotations(annotation_type, field_path, processor) AddMember_validator = bv.Struct(AddMember) class RefPaperDoc(bb.Struct): """ :ivar paper.RefPaperDoc.doc_id: The Paper doc ID. """ __slots__ = [ '_doc_id_value', ] _has_required_fields = True def __init__(self, doc_id=None): self._doc_id_value = bb.NOT_SET if doc_id is not None: self.doc_id = doc_id # Instance attribute type: str (validator is set below) doc_id = bb.Attribute("doc_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RefPaperDoc, self)._process_custom_annotations(annotation_type, field_path, processor) RefPaperDoc_validator = bv.Struct(RefPaperDoc) class AddPaperDocUser(RefPaperDoc): """ :ivar paper.AddPaperDocUser.members: User which should be added to the Paper doc. Specify only email address or Dropbox account ID. :ivar paper.AddPaperDocUser.custom_message: A personal message that will be emailed to each successfully added member. :ivar paper.AddPaperDocUser.quiet: Clients should set this to true if no email message shall be sent to added users. """ __slots__ = [ '_members_value', '_custom_message_value', '_quiet_value', ] _has_required_fields = True def __init__(self, doc_id=None, members=None, custom_message=None, quiet=None): super(AddPaperDocUser, self).__init__(doc_id) self._members_value = bb.NOT_SET self._custom_message_value = bb.NOT_SET self._quiet_value = bb.NOT_SET if members is not None: self.members = members if custom_message is not None: self.custom_message = custom_message if quiet is not None: self.quiet = quiet # Instance attribute type: list of [AddMember] (validator is set below) members = bb.Attribute("members") # Instance attribute type: str (validator is set below) custom_message = bb.Attribute("custom_message", nullable=True) # Instance attribute type: bool (validator is set below) quiet = bb.Attribute("quiet") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddPaperDocUser, self)._process_custom_annotations(annotation_type, field_path, processor) AddPaperDocUser_validator = bv.Struct(AddPaperDocUser) class AddPaperDocUserMemberResult(bb.Struct): """ Per-member result for :meth:`dropbox.dropbox_client.Dropbox.paper_docs_users_add`. :ivar paper.AddPaperDocUserMemberResult.member: One of specified input members. :ivar paper.AddPaperDocUserMemberResult.result: The outcome of the action on this member. """ __slots__ = [ '_member_value', '_result_value', ] _has_required_fields = True def __init__(self, member=None, result=None): self._member_value = bb.NOT_SET self._result_value = bb.NOT_SET if member is not None: self.member = member if result is not None: self.result = result # Instance attribute type: sharing.MemberSelector (validator is set below) member = bb.Attribute("member", user_defined=True) # Instance attribute type: AddPaperDocUserResult (validator is set below) result = bb.Attribute("result", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddPaperDocUserMemberResult, self)._process_custom_annotations(annotation_type, field_path, processor) AddPaperDocUserMemberResult_validator = bv.Struct(AddPaperDocUserMemberResult) class AddPaperDocUserResult(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.AddPaperDocUserResult.success: User was successfully added to the Paper doc. :ivar paper.AddPaperDocUserResult.unknown_error: Something unexpected happened when trying to add the user to the Paper doc. :ivar paper.AddPaperDocUserResult.sharing_outside_team_disabled: The Paper doc can be shared only with team members. :ivar paper.AddPaperDocUserResult.daily_limit_reached: The daily limit of how many users can be added to the Paper doc was reached. :ivar paper.AddPaperDocUserResult.user_is_owner: Owner's permissions cannot be changed. :ivar paper.AddPaperDocUserResult.failed_user_data_retrieval: User data could not be retrieved. Clients should retry. :ivar paper.AddPaperDocUserResult.permission_already_granted: This user already has the correct permission to the Paper doc. """ _catch_all = 'other' # Attribute is overwritten below the class definition success = None # Attribute is overwritten below the class definition unknown_error = None # Attribute is overwritten below the class definition sharing_outside_team_disabled = None # Attribute is overwritten below the class definition daily_limit_reached = None # Attribute is overwritten below the class definition user_is_owner = None # Attribute is overwritten below the class definition failed_user_data_retrieval = None # Attribute is overwritten below the class definition permission_already_granted = None # Attribute is overwritten below the class definition other = None def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_unknown_error(self): """ Check if the union tag is ``unknown_error``. :rtype: bool """ return self._tag == 'unknown_error' def is_sharing_outside_team_disabled(self): """ Check if the union tag is ``sharing_outside_team_disabled``. :rtype: bool """ return self._tag == 'sharing_outside_team_disabled' def is_daily_limit_reached(self): """ Check if the union tag is ``daily_limit_reached``. :rtype: bool """ return self._tag == 'daily_limit_reached' def is_user_is_owner(self): """ Check if the union tag is ``user_is_owner``. :rtype: bool """ return self._tag == 'user_is_owner' def is_failed_user_data_retrieval(self): """ Check if the union tag is ``failed_user_data_retrieval``. :rtype: bool """ return self._tag == 'failed_user_data_retrieval' def is_permission_already_granted(self): """ Check if the union tag is ``permission_already_granted``. :rtype: bool """ return self._tag == 'permission_already_granted' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddPaperDocUserResult, self)._process_custom_annotations(annotation_type, field_path, processor) AddPaperDocUserResult_validator = bv.Union(AddPaperDocUserResult) class Cursor(bb.Struct): """ :ivar paper.Cursor.value: The actual cursor value. :ivar paper.Cursor.expiration: Expiration time of ``value``. Some cursors might have expiration time assigned. This is a UTC value after which the cursor is no longer valid and the API starts returning an error. If cursor expires a new one needs to be obtained and pagination needs to be restarted. Some cursors might be short-lived some cursors might be long-lived. This really depends on the sorting type and order, e.g.: 1. on one hand, listing docs created by the user, sorted by the created time ascending will have undefinite expiration because the results cannot change while the iteration is happening. This cursor would be suitable for long term polling. 2. on the other hand, listing docs sorted by the last modified time will have a very short expiration as docs do get modified very often and the modified time can be changed while the iteration is happening thus altering the results. """ __slots__ = [ '_value_value', '_expiration_value', ] _has_required_fields = True def __init__(self, value=None, expiration=None): self._value_value = bb.NOT_SET self._expiration_value = bb.NOT_SET if value is not None: self.value = value if expiration is not None: self.expiration = expiration # Instance attribute type: str (validator is set below) value = bb.Attribute("value") # Instance attribute type: datetime.datetime (validator is set below) expiration = bb.Attribute("expiration", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(Cursor, self)._process_custom_annotations(annotation_type, field_path, processor) Cursor_validator = bv.Struct(Cursor) class PaperApiBaseError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.PaperApiBaseError.insufficient_permissions: Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the `Paper Migration Guide `_. """ _catch_all = 'other' # Attribute is overwritten below the class definition insufficient_permissions = None # Attribute is overwritten below the class definition other = None def is_insufficient_permissions(self): """ Check if the union tag is ``insufficient_permissions``. :rtype: bool """ return self._tag == 'insufficient_permissions' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperApiBaseError, self)._process_custom_annotations(annotation_type, field_path, processor) PaperApiBaseError_validator = bv.Union(PaperApiBaseError) class DocLookupError(PaperApiBaseError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.DocLookupError.doc_not_found: The required doc was not found. """ # Attribute is overwritten below the class definition doc_not_found = None def is_doc_not_found(self): """ Check if the union tag is ``doc_not_found``. :rtype: bool """ return self._tag == 'doc_not_found' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DocLookupError, self)._process_custom_annotations(annotation_type, field_path, processor) DocLookupError_validator = bv.Union(DocLookupError) class DocSubscriptionLevel(bb.Union): """ The subscription level of a Paper doc. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.DocSubscriptionLevel.default: No change email messages unless you're the creator. :ivar paper.DocSubscriptionLevel.ignore: Ignored: Not shown in pad lists or activity and no email message is sent. :ivar paper.DocSubscriptionLevel.every: Subscribed: Shown in pad lists and activity and change email messages are sent. :ivar paper.DocSubscriptionLevel.no_email: Unsubscribed: Shown in pad lists, but not in activity and no change email messages are sent. """ _catch_all = None # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition ignore = None # Attribute is overwritten below the class definition every = None # Attribute is overwritten below the class definition no_email = None def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_ignore(self): """ Check if the union tag is ``ignore``. :rtype: bool """ return self._tag == 'ignore' def is_every(self): """ Check if the union tag is ``every``. :rtype: bool """ return self._tag == 'every' def is_no_email(self): """ Check if the union tag is ``no_email``. :rtype: bool """ return self._tag == 'no_email' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DocSubscriptionLevel, self)._process_custom_annotations(annotation_type, field_path, processor) DocSubscriptionLevel_validator = bv.Union(DocSubscriptionLevel) class ExportFormat(bb.Union): """ The desired export format of the Paper doc. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.ExportFormat.html: The HTML export format. :ivar paper.ExportFormat.markdown: The markdown export format. """ _catch_all = 'other' # Attribute is overwritten below the class definition html = None # Attribute is overwritten below the class definition markdown = None # Attribute is overwritten below the class definition other = None def is_html(self): """ Check if the union tag is ``html``. :rtype: bool """ return self._tag == 'html' def is_markdown(self): """ Check if the union tag is ``markdown``. :rtype: bool """ return self._tag == 'markdown' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExportFormat, self)._process_custom_annotations(annotation_type, field_path, processor) ExportFormat_validator = bv.Union(ExportFormat) class Folder(bb.Struct): """ Data structure representing a Paper folder. :ivar paper.Folder.id: Paper folder ID. This ID uniquely identifies the folder. :ivar paper.Folder.name: Paper folder name. """ __slots__ = [ '_id_value', '_name_value', ] _has_required_fields = True def __init__(self, id=None, name=None): self._id_value = bb.NOT_SET self._name_value = bb.NOT_SET if id is not None: self.id = id if name is not None: self.name = name # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(Folder, self)._process_custom_annotations(annotation_type, field_path, processor) Folder_validator = bv.Struct(Folder) class FolderSharingPolicyType(bb.Union): """ The sharing policy of a Paper folder. The sharing policy of subfolders is inherited from the root folder. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.FolderSharingPolicyType.team: Everyone in your team and anyone directly invited can access this folder. :ivar paper.FolderSharingPolicyType.invite_only: Only people directly invited can access this folder. """ _catch_all = None # Attribute is overwritten below the class definition team = None # Attribute is overwritten below the class definition invite_only = None def is_team(self): """ Check if the union tag is ``team``. :rtype: bool """ return self._tag == 'team' def is_invite_only(self): """ Check if the union tag is ``invite_only``. :rtype: bool """ return self._tag == 'invite_only' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderSharingPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) FolderSharingPolicyType_validator = bv.Union(FolderSharingPolicyType) class FolderSubscriptionLevel(bb.Union): """ The subscription level of a Paper folder. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.FolderSubscriptionLevel.none: Not shown in activity, no email messages. :ivar paper.FolderSubscriptionLevel.activity_only: Shown in activity, no email messages. :ivar paper.FolderSubscriptionLevel.daily_emails: Shown in activity, daily email messages. :ivar paper.FolderSubscriptionLevel.weekly_emails: Shown in activity, weekly email messages. """ _catch_all = None # Attribute is overwritten below the class definition none = None # Attribute is overwritten below the class definition activity_only = None # Attribute is overwritten below the class definition daily_emails = None # Attribute is overwritten below the class definition weekly_emails = None def is_none(self): """ Check if the union tag is ``none``. :rtype: bool """ return self._tag == 'none' def is_activity_only(self): """ Check if the union tag is ``activity_only``. :rtype: bool """ return self._tag == 'activity_only' def is_daily_emails(self): """ Check if the union tag is ``daily_emails``. :rtype: bool """ return self._tag == 'daily_emails' def is_weekly_emails(self): """ Check if the union tag is ``weekly_emails``. :rtype: bool """ return self._tag == 'weekly_emails' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderSubscriptionLevel, self)._process_custom_annotations(annotation_type, field_path, processor) FolderSubscriptionLevel_validator = bv.Union(FolderSubscriptionLevel) class FoldersContainingPaperDoc(bb.Struct): """ Metadata about Paper folders containing the specififed Paper doc. :ivar paper.FoldersContainingPaperDoc.folder_sharing_policy_type: The sharing policy of the folder containing the Paper doc. :ivar paper.FoldersContainingPaperDoc.folders: The folder path. If present the first folder is the root folder. """ __slots__ = [ '_folder_sharing_policy_type_value', '_folders_value', ] _has_required_fields = False def __init__(self, folder_sharing_policy_type=None, folders=None): self._folder_sharing_policy_type_value = bb.NOT_SET self._folders_value = bb.NOT_SET if folder_sharing_policy_type is not None: self.folder_sharing_policy_type = folder_sharing_policy_type if folders is not None: self.folders = folders # Instance attribute type: FolderSharingPolicyType (validator is set below) folder_sharing_policy_type = bb.Attribute("folder_sharing_policy_type", nullable=True, user_defined=True) # Instance attribute type: list of [Folder] (validator is set below) folders = bb.Attribute("folders", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FoldersContainingPaperDoc, self)._process_custom_annotations(annotation_type, field_path, processor) FoldersContainingPaperDoc_validator = bv.Struct(FoldersContainingPaperDoc) class ImportFormat(bb.Union): """ The import format of the incoming data. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.ImportFormat.html: The provided data is interpreted as standard HTML. :ivar paper.ImportFormat.markdown: The provided data is interpreted as markdown. The first line of the provided document will be used as the doc title. :ivar paper.ImportFormat.plain_text: The provided data is interpreted as plain text. The first line of the provided document will be used as the doc title. """ _catch_all = 'other' # Attribute is overwritten below the class definition html = None # Attribute is overwritten below the class definition markdown = None # Attribute is overwritten below the class definition plain_text = None # Attribute is overwritten below the class definition other = None def is_html(self): """ Check if the union tag is ``html``. :rtype: bool """ return self._tag == 'html' def is_markdown(self): """ Check if the union tag is ``markdown``. :rtype: bool """ return self._tag == 'markdown' def is_plain_text(self): """ Check if the union tag is ``plain_text``. :rtype: bool """ return self._tag == 'plain_text' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ImportFormat, self)._process_custom_annotations(annotation_type, field_path, processor) ImportFormat_validator = bv.Union(ImportFormat) class InviteeInfoWithPermissionLevel(bb.Struct): """ :ivar paper.InviteeInfoWithPermissionLevel.invitee: Email address invited to the Paper doc. :ivar paper.InviteeInfoWithPermissionLevel.permission_level: Permission level for the invitee. """ __slots__ = [ '_invitee_value', '_permission_level_value', ] _has_required_fields = True def __init__(self, invitee=None, permission_level=None): self._invitee_value = bb.NOT_SET self._permission_level_value = bb.NOT_SET if invitee is not None: self.invitee = invitee if permission_level is not None: self.permission_level = permission_level # Instance attribute type: sharing.InviteeInfo (validator is set below) invitee = bb.Attribute("invitee", user_defined=True) # Instance attribute type: PaperDocPermissionLevel (validator is set below) permission_level = bb.Attribute("permission_level", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(InviteeInfoWithPermissionLevel, self)._process_custom_annotations(annotation_type, field_path, processor) InviteeInfoWithPermissionLevel_validator = bv.Struct(InviteeInfoWithPermissionLevel) class ListDocsCursorError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def cursor_error(cls, val): """ Create an instance of this class set to the ``cursor_error`` tag with value ``val``. :param PaperApiCursorError val: :rtype: ListDocsCursorError """ return cls('cursor_error', val) def is_cursor_error(self): """ Check if the union tag is ``cursor_error``. :rtype: bool """ return self._tag == 'cursor_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_cursor_error(self): """ Only call this if :meth:`is_cursor_error` is true. :rtype: PaperApiCursorError """ if not self.is_cursor_error(): raise AttributeError("tag 'cursor_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListDocsCursorError, self)._process_custom_annotations(annotation_type, field_path, processor) ListDocsCursorError_validator = bv.Union(ListDocsCursorError) class ListPaperDocsArgs(bb.Struct): """ :ivar paper.ListPaperDocsArgs.filter_by: Allows user to specify how the Paper docs should be filtered. :ivar paper.ListPaperDocsArgs.sort_by: Allows user to specify how the Paper docs should be sorted. :ivar paper.ListPaperDocsArgs.sort_order: Allows user to specify the sort order of the result. :ivar paper.ListPaperDocsArgs.limit: Size limit per batch. The maximum number of docs that can be retrieved per batch is 1000. Higher value results in invalid arguments error. """ __slots__ = [ '_filter_by_value', '_sort_by_value', '_sort_order_value', '_limit_value', ] _has_required_fields = False def __init__(self, filter_by=None, sort_by=None, sort_order=None, limit=None): self._filter_by_value = bb.NOT_SET self._sort_by_value = bb.NOT_SET self._sort_order_value = bb.NOT_SET self._limit_value = bb.NOT_SET if filter_by is not None: self.filter_by = filter_by if sort_by is not None: self.sort_by = sort_by if sort_order is not None: self.sort_order = sort_order if limit is not None: self.limit = limit # Instance attribute type: ListPaperDocsFilterBy (validator is set below) filter_by = bb.Attribute("filter_by", user_defined=True) # Instance attribute type: ListPaperDocsSortBy (validator is set below) sort_by = bb.Attribute("sort_by", user_defined=True) # Instance attribute type: ListPaperDocsSortOrder (validator is set below) sort_order = bb.Attribute("sort_order", user_defined=True) # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListPaperDocsArgs, self)._process_custom_annotations(annotation_type, field_path, processor) ListPaperDocsArgs_validator = bv.Struct(ListPaperDocsArgs) class ListPaperDocsContinueArgs(bb.Struct): """ :ivar paper.ListPaperDocsContinueArgs.cursor: The cursor obtained from :meth:`dropbox.dropbox_client.Dropbox.paper_docs_list` or :meth:`dropbox.dropbox_client.Dropbox.paper_docs_list_continue`. Allows for pagination. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListPaperDocsContinueArgs, self)._process_custom_annotations(annotation_type, field_path, processor) ListPaperDocsContinueArgs_validator = bv.Struct(ListPaperDocsContinueArgs) class ListPaperDocsFilterBy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.ListPaperDocsFilterBy.docs_accessed: Fetches all Paper doc IDs that the user has ever accessed. :ivar paper.ListPaperDocsFilterBy.docs_created: Fetches only the Paper doc IDs that the user has created. """ _catch_all = 'other' # Attribute is overwritten below the class definition docs_accessed = None # Attribute is overwritten below the class definition docs_created = None # Attribute is overwritten below the class definition other = None def is_docs_accessed(self): """ Check if the union tag is ``docs_accessed``. :rtype: bool """ return self._tag == 'docs_accessed' def is_docs_created(self): """ Check if the union tag is ``docs_created``. :rtype: bool """ return self._tag == 'docs_created' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListPaperDocsFilterBy, self)._process_custom_annotations(annotation_type, field_path, processor) ListPaperDocsFilterBy_validator = bv.Union(ListPaperDocsFilterBy) class ListPaperDocsResponse(bb.Struct): """ :ivar paper.ListPaperDocsResponse.doc_ids: The list of Paper doc IDs that can be used to access the given Paper docs or supplied to other API methods. The list is sorted in the order specified by the initial call to :meth:`dropbox.dropbox_client.Dropbox.paper_docs_list`. :ivar paper.ListPaperDocsResponse.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.paper_docs_list_continue` to paginate through all files. The cursor preserves all properties as specified in the original call to :meth:`dropbox.dropbox_client.Dropbox.paper_docs_list`. :ivar paper.ListPaperDocsResponse.has_more: Will be set to True if a subsequent call with the provided cursor to :meth:`dropbox.dropbox_client.Dropbox.paper_docs_list_continue` returns immediately with some results. If set to False please allow some delay before making another call to :meth:`dropbox.dropbox_client.Dropbox.paper_docs_list_continue`. """ __slots__ = [ '_doc_ids_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, doc_ids=None, cursor=None, has_more=None): self._doc_ids_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if doc_ids is not None: self.doc_ids = doc_ids if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [str] (validator is set below) doc_ids = bb.Attribute("doc_ids") # Instance attribute type: Cursor (validator is set below) cursor = bb.Attribute("cursor", user_defined=True) # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListPaperDocsResponse, self)._process_custom_annotations(annotation_type, field_path, processor) ListPaperDocsResponse_validator = bv.Struct(ListPaperDocsResponse) class ListPaperDocsSortBy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.ListPaperDocsSortBy.accessed: Sorts the Paper docs by the time they were last accessed. :ivar paper.ListPaperDocsSortBy.modified: Sorts the Paper docs by the time they were last modified. :ivar paper.ListPaperDocsSortBy.created: Sorts the Paper docs by the creation time. """ _catch_all = 'other' # Attribute is overwritten below the class definition accessed = None # Attribute is overwritten below the class definition modified = None # Attribute is overwritten below the class definition created = None # Attribute is overwritten below the class definition other = None def is_accessed(self): """ Check if the union tag is ``accessed``. :rtype: bool """ return self._tag == 'accessed' def is_modified(self): """ Check if the union tag is ``modified``. :rtype: bool """ return self._tag == 'modified' def is_created(self): """ Check if the union tag is ``created``. :rtype: bool """ return self._tag == 'created' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListPaperDocsSortBy, self)._process_custom_annotations(annotation_type, field_path, processor) ListPaperDocsSortBy_validator = bv.Union(ListPaperDocsSortBy) class ListPaperDocsSortOrder(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.ListPaperDocsSortOrder.ascending: Sorts the search result in ascending order. :ivar paper.ListPaperDocsSortOrder.descending: Sorts the search result in descending order. """ _catch_all = 'other' # Attribute is overwritten below the class definition ascending = None # Attribute is overwritten below the class definition descending = None # Attribute is overwritten below the class definition other = None def is_ascending(self): """ Check if the union tag is ``ascending``. :rtype: bool """ return self._tag == 'ascending' def is_descending(self): """ Check if the union tag is ``descending``. :rtype: bool """ return self._tag == 'descending' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListPaperDocsSortOrder, self)._process_custom_annotations(annotation_type, field_path, processor) ListPaperDocsSortOrder_validator = bv.Union(ListPaperDocsSortOrder) class ListUsersCursorError(PaperApiBaseError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.ListUsersCursorError.doc_not_found: The required doc was not found. """ # Attribute is overwritten below the class definition doc_not_found = None @classmethod def cursor_error(cls, val): """ Create an instance of this class set to the ``cursor_error`` tag with value ``val``. :param PaperApiCursorError val: :rtype: ListUsersCursorError """ return cls('cursor_error', val) def is_doc_not_found(self): """ Check if the union tag is ``doc_not_found``. :rtype: bool """ return self._tag == 'doc_not_found' def is_cursor_error(self): """ Check if the union tag is ``cursor_error``. :rtype: bool """ return self._tag == 'cursor_error' def get_cursor_error(self): """ Only call this if :meth:`is_cursor_error` is true. :rtype: PaperApiCursorError """ if not self.is_cursor_error(): raise AttributeError("tag 'cursor_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListUsersCursorError, self)._process_custom_annotations(annotation_type, field_path, processor) ListUsersCursorError_validator = bv.Union(ListUsersCursorError) class ListUsersOnFolderArgs(RefPaperDoc): """ :ivar paper.ListUsersOnFolderArgs.limit: Size limit per batch. The maximum number of users that can be retrieved per batch is 1000. Higher value results in invalid arguments error. """ __slots__ = [ '_limit_value', ] _has_required_fields = True def __init__(self, doc_id=None, limit=None): super(ListUsersOnFolderArgs, self).__init__(doc_id) self._limit_value = bb.NOT_SET if limit is not None: self.limit = limit # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListUsersOnFolderArgs, self)._process_custom_annotations(annotation_type, field_path, processor) ListUsersOnFolderArgs_validator = bv.Struct(ListUsersOnFolderArgs) class ListUsersOnFolderContinueArgs(RefPaperDoc): """ :ivar paper.ListUsersOnFolderContinueArgs.cursor: The cursor obtained from :meth:`dropbox.dropbox_client.Dropbox.paper_docs_folder_users_list` or :meth:`dropbox.dropbox_client.Dropbox.paper_docs_folder_users_list_continue`. Allows for pagination. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, doc_id=None, cursor=None): super(ListUsersOnFolderContinueArgs, self).__init__(doc_id) self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListUsersOnFolderContinueArgs, self)._process_custom_annotations(annotation_type, field_path, processor) ListUsersOnFolderContinueArgs_validator = bv.Struct(ListUsersOnFolderContinueArgs) class ListUsersOnFolderResponse(bb.Struct): """ :ivar paper.ListUsersOnFolderResponse.invitees: List of email addresses that are invited on the Paper folder. :ivar paper.ListUsersOnFolderResponse.users: List of users that are invited on the Paper folder. :ivar paper.ListUsersOnFolderResponse.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.paper_docs_folder_users_list_continue` to paginate through all users. The cursor preserves all properties as specified in the original call to :meth:`dropbox.dropbox_client.Dropbox.paper_docs_folder_users_list`. :ivar paper.ListUsersOnFolderResponse.has_more: Will be set to True if a subsequent call with the provided cursor to :meth:`dropbox.dropbox_client.Dropbox.paper_docs_folder_users_list_continue` returns immediately with some results. If set to False please allow some delay before making another call to :meth:`dropbox.dropbox_client.Dropbox.paper_docs_folder_users_list_continue`. """ __slots__ = [ '_invitees_value', '_users_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, invitees=None, users=None, cursor=None, has_more=None): self._invitees_value = bb.NOT_SET self._users_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if invitees is not None: self.invitees = invitees if users is not None: self.users = users if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [sharing.InviteeInfo] (validator is set below) invitees = bb.Attribute("invitees") # Instance attribute type: list of [sharing.UserInfo] (validator is set below) users = bb.Attribute("users") # Instance attribute type: Cursor (validator is set below) cursor = bb.Attribute("cursor", user_defined=True) # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListUsersOnFolderResponse, self)._process_custom_annotations(annotation_type, field_path, processor) ListUsersOnFolderResponse_validator = bv.Struct(ListUsersOnFolderResponse) class ListUsersOnPaperDocArgs(RefPaperDoc): """ :ivar paper.ListUsersOnPaperDocArgs.limit: Size limit per batch. The maximum number of users that can be retrieved per batch is 1000. Higher value results in invalid arguments error. :ivar paper.ListUsersOnPaperDocArgs.filter_by: Specify this attribute if you want to obtain users that have already accessed the Paper doc. """ __slots__ = [ '_limit_value', '_filter_by_value', ] _has_required_fields = True def __init__(self, doc_id=None, limit=None, filter_by=None): super(ListUsersOnPaperDocArgs, self).__init__(doc_id) self._limit_value = bb.NOT_SET self._filter_by_value = bb.NOT_SET if limit is not None: self.limit = limit if filter_by is not None: self.filter_by = filter_by # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") # Instance attribute type: UserOnPaperDocFilter (validator is set below) filter_by = bb.Attribute("filter_by", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListUsersOnPaperDocArgs, self)._process_custom_annotations(annotation_type, field_path, processor) ListUsersOnPaperDocArgs_validator = bv.Struct(ListUsersOnPaperDocArgs) class ListUsersOnPaperDocContinueArgs(RefPaperDoc): """ :ivar paper.ListUsersOnPaperDocContinueArgs.cursor: The cursor obtained from :meth:`dropbox.dropbox_client.Dropbox.paper_docs_users_list` or :meth:`dropbox.dropbox_client.Dropbox.paper_docs_users_list_continue`. Allows for pagination. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, doc_id=None, cursor=None): super(ListUsersOnPaperDocContinueArgs, self).__init__(doc_id) self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListUsersOnPaperDocContinueArgs, self)._process_custom_annotations(annotation_type, field_path, processor) ListUsersOnPaperDocContinueArgs_validator = bv.Struct(ListUsersOnPaperDocContinueArgs) class ListUsersOnPaperDocResponse(bb.Struct): """ :ivar paper.ListUsersOnPaperDocResponse.invitees: List of email addresses with their respective permission levels that are invited on the Paper doc. :ivar paper.ListUsersOnPaperDocResponse.users: List of users with their respective permission levels that are invited on the Paper folder. :ivar paper.ListUsersOnPaperDocResponse.doc_owner: The Paper doc owner. This field is populated on every single response. :ivar paper.ListUsersOnPaperDocResponse.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.paper_docs_users_list_continue` to paginate through all users. The cursor preserves all properties as specified in the original call to :meth:`dropbox.dropbox_client.Dropbox.paper_docs_users_list`. :ivar paper.ListUsersOnPaperDocResponse.has_more: Will be set to True if a subsequent call with the provided cursor to :meth:`dropbox.dropbox_client.Dropbox.paper_docs_users_list_continue` returns immediately with some results. If set to False please allow some delay before making another call to :meth:`dropbox.dropbox_client.Dropbox.paper_docs_users_list_continue`. """ __slots__ = [ '_invitees_value', '_users_value', '_doc_owner_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, invitees=None, users=None, doc_owner=None, cursor=None, has_more=None): self._invitees_value = bb.NOT_SET self._users_value = bb.NOT_SET self._doc_owner_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if invitees is not None: self.invitees = invitees if users is not None: self.users = users if doc_owner is not None: self.doc_owner = doc_owner if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [InviteeInfoWithPermissionLevel] (validator is set below) invitees = bb.Attribute("invitees") # Instance attribute type: list of [UserInfoWithPermissionLevel] (validator is set below) users = bb.Attribute("users") # Instance attribute type: sharing.UserInfo (validator is set below) doc_owner = bb.Attribute("doc_owner", user_defined=True) # Instance attribute type: Cursor (validator is set below) cursor = bb.Attribute("cursor", user_defined=True) # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListUsersOnPaperDocResponse, self)._process_custom_annotations(annotation_type, field_path, processor) ListUsersOnPaperDocResponse_validator = bv.Struct(ListUsersOnPaperDocResponse) class PaperApiCursorError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.PaperApiCursorError.expired_cursor: The provided cursor is expired. :ivar paper.PaperApiCursorError.invalid_cursor: The provided cursor is invalid. :ivar paper.PaperApiCursorError.wrong_user_in_cursor: The provided cursor contains invalid user. :ivar paper.PaperApiCursorError.reset: Indicates that the cursor has been invalidated. Call the corresponding non-continue endpoint to obtain a new cursor. """ _catch_all = 'other' # Attribute is overwritten below the class definition expired_cursor = None # Attribute is overwritten below the class definition invalid_cursor = None # Attribute is overwritten below the class definition wrong_user_in_cursor = None # Attribute is overwritten below the class definition reset = None # Attribute is overwritten below the class definition other = None def is_expired_cursor(self): """ Check if the union tag is ``expired_cursor``. :rtype: bool """ return self._tag == 'expired_cursor' def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def is_wrong_user_in_cursor(self): """ Check if the union tag is ``wrong_user_in_cursor``. :rtype: bool """ return self._tag == 'wrong_user_in_cursor' def is_reset(self): """ Check if the union tag is ``reset``. :rtype: bool """ return self._tag == 'reset' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperApiCursorError, self)._process_custom_annotations(annotation_type, field_path, processor) PaperApiCursorError_validator = bv.Union(PaperApiCursorError) class PaperDocCreateArgs(bb.Struct): """ :ivar paper.PaperDocCreateArgs.parent_folder_id: The Paper folder ID where the Paper document should be created. The API user has to have write access to this folder or error is thrown. :ivar paper.PaperDocCreateArgs.import_format: The format of provided data. """ __slots__ = [ '_parent_folder_id_value', '_import_format_value', ] _has_required_fields = True def __init__(self, import_format=None, parent_folder_id=None): self._parent_folder_id_value = bb.NOT_SET self._import_format_value = bb.NOT_SET if parent_folder_id is not None: self.parent_folder_id = parent_folder_id if import_format is not None: self.import_format = import_format # Instance attribute type: str (validator is set below) parent_folder_id = bb.Attribute("parent_folder_id", nullable=True) # Instance attribute type: ImportFormat (validator is set below) import_format = bb.Attribute("import_format", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocCreateArgs, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocCreateArgs_validator = bv.Struct(PaperDocCreateArgs) class PaperDocCreateError(PaperApiBaseError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.PaperDocCreateError.content_malformed: The provided content was malformed and cannot be imported to Paper. :ivar paper.PaperDocCreateError.folder_not_found: The specified Paper folder is cannot be found. :ivar paper.PaperDocCreateError.doc_length_exceeded: The newly created Paper doc would be too large. Please split the content into multiple docs. :ivar paper.PaperDocCreateError.image_size_exceeded: The imported document contains an image that is too large. The current limit is 1MB. This only applies to HTML with data URI. """ # Attribute is overwritten below the class definition content_malformed = None # Attribute is overwritten below the class definition folder_not_found = None # Attribute is overwritten below the class definition doc_length_exceeded = None # Attribute is overwritten below the class definition image_size_exceeded = None def is_content_malformed(self): """ Check if the union tag is ``content_malformed``. :rtype: bool """ return self._tag == 'content_malformed' def is_folder_not_found(self): """ Check if the union tag is ``folder_not_found``. :rtype: bool """ return self._tag == 'folder_not_found' def is_doc_length_exceeded(self): """ Check if the union tag is ``doc_length_exceeded``. :rtype: bool """ return self._tag == 'doc_length_exceeded' def is_image_size_exceeded(self): """ Check if the union tag is ``image_size_exceeded``. :rtype: bool """ return self._tag == 'image_size_exceeded' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocCreateError, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocCreateError_validator = bv.Union(PaperDocCreateError) class PaperDocCreateUpdateResult(bb.Struct): """ :ivar paper.PaperDocCreateUpdateResult.doc_id: Doc ID of the newly created doc. :ivar paper.PaperDocCreateUpdateResult.revision: The Paper doc revision. Simply an ever increasing number. :ivar paper.PaperDocCreateUpdateResult.title: The Paper doc title. """ __slots__ = [ '_doc_id_value', '_revision_value', '_title_value', ] _has_required_fields = True def __init__(self, doc_id=None, revision=None, title=None): self._doc_id_value = bb.NOT_SET self._revision_value = bb.NOT_SET self._title_value = bb.NOT_SET if doc_id is not None: self.doc_id = doc_id if revision is not None: self.revision = revision if title is not None: self.title = title # Instance attribute type: str (validator is set below) doc_id = bb.Attribute("doc_id") # Instance attribute type: int (validator is set below) revision = bb.Attribute("revision") # Instance attribute type: str (validator is set below) title = bb.Attribute("title") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocCreateUpdateResult, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocCreateUpdateResult_validator = bv.Struct(PaperDocCreateUpdateResult) class PaperDocExport(RefPaperDoc): __slots__ = [ '_export_format_value', ] _has_required_fields = True def __init__(self, doc_id=None, export_format=None): super(PaperDocExport, self).__init__(doc_id) self._export_format_value = bb.NOT_SET if export_format is not None: self.export_format = export_format # Instance attribute type: ExportFormat (validator is set below) export_format = bb.Attribute("export_format", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocExport, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocExport_validator = bv.Struct(PaperDocExport) class PaperDocExportResult(bb.Struct): """ :ivar paper.PaperDocExportResult.owner: The Paper doc owner's email address. :ivar paper.PaperDocExportResult.title: The Paper doc title. :ivar paper.PaperDocExportResult.revision: The Paper doc revision. Simply an ever increasing number. :ivar paper.PaperDocExportResult.mime_type: MIME type of the export. This corresponds to :class:`ExportFormat` specified in the request. """ __slots__ = [ '_owner_value', '_title_value', '_revision_value', '_mime_type_value', ] _has_required_fields = True def __init__(self, owner=None, title=None, revision=None, mime_type=None): self._owner_value = bb.NOT_SET self._title_value = bb.NOT_SET self._revision_value = bb.NOT_SET self._mime_type_value = bb.NOT_SET if owner is not None: self.owner = owner if title is not None: self.title = title if revision is not None: self.revision = revision if mime_type is not None: self.mime_type = mime_type # Instance attribute type: str (validator is set below) owner = bb.Attribute("owner") # Instance attribute type: str (validator is set below) title = bb.Attribute("title") # Instance attribute type: int (validator is set below) revision = bb.Attribute("revision") # Instance attribute type: str (validator is set below) mime_type = bb.Attribute("mime_type") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocExportResult, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocExportResult_validator = bv.Struct(PaperDocExportResult) class PaperDocPermissionLevel(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.PaperDocPermissionLevel.edit: User will be granted edit permissions. :ivar paper.PaperDocPermissionLevel.view_and_comment: User will be granted view and comment permissions. """ _catch_all = 'other' # Attribute is overwritten below the class definition edit = None # Attribute is overwritten below the class definition view_and_comment = None # Attribute is overwritten below the class definition other = None def is_edit(self): """ Check if the union tag is ``edit``. :rtype: bool """ return self._tag == 'edit' def is_view_and_comment(self): """ Check if the union tag is ``view_and_comment``. :rtype: bool """ return self._tag == 'view_and_comment' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocPermissionLevel, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocPermissionLevel_validator = bv.Union(PaperDocPermissionLevel) class PaperDocSharingPolicy(RefPaperDoc): """ :ivar paper.PaperDocSharingPolicy.sharing_policy: The default sharing policy to be set for the Paper doc. """ __slots__ = [ '_sharing_policy_value', ] _has_required_fields = True def __init__(self, doc_id=None, sharing_policy=None): super(PaperDocSharingPolicy, self).__init__(doc_id) self._sharing_policy_value = bb.NOT_SET if sharing_policy is not None: self.sharing_policy = sharing_policy # Instance attribute type: SharingPolicy (validator is set below) sharing_policy = bb.Attribute("sharing_policy", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocSharingPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocSharingPolicy_validator = bv.Struct(PaperDocSharingPolicy) class PaperDocUpdateArgs(RefPaperDoc): """ :ivar paper.PaperDocUpdateArgs.doc_update_policy: The policy used for the current update call. :ivar paper.PaperDocUpdateArgs.revision: The latest doc revision. This value must match the head revision or an error code will be returned. This is to prevent colliding writes. :ivar paper.PaperDocUpdateArgs.import_format: The format of provided data. """ __slots__ = [ '_doc_update_policy_value', '_revision_value', '_import_format_value', ] _has_required_fields = True def __init__(self, doc_id=None, doc_update_policy=None, revision=None, import_format=None): super(PaperDocUpdateArgs, self).__init__(doc_id) self._doc_update_policy_value = bb.NOT_SET self._revision_value = bb.NOT_SET self._import_format_value = bb.NOT_SET if doc_update_policy is not None: self.doc_update_policy = doc_update_policy if revision is not None: self.revision = revision if import_format is not None: self.import_format = import_format # Instance attribute type: PaperDocUpdatePolicy (validator is set below) doc_update_policy = bb.Attribute("doc_update_policy", user_defined=True) # Instance attribute type: int (validator is set below) revision = bb.Attribute("revision") # Instance attribute type: ImportFormat (validator is set below) import_format = bb.Attribute("import_format", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocUpdateArgs, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocUpdateArgs_validator = bv.Struct(PaperDocUpdateArgs) class PaperDocUpdateError(DocLookupError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.PaperDocUpdateError.content_malformed: The provided content was malformed and cannot be imported to Paper. :ivar paper.PaperDocUpdateError.revision_mismatch: The provided revision does not match the document head. :ivar paper.PaperDocUpdateError.doc_length_exceeded: The newly created Paper doc would be too large, split the content into multiple docs. :ivar paper.PaperDocUpdateError.image_size_exceeded: The imported document contains an image that is too large. The current limit is 1MB. This only applies to HTML with data URI. :ivar paper.PaperDocUpdateError.doc_archived: This operation is not allowed on archived Paper docs. :ivar paper.PaperDocUpdateError.doc_deleted: This operation is not allowed on deleted Paper docs. """ # Attribute is overwritten below the class definition content_malformed = None # Attribute is overwritten below the class definition revision_mismatch = None # Attribute is overwritten below the class definition doc_length_exceeded = None # Attribute is overwritten below the class definition image_size_exceeded = None # Attribute is overwritten below the class definition doc_archived = None # Attribute is overwritten below the class definition doc_deleted = None def is_content_malformed(self): """ Check if the union tag is ``content_malformed``. :rtype: bool """ return self._tag == 'content_malformed' def is_revision_mismatch(self): """ Check if the union tag is ``revision_mismatch``. :rtype: bool """ return self._tag == 'revision_mismatch' def is_doc_length_exceeded(self): """ Check if the union tag is ``doc_length_exceeded``. :rtype: bool """ return self._tag == 'doc_length_exceeded' def is_image_size_exceeded(self): """ Check if the union tag is ``image_size_exceeded``. :rtype: bool """ return self._tag == 'image_size_exceeded' def is_doc_archived(self): """ Check if the union tag is ``doc_archived``. :rtype: bool """ return self._tag == 'doc_archived' def is_doc_deleted(self): """ Check if the union tag is ``doc_deleted``. :rtype: bool """ return self._tag == 'doc_deleted' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocUpdateError, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocUpdateError_validator = bv.Union(PaperDocUpdateError) class PaperDocUpdatePolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.PaperDocUpdatePolicy.append: The content will be appended to the doc. :ivar paper.PaperDocUpdatePolicy.prepend: The content will be prepended to the doc. The doc title will not be affected. :ivar paper.PaperDocUpdatePolicy.overwrite_all: The document will be overwitten at the head with the provided content. """ _catch_all = 'other' # Attribute is overwritten below the class definition append = None # Attribute is overwritten below the class definition prepend = None # Attribute is overwritten below the class definition overwrite_all = None # Attribute is overwritten below the class definition other = None def is_append(self): """ Check if the union tag is ``append``. :rtype: bool """ return self._tag == 'append' def is_prepend(self): """ Check if the union tag is ``prepend``. :rtype: bool """ return self._tag == 'prepend' def is_overwrite_all(self): """ Check if the union tag is ``overwrite_all``. :rtype: bool """ return self._tag == 'overwrite_all' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocUpdatePolicy, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocUpdatePolicy_validator = bv.Union(PaperDocUpdatePolicy) class PaperFolderCreateArg(bb.Struct): """ :ivar paper.PaperFolderCreateArg.name: The name of the new Paper folder. :ivar paper.PaperFolderCreateArg.parent_folder_id: The encrypted Paper folder Id where the new Paper folder should be created. The API user has to have write access to this folder or error is thrown. If not supplied, the new folder will be created at top level. :ivar paper.PaperFolderCreateArg.is_team_folder: Whether the folder to be created should be a team folder. This value will be ignored if parent_folder_id is supplied, as the new folder will inherit the type (private or team folder) from its parent. We will by default create a top-level private folder if both parent_folder_id and is_team_folder are not supplied. """ __slots__ = [ '_name_value', '_parent_folder_id_value', '_is_team_folder_value', ] _has_required_fields = True def __init__(self, name=None, parent_folder_id=None, is_team_folder=None): self._name_value = bb.NOT_SET self._parent_folder_id_value = bb.NOT_SET self._is_team_folder_value = bb.NOT_SET if name is not None: self.name = name if parent_folder_id is not None: self.parent_folder_id = parent_folder_id if is_team_folder is not None: self.is_team_folder = is_team_folder # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) parent_folder_id = bb.Attribute("parent_folder_id", nullable=True) # Instance attribute type: bool (validator is set below) is_team_folder = bb.Attribute("is_team_folder", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperFolderCreateArg, self)._process_custom_annotations(annotation_type, field_path, processor) PaperFolderCreateArg_validator = bv.Struct(PaperFolderCreateArg) class PaperFolderCreateError(PaperApiBaseError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.PaperFolderCreateError.folder_not_found: The specified parent Paper folder cannot be found. :ivar paper.PaperFolderCreateError.invalid_folder_id: The folder id cannot be decrypted to valid folder id. """ # Attribute is overwritten below the class definition folder_not_found = None # Attribute is overwritten below the class definition invalid_folder_id = None def is_folder_not_found(self): """ Check if the union tag is ``folder_not_found``. :rtype: bool """ return self._tag == 'folder_not_found' def is_invalid_folder_id(self): """ Check if the union tag is ``invalid_folder_id``. :rtype: bool """ return self._tag == 'invalid_folder_id' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperFolderCreateError, self)._process_custom_annotations(annotation_type, field_path, processor) PaperFolderCreateError_validator = bv.Union(PaperFolderCreateError) class PaperFolderCreateResult(bb.Struct): """ :ivar paper.PaperFolderCreateResult.folder_id: Folder ID of the newly created folder. """ __slots__ = [ '_folder_id_value', ] _has_required_fields = True def __init__(self, folder_id=None): self._folder_id_value = bb.NOT_SET if folder_id is not None: self.folder_id = folder_id # Instance attribute type: str (validator is set below) folder_id = bb.Attribute("folder_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperFolderCreateResult, self)._process_custom_annotations(annotation_type, field_path, processor) PaperFolderCreateResult_validator = bv.Struct(PaperFolderCreateResult) class RemovePaperDocUser(RefPaperDoc): """ :ivar paper.RemovePaperDocUser.member: User which should be removed from the Paper doc. Specify only email address or Dropbox account ID. """ __slots__ = [ '_member_value', ] _has_required_fields = True def __init__(self, doc_id=None, member=None): super(RemovePaperDocUser, self).__init__(doc_id) self._member_value = bb.NOT_SET if member is not None: self.member = member # Instance attribute type: sharing.MemberSelector (validator is set below) member = bb.Attribute("member", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemovePaperDocUser, self)._process_custom_annotations(annotation_type, field_path, processor) RemovePaperDocUser_validator = bv.Struct(RemovePaperDocUser) class SharingPolicy(bb.Struct): """ Sharing policy of Paper doc. :ivar paper.SharingPolicy.public_sharing_policy: This value applies to the non-team members. :ivar paper.SharingPolicy.team_sharing_policy: This value applies to the team members only. The value is null for all personal accounts. """ __slots__ = [ '_public_sharing_policy_value', '_team_sharing_policy_value', ] _has_required_fields = False def __init__(self, public_sharing_policy=None, team_sharing_policy=None): self._public_sharing_policy_value = bb.NOT_SET self._team_sharing_policy_value = bb.NOT_SET if public_sharing_policy is not None: self.public_sharing_policy = public_sharing_policy if team_sharing_policy is not None: self.team_sharing_policy = team_sharing_policy # Instance attribute type: SharingPublicPolicyType (validator is set below) public_sharing_policy = bb.Attribute("public_sharing_policy", nullable=True, user_defined=True) # Instance attribute type: SharingTeamPolicyType (validator is set below) team_sharing_policy = bb.Attribute("team_sharing_policy", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SharingPolicy_validator = bv.Struct(SharingPolicy) class SharingTeamPolicyType(bb.Union): """ The sharing policy type of the Paper doc. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.SharingTeamPolicyType.people_with_link_can_edit: Users who have a link to this doc can edit it. :ivar paper.SharingTeamPolicyType.people_with_link_can_view_and_comment: Users who have a link to this doc can view and comment on it. :ivar paper.SharingTeamPolicyType.invite_only: Users must be explicitly invited to this doc. """ _catch_all = None # Attribute is overwritten below the class definition people_with_link_can_edit = None # Attribute is overwritten below the class definition people_with_link_can_view_and_comment = None # Attribute is overwritten below the class definition invite_only = None def is_people_with_link_can_edit(self): """ Check if the union tag is ``people_with_link_can_edit``. :rtype: bool """ return self._tag == 'people_with_link_can_edit' def is_people_with_link_can_view_and_comment(self): """ Check if the union tag is ``people_with_link_can_view_and_comment``. :rtype: bool """ return self._tag == 'people_with_link_can_view_and_comment' def is_invite_only(self): """ Check if the union tag is ``invite_only``. :rtype: bool """ return self._tag == 'invite_only' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingTeamPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharingTeamPolicyType_validator = bv.Union(SharingTeamPolicyType) class SharingPublicPolicyType(SharingTeamPolicyType): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.SharingPublicPolicyType.disabled: Value used to indicate that doc sharing is enabled only within team. """ # Attribute is overwritten below the class definition disabled = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingPublicPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharingPublicPolicyType_validator = bv.Union(SharingPublicPolicyType) class UserInfoWithPermissionLevel(bb.Struct): """ :ivar paper.UserInfoWithPermissionLevel.user: User shared on the Paper doc. :ivar paper.UserInfoWithPermissionLevel.permission_level: Permission level for the user. """ __slots__ = [ '_user_value', '_permission_level_value', ] _has_required_fields = True def __init__(self, user=None, permission_level=None): self._user_value = bb.NOT_SET self._permission_level_value = bb.NOT_SET if user is not None: self.user = user if permission_level is not None: self.permission_level = permission_level # Instance attribute type: sharing.UserInfo (validator is set below) user = bb.Attribute("user", user_defined=True) # Instance attribute type: PaperDocPermissionLevel (validator is set below) permission_level = bb.Attribute("permission_level", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserInfoWithPermissionLevel, self)._process_custom_annotations(annotation_type, field_path, processor) UserInfoWithPermissionLevel_validator = bv.Struct(UserInfoWithPermissionLevel) class UserOnPaperDocFilter(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar paper.UserOnPaperDocFilter.visited: all users who have visited the Paper doc. :ivar paper.UserOnPaperDocFilter.shared: All uses who are shared on the Paper doc. This includes all users who have visited the Paper doc as well as those who have not. """ _catch_all = 'other' # Attribute is overwritten below the class definition visited = None # Attribute is overwritten below the class definition shared = None # Attribute is overwritten below the class definition other = None def is_visited(self): """ Check if the union tag is ``visited``. :rtype: bool """ return self._tag == 'visited' def is_shared(self): """ Check if the union tag is ``shared``. :rtype: bool """ return self._tag == 'shared' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserOnPaperDocFilter, self)._process_custom_annotations(annotation_type, field_path, processor) UserOnPaperDocFilter_validator = bv.Union(UserOnPaperDocFilter) # Paper doc ID. PaperDocId_validator = bv.String() AddMember.permission_level.validator = PaperDocPermissionLevel_validator AddMember.member.validator = sharing.MemberSelector_validator AddMember._all_field_names_ = set([ 'permission_level', 'member', ]) AddMember._all_fields_ = [ ('permission_level', AddMember.permission_level.validator), ('member', AddMember.member.validator), ] RefPaperDoc.doc_id.validator = PaperDocId_validator RefPaperDoc._all_field_names_ = set(['doc_id']) RefPaperDoc._all_fields_ = [('doc_id', RefPaperDoc.doc_id.validator)] AddPaperDocUser.members.validator = bv.List(AddMember_validator, max_items=20) AddPaperDocUser.custom_message.validator = bv.Nullable(bv.String()) AddPaperDocUser.quiet.validator = bv.Boolean() AddPaperDocUser._all_field_names_ = RefPaperDoc._all_field_names_.union(set([ 'members', 'custom_message', 'quiet', ])) AddPaperDocUser._all_fields_ = RefPaperDoc._all_fields_ + [ ('members', AddPaperDocUser.members.validator), ('custom_message', AddPaperDocUser.custom_message.validator), ('quiet', AddPaperDocUser.quiet.validator), ] AddPaperDocUserMemberResult.member.validator = sharing.MemberSelector_validator AddPaperDocUserMemberResult.result.validator = AddPaperDocUserResult_validator AddPaperDocUserMemberResult._all_field_names_ = set([ 'member', 'result', ]) AddPaperDocUserMemberResult._all_fields_ = [ ('member', AddPaperDocUserMemberResult.member.validator), ('result', AddPaperDocUserMemberResult.result.validator), ] AddPaperDocUserResult._success_validator = bv.Void() AddPaperDocUserResult._unknown_error_validator = bv.Void() AddPaperDocUserResult._sharing_outside_team_disabled_validator = bv.Void() AddPaperDocUserResult._daily_limit_reached_validator = bv.Void() AddPaperDocUserResult._user_is_owner_validator = bv.Void() AddPaperDocUserResult._failed_user_data_retrieval_validator = bv.Void() AddPaperDocUserResult._permission_already_granted_validator = bv.Void() AddPaperDocUserResult._other_validator = bv.Void() AddPaperDocUserResult._tagmap = { 'success': AddPaperDocUserResult._success_validator, 'unknown_error': AddPaperDocUserResult._unknown_error_validator, 'sharing_outside_team_disabled': AddPaperDocUserResult._sharing_outside_team_disabled_validator, 'daily_limit_reached': AddPaperDocUserResult._daily_limit_reached_validator, 'user_is_owner': AddPaperDocUserResult._user_is_owner_validator, 'failed_user_data_retrieval': AddPaperDocUserResult._failed_user_data_retrieval_validator, 'permission_already_granted': AddPaperDocUserResult._permission_already_granted_validator, 'other': AddPaperDocUserResult._other_validator, } AddPaperDocUserResult.success = AddPaperDocUserResult('success') AddPaperDocUserResult.unknown_error = AddPaperDocUserResult('unknown_error') AddPaperDocUserResult.sharing_outside_team_disabled = AddPaperDocUserResult('sharing_outside_team_disabled') AddPaperDocUserResult.daily_limit_reached = AddPaperDocUserResult('daily_limit_reached') AddPaperDocUserResult.user_is_owner = AddPaperDocUserResult('user_is_owner') AddPaperDocUserResult.failed_user_data_retrieval = AddPaperDocUserResult('failed_user_data_retrieval') AddPaperDocUserResult.permission_already_granted = AddPaperDocUserResult('permission_already_granted') AddPaperDocUserResult.other = AddPaperDocUserResult('other') Cursor.value.validator = bv.String() Cursor.expiration.validator = bv.Nullable(common.DropboxTimestamp_validator) Cursor._all_field_names_ = set([ 'value', 'expiration', ]) Cursor._all_fields_ = [ ('value', Cursor.value.validator), ('expiration', Cursor.expiration.validator), ] PaperApiBaseError._insufficient_permissions_validator = bv.Void() PaperApiBaseError._other_validator = bv.Void() PaperApiBaseError._tagmap = { 'insufficient_permissions': PaperApiBaseError._insufficient_permissions_validator, 'other': PaperApiBaseError._other_validator, } PaperApiBaseError.insufficient_permissions = PaperApiBaseError('insufficient_permissions') PaperApiBaseError.other = PaperApiBaseError('other') DocLookupError._doc_not_found_validator = bv.Void() DocLookupError._tagmap = { 'doc_not_found': DocLookupError._doc_not_found_validator, } DocLookupError._tagmap.update(PaperApiBaseError._tagmap) DocLookupError.doc_not_found = DocLookupError('doc_not_found') DocSubscriptionLevel._default_validator = bv.Void() DocSubscriptionLevel._ignore_validator = bv.Void() DocSubscriptionLevel._every_validator = bv.Void() DocSubscriptionLevel._no_email_validator = bv.Void() DocSubscriptionLevel._tagmap = { 'default': DocSubscriptionLevel._default_validator, 'ignore': DocSubscriptionLevel._ignore_validator, 'every': DocSubscriptionLevel._every_validator, 'no_email': DocSubscriptionLevel._no_email_validator, } DocSubscriptionLevel.default = DocSubscriptionLevel('default') DocSubscriptionLevel.ignore = DocSubscriptionLevel('ignore') DocSubscriptionLevel.every = DocSubscriptionLevel('every') DocSubscriptionLevel.no_email = DocSubscriptionLevel('no_email') ExportFormat._html_validator = bv.Void() ExportFormat._markdown_validator = bv.Void() ExportFormat._other_validator = bv.Void() ExportFormat._tagmap = { 'html': ExportFormat._html_validator, 'markdown': ExportFormat._markdown_validator, 'other': ExportFormat._other_validator, } ExportFormat.html = ExportFormat('html') ExportFormat.markdown = ExportFormat('markdown') ExportFormat.other = ExportFormat('other') Folder.id.validator = bv.String() Folder.name.validator = bv.String() Folder._all_field_names_ = set([ 'id', 'name', ]) Folder._all_fields_ = [ ('id', Folder.id.validator), ('name', Folder.name.validator), ] FolderSharingPolicyType._team_validator = bv.Void() FolderSharingPolicyType._invite_only_validator = bv.Void() FolderSharingPolicyType._tagmap = { 'team': FolderSharingPolicyType._team_validator, 'invite_only': FolderSharingPolicyType._invite_only_validator, } FolderSharingPolicyType.team = FolderSharingPolicyType('team') FolderSharingPolicyType.invite_only = FolderSharingPolicyType('invite_only') FolderSubscriptionLevel._none_validator = bv.Void() FolderSubscriptionLevel._activity_only_validator = bv.Void() FolderSubscriptionLevel._daily_emails_validator = bv.Void() FolderSubscriptionLevel._weekly_emails_validator = bv.Void() FolderSubscriptionLevel._tagmap = { 'none': FolderSubscriptionLevel._none_validator, 'activity_only': FolderSubscriptionLevel._activity_only_validator, 'daily_emails': FolderSubscriptionLevel._daily_emails_validator, 'weekly_emails': FolderSubscriptionLevel._weekly_emails_validator, } FolderSubscriptionLevel.none = FolderSubscriptionLevel('none') FolderSubscriptionLevel.activity_only = FolderSubscriptionLevel('activity_only') FolderSubscriptionLevel.daily_emails = FolderSubscriptionLevel('daily_emails') FolderSubscriptionLevel.weekly_emails = FolderSubscriptionLevel('weekly_emails') FoldersContainingPaperDoc.folder_sharing_policy_type.validator = bv.Nullable(FolderSharingPolicyType_validator) FoldersContainingPaperDoc.folders.validator = bv.Nullable(bv.List(Folder_validator)) FoldersContainingPaperDoc._all_field_names_ = set([ 'folder_sharing_policy_type', 'folders', ]) FoldersContainingPaperDoc._all_fields_ = [ ('folder_sharing_policy_type', FoldersContainingPaperDoc.folder_sharing_policy_type.validator), ('folders', FoldersContainingPaperDoc.folders.validator), ] ImportFormat._html_validator = bv.Void() ImportFormat._markdown_validator = bv.Void() ImportFormat._plain_text_validator = bv.Void() ImportFormat._other_validator = bv.Void() ImportFormat._tagmap = { 'html': ImportFormat._html_validator, 'markdown': ImportFormat._markdown_validator, 'plain_text': ImportFormat._plain_text_validator, 'other': ImportFormat._other_validator, } ImportFormat.html = ImportFormat('html') ImportFormat.markdown = ImportFormat('markdown') ImportFormat.plain_text = ImportFormat('plain_text') ImportFormat.other = ImportFormat('other') InviteeInfoWithPermissionLevel.invitee.validator = sharing.InviteeInfo_validator InviteeInfoWithPermissionLevel.permission_level.validator = PaperDocPermissionLevel_validator InviteeInfoWithPermissionLevel._all_field_names_ = set([ 'invitee', 'permission_level', ]) InviteeInfoWithPermissionLevel._all_fields_ = [ ('invitee', InviteeInfoWithPermissionLevel.invitee.validator), ('permission_level', InviteeInfoWithPermissionLevel.permission_level.validator), ] ListDocsCursorError._cursor_error_validator = PaperApiCursorError_validator ListDocsCursorError._other_validator = bv.Void() ListDocsCursorError._tagmap = { 'cursor_error': ListDocsCursorError._cursor_error_validator, 'other': ListDocsCursorError._other_validator, } ListDocsCursorError.other = ListDocsCursorError('other') ListPaperDocsArgs.filter_by.validator = ListPaperDocsFilterBy_validator ListPaperDocsArgs.sort_by.validator = ListPaperDocsSortBy_validator ListPaperDocsArgs.sort_order.validator = ListPaperDocsSortOrder_validator ListPaperDocsArgs.limit.validator = bv.Int32(min_value=1, max_value=1000) ListPaperDocsArgs._all_field_names_ = set([ 'filter_by', 'sort_by', 'sort_order', 'limit', ]) ListPaperDocsArgs._all_fields_ = [ ('filter_by', ListPaperDocsArgs.filter_by.validator), ('sort_by', ListPaperDocsArgs.sort_by.validator), ('sort_order', ListPaperDocsArgs.sort_order.validator), ('limit', ListPaperDocsArgs.limit.validator), ] ListPaperDocsContinueArgs.cursor.validator = bv.String() ListPaperDocsContinueArgs._all_field_names_ = set(['cursor']) ListPaperDocsContinueArgs._all_fields_ = [('cursor', ListPaperDocsContinueArgs.cursor.validator)] ListPaperDocsFilterBy._docs_accessed_validator = bv.Void() ListPaperDocsFilterBy._docs_created_validator = bv.Void() ListPaperDocsFilterBy._other_validator = bv.Void() ListPaperDocsFilterBy._tagmap = { 'docs_accessed': ListPaperDocsFilterBy._docs_accessed_validator, 'docs_created': ListPaperDocsFilterBy._docs_created_validator, 'other': ListPaperDocsFilterBy._other_validator, } ListPaperDocsFilterBy.docs_accessed = ListPaperDocsFilterBy('docs_accessed') ListPaperDocsFilterBy.docs_created = ListPaperDocsFilterBy('docs_created') ListPaperDocsFilterBy.other = ListPaperDocsFilterBy('other') ListPaperDocsResponse.doc_ids.validator = bv.List(PaperDocId_validator) ListPaperDocsResponse.cursor.validator = Cursor_validator ListPaperDocsResponse.has_more.validator = bv.Boolean() ListPaperDocsResponse._all_field_names_ = set([ 'doc_ids', 'cursor', 'has_more', ]) ListPaperDocsResponse._all_fields_ = [ ('doc_ids', ListPaperDocsResponse.doc_ids.validator), ('cursor', ListPaperDocsResponse.cursor.validator), ('has_more', ListPaperDocsResponse.has_more.validator), ] ListPaperDocsSortBy._accessed_validator = bv.Void() ListPaperDocsSortBy._modified_validator = bv.Void() ListPaperDocsSortBy._created_validator = bv.Void() ListPaperDocsSortBy._other_validator = bv.Void() ListPaperDocsSortBy._tagmap = { 'accessed': ListPaperDocsSortBy._accessed_validator, 'modified': ListPaperDocsSortBy._modified_validator, 'created': ListPaperDocsSortBy._created_validator, 'other': ListPaperDocsSortBy._other_validator, } ListPaperDocsSortBy.accessed = ListPaperDocsSortBy('accessed') ListPaperDocsSortBy.modified = ListPaperDocsSortBy('modified') ListPaperDocsSortBy.created = ListPaperDocsSortBy('created') ListPaperDocsSortBy.other = ListPaperDocsSortBy('other') ListPaperDocsSortOrder._ascending_validator = bv.Void() ListPaperDocsSortOrder._descending_validator = bv.Void() ListPaperDocsSortOrder._other_validator = bv.Void() ListPaperDocsSortOrder._tagmap = { 'ascending': ListPaperDocsSortOrder._ascending_validator, 'descending': ListPaperDocsSortOrder._descending_validator, 'other': ListPaperDocsSortOrder._other_validator, } ListPaperDocsSortOrder.ascending = ListPaperDocsSortOrder('ascending') ListPaperDocsSortOrder.descending = ListPaperDocsSortOrder('descending') ListPaperDocsSortOrder.other = ListPaperDocsSortOrder('other') ListUsersCursorError._doc_not_found_validator = bv.Void() ListUsersCursorError._cursor_error_validator = PaperApiCursorError_validator ListUsersCursorError._tagmap = { 'doc_not_found': ListUsersCursorError._doc_not_found_validator, 'cursor_error': ListUsersCursorError._cursor_error_validator, } ListUsersCursorError._tagmap.update(PaperApiBaseError._tagmap) ListUsersCursorError.doc_not_found = ListUsersCursorError('doc_not_found') ListUsersOnFolderArgs.limit.validator = bv.Int32(min_value=1, max_value=1000) ListUsersOnFolderArgs._all_field_names_ = RefPaperDoc._all_field_names_.union(set(['limit'])) ListUsersOnFolderArgs._all_fields_ = RefPaperDoc._all_fields_ + [('limit', ListUsersOnFolderArgs.limit.validator)] ListUsersOnFolderContinueArgs.cursor.validator = bv.String() ListUsersOnFolderContinueArgs._all_field_names_ = RefPaperDoc._all_field_names_.union(set(['cursor'])) ListUsersOnFolderContinueArgs._all_fields_ = RefPaperDoc._all_fields_ + [('cursor', ListUsersOnFolderContinueArgs.cursor.validator)] ListUsersOnFolderResponse.invitees.validator = bv.List(sharing.InviteeInfo_validator) ListUsersOnFolderResponse.users.validator = bv.List(sharing.UserInfo_validator) ListUsersOnFolderResponse.cursor.validator = Cursor_validator ListUsersOnFolderResponse.has_more.validator = bv.Boolean() ListUsersOnFolderResponse._all_field_names_ = set([ 'invitees', 'users', 'cursor', 'has_more', ]) ListUsersOnFolderResponse._all_fields_ = [ ('invitees', ListUsersOnFolderResponse.invitees.validator), ('users', ListUsersOnFolderResponse.users.validator), ('cursor', ListUsersOnFolderResponse.cursor.validator), ('has_more', ListUsersOnFolderResponse.has_more.validator), ] ListUsersOnPaperDocArgs.limit.validator = bv.Int32(min_value=1, max_value=1000) ListUsersOnPaperDocArgs.filter_by.validator = UserOnPaperDocFilter_validator ListUsersOnPaperDocArgs._all_field_names_ = RefPaperDoc._all_field_names_.union(set([ 'limit', 'filter_by', ])) ListUsersOnPaperDocArgs._all_fields_ = RefPaperDoc._all_fields_ + [ ('limit', ListUsersOnPaperDocArgs.limit.validator), ('filter_by', ListUsersOnPaperDocArgs.filter_by.validator), ] ListUsersOnPaperDocContinueArgs.cursor.validator = bv.String() ListUsersOnPaperDocContinueArgs._all_field_names_ = RefPaperDoc._all_field_names_.union(set(['cursor'])) ListUsersOnPaperDocContinueArgs._all_fields_ = RefPaperDoc._all_fields_ + [('cursor', ListUsersOnPaperDocContinueArgs.cursor.validator)] ListUsersOnPaperDocResponse.invitees.validator = bv.List(InviteeInfoWithPermissionLevel_validator) ListUsersOnPaperDocResponse.users.validator = bv.List(UserInfoWithPermissionLevel_validator) ListUsersOnPaperDocResponse.doc_owner.validator = sharing.UserInfo_validator ListUsersOnPaperDocResponse.cursor.validator = Cursor_validator ListUsersOnPaperDocResponse.has_more.validator = bv.Boolean() ListUsersOnPaperDocResponse._all_field_names_ = set([ 'invitees', 'users', 'doc_owner', 'cursor', 'has_more', ]) ListUsersOnPaperDocResponse._all_fields_ = [ ('invitees', ListUsersOnPaperDocResponse.invitees.validator), ('users', ListUsersOnPaperDocResponse.users.validator), ('doc_owner', ListUsersOnPaperDocResponse.doc_owner.validator), ('cursor', ListUsersOnPaperDocResponse.cursor.validator), ('has_more', ListUsersOnPaperDocResponse.has_more.validator), ] PaperApiCursorError._expired_cursor_validator = bv.Void() PaperApiCursorError._invalid_cursor_validator = bv.Void() PaperApiCursorError._wrong_user_in_cursor_validator = bv.Void() PaperApiCursorError._reset_validator = bv.Void() PaperApiCursorError._other_validator = bv.Void() PaperApiCursorError._tagmap = { 'expired_cursor': PaperApiCursorError._expired_cursor_validator, 'invalid_cursor': PaperApiCursorError._invalid_cursor_validator, 'wrong_user_in_cursor': PaperApiCursorError._wrong_user_in_cursor_validator, 'reset': PaperApiCursorError._reset_validator, 'other': PaperApiCursorError._other_validator, } PaperApiCursorError.expired_cursor = PaperApiCursorError('expired_cursor') PaperApiCursorError.invalid_cursor = PaperApiCursorError('invalid_cursor') PaperApiCursorError.wrong_user_in_cursor = PaperApiCursorError('wrong_user_in_cursor') PaperApiCursorError.reset = PaperApiCursorError('reset') PaperApiCursorError.other = PaperApiCursorError('other') PaperDocCreateArgs.parent_folder_id.validator = bv.Nullable(bv.String()) PaperDocCreateArgs.import_format.validator = ImportFormat_validator PaperDocCreateArgs._all_field_names_ = set([ 'parent_folder_id', 'import_format', ]) PaperDocCreateArgs._all_fields_ = [ ('parent_folder_id', PaperDocCreateArgs.parent_folder_id.validator), ('import_format', PaperDocCreateArgs.import_format.validator), ] PaperDocCreateError._content_malformed_validator = bv.Void() PaperDocCreateError._folder_not_found_validator = bv.Void() PaperDocCreateError._doc_length_exceeded_validator = bv.Void() PaperDocCreateError._image_size_exceeded_validator = bv.Void() PaperDocCreateError._tagmap = { 'content_malformed': PaperDocCreateError._content_malformed_validator, 'folder_not_found': PaperDocCreateError._folder_not_found_validator, 'doc_length_exceeded': PaperDocCreateError._doc_length_exceeded_validator, 'image_size_exceeded': PaperDocCreateError._image_size_exceeded_validator, } PaperDocCreateError._tagmap.update(PaperApiBaseError._tagmap) PaperDocCreateError.content_malformed = PaperDocCreateError('content_malformed') PaperDocCreateError.folder_not_found = PaperDocCreateError('folder_not_found') PaperDocCreateError.doc_length_exceeded = PaperDocCreateError('doc_length_exceeded') PaperDocCreateError.image_size_exceeded = PaperDocCreateError('image_size_exceeded') PaperDocCreateUpdateResult.doc_id.validator = bv.String() PaperDocCreateUpdateResult.revision.validator = bv.Int64() PaperDocCreateUpdateResult.title.validator = bv.String() PaperDocCreateUpdateResult._all_field_names_ = set([ 'doc_id', 'revision', 'title', ]) PaperDocCreateUpdateResult._all_fields_ = [ ('doc_id', PaperDocCreateUpdateResult.doc_id.validator), ('revision', PaperDocCreateUpdateResult.revision.validator), ('title', PaperDocCreateUpdateResult.title.validator), ] PaperDocExport.export_format.validator = ExportFormat_validator PaperDocExport._all_field_names_ = RefPaperDoc._all_field_names_.union(set(['export_format'])) PaperDocExport._all_fields_ = RefPaperDoc._all_fields_ + [('export_format', PaperDocExport.export_format.validator)] PaperDocExportResult.owner.validator = bv.String() PaperDocExportResult.title.validator = bv.String() PaperDocExportResult.revision.validator = bv.Int64() PaperDocExportResult.mime_type.validator = bv.String() PaperDocExportResult._all_field_names_ = set([ 'owner', 'title', 'revision', 'mime_type', ]) PaperDocExportResult._all_fields_ = [ ('owner', PaperDocExportResult.owner.validator), ('title', PaperDocExportResult.title.validator), ('revision', PaperDocExportResult.revision.validator), ('mime_type', PaperDocExportResult.mime_type.validator), ] PaperDocPermissionLevel._edit_validator = bv.Void() PaperDocPermissionLevel._view_and_comment_validator = bv.Void() PaperDocPermissionLevel._other_validator = bv.Void() PaperDocPermissionLevel._tagmap = { 'edit': PaperDocPermissionLevel._edit_validator, 'view_and_comment': PaperDocPermissionLevel._view_and_comment_validator, 'other': PaperDocPermissionLevel._other_validator, } PaperDocPermissionLevel.edit = PaperDocPermissionLevel('edit') PaperDocPermissionLevel.view_and_comment = PaperDocPermissionLevel('view_and_comment') PaperDocPermissionLevel.other = PaperDocPermissionLevel('other') PaperDocSharingPolicy.sharing_policy.validator = SharingPolicy_validator PaperDocSharingPolicy._all_field_names_ = RefPaperDoc._all_field_names_.union(set(['sharing_policy'])) PaperDocSharingPolicy._all_fields_ = RefPaperDoc._all_fields_ + [('sharing_policy', PaperDocSharingPolicy.sharing_policy.validator)] PaperDocUpdateArgs.doc_update_policy.validator = PaperDocUpdatePolicy_validator PaperDocUpdateArgs.revision.validator = bv.Int64() PaperDocUpdateArgs.import_format.validator = ImportFormat_validator PaperDocUpdateArgs._all_field_names_ = RefPaperDoc._all_field_names_.union(set([ 'doc_update_policy', 'revision', 'import_format', ])) PaperDocUpdateArgs._all_fields_ = RefPaperDoc._all_fields_ + [ ('doc_update_policy', PaperDocUpdateArgs.doc_update_policy.validator), ('revision', PaperDocUpdateArgs.revision.validator), ('import_format', PaperDocUpdateArgs.import_format.validator), ] PaperDocUpdateError._content_malformed_validator = bv.Void() PaperDocUpdateError._revision_mismatch_validator = bv.Void() PaperDocUpdateError._doc_length_exceeded_validator = bv.Void() PaperDocUpdateError._image_size_exceeded_validator = bv.Void() PaperDocUpdateError._doc_archived_validator = bv.Void() PaperDocUpdateError._doc_deleted_validator = bv.Void() PaperDocUpdateError._tagmap = { 'content_malformed': PaperDocUpdateError._content_malformed_validator, 'revision_mismatch': PaperDocUpdateError._revision_mismatch_validator, 'doc_length_exceeded': PaperDocUpdateError._doc_length_exceeded_validator, 'image_size_exceeded': PaperDocUpdateError._image_size_exceeded_validator, 'doc_archived': PaperDocUpdateError._doc_archived_validator, 'doc_deleted': PaperDocUpdateError._doc_deleted_validator, } PaperDocUpdateError._tagmap.update(DocLookupError._tagmap) PaperDocUpdateError.content_malformed = PaperDocUpdateError('content_malformed') PaperDocUpdateError.revision_mismatch = PaperDocUpdateError('revision_mismatch') PaperDocUpdateError.doc_length_exceeded = PaperDocUpdateError('doc_length_exceeded') PaperDocUpdateError.image_size_exceeded = PaperDocUpdateError('image_size_exceeded') PaperDocUpdateError.doc_archived = PaperDocUpdateError('doc_archived') PaperDocUpdateError.doc_deleted = PaperDocUpdateError('doc_deleted') PaperDocUpdatePolicy._append_validator = bv.Void() PaperDocUpdatePolicy._prepend_validator = bv.Void() PaperDocUpdatePolicy._overwrite_all_validator = bv.Void() PaperDocUpdatePolicy._other_validator = bv.Void() PaperDocUpdatePolicy._tagmap = { 'append': PaperDocUpdatePolicy._append_validator, 'prepend': PaperDocUpdatePolicy._prepend_validator, 'overwrite_all': PaperDocUpdatePolicy._overwrite_all_validator, 'other': PaperDocUpdatePolicy._other_validator, } PaperDocUpdatePolicy.append = PaperDocUpdatePolicy('append') PaperDocUpdatePolicy.prepend = PaperDocUpdatePolicy('prepend') PaperDocUpdatePolicy.overwrite_all = PaperDocUpdatePolicy('overwrite_all') PaperDocUpdatePolicy.other = PaperDocUpdatePolicy('other') PaperFolderCreateArg.name.validator = bv.String() PaperFolderCreateArg.parent_folder_id.validator = bv.Nullable(bv.String()) PaperFolderCreateArg.is_team_folder.validator = bv.Nullable(bv.Boolean()) PaperFolderCreateArg._all_field_names_ = set([ 'name', 'parent_folder_id', 'is_team_folder', ]) PaperFolderCreateArg._all_fields_ = [ ('name', PaperFolderCreateArg.name.validator), ('parent_folder_id', PaperFolderCreateArg.parent_folder_id.validator), ('is_team_folder', PaperFolderCreateArg.is_team_folder.validator), ] PaperFolderCreateError._folder_not_found_validator = bv.Void() PaperFolderCreateError._invalid_folder_id_validator = bv.Void() PaperFolderCreateError._tagmap = { 'folder_not_found': PaperFolderCreateError._folder_not_found_validator, 'invalid_folder_id': PaperFolderCreateError._invalid_folder_id_validator, } PaperFolderCreateError._tagmap.update(PaperApiBaseError._tagmap) PaperFolderCreateError.folder_not_found = PaperFolderCreateError('folder_not_found') PaperFolderCreateError.invalid_folder_id = PaperFolderCreateError('invalid_folder_id') PaperFolderCreateResult.folder_id.validator = bv.String() PaperFolderCreateResult._all_field_names_ = set(['folder_id']) PaperFolderCreateResult._all_fields_ = [('folder_id', PaperFolderCreateResult.folder_id.validator)] RemovePaperDocUser.member.validator = sharing.MemberSelector_validator RemovePaperDocUser._all_field_names_ = RefPaperDoc._all_field_names_.union(set(['member'])) RemovePaperDocUser._all_fields_ = RefPaperDoc._all_fields_ + [('member', RemovePaperDocUser.member.validator)] SharingPolicy.public_sharing_policy.validator = bv.Nullable(SharingPublicPolicyType_validator) SharingPolicy.team_sharing_policy.validator = bv.Nullable(SharingTeamPolicyType_validator) SharingPolicy._all_field_names_ = set([ 'public_sharing_policy', 'team_sharing_policy', ]) SharingPolicy._all_fields_ = [ ('public_sharing_policy', SharingPolicy.public_sharing_policy.validator), ('team_sharing_policy', SharingPolicy.team_sharing_policy.validator), ] SharingTeamPolicyType._people_with_link_can_edit_validator = bv.Void() SharingTeamPolicyType._people_with_link_can_view_and_comment_validator = bv.Void() SharingTeamPolicyType._invite_only_validator = bv.Void() SharingTeamPolicyType._tagmap = { 'people_with_link_can_edit': SharingTeamPolicyType._people_with_link_can_edit_validator, 'people_with_link_can_view_and_comment': SharingTeamPolicyType._people_with_link_can_view_and_comment_validator, 'invite_only': SharingTeamPolicyType._invite_only_validator, } SharingTeamPolicyType.people_with_link_can_edit = SharingTeamPolicyType('people_with_link_can_edit') SharingTeamPolicyType.people_with_link_can_view_and_comment = SharingTeamPolicyType('people_with_link_can_view_and_comment') SharingTeamPolicyType.invite_only = SharingTeamPolicyType('invite_only') SharingPublicPolicyType._disabled_validator = bv.Void() SharingPublicPolicyType._tagmap = { 'disabled': SharingPublicPolicyType._disabled_validator, } SharingPublicPolicyType._tagmap.update(SharingTeamPolicyType._tagmap) SharingPublicPolicyType.disabled = SharingPublicPolicyType('disabled') UserInfoWithPermissionLevel.user.validator = sharing.UserInfo_validator UserInfoWithPermissionLevel.permission_level.validator = PaperDocPermissionLevel_validator UserInfoWithPermissionLevel._all_field_names_ = set([ 'user', 'permission_level', ]) UserInfoWithPermissionLevel._all_fields_ = [ ('user', UserInfoWithPermissionLevel.user.validator), ('permission_level', UserInfoWithPermissionLevel.permission_level.validator), ] UserOnPaperDocFilter._visited_validator = bv.Void() UserOnPaperDocFilter._shared_validator = bv.Void() UserOnPaperDocFilter._other_validator = bv.Void() UserOnPaperDocFilter._tagmap = { 'visited': UserOnPaperDocFilter._visited_validator, 'shared': UserOnPaperDocFilter._shared_validator, 'other': UserOnPaperDocFilter._other_validator, } UserOnPaperDocFilter.visited = UserOnPaperDocFilter('visited') UserOnPaperDocFilter.shared = UserOnPaperDocFilter('shared') UserOnPaperDocFilter.other = UserOnPaperDocFilter('other') AddMember.permission_level.default = PaperDocPermissionLevel.edit AddPaperDocUser.quiet.default = False ListPaperDocsArgs.filter_by.default = ListPaperDocsFilterBy.docs_accessed ListPaperDocsArgs.sort_by.default = ListPaperDocsSortBy.accessed ListPaperDocsArgs.sort_order.default = ListPaperDocsSortOrder.ascending ListPaperDocsArgs.limit.default = 1000 ListUsersOnFolderArgs.limit.default = 1000 ListUsersOnPaperDocArgs.limit.default = 1000 ListUsersOnPaperDocArgs.filter_by.default = UserOnPaperDocFilter.shared docs_archive = bb.Route( 'docs/archive', 1, True, RefPaperDoc_validator, bv.Void(), DocLookupError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) docs_create = bb.Route( 'docs/create', 1, True, PaperDocCreateArgs_validator, PaperDocCreateUpdateResult_validator, PaperDocCreateError_validator, {'auth': 'user', 'host': 'api', 'style': 'upload'}, ) docs_download = bb.Route( 'docs/download', 1, True, PaperDocExport_validator, PaperDocExportResult_validator, DocLookupError_validator, {'auth': 'user', 'host': 'api', 'style': 'download'}, ) docs_folder_users_list = bb.Route( 'docs/folder_users/list', 1, True, ListUsersOnFolderArgs_validator, ListUsersOnFolderResponse_validator, DocLookupError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) docs_folder_users_list_continue = bb.Route( 'docs/folder_users/list/continue', 1, True, ListUsersOnFolderContinueArgs_validator, ListUsersOnFolderResponse_validator, ListUsersCursorError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) docs_get_folder_info = bb.Route( 'docs/get_folder_info', 1, True, RefPaperDoc_validator, FoldersContainingPaperDoc_validator, DocLookupError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) docs_list = bb.Route( 'docs/list', 1, True, ListPaperDocsArgs_validator, ListPaperDocsResponse_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) docs_list_continue = bb.Route( 'docs/list/continue', 1, True, ListPaperDocsContinueArgs_validator, ListPaperDocsResponse_validator, ListDocsCursorError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) docs_permanently_delete = bb.Route( 'docs/permanently_delete', 1, True, RefPaperDoc_validator, bv.Void(), DocLookupError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) docs_sharing_policy_get = bb.Route( 'docs/sharing_policy/get', 1, True, RefPaperDoc_validator, SharingPolicy_validator, DocLookupError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) docs_sharing_policy_set = bb.Route( 'docs/sharing_policy/set', 1, True, PaperDocSharingPolicy_validator, bv.Void(), DocLookupError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) docs_update = bb.Route( 'docs/update', 1, True, PaperDocUpdateArgs_validator, PaperDocCreateUpdateResult_validator, PaperDocUpdateError_validator, {'auth': 'user', 'host': 'api', 'style': 'upload'}, ) docs_users_add = bb.Route( 'docs/users/add', 1, True, AddPaperDocUser_validator, bv.List(AddPaperDocUserMemberResult_validator), DocLookupError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) docs_users_list = bb.Route( 'docs/users/list', 1, True, ListUsersOnPaperDocArgs_validator, ListUsersOnPaperDocResponse_validator, DocLookupError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) docs_users_list_continue = bb.Route( 'docs/users/list/continue', 1, True, ListUsersOnPaperDocContinueArgs_validator, ListUsersOnPaperDocResponse_validator, ListUsersCursorError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) docs_users_remove = bb.Route( 'docs/users/remove', 1, True, RemovePaperDocUser_validator, bv.Void(), DocLookupError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) folders_create = bb.Route( 'folders/create', 1, True, PaperFolderCreateArg_validator, PaperFolderCreateResult_validator, PaperFolderCreateError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'docs/archive': docs_archive, 'docs/create': docs_create, 'docs/download': docs_download, 'docs/folder_users/list': docs_folder_users_list, 'docs/folder_users/list/continue': docs_folder_users_list_continue, 'docs/get_folder_info': docs_get_folder_info, 'docs/list': docs_list, 'docs/list/continue': docs_list_continue, 'docs/permanently_delete': docs_permanently_delete, 'docs/sharing_policy/get': docs_sharing_policy_get, 'docs/sharing_policy/set': docs_sharing_policy_set, 'docs/update': docs_update, 'docs/users/add': docs_users_add, 'docs/users/list': docs_users_list, 'docs/users/list/continue': docs_users_list_continue, 'docs/users/remove': docs_users_remove, 'folders/create': folders_create, } dropbox-sdk-python-12.0.2/dropbox/secondary_emails.py000066400000000000000000000033661462737130500227370ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv from dropbox import common class SecondaryEmail(bb.Struct): """ :ivar secondary_emails.SecondaryEmail.email: Secondary email address. :ivar secondary_emails.SecondaryEmail.is_verified: Whether or not the secondary email address is verified to be owned by a user. """ __slots__ = [ '_email_value', '_is_verified_value', ] _has_required_fields = True def __init__(self, email=None, is_verified=None): self._email_value = bb.NOT_SET self._is_verified_value = bb.NOT_SET if email is not None: self.email = email if is_verified is not None: self.is_verified = is_verified # Instance attribute type: str (validator is set below) email = bb.Attribute("email") # Instance attribute type: bool (validator is set below) is_verified = bb.Attribute("is_verified") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SecondaryEmail, self)._process_custom_annotations(annotation_type, field_path, processor) SecondaryEmail_validator = bv.Struct(SecondaryEmail) SecondaryEmail.email.validator = common.EmailAddress_validator SecondaryEmail.is_verified.validator = bv.Boolean() SecondaryEmail._all_field_names_ = set([ 'email', 'is_verified', ]) SecondaryEmail._all_fields_ = [ ('email', SecondaryEmail.email.validator), ('is_verified', SecondaryEmail.is_verified.validator), ] ROUTES = { } dropbox-sdk-python-12.0.2/dropbox/seen_state.py000066400000000000000000000107341462737130500215450ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv class PlatformType(bb.Union): """ Possible platforms on which a user may view content. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar seen_state.PlatformType.web: The content was viewed on the web. :ivar seen_state.PlatformType.desktop: The content was viewed on a desktop client. :ivar seen_state.PlatformType.mobile_ios: The content was viewed on a mobile iOS client. :ivar seen_state.PlatformType.mobile_android: The content was viewed on a mobile android client. :ivar seen_state.PlatformType.api: The content was viewed from an API client. :ivar seen_state.PlatformType.unknown: The content was viewed on an unknown platform. :ivar seen_state.PlatformType.mobile: The content was viewed on a mobile client. DEPRECATED: Use mobile_ios or mobile_android instead. """ _catch_all = 'other' # Attribute is overwritten below the class definition web = None # Attribute is overwritten below the class definition desktop = None # Attribute is overwritten below the class definition mobile_ios = None # Attribute is overwritten below the class definition mobile_android = None # Attribute is overwritten below the class definition api = None # Attribute is overwritten below the class definition unknown = None # Attribute is overwritten below the class definition mobile = None # Attribute is overwritten below the class definition other = None def is_web(self): """ Check if the union tag is ``web``. :rtype: bool """ return self._tag == 'web' def is_desktop(self): """ Check if the union tag is ``desktop``. :rtype: bool """ return self._tag == 'desktop' def is_mobile_ios(self): """ Check if the union tag is ``mobile_ios``. :rtype: bool """ return self._tag == 'mobile_ios' def is_mobile_android(self): """ Check if the union tag is ``mobile_android``. :rtype: bool """ return self._tag == 'mobile_android' def is_api(self): """ Check if the union tag is ``api``. :rtype: bool """ return self._tag == 'api' def is_unknown(self): """ Check if the union tag is ``unknown``. :rtype: bool """ return self._tag == 'unknown' def is_mobile(self): """ Check if the union tag is ``mobile``. :rtype: bool """ return self._tag == 'mobile' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PlatformType, self)._process_custom_annotations(annotation_type, field_path, processor) PlatformType_validator = bv.Union(PlatformType) PlatformType._web_validator = bv.Void() PlatformType._desktop_validator = bv.Void() PlatformType._mobile_ios_validator = bv.Void() PlatformType._mobile_android_validator = bv.Void() PlatformType._api_validator = bv.Void() PlatformType._unknown_validator = bv.Void() PlatformType._mobile_validator = bv.Void() PlatformType._other_validator = bv.Void() PlatformType._tagmap = { 'web': PlatformType._web_validator, 'desktop': PlatformType._desktop_validator, 'mobile_ios': PlatformType._mobile_ios_validator, 'mobile_android': PlatformType._mobile_android_validator, 'api': PlatformType._api_validator, 'unknown': PlatformType._unknown_validator, 'mobile': PlatformType._mobile_validator, 'other': PlatformType._other_validator, } PlatformType.web = PlatformType('web') PlatformType.desktop = PlatformType('desktop') PlatformType.mobile_ios = PlatformType('mobile_ios') PlatformType.mobile_android = PlatformType('mobile_android') PlatformType.api = PlatformType('api') PlatformType.unknown = PlatformType('unknown') PlatformType.mobile = PlatformType('mobile') PlatformType.other = PlatformType('other') ROUTES = { } dropbox-sdk-python-12.0.2/dropbox/session.py000066400000000000000000000042711462737130500210750ustar00rootroot00000000000000import os import ssl import requests from requests.adapters import HTTPAdapter from urllib3.poolmanager import PoolManager API_DOMAIN = os.environ.get('DROPBOX_API_DOMAIN', os.environ.get('DROPBOX_DOMAIN', '.dropboxapi.com')) WEB_DOMAIN = os.environ.get('DROPBOX_WEB_DOMAIN', os.environ.get('DROPBOX_DOMAIN', '.dropbox.com')) # Default short hostname for RPC-style routes. HOST_API = 'api' # Default short hostname for upload and download-style routes. HOST_CONTENT = 'content' # Default short hostname for longpoll routes. HOST_NOTIFY = 'notify' # Default short hostname for the Drobox website. HOST_WWW = 'www' API_HOST = os.environ.get('DROPBOX_API_HOST', HOST_API + API_DOMAIN) API_CONTENT_HOST = os.environ.get('DROPBOX_API_CONTENT_HOST', HOST_CONTENT + API_DOMAIN) API_NOTIFICATION_HOST = os.environ.get('DROPBOX_API_NOTIFY_HOST', HOST_NOTIFY + API_DOMAIN) WEB_HOST = os.environ.get('DROPBOX_WEB_HOST', HOST_WWW + WEB_DOMAIN) # This is the default longest time we'll block on receiving data from the server DEFAULT_TIMEOUT = 100 # TODO(kelkabany): We probably only want to instantiate this once so that even # if multiple Dropbox objects are instantiated, they all share the same pool. class _SSLAdapter(HTTPAdapter): _ca_certs = None def __init__(self, *args, **kwargs): self._ca_certs = kwargs.pop("ca_certs", None) super(_SSLAdapter, self).__init__(*args, **kwargs) def init_poolmanager(self, connections, maxsize, block=False, **_): self.poolmanager = PoolManager( num_pools=connections, maxsize=maxsize, block=block, cert_reqs=ssl.CERT_REQUIRED, ca_certs=self._ca_certs, ) def pinned_session(pool_maxsize=8, ca_certs=None): # always verify, use cert bundle if provided _session = requests.session() # requests if ca_certs is not None: _session.verify = ca_certs else: _session.verify = True # urllib3 within requests http_adapter = _SSLAdapter(pool_connections=4, pool_maxsize=pool_maxsize, ca_certs=ca_certs) _session.mount('https://', http_adapter) return _session SSLError = requests.exceptions.SSLError # raised on verification errors dropbox-sdk-python-12.0.2/dropbox/sharing.py000066400000000000000000017332571462737130500210630ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file """ This namespace contains endpoints and data types for creating and managing shared links and shared folders. """ from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv from dropbox import async_ from dropbox import common from dropbox import files from dropbox import seen_state from dropbox import team_common from dropbox import users from dropbox import users_common class AccessInheritance(bb.Union): """ Information about the inheritance policy of a shared folder. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.AccessInheritance.inherit: The shared folder inherits its members from the parent folder. :ivar sharing.AccessInheritance.no_inherit: The shared folder does not inherit its members from the parent folder. """ _catch_all = 'other' # Attribute is overwritten below the class definition inherit = None # Attribute is overwritten below the class definition no_inherit = None # Attribute is overwritten below the class definition other = None def is_inherit(self): """ Check if the union tag is ``inherit``. :rtype: bool """ return self._tag == 'inherit' def is_no_inherit(self): """ Check if the union tag is ``no_inherit``. :rtype: bool """ return self._tag == 'no_inherit' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccessInheritance, self)._process_custom_annotations(annotation_type, field_path, processor) AccessInheritance_validator = bv.Union(AccessInheritance) class AccessLevel(bb.Union): """ Defines the access levels for collaborators. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.AccessLevel.owner: The collaborator is the owner of the shared folder. Owners can view and edit the shared folder as well as set the folder's policies using :meth:`dropbox.dropbox_client.Dropbox.sharing_update_folder_policy`. :ivar sharing.AccessLevel.editor: The collaborator can both view and edit the shared folder. :ivar sharing.AccessLevel.viewer: The collaborator can only view the shared folder. :ivar sharing.AccessLevel.viewer_no_comment: The collaborator can only view the shared folder and does not have any access to comments. :ivar sharing.AccessLevel.traverse: The collaborator can only view the shared folder that they have access to. :ivar sharing.AccessLevel.no_access: If there is a Righteous Link on the folder which grants access and the user has visited such link, they are allowed to perform certain action (i.e. add themselves to the folder) via the link access even though the user themselves are not a member on the shared folder yet. """ _catch_all = 'other' # Attribute is overwritten below the class definition owner = None # Attribute is overwritten below the class definition editor = None # Attribute is overwritten below the class definition viewer = None # Attribute is overwritten below the class definition viewer_no_comment = None # Attribute is overwritten below the class definition traverse = None # Attribute is overwritten below the class definition no_access = None # Attribute is overwritten below the class definition other = None def is_owner(self): """ Check if the union tag is ``owner``. :rtype: bool """ return self._tag == 'owner' def is_editor(self): """ Check if the union tag is ``editor``. :rtype: bool """ return self._tag == 'editor' def is_viewer(self): """ Check if the union tag is ``viewer``. :rtype: bool """ return self._tag == 'viewer' def is_viewer_no_comment(self): """ Check if the union tag is ``viewer_no_comment``. :rtype: bool """ return self._tag == 'viewer_no_comment' def is_traverse(self): """ Check if the union tag is ``traverse``. :rtype: bool """ return self._tag == 'traverse' def is_no_access(self): """ Check if the union tag is ``no_access``. :rtype: bool """ return self._tag == 'no_access' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccessLevel, self)._process_custom_annotations(annotation_type, field_path, processor) AccessLevel_validator = bv.Union(AccessLevel) class AclUpdatePolicy(bb.Union): """ Who can change a shared folder's access control list (ACL). In other words, who can add, remove, or change the privileges of members. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.AclUpdatePolicy.owner: Only the owner can update the ACL. :ivar sharing.AclUpdatePolicy.editors: Any editor can update the ACL. This may be further restricted to editors on the same team. """ _catch_all = 'other' # Attribute is overwritten below the class definition owner = None # Attribute is overwritten below the class definition editors = None # Attribute is overwritten below the class definition other = None def is_owner(self): """ Check if the union tag is ``owner``. :rtype: bool """ return self._tag == 'owner' def is_editors(self): """ Check if the union tag is ``editors``. :rtype: bool """ return self._tag == 'editors' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AclUpdatePolicy, self)._process_custom_annotations(annotation_type, field_path, processor) AclUpdatePolicy_validator = bv.Union(AclUpdatePolicy) class AddFileMemberArgs(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.sharing_add_file_member`. :ivar sharing.AddFileMemberArgs.file: File to which to add members. :ivar sharing.AddFileMemberArgs.members: Members to add. Note that even an email address is given, this may result in a user being directly added to the membership if that email is the user's main account email. :ivar sharing.AddFileMemberArgs.custom_message: Message to send to added members in their invitation. :ivar sharing.AddFileMemberArgs.quiet: Whether added members should be notified via email and device notifications of their invitation. :ivar sharing.AddFileMemberArgs.access_level: AccessLevel union object, describing what access level we want to give new members. :ivar sharing.AddFileMemberArgs.add_message_as_comment: If the custom message should be added as a comment on the file. """ __slots__ = [ '_file_value', '_members_value', '_custom_message_value', '_quiet_value', '_access_level_value', '_add_message_as_comment_value', ] _has_required_fields = True def __init__(self, file=None, members=None, custom_message=None, quiet=None, access_level=None, add_message_as_comment=None): self._file_value = bb.NOT_SET self._members_value = bb.NOT_SET self._custom_message_value = bb.NOT_SET self._quiet_value = bb.NOT_SET self._access_level_value = bb.NOT_SET self._add_message_as_comment_value = bb.NOT_SET if file is not None: self.file = file if members is not None: self.members = members if custom_message is not None: self.custom_message = custom_message if quiet is not None: self.quiet = quiet if access_level is not None: self.access_level = access_level if add_message_as_comment is not None: self.add_message_as_comment = add_message_as_comment # Instance attribute type: str (validator is set below) file = bb.Attribute("file") # Instance attribute type: list of [MemberSelector] (validator is set below) members = bb.Attribute("members") # Instance attribute type: str (validator is set below) custom_message = bb.Attribute("custom_message", nullable=True) # Instance attribute type: bool (validator is set below) quiet = bb.Attribute("quiet") # Instance attribute type: AccessLevel (validator is set below) access_level = bb.Attribute("access_level", user_defined=True) # Instance attribute type: bool (validator is set below) add_message_as_comment = bb.Attribute("add_message_as_comment") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddFileMemberArgs, self)._process_custom_annotations(annotation_type, field_path, processor) AddFileMemberArgs_validator = bv.Struct(AddFileMemberArgs) class AddFileMemberError(bb.Union): """ Errors for :meth:`dropbox.dropbox_client.Dropbox.sharing_add_file_member`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.AddFileMemberError.rate_limit: The user has reached the rate limit for invitations. :ivar sharing.AddFileMemberError.invalid_comment: The custom message did not pass comment permissions checks. """ _catch_all = 'other' # Attribute is overwritten below the class definition rate_limit = None # Attribute is overwritten below the class definition invalid_comment = None # Attribute is overwritten below the class definition other = None @classmethod def user_error(cls, val): """ Create an instance of this class set to the ``user_error`` tag with value ``val``. :param SharingUserError val: :rtype: AddFileMemberError """ return cls('user_error', val) @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharingFileAccessError val: :rtype: AddFileMemberError """ return cls('access_error', val) def is_user_error(self): """ Check if the union tag is ``user_error``. :rtype: bool """ return self._tag == 'user_error' def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_rate_limit(self): """ Check if the union tag is ``rate_limit``. :rtype: bool """ return self._tag == 'rate_limit' def is_invalid_comment(self): """ Check if the union tag is ``invalid_comment``. :rtype: bool """ return self._tag == 'invalid_comment' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_user_error(self): """ Only call this if :meth:`is_user_error` is true. :rtype: SharingUserError """ if not self.is_user_error(): raise AttributeError("tag 'user_error' not set") return self._value def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharingFileAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddFileMemberError, self)._process_custom_annotations(annotation_type, field_path, processor) AddFileMemberError_validator = bv.Union(AddFileMemberError) class AddFolderMemberArg(bb.Struct): """ :ivar sharing.AddFolderMemberArg.shared_folder_id: The ID for the shared folder. :ivar sharing.AddFolderMemberArg.members: The intended list of members to add. Added members will receive invites to join the shared folder. :ivar sharing.AddFolderMemberArg.quiet: Whether added members should be notified via email and device notifications of their invite. :ivar sharing.AddFolderMemberArg.custom_message: Optional message to display to added members in their invitation. """ __slots__ = [ '_shared_folder_id_value', '_members_value', '_quiet_value', '_custom_message_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None, members=None, quiet=None, custom_message=None): self._shared_folder_id_value = bb.NOT_SET self._members_value = bb.NOT_SET self._quiet_value = bb.NOT_SET self._custom_message_value = bb.NOT_SET if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if members is not None: self.members = members if quiet is not None: self.quiet = quiet if custom_message is not None: self.custom_message = custom_message # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") # Instance attribute type: list of [AddMember] (validator is set below) members = bb.Attribute("members") # Instance attribute type: bool (validator is set below) quiet = bb.Attribute("quiet") # Instance attribute type: str (validator is set below) custom_message = bb.Attribute("custom_message", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddFolderMemberArg, self)._process_custom_annotations(annotation_type, field_path, processor) AddFolderMemberArg_validator = bv.Struct(AddFolderMemberArg) class AddFolderMemberError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar SharedFolderAccessError AddFolderMemberError.access_error: Unable to access shared folder. :ivar sharing.AddFolderMemberError.email_unverified: This user's email address is not verified. This functionality is only available on accounts with a verified email address. Users can verify their email address `here `_. :ivar sharing.AddFolderMemberError.banned_member: The current user has been banned. :ivar AddMemberSelectorError AddFolderMemberError.bad_member: ``AddFolderMemberArg.members`` contains a bad invitation recipient. :ivar sharing.AddFolderMemberError.cant_share_outside_team: Your team policy does not allow sharing outside of the team. :ivar int sharing.AddFolderMemberError.too_many_members: The value is the member limit that was reached. :ivar int sharing.AddFolderMemberError.too_many_pending_invites: The value is the pending invite limit that was reached. :ivar sharing.AddFolderMemberError.rate_limit: The current user has hit the limit of invites they can send per day. Try again in 24 hours. :ivar sharing.AddFolderMemberError.too_many_invitees: The current user is trying to share with too many people at once. :ivar sharing.AddFolderMemberError.insufficient_plan: The current user's account doesn't support this action. An example of this is when adding a read-only member. This action can only be performed by users that have upgraded to a Pro or Business plan. :ivar sharing.AddFolderMemberError.team_folder: This action cannot be performed on a team shared folder. :ivar sharing.AddFolderMemberError.no_permission: The current user does not have permission to perform this action. :ivar sharing.AddFolderMemberError.invalid_shared_folder: Invalid shared folder error will be returned as an access_error. """ _catch_all = 'other' # Attribute is overwritten below the class definition email_unverified = None # Attribute is overwritten below the class definition banned_member = None # Attribute is overwritten below the class definition cant_share_outside_team = None # Attribute is overwritten below the class definition rate_limit = None # Attribute is overwritten below the class definition too_many_invitees = None # Attribute is overwritten below the class definition insufficient_plan = None # Attribute is overwritten below the class definition team_folder = None # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition invalid_shared_folder = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharedFolderAccessError val: :rtype: AddFolderMemberError """ return cls('access_error', val) @classmethod def bad_member(cls, val): """ Create an instance of this class set to the ``bad_member`` tag with value ``val``. :param AddMemberSelectorError val: :rtype: AddFolderMemberError """ return cls('bad_member', val) @classmethod def too_many_members(cls, val): """ Create an instance of this class set to the ``too_many_members`` tag with value ``val``. :param int val: :rtype: AddFolderMemberError """ return cls('too_many_members', val) @classmethod def too_many_pending_invites(cls, val): """ Create an instance of this class set to the ``too_many_pending_invites`` tag with value ``val``. :param int val: :rtype: AddFolderMemberError """ return cls('too_many_pending_invites', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_email_unverified(self): """ Check if the union tag is ``email_unverified``. :rtype: bool """ return self._tag == 'email_unverified' def is_banned_member(self): """ Check if the union tag is ``banned_member``. :rtype: bool """ return self._tag == 'banned_member' def is_bad_member(self): """ Check if the union tag is ``bad_member``. :rtype: bool """ return self._tag == 'bad_member' def is_cant_share_outside_team(self): """ Check if the union tag is ``cant_share_outside_team``. :rtype: bool """ return self._tag == 'cant_share_outside_team' def is_too_many_members(self): """ Check if the union tag is ``too_many_members``. :rtype: bool """ return self._tag == 'too_many_members' def is_too_many_pending_invites(self): """ Check if the union tag is ``too_many_pending_invites``. :rtype: bool """ return self._tag == 'too_many_pending_invites' def is_rate_limit(self): """ Check if the union tag is ``rate_limit``. :rtype: bool """ return self._tag == 'rate_limit' def is_too_many_invitees(self): """ Check if the union tag is ``too_many_invitees``. :rtype: bool """ return self._tag == 'too_many_invitees' def is_insufficient_plan(self): """ Check if the union tag is ``insufficient_plan``. :rtype: bool """ return self._tag == 'insufficient_plan' def is_team_folder(self): """ Check if the union tag is ``team_folder``. :rtype: bool """ return self._tag == 'team_folder' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_invalid_shared_folder(self): """ Check if the union tag is ``invalid_shared_folder``. :rtype: bool """ return self._tag == 'invalid_shared_folder' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Unable to access shared folder. Only call this if :meth:`is_access_error` is true. :rtype: SharedFolderAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def get_bad_member(self): """ ``AddFolderMemberArg.members`` contains a bad invitation recipient. Only call this if :meth:`is_bad_member` is true. :rtype: AddMemberSelectorError """ if not self.is_bad_member(): raise AttributeError("tag 'bad_member' not set") return self._value def get_too_many_members(self): """ The value is the member limit that was reached. Only call this if :meth:`is_too_many_members` is true. :rtype: int """ if not self.is_too_many_members(): raise AttributeError("tag 'too_many_members' not set") return self._value def get_too_many_pending_invites(self): """ The value is the pending invite limit that was reached. Only call this if :meth:`is_too_many_pending_invites` is true. :rtype: int """ if not self.is_too_many_pending_invites(): raise AttributeError("tag 'too_many_pending_invites' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddFolderMemberError, self)._process_custom_annotations(annotation_type, field_path, processor) AddFolderMemberError_validator = bv.Union(AddFolderMemberError) class AddMember(bb.Struct): """ The member and type of access the member should have when added to a shared folder. :ivar sharing.AddMember.member: The member to add to the shared folder. :ivar sharing.AddMember.access_level: The access level to grant ``member`` to the shared folder. ``AccessLevel.owner`` is disallowed. """ __slots__ = [ '_member_value', '_access_level_value', ] _has_required_fields = True def __init__(self, member=None, access_level=None): self._member_value = bb.NOT_SET self._access_level_value = bb.NOT_SET if member is not None: self.member = member if access_level is not None: self.access_level = access_level # Instance attribute type: MemberSelector (validator is set below) member = bb.Attribute("member", user_defined=True) # Instance attribute type: AccessLevel (validator is set below) access_level = bb.Attribute("access_level", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddMember, self)._process_custom_annotations(annotation_type, field_path, processor) AddMember_validator = bv.Struct(AddMember) class AddMemberSelectorError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.AddMemberSelectorError.automatic_group: Automatically created groups can only be added to team folders. :ivar str sharing.AddMemberSelectorError.invalid_dropbox_id: The value is the ID that could not be identified. :ivar str sharing.AddMemberSelectorError.invalid_email: The value is the e-email address that is malformed. :ivar str sharing.AddMemberSelectorError.unverified_dropbox_id: The value is the ID of the Dropbox user with an unverified email address. Invite unverified users by email address instead of by their Dropbox ID. :ivar sharing.AddMemberSelectorError.group_deleted: At least one of the specified groups in ``AddFolderMemberArg.members`` is deleted. :ivar sharing.AddMemberSelectorError.group_not_on_team: Sharing to a group that is not on the current user's team. """ _catch_all = 'other' # Attribute is overwritten below the class definition automatic_group = None # Attribute is overwritten below the class definition group_deleted = None # Attribute is overwritten below the class definition group_not_on_team = None # Attribute is overwritten below the class definition other = None @classmethod def invalid_dropbox_id(cls, val): """ Create an instance of this class set to the ``invalid_dropbox_id`` tag with value ``val``. :param str val: :rtype: AddMemberSelectorError """ return cls('invalid_dropbox_id', val) @classmethod def invalid_email(cls, val): """ Create an instance of this class set to the ``invalid_email`` tag with value ``val``. :param str val: :rtype: AddMemberSelectorError """ return cls('invalid_email', val) @classmethod def unverified_dropbox_id(cls, val): """ Create an instance of this class set to the ``unverified_dropbox_id`` tag with value ``val``. :param str val: :rtype: AddMemberSelectorError """ return cls('unverified_dropbox_id', val) def is_automatic_group(self): """ Check if the union tag is ``automatic_group``. :rtype: bool """ return self._tag == 'automatic_group' def is_invalid_dropbox_id(self): """ Check if the union tag is ``invalid_dropbox_id``. :rtype: bool """ return self._tag == 'invalid_dropbox_id' def is_invalid_email(self): """ Check if the union tag is ``invalid_email``. :rtype: bool """ return self._tag == 'invalid_email' def is_unverified_dropbox_id(self): """ Check if the union tag is ``unverified_dropbox_id``. :rtype: bool """ return self._tag == 'unverified_dropbox_id' def is_group_deleted(self): """ Check if the union tag is ``group_deleted``. :rtype: bool """ return self._tag == 'group_deleted' def is_group_not_on_team(self): """ Check if the union tag is ``group_not_on_team``. :rtype: bool """ return self._tag == 'group_not_on_team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_invalid_dropbox_id(self): """ The value is the ID that could not be identified. Only call this if :meth:`is_invalid_dropbox_id` is true. :rtype: str """ if not self.is_invalid_dropbox_id(): raise AttributeError("tag 'invalid_dropbox_id' not set") return self._value def get_invalid_email(self): """ The value is the e-email address that is malformed. Only call this if :meth:`is_invalid_email` is true. :rtype: str """ if not self.is_invalid_email(): raise AttributeError("tag 'invalid_email' not set") return self._value def get_unverified_dropbox_id(self): """ The value is the ID of the Dropbox user with an unverified email address. Invite unverified users by email address instead of by their Dropbox ID. Only call this if :meth:`is_unverified_dropbox_id` is true. :rtype: str """ if not self.is_unverified_dropbox_id(): raise AttributeError("tag 'unverified_dropbox_id' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddMemberSelectorError, self)._process_custom_annotations(annotation_type, field_path, processor) AddMemberSelectorError_validator = bv.Union(AddMemberSelectorError) class RequestedVisibility(bb.Union): """ The access permission that can be requested by the caller for the shared link. Note that the final resolved visibility of the shared link takes into account other aspects, such as team and shared folder settings. Check the :class:`ResolvedVisibility` for more info on the possible resolved visibility values of shared links. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.RequestedVisibility.public: Anyone who has received the link can access it. No login required. :ivar sharing.RequestedVisibility.team_only: Only members of the same team can access the link. Login is required. :ivar sharing.RequestedVisibility.password: A link-specific password is required to access the link. Login is not required. """ _catch_all = None # Attribute is overwritten below the class definition public = None # Attribute is overwritten below the class definition team_only = None # Attribute is overwritten below the class definition password = None def is_public(self): """ Check if the union tag is ``public``. :rtype: bool """ return self._tag == 'public' def is_team_only(self): """ Check if the union tag is ``team_only``. :rtype: bool """ return self._tag == 'team_only' def is_password(self): """ Check if the union tag is ``password``. :rtype: bool """ return self._tag == 'password' def _process_custom_annotations(self, annotation_type, field_path, processor): super(RequestedVisibility, self)._process_custom_annotations(annotation_type, field_path, processor) RequestedVisibility_validator = bv.Union(RequestedVisibility) class ResolvedVisibility(RequestedVisibility): """ The actual access permissions values of shared links after taking into account user preferences and the team and shared folder settings. Check the :class:`RequestedVisibility` for more info on the possible visibility values that can be set by the shared link's owner. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.ResolvedVisibility.team_and_password: Only members of the same team who have the link-specific password can access the link. Login is required. :ivar sharing.ResolvedVisibility.shared_folder_only: Only members of the shared folder containing the linked file can access the link. Login is required. :ivar sharing.ResolvedVisibility.no_one: The link merely points the user to the content, and does not grant any additional rights. Existing members of the content who use this link can only access the content with their pre-existing access rights. Either on the file directly, or inherited from a parent folder. :ivar sharing.ResolvedVisibility.only_you: Only the current user can view this link. """ _catch_all = 'other' # Attribute is overwritten below the class definition team_and_password = None # Attribute is overwritten below the class definition shared_folder_only = None # Attribute is overwritten below the class definition no_one = None # Attribute is overwritten below the class definition only_you = None # Attribute is overwritten below the class definition other = None def is_team_and_password(self): """ Check if the union tag is ``team_and_password``. :rtype: bool """ return self._tag == 'team_and_password' def is_shared_folder_only(self): """ Check if the union tag is ``shared_folder_only``. :rtype: bool """ return self._tag == 'shared_folder_only' def is_no_one(self): """ Check if the union tag is ``no_one``. :rtype: bool """ return self._tag == 'no_one' def is_only_you(self): """ Check if the union tag is ``only_you``. :rtype: bool """ return self._tag == 'only_you' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResolvedVisibility, self)._process_custom_annotations(annotation_type, field_path, processor) ResolvedVisibility_validator = bv.Union(ResolvedVisibility) class AlphaResolvedVisibility(ResolvedVisibility): """ check documentation for ResolvedVisibility. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ def _process_custom_annotations(self, annotation_type, field_path, processor): super(AlphaResolvedVisibility, self)._process_custom_annotations(annotation_type, field_path, processor) AlphaResolvedVisibility_validator = bv.Union(AlphaResolvedVisibility) class AudienceExceptionContentInfo(bb.Struct): """ Information about the content that has a link audience different than that of this folder. :ivar sharing.AudienceExceptionContentInfo.name: The name of the content, which is either a file or a folder. """ __slots__ = [ '_name_value', ] _has_required_fields = True def __init__(self, name=None): self._name_value = bb.NOT_SET if name is not None: self.name = name # Instance attribute type: str (validator is set below) name = bb.Attribute("name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AudienceExceptionContentInfo, self)._process_custom_annotations(annotation_type, field_path, processor) AudienceExceptionContentInfo_validator = bv.Struct(AudienceExceptionContentInfo) class AudienceExceptions(bb.Struct): """ The total count and truncated list of information of content inside this folder that has a different audience than the link on this folder. This is only returned for folders. :ivar sharing.AudienceExceptions.exceptions: A truncated list of some of the content that is an exception. The length of this list could be smaller than the count since it is only a sample but will not be empty as long as count is not 0. """ __slots__ = [ '_count_value', '_exceptions_value', ] _has_required_fields = True def __init__(self, count=None, exceptions=None): self._count_value = bb.NOT_SET self._exceptions_value = bb.NOT_SET if count is not None: self.count = count if exceptions is not None: self.exceptions = exceptions # Instance attribute type: int (validator is set below) count = bb.Attribute("count") # Instance attribute type: list of [AudienceExceptionContentInfo] (validator is set below) exceptions = bb.Attribute("exceptions") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AudienceExceptions, self)._process_custom_annotations(annotation_type, field_path, processor) AudienceExceptions_validator = bv.Struct(AudienceExceptions) class AudienceRestrictingSharedFolder(bb.Struct): """ Information about the shared folder that prevents the link audience for this link from being more restrictive. :ivar sharing.AudienceRestrictingSharedFolder.shared_folder_id: The ID of the shared folder. :ivar sharing.AudienceRestrictingSharedFolder.name: The name of the shared folder. :ivar sharing.AudienceRestrictingSharedFolder.audience: The link audience of the shared folder. """ __slots__ = [ '_shared_folder_id_value', '_name_value', '_audience_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None, name=None, audience=None): self._shared_folder_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._audience_value = bb.NOT_SET if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if name is not None: self.name = name if audience is not None: self.audience = audience # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: LinkAudience (validator is set below) audience = bb.Attribute("audience", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AudienceRestrictingSharedFolder, self)._process_custom_annotations(annotation_type, field_path, processor) AudienceRestrictingSharedFolder_validator = bv.Struct(AudienceRestrictingSharedFolder) class LinkMetadata(bb.Struct): """ Metadata for a shared link. This can be either a :class:`PathLinkMetadata` or :class:`CollectionLinkMetadata`. :ivar sharing.LinkMetadata.url: URL of the shared link. :ivar sharing.LinkMetadata.visibility: Who can access the link. :ivar sharing.LinkMetadata.expires: Expiration time, if set. By default the link won't expire. """ __slots__ = [ '_url_value', '_visibility_value', '_expires_value', ] _has_required_fields = True def __init__(self, url=None, visibility=None, expires=None): self._url_value = bb.NOT_SET self._visibility_value = bb.NOT_SET self._expires_value = bb.NOT_SET if url is not None: self.url = url if visibility is not None: self.visibility = visibility if expires is not None: self.expires = expires # Instance attribute type: str (validator is set below) url = bb.Attribute("url") # Instance attribute type: Visibility (validator is set below) visibility = bb.Attribute("visibility", user_defined=True) # Instance attribute type: datetime.datetime (validator is set below) expires = bb.Attribute("expires", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LinkMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) LinkMetadata_validator = bv.StructTree(LinkMetadata) class CollectionLinkMetadata(LinkMetadata): """ Metadata for a collection-based shared link. """ __slots__ = [ ] _has_required_fields = True def __init__(self, url=None, visibility=None, expires=None): super(CollectionLinkMetadata, self).__init__(url, visibility, expires) def _process_custom_annotations(self, annotation_type, field_path, processor): super(CollectionLinkMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) CollectionLinkMetadata_validator = bv.Struct(CollectionLinkMetadata) class CreateSharedLinkArg(bb.Struct): """ :ivar sharing.CreateSharedLinkArg.path: The path to share. :ivar sharing.CreateSharedLinkArg.pending_upload: If it's okay to share a path that does not yet exist, set this to either ``PendingUploadMode.file`` or ``PendingUploadMode.folder`` to indicate whether to assume it's a file or folder. """ __slots__ = [ '_path_value', '_short_url_value', '_pending_upload_value', ] _has_required_fields = True def __init__(self, path=None, short_url=None, pending_upload=None): self._path_value = bb.NOT_SET self._short_url_value = bb.NOT_SET self._pending_upload_value = bb.NOT_SET if path is not None: self.path = path if short_url is not None: self.short_url = short_url if pending_upload is not None: self.pending_upload = pending_upload # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: bool (validator is set below) short_url = bb.Attribute("short_url") # Instance attribute type: PendingUploadMode (validator is set below) pending_upload = bb.Attribute("pending_upload", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateSharedLinkArg, self)._process_custom_annotations(annotation_type, field_path, processor) CreateSharedLinkArg_validator = bv.Struct(CreateSharedLinkArg) class CreateSharedLinkError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param files.LookupError val: :rtype: CreateSharedLinkError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: files.LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateSharedLinkError, self)._process_custom_annotations(annotation_type, field_path, processor) CreateSharedLinkError_validator = bv.Union(CreateSharedLinkError) class CreateSharedLinkWithSettingsArg(bb.Struct): """ :ivar sharing.CreateSharedLinkWithSettingsArg.path: The path to be shared by the shared link. :ivar sharing.CreateSharedLinkWithSettingsArg.settings: The requested settings for the newly created shared link. """ __slots__ = [ '_path_value', '_settings_value', ] _has_required_fields = True def __init__(self, path=None, settings=None): self._path_value = bb.NOT_SET self._settings_value = bb.NOT_SET if path is not None: self.path = path if settings is not None: self.settings = settings # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: SharedLinkSettings (validator is set below) settings = bb.Attribute("settings", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateSharedLinkWithSettingsArg, self)._process_custom_annotations(annotation_type, field_path, processor) CreateSharedLinkWithSettingsArg_validator = bv.Struct(CreateSharedLinkWithSettingsArg) class CreateSharedLinkWithSettingsError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.CreateSharedLinkWithSettingsError.email_not_verified: This user's email address is not verified. This functionality is only available on accounts with a verified email address. Users can verify their email address `here `_. :ivar Optional[SharedLinkAlreadyExistsMetadata] sharing.CreateSharedLinkWithSettingsError.shared_link_already_exists: The shared link already exists. You can call :route:`list_shared_links` to get the existing link, or use the provided metadata if it is returned. :ivar SharedLinkSettingsError CreateSharedLinkWithSettingsError.settings_error: There is an error with the given settings. :ivar sharing.CreateSharedLinkWithSettingsError.access_denied: The user is not allowed to create a shared link to the specified file. For example, this can occur if the file is restricted or if the user's links are `banned `_. """ _catch_all = None # Attribute is overwritten below the class definition email_not_verified = None # Attribute is overwritten below the class definition access_denied = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param files.LookupError val: :rtype: CreateSharedLinkWithSettingsError """ return cls('path', val) @classmethod def shared_link_already_exists(cls, val): """ Create an instance of this class set to the ``shared_link_already_exists`` tag with value ``val``. :param SharedLinkAlreadyExistsMetadata val: :rtype: CreateSharedLinkWithSettingsError """ return cls('shared_link_already_exists', val) @classmethod def settings_error(cls, val): """ Create an instance of this class set to the ``settings_error`` tag with value ``val``. :param SharedLinkSettingsError val: :rtype: CreateSharedLinkWithSettingsError """ return cls('settings_error', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_email_not_verified(self): """ Check if the union tag is ``email_not_verified``. :rtype: bool """ return self._tag == 'email_not_verified' def is_shared_link_already_exists(self): """ Check if the union tag is ``shared_link_already_exists``. :rtype: bool """ return self._tag == 'shared_link_already_exists' def is_settings_error(self): """ Check if the union tag is ``settings_error``. :rtype: bool """ return self._tag == 'settings_error' def is_access_denied(self): """ Check if the union tag is ``access_denied``. :rtype: bool """ return self._tag == 'access_denied' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: files.LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def get_shared_link_already_exists(self): """ The shared link already exists. You can call :meth:`dropbox.dropbox_client.Dropbox.sharing_list_shared_links` to get the existing link, or use the provided metadata if it is returned. Only call this if :meth:`is_shared_link_already_exists` is true. :rtype: SharedLinkAlreadyExistsMetadata """ if not self.is_shared_link_already_exists(): raise AttributeError("tag 'shared_link_already_exists' not set") return self._value def get_settings_error(self): """ There is an error with the given settings. Only call this if :meth:`is_settings_error` is true. :rtype: SharedLinkSettingsError """ if not self.is_settings_error(): raise AttributeError("tag 'settings_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateSharedLinkWithSettingsError, self)._process_custom_annotations(annotation_type, field_path, processor) CreateSharedLinkWithSettingsError_validator = bv.Union(CreateSharedLinkWithSettingsError) class SharedContentLinkMetadataBase(bb.Struct): """ :ivar sharing.SharedContentLinkMetadataBase.access_level: The access level on the link for this file. :ivar sharing.SharedContentLinkMetadataBase.audience_options: The audience options that are available for the content. Some audience options may be unavailable. For example, team_only may be unavailable if the content is not owned by a user on a team. The 'default' audience option is always available if the user can modify link settings. :ivar sharing.SharedContentLinkMetadataBase.audience_restricting_shared_folder: The shared folder that prevents the link audience for this link from being more restrictive. :ivar sharing.SharedContentLinkMetadataBase.current_audience: The current audience of the link. :ivar sharing.SharedContentLinkMetadataBase.expiry: Whether the link has an expiry set on it. A link with an expiry will have its audience changed to members when the expiry is reached. :ivar sharing.SharedContentLinkMetadataBase.link_permissions: A list of permissions for actions you can perform on the link. :ivar sharing.SharedContentLinkMetadataBase.password_protected: Whether the link is protected by a password. """ __slots__ = [ '_access_level_value', '_audience_options_value', '_audience_restricting_shared_folder_value', '_current_audience_value', '_expiry_value', '_link_permissions_value', '_password_protected_value', ] _has_required_fields = True def __init__(self, audience_options=None, current_audience=None, link_permissions=None, password_protected=None, access_level=None, audience_restricting_shared_folder=None, expiry=None): self._access_level_value = bb.NOT_SET self._audience_options_value = bb.NOT_SET self._audience_restricting_shared_folder_value = bb.NOT_SET self._current_audience_value = bb.NOT_SET self._expiry_value = bb.NOT_SET self._link_permissions_value = bb.NOT_SET self._password_protected_value = bb.NOT_SET if access_level is not None: self.access_level = access_level if audience_options is not None: self.audience_options = audience_options if audience_restricting_shared_folder is not None: self.audience_restricting_shared_folder = audience_restricting_shared_folder if current_audience is not None: self.current_audience = current_audience if expiry is not None: self.expiry = expiry if link_permissions is not None: self.link_permissions = link_permissions if password_protected is not None: self.password_protected = password_protected # Instance attribute type: AccessLevel (validator is set below) access_level = bb.Attribute("access_level", nullable=True, user_defined=True) # Instance attribute type: list of [LinkAudience] (validator is set below) audience_options = bb.Attribute("audience_options") # Instance attribute type: AudienceRestrictingSharedFolder (validator is set below) audience_restricting_shared_folder = bb.Attribute("audience_restricting_shared_folder", nullable=True, user_defined=True) # Instance attribute type: LinkAudience (validator is set below) current_audience = bb.Attribute("current_audience", user_defined=True) # Instance attribute type: datetime.datetime (validator is set below) expiry = bb.Attribute("expiry", nullable=True) # Instance attribute type: list of [LinkPermission] (validator is set below) link_permissions = bb.Attribute("link_permissions") # Instance attribute type: bool (validator is set below) password_protected = bb.Attribute("password_protected") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentLinkMetadataBase, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentLinkMetadataBase_validator = bv.Struct(SharedContentLinkMetadataBase) class ExpectedSharedContentLinkMetadata(SharedContentLinkMetadataBase): """ The expected metadata of a shared link for a file or folder when a link is first created for the content. Absent if the link already exists. """ __slots__ = [ ] _has_required_fields = True def __init__(self, audience_options=None, current_audience=None, link_permissions=None, password_protected=None, access_level=None, audience_restricting_shared_folder=None, expiry=None): super(ExpectedSharedContentLinkMetadata, self).__init__(audience_options, current_audience, link_permissions, password_protected, access_level, audience_restricting_shared_folder, expiry) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExpectedSharedContentLinkMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) ExpectedSharedContentLinkMetadata_validator = bv.Struct(ExpectedSharedContentLinkMetadata) class FileAction(bb.Union): """ Sharing actions that may be taken on files. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.FileAction.disable_viewer_info: Disable viewer information on the file. :ivar sharing.FileAction.edit_contents: Change or edit contents of the file. :ivar sharing.FileAction.enable_viewer_info: Enable viewer information on the file. :ivar sharing.FileAction.invite_viewer: Add a member with view permissions. :ivar sharing.FileAction.invite_viewer_no_comment: Add a member with view permissions but no comment permissions. :ivar sharing.FileAction.invite_editor: Add a member with edit permissions. :ivar sharing.FileAction.unshare: Stop sharing this file. :ivar sharing.FileAction.relinquish_membership: Relinquish one's own membership to the file. :ivar sharing.FileAction.share_link: Use create_view_link and create_edit_link instead. :ivar sharing.FileAction.create_link: Use create_view_link and create_edit_link instead. :ivar sharing.FileAction.create_view_link: Create a shared link to a file that only allows users to view the content. :ivar sharing.FileAction.create_edit_link: Create a shared link to a file that allows users to edit the content. """ _catch_all = 'other' # Attribute is overwritten below the class definition disable_viewer_info = None # Attribute is overwritten below the class definition edit_contents = None # Attribute is overwritten below the class definition enable_viewer_info = None # Attribute is overwritten below the class definition invite_viewer = None # Attribute is overwritten below the class definition invite_viewer_no_comment = None # Attribute is overwritten below the class definition invite_editor = None # Attribute is overwritten below the class definition unshare = None # Attribute is overwritten below the class definition relinquish_membership = None # Attribute is overwritten below the class definition share_link = None # Attribute is overwritten below the class definition create_link = None # Attribute is overwritten below the class definition create_view_link = None # Attribute is overwritten below the class definition create_edit_link = None # Attribute is overwritten below the class definition other = None def is_disable_viewer_info(self): """ Check if the union tag is ``disable_viewer_info``. :rtype: bool """ return self._tag == 'disable_viewer_info' def is_edit_contents(self): """ Check if the union tag is ``edit_contents``. :rtype: bool """ return self._tag == 'edit_contents' def is_enable_viewer_info(self): """ Check if the union tag is ``enable_viewer_info``. :rtype: bool """ return self._tag == 'enable_viewer_info' def is_invite_viewer(self): """ Check if the union tag is ``invite_viewer``. :rtype: bool """ return self._tag == 'invite_viewer' def is_invite_viewer_no_comment(self): """ Check if the union tag is ``invite_viewer_no_comment``. :rtype: bool """ return self._tag == 'invite_viewer_no_comment' def is_invite_editor(self): """ Check if the union tag is ``invite_editor``. :rtype: bool """ return self._tag == 'invite_editor' def is_unshare(self): """ Check if the union tag is ``unshare``. :rtype: bool """ return self._tag == 'unshare' def is_relinquish_membership(self): """ Check if the union tag is ``relinquish_membership``. :rtype: bool """ return self._tag == 'relinquish_membership' def is_share_link(self): """ Check if the union tag is ``share_link``. :rtype: bool """ return self._tag == 'share_link' def is_create_link(self): """ Check if the union tag is ``create_link``. :rtype: bool """ return self._tag == 'create_link' def is_create_view_link(self): """ Check if the union tag is ``create_view_link``. :rtype: bool """ return self._tag == 'create_view_link' def is_create_edit_link(self): """ Check if the union tag is ``create_edit_link``. :rtype: bool """ return self._tag == 'create_edit_link' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileAction, self)._process_custom_annotations(annotation_type, field_path, processor) FileAction_validator = bv.Union(FileAction) class FileErrorResult(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str sharing.FileErrorResult.file_not_found_error: File specified by id was not found. :ivar str sharing.FileErrorResult.invalid_file_action_error: User does not have permission to take the specified action on the file. :ivar str sharing.FileErrorResult.permission_denied_error: User does not have permission to access file specified by file.Id. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def file_not_found_error(cls, val): """ Create an instance of this class set to the ``file_not_found_error`` tag with value ``val``. :param str val: :rtype: FileErrorResult """ return cls('file_not_found_error', val) @classmethod def invalid_file_action_error(cls, val): """ Create an instance of this class set to the ``invalid_file_action_error`` tag with value ``val``. :param str val: :rtype: FileErrorResult """ return cls('invalid_file_action_error', val) @classmethod def permission_denied_error(cls, val): """ Create an instance of this class set to the ``permission_denied_error`` tag with value ``val``. :param str val: :rtype: FileErrorResult """ return cls('permission_denied_error', val) def is_file_not_found_error(self): """ Check if the union tag is ``file_not_found_error``. :rtype: bool """ return self._tag == 'file_not_found_error' def is_invalid_file_action_error(self): """ Check if the union tag is ``invalid_file_action_error``. :rtype: bool """ return self._tag == 'invalid_file_action_error' def is_permission_denied_error(self): """ Check if the union tag is ``permission_denied_error``. :rtype: bool """ return self._tag == 'permission_denied_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_file_not_found_error(self): """ File specified by id was not found. Only call this if :meth:`is_file_not_found_error` is true. :rtype: str """ if not self.is_file_not_found_error(): raise AttributeError("tag 'file_not_found_error' not set") return self._value def get_invalid_file_action_error(self): """ User does not have permission to take the specified action on the file. Only call this if :meth:`is_invalid_file_action_error` is true. :rtype: str """ if not self.is_invalid_file_action_error(): raise AttributeError("tag 'invalid_file_action_error' not set") return self._value def get_permission_denied_error(self): """ User does not have permission to access file specified by file.Id. Only call this if :meth:`is_permission_denied_error` is true. :rtype: str """ if not self.is_permission_denied_error(): raise AttributeError("tag 'permission_denied_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileErrorResult, self)._process_custom_annotations(annotation_type, field_path, processor) FileErrorResult_validator = bv.Union(FileErrorResult) class SharedLinkMetadata(bb.Struct): """ The metadata of a shared link. :ivar sharing.SharedLinkMetadata.url: URL of the shared link. :ivar sharing.SharedLinkMetadata.id: A unique identifier for the linked file. :ivar sharing.SharedLinkMetadata.name: The linked file name (including extension). This never contains a slash. :ivar sharing.SharedLinkMetadata.expires: Expiration time, if set. By default the link won't expire. :ivar sharing.SharedLinkMetadata.path_lower: The lowercased full path in the user's Dropbox. This always starts with a slash. This field will only be present only if the linked file is in the authenticated user's dropbox. :ivar sharing.SharedLinkMetadata.link_permissions: The link's access permissions. :ivar sharing.SharedLinkMetadata.team_member_info: The team membership information of the link's owner. This field will only be present if the link's owner is a team member. :ivar sharing.SharedLinkMetadata.content_owner_team_info: The team information of the content's owner. This field will only be present if the content's owner is a team member and the content's owner team is different from the link's owner team. """ __slots__ = [ '_url_value', '_id_value', '_name_value', '_expires_value', '_path_lower_value', '_link_permissions_value', '_team_member_info_value', '_content_owner_team_info_value', ] _has_required_fields = True def __init__(self, url=None, name=None, link_permissions=None, id=None, expires=None, path_lower=None, team_member_info=None, content_owner_team_info=None): self._url_value = bb.NOT_SET self._id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._expires_value = bb.NOT_SET self._path_lower_value = bb.NOT_SET self._link_permissions_value = bb.NOT_SET self._team_member_info_value = bb.NOT_SET self._content_owner_team_info_value = bb.NOT_SET if url is not None: self.url = url if id is not None: self.id = id if name is not None: self.name = name if expires is not None: self.expires = expires if path_lower is not None: self.path_lower = path_lower if link_permissions is not None: self.link_permissions = link_permissions if team_member_info is not None: self.team_member_info = team_member_info if content_owner_team_info is not None: self.content_owner_team_info = content_owner_team_info # Instance attribute type: str (validator is set below) url = bb.Attribute("url") # Instance attribute type: str (validator is set below) id = bb.Attribute("id", nullable=True) # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: datetime.datetime (validator is set below) expires = bb.Attribute("expires", nullable=True) # Instance attribute type: str (validator is set below) path_lower = bb.Attribute("path_lower", nullable=True) # Instance attribute type: LinkPermissions (validator is set below) link_permissions = bb.Attribute("link_permissions", user_defined=True) # Instance attribute type: TeamMemberInfo (validator is set below) team_member_info = bb.Attribute("team_member_info", nullable=True, user_defined=True) # Instance attribute type: users.Team (validator is set below) content_owner_team_info = bb.Attribute("content_owner_team_info", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkMetadata_validator = bv.StructTree(SharedLinkMetadata) class FileLinkMetadata(SharedLinkMetadata): """ The metadata of a file shared link. :ivar sharing.FileLinkMetadata.client_modified: The modification time set by the desktop client when the file was added to Dropbox. Since this time is not verified (the Dropbox server stores whatever the desktop client sends up), this should only be used for display purposes (such as sorting) and not, for example, to determine if a file has changed or not. :ivar sharing.FileLinkMetadata.server_modified: The last time the file was modified on Dropbox. :ivar sharing.FileLinkMetadata.rev: A unique identifier for the current revision of a file. This field is the same rev as elsewhere in the API and can be used to detect changes and avoid conflicts. :ivar sharing.FileLinkMetadata.size: The file size in bytes. """ __slots__ = [ '_client_modified_value', '_server_modified_value', '_rev_value', '_size_value', ] _has_required_fields = True def __init__(self, url=None, name=None, link_permissions=None, client_modified=None, server_modified=None, rev=None, size=None, id=None, expires=None, path_lower=None, team_member_info=None, content_owner_team_info=None): super(FileLinkMetadata, self).__init__(url, name, link_permissions, id, expires, path_lower, team_member_info, content_owner_team_info) self._client_modified_value = bb.NOT_SET self._server_modified_value = bb.NOT_SET self._rev_value = bb.NOT_SET self._size_value = bb.NOT_SET if client_modified is not None: self.client_modified = client_modified if server_modified is not None: self.server_modified = server_modified if rev is not None: self.rev = rev if size is not None: self.size = size # Instance attribute type: datetime.datetime (validator is set below) client_modified = bb.Attribute("client_modified") # Instance attribute type: datetime.datetime (validator is set below) server_modified = bb.Attribute("server_modified") # Instance attribute type: str (validator is set below) rev = bb.Attribute("rev") # Instance attribute type: int (validator is set below) size = bb.Attribute("size") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLinkMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) FileLinkMetadata_validator = bv.Struct(FileLinkMetadata) class FileMemberActionError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.FileMemberActionError.invalid_member: Specified member was not found. :ivar sharing.FileMemberActionError.no_permission: User does not have permission to perform this action on this member. :ivar SharingFileAccessError FileMemberActionError.access_error: Specified file was invalid or user does not have access. :ivar MemberAccessLevelResult FileMemberActionError.no_explicit_access: The action cannot be completed because the target member does not have explicit access to the file. The return value is the access that the member has to the file from a parent folder. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_member = None # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharingFileAccessError val: :rtype: FileMemberActionError """ return cls('access_error', val) @classmethod def no_explicit_access(cls, val): """ Create an instance of this class set to the ``no_explicit_access`` tag with value ``val``. :param MemberAccessLevelResult val: :rtype: FileMemberActionError """ return cls('no_explicit_access', val) def is_invalid_member(self): """ Check if the union tag is ``invalid_member``. :rtype: bool """ return self._tag == 'invalid_member' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_no_explicit_access(self): """ Check if the union tag is ``no_explicit_access``. :rtype: bool """ return self._tag == 'no_explicit_access' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Specified file was invalid or user does not have access. Only call this if :meth:`is_access_error` is true. :rtype: SharingFileAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def get_no_explicit_access(self): """ The action cannot be completed because the target member does not have explicit access to the file. The return value is the access that the member has to the file from a parent folder. Only call this if :meth:`is_no_explicit_access` is true. :rtype: MemberAccessLevelResult """ if not self.is_no_explicit_access(): raise AttributeError("tag 'no_explicit_access' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileMemberActionError, self)._process_custom_annotations(annotation_type, field_path, processor) FileMemberActionError_validator = bv.Union(FileMemberActionError) class FileMemberActionIndividualResult(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar Optional[AccessLevel] sharing.FileMemberActionIndividualResult.success: Part of the response for both add_file_member and remove_file_member_v1 (deprecated). For add_file_member, indicates giving access was successful and at what AccessLevel. For remove_file_member_v1, indicates member was successfully removed from the file. If AccessLevel is given, the member still has access via a parent shared folder. :ivar FileMemberActionError FileMemberActionIndividualResult.member_error: User was not able to perform this action. """ _catch_all = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param AccessLevel val: :rtype: FileMemberActionIndividualResult """ return cls('success', val) @classmethod def member_error(cls, val): """ Create an instance of this class set to the ``member_error`` tag with value ``val``. :param FileMemberActionError val: :rtype: FileMemberActionIndividualResult """ return cls('member_error', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_member_error(self): """ Check if the union tag is ``member_error``. :rtype: bool """ return self._tag == 'member_error' def get_success(self): """ Part of the response for both add_file_member and remove_file_member_v1 (deprecated). For add_file_member, indicates giving access was successful and at what AccessLevel. For remove_file_member_v1, indicates member was successfully removed from the file. If AccessLevel is given, the member still has access via a parent shared folder. Only call this if :meth:`is_success` is true. :rtype: AccessLevel """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_member_error(self): """ User was not able to perform this action. Only call this if :meth:`is_member_error` is true. :rtype: FileMemberActionError """ if not self.is_member_error(): raise AttributeError("tag 'member_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileMemberActionIndividualResult, self)._process_custom_annotations(annotation_type, field_path, processor) FileMemberActionIndividualResult_validator = bv.Union(FileMemberActionIndividualResult) class FileMemberActionResult(bb.Struct): """ Per-member result for :meth:`dropbox.dropbox_client.Dropbox.sharing_add_file_member`. :ivar sharing.FileMemberActionResult.member: One of specified input members. :ivar sharing.FileMemberActionResult.result: The outcome of the action on this member. :ivar sharing.FileMemberActionResult.sckey_sha1: The SHA-1 encrypted shared content key. :ivar sharing.FileMemberActionResult.invitation_signature: The sharing sender-recipient invitation signatures for the input member_id. A member_id can be a group and thus have multiple users and multiple invitation signatures. """ __slots__ = [ '_member_value', '_result_value', '_sckey_sha1_value', '_invitation_signature_value', ] _has_required_fields = True def __init__(self, member=None, result=None, sckey_sha1=None, invitation_signature=None): self._member_value = bb.NOT_SET self._result_value = bb.NOT_SET self._sckey_sha1_value = bb.NOT_SET self._invitation_signature_value = bb.NOT_SET if member is not None: self.member = member if result is not None: self.result = result if sckey_sha1 is not None: self.sckey_sha1 = sckey_sha1 if invitation_signature is not None: self.invitation_signature = invitation_signature # Instance attribute type: MemberSelector (validator is set below) member = bb.Attribute("member", user_defined=True) # Instance attribute type: FileMemberActionIndividualResult (validator is set below) result = bb.Attribute("result", user_defined=True) # Instance attribute type: str (validator is set below) sckey_sha1 = bb.Attribute("sckey_sha1", nullable=True) # Instance attribute type: list of [str] (validator is set below) invitation_signature = bb.Attribute("invitation_signature", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileMemberActionResult, self)._process_custom_annotations(annotation_type, field_path, processor) FileMemberActionResult_validator = bv.Struct(FileMemberActionResult) class FileMemberRemoveActionResult(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar MemberAccessLevelResult FileMemberRemoveActionResult.success: Member was successfully removed from this file. :ivar FileMemberActionError FileMemberRemoveActionResult.member_error: User was not able to remove this member. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param MemberAccessLevelResult val: :rtype: FileMemberRemoveActionResult """ return cls('success', val) @classmethod def member_error(cls, val): """ Create an instance of this class set to the ``member_error`` tag with value ``val``. :param FileMemberActionError val: :rtype: FileMemberRemoveActionResult """ return cls('member_error', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_member_error(self): """ Check if the union tag is ``member_error``. :rtype: bool """ return self._tag == 'member_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_success(self): """ Member was successfully removed from this file. Only call this if :meth:`is_success` is true. :rtype: MemberAccessLevelResult """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_member_error(self): """ User was not able to remove this member. Only call this if :meth:`is_member_error` is true. :rtype: FileMemberActionError """ if not self.is_member_error(): raise AttributeError("tag 'member_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileMemberRemoveActionResult, self)._process_custom_annotations(annotation_type, field_path, processor) FileMemberRemoveActionResult_validator = bv.Union(FileMemberRemoveActionResult) class FilePermission(bb.Struct): """ Whether the user is allowed to take the sharing action on the file. :ivar sharing.FilePermission.action: The action that the user may wish to take on the file. :ivar sharing.FilePermission.allow: True if the user is allowed to take the action. :ivar sharing.FilePermission.reason: The reason why the user is denied the permission. Not present if the action is allowed. """ __slots__ = [ '_action_value', '_allow_value', '_reason_value', ] _has_required_fields = True def __init__(self, action=None, allow=None, reason=None): self._action_value = bb.NOT_SET self._allow_value = bb.NOT_SET self._reason_value = bb.NOT_SET if action is not None: self.action = action if allow is not None: self.allow = allow if reason is not None: self.reason = reason # Instance attribute type: FileAction (validator is set below) action = bb.Attribute("action", user_defined=True) # Instance attribute type: bool (validator is set below) allow = bb.Attribute("allow") # Instance attribute type: PermissionDeniedReason (validator is set below) reason = bb.Attribute("reason", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FilePermission, self)._process_custom_annotations(annotation_type, field_path, processor) FilePermission_validator = bv.Struct(FilePermission) class FolderAction(bb.Union): """ Actions that may be taken on shared folders. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.FolderAction.change_options: Change folder options, such as who can be invited to join the folder. :ivar sharing.FolderAction.disable_viewer_info: Disable viewer information for this folder. :ivar sharing.FolderAction.edit_contents: Change or edit contents of the folder. :ivar sharing.FolderAction.enable_viewer_info: Enable viewer information on the folder. :ivar sharing.FolderAction.invite_editor: Invite a user or group to join the folder with read and write permission. :ivar sharing.FolderAction.invite_viewer: Invite a user or group to join the folder with read permission. :ivar sharing.FolderAction.invite_viewer_no_comment: Invite a user or group to join the folder with read permission but no comment permissions. :ivar sharing.FolderAction.relinquish_membership: Relinquish one's own membership in the folder. :ivar sharing.FolderAction.unmount: Unmount the folder. :ivar sharing.FolderAction.unshare: Stop sharing this folder. :ivar sharing.FolderAction.leave_a_copy: Keep a copy of the contents upon leaving or being kicked from the folder. :ivar sharing.FolderAction.share_link: Use create_link instead. :ivar sharing.FolderAction.create_link: Create a shared link for folder. :ivar sharing.FolderAction.set_access_inheritance: Set whether the folder inherits permissions from its parent. """ _catch_all = 'other' # Attribute is overwritten below the class definition change_options = None # Attribute is overwritten below the class definition disable_viewer_info = None # Attribute is overwritten below the class definition edit_contents = None # Attribute is overwritten below the class definition enable_viewer_info = None # Attribute is overwritten below the class definition invite_editor = None # Attribute is overwritten below the class definition invite_viewer = None # Attribute is overwritten below the class definition invite_viewer_no_comment = None # Attribute is overwritten below the class definition relinquish_membership = None # Attribute is overwritten below the class definition unmount = None # Attribute is overwritten below the class definition unshare = None # Attribute is overwritten below the class definition leave_a_copy = None # Attribute is overwritten below the class definition share_link = None # Attribute is overwritten below the class definition create_link = None # Attribute is overwritten below the class definition set_access_inheritance = None # Attribute is overwritten below the class definition other = None def is_change_options(self): """ Check if the union tag is ``change_options``. :rtype: bool """ return self._tag == 'change_options' def is_disable_viewer_info(self): """ Check if the union tag is ``disable_viewer_info``. :rtype: bool """ return self._tag == 'disable_viewer_info' def is_edit_contents(self): """ Check if the union tag is ``edit_contents``. :rtype: bool """ return self._tag == 'edit_contents' def is_enable_viewer_info(self): """ Check if the union tag is ``enable_viewer_info``. :rtype: bool """ return self._tag == 'enable_viewer_info' def is_invite_editor(self): """ Check if the union tag is ``invite_editor``. :rtype: bool """ return self._tag == 'invite_editor' def is_invite_viewer(self): """ Check if the union tag is ``invite_viewer``. :rtype: bool """ return self._tag == 'invite_viewer' def is_invite_viewer_no_comment(self): """ Check if the union tag is ``invite_viewer_no_comment``. :rtype: bool """ return self._tag == 'invite_viewer_no_comment' def is_relinquish_membership(self): """ Check if the union tag is ``relinquish_membership``. :rtype: bool """ return self._tag == 'relinquish_membership' def is_unmount(self): """ Check if the union tag is ``unmount``. :rtype: bool """ return self._tag == 'unmount' def is_unshare(self): """ Check if the union tag is ``unshare``. :rtype: bool """ return self._tag == 'unshare' def is_leave_a_copy(self): """ Check if the union tag is ``leave_a_copy``. :rtype: bool """ return self._tag == 'leave_a_copy' def is_share_link(self): """ Check if the union tag is ``share_link``. :rtype: bool """ return self._tag == 'share_link' def is_create_link(self): """ Check if the union tag is ``create_link``. :rtype: bool """ return self._tag == 'create_link' def is_set_access_inheritance(self): """ Check if the union tag is ``set_access_inheritance``. :rtype: bool """ return self._tag == 'set_access_inheritance' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderAction, self)._process_custom_annotations(annotation_type, field_path, processor) FolderAction_validator = bv.Union(FolderAction) class FolderLinkMetadata(SharedLinkMetadata): """ The metadata of a folder shared link. """ __slots__ = [ ] _has_required_fields = True def __init__(self, url=None, name=None, link_permissions=None, id=None, expires=None, path_lower=None, team_member_info=None, content_owner_team_info=None): super(FolderLinkMetadata, self).__init__(url, name, link_permissions, id, expires, path_lower, team_member_info, content_owner_team_info) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderLinkMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) FolderLinkMetadata_validator = bv.Struct(FolderLinkMetadata) class FolderPermission(bb.Struct): """ Whether the user is allowed to take the action on the shared folder. :ivar sharing.FolderPermission.action: The action that the user may wish to take on the folder. :ivar sharing.FolderPermission.allow: True if the user is allowed to take the action. :ivar sharing.FolderPermission.reason: The reason why the user is denied the permission. Not present if the action is allowed, or if no reason is available. """ __slots__ = [ '_action_value', '_allow_value', '_reason_value', ] _has_required_fields = True def __init__(self, action=None, allow=None, reason=None): self._action_value = bb.NOT_SET self._allow_value = bb.NOT_SET self._reason_value = bb.NOT_SET if action is not None: self.action = action if allow is not None: self.allow = allow if reason is not None: self.reason = reason # Instance attribute type: FolderAction (validator is set below) action = bb.Attribute("action", user_defined=True) # Instance attribute type: bool (validator is set below) allow = bb.Attribute("allow") # Instance attribute type: PermissionDeniedReason (validator is set below) reason = bb.Attribute("reason", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderPermission, self)._process_custom_annotations(annotation_type, field_path, processor) FolderPermission_validator = bv.Struct(FolderPermission) class FolderPolicy(bb.Struct): """ A set of policies governing membership and privileges for a shared folder. :ivar sharing.FolderPolicy.member_policy: Who can be a member of this shared folder, as set on the folder itself. The effective policy may differ from this value if the team-wide policy is more restrictive. Present only if the folder is owned by a team. :ivar sharing.FolderPolicy.resolved_member_policy: Who can be a member of this shared folder, taking into account both the folder and the team-wide policy. This value may differ from that of member_policy if the team-wide policy is more restrictive than the folder policy. Present only if the folder is owned by a team. :ivar sharing.FolderPolicy.acl_update_policy: Who can add and remove members from this shared folder. :ivar sharing.FolderPolicy.shared_link_policy: Who links can be shared with. :ivar sharing.FolderPolicy.viewer_info_policy: Who can enable/disable viewer info for this shared folder. """ __slots__ = [ '_member_policy_value', '_resolved_member_policy_value', '_acl_update_policy_value', '_shared_link_policy_value', '_viewer_info_policy_value', ] _has_required_fields = True def __init__(self, acl_update_policy=None, shared_link_policy=None, member_policy=None, resolved_member_policy=None, viewer_info_policy=None): self._member_policy_value = bb.NOT_SET self._resolved_member_policy_value = bb.NOT_SET self._acl_update_policy_value = bb.NOT_SET self._shared_link_policy_value = bb.NOT_SET self._viewer_info_policy_value = bb.NOT_SET if member_policy is not None: self.member_policy = member_policy if resolved_member_policy is not None: self.resolved_member_policy = resolved_member_policy if acl_update_policy is not None: self.acl_update_policy = acl_update_policy if shared_link_policy is not None: self.shared_link_policy = shared_link_policy if viewer_info_policy is not None: self.viewer_info_policy = viewer_info_policy # Instance attribute type: MemberPolicy (validator is set below) member_policy = bb.Attribute("member_policy", nullable=True, user_defined=True) # Instance attribute type: MemberPolicy (validator is set below) resolved_member_policy = bb.Attribute("resolved_member_policy", nullable=True, user_defined=True) # Instance attribute type: AclUpdatePolicy (validator is set below) acl_update_policy = bb.Attribute("acl_update_policy", user_defined=True) # Instance attribute type: SharedLinkPolicy (validator is set below) shared_link_policy = bb.Attribute("shared_link_policy", user_defined=True) # Instance attribute type: ViewerInfoPolicy (validator is set below) viewer_info_policy = bb.Attribute("viewer_info_policy", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) FolderPolicy_validator = bv.Struct(FolderPolicy) class GetFileMetadataArg(bb.Struct): """ Arguments of :meth:`dropbox.dropbox_client.Dropbox.sharing_get_file_metadata`. :ivar sharing.GetFileMetadataArg.file: The file to query. :ivar sharing.GetFileMetadataArg.actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's ``SharedFileMetadata.permissions`` field describing the actions the authenticated user can perform on the file. """ __slots__ = [ '_file_value', '_actions_value', ] _has_required_fields = True def __init__(self, file=None, actions=None): self._file_value = bb.NOT_SET self._actions_value = bb.NOT_SET if file is not None: self.file = file if actions is not None: self.actions = actions # Instance attribute type: str (validator is set below) file = bb.Attribute("file") # Instance attribute type: list of [FileAction] (validator is set below) actions = bb.Attribute("actions", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetFileMetadataArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetFileMetadataArg_validator = bv.Struct(GetFileMetadataArg) class GetFileMetadataBatchArg(bb.Struct): """ Arguments of :meth:`dropbox.dropbox_client.Dropbox.sharing_get_file_metadata_batch`. :ivar sharing.GetFileMetadataBatchArg.files: The files to query. :ivar sharing.GetFileMetadataBatchArg.actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's ``SharedFileMetadata.permissions`` field describing the actions the authenticated user can perform on the file. """ __slots__ = [ '_files_value', '_actions_value', ] _has_required_fields = True def __init__(self, files=None, actions=None): self._files_value = bb.NOT_SET self._actions_value = bb.NOT_SET if files is not None: self.files = files if actions is not None: self.actions = actions # Instance attribute type: list of [str] (validator is set below) files = bb.Attribute("files") # Instance attribute type: list of [FileAction] (validator is set below) actions = bb.Attribute("actions", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetFileMetadataBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetFileMetadataBatchArg_validator = bv.Struct(GetFileMetadataBatchArg) class GetFileMetadataBatchResult(bb.Struct): """ Per file results of :meth:`dropbox.dropbox_client.Dropbox.sharing_get_file_metadata_batch`. :ivar sharing.GetFileMetadataBatchResult.file: This is the input file identifier corresponding to one of ``GetFileMetadataBatchArg.files``. :ivar sharing.GetFileMetadataBatchResult.result: The result for this particular file. """ __slots__ = [ '_file_value', '_result_value', ] _has_required_fields = True def __init__(self, file=None, result=None): self._file_value = bb.NOT_SET self._result_value = bb.NOT_SET if file is not None: self.file = file if result is not None: self.result = result # Instance attribute type: str (validator is set below) file = bb.Attribute("file") # Instance attribute type: GetFileMetadataIndividualResult (validator is set below) result = bb.Attribute("result", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetFileMetadataBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) GetFileMetadataBatchResult_validator = bv.Struct(GetFileMetadataBatchResult) class GetFileMetadataError(bb.Union): """ Error result for :meth:`dropbox.dropbox_client.Dropbox.sharing_get_file_metadata`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def user_error(cls, val): """ Create an instance of this class set to the ``user_error`` tag with value ``val``. :param SharingUserError val: :rtype: GetFileMetadataError """ return cls('user_error', val) @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharingFileAccessError val: :rtype: GetFileMetadataError """ return cls('access_error', val) def is_user_error(self): """ Check if the union tag is ``user_error``. :rtype: bool """ return self._tag == 'user_error' def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_user_error(self): """ Only call this if :meth:`is_user_error` is true. :rtype: SharingUserError """ if not self.is_user_error(): raise AttributeError("tag 'user_error' not set") return self._value def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharingFileAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetFileMetadataError, self)._process_custom_annotations(annotation_type, field_path, processor) GetFileMetadataError_validator = bv.Union(GetFileMetadataError) class GetFileMetadataIndividualResult(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar SharedFileMetadata GetFileMetadataIndividualResult.metadata: The result for this file if it was successful. :ivar SharingFileAccessError GetFileMetadataIndividualResult.access_error: The result for this file if it was an error. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def metadata(cls, val): """ Create an instance of this class set to the ``metadata`` tag with value ``val``. :param SharedFileMetadata val: :rtype: GetFileMetadataIndividualResult """ return cls('metadata', val) @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharingFileAccessError val: :rtype: GetFileMetadataIndividualResult """ return cls('access_error', val) def is_metadata(self): """ Check if the union tag is ``metadata``. :rtype: bool """ return self._tag == 'metadata' def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_metadata(self): """ The result for this file if it was successful. Only call this if :meth:`is_metadata` is true. :rtype: SharedFileMetadata """ if not self.is_metadata(): raise AttributeError("tag 'metadata' not set") return self._value def get_access_error(self): """ The result for this file if it was an error. Only call this if :meth:`is_access_error` is true. :rtype: SharingFileAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetFileMetadataIndividualResult, self)._process_custom_annotations(annotation_type, field_path, processor) GetFileMetadataIndividualResult_validator = bv.Union(GetFileMetadataIndividualResult) class GetMetadataArgs(bb.Struct): """ :ivar sharing.GetMetadataArgs.shared_folder_id: The ID for the shared folder. :ivar sharing.GetMetadataArgs.actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's ``SharedFolderMetadata.permissions`` field describing the actions the authenticated user can perform on the folder. """ __slots__ = [ '_shared_folder_id_value', '_actions_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None, actions=None): self._shared_folder_id_value = bb.NOT_SET self._actions_value = bb.NOT_SET if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if actions is not None: self.actions = actions # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") # Instance attribute type: list of [FolderAction] (validator is set below) actions = bb.Attribute("actions", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetMetadataArgs, self)._process_custom_annotations(annotation_type, field_path, processor) GetMetadataArgs_validator = bv.Struct(GetMetadataArgs) class SharedLinkError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.SharedLinkError.shared_link_not_found: The shared link wasn't found. :ivar sharing.SharedLinkError.shared_link_access_denied: The caller is not allowed to access this shared link. :ivar sharing.SharedLinkError.unsupported_link_type: This type of link is not supported; use :meth:`dropbox.dropbox_client.Dropbox.sharing_files` instead. """ _catch_all = 'other' # Attribute is overwritten below the class definition shared_link_not_found = None # Attribute is overwritten below the class definition shared_link_access_denied = None # Attribute is overwritten below the class definition unsupported_link_type = None # Attribute is overwritten below the class definition other = None def is_shared_link_not_found(self): """ Check if the union tag is ``shared_link_not_found``. :rtype: bool """ return self._tag == 'shared_link_not_found' def is_shared_link_access_denied(self): """ Check if the union tag is ``shared_link_access_denied``. :rtype: bool """ return self._tag == 'shared_link_access_denied' def is_unsupported_link_type(self): """ Check if the union tag is ``unsupported_link_type``. :rtype: bool """ return self._tag == 'unsupported_link_type' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkError, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkError_validator = bv.Union(SharedLinkError) class GetSharedLinkFileError(SharedLinkError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.GetSharedLinkFileError.shared_link_is_directory: Directories cannot be retrieved by this endpoint. """ # Attribute is overwritten below the class definition shared_link_is_directory = None def is_shared_link_is_directory(self): """ Check if the union tag is ``shared_link_is_directory``. :rtype: bool """ return self._tag == 'shared_link_is_directory' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetSharedLinkFileError, self)._process_custom_annotations(annotation_type, field_path, processor) GetSharedLinkFileError_validator = bv.Union(GetSharedLinkFileError) class GetSharedLinkMetadataArg(bb.Struct): """ :ivar sharing.GetSharedLinkMetadataArg.url: URL of the shared link. :ivar sharing.GetSharedLinkMetadataArg.path: If the shared link is to a folder, this parameter can be used to retrieve the metadata for a specific file or sub-folder in this folder. A relative path should be used. :ivar sharing.GetSharedLinkMetadataArg.link_password: If the shared link has a password, this parameter can be used. """ __slots__ = [ '_url_value', '_path_value', '_link_password_value', ] _has_required_fields = True def __init__(self, url=None, path=None, link_password=None): self._url_value = bb.NOT_SET self._path_value = bb.NOT_SET self._link_password_value = bb.NOT_SET if url is not None: self.url = url if path is not None: self.path = path if link_password is not None: self.link_password = link_password # Instance attribute type: str (validator is set below) url = bb.Attribute("url") # Instance attribute type: str (validator is set below) path = bb.Attribute("path", nullable=True) # Instance attribute type: str (validator is set below) link_password = bb.Attribute("link_password", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetSharedLinkMetadataArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetSharedLinkMetadataArg_validator = bv.Struct(GetSharedLinkMetadataArg) class GetSharedLinksArg(bb.Struct): """ :ivar sharing.GetSharedLinksArg.path: See :meth:`dropbox.dropbox_client.Dropbox.sharing_get_shared_links` description. """ __slots__ = [ '_path_value', ] _has_required_fields = False def __init__(self, path=None): self._path_value = bb.NOT_SET if path is not None: self.path = path # Instance attribute type: str (validator is set below) path = bb.Attribute("path", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetSharedLinksArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetSharedLinksArg_validator = bv.Struct(GetSharedLinksArg) class GetSharedLinksError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param Optional[str] val: :rtype: GetSharedLinksError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: Optional[str] """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetSharedLinksError, self)._process_custom_annotations(annotation_type, field_path, processor) GetSharedLinksError_validator = bv.Union(GetSharedLinksError) class GetSharedLinksResult(bb.Struct): """ :ivar sharing.GetSharedLinksResult.links: Shared links applicable to the path argument. """ __slots__ = [ '_links_value', ] _has_required_fields = True def __init__(self, links=None): self._links_value = bb.NOT_SET if links is not None: self.links = links # Instance attribute type: list of [LinkMetadata] (validator is set below) links = bb.Attribute("links") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetSharedLinksResult, self)._process_custom_annotations(annotation_type, field_path, processor) GetSharedLinksResult_validator = bv.Struct(GetSharedLinksResult) class GroupInfo(team_common.GroupSummary): """ The information about a group. Groups is a way to manage a list of users who need same access permission to the shared folder. :ivar sharing.GroupInfo.group_type: The type of group. :ivar sharing.GroupInfo.is_member: If the current user is a member of the group. :ivar sharing.GroupInfo.is_owner: If the current user is an owner of the group. :ivar sharing.GroupInfo.same_team: If the group is owned by the current user's team. """ __slots__ = [ '_group_type_value', '_is_member_value', '_is_owner_value', '_same_team_value', ] _has_required_fields = True def __init__(self, group_name=None, group_id=None, group_management_type=None, group_type=None, is_member=None, is_owner=None, same_team=None, group_external_id=None, member_count=None): super(GroupInfo, self).__init__(group_name, group_id, group_management_type, group_external_id, member_count) self._group_type_value = bb.NOT_SET self._is_member_value = bb.NOT_SET self._is_owner_value = bb.NOT_SET self._same_team_value = bb.NOT_SET if group_type is not None: self.group_type = group_type if is_member is not None: self.is_member = is_member if is_owner is not None: self.is_owner = is_owner if same_team is not None: self.same_team = same_team # Instance attribute type: team_common.GroupType (validator is set below) group_type = bb.Attribute("group_type", user_defined=True) # Instance attribute type: bool (validator is set below) is_member = bb.Attribute("is_member") # Instance attribute type: bool (validator is set below) is_owner = bb.Attribute("is_owner") # Instance attribute type: bool (validator is set below) same_team = bb.Attribute("same_team") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupInfo, self)._process_custom_annotations(annotation_type, field_path, processor) GroupInfo_validator = bv.Struct(GroupInfo) class MembershipInfo(bb.Struct): """ The information about a member of the shared content. :ivar sharing.MembershipInfo.access_type: The access type for this member. It contains inherited access type from parent folder, and acquired access type from this folder. :ivar sharing.MembershipInfo.permissions: The permissions that requesting user has on this member. The set of permissions corresponds to the MemberActions in the request. :ivar sharing.MembershipInfo.initials: Never set. :ivar sharing.MembershipInfo.is_inherited: True if the member has access from a parent folder. """ __slots__ = [ '_access_type_value', '_permissions_value', '_initials_value', '_is_inherited_value', ] _has_required_fields = True def __init__(self, access_type=None, permissions=None, initials=None, is_inherited=None): self._access_type_value = bb.NOT_SET self._permissions_value = bb.NOT_SET self._initials_value = bb.NOT_SET self._is_inherited_value = bb.NOT_SET if access_type is not None: self.access_type = access_type if permissions is not None: self.permissions = permissions if initials is not None: self.initials = initials if is_inherited is not None: self.is_inherited = is_inherited # Instance attribute type: AccessLevel (validator is set below) access_type = bb.Attribute("access_type", user_defined=True) # Instance attribute type: list of [MemberPermission] (validator is set below) permissions = bb.Attribute("permissions", nullable=True) # Instance attribute type: str (validator is set below) initials = bb.Attribute("initials", nullable=True) # Instance attribute type: bool (validator is set below) is_inherited = bb.Attribute("is_inherited") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembershipInfo, self)._process_custom_annotations(annotation_type, field_path, processor) MembershipInfo_validator = bv.Struct(MembershipInfo) class GroupMembershipInfo(MembershipInfo): """ The information about a group member of the shared content. :ivar sharing.GroupMembershipInfo.group: The information about the membership group. """ __slots__ = [ '_group_value', ] _has_required_fields = True def __init__(self, access_type=None, group=None, permissions=None, initials=None, is_inherited=None): super(GroupMembershipInfo, self).__init__(access_type, permissions, initials, is_inherited) self._group_value = bb.NOT_SET if group is not None: self.group = group # Instance attribute type: GroupInfo (validator is set below) group = bb.Attribute("group", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMembershipInfo, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMembershipInfo_validator = bv.Struct(GroupMembershipInfo) class InsufficientPlan(bb.Struct): """ :ivar sharing.InsufficientPlan.message: A message to tell the user to upgrade in order to support expected action. :ivar sharing.InsufficientPlan.upsell_url: A URL to send the user to in order to obtain the account type they need, e.g. upgrading. Absent if there is no action the user can take to upgrade. """ __slots__ = [ '_message_value', '_upsell_url_value', ] _has_required_fields = True def __init__(self, message=None, upsell_url=None): self._message_value = bb.NOT_SET self._upsell_url_value = bb.NOT_SET if message is not None: self.message = message if upsell_url is not None: self.upsell_url = upsell_url # Instance attribute type: str (validator is set below) message = bb.Attribute("message") # Instance attribute type: str (validator is set below) upsell_url = bb.Attribute("upsell_url", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(InsufficientPlan, self)._process_custom_annotations(annotation_type, field_path, processor) InsufficientPlan_validator = bv.Struct(InsufficientPlan) class InsufficientQuotaAmounts(bb.Struct): """ :ivar sharing.InsufficientQuotaAmounts.space_needed: The amount of space needed to add the item (the size of the item). :ivar sharing.InsufficientQuotaAmounts.space_shortage: The amount of extra space needed to add the item. :ivar sharing.InsufficientQuotaAmounts.space_left: The amount of space left in the user's Dropbox, less than space_needed. """ __slots__ = [ '_space_needed_value', '_space_shortage_value', '_space_left_value', ] _has_required_fields = True def __init__(self, space_needed=None, space_shortage=None, space_left=None): self._space_needed_value = bb.NOT_SET self._space_shortage_value = bb.NOT_SET self._space_left_value = bb.NOT_SET if space_needed is not None: self.space_needed = space_needed if space_shortage is not None: self.space_shortage = space_shortage if space_left is not None: self.space_left = space_left # Instance attribute type: int (validator is set below) space_needed = bb.Attribute("space_needed") # Instance attribute type: int (validator is set below) space_shortage = bb.Attribute("space_shortage") # Instance attribute type: int (validator is set below) space_left = bb.Attribute("space_left") def _process_custom_annotations(self, annotation_type, field_path, processor): super(InsufficientQuotaAmounts, self)._process_custom_annotations(annotation_type, field_path, processor) InsufficientQuotaAmounts_validator = bv.Struct(InsufficientQuotaAmounts) class InviteeInfo(bb.Union): """ Information about the recipient of a shared content invitation. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str sharing.InviteeInfo.email: Email address of invited user. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def email(cls, val): """ Create an instance of this class set to the ``email`` tag with value ``val``. :param str val: :rtype: InviteeInfo """ return cls('email', val) def is_email(self): """ Check if the union tag is ``email``. :rtype: bool """ return self._tag == 'email' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_email(self): """ Email address of invited user. Only call this if :meth:`is_email` is true. :rtype: str """ if not self.is_email(): raise AttributeError("tag 'email' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(InviteeInfo, self)._process_custom_annotations(annotation_type, field_path, processor) InviteeInfo_validator = bv.Union(InviteeInfo) class InviteeMembershipInfo(MembershipInfo): """ Information about an invited member of a shared content. :ivar sharing.InviteeMembershipInfo.invitee: Recipient of the invitation. :ivar sharing.InviteeMembershipInfo.user: The user this invitation is tied to, if available. """ __slots__ = [ '_invitee_value', '_user_value', ] _has_required_fields = True def __init__(self, access_type=None, invitee=None, permissions=None, initials=None, is_inherited=None, user=None): super(InviteeMembershipInfo, self).__init__(access_type, permissions, initials, is_inherited) self._invitee_value = bb.NOT_SET self._user_value = bb.NOT_SET if invitee is not None: self.invitee = invitee if user is not None: self.user = user # Instance attribute type: InviteeInfo (validator is set below) invitee = bb.Attribute("invitee", user_defined=True) # Instance attribute type: UserInfo (validator is set below) user = bb.Attribute("user", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(InviteeMembershipInfo, self)._process_custom_annotations(annotation_type, field_path, processor) InviteeMembershipInfo_validator = bv.Struct(InviteeMembershipInfo) class JobError(bb.Union): """ Error occurred while performing an asynchronous job from :meth:`dropbox.dropbox_client.Dropbox.sharing_unshare_folder` or :meth:`dropbox.dropbox_client.Dropbox.sharing_remove_folder_member`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar UnshareFolderError JobError.unshare_folder_error: Error occurred while performing :meth:`dropbox.dropbox_client.Dropbox.sharing_unshare_folder` action. :ivar RemoveFolderMemberError JobError.remove_folder_member_error: Error occurred while performing :meth:`dropbox.dropbox_client.Dropbox.sharing_remove_folder_member` action. :ivar RelinquishFolderMembershipError JobError.relinquish_folder_membership_error: Error occurred while performing :meth:`dropbox.dropbox_client.Dropbox.sharing_relinquish_folder_membership` action. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def unshare_folder_error(cls, val): """ Create an instance of this class set to the ``unshare_folder_error`` tag with value ``val``. :param UnshareFolderError val: :rtype: JobError """ return cls('unshare_folder_error', val) @classmethod def remove_folder_member_error(cls, val): """ Create an instance of this class set to the ``remove_folder_member_error`` tag with value ``val``. :param RemoveFolderMemberError val: :rtype: JobError """ return cls('remove_folder_member_error', val) @classmethod def relinquish_folder_membership_error(cls, val): """ Create an instance of this class set to the ``relinquish_folder_membership_error`` tag with value ``val``. :param RelinquishFolderMembershipError val: :rtype: JobError """ return cls('relinquish_folder_membership_error', val) def is_unshare_folder_error(self): """ Check if the union tag is ``unshare_folder_error``. :rtype: bool """ return self._tag == 'unshare_folder_error' def is_remove_folder_member_error(self): """ Check if the union tag is ``remove_folder_member_error``. :rtype: bool """ return self._tag == 'remove_folder_member_error' def is_relinquish_folder_membership_error(self): """ Check if the union tag is ``relinquish_folder_membership_error``. :rtype: bool """ return self._tag == 'relinquish_folder_membership_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_unshare_folder_error(self): """ Error occurred while performing :meth:`dropbox.dropbox_client.Dropbox.sharing_unshare_folder` action. Only call this if :meth:`is_unshare_folder_error` is true. :rtype: UnshareFolderError """ if not self.is_unshare_folder_error(): raise AttributeError("tag 'unshare_folder_error' not set") return self._value def get_remove_folder_member_error(self): """ Error occurred while performing :meth:`dropbox.dropbox_client.Dropbox.sharing_remove_folder_member` action. Only call this if :meth:`is_remove_folder_member_error` is true. :rtype: RemoveFolderMemberError """ if not self.is_remove_folder_member_error(): raise AttributeError("tag 'remove_folder_member_error' not set") return self._value def get_relinquish_folder_membership_error(self): """ Error occurred while performing :meth:`dropbox.dropbox_client.Dropbox.sharing_relinquish_folder_membership` action. Only call this if :meth:`is_relinquish_folder_membership_error` is true. :rtype: RelinquishFolderMembershipError """ if not self.is_relinquish_folder_membership_error(): raise AttributeError("tag 'relinquish_folder_membership_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(JobError, self)._process_custom_annotations(annotation_type, field_path, processor) JobError_validator = bv.Union(JobError) class JobStatus(async_.PollResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.JobStatus.complete: The asynchronous job has finished. :ivar JobError JobStatus.failed: The asynchronous job returned an error. """ # Attribute is overwritten below the class definition complete = None @classmethod def failed(cls, val): """ Create an instance of this class set to the ``failed`` tag with value ``val``. :param JobError val: :rtype: JobStatus """ return cls('failed', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_failed(self): """ Check if the union tag is ``failed``. :rtype: bool """ return self._tag == 'failed' def get_failed(self): """ The asynchronous job returned an error. Only call this if :meth:`is_failed` is true. :rtype: JobError """ if not self.is_failed(): raise AttributeError("tag 'failed' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(JobStatus, self)._process_custom_annotations(annotation_type, field_path, processor) JobStatus_validator = bv.Union(JobStatus) class LinkAccessLevel(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.LinkAccessLevel.viewer: Users who use the link can view and comment on the content. :ivar sharing.LinkAccessLevel.editor: Users who use the link can edit, view and comment on the content. """ _catch_all = 'other' # Attribute is overwritten below the class definition viewer = None # Attribute is overwritten below the class definition editor = None # Attribute is overwritten below the class definition other = None def is_viewer(self): """ Check if the union tag is ``viewer``. :rtype: bool """ return self._tag == 'viewer' def is_editor(self): """ Check if the union tag is ``editor``. :rtype: bool """ return self._tag == 'editor' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LinkAccessLevel, self)._process_custom_annotations(annotation_type, field_path, processor) LinkAccessLevel_validator = bv.Union(LinkAccessLevel) class LinkAction(bb.Union): """ Actions that can be performed on a link. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.LinkAction.change_access_level: Change the access level of the link. :ivar sharing.LinkAction.change_audience: Change the audience of the link. :ivar sharing.LinkAction.remove_expiry: Remove the expiry date of the link. :ivar sharing.LinkAction.remove_password: Remove the password of the link. :ivar sharing.LinkAction.set_expiry: Create or modify the expiry date of the link. :ivar sharing.LinkAction.set_password: Create or modify the password of the link. """ _catch_all = 'other' # Attribute is overwritten below the class definition change_access_level = None # Attribute is overwritten below the class definition change_audience = None # Attribute is overwritten below the class definition remove_expiry = None # Attribute is overwritten below the class definition remove_password = None # Attribute is overwritten below the class definition set_expiry = None # Attribute is overwritten below the class definition set_password = None # Attribute is overwritten below the class definition other = None def is_change_access_level(self): """ Check if the union tag is ``change_access_level``. :rtype: bool """ return self._tag == 'change_access_level' def is_change_audience(self): """ Check if the union tag is ``change_audience``. :rtype: bool """ return self._tag == 'change_audience' def is_remove_expiry(self): """ Check if the union tag is ``remove_expiry``. :rtype: bool """ return self._tag == 'remove_expiry' def is_remove_password(self): """ Check if the union tag is ``remove_password``. :rtype: bool """ return self._tag == 'remove_password' def is_set_expiry(self): """ Check if the union tag is ``set_expiry``. :rtype: bool """ return self._tag == 'set_expiry' def is_set_password(self): """ Check if the union tag is ``set_password``. :rtype: bool """ return self._tag == 'set_password' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LinkAction, self)._process_custom_annotations(annotation_type, field_path, processor) LinkAction_validator = bv.Union(LinkAction) class LinkAudience(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.LinkAudience.public: Link is accessible by anyone. :ivar sharing.LinkAudience.team: Link is accessible only by team members. :ivar sharing.LinkAudience.no_one: The link can be used by no one. The link merely points the user to the content, and does not grant additional rights to the user. Members of the content who use this link can only access the content with their pre-existing access rights. :ivar sharing.LinkAudience.password: Use `require_password` instead. A link-specific password is required to access the link. Login is not required. :ivar sharing.LinkAudience.members: Link is accessible only by members of the content. """ _catch_all = 'other' # Attribute is overwritten below the class definition public = None # Attribute is overwritten below the class definition team = None # Attribute is overwritten below the class definition no_one = None # Attribute is overwritten below the class definition password = None # Attribute is overwritten below the class definition members = None # Attribute is overwritten below the class definition other = None def is_public(self): """ Check if the union tag is ``public``. :rtype: bool """ return self._tag == 'public' def is_team(self): """ Check if the union tag is ``team``. :rtype: bool """ return self._tag == 'team' def is_no_one(self): """ Check if the union tag is ``no_one``. :rtype: bool """ return self._tag == 'no_one' def is_password(self): """ Check if the union tag is ``password``. :rtype: bool """ return self._tag == 'password' def is_members(self): """ Check if the union tag is ``members``. :rtype: bool """ return self._tag == 'members' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LinkAudience, self)._process_custom_annotations(annotation_type, field_path, processor) LinkAudience_validator = bv.Union(LinkAudience) class VisibilityPolicyDisallowedReason(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.VisibilityPolicyDisallowedReason.delete_and_recreate: The user needs to delete and recreate the link to change the visibility policy. :ivar sharing.VisibilityPolicyDisallowedReason.restricted_by_shared_folder: The parent shared folder restricts sharing of links outside the shared folder. To change the visibility policy, remove the restriction from the parent shared folder. :ivar sharing.VisibilityPolicyDisallowedReason.restricted_by_team: The team policy prevents links being shared outside the team. :ivar sharing.VisibilityPolicyDisallowedReason.user_not_on_team: The user needs to be on a team to set this policy. :ivar sharing.VisibilityPolicyDisallowedReason.user_account_type: The user is a basic user or is on a limited team. :ivar sharing.VisibilityPolicyDisallowedReason.permission_denied: The user does not have permission. """ _catch_all = 'other' # Attribute is overwritten below the class definition delete_and_recreate = None # Attribute is overwritten below the class definition restricted_by_shared_folder = None # Attribute is overwritten below the class definition restricted_by_team = None # Attribute is overwritten below the class definition user_not_on_team = None # Attribute is overwritten below the class definition user_account_type = None # Attribute is overwritten below the class definition permission_denied = None # Attribute is overwritten below the class definition other = None def is_delete_and_recreate(self): """ Check if the union tag is ``delete_and_recreate``. :rtype: bool """ return self._tag == 'delete_and_recreate' def is_restricted_by_shared_folder(self): """ Check if the union tag is ``restricted_by_shared_folder``. :rtype: bool """ return self._tag == 'restricted_by_shared_folder' def is_restricted_by_team(self): """ Check if the union tag is ``restricted_by_team``. :rtype: bool """ return self._tag == 'restricted_by_team' def is_user_not_on_team(self): """ Check if the union tag is ``user_not_on_team``. :rtype: bool """ return self._tag == 'user_not_on_team' def is_user_account_type(self): """ Check if the union tag is ``user_account_type``. :rtype: bool """ return self._tag == 'user_account_type' def is_permission_denied(self): """ Check if the union tag is ``permission_denied``. :rtype: bool """ return self._tag == 'permission_denied' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(VisibilityPolicyDisallowedReason, self)._process_custom_annotations(annotation_type, field_path, processor) VisibilityPolicyDisallowedReason_validator = bv.Union(VisibilityPolicyDisallowedReason) class LinkAudienceDisallowedReason(VisibilityPolicyDisallowedReason): """ check documentation for VisibilityPolicyDisallowedReason. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ def _process_custom_annotations(self, annotation_type, field_path, processor): super(LinkAudienceDisallowedReason, self)._process_custom_annotations(annotation_type, field_path, processor) LinkAudienceDisallowedReason_validator = bv.Union(LinkAudienceDisallowedReason) class LinkAudienceOption(bb.Struct): """ :ivar sharing.LinkAudienceOption.audience: Specifies who can access the link. :ivar sharing.LinkAudienceOption.allowed: Whether the user calling this API can select this audience option. :ivar sharing.LinkAudienceOption.disallowed_reason: If ``allowed`` is ``False``, this will provide the reason that the user is not permitted to set the visibility to this policy. """ __slots__ = [ '_audience_value', '_allowed_value', '_disallowed_reason_value', ] _has_required_fields = True def __init__(self, audience=None, allowed=None, disallowed_reason=None): self._audience_value = bb.NOT_SET self._allowed_value = bb.NOT_SET self._disallowed_reason_value = bb.NOT_SET if audience is not None: self.audience = audience if allowed is not None: self.allowed = allowed if disallowed_reason is not None: self.disallowed_reason = disallowed_reason # Instance attribute type: LinkAudience (validator is set below) audience = bb.Attribute("audience", user_defined=True) # Instance attribute type: bool (validator is set below) allowed = bb.Attribute("allowed") # Instance attribute type: LinkAudienceDisallowedReason (validator is set below) disallowed_reason = bb.Attribute("disallowed_reason", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LinkAudienceOption, self)._process_custom_annotations(annotation_type, field_path, processor) LinkAudienceOption_validator = bv.Struct(LinkAudienceOption) class LinkExpiry(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.LinkExpiry.remove_expiry: Remove the currently set expiry for the link. :ivar datetime.datetime sharing.LinkExpiry.set_expiry: Set a new expiry or change an existing expiry. """ _catch_all = 'other' # Attribute is overwritten below the class definition remove_expiry = None # Attribute is overwritten below the class definition other = None @classmethod def set_expiry(cls, val): """ Create an instance of this class set to the ``set_expiry`` tag with value ``val``. :param datetime.datetime val: :rtype: LinkExpiry """ return cls('set_expiry', val) def is_remove_expiry(self): """ Check if the union tag is ``remove_expiry``. :rtype: bool """ return self._tag == 'remove_expiry' def is_set_expiry(self): """ Check if the union tag is ``set_expiry``. :rtype: bool """ return self._tag == 'set_expiry' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_set_expiry(self): """ Set a new expiry or change an existing expiry. Only call this if :meth:`is_set_expiry` is true. :rtype: datetime.datetime """ if not self.is_set_expiry(): raise AttributeError("tag 'set_expiry' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(LinkExpiry, self)._process_custom_annotations(annotation_type, field_path, processor) LinkExpiry_validator = bv.Union(LinkExpiry) class LinkPassword(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.LinkPassword.remove_password: Remove the currently set password for the link. :ivar str sharing.LinkPassword.set_password: Set a new password or change an existing password. """ _catch_all = 'other' # Attribute is overwritten below the class definition remove_password = None # Attribute is overwritten below the class definition other = None @classmethod def set_password(cls, val): """ Create an instance of this class set to the ``set_password`` tag with value ``val``. :param str val: :rtype: LinkPassword """ return cls('set_password', val) def is_remove_password(self): """ Check if the union tag is ``remove_password``. :rtype: bool """ return self._tag == 'remove_password' def is_set_password(self): """ Check if the union tag is ``set_password``. :rtype: bool """ return self._tag == 'set_password' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_set_password(self): """ Set a new password or change an existing password. Only call this if :meth:`is_set_password` is true. :rtype: str """ if not self.is_set_password(): raise AttributeError("tag 'set_password' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(LinkPassword, self)._process_custom_annotations(annotation_type, field_path, processor) LinkPassword_validator = bv.Union(LinkPassword) class LinkPermission(bb.Struct): """ Permissions for actions that can be performed on a link. """ __slots__ = [ '_action_value', '_allow_value', '_reason_value', ] _has_required_fields = True def __init__(self, action=None, allow=None, reason=None): self._action_value = bb.NOT_SET self._allow_value = bb.NOT_SET self._reason_value = bb.NOT_SET if action is not None: self.action = action if allow is not None: self.allow = allow if reason is not None: self.reason = reason # Instance attribute type: LinkAction (validator is set below) action = bb.Attribute("action", user_defined=True) # Instance attribute type: bool (validator is set below) allow = bb.Attribute("allow") # Instance attribute type: PermissionDeniedReason (validator is set below) reason = bb.Attribute("reason", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LinkPermission, self)._process_custom_annotations(annotation_type, field_path, processor) LinkPermission_validator = bv.Struct(LinkPermission) class LinkPermissions(bb.Struct): """ :ivar sharing.LinkPermissions.resolved_visibility: The current visibility of the link after considering the shared links policies of the the team (in case the link's owner is part of a team) and the shared folder (in case the linked file is part of a shared folder). This field is shown only if the caller has access to this info (the link's owner always has access to this data). For some links, an effective_audience value is returned instead. :ivar sharing.LinkPermissions.requested_visibility: The shared link's requested visibility. This can be overridden by the team and shared folder policies. The final visibility, after considering these policies, can be found in ``resolved_visibility``. This is shown only if the caller is the link's owner and resolved_visibility is returned instead of effective_audience. :ivar sharing.LinkPermissions.can_revoke: Whether the caller can revoke the shared link. :ivar sharing.LinkPermissions.revoke_failure_reason: The failure reason for revoking the link. This field will only be present if the ``can_revoke`` is ``False``. :ivar sharing.LinkPermissions.effective_audience: The type of audience who can benefit from the access level specified by the `link_access_level` field. :ivar sharing.LinkPermissions.link_access_level: The access level that the link will grant to its users. A link can grant additional rights to a user beyond their current access level. For example, if a user was invited as a viewer to a file, and then opens a link with `link_access_level` set to `editor`, then they will gain editor privileges. The `link_access_level` is a property of the link, and does not depend on who is calling this API. In particular, `link_access_level` does not take into account the API caller's current permissions to the content. :ivar sharing.LinkPermissions.visibility_policies: A list of policies that the user might be able to set for the visibility. :ivar sharing.LinkPermissions.can_set_expiry: Whether the user can set the expiry settings of the link. This refers to the ability to create a new expiry and modify an existing expiry. :ivar sharing.LinkPermissions.can_remove_expiry: Whether the user can remove the expiry of the link. :ivar sharing.LinkPermissions.allow_download: Whether the link can be downloaded or not. :ivar sharing.LinkPermissions.can_allow_download: Whether the user can allow downloads via the link. This refers to the ability to remove a no-download restriction on the link. :ivar sharing.LinkPermissions.can_disallow_download: Whether the user can disallow downloads via the link. This refers to the ability to impose a no-download restriction on the link. :ivar sharing.LinkPermissions.allow_comments: Whether comments are enabled for the linked file. This takes the team commenting policy into account. :ivar sharing.LinkPermissions.team_restricts_comments: Whether the team has disabled commenting globally. :ivar sharing.LinkPermissions.audience_options: A list of link audience options the user might be able to set as the new audience. :ivar sharing.LinkPermissions.can_set_password: Whether the user can set a password for the link. :ivar sharing.LinkPermissions.can_remove_password: Whether the user can remove the password of the link. :ivar sharing.LinkPermissions.require_password: Whether the user is required to provide a password to view the link. :ivar sharing.LinkPermissions.can_use_extended_sharing_controls: Whether the user can use extended sharing controls, based on their account type. """ __slots__ = [ '_resolved_visibility_value', '_requested_visibility_value', '_can_revoke_value', '_revoke_failure_reason_value', '_effective_audience_value', '_link_access_level_value', '_visibility_policies_value', '_can_set_expiry_value', '_can_remove_expiry_value', '_allow_download_value', '_can_allow_download_value', '_can_disallow_download_value', '_allow_comments_value', '_team_restricts_comments_value', '_audience_options_value', '_can_set_password_value', '_can_remove_password_value', '_require_password_value', '_can_use_extended_sharing_controls_value', ] _has_required_fields = True def __init__(self, can_revoke=None, visibility_policies=None, can_set_expiry=None, can_remove_expiry=None, allow_download=None, can_allow_download=None, can_disallow_download=None, allow_comments=None, team_restricts_comments=None, resolved_visibility=None, requested_visibility=None, revoke_failure_reason=None, effective_audience=None, link_access_level=None, audience_options=None, can_set_password=None, can_remove_password=None, require_password=None, can_use_extended_sharing_controls=None): self._resolved_visibility_value = bb.NOT_SET self._requested_visibility_value = bb.NOT_SET self._can_revoke_value = bb.NOT_SET self._revoke_failure_reason_value = bb.NOT_SET self._effective_audience_value = bb.NOT_SET self._link_access_level_value = bb.NOT_SET self._visibility_policies_value = bb.NOT_SET self._can_set_expiry_value = bb.NOT_SET self._can_remove_expiry_value = bb.NOT_SET self._allow_download_value = bb.NOT_SET self._can_allow_download_value = bb.NOT_SET self._can_disallow_download_value = bb.NOT_SET self._allow_comments_value = bb.NOT_SET self._team_restricts_comments_value = bb.NOT_SET self._audience_options_value = bb.NOT_SET self._can_set_password_value = bb.NOT_SET self._can_remove_password_value = bb.NOT_SET self._require_password_value = bb.NOT_SET self._can_use_extended_sharing_controls_value = bb.NOT_SET if resolved_visibility is not None: self.resolved_visibility = resolved_visibility if requested_visibility is not None: self.requested_visibility = requested_visibility if can_revoke is not None: self.can_revoke = can_revoke if revoke_failure_reason is not None: self.revoke_failure_reason = revoke_failure_reason if effective_audience is not None: self.effective_audience = effective_audience if link_access_level is not None: self.link_access_level = link_access_level if visibility_policies is not None: self.visibility_policies = visibility_policies if can_set_expiry is not None: self.can_set_expiry = can_set_expiry if can_remove_expiry is not None: self.can_remove_expiry = can_remove_expiry if allow_download is not None: self.allow_download = allow_download if can_allow_download is not None: self.can_allow_download = can_allow_download if can_disallow_download is not None: self.can_disallow_download = can_disallow_download if allow_comments is not None: self.allow_comments = allow_comments if team_restricts_comments is not None: self.team_restricts_comments = team_restricts_comments if audience_options is not None: self.audience_options = audience_options if can_set_password is not None: self.can_set_password = can_set_password if can_remove_password is not None: self.can_remove_password = can_remove_password if require_password is not None: self.require_password = require_password if can_use_extended_sharing_controls is not None: self.can_use_extended_sharing_controls = can_use_extended_sharing_controls # Instance attribute type: ResolvedVisibility (validator is set below) resolved_visibility = bb.Attribute("resolved_visibility", nullable=True, user_defined=True) # Instance attribute type: RequestedVisibility (validator is set below) requested_visibility = bb.Attribute("requested_visibility", nullable=True, user_defined=True) # Instance attribute type: bool (validator is set below) can_revoke = bb.Attribute("can_revoke") # Instance attribute type: SharedLinkAccessFailureReason (validator is set below) revoke_failure_reason = bb.Attribute("revoke_failure_reason", nullable=True, user_defined=True) # Instance attribute type: LinkAudience (validator is set below) effective_audience = bb.Attribute("effective_audience", nullable=True, user_defined=True) # Instance attribute type: LinkAccessLevel (validator is set below) link_access_level = bb.Attribute("link_access_level", nullable=True, user_defined=True) # Instance attribute type: list of [VisibilityPolicy] (validator is set below) visibility_policies = bb.Attribute("visibility_policies") # Instance attribute type: bool (validator is set below) can_set_expiry = bb.Attribute("can_set_expiry") # Instance attribute type: bool (validator is set below) can_remove_expiry = bb.Attribute("can_remove_expiry") # Instance attribute type: bool (validator is set below) allow_download = bb.Attribute("allow_download") # Instance attribute type: bool (validator is set below) can_allow_download = bb.Attribute("can_allow_download") # Instance attribute type: bool (validator is set below) can_disallow_download = bb.Attribute("can_disallow_download") # Instance attribute type: bool (validator is set below) allow_comments = bb.Attribute("allow_comments") # Instance attribute type: bool (validator is set below) team_restricts_comments = bb.Attribute("team_restricts_comments") # Instance attribute type: list of [LinkAudienceOption] (validator is set below) audience_options = bb.Attribute("audience_options", nullable=True) # Instance attribute type: bool (validator is set below) can_set_password = bb.Attribute("can_set_password", nullable=True) # Instance attribute type: bool (validator is set below) can_remove_password = bb.Attribute("can_remove_password", nullable=True) # Instance attribute type: bool (validator is set below) require_password = bb.Attribute("require_password", nullable=True) # Instance attribute type: bool (validator is set below) can_use_extended_sharing_controls = bb.Attribute("can_use_extended_sharing_controls", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LinkPermissions, self)._process_custom_annotations(annotation_type, field_path, processor) LinkPermissions_validator = bv.Struct(LinkPermissions) class LinkSettings(bb.Struct): """ Settings that apply to a link. :ivar sharing.LinkSettings.access_level: The access level on the link for this file. Currently, it only accepts 'viewer' and 'viewer_no_comment'. :ivar sharing.LinkSettings.audience: The type of audience on the link for this file. :ivar sharing.LinkSettings.expiry: An expiry timestamp to set on a link. :ivar sharing.LinkSettings.password: The password for the link. """ __slots__ = [ '_access_level_value', '_audience_value', '_expiry_value', '_password_value', ] _has_required_fields = False def __init__(self, access_level=None, audience=None, expiry=None, password=None): self._access_level_value = bb.NOT_SET self._audience_value = bb.NOT_SET self._expiry_value = bb.NOT_SET self._password_value = bb.NOT_SET if access_level is not None: self.access_level = access_level if audience is not None: self.audience = audience if expiry is not None: self.expiry = expiry if password is not None: self.password = password # Instance attribute type: AccessLevel (validator is set below) access_level = bb.Attribute("access_level", nullable=True, user_defined=True) # Instance attribute type: LinkAudience (validator is set below) audience = bb.Attribute("audience", nullable=True, user_defined=True) # Instance attribute type: LinkExpiry (validator is set below) expiry = bb.Attribute("expiry", nullable=True, user_defined=True) # Instance attribute type: LinkPassword (validator is set below) password = bb.Attribute("password", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LinkSettings, self)._process_custom_annotations(annotation_type, field_path, processor) LinkSettings_validator = bv.Struct(LinkSettings) class ListFileMembersArg(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members`. :ivar sharing.ListFileMembersArg.file: The file for which you want to see members. :ivar sharing.ListFileMembersArg.actions: The actions for which to return permissions on a member. :ivar sharing.ListFileMembersArg.include_inherited: Whether to include members who only have access from a parent shared folder. :ivar sharing.ListFileMembersArg.limit: Number of members to return max per query. Defaults to 100 if no limit is specified. """ __slots__ = [ '_file_value', '_actions_value', '_include_inherited_value', '_limit_value', ] _has_required_fields = True def __init__(self, file=None, actions=None, include_inherited=None, limit=None): self._file_value = bb.NOT_SET self._actions_value = bb.NOT_SET self._include_inherited_value = bb.NOT_SET self._limit_value = bb.NOT_SET if file is not None: self.file = file if actions is not None: self.actions = actions if include_inherited is not None: self.include_inherited = include_inherited if limit is not None: self.limit = limit # Instance attribute type: str (validator is set below) file = bb.Attribute("file") # Instance attribute type: list of [MemberAction] (validator is set below) actions = bb.Attribute("actions", nullable=True) # Instance attribute type: bool (validator is set below) include_inherited = bb.Attribute("include_inherited") # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileMembersArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileMembersArg_validator = bv.Struct(ListFileMembersArg) class ListFileMembersBatchArg(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members_batch`. :ivar sharing.ListFileMembersBatchArg.files: Files for which to return members. :ivar sharing.ListFileMembersBatchArg.limit: Number of members to return max per query. Defaults to 10 if no limit is specified. """ __slots__ = [ '_files_value', '_limit_value', ] _has_required_fields = True def __init__(self, files=None, limit=None): self._files_value = bb.NOT_SET self._limit_value = bb.NOT_SET if files is not None: self.files = files if limit is not None: self.limit = limit # Instance attribute type: list of [str] (validator is set below) files = bb.Attribute("files") # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileMembersBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileMembersBatchArg_validator = bv.Struct(ListFileMembersBatchArg) class ListFileMembersBatchResult(bb.Struct): """ Per-file result for :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members_batch`. :ivar sharing.ListFileMembersBatchResult.file: This is the input file identifier, whether an ID or a path. :ivar sharing.ListFileMembersBatchResult.result: The result for this particular file. """ __slots__ = [ '_file_value', '_result_value', ] _has_required_fields = True def __init__(self, file=None, result=None): self._file_value = bb.NOT_SET self._result_value = bb.NOT_SET if file is not None: self.file = file if result is not None: self.result = result # Instance attribute type: str (validator is set below) file = bb.Attribute("file") # Instance attribute type: ListFileMembersIndividualResult (validator is set below) result = bb.Attribute("result", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileMembersBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileMembersBatchResult_validator = bv.Struct(ListFileMembersBatchResult) class ListFileMembersContinueArg(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members_continue`. :ivar sharing.ListFileMembersContinueArg.cursor: The cursor returned by your last call to :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members`, :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members_continue`, or :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members_batch`. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileMembersContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileMembersContinueArg_validator = bv.Struct(ListFileMembersContinueArg) class ListFileMembersContinueError(bb.Union): """ Error for :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members_continue`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.ListFileMembersContinueError.invalid_cursor: ``ListFileMembersContinueArg.cursor`` is invalid. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_cursor = None # Attribute is overwritten below the class definition other = None @classmethod def user_error(cls, val): """ Create an instance of this class set to the ``user_error`` tag with value ``val``. :param SharingUserError val: :rtype: ListFileMembersContinueError """ return cls('user_error', val) @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharingFileAccessError val: :rtype: ListFileMembersContinueError """ return cls('access_error', val) def is_user_error(self): """ Check if the union tag is ``user_error``. :rtype: bool """ return self._tag == 'user_error' def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_user_error(self): """ Only call this if :meth:`is_user_error` is true. :rtype: SharingUserError """ if not self.is_user_error(): raise AttributeError("tag 'user_error' not set") return self._value def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharingFileAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileMembersContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileMembersContinueError_validator = bv.Union(ListFileMembersContinueError) class ListFileMembersCountResult(bb.Struct): """ :ivar sharing.ListFileMembersCountResult.members: A list of members on this file. :ivar sharing.ListFileMembersCountResult.member_count: The number of members on this file. This does not include inherited members. """ __slots__ = [ '_members_value', '_member_count_value', ] _has_required_fields = True def __init__(self, members=None, member_count=None): self._members_value = bb.NOT_SET self._member_count_value = bb.NOT_SET if members is not None: self.members = members if member_count is not None: self.member_count = member_count # Instance attribute type: SharedFileMembers (validator is set below) members = bb.Attribute("members", user_defined=True) # Instance attribute type: int (validator is set below) member_count = bb.Attribute("member_count") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileMembersCountResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileMembersCountResult_validator = bv.Struct(ListFileMembersCountResult) class ListFileMembersError(bb.Union): """ Error for :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def user_error(cls, val): """ Create an instance of this class set to the ``user_error`` tag with value ``val``. :param SharingUserError val: :rtype: ListFileMembersError """ return cls('user_error', val) @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharingFileAccessError val: :rtype: ListFileMembersError """ return cls('access_error', val) def is_user_error(self): """ Check if the union tag is ``user_error``. :rtype: bool """ return self._tag == 'user_error' def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_user_error(self): """ Only call this if :meth:`is_user_error` is true. :rtype: SharingUserError """ if not self.is_user_error(): raise AttributeError("tag 'user_error' not set") return self._value def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharingFileAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileMembersError, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileMembersError_validator = bv.Union(ListFileMembersError) class ListFileMembersIndividualResult(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar ListFileMembersCountResult ListFileMembersIndividualResult.result: The results of the query for this file if it was successful. :ivar SharingFileAccessError ListFileMembersIndividualResult.access_error: The result of the query for this file if it was an error. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def result(cls, val): """ Create an instance of this class set to the ``result`` tag with value ``val``. :param ListFileMembersCountResult val: :rtype: ListFileMembersIndividualResult """ return cls('result', val) @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharingFileAccessError val: :rtype: ListFileMembersIndividualResult """ return cls('access_error', val) def is_result(self): """ Check if the union tag is ``result``. :rtype: bool """ return self._tag == 'result' def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_result(self): """ The results of the query for this file if it was successful. Only call this if :meth:`is_result` is true. :rtype: ListFileMembersCountResult """ if not self.is_result(): raise AttributeError("tag 'result' not set") return self._value def get_access_error(self): """ The result of the query for this file if it was an error. Only call this if :meth:`is_access_error` is true. :rtype: SharingFileAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFileMembersIndividualResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListFileMembersIndividualResult_validator = bv.Union(ListFileMembersIndividualResult) class ListFilesArg(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.sharing_list_received_files`. :ivar sharing.ListFilesArg.limit: Number of files to return max per query. Defaults to 100 if no limit is specified. :ivar sharing.ListFilesArg.actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's ``SharedFileMetadata.permissions`` field describing the actions the authenticated user can perform on the file. """ __slots__ = [ '_limit_value', '_actions_value', ] _has_required_fields = False def __init__(self, limit=None, actions=None): self._limit_value = bb.NOT_SET self._actions_value = bb.NOT_SET if limit is not None: self.limit = limit if actions is not None: self.actions = actions # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") # Instance attribute type: list of [FileAction] (validator is set below) actions = bb.Attribute("actions", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFilesArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFilesArg_validator = bv.Struct(ListFilesArg) class ListFilesContinueArg(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.sharing_list_received_files_continue`. :ivar sharing.ListFilesContinueArg.cursor: Cursor in ``ListFilesResult.cursor``. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFilesContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFilesContinueArg_validator = bv.Struct(ListFilesContinueArg) class ListFilesContinueError(bb.Union): """ Error results for :meth:`dropbox.dropbox_client.Dropbox.sharing_list_received_files_continue`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar SharingUserError ListFilesContinueError.user_error: User account had a problem. :ivar sharing.ListFilesContinueError.invalid_cursor: ``ListFilesContinueArg.cursor`` is invalid. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_cursor = None # Attribute is overwritten below the class definition other = None @classmethod def user_error(cls, val): """ Create an instance of this class set to the ``user_error`` tag with value ``val``. :param SharingUserError val: :rtype: ListFilesContinueError """ return cls('user_error', val) def is_user_error(self): """ Check if the union tag is ``user_error``. :rtype: bool """ return self._tag == 'user_error' def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_user_error(self): """ User account had a problem. Only call this if :meth:`is_user_error` is true. :rtype: SharingUserError """ if not self.is_user_error(): raise AttributeError("tag 'user_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFilesContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) ListFilesContinueError_validator = bv.Union(ListFilesContinueError) class ListFilesResult(bb.Struct): """ Success results for :meth:`dropbox.dropbox_client.Dropbox.sharing_list_received_files`. :ivar sharing.ListFilesResult.entries: Information about the files shared with current user. :ivar sharing.ListFilesResult.cursor: Cursor used to obtain additional shared files. """ __slots__ = [ '_entries_value', '_cursor_value', ] _has_required_fields = True def __init__(self, entries=None, cursor=None): self._entries_value = bb.NOT_SET self._cursor_value = bb.NOT_SET if entries is not None: self.entries = entries if cursor is not None: self.cursor = cursor # Instance attribute type: list of [SharedFileMetadata] (validator is set below) entries = bb.Attribute("entries") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFilesResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListFilesResult_validator = bv.Struct(ListFilesResult) class ListFolderMembersCursorArg(bb.Struct): """ :ivar sharing.ListFolderMembersCursorArg.actions: This is a list indicating whether each returned member will include a boolean value ``MemberPermission.allow`` that describes whether the current user can perform the MemberAction on the member. :ivar sharing.ListFolderMembersCursorArg.limit: The maximum number of results that include members, groups and invitees to return per request. """ __slots__ = [ '_actions_value', '_limit_value', ] _has_required_fields = False def __init__(self, actions=None, limit=None): self._actions_value = bb.NOT_SET self._limit_value = bb.NOT_SET if actions is not None: self.actions = actions if limit is not None: self.limit = limit # Instance attribute type: list of [MemberAction] (validator is set below) actions = bb.Attribute("actions", nullable=True) # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderMembersCursorArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderMembersCursorArg_validator = bv.Struct(ListFolderMembersCursorArg) class ListFolderMembersArgs(ListFolderMembersCursorArg): """ :ivar sharing.ListFolderMembersArgs.shared_folder_id: The ID for the shared folder. """ __slots__ = [ '_shared_folder_id_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None, actions=None, limit=None): super(ListFolderMembersArgs, self).__init__(actions, limit) self._shared_folder_id_value = bb.NOT_SET if shared_folder_id is not None: self.shared_folder_id = shared_folder_id # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderMembersArgs, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderMembersArgs_validator = bv.Struct(ListFolderMembersArgs) class ListFolderMembersContinueArg(bb.Struct): """ :ivar sharing.ListFolderMembersContinueArg.cursor: The cursor returned by your last call to :meth:`dropbox.dropbox_client.Dropbox.sharing_list_folder_members` or :meth:`dropbox.dropbox_client.Dropbox.sharing_list_folder_members_continue`. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderMembersContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderMembersContinueArg_validator = bv.Struct(ListFolderMembersContinueArg) class ListFolderMembersContinueError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.ListFolderMembersContinueError.invalid_cursor: ``ListFolderMembersContinueArg.cursor`` is invalid. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_cursor = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharedFolderAccessError val: :rtype: ListFolderMembersContinueError """ return cls('access_error', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharedFolderAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFolderMembersContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) ListFolderMembersContinueError_validator = bv.Union(ListFolderMembersContinueError) class ListFoldersArgs(bb.Struct): """ :ivar sharing.ListFoldersArgs.limit: The maximum number of results to return per request. :ivar sharing.ListFoldersArgs.actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's ``SharedFolderMetadata.permissions`` field describing the actions the authenticated user can perform on the folder. """ __slots__ = [ '_limit_value', '_actions_value', ] _has_required_fields = False def __init__(self, limit=None, actions=None): self._limit_value = bb.NOT_SET self._actions_value = bb.NOT_SET if limit is not None: self.limit = limit if actions is not None: self.actions = actions # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") # Instance attribute type: list of [FolderAction] (validator is set below) actions = bb.Attribute("actions", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFoldersArgs, self)._process_custom_annotations(annotation_type, field_path, processor) ListFoldersArgs_validator = bv.Struct(ListFoldersArgs) class ListFoldersContinueArg(bb.Struct): """ :ivar sharing.ListFoldersContinueArg.cursor: The cursor returned by the previous API call specified in the endpoint description. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFoldersContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListFoldersContinueArg_validator = bv.Struct(ListFoldersContinueArg) class ListFoldersContinueError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.ListFoldersContinueError.invalid_cursor: ``ListFoldersContinueArg.cursor`` is invalid. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_cursor = None # Attribute is overwritten below the class definition other = None def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFoldersContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) ListFoldersContinueError_validator = bv.Union(ListFoldersContinueError) class ListFoldersResult(bb.Struct): """ Result for :meth:`dropbox.dropbox_client.Dropbox.sharing_list_folders` or :meth:`dropbox.dropbox_client.Dropbox.sharing_list_mountable_folders`, depending on which endpoint was requested. Unmounted shared folders can be identified by the absence of ``SharedFolderMetadata.path_lower``. :ivar sharing.ListFoldersResult.entries: List of all shared folders the authenticated user has access to. :ivar sharing.ListFoldersResult.cursor: Present if there are additional shared folders that have not been returned yet. Pass the cursor into the corresponding continue endpoint (either :meth:`dropbox.dropbox_client.Dropbox.sharing_list_folders_continue` or :meth:`dropbox.dropbox_client.Dropbox.sharing_list_mountable_folders_continue`) to list additional folders. """ __slots__ = [ '_entries_value', '_cursor_value', ] _has_required_fields = True def __init__(self, entries=None, cursor=None): self._entries_value = bb.NOT_SET self._cursor_value = bb.NOT_SET if entries is not None: self.entries = entries if cursor is not None: self.cursor = cursor # Instance attribute type: list of [SharedFolderMetadata] (validator is set below) entries = bb.Attribute("entries") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListFoldersResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListFoldersResult_validator = bv.Struct(ListFoldersResult) class ListSharedLinksArg(bb.Struct): """ :ivar sharing.ListSharedLinksArg.path: See :meth:`dropbox.dropbox_client.Dropbox.sharing_list_shared_links` description. :ivar sharing.ListSharedLinksArg.cursor: The cursor returned by your last call to :meth:`dropbox.dropbox_client.Dropbox.sharing_list_shared_links`. :ivar sharing.ListSharedLinksArg.direct_only: See :meth:`dropbox.dropbox_client.Dropbox.sharing_list_shared_links` description. """ __slots__ = [ '_path_value', '_cursor_value', '_direct_only_value', ] _has_required_fields = False def __init__(self, path=None, cursor=None, direct_only=None): self._path_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._direct_only_value = bb.NOT_SET if path is not None: self.path = path if cursor is not None: self.cursor = cursor if direct_only is not None: self.direct_only = direct_only # Instance attribute type: str (validator is set below) path = bb.Attribute("path", nullable=True) # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) # Instance attribute type: bool (validator is set below) direct_only = bb.Attribute("direct_only", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListSharedLinksArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListSharedLinksArg_validator = bv.Struct(ListSharedLinksArg) class ListSharedLinksError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.ListSharedLinksError.reset: Indicates that the cursor has been invalidated. Call :meth:`dropbox.dropbox_client.Dropbox.sharing_list_shared_links` to obtain a new cursor. """ _catch_all = 'other' # Attribute is overwritten below the class definition reset = None # Attribute is overwritten below the class definition other = None @classmethod def path(cls, val): """ Create an instance of this class set to the ``path`` tag with value ``val``. :param files.LookupError val: :rtype: ListSharedLinksError """ return cls('path', val) def is_path(self): """ Check if the union tag is ``path``. :rtype: bool """ return self._tag == 'path' def is_reset(self): """ Check if the union tag is ``reset``. :rtype: bool """ return self._tag == 'reset' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_path(self): """ Only call this if :meth:`is_path` is true. :rtype: files.LookupError """ if not self.is_path(): raise AttributeError("tag 'path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListSharedLinksError, self)._process_custom_annotations(annotation_type, field_path, processor) ListSharedLinksError_validator = bv.Union(ListSharedLinksError) class ListSharedLinksResult(bb.Struct): """ :ivar sharing.ListSharedLinksResult.links: Shared links applicable to the path argument. :ivar sharing.ListSharedLinksResult.has_more: Is true if there are additional shared links that have not been returned yet. Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.sharing_list_shared_links` to retrieve them. :ivar sharing.ListSharedLinksResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.sharing_list_shared_links` to obtain the additional links. Cursor is returned only if no path is given. """ __slots__ = [ '_links_value', '_has_more_value', '_cursor_value', ] _has_required_fields = True def __init__(self, links=None, has_more=None, cursor=None): self._links_value = bb.NOT_SET self._has_more_value = bb.NOT_SET self._cursor_value = bb.NOT_SET if links is not None: self.links = links if has_more is not None: self.has_more = has_more if cursor is not None: self.cursor = cursor # Instance attribute type: list of [SharedLinkMetadata] (validator is set below) links = bb.Attribute("links") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListSharedLinksResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListSharedLinksResult_validator = bv.Struct(ListSharedLinksResult) class MemberAccessLevelResult(bb.Struct): """ Contains information about a member's access level to content after an operation. :ivar sharing.MemberAccessLevelResult.access_level: The member still has this level of access to the content through a parent folder. :ivar sharing.MemberAccessLevelResult.warning: A localized string with additional information about why the user has this access level to the content. :ivar sharing.MemberAccessLevelResult.access_details: The parent folders that a member has access to. The field is present if the user has access to the first parent folder where the member gains access. """ __slots__ = [ '_access_level_value', '_warning_value', '_access_details_value', ] _has_required_fields = False def __init__(self, access_level=None, warning=None, access_details=None): self._access_level_value = bb.NOT_SET self._warning_value = bb.NOT_SET self._access_details_value = bb.NOT_SET if access_level is not None: self.access_level = access_level if warning is not None: self.warning = warning if access_details is not None: self.access_details = access_details # Instance attribute type: AccessLevel (validator is set below) access_level = bb.Attribute("access_level", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) warning = bb.Attribute("warning", nullable=True) # Instance attribute type: list of [ParentFolderAccessInfo] (validator is set below) access_details = bb.Attribute("access_details", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAccessLevelResult, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAccessLevelResult_validator = bv.Struct(MemberAccessLevelResult) class MemberAction(bb.Union): """ Actions that may be taken on members of a shared folder. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.MemberAction.leave_a_copy: Allow the member to keep a copy of the folder when removing. :ivar sharing.MemberAction.make_editor: Make the member an editor of the folder. :ivar sharing.MemberAction.make_owner: Make the member an owner of the folder. :ivar sharing.MemberAction.make_viewer: Make the member a viewer of the folder. :ivar sharing.MemberAction.make_viewer_no_comment: Make the member a viewer of the folder without commenting permissions. :ivar sharing.MemberAction.remove: Remove the member from the folder. """ _catch_all = 'other' # Attribute is overwritten below the class definition leave_a_copy = None # Attribute is overwritten below the class definition make_editor = None # Attribute is overwritten below the class definition make_owner = None # Attribute is overwritten below the class definition make_viewer = None # Attribute is overwritten below the class definition make_viewer_no_comment = None # Attribute is overwritten below the class definition remove = None # Attribute is overwritten below the class definition other = None def is_leave_a_copy(self): """ Check if the union tag is ``leave_a_copy``. :rtype: bool """ return self._tag == 'leave_a_copy' def is_make_editor(self): """ Check if the union tag is ``make_editor``. :rtype: bool """ return self._tag == 'make_editor' def is_make_owner(self): """ Check if the union tag is ``make_owner``. :rtype: bool """ return self._tag == 'make_owner' def is_make_viewer(self): """ Check if the union tag is ``make_viewer``. :rtype: bool """ return self._tag == 'make_viewer' def is_make_viewer_no_comment(self): """ Check if the union tag is ``make_viewer_no_comment``. :rtype: bool """ return self._tag == 'make_viewer_no_comment' def is_remove(self): """ Check if the union tag is ``remove``. :rtype: bool """ return self._tag == 'remove' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAction, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAction_validator = bv.Union(MemberAction) class MemberPermission(bb.Struct): """ Whether the user is allowed to take the action on the associated member. :ivar sharing.MemberPermission.action: The action that the user may wish to take on the member. :ivar sharing.MemberPermission.allow: True if the user is allowed to take the action. :ivar sharing.MemberPermission.reason: The reason why the user is denied the permission. Not present if the action is allowed. """ __slots__ = [ '_action_value', '_allow_value', '_reason_value', ] _has_required_fields = True def __init__(self, action=None, allow=None, reason=None): self._action_value = bb.NOT_SET self._allow_value = bb.NOT_SET self._reason_value = bb.NOT_SET if action is not None: self.action = action if allow is not None: self.allow = allow if reason is not None: self.reason = reason # Instance attribute type: MemberAction (validator is set below) action = bb.Attribute("action", user_defined=True) # Instance attribute type: bool (validator is set below) allow = bb.Attribute("allow") # Instance attribute type: PermissionDeniedReason (validator is set below) reason = bb.Attribute("reason", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberPermission, self)._process_custom_annotations(annotation_type, field_path, processor) MemberPermission_validator = bv.Struct(MemberPermission) class MemberPolicy(bb.Union): """ Policy governing who can be a member of a shared folder. Only applicable to folders owned by a user on a team. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.MemberPolicy.team: Only a teammate can become a member. :ivar sharing.MemberPolicy.anyone: Anyone can become a member. """ _catch_all = 'other' # Attribute is overwritten below the class definition team = None # Attribute is overwritten below the class definition anyone = None # Attribute is overwritten below the class definition other = None def is_team(self): """ Check if the union tag is ``team``. :rtype: bool """ return self._tag == 'team' def is_anyone(self): """ Check if the union tag is ``anyone``. :rtype: bool """ return self._tag == 'anyone' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) MemberPolicy_validator = bv.Union(MemberPolicy) class MemberSelector(bb.Union): """ Includes different ways to identify a member of a shared folder. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str sharing.MemberSelector.dropbox_id: Dropbox account, team member, or group ID of member. :ivar str sharing.MemberSelector.email: Email address of member. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def dropbox_id(cls, val): """ Create an instance of this class set to the ``dropbox_id`` tag with value ``val``. :param str val: :rtype: MemberSelector """ return cls('dropbox_id', val) @classmethod def email(cls, val): """ Create an instance of this class set to the ``email`` tag with value ``val``. :param str val: :rtype: MemberSelector """ return cls('email', val) def is_dropbox_id(self): """ Check if the union tag is ``dropbox_id``. :rtype: bool """ return self._tag == 'dropbox_id' def is_email(self): """ Check if the union tag is ``email``. :rtype: bool """ return self._tag == 'email' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_dropbox_id(self): """ Dropbox account, team member, or group ID of member. Only call this if :meth:`is_dropbox_id` is true. :rtype: str """ if not self.is_dropbox_id(): raise AttributeError("tag 'dropbox_id' not set") return self._value def get_email(self): """ Email address of member. Only call this if :meth:`is_email` is true. :rtype: str """ if not self.is_email(): raise AttributeError("tag 'email' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSelector, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSelector_validator = bv.Union(MemberSelector) class ModifySharedLinkSettingsArgs(bb.Struct): """ :ivar sharing.ModifySharedLinkSettingsArgs.url: URL of the shared link to change its settings. :ivar sharing.ModifySharedLinkSettingsArgs.settings: Set of settings for the shared link. :ivar sharing.ModifySharedLinkSettingsArgs.remove_expiration: If set to true, removes the expiration of the shared link. """ __slots__ = [ '_url_value', '_settings_value', '_remove_expiration_value', ] _has_required_fields = True def __init__(self, url=None, settings=None, remove_expiration=None): self._url_value = bb.NOT_SET self._settings_value = bb.NOT_SET self._remove_expiration_value = bb.NOT_SET if url is not None: self.url = url if settings is not None: self.settings = settings if remove_expiration is not None: self.remove_expiration = remove_expiration # Instance attribute type: str (validator is set below) url = bb.Attribute("url") # Instance attribute type: SharedLinkSettings (validator is set below) settings = bb.Attribute("settings", user_defined=True) # Instance attribute type: bool (validator is set below) remove_expiration = bb.Attribute("remove_expiration") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ModifySharedLinkSettingsArgs, self)._process_custom_annotations(annotation_type, field_path, processor) ModifySharedLinkSettingsArgs_validator = bv.Struct(ModifySharedLinkSettingsArgs) class ModifySharedLinkSettingsError(SharedLinkError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar SharedLinkSettingsError ModifySharedLinkSettingsError.settings_error: There is an error with the given settings. :ivar sharing.ModifySharedLinkSettingsError.email_not_verified: This user's email address is not verified. This functionality is only available on accounts with a verified email address. Users can verify their email address `here `_. """ # Attribute is overwritten below the class definition email_not_verified = None @classmethod def settings_error(cls, val): """ Create an instance of this class set to the ``settings_error`` tag with value ``val``. :param SharedLinkSettingsError val: :rtype: ModifySharedLinkSettingsError """ return cls('settings_error', val) def is_settings_error(self): """ Check if the union tag is ``settings_error``. :rtype: bool """ return self._tag == 'settings_error' def is_email_not_verified(self): """ Check if the union tag is ``email_not_verified``. :rtype: bool """ return self._tag == 'email_not_verified' def get_settings_error(self): """ There is an error with the given settings. Only call this if :meth:`is_settings_error` is true. :rtype: SharedLinkSettingsError """ if not self.is_settings_error(): raise AttributeError("tag 'settings_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ModifySharedLinkSettingsError, self)._process_custom_annotations(annotation_type, field_path, processor) ModifySharedLinkSettingsError_validator = bv.Union(ModifySharedLinkSettingsError) class MountFolderArg(bb.Struct): """ :ivar sharing.MountFolderArg.shared_folder_id: The ID of the shared folder to mount. """ __slots__ = [ '_shared_folder_id_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None): self._shared_folder_id_value = bb.NOT_SET if shared_folder_id is not None: self.shared_folder_id = shared_folder_id # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MountFolderArg, self)._process_custom_annotations(annotation_type, field_path, processor) MountFolderArg_validator = bv.Struct(MountFolderArg) class MountFolderError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.MountFolderError.inside_shared_folder: Mounting would cause a shared folder to be inside another, which is disallowed. :ivar InsufficientQuotaAmounts MountFolderError.insufficient_quota: The current user does not have enough space to mount the shared folder. :ivar sharing.MountFolderError.already_mounted: The shared folder is already mounted. :ivar sharing.MountFolderError.no_permission: The current user does not have permission to perform this action. :ivar sharing.MountFolderError.not_mountable: The shared folder is not mountable. One example where this can occur is when the shared folder belongs within a team folder in the user's Dropbox. """ _catch_all = 'other' # Attribute is overwritten below the class definition inside_shared_folder = None # Attribute is overwritten below the class definition already_mounted = None # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition not_mountable = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharedFolderAccessError val: :rtype: MountFolderError """ return cls('access_error', val) @classmethod def insufficient_quota(cls, val): """ Create an instance of this class set to the ``insufficient_quota`` tag with value ``val``. :param InsufficientQuotaAmounts val: :rtype: MountFolderError """ return cls('insufficient_quota', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_inside_shared_folder(self): """ Check if the union tag is ``inside_shared_folder``. :rtype: bool """ return self._tag == 'inside_shared_folder' def is_insufficient_quota(self): """ Check if the union tag is ``insufficient_quota``. :rtype: bool """ return self._tag == 'insufficient_quota' def is_already_mounted(self): """ Check if the union tag is ``already_mounted``. :rtype: bool """ return self._tag == 'already_mounted' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_not_mountable(self): """ Check if the union tag is ``not_mountable``. :rtype: bool """ return self._tag == 'not_mountable' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharedFolderAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def get_insufficient_quota(self): """ The current user does not have enough space to mount the shared folder. Only call this if :meth:`is_insufficient_quota` is true. :rtype: InsufficientQuotaAmounts """ if not self.is_insufficient_quota(): raise AttributeError("tag 'insufficient_quota' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MountFolderError, self)._process_custom_annotations(annotation_type, field_path, processor) MountFolderError_validator = bv.Union(MountFolderError) class ParentFolderAccessInfo(bb.Struct): """ Contains information about a parent folder that a member has access to. :ivar sharing.ParentFolderAccessInfo.folder_name: Display name for the folder. :ivar sharing.ParentFolderAccessInfo.shared_folder_id: The identifier of the parent shared folder. :ivar sharing.ParentFolderAccessInfo.permissions: The user's permissions for the parent shared folder. :ivar sharing.ParentFolderAccessInfo.path: The full path to the parent shared folder relative to the acting user's root. """ __slots__ = [ '_folder_name_value', '_shared_folder_id_value', '_permissions_value', '_path_value', ] _has_required_fields = True def __init__(self, folder_name=None, shared_folder_id=None, permissions=None, path=None): self._folder_name_value = bb.NOT_SET self._shared_folder_id_value = bb.NOT_SET self._permissions_value = bb.NOT_SET self._path_value = bb.NOT_SET if folder_name is not None: self.folder_name = folder_name if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if permissions is not None: self.permissions = permissions if path is not None: self.path = path # Instance attribute type: str (validator is set below) folder_name = bb.Attribute("folder_name") # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") # Instance attribute type: list of [MemberPermission] (validator is set below) permissions = bb.Attribute("permissions") # Instance attribute type: str (validator is set below) path = bb.Attribute("path") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ParentFolderAccessInfo, self)._process_custom_annotations(annotation_type, field_path, processor) ParentFolderAccessInfo_validator = bv.Struct(ParentFolderAccessInfo) class PathLinkMetadata(LinkMetadata): """ Metadata for a path-based shared link. :ivar sharing.PathLinkMetadata.path: Path in user's Dropbox. """ __slots__ = [ '_path_value', ] _has_required_fields = True def __init__(self, url=None, visibility=None, path=None, expires=None): super(PathLinkMetadata, self).__init__(url, visibility, expires) self._path_value = bb.NOT_SET if path is not None: self.path = path # Instance attribute type: str (validator is set below) path = bb.Attribute("path") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PathLinkMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) PathLinkMetadata_validator = bv.Struct(PathLinkMetadata) class PendingUploadMode(bb.Union): """ Flag to indicate pending upload default (for linking to not-yet-existing paths). This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.PendingUploadMode.file: Assume pending uploads are files. :ivar sharing.PendingUploadMode.folder: Assume pending uploads are folders. """ _catch_all = None # Attribute is overwritten below the class definition file = None # Attribute is overwritten below the class definition folder = None def is_file(self): """ Check if the union tag is ``file``. :rtype: bool """ return self._tag == 'file' def is_folder(self): """ Check if the union tag is ``folder``. :rtype: bool """ return self._tag == 'folder' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PendingUploadMode, self)._process_custom_annotations(annotation_type, field_path, processor) PendingUploadMode_validator = bv.Union(PendingUploadMode) class PermissionDeniedReason(bb.Union): """ Possible reasons the user is denied a permission. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.PermissionDeniedReason.user_not_same_team_as_owner: User is not on the same team as the folder owner. :ivar sharing.PermissionDeniedReason.user_not_allowed_by_owner: User is prohibited by the owner from taking the action. :ivar sharing.PermissionDeniedReason.target_is_indirect_member: Target is indirectly a member of the folder, for example by being part of a group. :ivar sharing.PermissionDeniedReason.target_is_owner: Target is the owner of the folder. :ivar sharing.PermissionDeniedReason.target_is_self: Target is the user itself. :ivar sharing.PermissionDeniedReason.target_not_active: Target is not an active member of the team. :ivar sharing.PermissionDeniedReason.folder_is_limited_team_folder: Folder is team folder for a limited team. :ivar sharing.PermissionDeniedReason.owner_not_on_team: The content owner needs to be on a Dropbox team to perform this action. :ivar sharing.PermissionDeniedReason.permission_denied: The user does not have permission to perform this action on the link. :ivar sharing.PermissionDeniedReason.restricted_by_team: The user's team policy prevents performing this action on the link. :ivar sharing.PermissionDeniedReason.user_account_type: The user's account type does not support this action. :ivar sharing.PermissionDeniedReason.user_not_on_team: The user needs to be on a Dropbox team to perform this action. :ivar sharing.PermissionDeniedReason.folder_is_inside_shared_folder: Folder is inside of another shared folder. :ivar sharing.PermissionDeniedReason.restricted_by_parent_folder: Policy cannot be changed due to restrictions from parent folder. """ _catch_all = 'other' # Attribute is overwritten below the class definition user_not_same_team_as_owner = None # Attribute is overwritten below the class definition user_not_allowed_by_owner = None # Attribute is overwritten below the class definition target_is_indirect_member = None # Attribute is overwritten below the class definition target_is_owner = None # Attribute is overwritten below the class definition target_is_self = None # Attribute is overwritten below the class definition target_not_active = None # Attribute is overwritten below the class definition folder_is_limited_team_folder = None # Attribute is overwritten below the class definition owner_not_on_team = None # Attribute is overwritten below the class definition permission_denied = None # Attribute is overwritten below the class definition restricted_by_team = None # Attribute is overwritten below the class definition user_account_type = None # Attribute is overwritten below the class definition user_not_on_team = None # Attribute is overwritten below the class definition folder_is_inside_shared_folder = None # Attribute is overwritten below the class definition restricted_by_parent_folder = None # Attribute is overwritten below the class definition other = None @classmethod def insufficient_plan(cls, val): """ Create an instance of this class set to the ``insufficient_plan`` tag with value ``val``. :param InsufficientPlan val: :rtype: PermissionDeniedReason """ return cls('insufficient_plan', val) def is_user_not_same_team_as_owner(self): """ Check if the union tag is ``user_not_same_team_as_owner``. :rtype: bool """ return self._tag == 'user_not_same_team_as_owner' def is_user_not_allowed_by_owner(self): """ Check if the union tag is ``user_not_allowed_by_owner``. :rtype: bool """ return self._tag == 'user_not_allowed_by_owner' def is_target_is_indirect_member(self): """ Check if the union tag is ``target_is_indirect_member``. :rtype: bool """ return self._tag == 'target_is_indirect_member' def is_target_is_owner(self): """ Check if the union tag is ``target_is_owner``. :rtype: bool """ return self._tag == 'target_is_owner' def is_target_is_self(self): """ Check if the union tag is ``target_is_self``. :rtype: bool """ return self._tag == 'target_is_self' def is_target_not_active(self): """ Check if the union tag is ``target_not_active``. :rtype: bool """ return self._tag == 'target_not_active' def is_folder_is_limited_team_folder(self): """ Check if the union tag is ``folder_is_limited_team_folder``. :rtype: bool """ return self._tag == 'folder_is_limited_team_folder' def is_owner_not_on_team(self): """ Check if the union tag is ``owner_not_on_team``. :rtype: bool """ return self._tag == 'owner_not_on_team' def is_permission_denied(self): """ Check if the union tag is ``permission_denied``. :rtype: bool """ return self._tag == 'permission_denied' def is_restricted_by_team(self): """ Check if the union tag is ``restricted_by_team``. :rtype: bool """ return self._tag == 'restricted_by_team' def is_user_account_type(self): """ Check if the union tag is ``user_account_type``. :rtype: bool """ return self._tag == 'user_account_type' def is_user_not_on_team(self): """ Check if the union tag is ``user_not_on_team``. :rtype: bool """ return self._tag == 'user_not_on_team' def is_folder_is_inside_shared_folder(self): """ Check if the union tag is ``folder_is_inside_shared_folder``. :rtype: bool """ return self._tag == 'folder_is_inside_shared_folder' def is_restricted_by_parent_folder(self): """ Check if the union tag is ``restricted_by_parent_folder``. :rtype: bool """ return self._tag == 'restricted_by_parent_folder' def is_insufficient_plan(self): """ Check if the union tag is ``insufficient_plan``. :rtype: bool """ return self._tag == 'insufficient_plan' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_insufficient_plan(self): """ Only call this if :meth:`is_insufficient_plan` is true. :rtype: InsufficientPlan """ if not self.is_insufficient_plan(): raise AttributeError("tag 'insufficient_plan' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(PermissionDeniedReason, self)._process_custom_annotations(annotation_type, field_path, processor) PermissionDeniedReason_validator = bv.Union(PermissionDeniedReason) class RelinquishFileMembershipArg(bb.Struct): """ :ivar sharing.RelinquishFileMembershipArg.file: The path or id for the file. """ __slots__ = [ '_file_value', ] _has_required_fields = True def __init__(self, file=None): self._file_value = bb.NOT_SET if file is not None: self.file = file # Instance attribute type: str (validator is set below) file = bb.Attribute("file") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelinquishFileMembershipArg, self)._process_custom_annotations(annotation_type, field_path, processor) RelinquishFileMembershipArg_validator = bv.Struct(RelinquishFileMembershipArg) class RelinquishFileMembershipError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.RelinquishFileMembershipError.group_access: The current user has access to the shared file via a group. You can't relinquish membership to a file shared via groups. :ivar sharing.RelinquishFileMembershipError.no_permission: The current user does not have permission to perform this action. """ _catch_all = 'other' # Attribute is overwritten below the class definition group_access = None # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharingFileAccessError val: :rtype: RelinquishFileMembershipError """ return cls('access_error', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_group_access(self): """ Check if the union tag is ``group_access``. :rtype: bool """ return self._tag == 'group_access' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharingFileAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelinquishFileMembershipError, self)._process_custom_annotations(annotation_type, field_path, processor) RelinquishFileMembershipError_validator = bv.Union(RelinquishFileMembershipError) class RelinquishFolderMembershipArg(bb.Struct): """ :ivar sharing.RelinquishFolderMembershipArg.shared_folder_id: The ID for the shared folder. :ivar sharing.RelinquishFolderMembershipArg.leave_a_copy: Keep a copy of the folder's contents upon relinquishing membership. This must be set to false when the folder is within a team folder or another shared folder. """ __slots__ = [ '_shared_folder_id_value', '_leave_a_copy_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None, leave_a_copy=None): self._shared_folder_id_value = bb.NOT_SET self._leave_a_copy_value = bb.NOT_SET if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if leave_a_copy is not None: self.leave_a_copy = leave_a_copy # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") # Instance attribute type: bool (validator is set below) leave_a_copy = bb.Attribute("leave_a_copy") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelinquishFolderMembershipArg, self)._process_custom_annotations(annotation_type, field_path, processor) RelinquishFolderMembershipArg_validator = bv.Struct(RelinquishFolderMembershipArg) class RelinquishFolderMembershipError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.RelinquishFolderMembershipError.folder_owner: The current user is the owner of the shared folder. Owners cannot relinquish membership to their own folders. Try unsharing or transferring ownership first. :ivar sharing.RelinquishFolderMembershipError.mounted: The shared folder is currently mounted. Unmount the shared folder before relinquishing membership. :ivar sharing.RelinquishFolderMembershipError.group_access: The current user has access to the shared folder via a group. You can't relinquish membership to folders shared via groups. :ivar sharing.RelinquishFolderMembershipError.team_folder: This action cannot be performed on a team shared folder. :ivar sharing.RelinquishFolderMembershipError.no_permission: The current user does not have permission to perform this action. :ivar sharing.RelinquishFolderMembershipError.no_explicit_access: The current user only has inherited access to the shared folder. You can't relinquish inherited membership to folders. """ _catch_all = 'other' # Attribute is overwritten below the class definition folder_owner = None # Attribute is overwritten below the class definition mounted = None # Attribute is overwritten below the class definition group_access = None # Attribute is overwritten below the class definition team_folder = None # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition no_explicit_access = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharedFolderAccessError val: :rtype: RelinquishFolderMembershipError """ return cls('access_error', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_folder_owner(self): """ Check if the union tag is ``folder_owner``. :rtype: bool """ return self._tag == 'folder_owner' def is_mounted(self): """ Check if the union tag is ``mounted``. :rtype: bool """ return self._tag == 'mounted' def is_group_access(self): """ Check if the union tag is ``group_access``. :rtype: bool """ return self._tag == 'group_access' def is_team_folder(self): """ Check if the union tag is ``team_folder``. :rtype: bool """ return self._tag == 'team_folder' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_no_explicit_access(self): """ Check if the union tag is ``no_explicit_access``. :rtype: bool """ return self._tag == 'no_explicit_access' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharedFolderAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelinquishFolderMembershipError, self)._process_custom_annotations(annotation_type, field_path, processor) RelinquishFolderMembershipError_validator = bv.Union(RelinquishFolderMembershipError) class RemoveFileMemberArg(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.sharing_remove_file_member_2`. :ivar sharing.RemoveFileMemberArg.file: File from which to remove members. :ivar sharing.RemoveFileMemberArg.member: Member to remove from this file. Note that even if an email is specified, it may result in the removal of a user (not an invitee) if the user's main account corresponds to that email address. """ __slots__ = [ '_file_value', '_member_value', ] _has_required_fields = True def __init__(self, file=None, member=None): self._file_value = bb.NOT_SET self._member_value = bb.NOT_SET if file is not None: self.file = file if member is not None: self.member = member # Instance attribute type: str (validator is set below) file = bb.Attribute("file") # Instance attribute type: MemberSelector (validator is set below) member = bb.Attribute("member", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemoveFileMemberArg, self)._process_custom_annotations(annotation_type, field_path, processor) RemoveFileMemberArg_validator = bv.Struct(RemoveFileMemberArg) class RemoveFileMemberError(bb.Union): """ Errors for :meth:`dropbox.dropbox_client.Dropbox.sharing_remove_file_member_2`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar MemberAccessLevelResult RemoveFileMemberError.no_explicit_access: This member does not have explicit access to the file and therefore cannot be removed. The return value is the access that a user might have to the file from a parent folder. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def user_error(cls, val): """ Create an instance of this class set to the ``user_error`` tag with value ``val``. :param SharingUserError val: :rtype: RemoveFileMemberError """ return cls('user_error', val) @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharingFileAccessError val: :rtype: RemoveFileMemberError """ return cls('access_error', val) @classmethod def no_explicit_access(cls, val): """ Create an instance of this class set to the ``no_explicit_access`` tag with value ``val``. :param MemberAccessLevelResult val: :rtype: RemoveFileMemberError """ return cls('no_explicit_access', val) def is_user_error(self): """ Check if the union tag is ``user_error``. :rtype: bool """ return self._tag == 'user_error' def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_no_explicit_access(self): """ Check if the union tag is ``no_explicit_access``. :rtype: bool """ return self._tag == 'no_explicit_access' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_user_error(self): """ Only call this if :meth:`is_user_error` is true. :rtype: SharingUserError """ if not self.is_user_error(): raise AttributeError("tag 'user_error' not set") return self._value def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharingFileAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def get_no_explicit_access(self): """ This member does not have explicit access to the file and therefore cannot be removed. The return value is the access that a user might have to the file from a parent folder. Only call this if :meth:`is_no_explicit_access` is true. :rtype: MemberAccessLevelResult """ if not self.is_no_explicit_access(): raise AttributeError("tag 'no_explicit_access' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemoveFileMemberError, self)._process_custom_annotations(annotation_type, field_path, processor) RemoveFileMemberError_validator = bv.Union(RemoveFileMemberError) class RemoveFolderMemberArg(bb.Struct): """ :ivar sharing.RemoveFolderMemberArg.shared_folder_id: The ID for the shared folder. :ivar sharing.RemoveFolderMemberArg.member: The member to remove from the folder. :ivar sharing.RemoveFolderMemberArg.leave_a_copy: If true, the removed user will keep their copy of the folder after it's unshared, assuming it was mounted. Otherwise, it will be removed from their Dropbox. This must be set to false when removing a group, or when the folder is within a team folder or another shared folder. """ __slots__ = [ '_shared_folder_id_value', '_member_value', '_leave_a_copy_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None, member=None, leave_a_copy=None): self._shared_folder_id_value = bb.NOT_SET self._member_value = bb.NOT_SET self._leave_a_copy_value = bb.NOT_SET if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if member is not None: self.member = member if leave_a_copy is not None: self.leave_a_copy = leave_a_copy # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") # Instance attribute type: MemberSelector (validator is set below) member = bb.Attribute("member", user_defined=True) # Instance attribute type: bool (validator is set below) leave_a_copy = bb.Attribute("leave_a_copy") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemoveFolderMemberArg, self)._process_custom_annotations(annotation_type, field_path, processor) RemoveFolderMemberArg_validator = bv.Struct(RemoveFolderMemberArg) class RemoveFolderMemberError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.RemoveFolderMemberError.folder_owner: The target user is the owner of the shared folder. You can't remove this user until ownership has been transferred to another member. :ivar sharing.RemoveFolderMemberError.group_access: The target user has access to the shared folder via a group. :ivar sharing.RemoveFolderMemberError.team_folder: This action cannot be performed on a team shared folder. :ivar sharing.RemoveFolderMemberError.no_permission: The current user does not have permission to perform this action. :ivar sharing.RemoveFolderMemberError.too_many_files: This shared folder has too many files for leaving a copy. You can still remove this user without leaving a copy. """ _catch_all = 'other' # Attribute is overwritten below the class definition folder_owner = None # Attribute is overwritten below the class definition group_access = None # Attribute is overwritten below the class definition team_folder = None # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition too_many_files = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharedFolderAccessError val: :rtype: RemoveFolderMemberError """ return cls('access_error', val) @classmethod def member_error(cls, val): """ Create an instance of this class set to the ``member_error`` tag with value ``val``. :param SharedFolderMemberError val: :rtype: RemoveFolderMemberError """ return cls('member_error', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_member_error(self): """ Check if the union tag is ``member_error``. :rtype: bool """ return self._tag == 'member_error' def is_folder_owner(self): """ Check if the union tag is ``folder_owner``. :rtype: bool """ return self._tag == 'folder_owner' def is_group_access(self): """ Check if the union tag is ``group_access``. :rtype: bool """ return self._tag == 'group_access' def is_team_folder(self): """ Check if the union tag is ``team_folder``. :rtype: bool """ return self._tag == 'team_folder' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_too_many_files(self): """ Check if the union tag is ``too_many_files``. :rtype: bool """ return self._tag == 'too_many_files' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharedFolderAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def get_member_error(self): """ Only call this if :meth:`is_member_error` is true. :rtype: SharedFolderMemberError """ if not self.is_member_error(): raise AttributeError("tag 'member_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemoveFolderMemberError, self)._process_custom_annotations(annotation_type, field_path, processor) RemoveFolderMemberError_validator = bv.Union(RemoveFolderMemberError) class RemoveMemberJobStatus(async_.PollResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar MemberAccessLevelResult RemoveMemberJobStatus.complete: Removing the folder member has finished. The value is information about whether the member has another form of access. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param MemberAccessLevelResult val: :rtype: RemoveMemberJobStatus """ return cls('complete', val) @classmethod def failed(cls, val): """ Create an instance of this class set to the ``failed`` tag with value ``val``. :param RemoveFolderMemberError val: :rtype: RemoveMemberJobStatus """ return cls('failed', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_failed(self): """ Check if the union tag is ``failed``. :rtype: bool """ return self._tag == 'failed' def get_complete(self): """ Removing the folder member has finished. The value is information about whether the member has another form of access. Only call this if :meth:`is_complete` is true. :rtype: MemberAccessLevelResult """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def get_failed(self): """ Only call this if :meth:`is_failed` is true. :rtype: RemoveFolderMemberError """ if not self.is_failed(): raise AttributeError("tag 'failed' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemoveMemberJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor) RemoveMemberJobStatus_validator = bv.Union(RemoveMemberJobStatus) class RequestedLinkAccessLevel(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.RequestedLinkAccessLevel.viewer: Users who use the link can view and comment on the content. :ivar sharing.RequestedLinkAccessLevel.editor: Users who use the link can edit, view and comment on the content. Note not all file types support edit links yet. :ivar sharing.RequestedLinkAccessLevel.max: Request for the maximum access level you can set the link to. :ivar sharing.RequestedLinkAccessLevel.default: Request for the default access level the user has set. """ _catch_all = 'other' # Attribute is overwritten below the class definition viewer = None # Attribute is overwritten below the class definition editor = None # Attribute is overwritten below the class definition max = None # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition other = None def is_viewer(self): """ Check if the union tag is ``viewer``. :rtype: bool """ return self._tag == 'viewer' def is_editor(self): """ Check if the union tag is ``editor``. :rtype: bool """ return self._tag == 'editor' def is_max(self): """ Check if the union tag is ``max``. :rtype: bool """ return self._tag == 'max' def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(RequestedLinkAccessLevel, self)._process_custom_annotations(annotation_type, field_path, processor) RequestedLinkAccessLevel_validator = bv.Union(RequestedLinkAccessLevel) class RevokeSharedLinkArg(bb.Struct): """ :ivar sharing.RevokeSharedLinkArg.url: URL of the shared link. """ __slots__ = [ '_url_value', ] _has_required_fields = True def __init__(self, url=None): self._url_value = bb.NOT_SET if url is not None: self.url = url # Instance attribute type: str (validator is set below) url = bb.Attribute("url") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeSharedLinkArg, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeSharedLinkArg_validator = bv.Struct(RevokeSharedLinkArg) class RevokeSharedLinkError(SharedLinkError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.RevokeSharedLinkError.shared_link_malformed: Shared link is malformed. """ # Attribute is overwritten below the class definition shared_link_malformed = None def is_shared_link_malformed(self): """ Check if the union tag is ``shared_link_malformed``. :rtype: bool """ return self._tag == 'shared_link_malformed' def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeSharedLinkError, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeSharedLinkError_validator = bv.Union(RevokeSharedLinkError) class SetAccessInheritanceArg(bb.Struct): """ :ivar sharing.SetAccessInheritanceArg.access_inheritance: The access inheritance settings for the folder. :ivar sharing.SetAccessInheritanceArg.shared_folder_id: The ID for the shared folder. """ __slots__ = [ '_access_inheritance_value', '_shared_folder_id_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None, access_inheritance=None): self._access_inheritance_value = bb.NOT_SET self._shared_folder_id_value = bb.NOT_SET if access_inheritance is not None: self.access_inheritance = access_inheritance if shared_folder_id is not None: self.shared_folder_id = shared_folder_id # Instance attribute type: AccessInheritance (validator is set below) access_inheritance = bb.Attribute("access_inheritance", user_defined=True) # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SetAccessInheritanceArg, self)._process_custom_annotations(annotation_type, field_path, processor) SetAccessInheritanceArg_validator = bv.Struct(SetAccessInheritanceArg) class SetAccessInheritanceError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar SharedFolderAccessError SetAccessInheritanceError.access_error: Unable to access shared folder. :ivar sharing.SetAccessInheritanceError.no_permission: The current user does not have permission to perform this action. """ _catch_all = 'other' # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharedFolderAccessError val: :rtype: SetAccessInheritanceError """ return cls('access_error', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Unable to access shared folder. Only call this if :meth:`is_access_error` is true. :rtype: SharedFolderAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SetAccessInheritanceError, self)._process_custom_annotations(annotation_type, field_path, processor) SetAccessInheritanceError_validator = bv.Union(SetAccessInheritanceError) class ShareFolderArgBase(bb.Struct): """ :ivar sharing.ShareFolderArgBase.acl_update_policy: Who can add and remove members of this shared folder. :ivar sharing.ShareFolderArgBase.force_async: Whether to force the share to happen asynchronously. :ivar sharing.ShareFolderArgBase.member_policy: Who can be a member of this shared folder. Only applicable if the current user is on a team. :ivar sharing.ShareFolderArgBase.path: The path or the file id to the folder to share. If it does not exist, then a new one is created. :ivar sharing.ShareFolderArgBase.shared_link_policy: The policy to apply to shared links created for content inside this shared folder. The current user must be on a team to set this policy to ``SharedLinkPolicy.members``. :ivar sharing.ShareFolderArgBase.viewer_info_policy: Who can enable/disable viewer info for this shared folder. :ivar sharing.ShareFolderArgBase.access_inheritance: The access inheritance settings for the folder. """ __slots__ = [ '_acl_update_policy_value', '_force_async_value', '_member_policy_value', '_path_value', '_shared_link_policy_value', '_viewer_info_policy_value', '_access_inheritance_value', ] _has_required_fields = True def __init__(self, path=None, acl_update_policy=None, force_async=None, member_policy=None, shared_link_policy=None, viewer_info_policy=None, access_inheritance=None): self._acl_update_policy_value = bb.NOT_SET self._force_async_value = bb.NOT_SET self._member_policy_value = bb.NOT_SET self._path_value = bb.NOT_SET self._shared_link_policy_value = bb.NOT_SET self._viewer_info_policy_value = bb.NOT_SET self._access_inheritance_value = bb.NOT_SET if acl_update_policy is not None: self.acl_update_policy = acl_update_policy if force_async is not None: self.force_async = force_async if member_policy is not None: self.member_policy = member_policy if path is not None: self.path = path if shared_link_policy is not None: self.shared_link_policy = shared_link_policy if viewer_info_policy is not None: self.viewer_info_policy = viewer_info_policy if access_inheritance is not None: self.access_inheritance = access_inheritance # Instance attribute type: AclUpdatePolicy (validator is set below) acl_update_policy = bb.Attribute("acl_update_policy", nullable=True, user_defined=True) # Instance attribute type: bool (validator is set below) force_async = bb.Attribute("force_async") # Instance attribute type: MemberPolicy (validator is set below) member_policy = bb.Attribute("member_policy", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) path = bb.Attribute("path") # Instance attribute type: SharedLinkPolicy (validator is set below) shared_link_policy = bb.Attribute("shared_link_policy", nullable=True, user_defined=True) # Instance attribute type: ViewerInfoPolicy (validator is set below) viewer_info_policy = bb.Attribute("viewer_info_policy", nullable=True, user_defined=True) # Instance attribute type: AccessInheritance (validator is set below) access_inheritance = bb.Attribute("access_inheritance", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShareFolderArgBase, self)._process_custom_annotations(annotation_type, field_path, processor) ShareFolderArgBase_validator = bv.Struct(ShareFolderArgBase) class ShareFolderArg(ShareFolderArgBase): """ :ivar sharing.ShareFolderArg.actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's ``SharedFolderMetadata.permissions`` field describing the actions the authenticated user can perform on the folder. :ivar sharing.ShareFolderArg.link_settings: Settings on the link for this folder. """ __slots__ = [ '_actions_value', '_link_settings_value', ] _has_required_fields = True def __init__(self, path=None, acl_update_policy=None, force_async=None, member_policy=None, shared_link_policy=None, viewer_info_policy=None, access_inheritance=None, actions=None, link_settings=None): super(ShareFolderArg, self).__init__(path, acl_update_policy, force_async, member_policy, shared_link_policy, viewer_info_policy, access_inheritance) self._actions_value = bb.NOT_SET self._link_settings_value = bb.NOT_SET if actions is not None: self.actions = actions if link_settings is not None: self.link_settings = link_settings # Instance attribute type: list of [FolderAction] (validator is set below) actions = bb.Attribute("actions", nullable=True) # Instance attribute type: LinkSettings (validator is set below) link_settings = bb.Attribute("link_settings", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShareFolderArg, self)._process_custom_annotations(annotation_type, field_path, processor) ShareFolderArg_validator = bv.Struct(ShareFolderArg) class ShareFolderErrorBase(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.ShareFolderErrorBase.email_unverified: This user's email address is not verified. This functionality is only available on accounts with a verified email address. Users can verify their email address `here `_. :ivar SharePathError ShareFolderErrorBase.bad_path: ``ShareFolderArg.path`` is invalid. :ivar sharing.ShareFolderErrorBase.team_policy_disallows_member_policy: Team policy is more restrictive than ``ShareFolderArg.member_policy``. :ivar sharing.ShareFolderErrorBase.disallowed_shared_link_policy: The current user's account is not allowed to select the specified ``ShareFolderArg.shared_link_policy``. """ _catch_all = 'other' # Attribute is overwritten below the class definition email_unverified = None # Attribute is overwritten below the class definition team_policy_disallows_member_policy = None # Attribute is overwritten below the class definition disallowed_shared_link_policy = None # Attribute is overwritten below the class definition other = None @classmethod def bad_path(cls, val): """ Create an instance of this class set to the ``bad_path`` tag with value ``val``. :param SharePathError val: :rtype: ShareFolderErrorBase """ return cls('bad_path', val) def is_email_unverified(self): """ Check if the union tag is ``email_unverified``. :rtype: bool """ return self._tag == 'email_unverified' def is_bad_path(self): """ Check if the union tag is ``bad_path``. :rtype: bool """ return self._tag == 'bad_path' def is_team_policy_disallows_member_policy(self): """ Check if the union tag is ``team_policy_disallows_member_policy``. :rtype: bool """ return self._tag == 'team_policy_disallows_member_policy' def is_disallowed_shared_link_policy(self): """ Check if the union tag is ``disallowed_shared_link_policy``. :rtype: bool """ return self._tag == 'disallowed_shared_link_policy' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_bad_path(self): """ ``ShareFolderArg.path`` is invalid. Only call this if :meth:`is_bad_path` is true. :rtype: SharePathError """ if not self.is_bad_path(): raise AttributeError("tag 'bad_path' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShareFolderErrorBase, self)._process_custom_annotations(annotation_type, field_path, processor) ShareFolderErrorBase_validator = bv.Union(ShareFolderErrorBase) class ShareFolderError(ShareFolderErrorBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.ShareFolderError.no_permission: The current user does not have permission to perform this action. """ # Attribute is overwritten below the class definition no_permission = None def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShareFolderError, self)._process_custom_annotations(annotation_type, field_path, processor) ShareFolderError_validator = bv.Union(ShareFolderError) class ShareFolderJobStatus(async_.PollResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar SharedFolderMetadata ShareFolderJobStatus.complete: The share job has finished. The value is the metadata for the folder. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param SharedFolderMetadata val: :rtype: ShareFolderJobStatus """ return cls('complete', val) @classmethod def failed(cls, val): """ Create an instance of this class set to the ``failed`` tag with value ``val``. :param ShareFolderError val: :rtype: ShareFolderJobStatus """ return cls('failed', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_failed(self): """ Check if the union tag is ``failed``. :rtype: bool """ return self._tag == 'failed' def get_complete(self): """ The share job has finished. The value is the metadata for the folder. Only call this if :meth:`is_complete` is true. :rtype: SharedFolderMetadata """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def get_failed(self): """ Only call this if :meth:`is_failed` is true. :rtype: ShareFolderError """ if not self.is_failed(): raise AttributeError("tag 'failed' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShareFolderJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor) ShareFolderJobStatus_validator = bv.Union(ShareFolderJobStatus) class ShareFolderLaunch(async_.LaunchResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param SharedFolderMetadata val: :rtype: ShareFolderLaunch """ return cls('complete', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def get_complete(self): """ Only call this if :meth:`is_complete` is true. :rtype: SharedFolderMetadata """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShareFolderLaunch, self)._process_custom_annotations(annotation_type, field_path, processor) ShareFolderLaunch_validator = bv.Union(ShareFolderLaunch) class SharePathError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.SharePathError.is_file: A file is at the specified path. :ivar sharing.SharePathError.inside_shared_folder: We do not support sharing a folder inside a shared folder. :ivar sharing.SharePathError.contains_shared_folder: We do not support shared folders that contain shared folders. :ivar sharing.SharePathError.contains_app_folder: We do not support shared folders that contain app folders. :ivar sharing.SharePathError.contains_team_folder: We do not support shared folders that contain team folders. :ivar sharing.SharePathError.is_app_folder: We do not support sharing an app folder. :ivar sharing.SharePathError.inside_app_folder: We do not support sharing a folder inside an app folder. :ivar sharing.SharePathError.is_public_folder: A public folder can't be shared this way. Use a public link instead. :ivar sharing.SharePathError.inside_public_folder: A folder inside a public folder can't be shared this way. Use a public link instead. :ivar SharedFolderMetadata SharePathError.already_shared: Folder is already shared. Contains metadata about the existing shared folder. :ivar sharing.SharePathError.invalid_path: Path is not valid. :ivar sharing.SharePathError.is_osx_package: We do not support sharing a Mac OS X package. :ivar sharing.SharePathError.inside_osx_package: We do not support sharing a folder inside a Mac OS X package. :ivar sharing.SharePathError.is_vault: We do not support sharing the Vault folder. :ivar sharing.SharePathError.is_vault_locked: We do not support sharing a folder inside a locked Vault. :ivar sharing.SharePathError.is_family: We do not support sharing the Family folder. """ _catch_all = 'other' # Attribute is overwritten below the class definition is_file = None # Attribute is overwritten below the class definition inside_shared_folder = None # Attribute is overwritten below the class definition contains_shared_folder = None # Attribute is overwritten below the class definition contains_app_folder = None # Attribute is overwritten below the class definition contains_team_folder = None # Attribute is overwritten below the class definition is_app_folder = None # Attribute is overwritten below the class definition inside_app_folder = None # Attribute is overwritten below the class definition is_public_folder = None # Attribute is overwritten below the class definition inside_public_folder = None # Attribute is overwritten below the class definition invalid_path = None # Attribute is overwritten below the class definition is_osx_package = None # Attribute is overwritten below the class definition inside_osx_package = None # Attribute is overwritten below the class definition is_vault = None # Attribute is overwritten below the class definition is_vault_locked = None # Attribute is overwritten below the class definition is_family = None # Attribute is overwritten below the class definition other = None @classmethod def already_shared(cls, val): """ Create an instance of this class set to the ``already_shared`` tag with value ``val``. :param SharedFolderMetadata val: :rtype: SharePathError """ return cls('already_shared', val) def is_is_file(self): """ Check if the union tag is ``is_file``. :rtype: bool """ return self._tag == 'is_file' def is_inside_shared_folder(self): """ Check if the union tag is ``inside_shared_folder``. :rtype: bool """ return self._tag == 'inside_shared_folder' def is_contains_shared_folder(self): """ Check if the union tag is ``contains_shared_folder``. :rtype: bool """ return self._tag == 'contains_shared_folder' def is_contains_app_folder(self): """ Check if the union tag is ``contains_app_folder``. :rtype: bool """ return self._tag == 'contains_app_folder' def is_contains_team_folder(self): """ Check if the union tag is ``contains_team_folder``. :rtype: bool """ return self._tag == 'contains_team_folder' def is_is_app_folder(self): """ Check if the union tag is ``is_app_folder``. :rtype: bool """ return self._tag == 'is_app_folder' def is_inside_app_folder(self): """ Check if the union tag is ``inside_app_folder``. :rtype: bool """ return self._tag == 'inside_app_folder' def is_is_public_folder(self): """ Check if the union tag is ``is_public_folder``. :rtype: bool """ return self._tag == 'is_public_folder' def is_inside_public_folder(self): """ Check if the union tag is ``inside_public_folder``. :rtype: bool """ return self._tag == 'inside_public_folder' def is_already_shared(self): """ Check if the union tag is ``already_shared``. :rtype: bool """ return self._tag == 'already_shared' def is_invalid_path(self): """ Check if the union tag is ``invalid_path``. :rtype: bool """ return self._tag == 'invalid_path' def is_is_osx_package(self): """ Check if the union tag is ``is_osx_package``. :rtype: bool """ return self._tag == 'is_osx_package' def is_inside_osx_package(self): """ Check if the union tag is ``inside_osx_package``. :rtype: bool """ return self._tag == 'inside_osx_package' def is_is_vault(self): """ Check if the union tag is ``is_vault``. :rtype: bool """ return self._tag == 'is_vault' def is_is_vault_locked(self): """ Check if the union tag is ``is_vault_locked``. :rtype: bool """ return self._tag == 'is_vault_locked' def is_is_family(self): """ Check if the union tag is ``is_family``. :rtype: bool """ return self._tag == 'is_family' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_already_shared(self): """ Folder is already shared. Contains metadata about the existing shared folder. Only call this if :meth:`is_already_shared` is true. :rtype: SharedFolderMetadata """ if not self.is_already_shared(): raise AttributeError("tag 'already_shared' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharePathError, self)._process_custom_annotations(annotation_type, field_path, processor) SharePathError_validator = bv.Union(SharePathError) class SharedContentLinkMetadata(SharedContentLinkMetadataBase): """ Metadata of a shared link for a file or folder. :ivar sharing.SharedContentLinkMetadata.audience_exceptions: The content inside this folder with link audience different than this folder's. This is only returned when an endpoint that returns metadata for a single shared folder is called, e.g. /get_folder_metadata. :ivar sharing.SharedContentLinkMetadata.url: The URL of the link. """ __slots__ = [ '_audience_exceptions_value', '_url_value', ] _has_required_fields = True def __init__(self, audience_options=None, current_audience=None, link_permissions=None, password_protected=None, url=None, access_level=None, audience_restricting_shared_folder=None, expiry=None, audience_exceptions=None): super(SharedContentLinkMetadata, self).__init__(audience_options, current_audience, link_permissions, password_protected, access_level, audience_restricting_shared_folder, expiry) self._audience_exceptions_value = bb.NOT_SET self._url_value = bb.NOT_SET if audience_exceptions is not None: self.audience_exceptions = audience_exceptions if url is not None: self.url = url # Instance attribute type: AudienceExceptions (validator is set below) audience_exceptions = bb.Attribute("audience_exceptions", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) url = bb.Attribute("url") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentLinkMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentLinkMetadata_validator = bv.Struct(SharedContentLinkMetadata) class SharedFileMembers(bb.Struct): """ Shared file user, group, and invitee membership. Used for the results of :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members` and :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members_continue`, and used as part of the results for :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members_batch`. :ivar sharing.SharedFileMembers.users: The list of user members of the shared file. :ivar sharing.SharedFileMembers.groups: The list of group members of the shared file. :ivar sharing.SharedFileMembers.invitees: The list of invited members of a file, but have not logged in and claimed this. :ivar sharing.SharedFileMembers.cursor: Present if there are additional shared file members that have not been returned yet. Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.sharing_list_file_members_continue` to list additional members. """ __slots__ = [ '_users_value', '_groups_value', '_invitees_value', '_cursor_value', ] _has_required_fields = True def __init__(self, users=None, groups=None, invitees=None, cursor=None): self._users_value = bb.NOT_SET self._groups_value = bb.NOT_SET self._invitees_value = bb.NOT_SET self._cursor_value = bb.NOT_SET if users is not None: self.users = users if groups is not None: self.groups = groups if invitees is not None: self.invitees = invitees if cursor is not None: self.cursor = cursor # Instance attribute type: list of [UserFileMembershipInfo] (validator is set below) users = bb.Attribute("users") # Instance attribute type: list of [GroupMembershipInfo] (validator is set below) groups = bb.Attribute("groups") # Instance attribute type: list of [InviteeMembershipInfo] (validator is set below) invitees = bb.Attribute("invitees") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFileMembers, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFileMembers_validator = bv.Struct(SharedFileMembers) class SharedFileMetadata(bb.Struct): """ Properties of the shared file. :ivar sharing.SharedFileMetadata.access_type: The current user's access level for this shared file. :ivar sharing.SharedFileMetadata.id: The ID of the file. :ivar sharing.SharedFileMetadata.expected_link_metadata: The expected metadata of the link associated for the file when it is first shared. Absent if the link already exists. This is for an unreleased feature so it may not be returned yet. :ivar sharing.SharedFileMetadata.link_metadata: The metadata of the link associated for the file. This is for an unreleased feature so it may not be returned yet. :ivar sharing.SharedFileMetadata.name: The name of this file. :ivar sharing.SharedFileMetadata.owner_display_names: The display names of the users that own the file. If the file is part of a team folder, the display names of the team admins are also included. Absent if the owner display names cannot be fetched. :ivar sharing.SharedFileMetadata.owner_team: The team that owns the file. This field is not present if the file is not owned by a team. :ivar sharing.SharedFileMetadata.parent_shared_folder_id: The ID of the parent shared folder. This field is present only if the file is contained within a shared folder. :ivar sharing.SharedFileMetadata.path_display: The cased path to be used for display purposes only. In rare instances the casing will not correctly match the user's filesystem, but this behavior will match the path provided in the Core API v1. Absent for unmounted files. :ivar sharing.SharedFileMetadata.path_lower: The lower-case full path of this file. Absent for unmounted files. :ivar sharing.SharedFileMetadata.permissions: The sharing permissions that requesting user has on this file. This corresponds to the entries given in ``GetFileMetadataBatchArg.actions`` or ``GetFileMetadataArg.actions``. :ivar sharing.SharedFileMetadata.policy: Policies governing this shared file. :ivar sharing.SharedFileMetadata.preview_url: URL for displaying a web preview of the shared file. :ivar sharing.SharedFileMetadata.time_invited: Timestamp indicating when the current user was invited to this shared file. If the user was not invited to the shared file, the timestamp will indicate when the user was invited to the parent shared folder. This value may be absent. """ __slots__ = [ '_access_type_value', '_id_value', '_expected_link_metadata_value', '_link_metadata_value', '_name_value', '_owner_display_names_value', '_owner_team_value', '_parent_shared_folder_id_value', '_path_display_value', '_path_lower_value', '_permissions_value', '_policy_value', '_preview_url_value', '_time_invited_value', ] _has_required_fields = True def __init__(self, id=None, name=None, policy=None, preview_url=None, access_type=None, expected_link_metadata=None, link_metadata=None, owner_display_names=None, owner_team=None, parent_shared_folder_id=None, path_display=None, path_lower=None, permissions=None, time_invited=None): self._access_type_value = bb.NOT_SET self._id_value = bb.NOT_SET self._expected_link_metadata_value = bb.NOT_SET self._link_metadata_value = bb.NOT_SET self._name_value = bb.NOT_SET self._owner_display_names_value = bb.NOT_SET self._owner_team_value = bb.NOT_SET self._parent_shared_folder_id_value = bb.NOT_SET self._path_display_value = bb.NOT_SET self._path_lower_value = bb.NOT_SET self._permissions_value = bb.NOT_SET self._policy_value = bb.NOT_SET self._preview_url_value = bb.NOT_SET self._time_invited_value = bb.NOT_SET if access_type is not None: self.access_type = access_type if id is not None: self.id = id if expected_link_metadata is not None: self.expected_link_metadata = expected_link_metadata if link_metadata is not None: self.link_metadata = link_metadata if name is not None: self.name = name if owner_display_names is not None: self.owner_display_names = owner_display_names if owner_team is not None: self.owner_team = owner_team if parent_shared_folder_id is not None: self.parent_shared_folder_id = parent_shared_folder_id if path_display is not None: self.path_display = path_display if path_lower is not None: self.path_lower = path_lower if permissions is not None: self.permissions = permissions if policy is not None: self.policy = policy if preview_url is not None: self.preview_url = preview_url if time_invited is not None: self.time_invited = time_invited # Instance attribute type: AccessLevel (validator is set below) access_type = bb.Attribute("access_type", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: ExpectedSharedContentLinkMetadata (validator is set below) expected_link_metadata = bb.Attribute("expected_link_metadata", nullable=True, user_defined=True) # Instance attribute type: SharedContentLinkMetadata (validator is set below) link_metadata = bb.Attribute("link_metadata", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: list of [str] (validator is set below) owner_display_names = bb.Attribute("owner_display_names", nullable=True) # Instance attribute type: users.Team (validator is set below) owner_team = bb.Attribute("owner_team", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) parent_shared_folder_id = bb.Attribute("parent_shared_folder_id", nullable=True) # Instance attribute type: str (validator is set below) path_display = bb.Attribute("path_display", nullable=True) # Instance attribute type: str (validator is set below) path_lower = bb.Attribute("path_lower", nullable=True) # Instance attribute type: list of [FilePermission] (validator is set below) permissions = bb.Attribute("permissions", nullable=True) # Instance attribute type: FolderPolicy (validator is set below) policy = bb.Attribute("policy", user_defined=True) # Instance attribute type: str (validator is set below) preview_url = bb.Attribute("preview_url") # Instance attribute type: datetime.datetime (validator is set below) time_invited = bb.Attribute("time_invited", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFileMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFileMetadata_validator = bv.Struct(SharedFileMetadata) class SharedFolderAccessError(bb.Union): """ There is an error accessing the shared folder. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.SharedFolderAccessError.invalid_id: This shared folder ID is invalid. :ivar sharing.SharedFolderAccessError.not_a_member: The user is not a member of the shared folder thus cannot access it. :ivar sharing.SharedFolderAccessError.invalid_member: The user does not exist or their account is disabled. :ivar sharing.SharedFolderAccessError.email_unverified: Never set. :ivar sharing.SharedFolderAccessError.unmounted: The shared folder is unmounted. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_id = None # Attribute is overwritten below the class definition not_a_member = None # Attribute is overwritten below the class definition invalid_member = None # Attribute is overwritten below the class definition email_unverified = None # Attribute is overwritten below the class definition unmounted = None # Attribute is overwritten below the class definition other = None def is_invalid_id(self): """ Check if the union tag is ``invalid_id``. :rtype: bool """ return self._tag == 'invalid_id' def is_not_a_member(self): """ Check if the union tag is ``not_a_member``. :rtype: bool """ return self._tag == 'not_a_member' def is_invalid_member(self): """ Check if the union tag is ``invalid_member``. :rtype: bool """ return self._tag == 'invalid_member' def is_email_unverified(self): """ Check if the union tag is ``email_unverified``. :rtype: bool """ return self._tag == 'email_unverified' def is_unmounted(self): """ Check if the union tag is ``unmounted``. :rtype: bool """ return self._tag == 'unmounted' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderAccessError, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderAccessError_validator = bv.Union(SharedFolderAccessError) class SharedFolderMemberError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.SharedFolderMemberError.invalid_dropbox_id: The target dropbox_id is invalid. :ivar sharing.SharedFolderMemberError.not_a_member: The target dropbox_id is not a member of the shared folder. :ivar MemberAccessLevelResult SharedFolderMemberError.no_explicit_access: The target member only has inherited access to the shared folder. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_dropbox_id = None # Attribute is overwritten below the class definition not_a_member = None # Attribute is overwritten below the class definition other = None @classmethod def no_explicit_access(cls, val): """ Create an instance of this class set to the ``no_explicit_access`` tag with value ``val``. :param MemberAccessLevelResult val: :rtype: SharedFolderMemberError """ return cls('no_explicit_access', val) def is_invalid_dropbox_id(self): """ Check if the union tag is ``invalid_dropbox_id``. :rtype: bool """ return self._tag == 'invalid_dropbox_id' def is_not_a_member(self): """ Check if the union tag is ``not_a_member``. :rtype: bool """ return self._tag == 'not_a_member' def is_no_explicit_access(self): """ Check if the union tag is ``no_explicit_access``. :rtype: bool """ return self._tag == 'no_explicit_access' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_no_explicit_access(self): """ The target member only has inherited access to the shared folder. Only call this if :meth:`is_no_explicit_access` is true. :rtype: MemberAccessLevelResult """ if not self.is_no_explicit_access(): raise AttributeError("tag 'no_explicit_access' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderMemberError, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderMemberError_validator = bv.Union(SharedFolderMemberError) class SharedFolderMembers(bb.Struct): """ Shared folder user and group membership. :ivar sharing.SharedFolderMembers.users: The list of user members of the shared folder. :ivar sharing.SharedFolderMembers.groups: The list of group members of the shared folder. :ivar sharing.SharedFolderMembers.invitees: The list of invitees to the shared folder. :ivar sharing.SharedFolderMembers.cursor: Present if there are additional shared folder members that have not been returned yet. Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.sharing_list_folder_members_continue` to list additional members. """ __slots__ = [ '_users_value', '_groups_value', '_invitees_value', '_cursor_value', ] _has_required_fields = True def __init__(self, users=None, groups=None, invitees=None, cursor=None): self._users_value = bb.NOT_SET self._groups_value = bb.NOT_SET self._invitees_value = bb.NOT_SET self._cursor_value = bb.NOT_SET if users is not None: self.users = users if groups is not None: self.groups = groups if invitees is not None: self.invitees = invitees if cursor is not None: self.cursor = cursor # Instance attribute type: list of [UserMembershipInfo] (validator is set below) users = bb.Attribute("users") # Instance attribute type: list of [GroupMembershipInfo] (validator is set below) groups = bb.Attribute("groups") # Instance attribute type: list of [InviteeMembershipInfo] (validator is set below) invitees = bb.Attribute("invitees") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderMembers, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderMembers_validator = bv.Struct(SharedFolderMembers) class SharedFolderMetadataBase(bb.Struct): """ Properties of the shared folder. :ivar sharing.SharedFolderMetadataBase.access_type: The current user's access level for this shared folder. :ivar sharing.SharedFolderMetadataBase.is_inside_team_folder: Whether this folder is inside of a team folder. :ivar sharing.SharedFolderMetadataBase.is_team_folder: Whether this folder is a `team folder `_. :ivar sharing.SharedFolderMetadataBase.owner_display_names: The display names of the users that own the folder. If the folder is part of a team folder, the display names of the team admins are also included. Absent if the owner display names cannot be fetched. :ivar sharing.SharedFolderMetadataBase.owner_team: The team that owns the folder. This field is not present if the folder is not owned by a team. :ivar sharing.SharedFolderMetadataBase.parent_shared_folder_id: The ID of the parent shared folder. This field is present only if the folder is contained within another shared folder. :ivar sharing.SharedFolderMetadataBase.path_display: The full path of this shared folder. Absent for unmounted folders. :ivar sharing.SharedFolderMetadataBase.path_lower: The lower-cased full path of this shared folder. Absent for unmounted folders. :ivar sharing.SharedFolderMetadataBase.parent_folder_name: Display name for the parent folder. """ __slots__ = [ '_access_type_value', '_is_inside_team_folder_value', '_is_team_folder_value', '_owner_display_names_value', '_owner_team_value', '_parent_shared_folder_id_value', '_path_display_value', '_path_lower_value', '_parent_folder_name_value', ] _has_required_fields = True def __init__(self, access_type=None, is_inside_team_folder=None, is_team_folder=None, owner_display_names=None, owner_team=None, parent_shared_folder_id=None, path_display=None, path_lower=None, parent_folder_name=None): self._access_type_value = bb.NOT_SET self._is_inside_team_folder_value = bb.NOT_SET self._is_team_folder_value = bb.NOT_SET self._owner_display_names_value = bb.NOT_SET self._owner_team_value = bb.NOT_SET self._parent_shared_folder_id_value = bb.NOT_SET self._path_display_value = bb.NOT_SET self._path_lower_value = bb.NOT_SET self._parent_folder_name_value = bb.NOT_SET if access_type is not None: self.access_type = access_type if is_inside_team_folder is not None: self.is_inside_team_folder = is_inside_team_folder if is_team_folder is not None: self.is_team_folder = is_team_folder if owner_display_names is not None: self.owner_display_names = owner_display_names if owner_team is not None: self.owner_team = owner_team if parent_shared_folder_id is not None: self.parent_shared_folder_id = parent_shared_folder_id if path_display is not None: self.path_display = path_display if path_lower is not None: self.path_lower = path_lower if parent_folder_name is not None: self.parent_folder_name = parent_folder_name # Instance attribute type: AccessLevel (validator is set below) access_type = bb.Attribute("access_type", user_defined=True) # Instance attribute type: bool (validator is set below) is_inside_team_folder = bb.Attribute("is_inside_team_folder") # Instance attribute type: bool (validator is set below) is_team_folder = bb.Attribute("is_team_folder") # Instance attribute type: list of [str] (validator is set below) owner_display_names = bb.Attribute("owner_display_names", nullable=True) # Instance attribute type: users.Team (validator is set below) owner_team = bb.Attribute("owner_team", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) parent_shared_folder_id = bb.Attribute("parent_shared_folder_id", nullable=True) # Instance attribute type: str (validator is set below) path_display = bb.Attribute("path_display", nullable=True) # Instance attribute type: str (validator is set below) path_lower = bb.Attribute("path_lower", nullable=True) # Instance attribute type: str (validator is set below) parent_folder_name = bb.Attribute("parent_folder_name", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderMetadataBase, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderMetadataBase_validator = bv.Struct(SharedFolderMetadataBase) class SharedFolderMetadata(SharedFolderMetadataBase): """ The metadata which includes basic information about the shared folder. :ivar sharing.SharedFolderMetadata.link_metadata: The metadata of the shared content link to this shared folder. Absent if there is no link on the folder. This is for an unreleased feature so it may not be returned yet. :ivar sharing.SharedFolderMetadata.name: The name of the this shared folder. :ivar sharing.SharedFolderMetadata.permissions: Actions the current user may perform on the folder and its contents. The set of permissions corresponds to the FolderActions in the request. :ivar sharing.SharedFolderMetadata.policy: Policies governing this shared folder. :ivar sharing.SharedFolderMetadata.preview_url: URL for displaying a web preview of the shared folder. :ivar sharing.SharedFolderMetadata.shared_folder_id: The ID of the shared folder. :ivar sharing.SharedFolderMetadata.time_invited: Timestamp indicating when the current user was invited to this shared folder. :ivar sharing.SharedFolderMetadata.access_inheritance: Whether the folder inherits its members from its parent. """ __slots__ = [ '_link_metadata_value', '_name_value', '_permissions_value', '_policy_value', '_preview_url_value', '_shared_folder_id_value', '_time_invited_value', '_access_inheritance_value', ] _has_required_fields = True def __init__(self, access_type=None, is_inside_team_folder=None, is_team_folder=None, name=None, policy=None, preview_url=None, shared_folder_id=None, time_invited=None, owner_display_names=None, owner_team=None, parent_shared_folder_id=None, path_display=None, path_lower=None, parent_folder_name=None, link_metadata=None, permissions=None, access_inheritance=None): super(SharedFolderMetadata, self).__init__(access_type, is_inside_team_folder, is_team_folder, owner_display_names, owner_team, parent_shared_folder_id, path_display, path_lower, parent_folder_name) self._link_metadata_value = bb.NOT_SET self._name_value = bb.NOT_SET self._permissions_value = bb.NOT_SET self._policy_value = bb.NOT_SET self._preview_url_value = bb.NOT_SET self._shared_folder_id_value = bb.NOT_SET self._time_invited_value = bb.NOT_SET self._access_inheritance_value = bb.NOT_SET if link_metadata is not None: self.link_metadata = link_metadata if name is not None: self.name = name if permissions is not None: self.permissions = permissions if policy is not None: self.policy = policy if preview_url is not None: self.preview_url = preview_url if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if time_invited is not None: self.time_invited = time_invited if access_inheritance is not None: self.access_inheritance = access_inheritance # Instance attribute type: SharedContentLinkMetadata (validator is set below) link_metadata = bb.Attribute("link_metadata", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: list of [FolderPermission] (validator is set below) permissions = bb.Attribute("permissions", nullable=True) # Instance attribute type: FolderPolicy (validator is set below) policy = bb.Attribute("policy", user_defined=True) # Instance attribute type: str (validator is set below) preview_url = bb.Attribute("preview_url") # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") # Instance attribute type: datetime.datetime (validator is set below) time_invited = bb.Attribute("time_invited") # Instance attribute type: AccessInheritance (validator is set below) access_inheritance = bb.Attribute("access_inheritance", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderMetadata_validator = bv.Struct(SharedFolderMetadata) class SharedLinkAccessFailureReason(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.SharedLinkAccessFailureReason.login_required: User is not logged in. :ivar sharing.SharedLinkAccessFailureReason.email_verify_required: This user's email address is not verified. This functionality is only available on accounts with a verified email address. Users can verify their email address `here `_. :ivar sharing.SharedLinkAccessFailureReason.password_required: The link is password protected. :ivar sharing.SharedLinkAccessFailureReason.team_only: Access is allowed for team members only. :ivar sharing.SharedLinkAccessFailureReason.owner_only: Access is allowed for the shared link's owner only. """ _catch_all = 'other' # Attribute is overwritten below the class definition login_required = None # Attribute is overwritten below the class definition email_verify_required = None # Attribute is overwritten below the class definition password_required = None # Attribute is overwritten below the class definition team_only = None # Attribute is overwritten below the class definition owner_only = None # Attribute is overwritten below the class definition other = None def is_login_required(self): """ Check if the union tag is ``login_required``. :rtype: bool """ return self._tag == 'login_required' def is_email_verify_required(self): """ Check if the union tag is ``email_verify_required``. :rtype: bool """ return self._tag == 'email_verify_required' def is_password_required(self): """ Check if the union tag is ``password_required``. :rtype: bool """ return self._tag == 'password_required' def is_team_only(self): """ Check if the union tag is ``team_only``. :rtype: bool """ return self._tag == 'team_only' def is_owner_only(self): """ Check if the union tag is ``owner_only``. :rtype: bool """ return self._tag == 'owner_only' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkAccessFailureReason, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkAccessFailureReason_validator = bv.Union(SharedLinkAccessFailureReason) class SharedLinkAlreadyExistsMetadata(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar SharedLinkMetadata SharedLinkAlreadyExistsMetadata.metadata: Metadata of the shared link that already exists. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def metadata(cls, val): """ Create an instance of this class set to the ``metadata`` tag with value ``val``. :param SharedLinkMetadata val: :rtype: SharedLinkAlreadyExistsMetadata """ return cls('metadata', val) def is_metadata(self): """ Check if the union tag is ``metadata``. :rtype: bool """ return self._tag == 'metadata' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_metadata(self): """ Metadata of the shared link that already exists. Only call this if :meth:`is_metadata` is true. :rtype: SharedLinkMetadata """ if not self.is_metadata(): raise AttributeError("tag 'metadata' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkAlreadyExistsMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkAlreadyExistsMetadata_validator = bv.Union(SharedLinkAlreadyExistsMetadata) class SharedLinkPolicy(bb.Union): """ Who can view shared links in this folder. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.SharedLinkPolicy.anyone: Links can be shared with anyone. :ivar sharing.SharedLinkPolicy.team: Links can be shared with anyone on the same team as the owner. :ivar sharing.SharedLinkPolicy.members: Links can only be shared among members of the shared folder. """ _catch_all = 'other' # Attribute is overwritten below the class definition anyone = None # Attribute is overwritten below the class definition team = None # Attribute is overwritten below the class definition members = None # Attribute is overwritten below the class definition other = None def is_anyone(self): """ Check if the union tag is ``anyone``. :rtype: bool """ return self._tag == 'anyone' def is_team(self): """ Check if the union tag is ``team``. :rtype: bool """ return self._tag == 'team' def is_members(self): """ Check if the union tag is ``members``. :rtype: bool """ return self._tag == 'members' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkPolicy_validator = bv.Union(SharedLinkPolicy) class SharedLinkSettings(bb.Struct): """ :ivar sharing.SharedLinkSettings.require_password: Boolean flag to enable or disable password protection. :ivar sharing.SharedLinkSettings.link_password: If ``require_password`` is true, this is needed to specify the password to access the link. :ivar sharing.SharedLinkSettings.expires: Expiration time of the shared link. By default the link won't expire. :ivar sharing.SharedLinkSettings.audience: The new audience who can benefit from the access level specified by the link's access level specified in the `link_access_level` field of `LinkPermissions`. This is used in conjunction with team policies and shared folder policies to determine the final effective audience type in the `effective_audience` field of `LinkPermissions. :ivar sharing.SharedLinkSettings.access: Requested access level you want the audience to gain from this link. Note, modifying access level for an existing link is not supported. :ivar sharing.SharedLinkSettings.requested_visibility: Use ``audience`` instead. The requested access for this shared link. :ivar sharing.SharedLinkSettings.allow_download: Boolean flag to allow or not download capabilities for shared links. """ __slots__ = [ '_require_password_value', '_link_password_value', '_expires_value', '_audience_value', '_access_value', '_requested_visibility_value', '_allow_download_value', ] _has_required_fields = False def __init__(self, require_password=None, link_password=None, expires=None, audience=None, access=None, requested_visibility=None, allow_download=None): self._require_password_value = bb.NOT_SET self._link_password_value = bb.NOT_SET self._expires_value = bb.NOT_SET self._audience_value = bb.NOT_SET self._access_value = bb.NOT_SET self._requested_visibility_value = bb.NOT_SET self._allow_download_value = bb.NOT_SET if require_password is not None: self.require_password = require_password if link_password is not None: self.link_password = link_password if expires is not None: self.expires = expires if audience is not None: self.audience = audience if access is not None: self.access = access if requested_visibility is not None: self.requested_visibility = requested_visibility if allow_download is not None: self.allow_download = allow_download # Instance attribute type: bool (validator is set below) require_password = bb.Attribute("require_password", nullable=True) # Instance attribute type: str (validator is set below) link_password = bb.Attribute("link_password", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) expires = bb.Attribute("expires", nullable=True) # Instance attribute type: LinkAudience (validator is set below) audience = bb.Attribute("audience", nullable=True, user_defined=True) # Instance attribute type: RequestedLinkAccessLevel (validator is set below) access = bb.Attribute("access", nullable=True, user_defined=True) # Instance attribute type: RequestedVisibility (validator is set below) requested_visibility = bb.Attribute("requested_visibility", nullable=True, user_defined=True) # Instance attribute type: bool (validator is set below) allow_download = bb.Attribute("allow_download", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettings, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettings_validator = bv.Struct(SharedLinkSettings) class SharedLinkSettingsError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.SharedLinkSettingsError.invalid_settings: The given settings are invalid (for example, all attributes of the :class:`SharedLinkSettings` are empty, the requested visibility is ``RequestedVisibility.password`` but the ``SharedLinkSettings.link_password`` is missing, ``SharedLinkSettings.expires`` is set to the past, etc.). :ivar sharing.SharedLinkSettingsError.not_authorized: User is not allowed to modify the settings of this link. Note that basic users can only set ``RequestedVisibility.public`` as the ``SharedLinkSettings.requested_visibility`` and cannot set ``SharedLinkSettings.expires``. """ _catch_all = None # Attribute is overwritten below the class definition invalid_settings = None # Attribute is overwritten below the class definition not_authorized = None def is_invalid_settings(self): """ Check if the union tag is ``invalid_settings``. :rtype: bool """ return self._tag == 'invalid_settings' def is_not_authorized(self): """ Check if the union tag is ``not_authorized``. :rtype: bool """ return self._tag == 'not_authorized' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsError, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsError_validator = bv.Union(SharedLinkSettingsError) class SharingFileAccessError(bb.Union): """ User could not access this file. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.SharingFileAccessError.no_permission: Current user does not have sufficient privileges to perform the desired action. :ivar sharing.SharingFileAccessError.invalid_file: File specified was not found. :ivar sharing.SharingFileAccessError.is_folder: A folder can't be shared this way. Use folder sharing or a shared link instead. :ivar sharing.SharingFileAccessError.inside_public_folder: A file inside a public folder can't be shared this way. Use a public link instead. :ivar sharing.SharingFileAccessError.inside_osx_package: A Mac OS X package can't be shared this way. Use a shared link instead. """ _catch_all = 'other' # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition invalid_file = None # Attribute is overwritten below the class definition is_folder = None # Attribute is overwritten below the class definition inside_public_folder = None # Attribute is overwritten below the class definition inside_osx_package = None # Attribute is overwritten below the class definition other = None def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_invalid_file(self): """ Check if the union tag is ``invalid_file``. :rtype: bool """ return self._tag == 'invalid_file' def is_is_folder(self): """ Check if the union tag is ``is_folder``. :rtype: bool """ return self._tag == 'is_folder' def is_inside_public_folder(self): """ Check if the union tag is ``inside_public_folder``. :rtype: bool """ return self._tag == 'inside_public_folder' def is_inside_osx_package(self): """ Check if the union tag is ``inside_osx_package``. :rtype: bool """ return self._tag == 'inside_osx_package' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingFileAccessError, self)._process_custom_annotations(annotation_type, field_path, processor) SharingFileAccessError_validator = bv.Union(SharingFileAccessError) class SharingUserError(bb.Union): """ User account had a problem preventing this action. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.SharingUserError.email_unverified: This user's email address is not verified. This functionality is only available on accounts with a verified email address. Users can verify their email address `here `_. """ _catch_all = 'other' # Attribute is overwritten below the class definition email_unverified = None # Attribute is overwritten below the class definition other = None def is_email_unverified(self): """ Check if the union tag is ``email_unverified``. :rtype: bool """ return self._tag == 'email_unverified' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingUserError, self)._process_custom_annotations(annotation_type, field_path, processor) SharingUserError_validator = bv.Union(SharingUserError) class TeamMemberInfo(bb.Struct): """ Information about a team member. :ivar sharing.TeamMemberInfo.team_info: Information about the member's team. :ivar sharing.TeamMemberInfo.display_name: The display name of the user. :ivar sharing.TeamMemberInfo.member_id: ID of user as a member of a team. This field will only be present if the member is in the same team as current user. """ __slots__ = [ '_team_info_value', '_display_name_value', '_member_id_value', ] _has_required_fields = True def __init__(self, team_info=None, display_name=None, member_id=None): self._team_info_value = bb.NOT_SET self._display_name_value = bb.NOT_SET self._member_id_value = bb.NOT_SET if team_info is not None: self.team_info = team_info if display_name is not None: self.display_name = display_name if member_id is not None: self.member_id = member_id # Instance attribute type: users.Team (validator is set below) team_info = bb.Attribute("team_info") # Instance attribute type: str (validator is set below) display_name = bb.Attribute("display_name") # Instance attribute type: str (validator is set below) member_id = bb.Attribute("member_id", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMemberInfo, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMemberInfo_validator = bv.Struct(TeamMemberInfo) class TransferFolderArg(bb.Struct): """ :ivar sharing.TransferFolderArg.shared_folder_id: The ID for the shared folder. :ivar sharing.TransferFolderArg.to_dropbox_id: A account or team member ID to transfer ownership to. """ __slots__ = [ '_shared_folder_id_value', '_to_dropbox_id_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None, to_dropbox_id=None): self._shared_folder_id_value = bb.NOT_SET self._to_dropbox_id_value = bb.NOT_SET if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if to_dropbox_id is not None: self.to_dropbox_id = to_dropbox_id # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") # Instance attribute type: str (validator is set below) to_dropbox_id = bb.Attribute("to_dropbox_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TransferFolderArg, self)._process_custom_annotations(annotation_type, field_path, processor) TransferFolderArg_validator = bv.Struct(TransferFolderArg) class TransferFolderError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.TransferFolderError.invalid_dropbox_id: ``TransferFolderArg.to_dropbox_id`` is invalid. :ivar sharing.TransferFolderError.new_owner_not_a_member: The new designated owner is not currently a member of the shared folder. :ivar sharing.TransferFolderError.new_owner_unmounted: The new designated owner has not added the folder to their Dropbox. :ivar sharing.TransferFolderError.new_owner_email_unverified: The new designated owner's email address is not verified. This functionality is only available on accounts with a verified email address. Users can verify their email address `here `_. :ivar sharing.TransferFolderError.team_folder: This action cannot be performed on a team shared folder. :ivar sharing.TransferFolderError.no_permission: The current user does not have permission to perform this action. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_dropbox_id = None # Attribute is overwritten below the class definition new_owner_not_a_member = None # Attribute is overwritten below the class definition new_owner_unmounted = None # Attribute is overwritten below the class definition new_owner_email_unverified = None # Attribute is overwritten below the class definition team_folder = None # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharedFolderAccessError val: :rtype: TransferFolderError """ return cls('access_error', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_invalid_dropbox_id(self): """ Check if the union tag is ``invalid_dropbox_id``. :rtype: bool """ return self._tag == 'invalid_dropbox_id' def is_new_owner_not_a_member(self): """ Check if the union tag is ``new_owner_not_a_member``. :rtype: bool """ return self._tag == 'new_owner_not_a_member' def is_new_owner_unmounted(self): """ Check if the union tag is ``new_owner_unmounted``. :rtype: bool """ return self._tag == 'new_owner_unmounted' def is_new_owner_email_unverified(self): """ Check if the union tag is ``new_owner_email_unverified``. :rtype: bool """ return self._tag == 'new_owner_email_unverified' def is_team_folder(self): """ Check if the union tag is ``team_folder``. :rtype: bool """ return self._tag == 'team_folder' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharedFolderAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TransferFolderError, self)._process_custom_annotations(annotation_type, field_path, processor) TransferFolderError_validator = bv.Union(TransferFolderError) class UnmountFolderArg(bb.Struct): """ :ivar sharing.UnmountFolderArg.shared_folder_id: The ID for the shared folder. """ __slots__ = [ '_shared_folder_id_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None): self._shared_folder_id_value = bb.NOT_SET if shared_folder_id is not None: self.shared_folder_id = shared_folder_id # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UnmountFolderArg, self)._process_custom_annotations(annotation_type, field_path, processor) UnmountFolderArg_validator = bv.Struct(UnmountFolderArg) class UnmountFolderError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.UnmountFolderError.no_permission: The current user does not have permission to perform this action. :ivar sharing.UnmountFolderError.not_unmountable: The shared folder can't be unmounted. One example where this can occur is when the shared folder's parent folder is also a shared folder that resides in the current user's Dropbox. """ _catch_all = 'other' # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition not_unmountable = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharedFolderAccessError val: :rtype: UnmountFolderError """ return cls('access_error', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_not_unmountable(self): """ Check if the union tag is ``not_unmountable``. :rtype: bool """ return self._tag == 'not_unmountable' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharedFolderAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UnmountFolderError, self)._process_custom_annotations(annotation_type, field_path, processor) UnmountFolderError_validator = bv.Union(UnmountFolderError) class UnshareFileArg(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.sharing_unshare_file`. :ivar sharing.UnshareFileArg.file: The file to unshare. """ __slots__ = [ '_file_value', ] _has_required_fields = True def __init__(self, file=None): self._file_value = bb.NOT_SET if file is not None: self.file = file # Instance attribute type: str (validator is set below) file = bb.Attribute("file") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UnshareFileArg, self)._process_custom_annotations(annotation_type, field_path, processor) UnshareFileArg_validator = bv.Struct(UnshareFileArg) class UnshareFileError(bb.Union): """ Error result for :meth:`dropbox.dropbox_client.Dropbox.sharing_unshare_file`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def user_error(cls, val): """ Create an instance of this class set to the ``user_error`` tag with value ``val``. :param SharingUserError val: :rtype: UnshareFileError """ return cls('user_error', val) @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharingFileAccessError val: :rtype: UnshareFileError """ return cls('access_error', val) def is_user_error(self): """ Check if the union tag is ``user_error``. :rtype: bool """ return self._tag == 'user_error' def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_user_error(self): """ Only call this if :meth:`is_user_error` is true. :rtype: SharingUserError """ if not self.is_user_error(): raise AttributeError("tag 'user_error' not set") return self._value def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharingFileAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UnshareFileError, self)._process_custom_annotations(annotation_type, field_path, processor) UnshareFileError_validator = bv.Union(UnshareFileError) class UnshareFolderArg(bb.Struct): """ :ivar sharing.UnshareFolderArg.shared_folder_id: The ID for the shared folder. :ivar sharing.UnshareFolderArg.leave_a_copy: If true, members of this shared folder will get a copy of this folder after it's unshared. Otherwise, it will be removed from their Dropbox. The current user, who is an owner, will always retain their copy. """ __slots__ = [ '_shared_folder_id_value', '_leave_a_copy_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None, leave_a_copy=None): self._shared_folder_id_value = bb.NOT_SET self._leave_a_copy_value = bb.NOT_SET if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if leave_a_copy is not None: self.leave_a_copy = leave_a_copy # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") # Instance attribute type: bool (validator is set below) leave_a_copy = bb.Attribute("leave_a_copy") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UnshareFolderArg, self)._process_custom_annotations(annotation_type, field_path, processor) UnshareFolderArg_validator = bv.Struct(UnshareFolderArg) class UnshareFolderError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.UnshareFolderError.team_folder: This action cannot be performed on a team shared folder. :ivar sharing.UnshareFolderError.no_permission: The current user does not have permission to perform this action. :ivar sharing.UnshareFolderError.too_many_files: This shared folder has too many files to be unshared. """ _catch_all = 'other' # Attribute is overwritten below the class definition team_folder = None # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition too_many_files = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharedFolderAccessError val: :rtype: UnshareFolderError """ return cls('access_error', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_team_folder(self): """ Check if the union tag is ``team_folder``. :rtype: bool """ return self._tag == 'team_folder' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_too_many_files(self): """ Check if the union tag is ``too_many_files``. :rtype: bool """ return self._tag == 'too_many_files' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharedFolderAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UnshareFolderError, self)._process_custom_annotations(annotation_type, field_path, processor) UnshareFolderError_validator = bv.Union(UnshareFolderError) class UpdateFileMemberArgs(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.sharing_update_file_member`. :ivar sharing.UpdateFileMemberArgs.file: File for which we are changing a member's access. :ivar sharing.UpdateFileMemberArgs.member: The member whose access we are changing. :ivar sharing.UpdateFileMemberArgs.access_level: The new access level for the member. """ __slots__ = [ '_file_value', '_member_value', '_access_level_value', ] _has_required_fields = True def __init__(self, file=None, member=None, access_level=None): self._file_value = bb.NOT_SET self._member_value = bb.NOT_SET self._access_level_value = bb.NOT_SET if file is not None: self.file = file if member is not None: self.member = member if access_level is not None: self.access_level = access_level # Instance attribute type: str (validator is set below) file = bb.Attribute("file") # Instance attribute type: MemberSelector (validator is set below) member = bb.Attribute("member", user_defined=True) # Instance attribute type: AccessLevel (validator is set below) access_level = bb.Attribute("access_level", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UpdateFileMemberArgs, self)._process_custom_annotations(annotation_type, field_path, processor) UpdateFileMemberArgs_validator = bv.Struct(UpdateFileMemberArgs) class UpdateFolderMemberArg(bb.Struct): """ :ivar sharing.UpdateFolderMemberArg.shared_folder_id: The ID for the shared folder. :ivar sharing.UpdateFolderMemberArg.member: The member of the shared folder to update. Only the ``MemberSelector.dropbox_id`` may be set at this time. :ivar sharing.UpdateFolderMemberArg.access_level: The new access level for ``member``. ``AccessLevel.owner`` is disallowed. """ __slots__ = [ '_shared_folder_id_value', '_member_value', '_access_level_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None, member=None, access_level=None): self._shared_folder_id_value = bb.NOT_SET self._member_value = bb.NOT_SET self._access_level_value = bb.NOT_SET if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if member is not None: self.member = member if access_level is not None: self.access_level = access_level # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") # Instance attribute type: MemberSelector (validator is set below) member = bb.Attribute("member", user_defined=True) # Instance attribute type: AccessLevel (validator is set below) access_level = bb.Attribute("access_level", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UpdateFolderMemberArg, self)._process_custom_annotations(annotation_type, field_path, processor) UpdateFolderMemberArg_validator = bv.Struct(UpdateFolderMemberArg) class UpdateFolderMemberError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar AddFolderMemberError UpdateFolderMemberError.no_explicit_access: If updating the access type required the member to be added to the shared folder and there was an error when adding the member. :ivar sharing.UpdateFolderMemberError.insufficient_plan: The current user's account doesn't support this action. An example of this is when downgrading a member from editor to viewer. This action can only be performed by users that have upgraded to a Pro or Business plan. :ivar sharing.UpdateFolderMemberError.no_permission: The current user does not have permission to perform this action. """ _catch_all = 'other' # Attribute is overwritten below the class definition insufficient_plan = None # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharedFolderAccessError val: :rtype: UpdateFolderMemberError """ return cls('access_error', val) @classmethod def member_error(cls, val): """ Create an instance of this class set to the ``member_error`` tag with value ``val``. :param SharedFolderMemberError val: :rtype: UpdateFolderMemberError """ return cls('member_error', val) @classmethod def no_explicit_access(cls, val): """ Create an instance of this class set to the ``no_explicit_access`` tag with value ``val``. :param AddFolderMemberError val: :rtype: UpdateFolderMemberError """ return cls('no_explicit_access', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_member_error(self): """ Check if the union tag is ``member_error``. :rtype: bool """ return self._tag == 'member_error' def is_no_explicit_access(self): """ Check if the union tag is ``no_explicit_access``. :rtype: bool """ return self._tag == 'no_explicit_access' def is_insufficient_plan(self): """ Check if the union tag is ``insufficient_plan``. :rtype: bool """ return self._tag == 'insufficient_plan' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharedFolderAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def get_member_error(self): """ Only call this if :meth:`is_member_error` is true. :rtype: SharedFolderMemberError """ if not self.is_member_error(): raise AttributeError("tag 'member_error' not set") return self._value def get_no_explicit_access(self): """ If updating the access type required the member to be added to the shared folder and there was an error when adding the member. Only call this if :meth:`is_no_explicit_access` is true. :rtype: AddFolderMemberError """ if not self.is_no_explicit_access(): raise AttributeError("tag 'no_explicit_access' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UpdateFolderMemberError, self)._process_custom_annotations(annotation_type, field_path, processor) UpdateFolderMemberError_validator = bv.Union(UpdateFolderMemberError) class UpdateFolderPolicyArg(bb.Struct): """ If any of the policies are unset, then they retain their current setting. :ivar sharing.UpdateFolderPolicyArg.shared_folder_id: The ID for the shared folder. :ivar sharing.UpdateFolderPolicyArg.member_policy: Who can be a member of this shared folder. Only applicable if the current user is on a team. :ivar sharing.UpdateFolderPolicyArg.acl_update_policy: Who can add and remove members of this shared folder. :ivar sharing.UpdateFolderPolicyArg.viewer_info_policy: Who can enable/disable viewer info for this shared folder. :ivar sharing.UpdateFolderPolicyArg.shared_link_policy: The policy to apply to shared links created for content inside this shared folder. The current user must be on a team to set this policy to ``SharedLinkPolicy.members``. :ivar sharing.UpdateFolderPolicyArg.link_settings: Settings on the link for this folder. :ivar sharing.UpdateFolderPolicyArg.actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's ``SharedFolderMetadata.permissions`` field describing the actions the authenticated user can perform on the folder. """ __slots__ = [ '_shared_folder_id_value', '_member_policy_value', '_acl_update_policy_value', '_viewer_info_policy_value', '_shared_link_policy_value', '_link_settings_value', '_actions_value', ] _has_required_fields = True def __init__(self, shared_folder_id=None, member_policy=None, acl_update_policy=None, viewer_info_policy=None, shared_link_policy=None, link_settings=None, actions=None): self._shared_folder_id_value = bb.NOT_SET self._member_policy_value = bb.NOT_SET self._acl_update_policy_value = bb.NOT_SET self._viewer_info_policy_value = bb.NOT_SET self._shared_link_policy_value = bb.NOT_SET self._link_settings_value = bb.NOT_SET self._actions_value = bb.NOT_SET if shared_folder_id is not None: self.shared_folder_id = shared_folder_id if member_policy is not None: self.member_policy = member_policy if acl_update_policy is not None: self.acl_update_policy = acl_update_policy if viewer_info_policy is not None: self.viewer_info_policy = viewer_info_policy if shared_link_policy is not None: self.shared_link_policy = shared_link_policy if link_settings is not None: self.link_settings = link_settings if actions is not None: self.actions = actions # Instance attribute type: str (validator is set below) shared_folder_id = bb.Attribute("shared_folder_id") # Instance attribute type: MemberPolicy (validator is set below) member_policy = bb.Attribute("member_policy", nullable=True, user_defined=True) # Instance attribute type: AclUpdatePolicy (validator is set below) acl_update_policy = bb.Attribute("acl_update_policy", nullable=True, user_defined=True) # Instance attribute type: ViewerInfoPolicy (validator is set below) viewer_info_policy = bb.Attribute("viewer_info_policy", nullable=True, user_defined=True) # Instance attribute type: SharedLinkPolicy (validator is set below) shared_link_policy = bb.Attribute("shared_link_policy", nullable=True, user_defined=True) # Instance attribute type: LinkSettings (validator is set below) link_settings = bb.Attribute("link_settings", nullable=True, user_defined=True) # Instance attribute type: list of [FolderAction] (validator is set below) actions = bb.Attribute("actions", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UpdateFolderPolicyArg, self)._process_custom_annotations(annotation_type, field_path, processor) UpdateFolderPolicyArg_validator = bv.Struct(UpdateFolderPolicyArg) class UpdateFolderPolicyError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.UpdateFolderPolicyError.not_on_team: ``UpdateFolderPolicyArg.member_policy`` was set even though user is not on a team. :ivar sharing.UpdateFolderPolicyError.team_policy_disallows_member_policy: Team policy is more restrictive than ``ShareFolderArg.member_policy``. :ivar sharing.UpdateFolderPolicyError.disallowed_shared_link_policy: The current account is not allowed to select the specified ``ShareFolderArg.shared_link_policy``. :ivar sharing.UpdateFolderPolicyError.no_permission: The current user does not have permission to perform this action. :ivar sharing.UpdateFolderPolicyError.team_folder: This action cannot be performed on a team shared folder. """ _catch_all = 'other' # Attribute is overwritten below the class definition not_on_team = None # Attribute is overwritten below the class definition team_policy_disallows_member_policy = None # Attribute is overwritten below the class definition disallowed_shared_link_policy = None # Attribute is overwritten below the class definition no_permission = None # Attribute is overwritten below the class definition team_folder = None # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param SharedFolderAccessError val: :rtype: UpdateFolderPolicyError """ return cls('access_error', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_not_on_team(self): """ Check if the union tag is ``not_on_team``. :rtype: bool """ return self._tag == 'not_on_team' def is_team_policy_disallows_member_policy(self): """ Check if the union tag is ``team_policy_disallows_member_policy``. :rtype: bool """ return self._tag == 'team_policy_disallows_member_policy' def is_disallowed_shared_link_policy(self): """ Check if the union tag is ``disallowed_shared_link_policy``. :rtype: bool """ return self._tag == 'disallowed_shared_link_policy' def is_no_permission(self): """ Check if the union tag is ``no_permission``. :rtype: bool """ return self._tag == 'no_permission' def is_team_folder(self): """ Check if the union tag is ``team_folder``. :rtype: bool """ return self._tag == 'team_folder' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: SharedFolderAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UpdateFolderPolicyError, self)._process_custom_annotations(annotation_type, field_path, processor) UpdateFolderPolicyError_validator = bv.Union(UpdateFolderPolicyError) class UserMembershipInfo(MembershipInfo): """ The information about a user member of the shared content. :ivar sharing.UserMembershipInfo.user: The account information for the membership user. """ __slots__ = [ '_user_value', ] _has_required_fields = True def __init__(self, access_type=None, user=None, permissions=None, initials=None, is_inherited=None): super(UserMembershipInfo, self).__init__(access_type, permissions, initials, is_inherited) self._user_value = bb.NOT_SET if user is not None: self.user = user # Instance attribute type: UserInfo (validator is set below) user = bb.Attribute("user", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserMembershipInfo, self)._process_custom_annotations(annotation_type, field_path, processor) UserMembershipInfo_validator = bv.Struct(UserMembershipInfo) class UserFileMembershipInfo(UserMembershipInfo): """ The information about a user member of the shared content with an appended last seen timestamp. :ivar sharing.UserFileMembershipInfo.time_last_seen: The UTC timestamp of when the user has last seen the content. Only populated if the user has seen the content and the caller has a plan that includes viewer history. :ivar sharing.UserFileMembershipInfo.platform_type: The platform on which the user has last seen the content, or unknown. """ __slots__ = [ '_time_last_seen_value', '_platform_type_value', ] _has_required_fields = True def __init__(self, access_type=None, user=None, permissions=None, initials=None, is_inherited=None, time_last_seen=None, platform_type=None): super(UserFileMembershipInfo, self).__init__(access_type, user, permissions, initials, is_inherited) self._time_last_seen_value = bb.NOT_SET self._platform_type_value = bb.NOT_SET if time_last_seen is not None: self.time_last_seen = time_last_seen if platform_type is not None: self.platform_type = platform_type # Instance attribute type: datetime.datetime (validator is set below) time_last_seen = bb.Attribute("time_last_seen", nullable=True) # Instance attribute type: seen_state.PlatformType (validator is set below) platform_type = bb.Attribute("platform_type", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserFileMembershipInfo, self)._process_custom_annotations(annotation_type, field_path, processor) UserFileMembershipInfo_validator = bv.Struct(UserFileMembershipInfo) class UserInfo(bb.Struct): """ Basic information about a user. Use :meth:`dropbox.dropbox_client.Dropbox.sharing_users_account` and :meth:`dropbox.dropbox_client.Dropbox.sharing_users_account_batch` to obtain more detailed information. :ivar sharing.UserInfo.account_id: The account ID of the user. :ivar sharing.UserInfo.email: Email address of user. :ivar sharing.UserInfo.display_name: The display name of the user. :ivar sharing.UserInfo.same_team: If the user is in the same team as current user. :ivar sharing.UserInfo.team_member_id: The team member ID of the shared folder member. Only present if ``same_team`` is true. """ __slots__ = [ '_account_id_value', '_email_value', '_display_name_value', '_same_team_value', '_team_member_id_value', ] _has_required_fields = True def __init__(self, account_id=None, email=None, display_name=None, same_team=None, team_member_id=None): self._account_id_value = bb.NOT_SET self._email_value = bb.NOT_SET self._display_name_value = bb.NOT_SET self._same_team_value = bb.NOT_SET self._team_member_id_value = bb.NOT_SET if account_id is not None: self.account_id = account_id if email is not None: self.email = email if display_name is not None: self.display_name = display_name if same_team is not None: self.same_team = same_team if team_member_id is not None: self.team_member_id = team_member_id # Instance attribute type: str (validator is set below) account_id = bb.Attribute("account_id") # Instance attribute type: str (validator is set below) email = bb.Attribute("email") # Instance attribute type: str (validator is set below) display_name = bb.Attribute("display_name") # Instance attribute type: bool (validator is set below) same_team = bb.Attribute("same_team") # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserInfo, self)._process_custom_annotations(annotation_type, field_path, processor) UserInfo_validator = bv.Struct(UserInfo) class ViewerInfoPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.ViewerInfoPolicy.enabled: Viewer information is available on this file. :ivar sharing.ViewerInfoPolicy.disabled: Viewer information is disabled on this file. """ _catch_all = 'other' # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition other = None def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ViewerInfoPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ViewerInfoPolicy_validator = bv.Union(ViewerInfoPolicy) class Visibility(bb.Union): """ Who can access a shared link. The most open visibility is ``public``. The default depends on many aspects, such as team and user preferences and shared folder settings. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar sharing.Visibility.public: Anyone who has received the link can access it. No login required. :ivar sharing.Visibility.team_only: Only members of the same team can access the link. Login is required. :ivar sharing.Visibility.password: A link-specific password is required to access the link. Login is not required. :ivar sharing.Visibility.team_and_password: Only members of the same team who have the link-specific password can access the link. :ivar sharing.Visibility.shared_folder_only: Only members of the shared folder containing the linked file can access the link. Login is required. """ _catch_all = 'other' # Attribute is overwritten below the class definition public = None # Attribute is overwritten below the class definition team_only = None # Attribute is overwritten below the class definition password = None # Attribute is overwritten below the class definition team_and_password = None # Attribute is overwritten below the class definition shared_folder_only = None # Attribute is overwritten below the class definition other = None def is_public(self): """ Check if the union tag is ``public``. :rtype: bool """ return self._tag == 'public' def is_team_only(self): """ Check if the union tag is ``team_only``. :rtype: bool """ return self._tag == 'team_only' def is_password(self): """ Check if the union tag is ``password``. :rtype: bool """ return self._tag == 'password' def is_team_and_password(self): """ Check if the union tag is ``team_and_password``. :rtype: bool """ return self._tag == 'team_and_password' def is_shared_folder_only(self): """ Check if the union tag is ``shared_folder_only``. :rtype: bool """ return self._tag == 'shared_folder_only' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(Visibility, self)._process_custom_annotations(annotation_type, field_path, processor) Visibility_validator = bv.Union(Visibility) class VisibilityPolicy(bb.Struct): """ :ivar sharing.VisibilityPolicy.policy: This is the value to submit when saving the visibility setting. :ivar sharing.VisibilityPolicy.resolved_policy: This is what the effective policy would be, if you selected this option. The resolved policy is obtained after considering external effects such as shared folder settings and team policy. This value is guaranteed to be provided. :ivar sharing.VisibilityPolicy.allowed: Whether the user is permitted to set the visibility to this policy. :ivar sharing.VisibilityPolicy.disallowed_reason: If ``allowed`` is ``False``, this will provide the reason that the user is not permitted to set the visibility to this policy. """ __slots__ = [ '_policy_value', '_resolved_policy_value', '_allowed_value', '_disallowed_reason_value', ] _has_required_fields = True def __init__(self, policy=None, resolved_policy=None, allowed=None, disallowed_reason=None): self._policy_value = bb.NOT_SET self._resolved_policy_value = bb.NOT_SET self._allowed_value = bb.NOT_SET self._disallowed_reason_value = bb.NOT_SET if policy is not None: self.policy = policy if resolved_policy is not None: self.resolved_policy = resolved_policy if allowed is not None: self.allowed = allowed if disallowed_reason is not None: self.disallowed_reason = disallowed_reason # Instance attribute type: RequestedVisibility (validator is set below) policy = bb.Attribute("policy", user_defined=True) # Instance attribute type: AlphaResolvedVisibility (validator is set below) resolved_policy = bb.Attribute("resolved_policy", user_defined=True) # Instance attribute type: bool (validator is set below) allowed = bb.Attribute("allowed") # Instance attribute type: VisibilityPolicyDisallowedReason (validator is set below) disallowed_reason = bb.Attribute("disallowed_reason", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(VisibilityPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) VisibilityPolicy_validator = bv.Struct(VisibilityPolicy) DropboxId_validator = bv.String(min_length=1) GetSharedLinkFileArg_validator = GetSharedLinkMetadataArg_validator GetSharedLinkFileArg = GetSharedLinkMetadataArg Id_validator = files.Id_validator Path_validator = files.Path_validator PathOrId_validator = bv.String(min_length=1, pattern='((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?') ReadPath_validator = files.ReadPath_validator Rev_validator = files.Rev_validator TeamInfo_validator = users.Team_validator TeamInfo = users.Team AccessInheritance._inherit_validator = bv.Void() AccessInheritance._no_inherit_validator = bv.Void() AccessInheritance._other_validator = bv.Void() AccessInheritance._tagmap = { 'inherit': AccessInheritance._inherit_validator, 'no_inherit': AccessInheritance._no_inherit_validator, 'other': AccessInheritance._other_validator, } AccessInheritance.inherit = AccessInheritance('inherit') AccessInheritance.no_inherit = AccessInheritance('no_inherit') AccessInheritance.other = AccessInheritance('other') AccessLevel._owner_validator = bv.Void() AccessLevel._editor_validator = bv.Void() AccessLevel._viewer_validator = bv.Void() AccessLevel._viewer_no_comment_validator = bv.Void() AccessLevel._traverse_validator = bv.Void() AccessLevel._no_access_validator = bv.Void() AccessLevel._other_validator = bv.Void() AccessLevel._tagmap = { 'owner': AccessLevel._owner_validator, 'editor': AccessLevel._editor_validator, 'viewer': AccessLevel._viewer_validator, 'viewer_no_comment': AccessLevel._viewer_no_comment_validator, 'traverse': AccessLevel._traverse_validator, 'no_access': AccessLevel._no_access_validator, 'other': AccessLevel._other_validator, } AccessLevel.owner = AccessLevel('owner') AccessLevel.editor = AccessLevel('editor') AccessLevel.viewer = AccessLevel('viewer') AccessLevel.viewer_no_comment = AccessLevel('viewer_no_comment') AccessLevel.traverse = AccessLevel('traverse') AccessLevel.no_access = AccessLevel('no_access') AccessLevel.other = AccessLevel('other') AclUpdatePolicy._owner_validator = bv.Void() AclUpdatePolicy._editors_validator = bv.Void() AclUpdatePolicy._other_validator = bv.Void() AclUpdatePolicy._tagmap = { 'owner': AclUpdatePolicy._owner_validator, 'editors': AclUpdatePolicy._editors_validator, 'other': AclUpdatePolicy._other_validator, } AclUpdatePolicy.owner = AclUpdatePolicy('owner') AclUpdatePolicy.editors = AclUpdatePolicy('editors') AclUpdatePolicy.other = AclUpdatePolicy('other') AddFileMemberArgs.file.validator = PathOrId_validator AddFileMemberArgs.members.validator = bv.List(MemberSelector_validator) AddFileMemberArgs.custom_message.validator = bv.Nullable(bv.String()) AddFileMemberArgs.quiet.validator = bv.Boolean() AddFileMemberArgs.access_level.validator = AccessLevel_validator AddFileMemberArgs.add_message_as_comment.validator = bv.Boolean() AddFileMemberArgs._all_field_names_ = set([ 'file', 'members', 'custom_message', 'quiet', 'access_level', 'add_message_as_comment', ]) AddFileMemberArgs._all_fields_ = [ ('file', AddFileMemberArgs.file.validator), ('members', AddFileMemberArgs.members.validator), ('custom_message', AddFileMemberArgs.custom_message.validator), ('quiet', AddFileMemberArgs.quiet.validator), ('access_level', AddFileMemberArgs.access_level.validator), ('add_message_as_comment', AddFileMemberArgs.add_message_as_comment.validator), ] AddFileMemberError._user_error_validator = SharingUserError_validator AddFileMemberError._access_error_validator = SharingFileAccessError_validator AddFileMemberError._rate_limit_validator = bv.Void() AddFileMemberError._invalid_comment_validator = bv.Void() AddFileMemberError._other_validator = bv.Void() AddFileMemberError._tagmap = { 'user_error': AddFileMemberError._user_error_validator, 'access_error': AddFileMemberError._access_error_validator, 'rate_limit': AddFileMemberError._rate_limit_validator, 'invalid_comment': AddFileMemberError._invalid_comment_validator, 'other': AddFileMemberError._other_validator, } AddFileMemberError.rate_limit = AddFileMemberError('rate_limit') AddFileMemberError.invalid_comment = AddFileMemberError('invalid_comment') AddFileMemberError.other = AddFileMemberError('other') AddFolderMemberArg.shared_folder_id.validator = common.SharedFolderId_validator AddFolderMemberArg.members.validator = bv.List(AddMember_validator) AddFolderMemberArg.quiet.validator = bv.Boolean() AddFolderMemberArg.custom_message.validator = bv.Nullable(bv.String(min_length=1)) AddFolderMemberArg._all_field_names_ = set([ 'shared_folder_id', 'members', 'quiet', 'custom_message', ]) AddFolderMemberArg._all_fields_ = [ ('shared_folder_id', AddFolderMemberArg.shared_folder_id.validator), ('members', AddFolderMemberArg.members.validator), ('quiet', AddFolderMemberArg.quiet.validator), ('custom_message', AddFolderMemberArg.custom_message.validator), ] AddFolderMemberError._access_error_validator = SharedFolderAccessError_validator AddFolderMemberError._email_unverified_validator = bv.Void() AddFolderMemberError._banned_member_validator = bv.Void() AddFolderMemberError._bad_member_validator = AddMemberSelectorError_validator AddFolderMemberError._cant_share_outside_team_validator = bv.Void() AddFolderMemberError._too_many_members_validator = bv.UInt64() AddFolderMemberError._too_many_pending_invites_validator = bv.UInt64() AddFolderMemberError._rate_limit_validator = bv.Void() AddFolderMemberError._too_many_invitees_validator = bv.Void() AddFolderMemberError._insufficient_plan_validator = bv.Void() AddFolderMemberError._team_folder_validator = bv.Void() AddFolderMemberError._no_permission_validator = bv.Void() AddFolderMemberError._invalid_shared_folder_validator = bv.Void() AddFolderMemberError._other_validator = bv.Void() AddFolderMemberError._tagmap = { 'access_error': AddFolderMemberError._access_error_validator, 'email_unverified': AddFolderMemberError._email_unverified_validator, 'banned_member': AddFolderMemberError._banned_member_validator, 'bad_member': AddFolderMemberError._bad_member_validator, 'cant_share_outside_team': AddFolderMemberError._cant_share_outside_team_validator, 'too_many_members': AddFolderMemberError._too_many_members_validator, 'too_many_pending_invites': AddFolderMemberError._too_many_pending_invites_validator, 'rate_limit': AddFolderMemberError._rate_limit_validator, 'too_many_invitees': AddFolderMemberError._too_many_invitees_validator, 'insufficient_plan': AddFolderMemberError._insufficient_plan_validator, 'team_folder': AddFolderMemberError._team_folder_validator, 'no_permission': AddFolderMemberError._no_permission_validator, 'invalid_shared_folder': AddFolderMemberError._invalid_shared_folder_validator, 'other': AddFolderMemberError._other_validator, } AddFolderMemberError.email_unverified = AddFolderMemberError('email_unverified') AddFolderMemberError.banned_member = AddFolderMemberError('banned_member') AddFolderMemberError.cant_share_outside_team = AddFolderMemberError('cant_share_outside_team') AddFolderMemberError.rate_limit = AddFolderMemberError('rate_limit') AddFolderMemberError.too_many_invitees = AddFolderMemberError('too_many_invitees') AddFolderMemberError.insufficient_plan = AddFolderMemberError('insufficient_plan') AddFolderMemberError.team_folder = AddFolderMemberError('team_folder') AddFolderMemberError.no_permission = AddFolderMemberError('no_permission') AddFolderMemberError.invalid_shared_folder = AddFolderMemberError('invalid_shared_folder') AddFolderMemberError.other = AddFolderMemberError('other') AddMember.member.validator = MemberSelector_validator AddMember.access_level.validator = AccessLevel_validator AddMember._all_field_names_ = set([ 'member', 'access_level', ]) AddMember._all_fields_ = [ ('member', AddMember.member.validator), ('access_level', AddMember.access_level.validator), ] AddMemberSelectorError._automatic_group_validator = bv.Void() AddMemberSelectorError._invalid_dropbox_id_validator = DropboxId_validator AddMemberSelectorError._invalid_email_validator = common.EmailAddress_validator AddMemberSelectorError._unverified_dropbox_id_validator = DropboxId_validator AddMemberSelectorError._group_deleted_validator = bv.Void() AddMemberSelectorError._group_not_on_team_validator = bv.Void() AddMemberSelectorError._other_validator = bv.Void() AddMemberSelectorError._tagmap = { 'automatic_group': AddMemberSelectorError._automatic_group_validator, 'invalid_dropbox_id': AddMemberSelectorError._invalid_dropbox_id_validator, 'invalid_email': AddMemberSelectorError._invalid_email_validator, 'unverified_dropbox_id': AddMemberSelectorError._unverified_dropbox_id_validator, 'group_deleted': AddMemberSelectorError._group_deleted_validator, 'group_not_on_team': AddMemberSelectorError._group_not_on_team_validator, 'other': AddMemberSelectorError._other_validator, } AddMemberSelectorError.automatic_group = AddMemberSelectorError('automatic_group') AddMemberSelectorError.group_deleted = AddMemberSelectorError('group_deleted') AddMemberSelectorError.group_not_on_team = AddMemberSelectorError('group_not_on_team') AddMemberSelectorError.other = AddMemberSelectorError('other') RequestedVisibility._public_validator = bv.Void() RequestedVisibility._team_only_validator = bv.Void() RequestedVisibility._password_validator = bv.Void() RequestedVisibility._tagmap = { 'public': RequestedVisibility._public_validator, 'team_only': RequestedVisibility._team_only_validator, 'password': RequestedVisibility._password_validator, } RequestedVisibility.public = RequestedVisibility('public') RequestedVisibility.team_only = RequestedVisibility('team_only') RequestedVisibility.password = RequestedVisibility('password') ResolvedVisibility._team_and_password_validator = bv.Void() ResolvedVisibility._shared_folder_only_validator = bv.Void() ResolvedVisibility._no_one_validator = bv.Void() ResolvedVisibility._only_you_validator = bv.Void() ResolvedVisibility._other_validator = bv.Void() ResolvedVisibility._tagmap = { 'team_and_password': ResolvedVisibility._team_and_password_validator, 'shared_folder_only': ResolvedVisibility._shared_folder_only_validator, 'no_one': ResolvedVisibility._no_one_validator, 'only_you': ResolvedVisibility._only_you_validator, 'other': ResolvedVisibility._other_validator, } ResolvedVisibility._tagmap.update(RequestedVisibility._tagmap) ResolvedVisibility.team_and_password = ResolvedVisibility('team_and_password') ResolvedVisibility.shared_folder_only = ResolvedVisibility('shared_folder_only') ResolvedVisibility.no_one = ResolvedVisibility('no_one') ResolvedVisibility.only_you = ResolvedVisibility('only_you') ResolvedVisibility.other = ResolvedVisibility('other') AlphaResolvedVisibility._tagmap = { } AlphaResolvedVisibility._tagmap.update(ResolvedVisibility._tagmap) AudienceExceptionContentInfo.name.validator = bv.String() AudienceExceptionContentInfo._all_field_names_ = set(['name']) AudienceExceptionContentInfo._all_fields_ = [('name', AudienceExceptionContentInfo.name.validator)] AudienceExceptions.count.validator = bv.UInt32() AudienceExceptions.exceptions.validator = bv.List(AudienceExceptionContentInfo_validator) AudienceExceptions._all_field_names_ = set([ 'count', 'exceptions', ]) AudienceExceptions._all_fields_ = [ ('count', AudienceExceptions.count.validator), ('exceptions', AudienceExceptions.exceptions.validator), ] AudienceRestrictingSharedFolder.shared_folder_id.validator = common.SharedFolderId_validator AudienceRestrictingSharedFolder.name.validator = bv.String() AudienceRestrictingSharedFolder.audience.validator = LinkAudience_validator AudienceRestrictingSharedFolder._all_field_names_ = set([ 'shared_folder_id', 'name', 'audience', ]) AudienceRestrictingSharedFolder._all_fields_ = [ ('shared_folder_id', AudienceRestrictingSharedFolder.shared_folder_id.validator), ('name', AudienceRestrictingSharedFolder.name.validator), ('audience', AudienceRestrictingSharedFolder.audience.validator), ] LinkMetadata.url.validator = bv.String() LinkMetadata.visibility.validator = Visibility_validator LinkMetadata.expires.validator = bv.Nullable(common.DropboxTimestamp_validator) LinkMetadata._field_names_ = set([ 'url', 'visibility', 'expires', ]) LinkMetadata._all_field_names_ = LinkMetadata._field_names_ LinkMetadata._fields_ = [ ('url', LinkMetadata.url.validator), ('visibility', LinkMetadata.visibility.validator), ('expires', LinkMetadata.expires.validator), ] LinkMetadata._all_fields_ = LinkMetadata._fields_ LinkMetadata._tag_to_subtype_ = { ('path',): PathLinkMetadata_validator, ('collection',): CollectionLinkMetadata_validator, } LinkMetadata._pytype_to_tag_and_subtype_ = { PathLinkMetadata: (('path',), PathLinkMetadata_validator), CollectionLinkMetadata: (('collection',), CollectionLinkMetadata_validator), } LinkMetadata._is_catch_all_ = True CollectionLinkMetadata._field_names_ = set([]) CollectionLinkMetadata._all_field_names_ = LinkMetadata._all_field_names_.union(CollectionLinkMetadata._field_names_) CollectionLinkMetadata._fields_ = [] CollectionLinkMetadata._all_fields_ = LinkMetadata._all_fields_ + CollectionLinkMetadata._fields_ CreateSharedLinkArg.path.validator = bv.String() CreateSharedLinkArg.short_url.validator = bv.Boolean() CreateSharedLinkArg.pending_upload.validator = bv.Nullable(PendingUploadMode_validator) CreateSharedLinkArg._all_field_names_ = set([ 'path', 'short_url', 'pending_upload', ]) CreateSharedLinkArg._all_fields_ = [ ('path', CreateSharedLinkArg.path.validator), ('short_url', CreateSharedLinkArg.short_url.validator), ('pending_upload', CreateSharedLinkArg.pending_upload.validator), ] CreateSharedLinkError._path_validator = files.LookupError_validator CreateSharedLinkError._other_validator = bv.Void() CreateSharedLinkError._tagmap = { 'path': CreateSharedLinkError._path_validator, 'other': CreateSharedLinkError._other_validator, } CreateSharedLinkError.other = CreateSharedLinkError('other') CreateSharedLinkWithSettingsArg.path.validator = ReadPath_validator CreateSharedLinkWithSettingsArg.settings.validator = bv.Nullable(SharedLinkSettings_validator) CreateSharedLinkWithSettingsArg._all_field_names_ = set([ 'path', 'settings', ]) CreateSharedLinkWithSettingsArg._all_fields_ = [ ('path', CreateSharedLinkWithSettingsArg.path.validator), ('settings', CreateSharedLinkWithSettingsArg.settings.validator), ] CreateSharedLinkWithSettingsError._path_validator = files.LookupError_validator CreateSharedLinkWithSettingsError._email_not_verified_validator = bv.Void() CreateSharedLinkWithSettingsError._shared_link_already_exists_validator = bv.Nullable(SharedLinkAlreadyExistsMetadata_validator) CreateSharedLinkWithSettingsError._settings_error_validator = SharedLinkSettingsError_validator CreateSharedLinkWithSettingsError._access_denied_validator = bv.Void() CreateSharedLinkWithSettingsError._tagmap = { 'path': CreateSharedLinkWithSettingsError._path_validator, 'email_not_verified': CreateSharedLinkWithSettingsError._email_not_verified_validator, 'shared_link_already_exists': CreateSharedLinkWithSettingsError._shared_link_already_exists_validator, 'settings_error': CreateSharedLinkWithSettingsError._settings_error_validator, 'access_denied': CreateSharedLinkWithSettingsError._access_denied_validator, } CreateSharedLinkWithSettingsError.email_not_verified = CreateSharedLinkWithSettingsError('email_not_verified') CreateSharedLinkWithSettingsError.access_denied = CreateSharedLinkWithSettingsError('access_denied') SharedContentLinkMetadataBase.access_level.validator = bv.Nullable(AccessLevel_validator) SharedContentLinkMetadataBase.audience_options.validator = bv.List(LinkAudience_validator) SharedContentLinkMetadataBase.audience_restricting_shared_folder.validator = bv.Nullable(AudienceRestrictingSharedFolder_validator) SharedContentLinkMetadataBase.current_audience.validator = LinkAudience_validator SharedContentLinkMetadataBase.expiry.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedContentLinkMetadataBase.link_permissions.validator = bv.List(LinkPermission_validator) SharedContentLinkMetadataBase.password_protected.validator = bv.Boolean() SharedContentLinkMetadataBase._all_field_names_ = set([ 'access_level', 'audience_options', 'audience_restricting_shared_folder', 'current_audience', 'expiry', 'link_permissions', 'password_protected', ]) SharedContentLinkMetadataBase._all_fields_ = [ ('access_level', SharedContentLinkMetadataBase.access_level.validator), ('audience_options', SharedContentLinkMetadataBase.audience_options.validator), ('audience_restricting_shared_folder', SharedContentLinkMetadataBase.audience_restricting_shared_folder.validator), ('current_audience', SharedContentLinkMetadataBase.current_audience.validator), ('expiry', SharedContentLinkMetadataBase.expiry.validator), ('link_permissions', SharedContentLinkMetadataBase.link_permissions.validator), ('password_protected', SharedContentLinkMetadataBase.password_protected.validator), ] ExpectedSharedContentLinkMetadata._all_field_names_ = SharedContentLinkMetadataBase._all_field_names_.union(set([])) ExpectedSharedContentLinkMetadata._all_fields_ = SharedContentLinkMetadataBase._all_fields_ + [] FileAction._disable_viewer_info_validator = bv.Void() FileAction._edit_contents_validator = bv.Void() FileAction._enable_viewer_info_validator = bv.Void() FileAction._invite_viewer_validator = bv.Void() FileAction._invite_viewer_no_comment_validator = bv.Void() FileAction._invite_editor_validator = bv.Void() FileAction._unshare_validator = bv.Void() FileAction._relinquish_membership_validator = bv.Void() FileAction._share_link_validator = bv.Void() FileAction._create_link_validator = bv.Void() FileAction._create_view_link_validator = bv.Void() FileAction._create_edit_link_validator = bv.Void() FileAction._other_validator = bv.Void() FileAction._tagmap = { 'disable_viewer_info': FileAction._disable_viewer_info_validator, 'edit_contents': FileAction._edit_contents_validator, 'enable_viewer_info': FileAction._enable_viewer_info_validator, 'invite_viewer': FileAction._invite_viewer_validator, 'invite_viewer_no_comment': FileAction._invite_viewer_no_comment_validator, 'invite_editor': FileAction._invite_editor_validator, 'unshare': FileAction._unshare_validator, 'relinquish_membership': FileAction._relinquish_membership_validator, 'share_link': FileAction._share_link_validator, 'create_link': FileAction._create_link_validator, 'create_view_link': FileAction._create_view_link_validator, 'create_edit_link': FileAction._create_edit_link_validator, 'other': FileAction._other_validator, } FileAction.disable_viewer_info = FileAction('disable_viewer_info') FileAction.edit_contents = FileAction('edit_contents') FileAction.enable_viewer_info = FileAction('enable_viewer_info') FileAction.invite_viewer = FileAction('invite_viewer') FileAction.invite_viewer_no_comment = FileAction('invite_viewer_no_comment') FileAction.invite_editor = FileAction('invite_editor') FileAction.unshare = FileAction('unshare') FileAction.relinquish_membership = FileAction('relinquish_membership') FileAction.share_link = FileAction('share_link') FileAction.create_link = FileAction('create_link') FileAction.create_view_link = FileAction('create_view_link') FileAction.create_edit_link = FileAction('create_edit_link') FileAction.other = FileAction('other') FileErrorResult._file_not_found_error_validator = files.Id_validator FileErrorResult._invalid_file_action_error_validator = files.Id_validator FileErrorResult._permission_denied_error_validator = files.Id_validator FileErrorResult._other_validator = bv.Void() FileErrorResult._tagmap = { 'file_not_found_error': FileErrorResult._file_not_found_error_validator, 'invalid_file_action_error': FileErrorResult._invalid_file_action_error_validator, 'permission_denied_error': FileErrorResult._permission_denied_error_validator, 'other': FileErrorResult._other_validator, } FileErrorResult.other = FileErrorResult('other') SharedLinkMetadata.url.validator = bv.String() SharedLinkMetadata.id.validator = bv.Nullable(Id_validator) SharedLinkMetadata.name.validator = bv.String() SharedLinkMetadata.expires.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedLinkMetadata.path_lower.validator = bv.Nullable(bv.String()) SharedLinkMetadata.link_permissions.validator = LinkPermissions_validator SharedLinkMetadata.team_member_info.validator = bv.Nullable(TeamMemberInfo_validator) SharedLinkMetadata.content_owner_team_info.validator = bv.Nullable(TeamInfo_validator) SharedLinkMetadata._field_names_ = set([ 'url', 'id', 'name', 'expires', 'path_lower', 'link_permissions', 'team_member_info', 'content_owner_team_info', ]) SharedLinkMetadata._all_field_names_ = SharedLinkMetadata._field_names_ SharedLinkMetadata._fields_ = [ ('url', SharedLinkMetadata.url.validator), ('id', SharedLinkMetadata.id.validator), ('name', SharedLinkMetadata.name.validator), ('expires', SharedLinkMetadata.expires.validator), ('path_lower', SharedLinkMetadata.path_lower.validator), ('link_permissions', SharedLinkMetadata.link_permissions.validator), ('team_member_info', SharedLinkMetadata.team_member_info.validator), ('content_owner_team_info', SharedLinkMetadata.content_owner_team_info.validator), ] SharedLinkMetadata._all_fields_ = SharedLinkMetadata._fields_ SharedLinkMetadata._tag_to_subtype_ = { ('file',): FileLinkMetadata_validator, ('folder',): FolderLinkMetadata_validator, } SharedLinkMetadata._pytype_to_tag_and_subtype_ = { FileLinkMetadata: (('file',), FileLinkMetadata_validator), FolderLinkMetadata: (('folder',), FolderLinkMetadata_validator), } SharedLinkMetadata._is_catch_all_ = True FileLinkMetadata.client_modified.validator = common.DropboxTimestamp_validator FileLinkMetadata.server_modified.validator = common.DropboxTimestamp_validator FileLinkMetadata.rev.validator = Rev_validator FileLinkMetadata.size.validator = bv.UInt64() FileLinkMetadata._field_names_ = set([ 'client_modified', 'server_modified', 'rev', 'size', ]) FileLinkMetadata._all_field_names_ = SharedLinkMetadata._all_field_names_.union(FileLinkMetadata._field_names_) FileLinkMetadata._fields_ = [ ('client_modified', FileLinkMetadata.client_modified.validator), ('server_modified', FileLinkMetadata.server_modified.validator), ('rev', FileLinkMetadata.rev.validator), ('size', FileLinkMetadata.size.validator), ] FileLinkMetadata._all_fields_ = SharedLinkMetadata._all_fields_ + FileLinkMetadata._fields_ FileMemberActionError._invalid_member_validator = bv.Void() FileMemberActionError._no_permission_validator = bv.Void() FileMemberActionError._access_error_validator = SharingFileAccessError_validator FileMemberActionError._no_explicit_access_validator = MemberAccessLevelResult_validator FileMemberActionError._other_validator = bv.Void() FileMemberActionError._tagmap = { 'invalid_member': FileMemberActionError._invalid_member_validator, 'no_permission': FileMemberActionError._no_permission_validator, 'access_error': FileMemberActionError._access_error_validator, 'no_explicit_access': FileMemberActionError._no_explicit_access_validator, 'other': FileMemberActionError._other_validator, } FileMemberActionError.invalid_member = FileMemberActionError('invalid_member') FileMemberActionError.no_permission = FileMemberActionError('no_permission') FileMemberActionError.other = FileMemberActionError('other') FileMemberActionIndividualResult._success_validator = bv.Nullable(AccessLevel_validator) FileMemberActionIndividualResult._member_error_validator = FileMemberActionError_validator FileMemberActionIndividualResult._tagmap = { 'success': FileMemberActionIndividualResult._success_validator, 'member_error': FileMemberActionIndividualResult._member_error_validator, } FileMemberActionResult.member.validator = MemberSelector_validator FileMemberActionResult.result.validator = FileMemberActionIndividualResult_validator FileMemberActionResult.sckey_sha1.validator = bv.Nullable(bv.String()) FileMemberActionResult.invitation_signature.validator = bv.Nullable(bv.List(bv.String())) FileMemberActionResult._all_field_names_ = set([ 'member', 'result', 'sckey_sha1', 'invitation_signature', ]) FileMemberActionResult._all_fields_ = [ ('member', FileMemberActionResult.member.validator), ('result', FileMemberActionResult.result.validator), ('sckey_sha1', FileMemberActionResult.sckey_sha1.validator), ('invitation_signature', FileMemberActionResult.invitation_signature.validator), ] FileMemberRemoveActionResult._success_validator = MemberAccessLevelResult_validator FileMemberRemoveActionResult._member_error_validator = FileMemberActionError_validator FileMemberRemoveActionResult._other_validator = bv.Void() FileMemberRemoveActionResult._tagmap = { 'success': FileMemberRemoveActionResult._success_validator, 'member_error': FileMemberRemoveActionResult._member_error_validator, 'other': FileMemberRemoveActionResult._other_validator, } FileMemberRemoveActionResult.other = FileMemberRemoveActionResult('other') FilePermission.action.validator = FileAction_validator FilePermission.allow.validator = bv.Boolean() FilePermission.reason.validator = bv.Nullable(PermissionDeniedReason_validator) FilePermission._all_field_names_ = set([ 'action', 'allow', 'reason', ]) FilePermission._all_fields_ = [ ('action', FilePermission.action.validator), ('allow', FilePermission.allow.validator), ('reason', FilePermission.reason.validator), ] FolderAction._change_options_validator = bv.Void() FolderAction._disable_viewer_info_validator = bv.Void() FolderAction._edit_contents_validator = bv.Void() FolderAction._enable_viewer_info_validator = bv.Void() FolderAction._invite_editor_validator = bv.Void() FolderAction._invite_viewer_validator = bv.Void() FolderAction._invite_viewer_no_comment_validator = bv.Void() FolderAction._relinquish_membership_validator = bv.Void() FolderAction._unmount_validator = bv.Void() FolderAction._unshare_validator = bv.Void() FolderAction._leave_a_copy_validator = bv.Void() FolderAction._share_link_validator = bv.Void() FolderAction._create_link_validator = bv.Void() FolderAction._set_access_inheritance_validator = bv.Void() FolderAction._other_validator = bv.Void() FolderAction._tagmap = { 'change_options': FolderAction._change_options_validator, 'disable_viewer_info': FolderAction._disable_viewer_info_validator, 'edit_contents': FolderAction._edit_contents_validator, 'enable_viewer_info': FolderAction._enable_viewer_info_validator, 'invite_editor': FolderAction._invite_editor_validator, 'invite_viewer': FolderAction._invite_viewer_validator, 'invite_viewer_no_comment': FolderAction._invite_viewer_no_comment_validator, 'relinquish_membership': FolderAction._relinquish_membership_validator, 'unmount': FolderAction._unmount_validator, 'unshare': FolderAction._unshare_validator, 'leave_a_copy': FolderAction._leave_a_copy_validator, 'share_link': FolderAction._share_link_validator, 'create_link': FolderAction._create_link_validator, 'set_access_inheritance': FolderAction._set_access_inheritance_validator, 'other': FolderAction._other_validator, } FolderAction.change_options = FolderAction('change_options') FolderAction.disable_viewer_info = FolderAction('disable_viewer_info') FolderAction.edit_contents = FolderAction('edit_contents') FolderAction.enable_viewer_info = FolderAction('enable_viewer_info') FolderAction.invite_editor = FolderAction('invite_editor') FolderAction.invite_viewer = FolderAction('invite_viewer') FolderAction.invite_viewer_no_comment = FolderAction('invite_viewer_no_comment') FolderAction.relinquish_membership = FolderAction('relinquish_membership') FolderAction.unmount = FolderAction('unmount') FolderAction.unshare = FolderAction('unshare') FolderAction.leave_a_copy = FolderAction('leave_a_copy') FolderAction.share_link = FolderAction('share_link') FolderAction.create_link = FolderAction('create_link') FolderAction.set_access_inheritance = FolderAction('set_access_inheritance') FolderAction.other = FolderAction('other') FolderLinkMetadata._field_names_ = set([]) FolderLinkMetadata._all_field_names_ = SharedLinkMetadata._all_field_names_.union(FolderLinkMetadata._field_names_) FolderLinkMetadata._fields_ = [] FolderLinkMetadata._all_fields_ = SharedLinkMetadata._all_fields_ + FolderLinkMetadata._fields_ FolderPermission.action.validator = FolderAction_validator FolderPermission.allow.validator = bv.Boolean() FolderPermission.reason.validator = bv.Nullable(PermissionDeniedReason_validator) FolderPermission._all_field_names_ = set([ 'action', 'allow', 'reason', ]) FolderPermission._all_fields_ = [ ('action', FolderPermission.action.validator), ('allow', FolderPermission.allow.validator), ('reason', FolderPermission.reason.validator), ] FolderPolicy.member_policy.validator = bv.Nullable(MemberPolicy_validator) FolderPolicy.resolved_member_policy.validator = bv.Nullable(MemberPolicy_validator) FolderPolicy.acl_update_policy.validator = AclUpdatePolicy_validator FolderPolicy.shared_link_policy.validator = SharedLinkPolicy_validator FolderPolicy.viewer_info_policy.validator = bv.Nullable(ViewerInfoPolicy_validator) FolderPolicy._all_field_names_ = set([ 'member_policy', 'resolved_member_policy', 'acl_update_policy', 'shared_link_policy', 'viewer_info_policy', ]) FolderPolicy._all_fields_ = [ ('member_policy', FolderPolicy.member_policy.validator), ('resolved_member_policy', FolderPolicy.resolved_member_policy.validator), ('acl_update_policy', FolderPolicy.acl_update_policy.validator), ('shared_link_policy', FolderPolicy.shared_link_policy.validator), ('viewer_info_policy', FolderPolicy.viewer_info_policy.validator), ] GetFileMetadataArg.file.validator = PathOrId_validator GetFileMetadataArg.actions.validator = bv.Nullable(bv.List(FileAction_validator)) GetFileMetadataArg._all_field_names_ = set([ 'file', 'actions', ]) GetFileMetadataArg._all_fields_ = [ ('file', GetFileMetadataArg.file.validator), ('actions', GetFileMetadataArg.actions.validator), ] GetFileMetadataBatchArg.files.validator = bv.List(PathOrId_validator, max_items=100) GetFileMetadataBatchArg.actions.validator = bv.Nullable(bv.List(FileAction_validator)) GetFileMetadataBatchArg._all_field_names_ = set([ 'files', 'actions', ]) GetFileMetadataBatchArg._all_fields_ = [ ('files', GetFileMetadataBatchArg.files.validator), ('actions', GetFileMetadataBatchArg.actions.validator), ] GetFileMetadataBatchResult.file.validator = PathOrId_validator GetFileMetadataBatchResult.result.validator = GetFileMetadataIndividualResult_validator GetFileMetadataBatchResult._all_field_names_ = set([ 'file', 'result', ]) GetFileMetadataBatchResult._all_fields_ = [ ('file', GetFileMetadataBatchResult.file.validator), ('result', GetFileMetadataBatchResult.result.validator), ] GetFileMetadataError._user_error_validator = SharingUserError_validator GetFileMetadataError._access_error_validator = SharingFileAccessError_validator GetFileMetadataError._other_validator = bv.Void() GetFileMetadataError._tagmap = { 'user_error': GetFileMetadataError._user_error_validator, 'access_error': GetFileMetadataError._access_error_validator, 'other': GetFileMetadataError._other_validator, } GetFileMetadataError.other = GetFileMetadataError('other') GetFileMetadataIndividualResult._metadata_validator = SharedFileMetadata_validator GetFileMetadataIndividualResult._access_error_validator = SharingFileAccessError_validator GetFileMetadataIndividualResult._other_validator = bv.Void() GetFileMetadataIndividualResult._tagmap = { 'metadata': GetFileMetadataIndividualResult._metadata_validator, 'access_error': GetFileMetadataIndividualResult._access_error_validator, 'other': GetFileMetadataIndividualResult._other_validator, } GetFileMetadataIndividualResult.other = GetFileMetadataIndividualResult('other') GetMetadataArgs.shared_folder_id.validator = common.SharedFolderId_validator GetMetadataArgs.actions.validator = bv.Nullable(bv.List(FolderAction_validator)) GetMetadataArgs._all_field_names_ = set([ 'shared_folder_id', 'actions', ]) GetMetadataArgs._all_fields_ = [ ('shared_folder_id', GetMetadataArgs.shared_folder_id.validator), ('actions', GetMetadataArgs.actions.validator), ] SharedLinkError._shared_link_not_found_validator = bv.Void() SharedLinkError._shared_link_access_denied_validator = bv.Void() SharedLinkError._unsupported_link_type_validator = bv.Void() SharedLinkError._other_validator = bv.Void() SharedLinkError._tagmap = { 'shared_link_not_found': SharedLinkError._shared_link_not_found_validator, 'shared_link_access_denied': SharedLinkError._shared_link_access_denied_validator, 'unsupported_link_type': SharedLinkError._unsupported_link_type_validator, 'other': SharedLinkError._other_validator, } SharedLinkError.shared_link_not_found = SharedLinkError('shared_link_not_found') SharedLinkError.shared_link_access_denied = SharedLinkError('shared_link_access_denied') SharedLinkError.unsupported_link_type = SharedLinkError('unsupported_link_type') SharedLinkError.other = SharedLinkError('other') GetSharedLinkFileError._shared_link_is_directory_validator = bv.Void() GetSharedLinkFileError._tagmap = { 'shared_link_is_directory': GetSharedLinkFileError._shared_link_is_directory_validator, } GetSharedLinkFileError._tagmap.update(SharedLinkError._tagmap) GetSharedLinkFileError.shared_link_is_directory = GetSharedLinkFileError('shared_link_is_directory') GetSharedLinkMetadataArg.url.validator = bv.String() GetSharedLinkMetadataArg.path.validator = bv.Nullable(Path_validator) GetSharedLinkMetadataArg.link_password.validator = bv.Nullable(bv.String()) GetSharedLinkMetadataArg._all_field_names_ = set([ 'url', 'path', 'link_password', ]) GetSharedLinkMetadataArg._all_fields_ = [ ('url', GetSharedLinkMetadataArg.url.validator), ('path', GetSharedLinkMetadataArg.path.validator), ('link_password', GetSharedLinkMetadataArg.link_password.validator), ] GetSharedLinksArg.path.validator = bv.Nullable(bv.String()) GetSharedLinksArg._all_field_names_ = set(['path']) GetSharedLinksArg._all_fields_ = [('path', GetSharedLinksArg.path.validator)] GetSharedLinksError._path_validator = files.MalformedPathError_validator GetSharedLinksError._other_validator = bv.Void() GetSharedLinksError._tagmap = { 'path': GetSharedLinksError._path_validator, 'other': GetSharedLinksError._other_validator, } GetSharedLinksError.other = GetSharedLinksError('other') GetSharedLinksResult.links.validator = bv.List(LinkMetadata_validator) GetSharedLinksResult._all_field_names_ = set(['links']) GetSharedLinksResult._all_fields_ = [('links', GetSharedLinksResult.links.validator)] GroupInfo.group_type.validator = team_common.GroupType_validator GroupInfo.is_member.validator = bv.Boolean() GroupInfo.is_owner.validator = bv.Boolean() GroupInfo.same_team.validator = bv.Boolean() GroupInfo._all_field_names_ = team_common.GroupSummary._all_field_names_.union(set([ 'group_type', 'is_member', 'is_owner', 'same_team', ])) GroupInfo._all_fields_ = team_common.GroupSummary._all_fields_ + [ ('group_type', GroupInfo.group_type.validator), ('is_member', GroupInfo.is_member.validator), ('is_owner', GroupInfo.is_owner.validator), ('same_team', GroupInfo.same_team.validator), ] MembershipInfo.access_type.validator = AccessLevel_validator MembershipInfo.permissions.validator = bv.Nullable(bv.List(MemberPermission_validator)) MembershipInfo.initials.validator = bv.Nullable(bv.String()) MembershipInfo.is_inherited.validator = bv.Boolean() MembershipInfo._all_field_names_ = set([ 'access_type', 'permissions', 'initials', 'is_inherited', ]) MembershipInfo._all_fields_ = [ ('access_type', MembershipInfo.access_type.validator), ('permissions', MembershipInfo.permissions.validator), ('initials', MembershipInfo.initials.validator), ('is_inherited', MembershipInfo.is_inherited.validator), ] GroupMembershipInfo.group.validator = GroupInfo_validator GroupMembershipInfo._all_field_names_ = MembershipInfo._all_field_names_.union(set(['group'])) GroupMembershipInfo._all_fields_ = MembershipInfo._all_fields_ + [('group', GroupMembershipInfo.group.validator)] InsufficientPlan.message.validator = bv.String() InsufficientPlan.upsell_url.validator = bv.Nullable(bv.String()) InsufficientPlan._all_field_names_ = set([ 'message', 'upsell_url', ]) InsufficientPlan._all_fields_ = [ ('message', InsufficientPlan.message.validator), ('upsell_url', InsufficientPlan.upsell_url.validator), ] InsufficientQuotaAmounts.space_needed.validator = bv.UInt64() InsufficientQuotaAmounts.space_shortage.validator = bv.UInt64() InsufficientQuotaAmounts.space_left.validator = bv.UInt64() InsufficientQuotaAmounts._all_field_names_ = set([ 'space_needed', 'space_shortage', 'space_left', ]) InsufficientQuotaAmounts._all_fields_ = [ ('space_needed', InsufficientQuotaAmounts.space_needed.validator), ('space_shortage', InsufficientQuotaAmounts.space_shortage.validator), ('space_left', InsufficientQuotaAmounts.space_left.validator), ] InviteeInfo._email_validator = common.EmailAddress_validator InviteeInfo._other_validator = bv.Void() InviteeInfo._tagmap = { 'email': InviteeInfo._email_validator, 'other': InviteeInfo._other_validator, } InviteeInfo.other = InviteeInfo('other') InviteeMembershipInfo.invitee.validator = InviteeInfo_validator InviteeMembershipInfo.user.validator = bv.Nullable(UserInfo_validator) InviteeMembershipInfo._all_field_names_ = MembershipInfo._all_field_names_.union(set([ 'invitee', 'user', ])) InviteeMembershipInfo._all_fields_ = MembershipInfo._all_fields_ + [ ('invitee', InviteeMembershipInfo.invitee.validator), ('user', InviteeMembershipInfo.user.validator), ] JobError._unshare_folder_error_validator = UnshareFolderError_validator JobError._remove_folder_member_error_validator = RemoveFolderMemberError_validator JobError._relinquish_folder_membership_error_validator = RelinquishFolderMembershipError_validator JobError._other_validator = bv.Void() JobError._tagmap = { 'unshare_folder_error': JobError._unshare_folder_error_validator, 'remove_folder_member_error': JobError._remove_folder_member_error_validator, 'relinquish_folder_membership_error': JobError._relinquish_folder_membership_error_validator, 'other': JobError._other_validator, } JobError.other = JobError('other') JobStatus._complete_validator = bv.Void() JobStatus._failed_validator = JobError_validator JobStatus._tagmap = { 'complete': JobStatus._complete_validator, 'failed': JobStatus._failed_validator, } JobStatus._tagmap.update(async_.PollResultBase._tagmap) JobStatus.complete = JobStatus('complete') LinkAccessLevel._viewer_validator = bv.Void() LinkAccessLevel._editor_validator = bv.Void() LinkAccessLevel._other_validator = bv.Void() LinkAccessLevel._tagmap = { 'viewer': LinkAccessLevel._viewer_validator, 'editor': LinkAccessLevel._editor_validator, 'other': LinkAccessLevel._other_validator, } LinkAccessLevel.viewer = LinkAccessLevel('viewer') LinkAccessLevel.editor = LinkAccessLevel('editor') LinkAccessLevel.other = LinkAccessLevel('other') LinkAction._change_access_level_validator = bv.Void() LinkAction._change_audience_validator = bv.Void() LinkAction._remove_expiry_validator = bv.Void() LinkAction._remove_password_validator = bv.Void() LinkAction._set_expiry_validator = bv.Void() LinkAction._set_password_validator = bv.Void() LinkAction._other_validator = bv.Void() LinkAction._tagmap = { 'change_access_level': LinkAction._change_access_level_validator, 'change_audience': LinkAction._change_audience_validator, 'remove_expiry': LinkAction._remove_expiry_validator, 'remove_password': LinkAction._remove_password_validator, 'set_expiry': LinkAction._set_expiry_validator, 'set_password': LinkAction._set_password_validator, 'other': LinkAction._other_validator, } LinkAction.change_access_level = LinkAction('change_access_level') LinkAction.change_audience = LinkAction('change_audience') LinkAction.remove_expiry = LinkAction('remove_expiry') LinkAction.remove_password = LinkAction('remove_password') LinkAction.set_expiry = LinkAction('set_expiry') LinkAction.set_password = LinkAction('set_password') LinkAction.other = LinkAction('other') LinkAudience._public_validator = bv.Void() LinkAudience._team_validator = bv.Void() LinkAudience._no_one_validator = bv.Void() LinkAudience._password_validator = bv.Void() LinkAudience._members_validator = bv.Void() LinkAudience._other_validator = bv.Void() LinkAudience._tagmap = { 'public': LinkAudience._public_validator, 'team': LinkAudience._team_validator, 'no_one': LinkAudience._no_one_validator, 'password': LinkAudience._password_validator, 'members': LinkAudience._members_validator, 'other': LinkAudience._other_validator, } LinkAudience.public = LinkAudience('public') LinkAudience.team = LinkAudience('team') LinkAudience.no_one = LinkAudience('no_one') LinkAudience.password = LinkAudience('password') LinkAudience.members = LinkAudience('members') LinkAudience.other = LinkAudience('other') VisibilityPolicyDisallowedReason._delete_and_recreate_validator = bv.Void() VisibilityPolicyDisallowedReason._restricted_by_shared_folder_validator = bv.Void() VisibilityPolicyDisallowedReason._restricted_by_team_validator = bv.Void() VisibilityPolicyDisallowedReason._user_not_on_team_validator = bv.Void() VisibilityPolicyDisallowedReason._user_account_type_validator = bv.Void() VisibilityPolicyDisallowedReason._permission_denied_validator = bv.Void() VisibilityPolicyDisallowedReason._other_validator = bv.Void() VisibilityPolicyDisallowedReason._tagmap = { 'delete_and_recreate': VisibilityPolicyDisallowedReason._delete_and_recreate_validator, 'restricted_by_shared_folder': VisibilityPolicyDisallowedReason._restricted_by_shared_folder_validator, 'restricted_by_team': VisibilityPolicyDisallowedReason._restricted_by_team_validator, 'user_not_on_team': VisibilityPolicyDisallowedReason._user_not_on_team_validator, 'user_account_type': VisibilityPolicyDisallowedReason._user_account_type_validator, 'permission_denied': VisibilityPolicyDisallowedReason._permission_denied_validator, 'other': VisibilityPolicyDisallowedReason._other_validator, } VisibilityPolicyDisallowedReason.delete_and_recreate = VisibilityPolicyDisallowedReason('delete_and_recreate') VisibilityPolicyDisallowedReason.restricted_by_shared_folder = VisibilityPolicyDisallowedReason('restricted_by_shared_folder') VisibilityPolicyDisallowedReason.restricted_by_team = VisibilityPolicyDisallowedReason('restricted_by_team') VisibilityPolicyDisallowedReason.user_not_on_team = VisibilityPolicyDisallowedReason('user_not_on_team') VisibilityPolicyDisallowedReason.user_account_type = VisibilityPolicyDisallowedReason('user_account_type') VisibilityPolicyDisallowedReason.permission_denied = VisibilityPolicyDisallowedReason('permission_denied') VisibilityPolicyDisallowedReason.other = VisibilityPolicyDisallowedReason('other') LinkAudienceDisallowedReason._tagmap = { } LinkAudienceDisallowedReason._tagmap.update(VisibilityPolicyDisallowedReason._tagmap) LinkAudienceOption.audience.validator = LinkAudience_validator LinkAudienceOption.allowed.validator = bv.Boolean() LinkAudienceOption.disallowed_reason.validator = bv.Nullable(LinkAudienceDisallowedReason_validator) LinkAudienceOption._all_field_names_ = set([ 'audience', 'allowed', 'disallowed_reason', ]) LinkAudienceOption._all_fields_ = [ ('audience', LinkAudienceOption.audience.validator), ('allowed', LinkAudienceOption.allowed.validator), ('disallowed_reason', LinkAudienceOption.disallowed_reason.validator), ] LinkExpiry._remove_expiry_validator = bv.Void() LinkExpiry._set_expiry_validator = common.DropboxTimestamp_validator LinkExpiry._other_validator = bv.Void() LinkExpiry._tagmap = { 'remove_expiry': LinkExpiry._remove_expiry_validator, 'set_expiry': LinkExpiry._set_expiry_validator, 'other': LinkExpiry._other_validator, } LinkExpiry.remove_expiry = LinkExpiry('remove_expiry') LinkExpiry.other = LinkExpiry('other') LinkPassword._remove_password_validator = bv.Void() LinkPassword._set_password_validator = bv.String() LinkPassword._other_validator = bv.Void() LinkPassword._tagmap = { 'remove_password': LinkPassword._remove_password_validator, 'set_password': LinkPassword._set_password_validator, 'other': LinkPassword._other_validator, } LinkPassword.remove_password = LinkPassword('remove_password') LinkPassword.other = LinkPassword('other') LinkPermission.action.validator = LinkAction_validator LinkPermission.allow.validator = bv.Boolean() LinkPermission.reason.validator = bv.Nullable(PermissionDeniedReason_validator) LinkPermission._all_field_names_ = set([ 'action', 'allow', 'reason', ]) LinkPermission._all_fields_ = [ ('action', LinkPermission.action.validator), ('allow', LinkPermission.allow.validator), ('reason', LinkPermission.reason.validator), ] LinkPermissions.resolved_visibility.validator = bv.Nullable(ResolvedVisibility_validator) LinkPermissions.requested_visibility.validator = bv.Nullable(RequestedVisibility_validator) LinkPermissions.can_revoke.validator = bv.Boolean() LinkPermissions.revoke_failure_reason.validator = bv.Nullable(SharedLinkAccessFailureReason_validator) LinkPermissions.effective_audience.validator = bv.Nullable(LinkAudience_validator) LinkPermissions.link_access_level.validator = bv.Nullable(LinkAccessLevel_validator) LinkPermissions.visibility_policies.validator = bv.List(VisibilityPolicy_validator) LinkPermissions.can_set_expiry.validator = bv.Boolean() LinkPermissions.can_remove_expiry.validator = bv.Boolean() LinkPermissions.allow_download.validator = bv.Boolean() LinkPermissions.can_allow_download.validator = bv.Boolean() LinkPermissions.can_disallow_download.validator = bv.Boolean() LinkPermissions.allow_comments.validator = bv.Boolean() LinkPermissions.team_restricts_comments.validator = bv.Boolean() LinkPermissions.audience_options.validator = bv.Nullable(bv.List(LinkAudienceOption_validator)) LinkPermissions.can_set_password.validator = bv.Nullable(bv.Boolean()) LinkPermissions.can_remove_password.validator = bv.Nullable(bv.Boolean()) LinkPermissions.require_password.validator = bv.Nullable(bv.Boolean()) LinkPermissions.can_use_extended_sharing_controls.validator = bv.Nullable(bv.Boolean()) LinkPermissions._all_field_names_ = set([ 'resolved_visibility', 'requested_visibility', 'can_revoke', 'revoke_failure_reason', 'effective_audience', 'link_access_level', 'visibility_policies', 'can_set_expiry', 'can_remove_expiry', 'allow_download', 'can_allow_download', 'can_disallow_download', 'allow_comments', 'team_restricts_comments', 'audience_options', 'can_set_password', 'can_remove_password', 'require_password', 'can_use_extended_sharing_controls', ]) LinkPermissions._all_fields_ = [ ('resolved_visibility', LinkPermissions.resolved_visibility.validator), ('requested_visibility', LinkPermissions.requested_visibility.validator), ('can_revoke', LinkPermissions.can_revoke.validator), ('revoke_failure_reason', LinkPermissions.revoke_failure_reason.validator), ('effective_audience', LinkPermissions.effective_audience.validator), ('link_access_level', LinkPermissions.link_access_level.validator), ('visibility_policies', LinkPermissions.visibility_policies.validator), ('can_set_expiry', LinkPermissions.can_set_expiry.validator), ('can_remove_expiry', LinkPermissions.can_remove_expiry.validator), ('allow_download', LinkPermissions.allow_download.validator), ('can_allow_download', LinkPermissions.can_allow_download.validator), ('can_disallow_download', LinkPermissions.can_disallow_download.validator), ('allow_comments', LinkPermissions.allow_comments.validator), ('team_restricts_comments', LinkPermissions.team_restricts_comments.validator), ('audience_options', LinkPermissions.audience_options.validator), ('can_set_password', LinkPermissions.can_set_password.validator), ('can_remove_password', LinkPermissions.can_remove_password.validator), ('require_password', LinkPermissions.require_password.validator), ('can_use_extended_sharing_controls', LinkPermissions.can_use_extended_sharing_controls.validator), ] LinkSettings.access_level.validator = bv.Nullable(AccessLevel_validator) LinkSettings.audience.validator = bv.Nullable(LinkAudience_validator) LinkSettings.expiry.validator = bv.Nullable(LinkExpiry_validator) LinkSettings.password.validator = bv.Nullable(LinkPassword_validator) LinkSettings._all_field_names_ = set([ 'access_level', 'audience', 'expiry', 'password', ]) LinkSettings._all_fields_ = [ ('access_level', LinkSettings.access_level.validator), ('audience', LinkSettings.audience.validator), ('expiry', LinkSettings.expiry.validator), ('password', LinkSettings.password.validator), ] ListFileMembersArg.file.validator = PathOrId_validator ListFileMembersArg.actions.validator = bv.Nullable(bv.List(MemberAction_validator)) ListFileMembersArg.include_inherited.validator = bv.Boolean() ListFileMembersArg.limit.validator = bv.UInt32(min_value=1, max_value=300) ListFileMembersArg._all_field_names_ = set([ 'file', 'actions', 'include_inherited', 'limit', ]) ListFileMembersArg._all_fields_ = [ ('file', ListFileMembersArg.file.validator), ('actions', ListFileMembersArg.actions.validator), ('include_inherited', ListFileMembersArg.include_inherited.validator), ('limit', ListFileMembersArg.limit.validator), ] ListFileMembersBatchArg.files.validator = bv.List(PathOrId_validator, max_items=100) ListFileMembersBatchArg.limit.validator = bv.UInt32(max_value=20) ListFileMembersBatchArg._all_field_names_ = set([ 'files', 'limit', ]) ListFileMembersBatchArg._all_fields_ = [ ('files', ListFileMembersBatchArg.files.validator), ('limit', ListFileMembersBatchArg.limit.validator), ] ListFileMembersBatchResult.file.validator = PathOrId_validator ListFileMembersBatchResult.result.validator = ListFileMembersIndividualResult_validator ListFileMembersBatchResult._all_field_names_ = set([ 'file', 'result', ]) ListFileMembersBatchResult._all_fields_ = [ ('file', ListFileMembersBatchResult.file.validator), ('result', ListFileMembersBatchResult.result.validator), ] ListFileMembersContinueArg.cursor.validator = bv.String() ListFileMembersContinueArg._all_field_names_ = set(['cursor']) ListFileMembersContinueArg._all_fields_ = [('cursor', ListFileMembersContinueArg.cursor.validator)] ListFileMembersContinueError._user_error_validator = SharingUserError_validator ListFileMembersContinueError._access_error_validator = SharingFileAccessError_validator ListFileMembersContinueError._invalid_cursor_validator = bv.Void() ListFileMembersContinueError._other_validator = bv.Void() ListFileMembersContinueError._tagmap = { 'user_error': ListFileMembersContinueError._user_error_validator, 'access_error': ListFileMembersContinueError._access_error_validator, 'invalid_cursor': ListFileMembersContinueError._invalid_cursor_validator, 'other': ListFileMembersContinueError._other_validator, } ListFileMembersContinueError.invalid_cursor = ListFileMembersContinueError('invalid_cursor') ListFileMembersContinueError.other = ListFileMembersContinueError('other') ListFileMembersCountResult.members.validator = SharedFileMembers_validator ListFileMembersCountResult.member_count.validator = bv.UInt32() ListFileMembersCountResult._all_field_names_ = set([ 'members', 'member_count', ]) ListFileMembersCountResult._all_fields_ = [ ('members', ListFileMembersCountResult.members.validator), ('member_count', ListFileMembersCountResult.member_count.validator), ] ListFileMembersError._user_error_validator = SharingUserError_validator ListFileMembersError._access_error_validator = SharingFileAccessError_validator ListFileMembersError._other_validator = bv.Void() ListFileMembersError._tagmap = { 'user_error': ListFileMembersError._user_error_validator, 'access_error': ListFileMembersError._access_error_validator, 'other': ListFileMembersError._other_validator, } ListFileMembersError.other = ListFileMembersError('other') ListFileMembersIndividualResult._result_validator = ListFileMembersCountResult_validator ListFileMembersIndividualResult._access_error_validator = SharingFileAccessError_validator ListFileMembersIndividualResult._other_validator = bv.Void() ListFileMembersIndividualResult._tagmap = { 'result': ListFileMembersIndividualResult._result_validator, 'access_error': ListFileMembersIndividualResult._access_error_validator, 'other': ListFileMembersIndividualResult._other_validator, } ListFileMembersIndividualResult.other = ListFileMembersIndividualResult('other') ListFilesArg.limit.validator = bv.UInt32(min_value=1, max_value=300) ListFilesArg.actions.validator = bv.Nullable(bv.List(FileAction_validator)) ListFilesArg._all_field_names_ = set([ 'limit', 'actions', ]) ListFilesArg._all_fields_ = [ ('limit', ListFilesArg.limit.validator), ('actions', ListFilesArg.actions.validator), ] ListFilesContinueArg.cursor.validator = bv.String() ListFilesContinueArg._all_field_names_ = set(['cursor']) ListFilesContinueArg._all_fields_ = [('cursor', ListFilesContinueArg.cursor.validator)] ListFilesContinueError._user_error_validator = SharingUserError_validator ListFilesContinueError._invalid_cursor_validator = bv.Void() ListFilesContinueError._other_validator = bv.Void() ListFilesContinueError._tagmap = { 'user_error': ListFilesContinueError._user_error_validator, 'invalid_cursor': ListFilesContinueError._invalid_cursor_validator, 'other': ListFilesContinueError._other_validator, } ListFilesContinueError.invalid_cursor = ListFilesContinueError('invalid_cursor') ListFilesContinueError.other = ListFilesContinueError('other') ListFilesResult.entries.validator = bv.List(SharedFileMetadata_validator) ListFilesResult.cursor.validator = bv.Nullable(bv.String()) ListFilesResult._all_field_names_ = set([ 'entries', 'cursor', ]) ListFilesResult._all_fields_ = [ ('entries', ListFilesResult.entries.validator), ('cursor', ListFilesResult.cursor.validator), ] ListFolderMembersCursorArg.actions.validator = bv.Nullable(bv.List(MemberAction_validator)) ListFolderMembersCursorArg.limit.validator = bv.UInt32(min_value=1, max_value=1000) ListFolderMembersCursorArg._all_field_names_ = set([ 'actions', 'limit', ]) ListFolderMembersCursorArg._all_fields_ = [ ('actions', ListFolderMembersCursorArg.actions.validator), ('limit', ListFolderMembersCursorArg.limit.validator), ] ListFolderMembersArgs.shared_folder_id.validator = common.SharedFolderId_validator ListFolderMembersArgs._all_field_names_ = ListFolderMembersCursorArg._all_field_names_.union(set(['shared_folder_id'])) ListFolderMembersArgs._all_fields_ = ListFolderMembersCursorArg._all_fields_ + [('shared_folder_id', ListFolderMembersArgs.shared_folder_id.validator)] ListFolderMembersContinueArg.cursor.validator = bv.String() ListFolderMembersContinueArg._all_field_names_ = set(['cursor']) ListFolderMembersContinueArg._all_fields_ = [('cursor', ListFolderMembersContinueArg.cursor.validator)] ListFolderMembersContinueError._access_error_validator = SharedFolderAccessError_validator ListFolderMembersContinueError._invalid_cursor_validator = bv.Void() ListFolderMembersContinueError._other_validator = bv.Void() ListFolderMembersContinueError._tagmap = { 'access_error': ListFolderMembersContinueError._access_error_validator, 'invalid_cursor': ListFolderMembersContinueError._invalid_cursor_validator, 'other': ListFolderMembersContinueError._other_validator, } ListFolderMembersContinueError.invalid_cursor = ListFolderMembersContinueError('invalid_cursor') ListFolderMembersContinueError.other = ListFolderMembersContinueError('other') ListFoldersArgs.limit.validator = bv.UInt32(min_value=1, max_value=1000) ListFoldersArgs.actions.validator = bv.Nullable(bv.List(FolderAction_validator)) ListFoldersArgs._all_field_names_ = set([ 'limit', 'actions', ]) ListFoldersArgs._all_fields_ = [ ('limit', ListFoldersArgs.limit.validator), ('actions', ListFoldersArgs.actions.validator), ] ListFoldersContinueArg.cursor.validator = bv.String() ListFoldersContinueArg._all_field_names_ = set(['cursor']) ListFoldersContinueArg._all_fields_ = [('cursor', ListFoldersContinueArg.cursor.validator)] ListFoldersContinueError._invalid_cursor_validator = bv.Void() ListFoldersContinueError._other_validator = bv.Void() ListFoldersContinueError._tagmap = { 'invalid_cursor': ListFoldersContinueError._invalid_cursor_validator, 'other': ListFoldersContinueError._other_validator, } ListFoldersContinueError.invalid_cursor = ListFoldersContinueError('invalid_cursor') ListFoldersContinueError.other = ListFoldersContinueError('other') ListFoldersResult.entries.validator = bv.List(SharedFolderMetadata_validator) ListFoldersResult.cursor.validator = bv.Nullable(bv.String()) ListFoldersResult._all_field_names_ = set([ 'entries', 'cursor', ]) ListFoldersResult._all_fields_ = [ ('entries', ListFoldersResult.entries.validator), ('cursor', ListFoldersResult.cursor.validator), ] ListSharedLinksArg.path.validator = bv.Nullable(ReadPath_validator) ListSharedLinksArg.cursor.validator = bv.Nullable(bv.String()) ListSharedLinksArg.direct_only.validator = bv.Nullable(bv.Boolean()) ListSharedLinksArg._all_field_names_ = set([ 'path', 'cursor', 'direct_only', ]) ListSharedLinksArg._all_fields_ = [ ('path', ListSharedLinksArg.path.validator), ('cursor', ListSharedLinksArg.cursor.validator), ('direct_only', ListSharedLinksArg.direct_only.validator), ] ListSharedLinksError._path_validator = files.LookupError_validator ListSharedLinksError._reset_validator = bv.Void() ListSharedLinksError._other_validator = bv.Void() ListSharedLinksError._tagmap = { 'path': ListSharedLinksError._path_validator, 'reset': ListSharedLinksError._reset_validator, 'other': ListSharedLinksError._other_validator, } ListSharedLinksError.reset = ListSharedLinksError('reset') ListSharedLinksError.other = ListSharedLinksError('other') ListSharedLinksResult.links.validator = bv.List(SharedLinkMetadata_validator) ListSharedLinksResult.has_more.validator = bv.Boolean() ListSharedLinksResult.cursor.validator = bv.Nullable(bv.String()) ListSharedLinksResult._all_field_names_ = set([ 'links', 'has_more', 'cursor', ]) ListSharedLinksResult._all_fields_ = [ ('links', ListSharedLinksResult.links.validator), ('has_more', ListSharedLinksResult.has_more.validator), ('cursor', ListSharedLinksResult.cursor.validator), ] MemberAccessLevelResult.access_level.validator = bv.Nullable(AccessLevel_validator) MemberAccessLevelResult.warning.validator = bv.Nullable(bv.String()) MemberAccessLevelResult.access_details.validator = bv.Nullable(bv.List(ParentFolderAccessInfo_validator)) MemberAccessLevelResult._all_field_names_ = set([ 'access_level', 'warning', 'access_details', ]) MemberAccessLevelResult._all_fields_ = [ ('access_level', MemberAccessLevelResult.access_level.validator), ('warning', MemberAccessLevelResult.warning.validator), ('access_details', MemberAccessLevelResult.access_details.validator), ] MemberAction._leave_a_copy_validator = bv.Void() MemberAction._make_editor_validator = bv.Void() MemberAction._make_owner_validator = bv.Void() MemberAction._make_viewer_validator = bv.Void() MemberAction._make_viewer_no_comment_validator = bv.Void() MemberAction._remove_validator = bv.Void() MemberAction._other_validator = bv.Void() MemberAction._tagmap = { 'leave_a_copy': MemberAction._leave_a_copy_validator, 'make_editor': MemberAction._make_editor_validator, 'make_owner': MemberAction._make_owner_validator, 'make_viewer': MemberAction._make_viewer_validator, 'make_viewer_no_comment': MemberAction._make_viewer_no_comment_validator, 'remove': MemberAction._remove_validator, 'other': MemberAction._other_validator, } MemberAction.leave_a_copy = MemberAction('leave_a_copy') MemberAction.make_editor = MemberAction('make_editor') MemberAction.make_owner = MemberAction('make_owner') MemberAction.make_viewer = MemberAction('make_viewer') MemberAction.make_viewer_no_comment = MemberAction('make_viewer_no_comment') MemberAction.remove = MemberAction('remove') MemberAction.other = MemberAction('other') MemberPermission.action.validator = MemberAction_validator MemberPermission.allow.validator = bv.Boolean() MemberPermission.reason.validator = bv.Nullable(PermissionDeniedReason_validator) MemberPermission._all_field_names_ = set([ 'action', 'allow', 'reason', ]) MemberPermission._all_fields_ = [ ('action', MemberPermission.action.validator), ('allow', MemberPermission.allow.validator), ('reason', MemberPermission.reason.validator), ] MemberPolicy._team_validator = bv.Void() MemberPolicy._anyone_validator = bv.Void() MemberPolicy._other_validator = bv.Void() MemberPolicy._tagmap = { 'team': MemberPolicy._team_validator, 'anyone': MemberPolicy._anyone_validator, 'other': MemberPolicy._other_validator, } MemberPolicy.team = MemberPolicy('team') MemberPolicy.anyone = MemberPolicy('anyone') MemberPolicy.other = MemberPolicy('other') MemberSelector._dropbox_id_validator = DropboxId_validator MemberSelector._email_validator = common.EmailAddress_validator MemberSelector._other_validator = bv.Void() MemberSelector._tagmap = { 'dropbox_id': MemberSelector._dropbox_id_validator, 'email': MemberSelector._email_validator, 'other': MemberSelector._other_validator, } MemberSelector.other = MemberSelector('other') ModifySharedLinkSettingsArgs.url.validator = bv.String() ModifySharedLinkSettingsArgs.settings.validator = SharedLinkSettings_validator ModifySharedLinkSettingsArgs.remove_expiration.validator = bv.Boolean() ModifySharedLinkSettingsArgs._all_field_names_ = set([ 'url', 'settings', 'remove_expiration', ]) ModifySharedLinkSettingsArgs._all_fields_ = [ ('url', ModifySharedLinkSettingsArgs.url.validator), ('settings', ModifySharedLinkSettingsArgs.settings.validator), ('remove_expiration', ModifySharedLinkSettingsArgs.remove_expiration.validator), ] ModifySharedLinkSettingsError._settings_error_validator = SharedLinkSettingsError_validator ModifySharedLinkSettingsError._email_not_verified_validator = bv.Void() ModifySharedLinkSettingsError._tagmap = { 'settings_error': ModifySharedLinkSettingsError._settings_error_validator, 'email_not_verified': ModifySharedLinkSettingsError._email_not_verified_validator, } ModifySharedLinkSettingsError._tagmap.update(SharedLinkError._tagmap) ModifySharedLinkSettingsError.email_not_verified = ModifySharedLinkSettingsError('email_not_verified') MountFolderArg.shared_folder_id.validator = common.SharedFolderId_validator MountFolderArg._all_field_names_ = set(['shared_folder_id']) MountFolderArg._all_fields_ = [('shared_folder_id', MountFolderArg.shared_folder_id.validator)] MountFolderError._access_error_validator = SharedFolderAccessError_validator MountFolderError._inside_shared_folder_validator = bv.Void() MountFolderError._insufficient_quota_validator = InsufficientQuotaAmounts_validator MountFolderError._already_mounted_validator = bv.Void() MountFolderError._no_permission_validator = bv.Void() MountFolderError._not_mountable_validator = bv.Void() MountFolderError._other_validator = bv.Void() MountFolderError._tagmap = { 'access_error': MountFolderError._access_error_validator, 'inside_shared_folder': MountFolderError._inside_shared_folder_validator, 'insufficient_quota': MountFolderError._insufficient_quota_validator, 'already_mounted': MountFolderError._already_mounted_validator, 'no_permission': MountFolderError._no_permission_validator, 'not_mountable': MountFolderError._not_mountable_validator, 'other': MountFolderError._other_validator, } MountFolderError.inside_shared_folder = MountFolderError('inside_shared_folder') MountFolderError.already_mounted = MountFolderError('already_mounted') MountFolderError.no_permission = MountFolderError('no_permission') MountFolderError.not_mountable = MountFolderError('not_mountable') MountFolderError.other = MountFolderError('other') ParentFolderAccessInfo.folder_name.validator = bv.String() ParentFolderAccessInfo.shared_folder_id.validator = common.SharedFolderId_validator ParentFolderAccessInfo.permissions.validator = bv.List(MemberPermission_validator) ParentFolderAccessInfo.path.validator = bv.String() ParentFolderAccessInfo._all_field_names_ = set([ 'folder_name', 'shared_folder_id', 'permissions', 'path', ]) ParentFolderAccessInfo._all_fields_ = [ ('folder_name', ParentFolderAccessInfo.folder_name.validator), ('shared_folder_id', ParentFolderAccessInfo.shared_folder_id.validator), ('permissions', ParentFolderAccessInfo.permissions.validator), ('path', ParentFolderAccessInfo.path.validator), ] PathLinkMetadata.path.validator = bv.String() PathLinkMetadata._field_names_ = set(['path']) PathLinkMetadata._all_field_names_ = LinkMetadata._all_field_names_.union(PathLinkMetadata._field_names_) PathLinkMetadata._fields_ = [('path', PathLinkMetadata.path.validator)] PathLinkMetadata._all_fields_ = LinkMetadata._all_fields_ + PathLinkMetadata._fields_ PendingUploadMode._file_validator = bv.Void() PendingUploadMode._folder_validator = bv.Void() PendingUploadMode._tagmap = { 'file': PendingUploadMode._file_validator, 'folder': PendingUploadMode._folder_validator, } PendingUploadMode.file = PendingUploadMode('file') PendingUploadMode.folder = PendingUploadMode('folder') PermissionDeniedReason._user_not_same_team_as_owner_validator = bv.Void() PermissionDeniedReason._user_not_allowed_by_owner_validator = bv.Void() PermissionDeniedReason._target_is_indirect_member_validator = bv.Void() PermissionDeniedReason._target_is_owner_validator = bv.Void() PermissionDeniedReason._target_is_self_validator = bv.Void() PermissionDeniedReason._target_not_active_validator = bv.Void() PermissionDeniedReason._folder_is_limited_team_folder_validator = bv.Void() PermissionDeniedReason._owner_not_on_team_validator = bv.Void() PermissionDeniedReason._permission_denied_validator = bv.Void() PermissionDeniedReason._restricted_by_team_validator = bv.Void() PermissionDeniedReason._user_account_type_validator = bv.Void() PermissionDeniedReason._user_not_on_team_validator = bv.Void() PermissionDeniedReason._folder_is_inside_shared_folder_validator = bv.Void() PermissionDeniedReason._restricted_by_parent_folder_validator = bv.Void() PermissionDeniedReason._insufficient_plan_validator = InsufficientPlan_validator PermissionDeniedReason._other_validator = bv.Void() PermissionDeniedReason._tagmap = { 'user_not_same_team_as_owner': PermissionDeniedReason._user_not_same_team_as_owner_validator, 'user_not_allowed_by_owner': PermissionDeniedReason._user_not_allowed_by_owner_validator, 'target_is_indirect_member': PermissionDeniedReason._target_is_indirect_member_validator, 'target_is_owner': PermissionDeniedReason._target_is_owner_validator, 'target_is_self': PermissionDeniedReason._target_is_self_validator, 'target_not_active': PermissionDeniedReason._target_not_active_validator, 'folder_is_limited_team_folder': PermissionDeniedReason._folder_is_limited_team_folder_validator, 'owner_not_on_team': PermissionDeniedReason._owner_not_on_team_validator, 'permission_denied': PermissionDeniedReason._permission_denied_validator, 'restricted_by_team': PermissionDeniedReason._restricted_by_team_validator, 'user_account_type': PermissionDeniedReason._user_account_type_validator, 'user_not_on_team': PermissionDeniedReason._user_not_on_team_validator, 'folder_is_inside_shared_folder': PermissionDeniedReason._folder_is_inside_shared_folder_validator, 'restricted_by_parent_folder': PermissionDeniedReason._restricted_by_parent_folder_validator, 'insufficient_plan': PermissionDeniedReason._insufficient_plan_validator, 'other': PermissionDeniedReason._other_validator, } PermissionDeniedReason.user_not_same_team_as_owner = PermissionDeniedReason('user_not_same_team_as_owner') PermissionDeniedReason.user_not_allowed_by_owner = PermissionDeniedReason('user_not_allowed_by_owner') PermissionDeniedReason.target_is_indirect_member = PermissionDeniedReason('target_is_indirect_member') PermissionDeniedReason.target_is_owner = PermissionDeniedReason('target_is_owner') PermissionDeniedReason.target_is_self = PermissionDeniedReason('target_is_self') PermissionDeniedReason.target_not_active = PermissionDeniedReason('target_not_active') PermissionDeniedReason.folder_is_limited_team_folder = PermissionDeniedReason('folder_is_limited_team_folder') PermissionDeniedReason.owner_not_on_team = PermissionDeniedReason('owner_not_on_team') PermissionDeniedReason.permission_denied = PermissionDeniedReason('permission_denied') PermissionDeniedReason.restricted_by_team = PermissionDeniedReason('restricted_by_team') PermissionDeniedReason.user_account_type = PermissionDeniedReason('user_account_type') PermissionDeniedReason.user_not_on_team = PermissionDeniedReason('user_not_on_team') PermissionDeniedReason.folder_is_inside_shared_folder = PermissionDeniedReason('folder_is_inside_shared_folder') PermissionDeniedReason.restricted_by_parent_folder = PermissionDeniedReason('restricted_by_parent_folder') PermissionDeniedReason.other = PermissionDeniedReason('other') RelinquishFileMembershipArg.file.validator = PathOrId_validator RelinquishFileMembershipArg._all_field_names_ = set(['file']) RelinquishFileMembershipArg._all_fields_ = [('file', RelinquishFileMembershipArg.file.validator)] RelinquishFileMembershipError._access_error_validator = SharingFileAccessError_validator RelinquishFileMembershipError._group_access_validator = bv.Void() RelinquishFileMembershipError._no_permission_validator = bv.Void() RelinquishFileMembershipError._other_validator = bv.Void() RelinquishFileMembershipError._tagmap = { 'access_error': RelinquishFileMembershipError._access_error_validator, 'group_access': RelinquishFileMembershipError._group_access_validator, 'no_permission': RelinquishFileMembershipError._no_permission_validator, 'other': RelinquishFileMembershipError._other_validator, } RelinquishFileMembershipError.group_access = RelinquishFileMembershipError('group_access') RelinquishFileMembershipError.no_permission = RelinquishFileMembershipError('no_permission') RelinquishFileMembershipError.other = RelinquishFileMembershipError('other') RelinquishFolderMembershipArg.shared_folder_id.validator = common.SharedFolderId_validator RelinquishFolderMembershipArg.leave_a_copy.validator = bv.Boolean() RelinquishFolderMembershipArg._all_field_names_ = set([ 'shared_folder_id', 'leave_a_copy', ]) RelinquishFolderMembershipArg._all_fields_ = [ ('shared_folder_id', RelinquishFolderMembershipArg.shared_folder_id.validator), ('leave_a_copy', RelinquishFolderMembershipArg.leave_a_copy.validator), ] RelinquishFolderMembershipError._access_error_validator = SharedFolderAccessError_validator RelinquishFolderMembershipError._folder_owner_validator = bv.Void() RelinquishFolderMembershipError._mounted_validator = bv.Void() RelinquishFolderMembershipError._group_access_validator = bv.Void() RelinquishFolderMembershipError._team_folder_validator = bv.Void() RelinquishFolderMembershipError._no_permission_validator = bv.Void() RelinquishFolderMembershipError._no_explicit_access_validator = bv.Void() RelinquishFolderMembershipError._other_validator = bv.Void() RelinquishFolderMembershipError._tagmap = { 'access_error': RelinquishFolderMembershipError._access_error_validator, 'folder_owner': RelinquishFolderMembershipError._folder_owner_validator, 'mounted': RelinquishFolderMembershipError._mounted_validator, 'group_access': RelinquishFolderMembershipError._group_access_validator, 'team_folder': RelinquishFolderMembershipError._team_folder_validator, 'no_permission': RelinquishFolderMembershipError._no_permission_validator, 'no_explicit_access': RelinquishFolderMembershipError._no_explicit_access_validator, 'other': RelinquishFolderMembershipError._other_validator, } RelinquishFolderMembershipError.folder_owner = RelinquishFolderMembershipError('folder_owner') RelinquishFolderMembershipError.mounted = RelinquishFolderMembershipError('mounted') RelinquishFolderMembershipError.group_access = RelinquishFolderMembershipError('group_access') RelinquishFolderMembershipError.team_folder = RelinquishFolderMembershipError('team_folder') RelinquishFolderMembershipError.no_permission = RelinquishFolderMembershipError('no_permission') RelinquishFolderMembershipError.no_explicit_access = RelinquishFolderMembershipError('no_explicit_access') RelinquishFolderMembershipError.other = RelinquishFolderMembershipError('other') RemoveFileMemberArg.file.validator = PathOrId_validator RemoveFileMemberArg.member.validator = MemberSelector_validator RemoveFileMemberArg._all_field_names_ = set([ 'file', 'member', ]) RemoveFileMemberArg._all_fields_ = [ ('file', RemoveFileMemberArg.file.validator), ('member', RemoveFileMemberArg.member.validator), ] RemoveFileMemberError._user_error_validator = SharingUserError_validator RemoveFileMemberError._access_error_validator = SharingFileAccessError_validator RemoveFileMemberError._no_explicit_access_validator = MemberAccessLevelResult_validator RemoveFileMemberError._other_validator = bv.Void() RemoveFileMemberError._tagmap = { 'user_error': RemoveFileMemberError._user_error_validator, 'access_error': RemoveFileMemberError._access_error_validator, 'no_explicit_access': RemoveFileMemberError._no_explicit_access_validator, 'other': RemoveFileMemberError._other_validator, } RemoveFileMemberError.other = RemoveFileMemberError('other') RemoveFolderMemberArg.shared_folder_id.validator = common.SharedFolderId_validator RemoveFolderMemberArg.member.validator = MemberSelector_validator RemoveFolderMemberArg.leave_a_copy.validator = bv.Boolean() RemoveFolderMemberArg._all_field_names_ = set([ 'shared_folder_id', 'member', 'leave_a_copy', ]) RemoveFolderMemberArg._all_fields_ = [ ('shared_folder_id', RemoveFolderMemberArg.shared_folder_id.validator), ('member', RemoveFolderMemberArg.member.validator), ('leave_a_copy', RemoveFolderMemberArg.leave_a_copy.validator), ] RemoveFolderMemberError._access_error_validator = SharedFolderAccessError_validator RemoveFolderMemberError._member_error_validator = SharedFolderMemberError_validator RemoveFolderMemberError._folder_owner_validator = bv.Void() RemoveFolderMemberError._group_access_validator = bv.Void() RemoveFolderMemberError._team_folder_validator = bv.Void() RemoveFolderMemberError._no_permission_validator = bv.Void() RemoveFolderMemberError._too_many_files_validator = bv.Void() RemoveFolderMemberError._other_validator = bv.Void() RemoveFolderMemberError._tagmap = { 'access_error': RemoveFolderMemberError._access_error_validator, 'member_error': RemoveFolderMemberError._member_error_validator, 'folder_owner': RemoveFolderMemberError._folder_owner_validator, 'group_access': RemoveFolderMemberError._group_access_validator, 'team_folder': RemoveFolderMemberError._team_folder_validator, 'no_permission': RemoveFolderMemberError._no_permission_validator, 'too_many_files': RemoveFolderMemberError._too_many_files_validator, 'other': RemoveFolderMemberError._other_validator, } RemoveFolderMemberError.folder_owner = RemoveFolderMemberError('folder_owner') RemoveFolderMemberError.group_access = RemoveFolderMemberError('group_access') RemoveFolderMemberError.team_folder = RemoveFolderMemberError('team_folder') RemoveFolderMemberError.no_permission = RemoveFolderMemberError('no_permission') RemoveFolderMemberError.too_many_files = RemoveFolderMemberError('too_many_files') RemoveFolderMemberError.other = RemoveFolderMemberError('other') RemoveMemberJobStatus._complete_validator = MemberAccessLevelResult_validator RemoveMemberJobStatus._failed_validator = RemoveFolderMemberError_validator RemoveMemberJobStatus._tagmap = { 'complete': RemoveMemberJobStatus._complete_validator, 'failed': RemoveMemberJobStatus._failed_validator, } RemoveMemberJobStatus._tagmap.update(async_.PollResultBase._tagmap) RequestedLinkAccessLevel._viewer_validator = bv.Void() RequestedLinkAccessLevel._editor_validator = bv.Void() RequestedLinkAccessLevel._max_validator = bv.Void() RequestedLinkAccessLevel._default_validator = bv.Void() RequestedLinkAccessLevel._other_validator = bv.Void() RequestedLinkAccessLevel._tagmap = { 'viewer': RequestedLinkAccessLevel._viewer_validator, 'editor': RequestedLinkAccessLevel._editor_validator, 'max': RequestedLinkAccessLevel._max_validator, 'default': RequestedLinkAccessLevel._default_validator, 'other': RequestedLinkAccessLevel._other_validator, } RequestedLinkAccessLevel.viewer = RequestedLinkAccessLevel('viewer') RequestedLinkAccessLevel.editor = RequestedLinkAccessLevel('editor') RequestedLinkAccessLevel.max = RequestedLinkAccessLevel('max') RequestedLinkAccessLevel.default = RequestedLinkAccessLevel('default') RequestedLinkAccessLevel.other = RequestedLinkAccessLevel('other') RevokeSharedLinkArg.url.validator = bv.String() RevokeSharedLinkArg._all_field_names_ = set(['url']) RevokeSharedLinkArg._all_fields_ = [('url', RevokeSharedLinkArg.url.validator)] RevokeSharedLinkError._shared_link_malformed_validator = bv.Void() RevokeSharedLinkError._tagmap = { 'shared_link_malformed': RevokeSharedLinkError._shared_link_malformed_validator, } RevokeSharedLinkError._tagmap.update(SharedLinkError._tagmap) RevokeSharedLinkError.shared_link_malformed = RevokeSharedLinkError('shared_link_malformed') SetAccessInheritanceArg.access_inheritance.validator = AccessInheritance_validator SetAccessInheritanceArg.shared_folder_id.validator = common.SharedFolderId_validator SetAccessInheritanceArg._all_field_names_ = set([ 'access_inheritance', 'shared_folder_id', ]) SetAccessInheritanceArg._all_fields_ = [ ('access_inheritance', SetAccessInheritanceArg.access_inheritance.validator), ('shared_folder_id', SetAccessInheritanceArg.shared_folder_id.validator), ] SetAccessInheritanceError._access_error_validator = SharedFolderAccessError_validator SetAccessInheritanceError._no_permission_validator = bv.Void() SetAccessInheritanceError._other_validator = bv.Void() SetAccessInheritanceError._tagmap = { 'access_error': SetAccessInheritanceError._access_error_validator, 'no_permission': SetAccessInheritanceError._no_permission_validator, 'other': SetAccessInheritanceError._other_validator, } SetAccessInheritanceError.no_permission = SetAccessInheritanceError('no_permission') SetAccessInheritanceError.other = SetAccessInheritanceError('other') ShareFolderArgBase.acl_update_policy.validator = bv.Nullable(AclUpdatePolicy_validator) ShareFolderArgBase.force_async.validator = bv.Boolean() ShareFolderArgBase.member_policy.validator = bv.Nullable(MemberPolicy_validator) ShareFolderArgBase.path.validator = files.WritePathOrId_validator ShareFolderArgBase.shared_link_policy.validator = bv.Nullable(SharedLinkPolicy_validator) ShareFolderArgBase.viewer_info_policy.validator = bv.Nullable(ViewerInfoPolicy_validator) ShareFolderArgBase.access_inheritance.validator = AccessInheritance_validator ShareFolderArgBase._all_field_names_ = set([ 'acl_update_policy', 'force_async', 'member_policy', 'path', 'shared_link_policy', 'viewer_info_policy', 'access_inheritance', ]) ShareFolderArgBase._all_fields_ = [ ('acl_update_policy', ShareFolderArgBase.acl_update_policy.validator), ('force_async', ShareFolderArgBase.force_async.validator), ('member_policy', ShareFolderArgBase.member_policy.validator), ('path', ShareFolderArgBase.path.validator), ('shared_link_policy', ShareFolderArgBase.shared_link_policy.validator), ('viewer_info_policy', ShareFolderArgBase.viewer_info_policy.validator), ('access_inheritance', ShareFolderArgBase.access_inheritance.validator), ] ShareFolderArg.actions.validator = bv.Nullable(bv.List(FolderAction_validator)) ShareFolderArg.link_settings.validator = bv.Nullable(LinkSettings_validator) ShareFolderArg._all_field_names_ = ShareFolderArgBase._all_field_names_.union(set([ 'actions', 'link_settings', ])) ShareFolderArg._all_fields_ = ShareFolderArgBase._all_fields_ + [ ('actions', ShareFolderArg.actions.validator), ('link_settings', ShareFolderArg.link_settings.validator), ] ShareFolderErrorBase._email_unverified_validator = bv.Void() ShareFolderErrorBase._bad_path_validator = SharePathError_validator ShareFolderErrorBase._team_policy_disallows_member_policy_validator = bv.Void() ShareFolderErrorBase._disallowed_shared_link_policy_validator = bv.Void() ShareFolderErrorBase._other_validator = bv.Void() ShareFolderErrorBase._tagmap = { 'email_unverified': ShareFolderErrorBase._email_unverified_validator, 'bad_path': ShareFolderErrorBase._bad_path_validator, 'team_policy_disallows_member_policy': ShareFolderErrorBase._team_policy_disallows_member_policy_validator, 'disallowed_shared_link_policy': ShareFolderErrorBase._disallowed_shared_link_policy_validator, 'other': ShareFolderErrorBase._other_validator, } ShareFolderErrorBase.email_unverified = ShareFolderErrorBase('email_unverified') ShareFolderErrorBase.team_policy_disallows_member_policy = ShareFolderErrorBase('team_policy_disallows_member_policy') ShareFolderErrorBase.disallowed_shared_link_policy = ShareFolderErrorBase('disallowed_shared_link_policy') ShareFolderErrorBase.other = ShareFolderErrorBase('other') ShareFolderError._no_permission_validator = bv.Void() ShareFolderError._tagmap = { 'no_permission': ShareFolderError._no_permission_validator, } ShareFolderError._tagmap.update(ShareFolderErrorBase._tagmap) ShareFolderError.no_permission = ShareFolderError('no_permission') ShareFolderJobStatus._complete_validator = SharedFolderMetadata_validator ShareFolderJobStatus._failed_validator = ShareFolderError_validator ShareFolderJobStatus._tagmap = { 'complete': ShareFolderJobStatus._complete_validator, 'failed': ShareFolderJobStatus._failed_validator, } ShareFolderJobStatus._tagmap.update(async_.PollResultBase._tagmap) ShareFolderLaunch._complete_validator = SharedFolderMetadata_validator ShareFolderLaunch._tagmap = { 'complete': ShareFolderLaunch._complete_validator, } ShareFolderLaunch._tagmap.update(async_.LaunchResultBase._tagmap) SharePathError._is_file_validator = bv.Void() SharePathError._inside_shared_folder_validator = bv.Void() SharePathError._contains_shared_folder_validator = bv.Void() SharePathError._contains_app_folder_validator = bv.Void() SharePathError._contains_team_folder_validator = bv.Void() SharePathError._is_app_folder_validator = bv.Void() SharePathError._inside_app_folder_validator = bv.Void() SharePathError._is_public_folder_validator = bv.Void() SharePathError._inside_public_folder_validator = bv.Void() SharePathError._already_shared_validator = SharedFolderMetadata_validator SharePathError._invalid_path_validator = bv.Void() SharePathError._is_osx_package_validator = bv.Void() SharePathError._inside_osx_package_validator = bv.Void() SharePathError._is_vault_validator = bv.Void() SharePathError._is_vault_locked_validator = bv.Void() SharePathError._is_family_validator = bv.Void() SharePathError._other_validator = bv.Void() SharePathError._tagmap = { 'is_file': SharePathError._is_file_validator, 'inside_shared_folder': SharePathError._inside_shared_folder_validator, 'contains_shared_folder': SharePathError._contains_shared_folder_validator, 'contains_app_folder': SharePathError._contains_app_folder_validator, 'contains_team_folder': SharePathError._contains_team_folder_validator, 'is_app_folder': SharePathError._is_app_folder_validator, 'inside_app_folder': SharePathError._inside_app_folder_validator, 'is_public_folder': SharePathError._is_public_folder_validator, 'inside_public_folder': SharePathError._inside_public_folder_validator, 'already_shared': SharePathError._already_shared_validator, 'invalid_path': SharePathError._invalid_path_validator, 'is_osx_package': SharePathError._is_osx_package_validator, 'inside_osx_package': SharePathError._inside_osx_package_validator, 'is_vault': SharePathError._is_vault_validator, 'is_vault_locked': SharePathError._is_vault_locked_validator, 'is_family': SharePathError._is_family_validator, 'other': SharePathError._other_validator, } SharePathError.is_file = SharePathError('is_file') SharePathError.inside_shared_folder = SharePathError('inside_shared_folder') SharePathError.contains_shared_folder = SharePathError('contains_shared_folder') SharePathError.contains_app_folder = SharePathError('contains_app_folder') SharePathError.contains_team_folder = SharePathError('contains_team_folder') SharePathError.is_app_folder = SharePathError('is_app_folder') SharePathError.inside_app_folder = SharePathError('inside_app_folder') SharePathError.is_public_folder = SharePathError('is_public_folder') SharePathError.inside_public_folder = SharePathError('inside_public_folder') SharePathError.invalid_path = SharePathError('invalid_path') SharePathError.is_osx_package = SharePathError('is_osx_package') SharePathError.inside_osx_package = SharePathError('inside_osx_package') SharePathError.is_vault = SharePathError('is_vault') SharePathError.is_vault_locked = SharePathError('is_vault_locked') SharePathError.is_family = SharePathError('is_family') SharePathError.other = SharePathError('other') SharedContentLinkMetadata.audience_exceptions.validator = bv.Nullable(AudienceExceptions_validator) SharedContentLinkMetadata.url.validator = bv.String() SharedContentLinkMetadata._all_field_names_ = SharedContentLinkMetadataBase._all_field_names_.union(set([ 'audience_exceptions', 'url', ])) SharedContentLinkMetadata._all_fields_ = SharedContentLinkMetadataBase._all_fields_ + [ ('audience_exceptions', SharedContentLinkMetadata.audience_exceptions.validator), ('url', SharedContentLinkMetadata.url.validator), ] SharedFileMembers.users.validator = bv.List(UserFileMembershipInfo_validator) SharedFileMembers.groups.validator = bv.List(GroupMembershipInfo_validator) SharedFileMembers.invitees.validator = bv.List(InviteeMembershipInfo_validator) SharedFileMembers.cursor.validator = bv.Nullable(bv.String()) SharedFileMembers._all_field_names_ = set([ 'users', 'groups', 'invitees', 'cursor', ]) SharedFileMembers._all_fields_ = [ ('users', SharedFileMembers.users.validator), ('groups', SharedFileMembers.groups.validator), ('invitees', SharedFileMembers.invitees.validator), ('cursor', SharedFileMembers.cursor.validator), ] SharedFileMetadata.access_type.validator = bv.Nullable(AccessLevel_validator) SharedFileMetadata.id.validator = files.FileId_validator SharedFileMetadata.expected_link_metadata.validator = bv.Nullable(ExpectedSharedContentLinkMetadata_validator) SharedFileMetadata.link_metadata.validator = bv.Nullable(SharedContentLinkMetadata_validator) SharedFileMetadata.name.validator = bv.String() SharedFileMetadata.owner_display_names.validator = bv.Nullable(bv.List(bv.String())) SharedFileMetadata.owner_team.validator = bv.Nullable(users.Team_validator) SharedFileMetadata.parent_shared_folder_id.validator = bv.Nullable(common.SharedFolderId_validator) SharedFileMetadata.path_display.validator = bv.Nullable(bv.String()) SharedFileMetadata.path_lower.validator = bv.Nullable(bv.String()) SharedFileMetadata.permissions.validator = bv.Nullable(bv.List(FilePermission_validator)) SharedFileMetadata.policy.validator = FolderPolicy_validator SharedFileMetadata.preview_url.validator = bv.String() SharedFileMetadata.time_invited.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedFileMetadata._all_field_names_ = set([ 'access_type', 'id', 'expected_link_metadata', 'link_metadata', 'name', 'owner_display_names', 'owner_team', 'parent_shared_folder_id', 'path_display', 'path_lower', 'permissions', 'policy', 'preview_url', 'time_invited', ]) SharedFileMetadata._all_fields_ = [ ('access_type', SharedFileMetadata.access_type.validator), ('id', SharedFileMetadata.id.validator), ('expected_link_metadata', SharedFileMetadata.expected_link_metadata.validator), ('link_metadata', SharedFileMetadata.link_metadata.validator), ('name', SharedFileMetadata.name.validator), ('owner_display_names', SharedFileMetadata.owner_display_names.validator), ('owner_team', SharedFileMetadata.owner_team.validator), ('parent_shared_folder_id', SharedFileMetadata.parent_shared_folder_id.validator), ('path_display', SharedFileMetadata.path_display.validator), ('path_lower', SharedFileMetadata.path_lower.validator), ('permissions', SharedFileMetadata.permissions.validator), ('policy', SharedFileMetadata.policy.validator), ('preview_url', SharedFileMetadata.preview_url.validator), ('time_invited', SharedFileMetadata.time_invited.validator), ] SharedFolderAccessError._invalid_id_validator = bv.Void() SharedFolderAccessError._not_a_member_validator = bv.Void() SharedFolderAccessError._invalid_member_validator = bv.Void() SharedFolderAccessError._email_unverified_validator = bv.Void() SharedFolderAccessError._unmounted_validator = bv.Void() SharedFolderAccessError._other_validator = bv.Void() SharedFolderAccessError._tagmap = { 'invalid_id': SharedFolderAccessError._invalid_id_validator, 'not_a_member': SharedFolderAccessError._not_a_member_validator, 'invalid_member': SharedFolderAccessError._invalid_member_validator, 'email_unverified': SharedFolderAccessError._email_unverified_validator, 'unmounted': SharedFolderAccessError._unmounted_validator, 'other': SharedFolderAccessError._other_validator, } SharedFolderAccessError.invalid_id = SharedFolderAccessError('invalid_id') SharedFolderAccessError.not_a_member = SharedFolderAccessError('not_a_member') SharedFolderAccessError.invalid_member = SharedFolderAccessError('invalid_member') SharedFolderAccessError.email_unverified = SharedFolderAccessError('email_unverified') SharedFolderAccessError.unmounted = SharedFolderAccessError('unmounted') SharedFolderAccessError.other = SharedFolderAccessError('other') SharedFolderMemberError._invalid_dropbox_id_validator = bv.Void() SharedFolderMemberError._not_a_member_validator = bv.Void() SharedFolderMemberError._no_explicit_access_validator = MemberAccessLevelResult_validator SharedFolderMemberError._other_validator = bv.Void() SharedFolderMemberError._tagmap = { 'invalid_dropbox_id': SharedFolderMemberError._invalid_dropbox_id_validator, 'not_a_member': SharedFolderMemberError._not_a_member_validator, 'no_explicit_access': SharedFolderMemberError._no_explicit_access_validator, 'other': SharedFolderMemberError._other_validator, } SharedFolderMemberError.invalid_dropbox_id = SharedFolderMemberError('invalid_dropbox_id') SharedFolderMemberError.not_a_member = SharedFolderMemberError('not_a_member') SharedFolderMemberError.other = SharedFolderMemberError('other') SharedFolderMembers.users.validator = bv.List(UserMembershipInfo_validator) SharedFolderMembers.groups.validator = bv.List(GroupMembershipInfo_validator) SharedFolderMembers.invitees.validator = bv.List(InviteeMembershipInfo_validator) SharedFolderMembers.cursor.validator = bv.Nullable(bv.String()) SharedFolderMembers._all_field_names_ = set([ 'users', 'groups', 'invitees', 'cursor', ]) SharedFolderMembers._all_fields_ = [ ('users', SharedFolderMembers.users.validator), ('groups', SharedFolderMembers.groups.validator), ('invitees', SharedFolderMembers.invitees.validator), ('cursor', SharedFolderMembers.cursor.validator), ] SharedFolderMetadataBase.access_type.validator = AccessLevel_validator SharedFolderMetadataBase.is_inside_team_folder.validator = bv.Boolean() SharedFolderMetadataBase.is_team_folder.validator = bv.Boolean() SharedFolderMetadataBase.owner_display_names.validator = bv.Nullable(bv.List(bv.String())) SharedFolderMetadataBase.owner_team.validator = bv.Nullable(users.Team_validator) SharedFolderMetadataBase.parent_shared_folder_id.validator = bv.Nullable(common.SharedFolderId_validator) SharedFolderMetadataBase.path_display.validator = bv.Nullable(bv.String()) SharedFolderMetadataBase.path_lower.validator = bv.Nullable(bv.String()) SharedFolderMetadataBase.parent_folder_name.validator = bv.Nullable(bv.String()) SharedFolderMetadataBase._all_field_names_ = set([ 'access_type', 'is_inside_team_folder', 'is_team_folder', 'owner_display_names', 'owner_team', 'parent_shared_folder_id', 'path_display', 'path_lower', 'parent_folder_name', ]) SharedFolderMetadataBase._all_fields_ = [ ('access_type', SharedFolderMetadataBase.access_type.validator), ('is_inside_team_folder', SharedFolderMetadataBase.is_inside_team_folder.validator), ('is_team_folder', SharedFolderMetadataBase.is_team_folder.validator), ('owner_display_names', SharedFolderMetadataBase.owner_display_names.validator), ('owner_team', SharedFolderMetadataBase.owner_team.validator), ('parent_shared_folder_id', SharedFolderMetadataBase.parent_shared_folder_id.validator), ('path_display', SharedFolderMetadataBase.path_display.validator), ('path_lower', SharedFolderMetadataBase.path_lower.validator), ('parent_folder_name', SharedFolderMetadataBase.parent_folder_name.validator), ] SharedFolderMetadata.link_metadata.validator = bv.Nullable(SharedContentLinkMetadata_validator) SharedFolderMetadata.name.validator = bv.String() SharedFolderMetadata.permissions.validator = bv.Nullable(bv.List(FolderPermission_validator)) SharedFolderMetadata.policy.validator = FolderPolicy_validator SharedFolderMetadata.preview_url.validator = bv.String() SharedFolderMetadata.shared_folder_id.validator = common.SharedFolderId_validator SharedFolderMetadata.time_invited.validator = common.DropboxTimestamp_validator SharedFolderMetadata.access_inheritance.validator = AccessInheritance_validator SharedFolderMetadata._all_field_names_ = SharedFolderMetadataBase._all_field_names_.union(set([ 'link_metadata', 'name', 'permissions', 'policy', 'preview_url', 'shared_folder_id', 'time_invited', 'access_inheritance', ])) SharedFolderMetadata._all_fields_ = SharedFolderMetadataBase._all_fields_ + [ ('link_metadata', SharedFolderMetadata.link_metadata.validator), ('name', SharedFolderMetadata.name.validator), ('permissions', SharedFolderMetadata.permissions.validator), ('policy', SharedFolderMetadata.policy.validator), ('preview_url', SharedFolderMetadata.preview_url.validator), ('shared_folder_id', SharedFolderMetadata.shared_folder_id.validator), ('time_invited', SharedFolderMetadata.time_invited.validator), ('access_inheritance', SharedFolderMetadata.access_inheritance.validator), ] SharedLinkAccessFailureReason._login_required_validator = bv.Void() SharedLinkAccessFailureReason._email_verify_required_validator = bv.Void() SharedLinkAccessFailureReason._password_required_validator = bv.Void() SharedLinkAccessFailureReason._team_only_validator = bv.Void() SharedLinkAccessFailureReason._owner_only_validator = bv.Void() SharedLinkAccessFailureReason._other_validator = bv.Void() SharedLinkAccessFailureReason._tagmap = { 'login_required': SharedLinkAccessFailureReason._login_required_validator, 'email_verify_required': SharedLinkAccessFailureReason._email_verify_required_validator, 'password_required': SharedLinkAccessFailureReason._password_required_validator, 'team_only': SharedLinkAccessFailureReason._team_only_validator, 'owner_only': SharedLinkAccessFailureReason._owner_only_validator, 'other': SharedLinkAccessFailureReason._other_validator, } SharedLinkAccessFailureReason.login_required = SharedLinkAccessFailureReason('login_required') SharedLinkAccessFailureReason.email_verify_required = SharedLinkAccessFailureReason('email_verify_required') SharedLinkAccessFailureReason.password_required = SharedLinkAccessFailureReason('password_required') SharedLinkAccessFailureReason.team_only = SharedLinkAccessFailureReason('team_only') SharedLinkAccessFailureReason.owner_only = SharedLinkAccessFailureReason('owner_only') SharedLinkAccessFailureReason.other = SharedLinkAccessFailureReason('other') SharedLinkAlreadyExistsMetadata._metadata_validator = SharedLinkMetadata_validator SharedLinkAlreadyExistsMetadata._other_validator = bv.Void() SharedLinkAlreadyExistsMetadata._tagmap = { 'metadata': SharedLinkAlreadyExistsMetadata._metadata_validator, 'other': SharedLinkAlreadyExistsMetadata._other_validator, } SharedLinkAlreadyExistsMetadata.other = SharedLinkAlreadyExistsMetadata('other') SharedLinkPolicy._anyone_validator = bv.Void() SharedLinkPolicy._team_validator = bv.Void() SharedLinkPolicy._members_validator = bv.Void() SharedLinkPolicy._other_validator = bv.Void() SharedLinkPolicy._tagmap = { 'anyone': SharedLinkPolicy._anyone_validator, 'team': SharedLinkPolicy._team_validator, 'members': SharedLinkPolicy._members_validator, 'other': SharedLinkPolicy._other_validator, } SharedLinkPolicy.anyone = SharedLinkPolicy('anyone') SharedLinkPolicy.team = SharedLinkPolicy('team') SharedLinkPolicy.members = SharedLinkPolicy('members') SharedLinkPolicy.other = SharedLinkPolicy('other') SharedLinkSettings.require_password.validator = bv.Nullable(bv.Boolean()) SharedLinkSettings.link_password.validator = bv.Nullable(bv.String()) SharedLinkSettings.expires.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedLinkSettings.audience.validator = bv.Nullable(LinkAudience_validator) SharedLinkSettings.access.validator = bv.Nullable(RequestedLinkAccessLevel_validator) SharedLinkSettings.requested_visibility.validator = bv.Nullable(RequestedVisibility_validator) SharedLinkSettings.allow_download.validator = bv.Nullable(bv.Boolean()) SharedLinkSettings._all_field_names_ = set([ 'require_password', 'link_password', 'expires', 'audience', 'access', 'requested_visibility', 'allow_download', ]) SharedLinkSettings._all_fields_ = [ ('require_password', SharedLinkSettings.require_password.validator), ('link_password', SharedLinkSettings.link_password.validator), ('expires', SharedLinkSettings.expires.validator), ('audience', SharedLinkSettings.audience.validator), ('access', SharedLinkSettings.access.validator), ('requested_visibility', SharedLinkSettings.requested_visibility.validator), ('allow_download', SharedLinkSettings.allow_download.validator), ] SharedLinkSettingsError._invalid_settings_validator = bv.Void() SharedLinkSettingsError._not_authorized_validator = bv.Void() SharedLinkSettingsError._tagmap = { 'invalid_settings': SharedLinkSettingsError._invalid_settings_validator, 'not_authorized': SharedLinkSettingsError._not_authorized_validator, } SharedLinkSettingsError.invalid_settings = SharedLinkSettingsError('invalid_settings') SharedLinkSettingsError.not_authorized = SharedLinkSettingsError('not_authorized') SharingFileAccessError._no_permission_validator = bv.Void() SharingFileAccessError._invalid_file_validator = bv.Void() SharingFileAccessError._is_folder_validator = bv.Void() SharingFileAccessError._inside_public_folder_validator = bv.Void() SharingFileAccessError._inside_osx_package_validator = bv.Void() SharingFileAccessError._other_validator = bv.Void() SharingFileAccessError._tagmap = { 'no_permission': SharingFileAccessError._no_permission_validator, 'invalid_file': SharingFileAccessError._invalid_file_validator, 'is_folder': SharingFileAccessError._is_folder_validator, 'inside_public_folder': SharingFileAccessError._inside_public_folder_validator, 'inside_osx_package': SharingFileAccessError._inside_osx_package_validator, 'other': SharingFileAccessError._other_validator, } SharingFileAccessError.no_permission = SharingFileAccessError('no_permission') SharingFileAccessError.invalid_file = SharingFileAccessError('invalid_file') SharingFileAccessError.is_folder = SharingFileAccessError('is_folder') SharingFileAccessError.inside_public_folder = SharingFileAccessError('inside_public_folder') SharingFileAccessError.inside_osx_package = SharingFileAccessError('inside_osx_package') SharingFileAccessError.other = SharingFileAccessError('other') SharingUserError._email_unverified_validator = bv.Void() SharingUserError._other_validator = bv.Void() SharingUserError._tagmap = { 'email_unverified': SharingUserError._email_unverified_validator, 'other': SharingUserError._other_validator, } SharingUserError.email_unverified = SharingUserError('email_unverified') SharingUserError.other = SharingUserError('other') TeamMemberInfo.team_info.validator = TeamInfo_validator TeamMemberInfo.display_name.validator = bv.String() TeamMemberInfo.member_id.validator = bv.Nullable(bv.String()) TeamMemberInfo._all_field_names_ = set([ 'team_info', 'display_name', 'member_id', ]) TeamMemberInfo._all_fields_ = [ ('team_info', TeamMemberInfo.team_info.validator), ('display_name', TeamMemberInfo.display_name.validator), ('member_id', TeamMemberInfo.member_id.validator), ] TransferFolderArg.shared_folder_id.validator = common.SharedFolderId_validator TransferFolderArg.to_dropbox_id.validator = DropboxId_validator TransferFolderArg._all_field_names_ = set([ 'shared_folder_id', 'to_dropbox_id', ]) TransferFolderArg._all_fields_ = [ ('shared_folder_id', TransferFolderArg.shared_folder_id.validator), ('to_dropbox_id', TransferFolderArg.to_dropbox_id.validator), ] TransferFolderError._access_error_validator = SharedFolderAccessError_validator TransferFolderError._invalid_dropbox_id_validator = bv.Void() TransferFolderError._new_owner_not_a_member_validator = bv.Void() TransferFolderError._new_owner_unmounted_validator = bv.Void() TransferFolderError._new_owner_email_unverified_validator = bv.Void() TransferFolderError._team_folder_validator = bv.Void() TransferFolderError._no_permission_validator = bv.Void() TransferFolderError._other_validator = bv.Void() TransferFolderError._tagmap = { 'access_error': TransferFolderError._access_error_validator, 'invalid_dropbox_id': TransferFolderError._invalid_dropbox_id_validator, 'new_owner_not_a_member': TransferFolderError._new_owner_not_a_member_validator, 'new_owner_unmounted': TransferFolderError._new_owner_unmounted_validator, 'new_owner_email_unverified': TransferFolderError._new_owner_email_unverified_validator, 'team_folder': TransferFolderError._team_folder_validator, 'no_permission': TransferFolderError._no_permission_validator, 'other': TransferFolderError._other_validator, } TransferFolderError.invalid_dropbox_id = TransferFolderError('invalid_dropbox_id') TransferFolderError.new_owner_not_a_member = TransferFolderError('new_owner_not_a_member') TransferFolderError.new_owner_unmounted = TransferFolderError('new_owner_unmounted') TransferFolderError.new_owner_email_unverified = TransferFolderError('new_owner_email_unverified') TransferFolderError.team_folder = TransferFolderError('team_folder') TransferFolderError.no_permission = TransferFolderError('no_permission') TransferFolderError.other = TransferFolderError('other') UnmountFolderArg.shared_folder_id.validator = common.SharedFolderId_validator UnmountFolderArg._all_field_names_ = set(['shared_folder_id']) UnmountFolderArg._all_fields_ = [('shared_folder_id', UnmountFolderArg.shared_folder_id.validator)] UnmountFolderError._access_error_validator = SharedFolderAccessError_validator UnmountFolderError._no_permission_validator = bv.Void() UnmountFolderError._not_unmountable_validator = bv.Void() UnmountFolderError._other_validator = bv.Void() UnmountFolderError._tagmap = { 'access_error': UnmountFolderError._access_error_validator, 'no_permission': UnmountFolderError._no_permission_validator, 'not_unmountable': UnmountFolderError._not_unmountable_validator, 'other': UnmountFolderError._other_validator, } UnmountFolderError.no_permission = UnmountFolderError('no_permission') UnmountFolderError.not_unmountable = UnmountFolderError('not_unmountable') UnmountFolderError.other = UnmountFolderError('other') UnshareFileArg.file.validator = PathOrId_validator UnshareFileArg._all_field_names_ = set(['file']) UnshareFileArg._all_fields_ = [('file', UnshareFileArg.file.validator)] UnshareFileError._user_error_validator = SharingUserError_validator UnshareFileError._access_error_validator = SharingFileAccessError_validator UnshareFileError._other_validator = bv.Void() UnshareFileError._tagmap = { 'user_error': UnshareFileError._user_error_validator, 'access_error': UnshareFileError._access_error_validator, 'other': UnshareFileError._other_validator, } UnshareFileError.other = UnshareFileError('other') UnshareFolderArg.shared_folder_id.validator = common.SharedFolderId_validator UnshareFolderArg.leave_a_copy.validator = bv.Boolean() UnshareFolderArg._all_field_names_ = set([ 'shared_folder_id', 'leave_a_copy', ]) UnshareFolderArg._all_fields_ = [ ('shared_folder_id', UnshareFolderArg.shared_folder_id.validator), ('leave_a_copy', UnshareFolderArg.leave_a_copy.validator), ] UnshareFolderError._access_error_validator = SharedFolderAccessError_validator UnshareFolderError._team_folder_validator = bv.Void() UnshareFolderError._no_permission_validator = bv.Void() UnshareFolderError._too_many_files_validator = bv.Void() UnshareFolderError._other_validator = bv.Void() UnshareFolderError._tagmap = { 'access_error': UnshareFolderError._access_error_validator, 'team_folder': UnshareFolderError._team_folder_validator, 'no_permission': UnshareFolderError._no_permission_validator, 'too_many_files': UnshareFolderError._too_many_files_validator, 'other': UnshareFolderError._other_validator, } UnshareFolderError.team_folder = UnshareFolderError('team_folder') UnshareFolderError.no_permission = UnshareFolderError('no_permission') UnshareFolderError.too_many_files = UnshareFolderError('too_many_files') UnshareFolderError.other = UnshareFolderError('other') UpdateFileMemberArgs.file.validator = PathOrId_validator UpdateFileMemberArgs.member.validator = MemberSelector_validator UpdateFileMemberArgs.access_level.validator = AccessLevel_validator UpdateFileMemberArgs._all_field_names_ = set([ 'file', 'member', 'access_level', ]) UpdateFileMemberArgs._all_fields_ = [ ('file', UpdateFileMemberArgs.file.validator), ('member', UpdateFileMemberArgs.member.validator), ('access_level', UpdateFileMemberArgs.access_level.validator), ] UpdateFolderMemberArg.shared_folder_id.validator = common.SharedFolderId_validator UpdateFolderMemberArg.member.validator = MemberSelector_validator UpdateFolderMemberArg.access_level.validator = AccessLevel_validator UpdateFolderMemberArg._all_field_names_ = set([ 'shared_folder_id', 'member', 'access_level', ]) UpdateFolderMemberArg._all_fields_ = [ ('shared_folder_id', UpdateFolderMemberArg.shared_folder_id.validator), ('member', UpdateFolderMemberArg.member.validator), ('access_level', UpdateFolderMemberArg.access_level.validator), ] UpdateFolderMemberError._access_error_validator = SharedFolderAccessError_validator UpdateFolderMemberError._member_error_validator = SharedFolderMemberError_validator UpdateFolderMemberError._no_explicit_access_validator = AddFolderMemberError_validator UpdateFolderMemberError._insufficient_plan_validator = bv.Void() UpdateFolderMemberError._no_permission_validator = bv.Void() UpdateFolderMemberError._other_validator = bv.Void() UpdateFolderMemberError._tagmap = { 'access_error': UpdateFolderMemberError._access_error_validator, 'member_error': UpdateFolderMemberError._member_error_validator, 'no_explicit_access': UpdateFolderMemberError._no_explicit_access_validator, 'insufficient_plan': UpdateFolderMemberError._insufficient_plan_validator, 'no_permission': UpdateFolderMemberError._no_permission_validator, 'other': UpdateFolderMemberError._other_validator, } UpdateFolderMemberError.insufficient_plan = UpdateFolderMemberError('insufficient_plan') UpdateFolderMemberError.no_permission = UpdateFolderMemberError('no_permission') UpdateFolderMemberError.other = UpdateFolderMemberError('other') UpdateFolderPolicyArg.shared_folder_id.validator = common.SharedFolderId_validator UpdateFolderPolicyArg.member_policy.validator = bv.Nullable(MemberPolicy_validator) UpdateFolderPolicyArg.acl_update_policy.validator = bv.Nullable(AclUpdatePolicy_validator) UpdateFolderPolicyArg.viewer_info_policy.validator = bv.Nullable(ViewerInfoPolicy_validator) UpdateFolderPolicyArg.shared_link_policy.validator = bv.Nullable(SharedLinkPolicy_validator) UpdateFolderPolicyArg.link_settings.validator = bv.Nullable(LinkSettings_validator) UpdateFolderPolicyArg.actions.validator = bv.Nullable(bv.List(FolderAction_validator)) UpdateFolderPolicyArg._all_field_names_ = set([ 'shared_folder_id', 'member_policy', 'acl_update_policy', 'viewer_info_policy', 'shared_link_policy', 'link_settings', 'actions', ]) UpdateFolderPolicyArg._all_fields_ = [ ('shared_folder_id', UpdateFolderPolicyArg.shared_folder_id.validator), ('member_policy', UpdateFolderPolicyArg.member_policy.validator), ('acl_update_policy', UpdateFolderPolicyArg.acl_update_policy.validator), ('viewer_info_policy', UpdateFolderPolicyArg.viewer_info_policy.validator), ('shared_link_policy', UpdateFolderPolicyArg.shared_link_policy.validator), ('link_settings', UpdateFolderPolicyArg.link_settings.validator), ('actions', UpdateFolderPolicyArg.actions.validator), ] UpdateFolderPolicyError._access_error_validator = SharedFolderAccessError_validator UpdateFolderPolicyError._not_on_team_validator = bv.Void() UpdateFolderPolicyError._team_policy_disallows_member_policy_validator = bv.Void() UpdateFolderPolicyError._disallowed_shared_link_policy_validator = bv.Void() UpdateFolderPolicyError._no_permission_validator = bv.Void() UpdateFolderPolicyError._team_folder_validator = bv.Void() UpdateFolderPolicyError._other_validator = bv.Void() UpdateFolderPolicyError._tagmap = { 'access_error': UpdateFolderPolicyError._access_error_validator, 'not_on_team': UpdateFolderPolicyError._not_on_team_validator, 'team_policy_disallows_member_policy': UpdateFolderPolicyError._team_policy_disallows_member_policy_validator, 'disallowed_shared_link_policy': UpdateFolderPolicyError._disallowed_shared_link_policy_validator, 'no_permission': UpdateFolderPolicyError._no_permission_validator, 'team_folder': UpdateFolderPolicyError._team_folder_validator, 'other': UpdateFolderPolicyError._other_validator, } UpdateFolderPolicyError.not_on_team = UpdateFolderPolicyError('not_on_team') UpdateFolderPolicyError.team_policy_disallows_member_policy = UpdateFolderPolicyError('team_policy_disallows_member_policy') UpdateFolderPolicyError.disallowed_shared_link_policy = UpdateFolderPolicyError('disallowed_shared_link_policy') UpdateFolderPolicyError.no_permission = UpdateFolderPolicyError('no_permission') UpdateFolderPolicyError.team_folder = UpdateFolderPolicyError('team_folder') UpdateFolderPolicyError.other = UpdateFolderPolicyError('other') UserMembershipInfo.user.validator = UserInfo_validator UserMembershipInfo._all_field_names_ = MembershipInfo._all_field_names_.union(set(['user'])) UserMembershipInfo._all_fields_ = MembershipInfo._all_fields_ + [('user', UserMembershipInfo.user.validator)] UserFileMembershipInfo.time_last_seen.validator = bv.Nullable(common.DropboxTimestamp_validator) UserFileMembershipInfo.platform_type.validator = bv.Nullable(seen_state.PlatformType_validator) UserFileMembershipInfo._all_field_names_ = UserMembershipInfo._all_field_names_.union(set([ 'time_last_seen', 'platform_type', ])) UserFileMembershipInfo._all_fields_ = UserMembershipInfo._all_fields_ + [ ('time_last_seen', UserFileMembershipInfo.time_last_seen.validator), ('platform_type', UserFileMembershipInfo.platform_type.validator), ] UserInfo.account_id.validator = users_common.AccountId_validator UserInfo.email.validator = bv.String() UserInfo.display_name.validator = bv.String() UserInfo.same_team.validator = bv.Boolean() UserInfo.team_member_id.validator = bv.Nullable(bv.String()) UserInfo._all_field_names_ = set([ 'account_id', 'email', 'display_name', 'same_team', 'team_member_id', ]) UserInfo._all_fields_ = [ ('account_id', UserInfo.account_id.validator), ('email', UserInfo.email.validator), ('display_name', UserInfo.display_name.validator), ('same_team', UserInfo.same_team.validator), ('team_member_id', UserInfo.team_member_id.validator), ] ViewerInfoPolicy._enabled_validator = bv.Void() ViewerInfoPolicy._disabled_validator = bv.Void() ViewerInfoPolicy._other_validator = bv.Void() ViewerInfoPolicy._tagmap = { 'enabled': ViewerInfoPolicy._enabled_validator, 'disabled': ViewerInfoPolicy._disabled_validator, 'other': ViewerInfoPolicy._other_validator, } ViewerInfoPolicy.enabled = ViewerInfoPolicy('enabled') ViewerInfoPolicy.disabled = ViewerInfoPolicy('disabled') ViewerInfoPolicy.other = ViewerInfoPolicy('other') Visibility._public_validator = bv.Void() Visibility._team_only_validator = bv.Void() Visibility._password_validator = bv.Void() Visibility._team_and_password_validator = bv.Void() Visibility._shared_folder_only_validator = bv.Void() Visibility._other_validator = bv.Void() Visibility._tagmap = { 'public': Visibility._public_validator, 'team_only': Visibility._team_only_validator, 'password': Visibility._password_validator, 'team_and_password': Visibility._team_and_password_validator, 'shared_folder_only': Visibility._shared_folder_only_validator, 'other': Visibility._other_validator, } Visibility.public = Visibility('public') Visibility.team_only = Visibility('team_only') Visibility.password = Visibility('password') Visibility.team_and_password = Visibility('team_and_password') Visibility.shared_folder_only = Visibility('shared_folder_only') Visibility.other = Visibility('other') VisibilityPolicy.policy.validator = RequestedVisibility_validator VisibilityPolicy.resolved_policy.validator = AlphaResolvedVisibility_validator VisibilityPolicy.allowed.validator = bv.Boolean() VisibilityPolicy.disallowed_reason.validator = bv.Nullable(VisibilityPolicyDisallowedReason_validator) VisibilityPolicy._all_field_names_ = set([ 'policy', 'resolved_policy', 'allowed', 'disallowed_reason', ]) VisibilityPolicy._all_fields_ = [ ('policy', VisibilityPolicy.policy.validator), ('resolved_policy', VisibilityPolicy.resolved_policy.validator), ('allowed', VisibilityPolicy.allowed.validator), ('disallowed_reason', VisibilityPolicy.disallowed_reason.validator), ] AddFileMemberArgs.quiet.default = False AddFileMemberArgs.access_level.default = AccessLevel.viewer AddFileMemberArgs.add_message_as_comment.default = False AddFolderMemberArg.quiet.default = False AddMember.access_level.default = AccessLevel.viewer CreateSharedLinkArg.short_url.default = False MembershipInfo.is_inherited.default = False ListFileMembersArg.include_inherited.default = True ListFileMembersArg.limit.default = 100 ListFileMembersBatchArg.limit.default = 10 ListFilesArg.limit.default = 100 ListFolderMembersCursorArg.limit.default = 1000 ListFoldersArgs.limit.default = 1000 ModifySharedLinkSettingsArgs.remove_expiration.default = False RelinquishFolderMembershipArg.leave_a_copy.default = False SetAccessInheritanceArg.access_inheritance.default = AccessInheritance.inherit ShareFolderArgBase.force_async.default = False ShareFolderArgBase.access_inheritance.default = AccessInheritance.inherit SharedFolderMetadata.access_inheritance.default = AccessInheritance.inherit UnshareFolderArg.leave_a_copy.default = False add_file_member = bb.Route( 'add_file_member', 1, False, AddFileMemberArgs_validator, bv.List(FileMemberActionResult_validator), AddFileMemberError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) add_folder_member = bb.Route( 'add_folder_member', 1, False, AddFolderMemberArg_validator, bv.Void(), AddFolderMemberError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) check_job_status = bb.Route( 'check_job_status', 1, False, async_.PollArg_validator, JobStatus_validator, async_.PollError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) check_remove_member_job_status = bb.Route( 'check_remove_member_job_status', 1, False, async_.PollArg_validator, RemoveMemberJobStatus_validator, async_.PollError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) check_share_job_status = bb.Route( 'check_share_job_status', 1, False, async_.PollArg_validator, ShareFolderJobStatus_validator, async_.PollError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) create_shared_link = bb.Route( 'create_shared_link', 1, True, CreateSharedLinkArg_validator, PathLinkMetadata_validator, CreateSharedLinkError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) create_shared_link_with_settings = bb.Route( 'create_shared_link_with_settings', 1, False, CreateSharedLinkWithSettingsArg_validator, SharedLinkMetadata_validator, CreateSharedLinkWithSettingsError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get_file_metadata = bb.Route( 'get_file_metadata', 1, False, GetFileMetadataArg_validator, SharedFileMetadata_validator, GetFileMetadataError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get_file_metadata_batch = bb.Route( 'get_file_metadata/batch', 1, False, GetFileMetadataBatchArg_validator, bv.List(GetFileMetadataBatchResult_validator), SharingUserError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get_folder_metadata = bb.Route( 'get_folder_metadata', 1, False, GetMetadataArgs_validator, SharedFolderMetadata_validator, SharedFolderAccessError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get_shared_link_file = bb.Route( 'get_shared_link_file', 1, False, GetSharedLinkFileArg_validator, SharedLinkMetadata_validator, GetSharedLinkFileError_validator, {'auth': 'user', 'host': 'content', 'style': 'download'}, ) get_shared_link_metadata = bb.Route( 'get_shared_link_metadata', 1, False, GetSharedLinkMetadataArg_validator, SharedLinkMetadata_validator, SharedLinkError_validator, {'auth': 'app, user', 'host': 'api', 'style': 'rpc'}, ) get_shared_links = bb.Route( 'get_shared_links', 1, True, GetSharedLinksArg_validator, GetSharedLinksResult_validator, GetSharedLinksError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_file_members = bb.Route( 'list_file_members', 1, False, ListFileMembersArg_validator, SharedFileMembers_validator, ListFileMembersError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_file_members_batch = bb.Route( 'list_file_members/batch', 1, False, ListFileMembersBatchArg_validator, bv.List(ListFileMembersBatchResult_validator), SharingUserError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_file_members_continue = bb.Route( 'list_file_members/continue', 1, False, ListFileMembersContinueArg_validator, SharedFileMembers_validator, ListFileMembersContinueError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_folder_members = bb.Route( 'list_folder_members', 1, False, ListFolderMembersArgs_validator, SharedFolderMembers_validator, SharedFolderAccessError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_folder_members_continue = bb.Route( 'list_folder_members/continue', 1, False, ListFolderMembersContinueArg_validator, SharedFolderMembers_validator, ListFolderMembersContinueError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_folders = bb.Route( 'list_folders', 1, False, ListFoldersArgs_validator, ListFoldersResult_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_folders_continue = bb.Route( 'list_folders/continue', 1, False, ListFoldersContinueArg_validator, ListFoldersResult_validator, ListFoldersContinueError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_mountable_folders = bb.Route( 'list_mountable_folders', 1, False, ListFoldersArgs_validator, ListFoldersResult_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_mountable_folders_continue = bb.Route( 'list_mountable_folders/continue', 1, False, ListFoldersContinueArg_validator, ListFoldersResult_validator, ListFoldersContinueError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_received_files = bb.Route( 'list_received_files', 1, False, ListFilesArg_validator, ListFilesResult_validator, SharingUserError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_received_files_continue = bb.Route( 'list_received_files/continue', 1, False, ListFilesContinueArg_validator, ListFilesResult_validator, ListFilesContinueError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) list_shared_links = bb.Route( 'list_shared_links', 1, False, ListSharedLinksArg_validator, ListSharedLinksResult_validator, ListSharedLinksError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) modify_shared_link_settings = bb.Route( 'modify_shared_link_settings', 1, False, ModifySharedLinkSettingsArgs_validator, SharedLinkMetadata_validator, ModifySharedLinkSettingsError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) mount_folder = bb.Route( 'mount_folder', 1, False, MountFolderArg_validator, SharedFolderMetadata_validator, MountFolderError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) relinquish_file_membership = bb.Route( 'relinquish_file_membership', 1, False, RelinquishFileMembershipArg_validator, bv.Void(), RelinquishFileMembershipError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) relinquish_folder_membership = bb.Route( 'relinquish_folder_membership', 1, False, RelinquishFolderMembershipArg_validator, async_.LaunchEmptyResult_validator, RelinquishFolderMembershipError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) remove_file_member = bb.Route( 'remove_file_member', 1, True, RemoveFileMemberArg_validator, FileMemberActionIndividualResult_validator, RemoveFileMemberError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) remove_file_member_2 = bb.Route( 'remove_file_member_2', 1, False, RemoveFileMemberArg_validator, FileMemberRemoveActionResult_validator, RemoveFileMemberError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) remove_folder_member = bb.Route( 'remove_folder_member', 1, False, RemoveFolderMemberArg_validator, async_.LaunchResultBase_validator, RemoveFolderMemberError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) revoke_shared_link = bb.Route( 'revoke_shared_link', 1, False, RevokeSharedLinkArg_validator, bv.Void(), RevokeSharedLinkError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) set_access_inheritance = bb.Route( 'set_access_inheritance', 1, False, SetAccessInheritanceArg_validator, ShareFolderLaunch_validator, SetAccessInheritanceError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) share_folder = bb.Route( 'share_folder', 1, False, ShareFolderArg_validator, ShareFolderLaunch_validator, ShareFolderError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) transfer_folder = bb.Route( 'transfer_folder', 1, False, TransferFolderArg_validator, bv.Void(), TransferFolderError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) unmount_folder = bb.Route( 'unmount_folder', 1, False, UnmountFolderArg_validator, bv.Void(), UnmountFolderError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) unshare_file = bb.Route( 'unshare_file', 1, False, UnshareFileArg_validator, bv.Void(), UnshareFileError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) unshare_folder = bb.Route( 'unshare_folder', 1, False, UnshareFolderArg_validator, async_.LaunchEmptyResult_validator, UnshareFolderError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) update_file_member = bb.Route( 'update_file_member', 1, False, UpdateFileMemberArgs_validator, MemberAccessLevelResult_validator, FileMemberActionError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) update_folder_member = bb.Route( 'update_folder_member', 1, False, UpdateFolderMemberArg_validator, MemberAccessLevelResult_validator, UpdateFolderMemberError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) update_folder_policy = bb.Route( 'update_folder_policy', 1, False, UpdateFolderPolicyArg_validator, SharedFolderMetadata_validator, UpdateFolderPolicyError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'add_file_member': add_file_member, 'add_folder_member': add_folder_member, 'check_job_status': check_job_status, 'check_remove_member_job_status': check_remove_member_job_status, 'check_share_job_status': check_share_job_status, 'create_shared_link': create_shared_link, 'create_shared_link_with_settings': create_shared_link_with_settings, 'get_file_metadata': get_file_metadata, 'get_file_metadata/batch': get_file_metadata_batch, 'get_folder_metadata': get_folder_metadata, 'get_shared_link_file': get_shared_link_file, 'get_shared_link_metadata': get_shared_link_metadata, 'get_shared_links': get_shared_links, 'list_file_members': list_file_members, 'list_file_members/batch': list_file_members_batch, 'list_file_members/continue': list_file_members_continue, 'list_folder_members': list_folder_members, 'list_folder_members/continue': list_folder_members_continue, 'list_folders': list_folders, 'list_folders/continue': list_folders_continue, 'list_mountable_folders': list_mountable_folders, 'list_mountable_folders/continue': list_mountable_folders_continue, 'list_received_files': list_received_files, 'list_received_files/continue': list_received_files_continue, 'list_shared_links': list_shared_links, 'modify_shared_link_settings': modify_shared_link_settings, 'mount_folder': mount_folder, 'relinquish_file_membership': relinquish_file_membership, 'relinquish_folder_membership': relinquish_folder_membership, 'remove_file_member': remove_file_member, 'remove_file_member_2': remove_file_member_2, 'remove_folder_member': remove_folder_member, 'revoke_shared_link': revoke_shared_link, 'set_access_inheritance': set_access_inheritance, 'share_folder': share_folder, 'transfer_folder': transfer_folder, 'unmount_folder': unmount_folder, 'unshare_file': unshare_file, 'unshare_folder': unshare_folder, 'update_file_member': update_file_member, 'update_folder_member': update_folder_member, 'update_folder_policy': update_folder_policy, } dropbox-sdk-python-12.0.2/dropbox/stone_base.py000066400000000000000000000000641462737130500215300ustar00rootroot00000000000000from stone.backends.python_rsrc.stone_base import * dropbox-sdk-python-12.0.2/dropbox/stone_serializers.py000066400000000000000000000000731462737130500231520ustar00rootroot00000000000000from stone.backends.python_rsrc.stone_serializers import * dropbox-sdk-python-12.0.2/dropbox/stone_validators.py000066400000000000000000000000721462737130500227650ustar00rootroot00000000000000from stone.backends.python_rsrc.stone_validators import * dropbox-sdk-python-12.0.2/dropbox/team.py000066400000000000000000023636531462737130500203560ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv from dropbox import account from dropbox import async_ from dropbox import common from dropbox import file_properties from dropbox import files from dropbox import secondary_emails from dropbox import team_common from dropbox import team_policies from dropbox import users from dropbox import users_common class DeviceSession(bb.Struct): """ :ivar team.DeviceSession.session_id: The session id. :ivar team.DeviceSession.ip_address: The IP address of the last activity from this session. :ivar team.DeviceSession.country: The country from which the last activity from this session was made. :ivar team.DeviceSession.created: The time this session was created. :ivar team.DeviceSession.updated: The time of the last activity from this session. """ __slots__ = [ '_session_id_value', '_ip_address_value', '_country_value', '_created_value', '_updated_value', ] _has_required_fields = True def __init__(self, session_id=None, ip_address=None, country=None, created=None, updated=None): self._session_id_value = bb.NOT_SET self._ip_address_value = bb.NOT_SET self._country_value = bb.NOT_SET self._created_value = bb.NOT_SET self._updated_value = bb.NOT_SET if session_id is not None: self.session_id = session_id if ip_address is not None: self.ip_address = ip_address if country is not None: self.country = country if created is not None: self.created = created if updated is not None: self.updated = updated # Instance attribute type: str (validator is set below) session_id = bb.Attribute("session_id") # Instance attribute type: str (validator is set below) ip_address = bb.Attribute("ip_address", nullable=True) # Instance attribute type: str (validator is set below) country = bb.Attribute("country", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) created = bb.Attribute("created", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) updated = bb.Attribute("updated", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceSession, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceSession_validator = bv.Struct(DeviceSession) class ActiveWebSession(DeviceSession): """ Information on active web sessions. :ivar team.ActiveWebSession.user_agent: Information on the hosting device. :ivar team.ActiveWebSession.os: Information on the hosting operating system. :ivar team.ActiveWebSession.browser: Information on the browser used for this web session. :ivar team.ActiveWebSession.expires: The time this session expires. """ __slots__ = [ '_user_agent_value', '_os_value', '_browser_value', '_expires_value', ] _has_required_fields = True def __init__(self, session_id=None, user_agent=None, os=None, browser=None, ip_address=None, country=None, created=None, updated=None, expires=None): super(ActiveWebSession, self).__init__(session_id, ip_address, country, created, updated) self._user_agent_value = bb.NOT_SET self._os_value = bb.NOT_SET self._browser_value = bb.NOT_SET self._expires_value = bb.NOT_SET if user_agent is not None: self.user_agent = user_agent if os is not None: self.os = os if browser is not None: self.browser = browser if expires is not None: self.expires = expires # Instance attribute type: str (validator is set below) user_agent = bb.Attribute("user_agent") # Instance attribute type: str (validator is set below) os = bb.Attribute("os") # Instance attribute type: str (validator is set below) browser = bb.Attribute("browser") # Instance attribute type: datetime.datetime (validator is set below) expires = bb.Attribute("expires", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ActiveWebSession, self)._process_custom_annotations(annotation_type, field_path, processor) ActiveWebSession_validator = bv.Struct(ActiveWebSession) class AddSecondaryEmailResult(bb.Union): """ Result of trying to add a secondary email to a user. 'success' is the only value indicating that a secondary email was successfully added to a user. The other values explain the type of error that occurred, and include the email for which the error occurred. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar secondary_emails.SecondaryEmail team.AddSecondaryEmailResult.success: Describes a secondary email that was successfully added to a user. :ivar str team.AddSecondaryEmailResult.unavailable: Secondary email is not available to be claimed by the user. :ivar str team.AddSecondaryEmailResult.already_pending: Secondary email is already a pending email for the user. :ivar str team.AddSecondaryEmailResult.already_owned_by_user: Secondary email is already a verified email for the user. :ivar str team.AddSecondaryEmailResult.reached_limit: User already has the maximum number of secondary emails allowed. :ivar str team.AddSecondaryEmailResult.transient_error: A transient error occurred. Please try again later. :ivar str team.AddSecondaryEmailResult.too_many_updates: An error occurred due to conflicting updates. Please try again later. :ivar str team.AddSecondaryEmailResult.unknown_error: An unknown error occurred. :ivar str team.AddSecondaryEmailResult.rate_limited: Too many emails are being sent to this email address. Please try again later. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param secondary_emails.SecondaryEmail val: :rtype: AddSecondaryEmailResult """ return cls('success', val) @classmethod def unavailable(cls, val): """ Create an instance of this class set to the ``unavailable`` tag with value ``val``. :param str val: :rtype: AddSecondaryEmailResult """ return cls('unavailable', val) @classmethod def already_pending(cls, val): """ Create an instance of this class set to the ``already_pending`` tag with value ``val``. :param str val: :rtype: AddSecondaryEmailResult """ return cls('already_pending', val) @classmethod def already_owned_by_user(cls, val): """ Create an instance of this class set to the ``already_owned_by_user`` tag with value ``val``. :param str val: :rtype: AddSecondaryEmailResult """ return cls('already_owned_by_user', val) @classmethod def reached_limit(cls, val): """ Create an instance of this class set to the ``reached_limit`` tag with value ``val``. :param str val: :rtype: AddSecondaryEmailResult """ return cls('reached_limit', val) @classmethod def transient_error(cls, val): """ Create an instance of this class set to the ``transient_error`` tag with value ``val``. :param str val: :rtype: AddSecondaryEmailResult """ return cls('transient_error', val) @classmethod def too_many_updates(cls, val): """ Create an instance of this class set to the ``too_many_updates`` tag with value ``val``. :param str val: :rtype: AddSecondaryEmailResult """ return cls('too_many_updates', val) @classmethod def unknown_error(cls, val): """ Create an instance of this class set to the ``unknown_error`` tag with value ``val``. :param str val: :rtype: AddSecondaryEmailResult """ return cls('unknown_error', val) @classmethod def rate_limited(cls, val): """ Create an instance of this class set to the ``rate_limited`` tag with value ``val``. :param str val: :rtype: AddSecondaryEmailResult """ return cls('rate_limited', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_unavailable(self): """ Check if the union tag is ``unavailable``. :rtype: bool """ return self._tag == 'unavailable' def is_already_pending(self): """ Check if the union tag is ``already_pending``. :rtype: bool """ return self._tag == 'already_pending' def is_already_owned_by_user(self): """ Check if the union tag is ``already_owned_by_user``. :rtype: bool """ return self._tag == 'already_owned_by_user' def is_reached_limit(self): """ Check if the union tag is ``reached_limit``. :rtype: bool """ return self._tag == 'reached_limit' def is_transient_error(self): """ Check if the union tag is ``transient_error``. :rtype: bool """ return self._tag == 'transient_error' def is_too_many_updates(self): """ Check if the union tag is ``too_many_updates``. :rtype: bool """ return self._tag == 'too_many_updates' def is_unknown_error(self): """ Check if the union tag is ``unknown_error``. :rtype: bool """ return self._tag == 'unknown_error' def is_rate_limited(self): """ Check if the union tag is ``rate_limited``. :rtype: bool """ return self._tag == 'rate_limited' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_success(self): """ Describes a secondary email that was successfully added to a user. Only call this if :meth:`is_success` is true. :rtype: secondary_emails.SecondaryEmail """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_unavailable(self): """ Secondary email is not available to be claimed by the user. Only call this if :meth:`is_unavailable` is true. :rtype: str """ if not self.is_unavailable(): raise AttributeError("tag 'unavailable' not set") return self._value def get_already_pending(self): """ Secondary email is already a pending email for the user. Only call this if :meth:`is_already_pending` is true. :rtype: str """ if not self.is_already_pending(): raise AttributeError("tag 'already_pending' not set") return self._value def get_already_owned_by_user(self): """ Secondary email is already a verified email for the user. Only call this if :meth:`is_already_owned_by_user` is true. :rtype: str """ if not self.is_already_owned_by_user(): raise AttributeError("tag 'already_owned_by_user' not set") return self._value def get_reached_limit(self): """ User already has the maximum number of secondary emails allowed. Only call this if :meth:`is_reached_limit` is true. :rtype: str """ if not self.is_reached_limit(): raise AttributeError("tag 'reached_limit' not set") return self._value def get_transient_error(self): """ A transient error occurred. Please try again later. Only call this if :meth:`is_transient_error` is true. :rtype: str """ if not self.is_transient_error(): raise AttributeError("tag 'transient_error' not set") return self._value def get_too_many_updates(self): """ An error occurred due to conflicting updates. Please try again later. Only call this if :meth:`is_too_many_updates` is true. :rtype: str """ if not self.is_too_many_updates(): raise AttributeError("tag 'too_many_updates' not set") return self._value def get_unknown_error(self): """ An unknown error occurred. Only call this if :meth:`is_unknown_error` is true. :rtype: str """ if not self.is_unknown_error(): raise AttributeError("tag 'unknown_error' not set") return self._value def get_rate_limited(self): """ Too many emails are being sent to this email address. Please try again later. Only call this if :meth:`is_rate_limited` is true. :rtype: str """ if not self.is_rate_limited(): raise AttributeError("tag 'rate_limited' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddSecondaryEmailResult, self)._process_custom_annotations(annotation_type, field_path, processor) AddSecondaryEmailResult_validator = bv.Union(AddSecondaryEmailResult) class AddSecondaryEmailsArg(bb.Struct): """ :ivar team.AddSecondaryEmailsArg.new_secondary_emails: List of users and secondary emails to add. """ __slots__ = [ '_new_secondary_emails_value', ] _has_required_fields = True def __init__(self, new_secondary_emails=None): self._new_secondary_emails_value = bb.NOT_SET if new_secondary_emails is not None: self.new_secondary_emails = new_secondary_emails # Instance attribute type: list of [UserSecondaryEmailsArg] (validator is set below) new_secondary_emails = bb.Attribute("new_secondary_emails") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddSecondaryEmailsArg, self)._process_custom_annotations(annotation_type, field_path, processor) AddSecondaryEmailsArg_validator = bv.Struct(AddSecondaryEmailsArg) class AddSecondaryEmailsError(bb.Union): """ Error returned when adding secondary emails fails. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.AddSecondaryEmailsError.secondary_emails_disabled: Secondary emails are disabled for the team. :ivar team.AddSecondaryEmailsError.too_many_emails: A maximum of 20 secondary emails can be added in a single call. """ _catch_all = 'other' # Attribute is overwritten below the class definition secondary_emails_disabled = None # Attribute is overwritten below the class definition too_many_emails = None # Attribute is overwritten below the class definition other = None def is_secondary_emails_disabled(self): """ Check if the union tag is ``secondary_emails_disabled``. :rtype: bool """ return self._tag == 'secondary_emails_disabled' def is_too_many_emails(self): """ Check if the union tag is ``too_many_emails``. :rtype: bool """ return self._tag == 'too_many_emails' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddSecondaryEmailsError, self)._process_custom_annotations(annotation_type, field_path, processor) AddSecondaryEmailsError_validator = bv.Union(AddSecondaryEmailsError) class AddSecondaryEmailsResult(bb.Struct): """ :ivar team.AddSecondaryEmailsResult.results: List of users and secondary email results. """ __slots__ = [ '_results_value', ] _has_required_fields = True def __init__(self, results=None): self._results_value = bb.NOT_SET if results is not None: self.results = results # Instance attribute type: list of [UserAddResult] (validator is set below) results = bb.Attribute("results") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AddSecondaryEmailsResult, self)._process_custom_annotations(annotation_type, field_path, processor) AddSecondaryEmailsResult_validator = bv.Struct(AddSecondaryEmailsResult) class AdminTier(bb.Union): """ Describes which team-related admin permissions a user has. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.AdminTier.team_admin: User is an administrator of the team - has all permissions. :ivar team.AdminTier.user_management_admin: User can do most user provisioning, de-provisioning and management. :ivar team.AdminTier.support_admin: User can do a limited set of common support tasks for existing users. Note: Dropbox is adding new types of admin roles; these may display as support_admin. :ivar team.AdminTier.member_only: User is not an admin of the team. """ _catch_all = None # Attribute is overwritten below the class definition team_admin = None # Attribute is overwritten below the class definition user_management_admin = None # Attribute is overwritten below the class definition support_admin = None # Attribute is overwritten below the class definition member_only = None def is_team_admin(self): """ Check if the union tag is ``team_admin``. :rtype: bool """ return self._tag == 'team_admin' def is_user_management_admin(self): """ Check if the union tag is ``user_management_admin``. :rtype: bool """ return self._tag == 'user_management_admin' def is_support_admin(self): """ Check if the union tag is ``support_admin``. :rtype: bool """ return self._tag == 'support_admin' def is_member_only(self): """ Check if the union tag is ``member_only``. :rtype: bool """ return self._tag == 'member_only' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminTier, self)._process_custom_annotations(annotation_type, field_path, processor) AdminTier_validator = bv.Union(AdminTier) class ApiApp(bb.Struct): """ Information on linked third party applications. :ivar team.ApiApp.app_id: The application unique id. :ivar team.ApiApp.app_name: The application name. :ivar team.ApiApp.publisher: The application publisher name. :ivar team.ApiApp.publisher_url: The publisher's URL. :ivar team.ApiApp.linked: The time this application was linked. :ivar team.ApiApp.is_app_folder: Whether the linked application uses a dedicated folder. """ __slots__ = [ '_app_id_value', '_app_name_value', '_publisher_value', '_publisher_url_value', '_linked_value', '_is_app_folder_value', ] _has_required_fields = True def __init__(self, app_id=None, app_name=None, is_app_folder=None, publisher=None, publisher_url=None, linked=None): self._app_id_value = bb.NOT_SET self._app_name_value = bb.NOT_SET self._publisher_value = bb.NOT_SET self._publisher_url_value = bb.NOT_SET self._linked_value = bb.NOT_SET self._is_app_folder_value = bb.NOT_SET if app_id is not None: self.app_id = app_id if app_name is not None: self.app_name = app_name if publisher is not None: self.publisher = publisher if publisher_url is not None: self.publisher_url = publisher_url if linked is not None: self.linked = linked if is_app_folder is not None: self.is_app_folder = is_app_folder # Instance attribute type: str (validator is set below) app_id = bb.Attribute("app_id") # Instance attribute type: str (validator is set below) app_name = bb.Attribute("app_name") # Instance attribute type: str (validator is set below) publisher = bb.Attribute("publisher", nullable=True) # Instance attribute type: str (validator is set below) publisher_url = bb.Attribute("publisher_url", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) linked = bb.Attribute("linked", nullable=True) # Instance attribute type: bool (validator is set below) is_app_folder = bb.Attribute("is_app_folder") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ApiApp, self)._process_custom_annotations(annotation_type, field_path, processor) ApiApp_validator = bv.Struct(ApiApp) class BaseDfbReport(bb.Struct): """ Base report structure. :ivar team.BaseDfbReport.start_date: First date present in the results as 'YYYY-MM-DD' or None. """ __slots__ = [ '_start_date_value', ] _has_required_fields = True def __init__(self, start_date=None): self._start_date_value = bb.NOT_SET if start_date is not None: self.start_date = start_date # Instance attribute type: str (validator is set below) start_date = bb.Attribute("start_date") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BaseDfbReport, self)._process_custom_annotations(annotation_type, field_path, processor) BaseDfbReport_validator = bv.Struct(BaseDfbReport) class BaseTeamFolderError(bb.Union): """ Base error that all errors for existing team folders should extend. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def access_error(cls, val): """ Create an instance of this class set to the ``access_error`` tag with value ``val``. :param TeamFolderAccessError val: :rtype: BaseTeamFolderError """ return cls('access_error', val) @classmethod def status_error(cls, val): """ Create an instance of this class set to the ``status_error`` tag with value ``val``. :param TeamFolderInvalidStatusError val: :rtype: BaseTeamFolderError """ return cls('status_error', val) @classmethod def team_shared_dropbox_error(cls, val): """ Create an instance of this class set to the ``team_shared_dropbox_error`` tag with value ``val``. :param TeamFolderTeamSharedDropboxError val: :rtype: BaseTeamFolderError """ return cls('team_shared_dropbox_error', val) def is_access_error(self): """ Check if the union tag is ``access_error``. :rtype: bool """ return self._tag == 'access_error' def is_status_error(self): """ Check if the union tag is ``status_error``. :rtype: bool """ return self._tag == 'status_error' def is_team_shared_dropbox_error(self): """ Check if the union tag is ``team_shared_dropbox_error``. :rtype: bool """ return self._tag == 'team_shared_dropbox_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_access_error(self): """ Only call this if :meth:`is_access_error` is true. :rtype: TeamFolderAccessError """ if not self.is_access_error(): raise AttributeError("tag 'access_error' not set") return self._value def get_status_error(self): """ Only call this if :meth:`is_status_error` is true. :rtype: TeamFolderInvalidStatusError """ if not self.is_status_error(): raise AttributeError("tag 'status_error' not set") return self._value def get_team_shared_dropbox_error(self): """ Only call this if :meth:`is_team_shared_dropbox_error` is true. :rtype: TeamFolderTeamSharedDropboxError """ if not self.is_team_shared_dropbox_error(): raise AttributeError("tag 'team_shared_dropbox_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(BaseTeamFolderError, self)._process_custom_annotations(annotation_type, field_path, processor) BaseTeamFolderError_validator = bv.Union(BaseTeamFolderError) class CustomQuotaError(bb.Union): """ Error returned when getting member custom quota. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.CustomQuotaError.too_many_users: A maximum of 1000 users can be set for a single call. """ _catch_all = 'other' # Attribute is overwritten below the class definition too_many_users = None # Attribute is overwritten below the class definition other = None def is_too_many_users(self): """ Check if the union tag is ``too_many_users``. :rtype: bool """ return self._tag == 'too_many_users' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(CustomQuotaError, self)._process_custom_annotations(annotation_type, field_path, processor) CustomQuotaError_validator = bv.Union(CustomQuotaError) class CustomQuotaResult(bb.Union): """ User custom quota. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar UserCustomQuotaResult CustomQuotaResult.success: User's custom quota. :ivar UserSelectorArg CustomQuotaResult.invalid_user: Invalid user (not in team). """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param UserCustomQuotaResult val: :rtype: CustomQuotaResult """ return cls('success', val) @classmethod def invalid_user(cls, val): """ Create an instance of this class set to the ``invalid_user`` tag with value ``val``. :param UserSelectorArg val: :rtype: CustomQuotaResult """ return cls('invalid_user', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_invalid_user(self): """ Check if the union tag is ``invalid_user``. :rtype: bool """ return self._tag == 'invalid_user' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_success(self): """ User's custom quota. Only call this if :meth:`is_success` is true. :rtype: UserCustomQuotaResult """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_invalid_user(self): """ Invalid user (not in team). Only call this if :meth:`is_invalid_user` is true. :rtype: UserSelectorArg """ if not self.is_invalid_user(): raise AttributeError("tag 'invalid_user' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(CustomQuotaResult, self)._process_custom_annotations(annotation_type, field_path, processor) CustomQuotaResult_validator = bv.Union(CustomQuotaResult) class CustomQuotaUsersArg(bb.Struct): """ :ivar team.CustomQuotaUsersArg.users: List of users. """ __slots__ = [ '_users_value', ] _has_required_fields = True def __init__(self, users=None): self._users_value = bb.NOT_SET if users is not None: self.users = users # Instance attribute type: list of [UserSelectorArg] (validator is set below) users = bb.Attribute("users") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CustomQuotaUsersArg, self)._process_custom_annotations(annotation_type, field_path, processor) CustomQuotaUsersArg_validator = bv.Struct(CustomQuotaUsersArg) class DateRange(bb.Struct): """ Input arguments that can be provided for most reports. :ivar team.DateRange.start_date: Optional starting date (inclusive). If start_date is None or too long ago, this field will be set to 6 months ago. :ivar team.DateRange.end_date: Optional ending date (exclusive). """ __slots__ = [ '_start_date_value', '_end_date_value', ] _has_required_fields = False def __init__(self, start_date=None, end_date=None): self._start_date_value = bb.NOT_SET self._end_date_value = bb.NOT_SET if start_date is not None: self.start_date = start_date if end_date is not None: self.end_date = end_date # Instance attribute type: datetime.datetime (validator is set below) start_date = bb.Attribute("start_date", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) end_date = bb.Attribute("end_date", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DateRange, self)._process_custom_annotations(annotation_type, field_path, processor) DateRange_validator = bv.Struct(DateRange) class DateRangeError(bb.Union): """ Errors that can originate from problems in input arguments to reports. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DateRangeError, self)._process_custom_annotations(annotation_type, field_path, processor) DateRangeError_validator = bv.Union(DateRangeError) class DeleteSecondaryEmailResult(bb.Union): """ Result of trying to delete a secondary email address. 'success' is the only value indicating that a secondary email was successfully deleted. The other values explain the type of error that occurred, and include the email for which the error occurred. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str team.DeleteSecondaryEmailResult.success: The secondary email was successfully deleted. :ivar str team.DeleteSecondaryEmailResult.not_found: The email address was not found for the user. :ivar str team.DeleteSecondaryEmailResult.cannot_remove_primary: The email address is the primary email address of the user, and cannot be removed. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param str val: :rtype: DeleteSecondaryEmailResult """ return cls('success', val) @classmethod def not_found(cls, val): """ Create an instance of this class set to the ``not_found`` tag with value ``val``. :param str val: :rtype: DeleteSecondaryEmailResult """ return cls('not_found', val) @classmethod def cannot_remove_primary(cls, val): """ Create an instance of this class set to the ``cannot_remove_primary`` tag with value ``val``. :param str val: :rtype: DeleteSecondaryEmailResult """ return cls('cannot_remove_primary', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_not_found(self): """ Check if the union tag is ``not_found``. :rtype: bool """ return self._tag == 'not_found' def is_cannot_remove_primary(self): """ Check if the union tag is ``cannot_remove_primary``. :rtype: bool """ return self._tag == 'cannot_remove_primary' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_success(self): """ The secondary email was successfully deleted. Only call this if :meth:`is_success` is true. :rtype: str """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_not_found(self): """ The email address was not found for the user. Only call this if :meth:`is_not_found` is true. :rtype: str """ if not self.is_not_found(): raise AttributeError("tag 'not_found' not set") return self._value def get_cannot_remove_primary(self): """ The email address is the primary email address of the user, and cannot be removed. Only call this if :meth:`is_cannot_remove_primary` is true. :rtype: str """ if not self.is_cannot_remove_primary(): raise AttributeError("tag 'cannot_remove_primary' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteSecondaryEmailResult, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteSecondaryEmailResult_validator = bv.Union(DeleteSecondaryEmailResult) class DeleteSecondaryEmailsArg(bb.Struct): """ :ivar team.DeleteSecondaryEmailsArg.emails_to_delete: List of users and their secondary emails to delete. """ __slots__ = [ '_emails_to_delete_value', ] _has_required_fields = True def __init__(self, emails_to_delete=None): self._emails_to_delete_value = bb.NOT_SET if emails_to_delete is not None: self.emails_to_delete = emails_to_delete # Instance attribute type: list of [UserSecondaryEmailsArg] (validator is set below) emails_to_delete = bb.Attribute("emails_to_delete") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteSecondaryEmailsArg, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteSecondaryEmailsArg_validator = bv.Struct(DeleteSecondaryEmailsArg) class DeleteSecondaryEmailsResult(bb.Struct): __slots__ = [ '_results_value', ] _has_required_fields = True def __init__(self, results=None): self._results_value = bb.NOT_SET if results is not None: self.results = results # Instance attribute type: list of [UserDeleteResult] (validator is set below) results = bb.Attribute("results") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteSecondaryEmailsResult, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteSecondaryEmailsResult_validator = bv.Struct(DeleteSecondaryEmailsResult) class DesktopClientSession(DeviceSession): """ Information about linked Dropbox desktop client sessions. :ivar team.DesktopClientSession.host_name: Name of the hosting desktop. :ivar team.DesktopClientSession.client_type: The Dropbox desktop client type. :ivar team.DesktopClientSession.client_version: The Dropbox client version. :ivar team.DesktopClientSession.platform: Information on the hosting platform. :ivar team.DesktopClientSession.is_delete_on_unlink_supported: Whether it's possible to delete all of the account files upon unlinking. """ __slots__ = [ '_host_name_value', '_client_type_value', '_client_version_value', '_platform_value', '_is_delete_on_unlink_supported_value', ] _has_required_fields = True def __init__(self, session_id=None, host_name=None, client_type=None, client_version=None, platform=None, is_delete_on_unlink_supported=None, ip_address=None, country=None, created=None, updated=None): super(DesktopClientSession, self).__init__(session_id, ip_address, country, created, updated) self._host_name_value = bb.NOT_SET self._client_type_value = bb.NOT_SET self._client_version_value = bb.NOT_SET self._platform_value = bb.NOT_SET self._is_delete_on_unlink_supported_value = bb.NOT_SET if host_name is not None: self.host_name = host_name if client_type is not None: self.client_type = client_type if client_version is not None: self.client_version = client_version if platform is not None: self.platform = platform if is_delete_on_unlink_supported is not None: self.is_delete_on_unlink_supported = is_delete_on_unlink_supported # Instance attribute type: str (validator is set below) host_name = bb.Attribute("host_name") # Instance attribute type: DesktopPlatform (validator is set below) client_type = bb.Attribute("client_type", user_defined=True) # Instance attribute type: str (validator is set below) client_version = bb.Attribute("client_version") # Instance attribute type: str (validator is set below) platform = bb.Attribute("platform") # Instance attribute type: bool (validator is set below) is_delete_on_unlink_supported = bb.Attribute("is_delete_on_unlink_supported") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DesktopClientSession, self)._process_custom_annotations(annotation_type, field_path, processor) DesktopClientSession_validator = bv.Struct(DesktopClientSession) class DesktopPlatform(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.DesktopPlatform.windows: Official Windows Dropbox desktop client. :ivar team.DesktopPlatform.mac: Official Mac Dropbox desktop client. :ivar team.DesktopPlatform.linux: Official Linux Dropbox desktop client. """ _catch_all = 'other' # Attribute is overwritten below the class definition windows = None # Attribute is overwritten below the class definition mac = None # Attribute is overwritten below the class definition linux = None # Attribute is overwritten below the class definition other = None def is_windows(self): """ Check if the union tag is ``windows``. :rtype: bool """ return self._tag == 'windows' def is_mac(self): """ Check if the union tag is ``mac``. :rtype: bool """ return self._tag == 'mac' def is_linux(self): """ Check if the union tag is ``linux``. :rtype: bool """ return self._tag == 'linux' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DesktopPlatform, self)._process_custom_annotations(annotation_type, field_path, processor) DesktopPlatform_validator = bv.Union(DesktopPlatform) class DeviceSessionArg(bb.Struct): """ :ivar team.DeviceSessionArg.session_id: The session id. :ivar team.DeviceSessionArg.team_member_id: The unique id of the member owning the device. """ __slots__ = [ '_session_id_value', '_team_member_id_value', ] _has_required_fields = True def __init__(self, session_id=None, team_member_id=None): self._session_id_value = bb.NOT_SET self._team_member_id_value = bb.NOT_SET if session_id is not None: self.session_id = session_id if team_member_id is not None: self.team_member_id = team_member_id # Instance attribute type: str (validator is set below) session_id = bb.Attribute("session_id") # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceSessionArg, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceSessionArg_validator = bv.Struct(DeviceSessionArg) class DevicesActive(bb.Struct): """ Each of the items is an array of values, one value per day. The value is the number of devices active within a time window, ending with that day. If there is no data for a day, then the value will be None. :ivar team.DevicesActive.windows: Array of number of linked windows (desktop) clients with activity. :ivar team.DevicesActive.macos: Array of number of linked mac (desktop) clients with activity. :ivar team.DevicesActive.linux: Array of number of linked linus (desktop) clients with activity. :ivar team.DevicesActive.ios: Array of number of linked ios devices with activity. :ivar team.DevicesActive.android: Array of number of linked android devices with activity. :ivar team.DevicesActive.other: Array of number of other linked devices (blackberry, windows phone, etc) with activity. :ivar team.DevicesActive.total: Array of total number of linked clients with activity. """ __slots__ = [ '_windows_value', '_macos_value', '_linux_value', '_ios_value', '_android_value', '_other_value', '_total_value', ] _has_required_fields = True def __init__(self, windows=None, macos=None, linux=None, ios=None, android=None, other=None, total=None): self._windows_value = bb.NOT_SET self._macos_value = bb.NOT_SET self._linux_value = bb.NOT_SET self._ios_value = bb.NOT_SET self._android_value = bb.NOT_SET self._other_value = bb.NOT_SET self._total_value = bb.NOT_SET if windows is not None: self.windows = windows if macos is not None: self.macos = macos if linux is not None: self.linux = linux if ios is not None: self.ios = ios if android is not None: self.android = android if other is not None: self.other = other if total is not None: self.total = total # Instance attribute type: list of [Optional[int]] (validator is set below) windows = bb.Attribute("windows") # Instance attribute type: list of [Optional[int]] (validator is set below) macos = bb.Attribute("macos") # Instance attribute type: list of [Optional[int]] (validator is set below) linux = bb.Attribute("linux") # Instance attribute type: list of [Optional[int]] (validator is set below) ios = bb.Attribute("ios") # Instance attribute type: list of [Optional[int]] (validator is set below) android = bb.Attribute("android") # Instance attribute type: list of [Optional[int]] (validator is set below) other = bb.Attribute("other") # Instance attribute type: list of [Optional[int]] (validator is set below) total = bb.Attribute("total") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DevicesActive, self)._process_custom_annotations(annotation_type, field_path, processor) DevicesActive_validator = bv.Struct(DevicesActive) class ExcludedUsersListArg(bb.Struct): """ Excluded users list argument. :ivar team.ExcludedUsersListArg.limit: Number of results to return per call. """ __slots__ = [ '_limit_value', ] _has_required_fields = False def __init__(self, limit=None): self._limit_value = bb.NOT_SET if limit is not None: self.limit = limit # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExcludedUsersListArg, self)._process_custom_annotations(annotation_type, field_path, processor) ExcludedUsersListArg_validator = bv.Struct(ExcludedUsersListArg) class ExcludedUsersListContinueArg(bb.Struct): """ Excluded users list continue argument. :ivar team.ExcludedUsersListContinueArg.cursor: Indicates from what point to get the next set of users. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExcludedUsersListContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) ExcludedUsersListContinueArg_validator = bv.Struct(ExcludedUsersListContinueArg) class ExcludedUsersListContinueError(bb.Union): """ Excluded users list continue error. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.ExcludedUsersListContinueError.invalid_cursor: The cursor is invalid. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_cursor = None # Attribute is overwritten below the class definition other = None def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExcludedUsersListContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) ExcludedUsersListContinueError_validator = bv.Union(ExcludedUsersListContinueError) class ExcludedUsersListError(bb.Union): """ Excluded users list error. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.ExcludedUsersListError.list_error: An error occurred. """ _catch_all = 'other' # Attribute is overwritten below the class definition list_error = None # Attribute is overwritten below the class definition other = None def is_list_error(self): """ Check if the union tag is ``list_error``. :rtype: bool """ return self._tag == 'list_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExcludedUsersListError, self)._process_custom_annotations(annotation_type, field_path, processor) ExcludedUsersListError_validator = bv.Union(ExcludedUsersListError) class ExcludedUsersListResult(bb.Struct): """ Excluded users list result. :ivar team.ExcludedUsersListResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.team_member_space_limits_excluded_users_list_continue` to obtain additional excluded users. :ivar team.ExcludedUsersListResult.has_more: Is true if there are additional excluded users that have not been returned yet. An additional call to :meth:`dropbox.dropbox_client.Dropbox.team_member_space_limits_excluded_users_list_continue` can retrieve them. """ __slots__ = [ '_users_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, users=None, has_more=None, cursor=None): self._users_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if users is not None: self.users = users if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [MemberProfile] (validator is set below) users = bb.Attribute("users") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExcludedUsersListResult, self)._process_custom_annotations(annotation_type, field_path, processor) ExcludedUsersListResult_validator = bv.Struct(ExcludedUsersListResult) class ExcludedUsersUpdateArg(bb.Struct): """ Argument of excluded users update operation. Should include a list of users to add/remove (according to endpoint), Maximum size of the list is 1000 users. :ivar team.ExcludedUsersUpdateArg.users: List of users to be added/removed. """ __slots__ = [ '_users_value', ] _has_required_fields = False def __init__(self, users=None): self._users_value = bb.NOT_SET if users is not None: self.users = users # Instance attribute type: list of [UserSelectorArg] (validator is set below) users = bb.Attribute("users", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExcludedUsersUpdateArg, self)._process_custom_annotations(annotation_type, field_path, processor) ExcludedUsersUpdateArg_validator = bv.Struct(ExcludedUsersUpdateArg) class ExcludedUsersUpdateError(bb.Union): """ Excluded users update error. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.ExcludedUsersUpdateError.users_not_in_team: At least one of the users is not part of your team. :ivar team.ExcludedUsersUpdateError.too_many_users: A maximum of 1000 users for each of addition/removal can be supplied. """ _catch_all = 'other' # Attribute is overwritten below the class definition users_not_in_team = None # Attribute is overwritten below the class definition too_many_users = None # Attribute is overwritten below the class definition other = None def is_users_not_in_team(self): """ Check if the union tag is ``users_not_in_team``. :rtype: bool """ return self._tag == 'users_not_in_team' def is_too_many_users(self): """ Check if the union tag is ``too_many_users``. :rtype: bool """ return self._tag == 'too_many_users' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExcludedUsersUpdateError, self)._process_custom_annotations(annotation_type, field_path, processor) ExcludedUsersUpdateError_validator = bv.Union(ExcludedUsersUpdateError) class ExcludedUsersUpdateResult(bb.Struct): """ Excluded users update result. :ivar team.ExcludedUsersUpdateResult.status: Update status. """ __slots__ = [ '_status_value', ] _has_required_fields = True def __init__(self, status=None): self._status_value = bb.NOT_SET if status is not None: self.status = status # Instance attribute type: ExcludedUsersUpdateStatus (validator is set below) status = bb.Attribute("status", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExcludedUsersUpdateResult, self)._process_custom_annotations(annotation_type, field_path, processor) ExcludedUsersUpdateResult_validator = bv.Struct(ExcludedUsersUpdateResult) class ExcludedUsersUpdateStatus(bb.Union): """ Excluded users update operation status. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.ExcludedUsersUpdateStatus.success: Update successful. """ _catch_all = 'other' # Attribute is overwritten below the class definition success = None # Attribute is overwritten below the class definition other = None def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExcludedUsersUpdateStatus, self)._process_custom_annotations(annotation_type, field_path, processor) ExcludedUsersUpdateStatus_validator = bv.Union(ExcludedUsersUpdateStatus) class Feature(bb.Union): """ A set of features that a Dropbox Business account may support. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.Feature.upload_api_rate_limit: The number of upload API calls allowed per month. :ivar team.Feature.has_team_shared_dropbox: Does this team have a shared team root. :ivar team.Feature.has_team_file_events: Does this team have file events. :ivar team.Feature.has_team_selective_sync: Does this team have team selective sync enabled. """ _catch_all = 'other' # Attribute is overwritten below the class definition upload_api_rate_limit = None # Attribute is overwritten below the class definition has_team_shared_dropbox = None # Attribute is overwritten below the class definition has_team_file_events = None # Attribute is overwritten below the class definition has_team_selective_sync = None # Attribute is overwritten below the class definition other = None def is_upload_api_rate_limit(self): """ Check if the union tag is ``upload_api_rate_limit``. :rtype: bool """ return self._tag == 'upload_api_rate_limit' def is_has_team_shared_dropbox(self): """ Check if the union tag is ``has_team_shared_dropbox``. :rtype: bool """ return self._tag == 'has_team_shared_dropbox' def is_has_team_file_events(self): """ Check if the union tag is ``has_team_file_events``. :rtype: bool """ return self._tag == 'has_team_file_events' def is_has_team_selective_sync(self): """ Check if the union tag is ``has_team_selective_sync``. :rtype: bool """ return self._tag == 'has_team_selective_sync' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(Feature, self)._process_custom_annotations(annotation_type, field_path, processor) Feature_validator = bv.Union(Feature) class FeatureValue(bb.Union): """ The values correspond to entries in :class:`Feature`. You may get different value according to your Dropbox Business plan. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def upload_api_rate_limit(cls, val): """ Create an instance of this class set to the ``upload_api_rate_limit`` tag with value ``val``. :param UploadApiRateLimitValue val: :rtype: FeatureValue """ return cls('upload_api_rate_limit', val) @classmethod def has_team_shared_dropbox(cls, val): """ Create an instance of this class set to the ``has_team_shared_dropbox`` tag with value ``val``. :param HasTeamSharedDropboxValue val: :rtype: FeatureValue """ return cls('has_team_shared_dropbox', val) @classmethod def has_team_file_events(cls, val): """ Create an instance of this class set to the ``has_team_file_events`` tag with value ``val``. :param HasTeamFileEventsValue val: :rtype: FeatureValue """ return cls('has_team_file_events', val) @classmethod def has_team_selective_sync(cls, val): """ Create an instance of this class set to the ``has_team_selective_sync`` tag with value ``val``. :param HasTeamSelectiveSyncValue val: :rtype: FeatureValue """ return cls('has_team_selective_sync', val) def is_upload_api_rate_limit(self): """ Check if the union tag is ``upload_api_rate_limit``. :rtype: bool """ return self._tag == 'upload_api_rate_limit' def is_has_team_shared_dropbox(self): """ Check if the union tag is ``has_team_shared_dropbox``. :rtype: bool """ return self._tag == 'has_team_shared_dropbox' def is_has_team_file_events(self): """ Check if the union tag is ``has_team_file_events``. :rtype: bool """ return self._tag == 'has_team_file_events' def is_has_team_selective_sync(self): """ Check if the union tag is ``has_team_selective_sync``. :rtype: bool """ return self._tag == 'has_team_selective_sync' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_upload_api_rate_limit(self): """ Only call this if :meth:`is_upload_api_rate_limit` is true. :rtype: UploadApiRateLimitValue """ if not self.is_upload_api_rate_limit(): raise AttributeError("tag 'upload_api_rate_limit' not set") return self._value def get_has_team_shared_dropbox(self): """ Only call this if :meth:`is_has_team_shared_dropbox` is true. :rtype: HasTeamSharedDropboxValue """ if not self.is_has_team_shared_dropbox(): raise AttributeError("tag 'has_team_shared_dropbox' not set") return self._value def get_has_team_file_events(self): """ Only call this if :meth:`is_has_team_file_events` is true. :rtype: HasTeamFileEventsValue """ if not self.is_has_team_file_events(): raise AttributeError("tag 'has_team_file_events' not set") return self._value def get_has_team_selective_sync(self): """ Only call this if :meth:`is_has_team_selective_sync` is true. :rtype: HasTeamSelectiveSyncValue """ if not self.is_has_team_selective_sync(): raise AttributeError("tag 'has_team_selective_sync' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(FeatureValue, self)._process_custom_annotations(annotation_type, field_path, processor) FeatureValue_validator = bv.Union(FeatureValue) class FeaturesGetValuesBatchArg(bb.Struct): """ :ivar team.FeaturesGetValuesBatchArg.features: A list of features in :class:`Feature`. If the list is empty, this route will return :class:`FeaturesGetValuesBatchError`. """ __slots__ = [ '_features_value', ] _has_required_fields = True def __init__(self, features=None): self._features_value = bb.NOT_SET if features is not None: self.features = features # Instance attribute type: list of [Feature] (validator is set below) features = bb.Attribute("features") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FeaturesGetValuesBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) FeaturesGetValuesBatchArg_validator = bv.Struct(FeaturesGetValuesBatchArg) class FeaturesGetValuesBatchError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.FeaturesGetValuesBatchError.empty_features_list: At least one :class:`Feature` must be included in the :class:`FeaturesGetValuesBatchArg`.features list. """ _catch_all = 'other' # Attribute is overwritten below the class definition empty_features_list = None # Attribute is overwritten below the class definition other = None def is_empty_features_list(self): """ Check if the union tag is ``empty_features_list``. :rtype: bool """ return self._tag == 'empty_features_list' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FeaturesGetValuesBatchError, self)._process_custom_annotations(annotation_type, field_path, processor) FeaturesGetValuesBatchError_validator = bv.Union(FeaturesGetValuesBatchError) class FeaturesGetValuesBatchResult(bb.Struct): __slots__ = [ '_values_value', ] _has_required_fields = True def __init__(self, values=None): self._values_value = bb.NOT_SET if values is not None: self.values = values # Instance attribute type: list of [FeatureValue] (validator is set below) values = bb.Attribute("values") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FeaturesGetValuesBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) FeaturesGetValuesBatchResult_validator = bv.Struct(FeaturesGetValuesBatchResult) class GetActivityReport(BaseDfbReport): """ Activity Report Result. Each of the items in the storage report is an array of values, one value per day. If there is no data for a day, then the value will be None. :ivar team.GetActivityReport.adds: Array of total number of adds by team members. :ivar team.GetActivityReport.edits: Array of number of edits by team members. If the same user edits the same file multiple times this is counted as a single edit. :ivar team.GetActivityReport.deletes: Array of total number of deletes by team members. :ivar team.GetActivityReport.active_users_28_day: Array of the number of users who have been active in the last 28 days. :ivar team.GetActivityReport.active_users_7_day: Array of the number of users who have been active in the last week. :ivar team.GetActivityReport.active_users_1_day: Array of the number of users who have been active in the last day. :ivar team.GetActivityReport.active_shared_folders_28_day: Array of the number of shared folders with some activity in the last 28 days. :ivar team.GetActivityReport.active_shared_folders_7_day: Array of the number of shared folders with some activity in the last week. :ivar team.GetActivityReport.active_shared_folders_1_day: Array of the number of shared folders with some activity in the last day. :ivar team.GetActivityReport.shared_links_created: Array of the number of shared links created. :ivar team.GetActivityReport.shared_links_viewed_by_team: Array of the number of views by team users to shared links created by the team. :ivar team.GetActivityReport.shared_links_viewed_by_outside_user: Array of the number of views by users outside of the team to shared links created by the team. :ivar team.GetActivityReport.shared_links_viewed_by_not_logged_in: Array of the number of views by non-logged-in users to shared links created by the team. :ivar team.GetActivityReport.shared_links_viewed_total: Array of the total number of views to shared links created by the team. """ __slots__ = [ '_adds_value', '_edits_value', '_deletes_value', '_active_users_28_day_value', '_active_users_7_day_value', '_active_users_1_day_value', '_active_shared_folders_28_day_value', '_active_shared_folders_7_day_value', '_active_shared_folders_1_day_value', '_shared_links_created_value', '_shared_links_viewed_by_team_value', '_shared_links_viewed_by_outside_user_value', '_shared_links_viewed_by_not_logged_in_value', '_shared_links_viewed_total_value', ] _has_required_fields = True def __init__(self, start_date=None, adds=None, edits=None, deletes=None, active_users_28_day=None, active_users_7_day=None, active_users_1_day=None, active_shared_folders_28_day=None, active_shared_folders_7_day=None, active_shared_folders_1_day=None, shared_links_created=None, shared_links_viewed_by_team=None, shared_links_viewed_by_outside_user=None, shared_links_viewed_by_not_logged_in=None, shared_links_viewed_total=None): super(GetActivityReport, self).__init__(start_date) self._adds_value = bb.NOT_SET self._edits_value = bb.NOT_SET self._deletes_value = bb.NOT_SET self._active_users_28_day_value = bb.NOT_SET self._active_users_7_day_value = bb.NOT_SET self._active_users_1_day_value = bb.NOT_SET self._active_shared_folders_28_day_value = bb.NOT_SET self._active_shared_folders_7_day_value = bb.NOT_SET self._active_shared_folders_1_day_value = bb.NOT_SET self._shared_links_created_value = bb.NOT_SET self._shared_links_viewed_by_team_value = bb.NOT_SET self._shared_links_viewed_by_outside_user_value = bb.NOT_SET self._shared_links_viewed_by_not_logged_in_value = bb.NOT_SET self._shared_links_viewed_total_value = bb.NOT_SET if adds is not None: self.adds = adds if edits is not None: self.edits = edits if deletes is not None: self.deletes = deletes if active_users_28_day is not None: self.active_users_28_day = active_users_28_day if active_users_7_day is not None: self.active_users_7_day = active_users_7_day if active_users_1_day is not None: self.active_users_1_day = active_users_1_day if active_shared_folders_28_day is not None: self.active_shared_folders_28_day = active_shared_folders_28_day if active_shared_folders_7_day is not None: self.active_shared_folders_7_day = active_shared_folders_7_day if active_shared_folders_1_day is not None: self.active_shared_folders_1_day = active_shared_folders_1_day if shared_links_created is not None: self.shared_links_created = shared_links_created if shared_links_viewed_by_team is not None: self.shared_links_viewed_by_team = shared_links_viewed_by_team if shared_links_viewed_by_outside_user is not None: self.shared_links_viewed_by_outside_user = shared_links_viewed_by_outside_user if shared_links_viewed_by_not_logged_in is not None: self.shared_links_viewed_by_not_logged_in = shared_links_viewed_by_not_logged_in if shared_links_viewed_total is not None: self.shared_links_viewed_total = shared_links_viewed_total # Instance attribute type: list of [Optional[int]] (validator is set below) adds = bb.Attribute("adds") # Instance attribute type: list of [Optional[int]] (validator is set below) edits = bb.Attribute("edits") # Instance attribute type: list of [Optional[int]] (validator is set below) deletes = bb.Attribute("deletes") # Instance attribute type: list of [Optional[int]] (validator is set below) active_users_28_day = bb.Attribute("active_users_28_day") # Instance attribute type: list of [Optional[int]] (validator is set below) active_users_7_day = bb.Attribute("active_users_7_day") # Instance attribute type: list of [Optional[int]] (validator is set below) active_users_1_day = bb.Attribute("active_users_1_day") # Instance attribute type: list of [Optional[int]] (validator is set below) active_shared_folders_28_day = bb.Attribute("active_shared_folders_28_day") # Instance attribute type: list of [Optional[int]] (validator is set below) active_shared_folders_7_day = bb.Attribute("active_shared_folders_7_day") # Instance attribute type: list of [Optional[int]] (validator is set below) active_shared_folders_1_day = bb.Attribute("active_shared_folders_1_day") # Instance attribute type: list of [Optional[int]] (validator is set below) shared_links_created = bb.Attribute("shared_links_created") # Instance attribute type: list of [Optional[int]] (validator is set below) shared_links_viewed_by_team = bb.Attribute("shared_links_viewed_by_team") # Instance attribute type: list of [Optional[int]] (validator is set below) shared_links_viewed_by_outside_user = bb.Attribute("shared_links_viewed_by_outside_user") # Instance attribute type: list of [Optional[int]] (validator is set below) shared_links_viewed_by_not_logged_in = bb.Attribute("shared_links_viewed_by_not_logged_in") # Instance attribute type: list of [Optional[int]] (validator is set below) shared_links_viewed_total = bb.Attribute("shared_links_viewed_total") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetActivityReport, self)._process_custom_annotations(annotation_type, field_path, processor) GetActivityReport_validator = bv.Struct(GetActivityReport) class GetDevicesReport(BaseDfbReport): """ Devices Report Result. Contains subsections for different time ranges of activity. Each of the items in each subsection of the storage report is an array of values, one value per day. If there is no data for a day, then the value will be None. :ivar team.GetDevicesReport.active_1_day: Report of the number of devices active in the last day. :ivar team.GetDevicesReport.active_7_day: Report of the number of devices active in the last 7 days. :ivar team.GetDevicesReport.active_28_day: Report of the number of devices active in the last 28 days. """ __slots__ = [ '_active_1_day_value', '_active_7_day_value', '_active_28_day_value', ] _has_required_fields = True def __init__(self, start_date=None, active_1_day=None, active_7_day=None, active_28_day=None): super(GetDevicesReport, self).__init__(start_date) self._active_1_day_value = bb.NOT_SET self._active_7_day_value = bb.NOT_SET self._active_28_day_value = bb.NOT_SET if active_1_day is not None: self.active_1_day = active_1_day if active_7_day is not None: self.active_7_day = active_7_day if active_28_day is not None: self.active_28_day = active_28_day # Instance attribute type: DevicesActive (validator is set below) active_1_day = bb.Attribute("active_1_day", user_defined=True) # Instance attribute type: DevicesActive (validator is set below) active_7_day = bb.Attribute("active_7_day", user_defined=True) # Instance attribute type: DevicesActive (validator is set below) active_28_day = bb.Attribute("active_28_day", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetDevicesReport, self)._process_custom_annotations(annotation_type, field_path, processor) GetDevicesReport_validator = bv.Struct(GetDevicesReport) class GetMembershipReport(BaseDfbReport): """ Membership Report Result. Each of the items in the storage report is an array of values, one value per day. If there is no data for a day, then the value will be None. :ivar team.GetMembershipReport.team_size: Team size, for each day. :ivar team.GetMembershipReport.pending_invites: The number of pending invites to the team, for each day. :ivar team.GetMembershipReport.members_joined: The number of members that joined the team, for each day. :ivar team.GetMembershipReport.suspended_members: The number of suspended team members, for each day. :ivar team.GetMembershipReport.licenses: The total number of licenses the team has, for each day. """ __slots__ = [ '_team_size_value', '_pending_invites_value', '_members_joined_value', '_suspended_members_value', '_licenses_value', ] _has_required_fields = True def __init__(self, start_date=None, team_size=None, pending_invites=None, members_joined=None, suspended_members=None, licenses=None): super(GetMembershipReport, self).__init__(start_date) self._team_size_value = bb.NOT_SET self._pending_invites_value = bb.NOT_SET self._members_joined_value = bb.NOT_SET self._suspended_members_value = bb.NOT_SET self._licenses_value = bb.NOT_SET if team_size is not None: self.team_size = team_size if pending_invites is not None: self.pending_invites = pending_invites if members_joined is not None: self.members_joined = members_joined if suspended_members is not None: self.suspended_members = suspended_members if licenses is not None: self.licenses = licenses # Instance attribute type: list of [Optional[int]] (validator is set below) team_size = bb.Attribute("team_size") # Instance attribute type: list of [Optional[int]] (validator is set below) pending_invites = bb.Attribute("pending_invites") # Instance attribute type: list of [Optional[int]] (validator is set below) members_joined = bb.Attribute("members_joined") # Instance attribute type: list of [Optional[int]] (validator is set below) suspended_members = bb.Attribute("suspended_members") # Instance attribute type: list of [Optional[int]] (validator is set below) licenses = bb.Attribute("licenses") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetMembershipReport, self)._process_custom_annotations(annotation_type, field_path, processor) GetMembershipReport_validator = bv.Struct(GetMembershipReport) class GetStorageReport(BaseDfbReport): """ Storage Report Result. Each of the items in the storage report is an array of values, one value per day. If there is no data for a day, then the value will be None. :ivar team.GetStorageReport.total_usage: Sum of the shared, unshared, and datastore usages, for each day. :ivar team.GetStorageReport.shared_usage: Array of the combined size (bytes) of team members' shared folders, for each day. :ivar team.GetStorageReport.unshared_usage: Array of the combined size (bytes) of team members' root namespaces, for each day. :ivar team.GetStorageReport.shared_folders: Array of the number of shared folders owned by team members, for each day. :ivar team.GetStorageReport.member_storage_map: Array of storage summaries of team members' account sizes. Each storage summary is an array of key, value pairs, where each pair describes a storage bucket. The key indicates the upper bound of the bucket and the value is the number of users in that bucket. There is one such summary per day. If there is no data for a day, the storage summary will be empty. """ __slots__ = [ '_total_usage_value', '_shared_usage_value', '_unshared_usage_value', '_shared_folders_value', '_member_storage_map_value', ] _has_required_fields = True def __init__(self, start_date=None, total_usage=None, shared_usage=None, unshared_usage=None, shared_folders=None, member_storage_map=None): super(GetStorageReport, self).__init__(start_date) self._total_usage_value = bb.NOT_SET self._shared_usage_value = bb.NOT_SET self._unshared_usage_value = bb.NOT_SET self._shared_folders_value = bb.NOT_SET self._member_storage_map_value = bb.NOT_SET if total_usage is not None: self.total_usage = total_usage if shared_usage is not None: self.shared_usage = shared_usage if unshared_usage is not None: self.unshared_usage = unshared_usage if shared_folders is not None: self.shared_folders = shared_folders if member_storage_map is not None: self.member_storage_map = member_storage_map # Instance attribute type: list of [Optional[int]] (validator is set below) total_usage = bb.Attribute("total_usage") # Instance attribute type: list of [Optional[int]] (validator is set below) shared_usage = bb.Attribute("shared_usage") # Instance attribute type: list of [Optional[int]] (validator is set below) unshared_usage = bb.Attribute("unshared_usage") # Instance attribute type: list of [Optional[int]] (validator is set below) shared_folders = bb.Attribute("shared_folders") # Instance attribute type: list of [list of [StorageBucket]] (validator is set below) member_storage_map = bb.Attribute("member_storage_map") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetStorageReport, self)._process_custom_annotations(annotation_type, field_path, processor) GetStorageReport_validator = bv.Struct(GetStorageReport) class GroupAccessType(bb.Union): """ Role of a user in group. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupAccessType.member: User is a member of the group, but has no special permissions. :ivar team.GroupAccessType.owner: User can rename the group, and add/remove members. """ _catch_all = None # Attribute is overwritten below the class definition member = None # Attribute is overwritten below the class definition owner = None def is_member(self): """ Check if the union tag is ``member``. :rtype: bool """ return self._tag == 'member' def is_owner(self): """ Check if the union tag is ``owner``. :rtype: bool """ return self._tag == 'owner' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupAccessType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupAccessType_validator = bv.Union(GroupAccessType) class GroupCreateArg(bb.Struct): """ :ivar team.GroupCreateArg.group_name: Group name. :ivar team.GroupCreateArg.add_creator_as_owner: Automatically add the creator of the group. :ivar team.GroupCreateArg.group_external_id: The creator of a team can associate an arbitrary external ID to the group. :ivar team.GroupCreateArg.group_management_type: Whether the team can be managed by selected users, or only by team admins. """ __slots__ = [ '_group_name_value', '_add_creator_as_owner_value', '_group_external_id_value', '_group_management_type_value', ] _has_required_fields = True def __init__(self, group_name=None, add_creator_as_owner=None, group_external_id=None, group_management_type=None): self._group_name_value = bb.NOT_SET self._add_creator_as_owner_value = bb.NOT_SET self._group_external_id_value = bb.NOT_SET self._group_management_type_value = bb.NOT_SET if group_name is not None: self.group_name = group_name if add_creator_as_owner is not None: self.add_creator_as_owner = add_creator_as_owner if group_external_id is not None: self.group_external_id = group_external_id if group_management_type is not None: self.group_management_type = group_management_type # Instance attribute type: str (validator is set below) group_name = bb.Attribute("group_name") # Instance attribute type: bool (validator is set below) add_creator_as_owner = bb.Attribute("add_creator_as_owner") # Instance attribute type: str (validator is set below) group_external_id = bb.Attribute("group_external_id", nullable=True) # Instance attribute type: team_common.GroupManagementType (validator is set below) group_management_type = bb.Attribute("group_management_type", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupCreateArg, self)._process_custom_annotations(annotation_type, field_path, processor) GroupCreateArg_validator = bv.Struct(GroupCreateArg) class GroupCreateError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupCreateError.group_name_already_used: The requested group name is already being used by another group. :ivar team.GroupCreateError.group_name_invalid: Group name is empty or has invalid characters. :ivar team.GroupCreateError.external_id_already_in_use: The requested external ID is already being used by another group. :ivar team.GroupCreateError.system_managed_group_disallowed: System-managed group cannot be manually created. """ _catch_all = 'other' # Attribute is overwritten below the class definition group_name_already_used = None # Attribute is overwritten below the class definition group_name_invalid = None # Attribute is overwritten below the class definition external_id_already_in_use = None # Attribute is overwritten below the class definition system_managed_group_disallowed = None # Attribute is overwritten below the class definition other = None def is_group_name_already_used(self): """ Check if the union tag is ``group_name_already_used``. :rtype: bool """ return self._tag == 'group_name_already_used' def is_group_name_invalid(self): """ Check if the union tag is ``group_name_invalid``. :rtype: bool """ return self._tag == 'group_name_invalid' def is_external_id_already_in_use(self): """ Check if the union tag is ``external_id_already_in_use``. :rtype: bool """ return self._tag == 'external_id_already_in_use' def is_system_managed_group_disallowed(self): """ Check if the union tag is ``system_managed_group_disallowed``. :rtype: bool """ return self._tag == 'system_managed_group_disallowed' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupCreateError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupCreateError_validator = bv.Union(GroupCreateError) class GroupSelectorError(bb.Union): """ Error that can be raised when :class:`GroupSelector` is used. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupSelectorError.group_not_found: No matching group found. No groups match the specified group ID. """ _catch_all = 'other' # Attribute is overwritten below the class definition group_not_found = None # Attribute is overwritten below the class definition other = None def is_group_not_found(self): """ Check if the union tag is ``group_not_found``. :rtype: bool """ return self._tag == 'group_not_found' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupSelectorError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupSelectorError_validator = bv.Union(GroupSelectorError) class GroupSelectorWithTeamGroupError(GroupSelectorError): """ Error that can be raised when :class:`GroupSelector` is used and team groups are disallowed from being used. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupSelectorWithTeamGroupError.system_managed_group_disallowed: This operation is not supported on system-managed groups. """ # Attribute is overwritten below the class definition system_managed_group_disallowed = None def is_system_managed_group_disallowed(self): """ Check if the union tag is ``system_managed_group_disallowed``. :rtype: bool """ return self._tag == 'system_managed_group_disallowed' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupSelectorWithTeamGroupError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupSelectorWithTeamGroupError_validator = bv.Union(GroupSelectorWithTeamGroupError) class GroupDeleteError(GroupSelectorWithTeamGroupError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupDeleteError.group_already_deleted: This group has already been deleted. """ # Attribute is overwritten below the class definition group_already_deleted = None def is_group_already_deleted(self): """ Check if the union tag is ``group_already_deleted``. :rtype: bool """ return self._tag == 'group_already_deleted' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupDeleteError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupDeleteError_validator = bv.Union(GroupDeleteError) class GroupFullInfo(team_common.GroupSummary): """ Full description of a group. :ivar team.GroupFullInfo.members: List of group members. :ivar team.GroupFullInfo.created: The group creation time as a UTC timestamp in milliseconds since the Unix epoch. """ __slots__ = [ '_members_value', '_created_value', ] _has_required_fields = True def __init__(self, group_name=None, group_id=None, group_management_type=None, created=None, group_external_id=None, member_count=None, members=None): super(GroupFullInfo, self).__init__(group_name, group_id, group_management_type, group_external_id, member_count) self._members_value = bb.NOT_SET self._created_value = bb.NOT_SET if members is not None: self.members = members if created is not None: self.created = created # Instance attribute type: list of [GroupMemberInfo] (validator is set below) members = bb.Attribute("members", nullable=True) # Instance attribute type: int (validator is set below) created = bb.Attribute("created") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupFullInfo, self)._process_custom_annotations(annotation_type, field_path, processor) GroupFullInfo_validator = bv.Struct(GroupFullInfo) class GroupMemberInfo(bb.Struct): """ Profile of group member, and role in group. :ivar team.GroupMemberInfo.profile: Profile of group member. :ivar team.GroupMemberInfo.access_type: The role that the user has in the group. """ __slots__ = [ '_profile_value', '_access_type_value', ] _has_required_fields = True def __init__(self, profile=None, access_type=None): self._profile_value = bb.NOT_SET self._access_type_value = bb.NOT_SET if profile is not None: self.profile = profile if access_type is not None: self.access_type = access_type # Instance attribute type: MemberProfile (validator is set below) profile = bb.Attribute("profile", user_defined=True) # Instance attribute type: GroupAccessType (validator is set below) access_type = bb.Attribute("access_type", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMemberInfo, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMemberInfo_validator = bv.Struct(GroupMemberInfo) class GroupMemberSelector(bb.Struct): """ Argument for selecting a group and a single user. :ivar team.GroupMemberSelector.group: Specify a group. :ivar team.GroupMemberSelector.user: Identity of a user that is a member of ``group``. """ __slots__ = [ '_group_value', '_user_value', ] _has_required_fields = True def __init__(self, group=None, user=None): self._group_value = bb.NOT_SET self._user_value = bb.NOT_SET if group is not None: self.group = group if user is not None: self.user = user # Instance attribute type: GroupSelector (validator is set below) group = bb.Attribute("group", user_defined=True) # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMemberSelector, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMemberSelector_validator = bv.Struct(GroupMemberSelector) class GroupMemberSelectorError(GroupSelectorWithTeamGroupError): """ Error that can be raised when :class:`GroupMemberSelector` is used, and the user is required to be a member of the specified group. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupMemberSelectorError.member_not_in_group: The specified user is not a member of this group. """ # Attribute is overwritten below the class definition member_not_in_group = None def is_member_not_in_group(self): """ Check if the union tag is ``member_not_in_group``. :rtype: bool """ return self._tag == 'member_not_in_group' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMemberSelectorError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMemberSelectorError_validator = bv.Union(GroupMemberSelectorError) class GroupMemberSetAccessTypeError(GroupMemberSelectorError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupMemberSetAccessTypeError.user_cannot_be_manager_of_company_managed_group: A company managed group cannot be managed by a user. """ # Attribute is overwritten below the class definition user_cannot_be_manager_of_company_managed_group = None def is_user_cannot_be_manager_of_company_managed_group(self): """ Check if the union tag is ``user_cannot_be_manager_of_company_managed_group``. :rtype: bool """ return self._tag == 'user_cannot_be_manager_of_company_managed_group' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMemberSetAccessTypeError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMemberSetAccessTypeError_validator = bv.Union(GroupMemberSetAccessTypeError) class IncludeMembersArg(bb.Struct): """ :ivar team.IncludeMembersArg.return_members: Whether to return the list of members in the group. Note that the default value will cause all the group members to be returned in the response. This may take a long time for large groups. """ __slots__ = [ '_return_members_value', ] _has_required_fields = False def __init__(self, return_members=None): self._return_members_value = bb.NOT_SET if return_members is not None: self.return_members = return_members # Instance attribute type: bool (validator is set below) return_members = bb.Attribute("return_members") def _process_custom_annotations(self, annotation_type, field_path, processor): super(IncludeMembersArg, self)._process_custom_annotations(annotation_type, field_path, processor) IncludeMembersArg_validator = bv.Struct(IncludeMembersArg) class GroupMembersAddArg(IncludeMembersArg): """ :ivar team.GroupMembersAddArg.group: Group to which users will be added. :ivar team.GroupMembersAddArg.members: List of users to be added to the group. """ __slots__ = [ '_group_value', '_members_value', ] _has_required_fields = True def __init__(self, group=None, members=None, return_members=None): super(GroupMembersAddArg, self).__init__(return_members) self._group_value = bb.NOT_SET self._members_value = bb.NOT_SET if group is not None: self.group = group if members is not None: self.members = members # Instance attribute type: GroupSelector (validator is set below) group = bb.Attribute("group", user_defined=True) # Instance attribute type: list of [MemberAccess] (validator is set below) members = bb.Attribute("members") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMembersAddArg, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMembersAddArg_validator = bv.Struct(GroupMembersAddArg) class GroupMembersAddError(GroupSelectorWithTeamGroupError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupMembersAddError.duplicate_user: You cannot add duplicate users. One or more of the members you are trying to add is already a member of the group. :ivar team.GroupMembersAddError.group_not_in_team: Group is not in this team. You cannot add members to a group that is outside of your team. :ivar list of [str] team.GroupMembersAddError.members_not_in_team: These members are not part of your team. Currently, you cannot add members to a group if they are not part of your team, though this may change in a subsequent version. To add new members to your Dropbox Business team, use the :route:`members/add` endpoint. :ivar list of [str] team.GroupMembersAddError.users_not_found: These users were not found in Dropbox. :ivar team.GroupMembersAddError.user_must_be_active_to_be_owner: A suspended user cannot be added to a group as ``GroupAccessType.owner``. :ivar list of [str] team.GroupMembersAddError.user_cannot_be_manager_of_company_managed_group: A company-managed group cannot be managed by a user. """ # Attribute is overwritten below the class definition duplicate_user = None # Attribute is overwritten below the class definition group_not_in_team = None # Attribute is overwritten below the class definition user_must_be_active_to_be_owner = None @classmethod def members_not_in_team(cls, val): """ Create an instance of this class set to the ``members_not_in_team`` tag with value ``val``. :param list of [str] val: :rtype: GroupMembersAddError """ return cls('members_not_in_team', val) @classmethod def users_not_found(cls, val): """ Create an instance of this class set to the ``users_not_found`` tag with value ``val``. :param list of [str] val: :rtype: GroupMembersAddError """ return cls('users_not_found', val) @classmethod def user_cannot_be_manager_of_company_managed_group(cls, val): """ Create an instance of this class set to the ``user_cannot_be_manager_of_company_managed_group`` tag with value ``val``. :param list of [str] val: :rtype: GroupMembersAddError """ return cls('user_cannot_be_manager_of_company_managed_group', val) def is_duplicate_user(self): """ Check if the union tag is ``duplicate_user``. :rtype: bool """ return self._tag == 'duplicate_user' def is_group_not_in_team(self): """ Check if the union tag is ``group_not_in_team``. :rtype: bool """ return self._tag == 'group_not_in_team' def is_members_not_in_team(self): """ Check if the union tag is ``members_not_in_team``. :rtype: bool """ return self._tag == 'members_not_in_team' def is_users_not_found(self): """ Check if the union tag is ``users_not_found``. :rtype: bool """ return self._tag == 'users_not_found' def is_user_must_be_active_to_be_owner(self): """ Check if the union tag is ``user_must_be_active_to_be_owner``. :rtype: bool """ return self._tag == 'user_must_be_active_to_be_owner' def is_user_cannot_be_manager_of_company_managed_group(self): """ Check if the union tag is ``user_cannot_be_manager_of_company_managed_group``. :rtype: bool """ return self._tag == 'user_cannot_be_manager_of_company_managed_group' def get_members_not_in_team(self): """ These members are not part of your team. Currently, you cannot add members to a group if they are not part of your team, though this may change in a subsequent version. To add new members to your Dropbox Business team, use the :meth:`dropbox.dropbox_client.Dropbox.team_members_add` endpoint. Only call this if :meth:`is_members_not_in_team` is true. :rtype: list of [str] """ if not self.is_members_not_in_team(): raise AttributeError("tag 'members_not_in_team' not set") return self._value def get_users_not_found(self): """ These users were not found in Dropbox. Only call this if :meth:`is_users_not_found` is true. :rtype: list of [str] """ if not self.is_users_not_found(): raise AttributeError("tag 'users_not_found' not set") return self._value def get_user_cannot_be_manager_of_company_managed_group(self): """ A company-managed group cannot be managed by a user. Only call this if :meth:`is_user_cannot_be_manager_of_company_managed_group` is true. :rtype: list of [str] """ if not self.is_user_cannot_be_manager_of_company_managed_group(): raise AttributeError("tag 'user_cannot_be_manager_of_company_managed_group' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMembersAddError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMembersAddError_validator = bv.Union(GroupMembersAddError) class GroupMembersChangeResult(bb.Struct): """ Result returned by :meth:`dropbox.dropbox_client.Dropbox.team_groups_members_add` and :meth:`dropbox.dropbox_client.Dropbox.team_groups_members_remove`. :ivar team.GroupMembersChangeResult.group_info: The group info after member change operation has been performed. :ivar team.GroupMembersChangeResult.async_job_id: For legacy purposes async_job_id will always return one space ' '. Formerly, it was an ID that was used to obtain the status of granting/revoking group-owned resources. It's no longer necessary because the async processing now happens automatically. """ __slots__ = [ '_group_info_value', '_async_job_id_value', ] _has_required_fields = True def __init__(self, group_info=None, async_job_id=None): self._group_info_value = bb.NOT_SET self._async_job_id_value = bb.NOT_SET if group_info is not None: self.group_info = group_info if async_job_id is not None: self.async_job_id = async_job_id # Instance attribute type: GroupFullInfo (validator is set below) group_info = bb.Attribute("group_info", user_defined=True) # Instance attribute type: str (validator is set below) async_job_id = bb.Attribute("async_job_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMembersChangeResult, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMembersChangeResult_validator = bv.Struct(GroupMembersChangeResult) class GroupMembersRemoveArg(IncludeMembersArg): """ :ivar team.GroupMembersRemoveArg.group: Group from which users will be removed. :ivar team.GroupMembersRemoveArg.users: List of users to be removed from the group. """ __slots__ = [ '_group_value', '_users_value', ] _has_required_fields = True def __init__(self, group=None, users=None, return_members=None): super(GroupMembersRemoveArg, self).__init__(return_members) self._group_value = bb.NOT_SET self._users_value = bb.NOT_SET if group is not None: self.group = group if users is not None: self.users = users # Instance attribute type: GroupSelector (validator is set below) group = bb.Attribute("group", user_defined=True) # Instance attribute type: list of [UserSelectorArg] (validator is set below) users = bb.Attribute("users") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMembersRemoveArg, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMembersRemoveArg_validator = bv.Struct(GroupMembersRemoveArg) class GroupMembersSelectorError(GroupSelectorWithTeamGroupError): """ Error that can be raised when :class:`GroupMembersSelector` is used, and the users are required to be members of the specified group. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupMembersSelectorError.member_not_in_group: At least one of the specified users is not a member of the group. """ # Attribute is overwritten below the class definition member_not_in_group = None def is_member_not_in_group(self): """ Check if the union tag is ``member_not_in_group``. :rtype: bool """ return self._tag == 'member_not_in_group' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMembersSelectorError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMembersSelectorError_validator = bv.Union(GroupMembersSelectorError) class GroupMembersRemoveError(GroupMembersSelectorError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupMembersRemoveError.group_not_in_team: Group is not in this team. You cannot remove members from a group that is outside of your team. :ivar list of [str] team.GroupMembersRemoveError.members_not_in_team: These members are not part of your team. :ivar list of [str] team.GroupMembersRemoveError.users_not_found: These users were not found in Dropbox. """ # Attribute is overwritten below the class definition group_not_in_team = None @classmethod def members_not_in_team(cls, val): """ Create an instance of this class set to the ``members_not_in_team`` tag with value ``val``. :param list of [str] val: :rtype: GroupMembersRemoveError """ return cls('members_not_in_team', val) @classmethod def users_not_found(cls, val): """ Create an instance of this class set to the ``users_not_found`` tag with value ``val``. :param list of [str] val: :rtype: GroupMembersRemoveError """ return cls('users_not_found', val) def is_group_not_in_team(self): """ Check if the union tag is ``group_not_in_team``. :rtype: bool """ return self._tag == 'group_not_in_team' def is_members_not_in_team(self): """ Check if the union tag is ``members_not_in_team``. :rtype: bool """ return self._tag == 'members_not_in_team' def is_users_not_found(self): """ Check if the union tag is ``users_not_found``. :rtype: bool """ return self._tag == 'users_not_found' def get_members_not_in_team(self): """ These members are not part of your team. Only call this if :meth:`is_members_not_in_team` is true. :rtype: list of [str] """ if not self.is_members_not_in_team(): raise AttributeError("tag 'members_not_in_team' not set") return self._value def get_users_not_found(self): """ These users were not found in Dropbox. Only call this if :meth:`is_users_not_found` is true. :rtype: list of [str] """ if not self.is_users_not_found(): raise AttributeError("tag 'users_not_found' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMembersRemoveError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMembersRemoveError_validator = bv.Union(GroupMembersRemoveError) class GroupMembersSelector(bb.Struct): """ Argument for selecting a group and a list of users. :ivar team.GroupMembersSelector.group: Specify a group. :ivar team.GroupMembersSelector.users: A list of users that are members of ``group``. """ __slots__ = [ '_group_value', '_users_value', ] _has_required_fields = True def __init__(self, group=None, users=None): self._group_value = bb.NOT_SET self._users_value = bb.NOT_SET if group is not None: self.group = group if users is not None: self.users = users # Instance attribute type: GroupSelector (validator is set below) group = bb.Attribute("group", user_defined=True) # Instance attribute type: UsersSelectorArg (validator is set below) users = bb.Attribute("users", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMembersSelector, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMembersSelector_validator = bv.Struct(GroupMembersSelector) class GroupMembersSetAccessTypeArg(GroupMemberSelector): """ :ivar team.GroupMembersSetAccessTypeArg.access_type: New group access type the user will have. :ivar team.GroupMembersSetAccessTypeArg.return_members: Whether to return the list of members in the group. Note that the default value will cause all the group members to be returned in the response. This may take a long time for large groups. """ __slots__ = [ '_access_type_value', '_return_members_value', ] _has_required_fields = True def __init__(self, group=None, user=None, access_type=None, return_members=None): super(GroupMembersSetAccessTypeArg, self).__init__(group, user) self._access_type_value = bb.NOT_SET self._return_members_value = bb.NOT_SET if access_type is not None: self.access_type = access_type if return_members is not None: self.return_members = return_members # Instance attribute type: GroupAccessType (validator is set below) access_type = bb.Attribute("access_type", user_defined=True) # Instance attribute type: bool (validator is set below) return_members = bb.Attribute("return_members") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMembersSetAccessTypeArg, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMembersSetAccessTypeArg_validator = bv.Struct(GroupMembersSetAccessTypeArg) class GroupSelector(bb.Union): """ Argument for selecting a single group, either by group_id or by external group ID. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str team.GroupSelector.group_id: Group ID. :ivar str team.GroupSelector.group_external_id: External ID of the group. """ _catch_all = None @classmethod def group_id(cls, val): """ Create an instance of this class set to the ``group_id`` tag with value ``val``. :param str val: :rtype: GroupSelector """ return cls('group_id', val) @classmethod def group_external_id(cls, val): """ Create an instance of this class set to the ``group_external_id`` tag with value ``val``. :param str val: :rtype: GroupSelector """ return cls('group_external_id', val) def is_group_id(self): """ Check if the union tag is ``group_id``. :rtype: bool """ return self._tag == 'group_id' def is_group_external_id(self): """ Check if the union tag is ``group_external_id``. :rtype: bool """ return self._tag == 'group_external_id' def get_group_id(self): """ Group ID. Only call this if :meth:`is_group_id` is true. :rtype: str """ if not self.is_group_id(): raise AttributeError("tag 'group_id' not set") return self._value def get_group_external_id(self): """ External ID of the group. Only call this if :meth:`is_group_external_id` is true. :rtype: str """ if not self.is_group_external_id(): raise AttributeError("tag 'group_external_id' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupSelector, self)._process_custom_annotations(annotation_type, field_path, processor) GroupSelector_validator = bv.Union(GroupSelector) class GroupUpdateArgs(IncludeMembersArg): """ :ivar team.GroupUpdateArgs.group: Specify a group. :ivar team.GroupUpdateArgs.new_group_name: Optional argument. Set group name to this if provided. :ivar team.GroupUpdateArgs.new_group_external_id: Optional argument. New group external ID. If the argument is None, the group's external_id won't be updated. If the argument is empty string, the group's external id will be cleared. :ivar team.GroupUpdateArgs.new_group_management_type: Set new group management type, if provided. """ __slots__ = [ '_group_value', '_new_group_name_value', '_new_group_external_id_value', '_new_group_management_type_value', ] _has_required_fields = True def __init__(self, group=None, return_members=None, new_group_name=None, new_group_external_id=None, new_group_management_type=None): super(GroupUpdateArgs, self).__init__(return_members) self._group_value = bb.NOT_SET self._new_group_name_value = bb.NOT_SET self._new_group_external_id_value = bb.NOT_SET self._new_group_management_type_value = bb.NOT_SET if group is not None: self.group = group if new_group_name is not None: self.new_group_name = new_group_name if new_group_external_id is not None: self.new_group_external_id = new_group_external_id if new_group_management_type is not None: self.new_group_management_type = new_group_management_type # Instance attribute type: GroupSelector (validator is set below) group = bb.Attribute("group", user_defined=True) # Instance attribute type: str (validator is set below) new_group_name = bb.Attribute("new_group_name", nullable=True) # Instance attribute type: str (validator is set below) new_group_external_id = bb.Attribute("new_group_external_id", nullable=True) # Instance attribute type: team_common.GroupManagementType (validator is set below) new_group_management_type = bb.Attribute("new_group_management_type", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupUpdateArgs, self)._process_custom_annotations(annotation_type, field_path, processor) GroupUpdateArgs_validator = bv.Struct(GroupUpdateArgs) class GroupUpdateError(GroupSelectorWithTeamGroupError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupUpdateError.group_name_already_used: The requested group name is already being used by another group. :ivar team.GroupUpdateError.group_name_invalid: Group name is empty or has invalid characters. :ivar team.GroupUpdateError.external_id_already_in_use: The requested external ID is already being used by another group. """ # Attribute is overwritten below the class definition group_name_already_used = None # Attribute is overwritten below the class definition group_name_invalid = None # Attribute is overwritten below the class definition external_id_already_in_use = None def is_group_name_already_used(self): """ Check if the union tag is ``group_name_already_used``. :rtype: bool """ return self._tag == 'group_name_already_used' def is_group_name_invalid(self): """ Check if the union tag is ``group_name_invalid``. :rtype: bool """ return self._tag == 'group_name_invalid' def is_external_id_already_in_use(self): """ Check if the union tag is ``external_id_already_in_use``. :rtype: bool """ return self._tag == 'external_id_already_in_use' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupUpdateError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupUpdateError_validator = bv.Union(GroupUpdateError) class GroupsGetInfoError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupsGetInfoError.group_not_on_team: The group is not on your team. """ _catch_all = 'other' # Attribute is overwritten below the class definition group_not_on_team = None # Attribute is overwritten below the class definition other = None def is_group_not_on_team(self): """ Check if the union tag is ``group_not_on_team``. :rtype: bool """ return self._tag == 'group_not_on_team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupsGetInfoError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupsGetInfoError_validator = bv.Union(GroupsGetInfoError) class GroupsGetInfoItem(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str team.GroupsGetInfoItem.id_not_found: An ID that was provided as a parameter to :route:`groups/get_info`, and did not match a corresponding group. The ID can be a group ID, or an external ID, depending on how the method was called. :ivar GroupFullInfo GroupsGetInfoItem.group_info: Info about a group. """ _catch_all = None @classmethod def id_not_found(cls, val): """ Create an instance of this class set to the ``id_not_found`` tag with value ``val``. :param str val: :rtype: GroupsGetInfoItem """ return cls('id_not_found', val) @classmethod def group_info(cls, val): """ Create an instance of this class set to the ``group_info`` tag with value ``val``. :param GroupFullInfo val: :rtype: GroupsGetInfoItem """ return cls('group_info', val) def is_id_not_found(self): """ Check if the union tag is ``id_not_found``. :rtype: bool """ return self._tag == 'id_not_found' def is_group_info(self): """ Check if the union tag is ``group_info``. :rtype: bool """ return self._tag == 'group_info' def get_id_not_found(self): """ An ID that was provided as a parameter to :meth:`dropbox.dropbox_client.Dropbox.team_groups_get_info`, and did not match a corresponding group. The ID can be a group ID, or an external ID, depending on how the method was called. Only call this if :meth:`is_id_not_found` is true. :rtype: str """ if not self.is_id_not_found(): raise AttributeError("tag 'id_not_found' not set") return self._value def get_group_info(self): """ Info about a group. Only call this if :meth:`is_group_info` is true. :rtype: GroupFullInfo """ if not self.is_group_info(): raise AttributeError("tag 'group_info' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupsGetInfoItem, self)._process_custom_annotations(annotation_type, field_path, processor) GroupsGetInfoItem_validator = bv.Union(GroupsGetInfoItem) class GroupsListArg(bb.Struct): """ :ivar team.GroupsListArg.limit: Number of results to return per call. """ __slots__ = [ '_limit_value', ] _has_required_fields = False def __init__(self, limit=None): self._limit_value = bb.NOT_SET if limit is not None: self.limit = limit # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupsListArg, self)._process_custom_annotations(annotation_type, field_path, processor) GroupsListArg_validator = bv.Struct(GroupsListArg) class GroupsListContinueArg(bb.Struct): """ :ivar team.GroupsListContinueArg.cursor: Indicates from what point to get the next set of groups. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupsListContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) GroupsListContinueArg_validator = bv.Struct(GroupsListContinueArg) class GroupsListContinueError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupsListContinueError.invalid_cursor: The cursor is invalid. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_cursor = None # Attribute is overwritten below the class definition other = None def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupsListContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupsListContinueError_validator = bv.Union(GroupsListContinueError) class GroupsListResult(bb.Struct): """ :ivar team.GroupsListResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.team_groups_list_continue` to obtain the additional groups. :ivar team.GroupsListResult.has_more: Is true if there are additional groups that have not been returned yet. An additional call to :meth:`dropbox.dropbox_client.Dropbox.team_groups_list_continue` can retrieve them. """ __slots__ = [ '_groups_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, groups=None, cursor=None, has_more=None): self._groups_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if groups is not None: self.groups = groups if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [team_common.GroupSummary] (validator is set below) groups = bb.Attribute("groups") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupsListResult, self)._process_custom_annotations(annotation_type, field_path, processor) GroupsListResult_validator = bv.Struct(GroupsListResult) class GroupsMembersListArg(bb.Struct): """ :ivar team.GroupsMembersListArg.group: The group whose members are to be listed. :ivar team.GroupsMembersListArg.limit: Number of results to return per call. """ __slots__ = [ '_group_value', '_limit_value', ] _has_required_fields = True def __init__(self, group=None, limit=None): self._group_value = bb.NOT_SET self._limit_value = bb.NOT_SET if group is not None: self.group = group if limit is not None: self.limit = limit # Instance attribute type: GroupSelector (validator is set below) group = bb.Attribute("group", user_defined=True) # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupsMembersListArg, self)._process_custom_annotations(annotation_type, field_path, processor) GroupsMembersListArg_validator = bv.Struct(GroupsMembersListArg) class GroupsMembersListContinueArg(bb.Struct): """ :ivar team.GroupsMembersListContinueArg.cursor: Indicates from what point to get the next set of groups. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupsMembersListContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) GroupsMembersListContinueArg_validator = bv.Struct(GroupsMembersListContinueArg) class GroupsMembersListContinueError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupsMembersListContinueError.invalid_cursor: The cursor is invalid. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_cursor = None # Attribute is overwritten below the class definition other = None def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupsMembersListContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupsMembersListContinueError_validator = bv.Union(GroupsMembersListContinueError) class GroupsMembersListResult(bb.Struct): """ :ivar team.GroupsMembersListResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.team_groups_members_list_continue` to obtain additional group members. :ivar team.GroupsMembersListResult.has_more: Is true if there are additional group members that have not been returned yet. An additional call to :meth:`dropbox.dropbox_client.Dropbox.team_groups_members_list_continue` can retrieve them. """ __slots__ = [ '_members_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, members=None, cursor=None, has_more=None): self._members_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if members is not None: self.members = members if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [GroupMemberInfo] (validator is set below) members = bb.Attribute("members") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupsMembersListResult, self)._process_custom_annotations(annotation_type, field_path, processor) GroupsMembersListResult_validator = bv.Struct(GroupsMembersListResult) class GroupsPollError(async_.PollError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.GroupsPollError.access_denied: You are not allowed to poll this job. """ # Attribute is overwritten below the class definition access_denied = None def is_access_denied(self): """ Check if the union tag is ``access_denied``. :rtype: bool """ return self._tag == 'access_denied' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupsPollError, self)._process_custom_annotations(annotation_type, field_path, processor) GroupsPollError_validator = bv.Union(GroupsPollError) class GroupsSelector(bb.Union): """ Argument for selecting a list of groups, either by group_ids, or external group IDs. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar list of [str] team.GroupsSelector.group_ids: List of group IDs. :ivar list of [str] team.GroupsSelector.group_external_ids: List of external IDs of groups. """ _catch_all = None @classmethod def group_ids(cls, val): """ Create an instance of this class set to the ``group_ids`` tag with value ``val``. :param list of [str] val: :rtype: GroupsSelector """ return cls('group_ids', val) @classmethod def group_external_ids(cls, val): """ Create an instance of this class set to the ``group_external_ids`` tag with value ``val``. :param list of [str] val: :rtype: GroupsSelector """ return cls('group_external_ids', val) def is_group_ids(self): """ Check if the union tag is ``group_ids``. :rtype: bool """ return self._tag == 'group_ids' def is_group_external_ids(self): """ Check if the union tag is ``group_external_ids``. :rtype: bool """ return self._tag == 'group_external_ids' def get_group_ids(self): """ List of group IDs. Only call this if :meth:`is_group_ids` is true. :rtype: list of [str] """ if not self.is_group_ids(): raise AttributeError("tag 'group_ids' not set") return self._value def get_group_external_ids(self): """ List of external IDs of groups. Only call this if :meth:`is_group_external_ids` is true. :rtype: list of [str] """ if not self.is_group_external_ids(): raise AttributeError("tag 'group_external_ids' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupsSelector, self)._process_custom_annotations(annotation_type, field_path, processor) GroupsSelector_validator = bv.Union(GroupsSelector) class HasTeamFileEventsValue(bb.Union): """ The value for ``Feature.has_team_file_events``. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar bool team.HasTeamFileEventsValue.enabled: Does this team have file events. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def enabled(cls, val): """ Create an instance of this class set to the ``enabled`` tag with value ``val``. :param bool val: :rtype: HasTeamFileEventsValue """ return cls('enabled', val) def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_enabled(self): """ Does this team have file events. Only call this if :meth:`is_enabled` is true. :rtype: bool """ if not self.is_enabled(): raise AttributeError("tag 'enabled' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(HasTeamFileEventsValue, self)._process_custom_annotations(annotation_type, field_path, processor) HasTeamFileEventsValue_validator = bv.Union(HasTeamFileEventsValue) class HasTeamSelectiveSyncValue(bb.Union): """ The value for ``Feature.has_team_selective_sync``. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar bool team.HasTeamSelectiveSyncValue.has_team_selective_sync: Does this team have team selective sync enabled. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def has_team_selective_sync(cls, val): """ Create an instance of this class set to the ``has_team_selective_sync`` tag with value ``val``. :param bool val: :rtype: HasTeamSelectiveSyncValue """ return cls('has_team_selective_sync', val) def is_has_team_selective_sync(self): """ Check if the union tag is ``has_team_selective_sync``. :rtype: bool """ return self._tag == 'has_team_selective_sync' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_has_team_selective_sync(self): """ Does this team have team selective sync enabled. Only call this if :meth:`is_has_team_selective_sync` is true. :rtype: bool """ if not self.is_has_team_selective_sync(): raise AttributeError("tag 'has_team_selective_sync' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(HasTeamSelectiveSyncValue, self)._process_custom_annotations(annotation_type, field_path, processor) HasTeamSelectiveSyncValue_validator = bv.Union(HasTeamSelectiveSyncValue) class HasTeamSharedDropboxValue(bb.Union): """ The value for ``Feature.has_team_shared_dropbox``. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar bool team.HasTeamSharedDropboxValue.has_team_shared_dropbox: Does this team have a shared team root. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def has_team_shared_dropbox(cls, val): """ Create an instance of this class set to the ``has_team_shared_dropbox`` tag with value ``val``. :param bool val: :rtype: HasTeamSharedDropboxValue """ return cls('has_team_shared_dropbox', val) def is_has_team_shared_dropbox(self): """ Check if the union tag is ``has_team_shared_dropbox``. :rtype: bool """ return self._tag == 'has_team_shared_dropbox' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_has_team_shared_dropbox(self): """ Does this team have a shared team root. Only call this if :meth:`is_has_team_shared_dropbox` is true. :rtype: bool """ if not self.is_has_team_shared_dropbox(): raise AttributeError("tag 'has_team_shared_dropbox' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(HasTeamSharedDropboxValue, self)._process_custom_annotations(annotation_type, field_path, processor) HasTeamSharedDropboxValue_validator = bv.Union(HasTeamSharedDropboxValue) class LegalHoldHeldRevisionMetadata(bb.Struct): """ :ivar team.LegalHoldHeldRevisionMetadata.new_filename: The held revision filename. :ivar team.LegalHoldHeldRevisionMetadata.original_revision_id: The id of the held revision. :ivar team.LegalHoldHeldRevisionMetadata.original_file_path: The original path of the held revision. :ivar team.LegalHoldHeldRevisionMetadata.server_modified: The last time the file was modified on Dropbox. :ivar team.LegalHoldHeldRevisionMetadata.author_member_id: The member id of the revision's author. :ivar team.LegalHoldHeldRevisionMetadata.author_member_status: The member status of the revision's author. :ivar team.LegalHoldHeldRevisionMetadata.author_email: The email address of the held revision author. :ivar team.LegalHoldHeldRevisionMetadata.file_type: The type of the held revision's file. :ivar team.LegalHoldHeldRevisionMetadata.size: The file size in bytes. :ivar team.LegalHoldHeldRevisionMetadata.content_hash: A hash of the file content. This field can be used to verify data integrity. For more information see our `Content hash `_ page. """ __slots__ = [ '_new_filename_value', '_original_revision_id_value', '_original_file_path_value', '_server_modified_value', '_author_member_id_value', '_author_member_status_value', '_author_email_value', '_file_type_value', '_size_value', '_content_hash_value', ] _has_required_fields = True def __init__(self, new_filename=None, original_revision_id=None, original_file_path=None, server_modified=None, author_member_id=None, author_member_status=None, author_email=None, file_type=None, size=None, content_hash=None): self._new_filename_value = bb.NOT_SET self._original_revision_id_value = bb.NOT_SET self._original_file_path_value = bb.NOT_SET self._server_modified_value = bb.NOT_SET self._author_member_id_value = bb.NOT_SET self._author_member_status_value = bb.NOT_SET self._author_email_value = bb.NOT_SET self._file_type_value = bb.NOT_SET self._size_value = bb.NOT_SET self._content_hash_value = bb.NOT_SET if new_filename is not None: self.new_filename = new_filename if original_revision_id is not None: self.original_revision_id = original_revision_id if original_file_path is not None: self.original_file_path = original_file_path if server_modified is not None: self.server_modified = server_modified if author_member_id is not None: self.author_member_id = author_member_id if author_member_status is not None: self.author_member_status = author_member_status if author_email is not None: self.author_email = author_email if file_type is not None: self.file_type = file_type if size is not None: self.size = size if content_hash is not None: self.content_hash = content_hash # Instance attribute type: str (validator is set below) new_filename = bb.Attribute("new_filename") # Instance attribute type: str (validator is set below) original_revision_id = bb.Attribute("original_revision_id") # Instance attribute type: str (validator is set below) original_file_path = bb.Attribute("original_file_path") # Instance attribute type: datetime.datetime (validator is set below) server_modified = bb.Attribute("server_modified") # Instance attribute type: str (validator is set below) author_member_id = bb.Attribute("author_member_id") # Instance attribute type: TeamMemberStatus (validator is set below) author_member_status = bb.Attribute("author_member_status", user_defined=True) # Instance attribute type: str (validator is set below) author_email = bb.Attribute("author_email") # Instance attribute type: str (validator is set below) file_type = bb.Attribute("file_type") # Instance attribute type: int (validator is set below) size = bb.Attribute("size") # Instance attribute type: str (validator is set below) content_hash = bb.Attribute("content_hash") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldHeldRevisionMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldHeldRevisionMetadata_validator = bv.Struct(LegalHoldHeldRevisionMetadata) class LegalHoldPolicy(bb.Struct): """ :ivar team.LegalHoldPolicy.id: The legal hold id. :ivar team.LegalHoldPolicy.name: Policy name. :ivar team.LegalHoldPolicy.description: A description of the legal hold policy. :ivar team.LegalHoldPolicy.activation_time: The time at which the legal hold was activated. :ivar team.LegalHoldPolicy.members: Team members IDs and number of permanently deleted members under hold. :ivar team.LegalHoldPolicy.status: The current state of the hold. :ivar team.LegalHoldPolicy.start_date: Start date of the legal hold policy. :ivar team.LegalHoldPolicy.end_date: End date of the legal hold policy. """ __slots__ = [ '_id_value', '_name_value', '_description_value', '_activation_time_value', '_members_value', '_status_value', '_start_date_value', '_end_date_value', ] _has_required_fields = True def __init__(self, id=None, name=None, members=None, status=None, start_date=None, description=None, activation_time=None, end_date=None): self._id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._description_value = bb.NOT_SET self._activation_time_value = bb.NOT_SET self._members_value = bb.NOT_SET self._status_value = bb.NOT_SET self._start_date_value = bb.NOT_SET self._end_date_value = bb.NOT_SET if id is not None: self.id = id if name is not None: self.name = name if description is not None: self.description = description if activation_time is not None: self.activation_time = activation_time if members is not None: self.members = members if status is not None: self.status = status if start_date is not None: self.start_date = start_date if end_date is not None: self.end_date = end_date # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) description = bb.Attribute("description", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) activation_time = bb.Attribute("activation_time", nullable=True) # Instance attribute type: MembersInfo (validator is set below) members = bb.Attribute("members", user_defined=True) # Instance attribute type: LegalHoldStatus (validator is set below) status = bb.Attribute("status", user_defined=True) # Instance attribute type: datetime.datetime (validator is set below) start_date = bb.Attribute("start_date") # Instance attribute type: datetime.datetime (validator is set below) end_date = bb.Attribute("end_date", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldPolicy_validator = bv.Struct(LegalHoldPolicy) class LegalHoldStatus(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.LegalHoldStatus.active: The legal hold policy is active. :ivar team.LegalHoldStatus.released: The legal hold policy was released. :ivar team.LegalHoldStatus.activating: The legal hold policy is activating. :ivar team.LegalHoldStatus.updating: The legal hold policy is updating. :ivar team.LegalHoldStatus.exporting: The legal hold policy is exporting. :ivar team.LegalHoldStatus.releasing: The legal hold policy is releasing. """ _catch_all = 'other' # Attribute is overwritten below the class definition active = None # Attribute is overwritten below the class definition released = None # Attribute is overwritten below the class definition activating = None # Attribute is overwritten below the class definition updating = None # Attribute is overwritten below the class definition exporting = None # Attribute is overwritten below the class definition releasing = None # Attribute is overwritten below the class definition other = None def is_active(self): """ Check if the union tag is ``active``. :rtype: bool """ return self._tag == 'active' def is_released(self): """ Check if the union tag is ``released``. :rtype: bool """ return self._tag == 'released' def is_activating(self): """ Check if the union tag is ``activating``. :rtype: bool """ return self._tag == 'activating' def is_updating(self): """ Check if the union tag is ``updating``. :rtype: bool """ return self._tag == 'updating' def is_exporting(self): """ Check if the union tag is ``exporting``. :rtype: bool """ return self._tag == 'exporting' def is_releasing(self): """ Check if the union tag is ``releasing``. :rtype: bool """ return self._tag == 'releasing' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldStatus, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldStatus_validator = bv.Union(LegalHoldStatus) class LegalHoldsError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.LegalHoldsError.unknown_legal_hold_error: There has been an unknown legal hold error. :ivar team.LegalHoldsError.insufficient_permissions: You don't have permissions to perform this action. """ _catch_all = 'other' # Attribute is overwritten below the class definition unknown_legal_hold_error = None # Attribute is overwritten below the class definition insufficient_permissions = None # Attribute is overwritten below the class definition other = None def is_unknown_legal_hold_error(self): """ Check if the union tag is ``unknown_legal_hold_error``. :rtype: bool """ return self._tag == 'unknown_legal_hold_error' def is_insufficient_permissions(self): """ Check if the union tag is ``insufficient_permissions``. :rtype: bool """ return self._tag == 'insufficient_permissions' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsError, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsError_validator = bv.Union(LegalHoldsError) class LegalHoldsGetPolicyArg(bb.Struct): """ :ivar team.LegalHoldsGetPolicyArg.id: The legal hold Id. """ __slots__ = [ '_id_value', ] _has_required_fields = True def __init__(self, id=None): self._id_value = bb.NOT_SET if id is not None: self.id = id # Instance attribute type: str (validator is set below) id = bb.Attribute("id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsGetPolicyArg, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsGetPolicyArg_validator = bv.Struct(LegalHoldsGetPolicyArg) class LegalHoldsGetPolicyError(LegalHoldsError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.LegalHoldsGetPolicyError.legal_hold_policy_not_found: Legal hold policy does not exist for ``LegalHoldsGetPolicyArg.id``. """ # Attribute is overwritten below the class definition legal_hold_policy_not_found = None def is_legal_hold_policy_not_found(self): """ Check if the union tag is ``legal_hold_policy_not_found``. :rtype: bool """ return self._tag == 'legal_hold_policy_not_found' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsGetPolicyError, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsGetPolicyError_validator = bv.Union(LegalHoldsGetPolicyError) class LegalHoldsListHeldRevisionResult(bb.Struct): """ :ivar team.LegalHoldsListHeldRevisionResult.entries: List of file entries that under the hold. :ivar team.LegalHoldsListHeldRevisionResult.cursor: The cursor idicates where to continue reading file metadata entries for the next API call. When there are no more entries, the cursor will return none. Pass the cursor into /2/team/legal_holds/list_held_revisions/continue. :ivar team.LegalHoldsListHeldRevisionResult.has_more: True if there are more file entries that haven't been returned. You can retrieve them with a call to /legal_holds/list_held_revisions_continue. """ __slots__ = [ '_entries_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, entries=None, has_more=None, cursor=None): self._entries_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if entries is not None: self.entries = entries if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [LegalHoldHeldRevisionMetadata] (validator is set below) entries = bb.Attribute("entries") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsListHeldRevisionResult, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsListHeldRevisionResult_validator = bv.Struct(LegalHoldsListHeldRevisionResult) class LegalHoldsListHeldRevisionsArg(bb.Struct): """ :ivar team.LegalHoldsListHeldRevisionsArg.id: The legal hold Id. """ __slots__ = [ '_id_value', ] _has_required_fields = True def __init__(self, id=None): self._id_value = bb.NOT_SET if id is not None: self.id = id # Instance attribute type: str (validator is set below) id = bb.Attribute("id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsListHeldRevisionsArg, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsListHeldRevisionsArg_validator = bv.Struct(LegalHoldsListHeldRevisionsArg) class LegalHoldsListHeldRevisionsContinueArg(bb.Struct): """ :ivar team.LegalHoldsListHeldRevisionsContinueArg.id: The legal hold Id. :ivar team.LegalHoldsListHeldRevisionsContinueArg.cursor: The cursor idicates where to continue reading file metadata entries for the next API call. When there are no more entries, the cursor will return none. """ __slots__ = [ '_id_value', '_cursor_value', ] _has_required_fields = True def __init__(self, id=None, cursor=None): self._id_value = bb.NOT_SET self._cursor_value = bb.NOT_SET if id is not None: self.id = id if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsListHeldRevisionsContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsListHeldRevisionsContinueArg_validator = bv.Struct(LegalHoldsListHeldRevisionsContinueArg) class LegalHoldsListHeldRevisionsContinueError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.LegalHoldsListHeldRevisionsContinueError.unknown_legal_hold_error: There has been an unknown legal hold error. :ivar team.LegalHoldsListHeldRevisionsContinueError.transient_error: Temporary infrastructure failure, please retry. :ivar team.LegalHoldsListHeldRevisionsContinueError.reset: Indicates that the cursor has been invalidated. Call :meth:`dropbox.dropbox_client.Dropbox.team_legal_holds_list_held_revisions_continue` again with an empty cursor to obtain a new cursor. """ _catch_all = 'other' # Attribute is overwritten below the class definition unknown_legal_hold_error = None # Attribute is overwritten below the class definition transient_error = None # Attribute is overwritten below the class definition reset = None # Attribute is overwritten below the class definition other = None def is_unknown_legal_hold_error(self): """ Check if the union tag is ``unknown_legal_hold_error``. :rtype: bool """ return self._tag == 'unknown_legal_hold_error' def is_transient_error(self): """ Check if the union tag is ``transient_error``. :rtype: bool """ return self._tag == 'transient_error' def is_reset(self): """ Check if the union tag is ``reset``. :rtype: bool """ return self._tag == 'reset' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsListHeldRevisionsContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsListHeldRevisionsContinueError_validator = bv.Union(LegalHoldsListHeldRevisionsContinueError) class LegalHoldsListHeldRevisionsError(LegalHoldsError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.LegalHoldsListHeldRevisionsError.transient_error: Temporary infrastructure failure, please retry. :ivar team.LegalHoldsListHeldRevisionsError.legal_hold_still_empty: The legal hold is not holding any revisions yet. :ivar team.LegalHoldsListHeldRevisionsError.inactive_legal_hold: Trying to list revisions for an inactive legal hold. """ # Attribute is overwritten below the class definition transient_error = None # Attribute is overwritten below the class definition legal_hold_still_empty = None # Attribute is overwritten below the class definition inactive_legal_hold = None def is_transient_error(self): """ Check if the union tag is ``transient_error``. :rtype: bool """ return self._tag == 'transient_error' def is_legal_hold_still_empty(self): """ Check if the union tag is ``legal_hold_still_empty``. :rtype: bool """ return self._tag == 'legal_hold_still_empty' def is_inactive_legal_hold(self): """ Check if the union tag is ``inactive_legal_hold``. :rtype: bool """ return self._tag == 'inactive_legal_hold' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsListHeldRevisionsError, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsListHeldRevisionsError_validator = bv.Union(LegalHoldsListHeldRevisionsError) class LegalHoldsListPoliciesArg(bb.Struct): """ :ivar team.LegalHoldsListPoliciesArg.include_released: Whether to return holds that were released. """ __slots__ = [ '_include_released_value', ] _has_required_fields = False def __init__(self, include_released=None): self._include_released_value = bb.NOT_SET if include_released is not None: self.include_released = include_released # Instance attribute type: bool (validator is set below) include_released = bb.Attribute("include_released") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsListPoliciesArg, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsListPoliciesArg_validator = bv.Struct(LegalHoldsListPoliciesArg) class LegalHoldsListPoliciesError(LegalHoldsError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.LegalHoldsListPoliciesError.transient_error: Temporary infrastructure failure, please retry. """ # Attribute is overwritten below the class definition transient_error = None def is_transient_error(self): """ Check if the union tag is ``transient_error``. :rtype: bool """ return self._tag == 'transient_error' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsListPoliciesError, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsListPoliciesError_validator = bv.Union(LegalHoldsListPoliciesError) class LegalHoldsListPoliciesResult(bb.Struct): __slots__ = [ '_policies_value', ] _has_required_fields = True def __init__(self, policies=None): self._policies_value = bb.NOT_SET if policies is not None: self.policies = policies # Instance attribute type: list of [LegalHoldPolicy] (validator is set below) policies = bb.Attribute("policies") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsListPoliciesResult, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsListPoliciesResult_validator = bv.Struct(LegalHoldsListPoliciesResult) class LegalHoldsPolicyCreateArg(bb.Struct): """ :ivar team.LegalHoldsPolicyCreateArg.name: Policy name. :ivar team.LegalHoldsPolicyCreateArg.description: A description of the legal hold policy. :ivar team.LegalHoldsPolicyCreateArg.members: List of team member IDs added to the hold. :ivar team.LegalHoldsPolicyCreateArg.start_date: start date of the legal hold policy. :ivar team.LegalHoldsPolicyCreateArg.end_date: end date of the legal hold policy. """ __slots__ = [ '_name_value', '_description_value', '_members_value', '_start_date_value', '_end_date_value', ] _has_required_fields = True def __init__(self, name=None, members=None, description=None, start_date=None, end_date=None): self._name_value = bb.NOT_SET self._description_value = bb.NOT_SET self._members_value = bb.NOT_SET self._start_date_value = bb.NOT_SET self._end_date_value = bb.NOT_SET if name is not None: self.name = name if description is not None: self.description = description if members is not None: self.members = members if start_date is not None: self.start_date = start_date if end_date is not None: self.end_date = end_date # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) description = bb.Attribute("description", nullable=True) # Instance attribute type: list of [str] (validator is set below) members = bb.Attribute("members") # Instance attribute type: datetime.datetime (validator is set below) start_date = bb.Attribute("start_date", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) end_date = bb.Attribute("end_date", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsPolicyCreateArg, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsPolicyCreateArg_validator = bv.Struct(LegalHoldsPolicyCreateArg) class LegalHoldsPolicyCreateError(LegalHoldsError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.LegalHoldsPolicyCreateError.start_date_is_later_than_end_date: Start date must be earlier than end date. :ivar team.LegalHoldsPolicyCreateError.empty_members_list: The users list must have at least one user. :ivar team.LegalHoldsPolicyCreateError.invalid_members: Some members in the members list are not valid to be placed under legal hold. :ivar team.LegalHoldsPolicyCreateError.number_of_users_on_hold_is_greater_than_hold_limitation: You cannot add more than 5 users in a legal hold. :ivar team.LegalHoldsPolicyCreateError.transient_error: Temporary infrastructure failure, please retry. :ivar team.LegalHoldsPolicyCreateError.name_must_be_unique: The name provided is already in use by another legal hold. :ivar team.LegalHoldsPolicyCreateError.team_exceeded_legal_hold_quota: Team exceeded legal hold quota. :ivar team.LegalHoldsPolicyCreateError.invalid_date: The provided date is invalid. """ # Attribute is overwritten below the class definition start_date_is_later_than_end_date = None # Attribute is overwritten below the class definition empty_members_list = None # Attribute is overwritten below the class definition invalid_members = None # Attribute is overwritten below the class definition number_of_users_on_hold_is_greater_than_hold_limitation = None # Attribute is overwritten below the class definition transient_error = None # Attribute is overwritten below the class definition name_must_be_unique = None # Attribute is overwritten below the class definition team_exceeded_legal_hold_quota = None # Attribute is overwritten below the class definition invalid_date = None def is_start_date_is_later_than_end_date(self): """ Check if the union tag is ``start_date_is_later_than_end_date``. :rtype: bool """ return self._tag == 'start_date_is_later_than_end_date' def is_empty_members_list(self): """ Check if the union tag is ``empty_members_list``. :rtype: bool """ return self._tag == 'empty_members_list' def is_invalid_members(self): """ Check if the union tag is ``invalid_members``. :rtype: bool """ return self._tag == 'invalid_members' def is_number_of_users_on_hold_is_greater_than_hold_limitation(self): """ Check if the union tag is ``number_of_users_on_hold_is_greater_than_hold_limitation``. :rtype: bool """ return self._tag == 'number_of_users_on_hold_is_greater_than_hold_limitation' def is_transient_error(self): """ Check if the union tag is ``transient_error``. :rtype: bool """ return self._tag == 'transient_error' def is_name_must_be_unique(self): """ Check if the union tag is ``name_must_be_unique``. :rtype: bool """ return self._tag == 'name_must_be_unique' def is_team_exceeded_legal_hold_quota(self): """ Check if the union tag is ``team_exceeded_legal_hold_quota``. :rtype: bool """ return self._tag == 'team_exceeded_legal_hold_quota' def is_invalid_date(self): """ Check if the union tag is ``invalid_date``. :rtype: bool """ return self._tag == 'invalid_date' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsPolicyCreateError, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsPolicyCreateError_validator = bv.Union(LegalHoldsPolicyCreateError) class LegalHoldsPolicyReleaseArg(bb.Struct): """ :ivar team.LegalHoldsPolicyReleaseArg.id: The legal hold Id. """ __slots__ = [ '_id_value', ] _has_required_fields = True def __init__(self, id=None): self._id_value = bb.NOT_SET if id is not None: self.id = id # Instance attribute type: str (validator is set below) id = bb.Attribute("id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsPolicyReleaseArg, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsPolicyReleaseArg_validator = bv.Struct(LegalHoldsPolicyReleaseArg) class LegalHoldsPolicyReleaseError(LegalHoldsError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.LegalHoldsPolicyReleaseError.legal_hold_performing_another_operation: Legal hold is currently performing another operation. :ivar team.LegalHoldsPolicyReleaseError.legal_hold_already_releasing: Legal hold is currently performing a release or is already released. :ivar team.LegalHoldsPolicyReleaseError.legal_hold_policy_not_found: Legal hold policy does not exist for ``LegalHoldsPolicyReleaseArg.id``. """ # Attribute is overwritten below the class definition legal_hold_performing_another_operation = None # Attribute is overwritten below the class definition legal_hold_already_releasing = None # Attribute is overwritten below the class definition legal_hold_policy_not_found = None def is_legal_hold_performing_another_operation(self): """ Check if the union tag is ``legal_hold_performing_another_operation``. :rtype: bool """ return self._tag == 'legal_hold_performing_another_operation' def is_legal_hold_already_releasing(self): """ Check if the union tag is ``legal_hold_already_releasing``. :rtype: bool """ return self._tag == 'legal_hold_already_releasing' def is_legal_hold_policy_not_found(self): """ Check if the union tag is ``legal_hold_policy_not_found``. :rtype: bool """ return self._tag == 'legal_hold_policy_not_found' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsPolicyReleaseError, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsPolicyReleaseError_validator = bv.Union(LegalHoldsPolicyReleaseError) class LegalHoldsPolicyUpdateArg(bb.Struct): """ :ivar team.LegalHoldsPolicyUpdateArg.id: The legal hold Id. :ivar team.LegalHoldsPolicyUpdateArg.name: Policy new name. :ivar team.LegalHoldsPolicyUpdateArg.description: Policy new description. :ivar team.LegalHoldsPolicyUpdateArg.members: List of team member IDs to apply the policy on. """ __slots__ = [ '_id_value', '_name_value', '_description_value', '_members_value', ] _has_required_fields = True def __init__(self, id=None, name=None, description=None, members=None): self._id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._description_value = bb.NOT_SET self._members_value = bb.NOT_SET if id is not None: self.id = id if name is not None: self.name = name if description is not None: self.description = description if members is not None: self.members = members # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name", nullable=True) # Instance attribute type: str (validator is set below) description = bb.Attribute("description", nullable=True) # Instance attribute type: list of [str] (validator is set below) members = bb.Attribute("members", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsPolicyUpdateArg, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsPolicyUpdateArg_validator = bv.Struct(LegalHoldsPolicyUpdateArg) class LegalHoldsPolicyUpdateError(LegalHoldsError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.LegalHoldsPolicyUpdateError.transient_error: Temporary infrastructure failure, please retry. :ivar team.LegalHoldsPolicyUpdateError.inactive_legal_hold: Trying to release an inactive legal hold. :ivar team.LegalHoldsPolicyUpdateError.legal_hold_performing_another_operation: Legal hold is currently performing another operation. :ivar team.LegalHoldsPolicyUpdateError.invalid_members: Some members in the members list are not valid to be placed under legal hold. :ivar team.LegalHoldsPolicyUpdateError.number_of_users_on_hold_is_greater_than_hold_limitation: You cannot add more than 5 users in a legal hold. :ivar team.LegalHoldsPolicyUpdateError.empty_members_list: The users list must have at least one user. :ivar team.LegalHoldsPolicyUpdateError.name_must_be_unique: The name provided is already in use by another legal hold. :ivar team.LegalHoldsPolicyUpdateError.legal_hold_policy_not_found: Legal hold policy does not exist for ``LegalHoldsPolicyUpdateArg.id``. """ # Attribute is overwritten below the class definition transient_error = None # Attribute is overwritten below the class definition inactive_legal_hold = None # Attribute is overwritten below the class definition legal_hold_performing_another_operation = None # Attribute is overwritten below the class definition invalid_members = None # Attribute is overwritten below the class definition number_of_users_on_hold_is_greater_than_hold_limitation = None # Attribute is overwritten below the class definition empty_members_list = None # Attribute is overwritten below the class definition name_must_be_unique = None # Attribute is overwritten below the class definition legal_hold_policy_not_found = None def is_transient_error(self): """ Check if the union tag is ``transient_error``. :rtype: bool """ return self._tag == 'transient_error' def is_inactive_legal_hold(self): """ Check if the union tag is ``inactive_legal_hold``. :rtype: bool """ return self._tag == 'inactive_legal_hold' def is_legal_hold_performing_another_operation(self): """ Check if the union tag is ``legal_hold_performing_another_operation``. :rtype: bool """ return self._tag == 'legal_hold_performing_another_operation' def is_invalid_members(self): """ Check if the union tag is ``invalid_members``. :rtype: bool """ return self._tag == 'invalid_members' def is_number_of_users_on_hold_is_greater_than_hold_limitation(self): """ Check if the union tag is ``number_of_users_on_hold_is_greater_than_hold_limitation``. :rtype: bool """ return self._tag == 'number_of_users_on_hold_is_greater_than_hold_limitation' def is_empty_members_list(self): """ Check if the union tag is ``empty_members_list``. :rtype: bool """ return self._tag == 'empty_members_list' def is_name_must_be_unique(self): """ Check if the union tag is ``name_must_be_unique``. :rtype: bool """ return self._tag == 'name_must_be_unique' def is_legal_hold_policy_not_found(self): """ Check if the union tag is ``legal_hold_policy_not_found``. :rtype: bool """ return self._tag == 'legal_hold_policy_not_found' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsPolicyUpdateError, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsPolicyUpdateError_validator = bv.Union(LegalHoldsPolicyUpdateError) class ListMemberAppsArg(bb.Struct): """ :ivar team.ListMemberAppsArg.team_member_id: The team member id. """ __slots__ = [ '_team_member_id_value', ] _has_required_fields = True def __init__(self, team_member_id=None): self._team_member_id_value = bb.NOT_SET if team_member_id is not None: self.team_member_id = team_member_id # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListMemberAppsArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListMemberAppsArg_validator = bv.Struct(ListMemberAppsArg) class ListMemberAppsError(bb.Union): """ Error returned by :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_member_linked_apps`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.ListMemberAppsError.member_not_found: Member not found. """ _catch_all = 'other' # Attribute is overwritten below the class definition member_not_found = None # Attribute is overwritten below the class definition other = None def is_member_not_found(self): """ Check if the union tag is ``member_not_found``. :rtype: bool """ return self._tag == 'member_not_found' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListMemberAppsError, self)._process_custom_annotations(annotation_type, field_path, processor) ListMemberAppsError_validator = bv.Union(ListMemberAppsError) class ListMemberAppsResult(bb.Struct): """ :ivar team.ListMemberAppsResult.linked_api_apps: List of third party applications linked by this team member. """ __slots__ = [ '_linked_api_apps_value', ] _has_required_fields = True def __init__(self, linked_api_apps=None): self._linked_api_apps_value = bb.NOT_SET if linked_api_apps is not None: self.linked_api_apps = linked_api_apps # Instance attribute type: list of [ApiApp] (validator is set below) linked_api_apps = bb.Attribute("linked_api_apps") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListMemberAppsResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListMemberAppsResult_validator = bv.Struct(ListMemberAppsResult) class ListMemberDevicesArg(bb.Struct): """ :ivar team.ListMemberDevicesArg.team_member_id: The team's member id. :ivar team.ListMemberDevicesArg.include_web_sessions: Whether to list web sessions of the team's member. :ivar team.ListMemberDevicesArg.include_desktop_clients: Whether to list linked desktop devices of the team's member. :ivar team.ListMemberDevicesArg.include_mobile_clients: Whether to list linked mobile devices of the team's member. """ __slots__ = [ '_team_member_id_value', '_include_web_sessions_value', '_include_desktop_clients_value', '_include_mobile_clients_value', ] _has_required_fields = True def __init__(self, team_member_id=None, include_web_sessions=None, include_desktop_clients=None, include_mobile_clients=None): self._team_member_id_value = bb.NOT_SET self._include_web_sessions_value = bb.NOT_SET self._include_desktop_clients_value = bb.NOT_SET self._include_mobile_clients_value = bb.NOT_SET if team_member_id is not None: self.team_member_id = team_member_id if include_web_sessions is not None: self.include_web_sessions = include_web_sessions if include_desktop_clients is not None: self.include_desktop_clients = include_desktop_clients if include_mobile_clients is not None: self.include_mobile_clients = include_mobile_clients # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id") # Instance attribute type: bool (validator is set below) include_web_sessions = bb.Attribute("include_web_sessions") # Instance attribute type: bool (validator is set below) include_desktop_clients = bb.Attribute("include_desktop_clients") # Instance attribute type: bool (validator is set below) include_mobile_clients = bb.Attribute("include_mobile_clients") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListMemberDevicesArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListMemberDevicesArg_validator = bv.Struct(ListMemberDevicesArg) class ListMemberDevicesError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.ListMemberDevicesError.member_not_found: Member not found. """ _catch_all = 'other' # Attribute is overwritten below the class definition member_not_found = None # Attribute is overwritten below the class definition other = None def is_member_not_found(self): """ Check if the union tag is ``member_not_found``. :rtype: bool """ return self._tag == 'member_not_found' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListMemberDevicesError, self)._process_custom_annotations(annotation_type, field_path, processor) ListMemberDevicesError_validator = bv.Union(ListMemberDevicesError) class ListMemberDevicesResult(bb.Struct): """ :ivar team.ListMemberDevicesResult.active_web_sessions: List of web sessions made by this team member. :ivar team.ListMemberDevicesResult.desktop_client_sessions: List of desktop clients used by this team member. :ivar team.ListMemberDevicesResult.mobile_client_sessions: List of mobile client used by this team member. """ __slots__ = [ '_active_web_sessions_value', '_desktop_client_sessions_value', '_mobile_client_sessions_value', ] _has_required_fields = False def __init__(self, active_web_sessions=None, desktop_client_sessions=None, mobile_client_sessions=None): self._active_web_sessions_value = bb.NOT_SET self._desktop_client_sessions_value = bb.NOT_SET self._mobile_client_sessions_value = bb.NOT_SET if active_web_sessions is not None: self.active_web_sessions = active_web_sessions if desktop_client_sessions is not None: self.desktop_client_sessions = desktop_client_sessions if mobile_client_sessions is not None: self.mobile_client_sessions = mobile_client_sessions # Instance attribute type: list of [ActiveWebSession] (validator is set below) active_web_sessions = bb.Attribute("active_web_sessions", nullable=True) # Instance attribute type: list of [DesktopClientSession] (validator is set below) desktop_client_sessions = bb.Attribute("desktop_client_sessions", nullable=True) # Instance attribute type: list of [MobileClientSession] (validator is set below) mobile_client_sessions = bb.Attribute("mobile_client_sessions", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListMemberDevicesResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListMemberDevicesResult_validator = bv.Struct(ListMemberDevicesResult) class ListMembersAppsArg(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_members_linked_apps`. :ivar team.ListMembersAppsArg.cursor: At the first call to the :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_members_linked_apps` the cursor shouldn't be passed. Then, if the result of the call includes a cursor, the following requests should include the received cursors in order to receive the next sub list of the team applications. """ __slots__ = [ '_cursor_value', ] _has_required_fields = False def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListMembersAppsArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListMembersAppsArg_validator = bv.Struct(ListMembersAppsArg) class ListMembersAppsError(bb.Union): """ Error returned by :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_members_linked_apps`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.ListMembersAppsError.reset: Indicates that the cursor has been invalidated. Call :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_members_linked_apps` again with an empty cursor to obtain a new cursor. """ _catch_all = 'other' # Attribute is overwritten below the class definition reset = None # Attribute is overwritten below the class definition other = None def is_reset(self): """ Check if the union tag is ``reset``. :rtype: bool """ return self._tag == 'reset' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListMembersAppsError, self)._process_custom_annotations(annotation_type, field_path, processor) ListMembersAppsError_validator = bv.Union(ListMembersAppsError) class ListMembersAppsResult(bb.Struct): """ Information returned by :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_members_linked_apps`. :ivar team.ListMembersAppsResult.apps: The linked applications of each member of the team. :ivar team.ListMembersAppsResult.has_more: If true, then there are more apps available. Pass the cursor to :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_members_linked_apps` to retrieve the rest. :ivar team.ListMembersAppsResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_members_linked_apps` to receive the next sub list of team's applications. """ __slots__ = [ '_apps_value', '_has_more_value', '_cursor_value', ] _has_required_fields = True def __init__(self, apps=None, has_more=None, cursor=None): self._apps_value = bb.NOT_SET self._has_more_value = bb.NOT_SET self._cursor_value = bb.NOT_SET if apps is not None: self.apps = apps if has_more is not None: self.has_more = has_more if cursor is not None: self.cursor = cursor # Instance attribute type: list of [MemberLinkedApps] (validator is set below) apps = bb.Attribute("apps") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListMembersAppsResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListMembersAppsResult_validator = bv.Struct(ListMembersAppsResult) class ListMembersDevicesArg(bb.Struct): """ :ivar team.ListMembersDevicesArg.cursor: At the first call to the :meth:`dropbox.dropbox_client.Dropbox.team_devices_list_members_devices` the cursor shouldn't be passed. Then, if the result of the call includes a cursor, the following requests should include the received cursors in order to receive the next sub list of team devices. :ivar team.ListMembersDevicesArg.include_web_sessions: Whether to list web sessions of the team members. :ivar team.ListMembersDevicesArg.include_desktop_clients: Whether to list desktop clients of the team members. :ivar team.ListMembersDevicesArg.include_mobile_clients: Whether to list mobile clients of the team members. """ __slots__ = [ '_cursor_value', '_include_web_sessions_value', '_include_desktop_clients_value', '_include_mobile_clients_value', ] _has_required_fields = False def __init__(self, cursor=None, include_web_sessions=None, include_desktop_clients=None, include_mobile_clients=None): self._cursor_value = bb.NOT_SET self._include_web_sessions_value = bb.NOT_SET self._include_desktop_clients_value = bb.NOT_SET self._include_mobile_clients_value = bb.NOT_SET if cursor is not None: self.cursor = cursor if include_web_sessions is not None: self.include_web_sessions = include_web_sessions if include_desktop_clients is not None: self.include_desktop_clients = include_desktop_clients if include_mobile_clients is not None: self.include_mobile_clients = include_mobile_clients # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) # Instance attribute type: bool (validator is set below) include_web_sessions = bb.Attribute("include_web_sessions") # Instance attribute type: bool (validator is set below) include_desktop_clients = bb.Attribute("include_desktop_clients") # Instance attribute type: bool (validator is set below) include_mobile_clients = bb.Attribute("include_mobile_clients") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListMembersDevicesArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListMembersDevicesArg_validator = bv.Struct(ListMembersDevicesArg) class ListMembersDevicesError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.ListMembersDevicesError.reset: Indicates that the cursor has been invalidated. Call :meth:`dropbox.dropbox_client.Dropbox.team_devices_list_members_devices` again with an empty cursor to obtain a new cursor. """ _catch_all = 'other' # Attribute is overwritten below the class definition reset = None # Attribute is overwritten below the class definition other = None def is_reset(self): """ Check if the union tag is ``reset``. :rtype: bool """ return self._tag == 'reset' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListMembersDevicesError, self)._process_custom_annotations(annotation_type, field_path, processor) ListMembersDevicesError_validator = bv.Union(ListMembersDevicesError) class ListMembersDevicesResult(bb.Struct): """ :ivar team.ListMembersDevicesResult.devices: The devices of each member of the team. :ivar team.ListMembersDevicesResult.has_more: If true, then there are more devices available. Pass the cursor to :meth:`dropbox.dropbox_client.Dropbox.team_devices_list_members_devices` to retrieve the rest. :ivar team.ListMembersDevicesResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.team_devices_list_members_devices` to receive the next sub list of team's devices. """ __slots__ = [ '_devices_value', '_has_more_value', '_cursor_value', ] _has_required_fields = True def __init__(self, devices=None, has_more=None, cursor=None): self._devices_value = bb.NOT_SET self._has_more_value = bb.NOT_SET self._cursor_value = bb.NOT_SET if devices is not None: self.devices = devices if has_more is not None: self.has_more = has_more if cursor is not None: self.cursor = cursor # Instance attribute type: list of [MemberDevices] (validator is set below) devices = bb.Attribute("devices") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListMembersDevicesResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListMembersDevicesResult_validator = bv.Struct(ListMembersDevicesResult) class ListTeamAppsArg(bb.Struct): """ Arguments for :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_team_linked_apps`. :ivar team.ListTeamAppsArg.cursor: At the first call to the :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_team_linked_apps` the cursor shouldn't be passed. Then, if the result of the call includes a cursor, the following requests should include the received cursors in order to receive the next sub list of the team applications. """ __slots__ = [ '_cursor_value', ] _has_required_fields = False def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListTeamAppsArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListTeamAppsArg_validator = bv.Struct(ListTeamAppsArg) class ListTeamAppsError(bb.Union): """ Error returned by :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_team_linked_apps`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.ListTeamAppsError.reset: Indicates that the cursor has been invalidated. Call :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_team_linked_apps` again with an empty cursor to obtain a new cursor. """ _catch_all = 'other' # Attribute is overwritten below the class definition reset = None # Attribute is overwritten below the class definition other = None def is_reset(self): """ Check if the union tag is ``reset``. :rtype: bool """ return self._tag == 'reset' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListTeamAppsError, self)._process_custom_annotations(annotation_type, field_path, processor) ListTeamAppsError_validator = bv.Union(ListTeamAppsError) class ListTeamAppsResult(bb.Struct): """ Information returned by :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_team_linked_apps`. :ivar team.ListTeamAppsResult.apps: The linked applications of each member of the team. :ivar team.ListTeamAppsResult.has_more: If true, then there are more apps available. Pass the cursor to :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_team_linked_apps` to retrieve the rest. :ivar team.ListTeamAppsResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_list_team_linked_apps` to receive the next sub list of team's applications. """ __slots__ = [ '_apps_value', '_has_more_value', '_cursor_value', ] _has_required_fields = True def __init__(self, apps=None, has_more=None, cursor=None): self._apps_value = bb.NOT_SET self._has_more_value = bb.NOT_SET self._cursor_value = bb.NOT_SET if apps is not None: self.apps = apps if has_more is not None: self.has_more = has_more if cursor is not None: self.cursor = cursor # Instance attribute type: list of [MemberLinkedApps] (validator is set below) apps = bb.Attribute("apps") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListTeamAppsResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListTeamAppsResult_validator = bv.Struct(ListTeamAppsResult) class ListTeamDevicesArg(bb.Struct): """ :ivar team.ListTeamDevicesArg.cursor: At the first call to the :meth:`dropbox.dropbox_client.Dropbox.team_devices_list_team_devices` the cursor shouldn't be passed. Then, if the result of the call includes a cursor, the following requests should include the received cursors in order to receive the next sub list of team devices. :ivar team.ListTeamDevicesArg.include_web_sessions: Whether to list web sessions of the team members. :ivar team.ListTeamDevicesArg.include_desktop_clients: Whether to list desktop clients of the team members. :ivar team.ListTeamDevicesArg.include_mobile_clients: Whether to list mobile clients of the team members. """ __slots__ = [ '_cursor_value', '_include_web_sessions_value', '_include_desktop_clients_value', '_include_mobile_clients_value', ] _has_required_fields = False def __init__(self, cursor=None, include_web_sessions=None, include_desktop_clients=None, include_mobile_clients=None): self._cursor_value = bb.NOT_SET self._include_web_sessions_value = bb.NOT_SET self._include_desktop_clients_value = bb.NOT_SET self._include_mobile_clients_value = bb.NOT_SET if cursor is not None: self.cursor = cursor if include_web_sessions is not None: self.include_web_sessions = include_web_sessions if include_desktop_clients is not None: self.include_desktop_clients = include_desktop_clients if include_mobile_clients is not None: self.include_mobile_clients = include_mobile_clients # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) # Instance attribute type: bool (validator is set below) include_web_sessions = bb.Attribute("include_web_sessions") # Instance attribute type: bool (validator is set below) include_desktop_clients = bb.Attribute("include_desktop_clients") # Instance attribute type: bool (validator is set below) include_mobile_clients = bb.Attribute("include_mobile_clients") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListTeamDevicesArg, self)._process_custom_annotations(annotation_type, field_path, processor) ListTeamDevicesArg_validator = bv.Struct(ListTeamDevicesArg) class ListTeamDevicesError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.ListTeamDevicesError.reset: Indicates that the cursor has been invalidated. Call :meth:`dropbox.dropbox_client.Dropbox.team_devices_list_team_devices` again with an empty cursor to obtain a new cursor. """ _catch_all = 'other' # Attribute is overwritten below the class definition reset = None # Attribute is overwritten below the class definition other = None def is_reset(self): """ Check if the union tag is ``reset``. :rtype: bool """ return self._tag == 'reset' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListTeamDevicesError, self)._process_custom_annotations(annotation_type, field_path, processor) ListTeamDevicesError_validator = bv.Union(ListTeamDevicesError) class ListTeamDevicesResult(bb.Struct): """ :ivar team.ListTeamDevicesResult.devices: The devices of each member of the team. :ivar team.ListTeamDevicesResult.has_more: If true, then there are more devices available. Pass the cursor to :meth:`dropbox.dropbox_client.Dropbox.team_devices_list_team_devices` to retrieve the rest. :ivar team.ListTeamDevicesResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.team_devices_list_team_devices` to receive the next sub list of team's devices. """ __slots__ = [ '_devices_value', '_has_more_value', '_cursor_value', ] _has_required_fields = True def __init__(self, devices=None, has_more=None, cursor=None): self._devices_value = bb.NOT_SET self._has_more_value = bb.NOT_SET self._cursor_value = bb.NOT_SET if devices is not None: self.devices = devices if has_more is not None: self.has_more = has_more if cursor is not None: self.cursor = cursor # Instance attribute type: list of [MemberDevices] (validator is set below) devices = bb.Attribute("devices") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ListTeamDevicesResult, self)._process_custom_annotations(annotation_type, field_path, processor) ListTeamDevicesResult_validator = bv.Struct(ListTeamDevicesResult) class MemberAccess(bb.Struct): """ Specify access type a member should have when joined to a group. :ivar team.MemberAccess.user: Identity of a user. :ivar team.MemberAccess.access_type: Access type. """ __slots__ = [ '_user_value', '_access_type_value', ] _has_required_fields = True def __init__(self, user=None, access_type=None): self._user_value = bb.NOT_SET self._access_type_value = bb.NOT_SET if user is not None: self.user = user if access_type is not None: self.access_type = access_type # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) # Instance attribute type: GroupAccessType (validator is set below) access_type = bb.Attribute("access_type", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAccess, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAccess_validator = bv.Struct(MemberAccess) class MemberAddArgBase(bb.Struct): """ :ivar team.MemberAddArgBase.member_given_name: Member's first name. :ivar team.MemberAddArgBase.member_surname: Member's last name. :ivar team.MemberAddArgBase.member_external_id: External ID for member. :ivar team.MemberAddArgBase.member_persistent_id: Persistent ID for member. This field is only available to teams using persistent ID SAML configuration. :ivar team.MemberAddArgBase.send_welcome_email: Whether to send a welcome email to the member. If send_welcome_email is false, no email invitation will be sent to the user. This may be useful for apps using single sign-on (SSO) flows for onboarding that want to handle announcements themselves. :ivar team.MemberAddArgBase.is_directory_restricted: Whether a user is directory restricted. """ __slots__ = [ '_member_email_value', '_member_given_name_value', '_member_surname_value', '_member_external_id_value', '_member_persistent_id_value', '_send_welcome_email_value', '_is_directory_restricted_value', ] _has_required_fields = True def __init__(self, member_email=None, member_given_name=None, member_surname=None, member_external_id=None, member_persistent_id=None, send_welcome_email=None, is_directory_restricted=None): self._member_email_value = bb.NOT_SET self._member_given_name_value = bb.NOT_SET self._member_surname_value = bb.NOT_SET self._member_external_id_value = bb.NOT_SET self._member_persistent_id_value = bb.NOT_SET self._send_welcome_email_value = bb.NOT_SET self._is_directory_restricted_value = bb.NOT_SET if member_email is not None: self.member_email = member_email if member_given_name is not None: self.member_given_name = member_given_name if member_surname is not None: self.member_surname = member_surname if member_external_id is not None: self.member_external_id = member_external_id if member_persistent_id is not None: self.member_persistent_id = member_persistent_id if send_welcome_email is not None: self.send_welcome_email = send_welcome_email if is_directory_restricted is not None: self.is_directory_restricted = is_directory_restricted # Instance attribute type: str (validator is set below) member_email = bb.Attribute("member_email") # Instance attribute type: str (validator is set below) member_given_name = bb.Attribute("member_given_name", nullable=True) # Instance attribute type: str (validator is set below) member_surname = bb.Attribute("member_surname", nullable=True) # Instance attribute type: str (validator is set below) member_external_id = bb.Attribute("member_external_id", nullable=True) # Instance attribute type: str (validator is set below) member_persistent_id = bb.Attribute("member_persistent_id", nullable=True) # Instance attribute type: bool (validator is set below) send_welcome_email = bb.Attribute("send_welcome_email") # Instance attribute type: bool (validator is set below) is_directory_restricted = bb.Attribute("is_directory_restricted", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAddArgBase, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAddArgBase_validator = bv.Struct(MemberAddArgBase) class MemberAddArg(MemberAddArgBase): __slots__ = [ '_role_value', ] _has_required_fields = True def __init__(self, member_email=None, member_given_name=None, member_surname=None, member_external_id=None, member_persistent_id=None, send_welcome_email=None, is_directory_restricted=None, role=None): super(MemberAddArg, self).__init__(member_email, member_given_name, member_surname, member_external_id, member_persistent_id, send_welcome_email, is_directory_restricted) self._role_value = bb.NOT_SET if role is not None: self.role = role # Instance attribute type: AdminTier (validator is set below) role = bb.Attribute("role", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAddArg, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAddArg_validator = bv.Struct(MemberAddArg) class MemberAddResultBase(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str team.MemberAddResultBase.team_license_limit: Team is already full. The organization has no available licenses. :ivar str team.MemberAddResultBase.free_team_member_limit_reached: Team is already full. The free team member limit has been reached. :ivar str team.MemberAddResultBase.user_already_on_team: User is already on this team. The provided email address is associated with a user who is already a member of (including in recoverable state) or invited to the team. :ivar str team.MemberAddResultBase.user_on_another_team: User is already on another team. The provided email address is associated with a user that is already a member or invited to another team. :ivar str team.MemberAddResultBase.user_already_paired: User is already paired. :ivar str team.MemberAddResultBase.user_migration_failed: User migration has failed. :ivar str team.MemberAddResultBase.duplicate_external_member_id: A user with the given external member ID already exists on the team (including in recoverable state). :ivar str team.MemberAddResultBase.duplicate_member_persistent_id: A user with the given persistent ID already exists on the team (including in recoverable state). :ivar str team.MemberAddResultBase.persistent_id_disabled: Persistent ID is only available to teams with persistent ID SAML configuration. Please contact Dropbox for more information. :ivar str team.MemberAddResultBase.user_creation_failed: User creation has failed. """ _catch_all = None @classmethod def team_license_limit(cls, val): """ Create an instance of this class set to the ``team_license_limit`` tag with value ``val``. :param str val: :rtype: MemberAddResultBase """ return cls('team_license_limit', val) @classmethod def free_team_member_limit_reached(cls, val): """ Create an instance of this class set to the ``free_team_member_limit_reached`` tag with value ``val``. :param str val: :rtype: MemberAddResultBase """ return cls('free_team_member_limit_reached', val) @classmethod def user_already_on_team(cls, val): """ Create an instance of this class set to the ``user_already_on_team`` tag with value ``val``. :param str val: :rtype: MemberAddResultBase """ return cls('user_already_on_team', val) @classmethod def user_on_another_team(cls, val): """ Create an instance of this class set to the ``user_on_another_team`` tag with value ``val``. :param str val: :rtype: MemberAddResultBase """ return cls('user_on_another_team', val) @classmethod def user_already_paired(cls, val): """ Create an instance of this class set to the ``user_already_paired`` tag with value ``val``. :param str val: :rtype: MemberAddResultBase """ return cls('user_already_paired', val) @classmethod def user_migration_failed(cls, val): """ Create an instance of this class set to the ``user_migration_failed`` tag with value ``val``. :param str val: :rtype: MemberAddResultBase """ return cls('user_migration_failed', val) @classmethod def duplicate_external_member_id(cls, val): """ Create an instance of this class set to the ``duplicate_external_member_id`` tag with value ``val``. :param str val: :rtype: MemberAddResultBase """ return cls('duplicate_external_member_id', val) @classmethod def duplicate_member_persistent_id(cls, val): """ Create an instance of this class set to the ``duplicate_member_persistent_id`` tag with value ``val``. :param str val: :rtype: MemberAddResultBase """ return cls('duplicate_member_persistent_id', val) @classmethod def persistent_id_disabled(cls, val): """ Create an instance of this class set to the ``persistent_id_disabled`` tag with value ``val``. :param str val: :rtype: MemberAddResultBase """ return cls('persistent_id_disabled', val) @classmethod def user_creation_failed(cls, val): """ Create an instance of this class set to the ``user_creation_failed`` tag with value ``val``. :param str val: :rtype: MemberAddResultBase """ return cls('user_creation_failed', val) def is_team_license_limit(self): """ Check if the union tag is ``team_license_limit``. :rtype: bool """ return self._tag == 'team_license_limit' def is_free_team_member_limit_reached(self): """ Check if the union tag is ``free_team_member_limit_reached``. :rtype: bool """ return self._tag == 'free_team_member_limit_reached' def is_user_already_on_team(self): """ Check if the union tag is ``user_already_on_team``. :rtype: bool """ return self._tag == 'user_already_on_team' def is_user_on_another_team(self): """ Check if the union tag is ``user_on_another_team``. :rtype: bool """ return self._tag == 'user_on_another_team' def is_user_already_paired(self): """ Check if the union tag is ``user_already_paired``. :rtype: bool """ return self._tag == 'user_already_paired' def is_user_migration_failed(self): """ Check if the union tag is ``user_migration_failed``. :rtype: bool """ return self._tag == 'user_migration_failed' def is_duplicate_external_member_id(self): """ Check if the union tag is ``duplicate_external_member_id``. :rtype: bool """ return self._tag == 'duplicate_external_member_id' def is_duplicate_member_persistent_id(self): """ Check if the union tag is ``duplicate_member_persistent_id``. :rtype: bool """ return self._tag == 'duplicate_member_persistent_id' def is_persistent_id_disabled(self): """ Check if the union tag is ``persistent_id_disabled``. :rtype: bool """ return self._tag == 'persistent_id_disabled' def is_user_creation_failed(self): """ Check if the union tag is ``user_creation_failed``. :rtype: bool """ return self._tag == 'user_creation_failed' def get_team_license_limit(self): """ Team is already full. The organization has no available licenses. Only call this if :meth:`is_team_license_limit` is true. :rtype: str """ if not self.is_team_license_limit(): raise AttributeError("tag 'team_license_limit' not set") return self._value def get_free_team_member_limit_reached(self): """ Team is already full. The free team member limit has been reached. Only call this if :meth:`is_free_team_member_limit_reached` is true. :rtype: str """ if not self.is_free_team_member_limit_reached(): raise AttributeError("tag 'free_team_member_limit_reached' not set") return self._value def get_user_already_on_team(self): """ User is already on this team. The provided email address is associated with a user who is already a member of (including in recoverable state) or invited to the team. Only call this if :meth:`is_user_already_on_team` is true. :rtype: str """ if not self.is_user_already_on_team(): raise AttributeError("tag 'user_already_on_team' not set") return self._value def get_user_on_another_team(self): """ User is already on another team. The provided email address is associated with a user that is already a member or invited to another team. Only call this if :meth:`is_user_on_another_team` is true. :rtype: str """ if not self.is_user_on_another_team(): raise AttributeError("tag 'user_on_another_team' not set") return self._value def get_user_already_paired(self): """ User is already paired. Only call this if :meth:`is_user_already_paired` is true. :rtype: str """ if not self.is_user_already_paired(): raise AttributeError("tag 'user_already_paired' not set") return self._value def get_user_migration_failed(self): """ User migration has failed. Only call this if :meth:`is_user_migration_failed` is true. :rtype: str """ if not self.is_user_migration_failed(): raise AttributeError("tag 'user_migration_failed' not set") return self._value def get_duplicate_external_member_id(self): """ A user with the given external member ID already exists on the team (including in recoverable state). Only call this if :meth:`is_duplicate_external_member_id` is true. :rtype: str """ if not self.is_duplicate_external_member_id(): raise AttributeError("tag 'duplicate_external_member_id' not set") return self._value def get_duplicate_member_persistent_id(self): """ A user with the given persistent ID already exists on the team (including in recoverable state). Only call this if :meth:`is_duplicate_member_persistent_id` is true. :rtype: str """ if not self.is_duplicate_member_persistent_id(): raise AttributeError("tag 'duplicate_member_persistent_id' not set") return self._value def get_persistent_id_disabled(self): """ Persistent ID is only available to teams with persistent ID SAML configuration. Please contact Dropbox for more information. Only call this if :meth:`is_persistent_id_disabled` is true. :rtype: str """ if not self.is_persistent_id_disabled(): raise AttributeError("tag 'persistent_id_disabled' not set") return self._value def get_user_creation_failed(self): """ User creation has failed. Only call this if :meth:`is_user_creation_failed` is true. :rtype: str """ if not self.is_user_creation_failed(): raise AttributeError("tag 'user_creation_failed' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAddResultBase, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAddResultBase_validator = bv.Union(MemberAddResultBase) class MemberAddResult(MemberAddResultBase): """ Describes the result of attempting to add a single user to the team. 'success' is the only value indicating that a user was indeed added to the team - the other values explain the type of failure that occurred, and include the email of the user for which the operation has failed. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar TeamMemberInfo MemberAddResult.success: Describes a user that was successfully added to the team. """ @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param TeamMemberInfo val: :rtype: MemberAddResult """ return cls('success', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def get_success(self): """ Describes a user that was successfully added to the team. Only call this if :meth:`is_success` is true. :rtype: TeamMemberInfo """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAddResult, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAddResult_validator = bv.Union(MemberAddResult) class MemberAddV2Arg(MemberAddArgBase): __slots__ = [ '_role_ids_value', ] _has_required_fields = True def __init__(self, member_email=None, member_given_name=None, member_surname=None, member_external_id=None, member_persistent_id=None, send_welcome_email=None, is_directory_restricted=None, role_ids=None): super(MemberAddV2Arg, self).__init__(member_email, member_given_name, member_surname, member_external_id, member_persistent_id, send_welcome_email, is_directory_restricted) self._role_ids_value = bb.NOT_SET if role_ids is not None: self.role_ids = role_ids # Instance attribute type: list of [str] (validator is set below) role_ids = bb.Attribute("role_ids", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAddV2Arg, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAddV2Arg_validator = bv.Struct(MemberAddV2Arg) class MemberAddV2Result(MemberAddResultBase): """ Describes the result of attempting to add a single user to the team. 'success' is the only value indicating that a user was indeed added to the team - the other values explain the type of failure that occurred, and include the email of the user for which the operation has failed. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar TeamMemberInfoV2 MemberAddV2Result.success: Describes a user that was successfully added to the team. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param TeamMemberInfoV2 val: :rtype: MemberAddV2Result """ return cls('success', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_success(self): """ Describes a user that was successfully added to the team. Only call this if :meth:`is_success` is true. :rtype: TeamMemberInfoV2 """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAddV2Result, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAddV2Result_validator = bv.Union(MemberAddV2Result) class MemberDevices(bb.Struct): """ Information on devices of a team's member. :ivar team.MemberDevices.team_member_id: The member unique Id. :ivar team.MemberDevices.web_sessions: List of web sessions made by this team member. :ivar team.MemberDevices.desktop_clients: List of desktop clients by this team member. :ivar team.MemberDevices.mobile_clients: List of mobile clients by this team member. """ __slots__ = [ '_team_member_id_value', '_web_sessions_value', '_desktop_clients_value', '_mobile_clients_value', ] _has_required_fields = True def __init__(self, team_member_id=None, web_sessions=None, desktop_clients=None, mobile_clients=None): self._team_member_id_value = bb.NOT_SET self._web_sessions_value = bb.NOT_SET self._desktop_clients_value = bb.NOT_SET self._mobile_clients_value = bb.NOT_SET if team_member_id is not None: self.team_member_id = team_member_id if web_sessions is not None: self.web_sessions = web_sessions if desktop_clients is not None: self.desktop_clients = desktop_clients if mobile_clients is not None: self.mobile_clients = mobile_clients # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id") # Instance attribute type: list of [ActiveWebSession] (validator is set below) web_sessions = bb.Attribute("web_sessions", nullable=True) # Instance attribute type: list of [DesktopClientSession] (validator is set below) desktop_clients = bb.Attribute("desktop_clients", nullable=True) # Instance attribute type: list of [MobileClientSession] (validator is set below) mobile_clients = bb.Attribute("mobile_clients", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberDevices, self)._process_custom_annotations(annotation_type, field_path, processor) MemberDevices_validator = bv.Struct(MemberDevices) class MemberLinkedApps(bb.Struct): """ Information on linked applications of a team member. :ivar team.MemberLinkedApps.team_member_id: The member unique Id. :ivar team.MemberLinkedApps.linked_api_apps: List of third party applications linked by this team member. """ __slots__ = [ '_team_member_id_value', '_linked_api_apps_value', ] _has_required_fields = True def __init__(self, team_member_id=None, linked_api_apps=None): self._team_member_id_value = bb.NOT_SET self._linked_api_apps_value = bb.NOT_SET if team_member_id is not None: self.team_member_id = team_member_id if linked_api_apps is not None: self.linked_api_apps = linked_api_apps # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id") # Instance attribute type: list of [ApiApp] (validator is set below) linked_api_apps = bb.Attribute("linked_api_apps") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberLinkedApps, self)._process_custom_annotations(annotation_type, field_path, processor) MemberLinkedApps_validator = bv.Struct(MemberLinkedApps) class MemberProfile(bb.Struct): """ Basic member profile. :ivar team.MemberProfile.team_member_id: ID of user as a member of a team. :ivar team.MemberProfile.external_id: External ID that a team can attach to the user. An application using the API may find it easier to use their own IDs instead of Dropbox IDs like account_id or team_member_id. :ivar team.MemberProfile.account_id: A user's account identifier. :ivar team.MemberProfile.email: Email address of user. :ivar team.MemberProfile.email_verified: Is true if the user's email is verified to be owned by the user. :ivar team.MemberProfile.secondary_emails: Secondary emails of a user. :ivar team.MemberProfile.status: The user's status as a member of a specific team. :ivar team.MemberProfile.name: Representations for a person's name. :ivar team.MemberProfile.membership_type: The user's membership type: full (normal team member) vs limited (does not use a license; no access to the team's shared quota). :ivar team.MemberProfile.invited_on: The date and time the user was invited to the team (contains value only when the member's status matches ``TeamMemberStatus.invited``). :ivar team.MemberProfile.joined_on: The date and time the user joined as a member of a specific team. :ivar team.MemberProfile.suspended_on: The date and time the user was suspended from the team (contains value only when the member's status matches ``TeamMemberStatus.suspended``). :ivar team.MemberProfile.persistent_id: Persistent ID that a team can attach to the user. The persistent ID is unique ID to be used for SAML authentication. :ivar team.MemberProfile.is_directory_restricted: Whether the user is a directory restricted user. :ivar team.MemberProfile.profile_photo_url: URL for the photo representing the user, if one is set. """ __slots__ = [ '_team_member_id_value', '_external_id_value', '_account_id_value', '_email_value', '_email_verified_value', '_secondary_emails_value', '_status_value', '_name_value', '_membership_type_value', '_invited_on_value', '_joined_on_value', '_suspended_on_value', '_persistent_id_value', '_is_directory_restricted_value', '_profile_photo_url_value', ] _has_required_fields = True def __init__(self, team_member_id=None, email=None, email_verified=None, status=None, name=None, membership_type=None, external_id=None, account_id=None, secondary_emails=None, invited_on=None, joined_on=None, suspended_on=None, persistent_id=None, is_directory_restricted=None, profile_photo_url=None): self._team_member_id_value = bb.NOT_SET self._external_id_value = bb.NOT_SET self._account_id_value = bb.NOT_SET self._email_value = bb.NOT_SET self._email_verified_value = bb.NOT_SET self._secondary_emails_value = bb.NOT_SET self._status_value = bb.NOT_SET self._name_value = bb.NOT_SET self._membership_type_value = bb.NOT_SET self._invited_on_value = bb.NOT_SET self._joined_on_value = bb.NOT_SET self._suspended_on_value = bb.NOT_SET self._persistent_id_value = bb.NOT_SET self._is_directory_restricted_value = bb.NOT_SET self._profile_photo_url_value = bb.NOT_SET if team_member_id is not None: self.team_member_id = team_member_id if external_id is not None: self.external_id = external_id if account_id is not None: self.account_id = account_id if email is not None: self.email = email if email_verified is not None: self.email_verified = email_verified if secondary_emails is not None: self.secondary_emails = secondary_emails if status is not None: self.status = status if name is not None: self.name = name if membership_type is not None: self.membership_type = membership_type if invited_on is not None: self.invited_on = invited_on if joined_on is not None: self.joined_on = joined_on if suspended_on is not None: self.suspended_on = suspended_on if persistent_id is not None: self.persistent_id = persistent_id if is_directory_restricted is not None: self.is_directory_restricted = is_directory_restricted if profile_photo_url is not None: self.profile_photo_url = profile_photo_url # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id") # Instance attribute type: str (validator is set below) external_id = bb.Attribute("external_id", nullable=True) # Instance attribute type: str (validator is set below) account_id = bb.Attribute("account_id", nullable=True) # Instance attribute type: str (validator is set below) email = bb.Attribute("email") # Instance attribute type: bool (validator is set below) email_verified = bb.Attribute("email_verified") # Instance attribute type: list of [secondary_emails.SecondaryEmail] (validator is set below) secondary_emails = bb.Attribute("secondary_emails", nullable=True) # Instance attribute type: TeamMemberStatus (validator is set below) status = bb.Attribute("status", user_defined=True) # Instance attribute type: users.Name (validator is set below) name = bb.Attribute("name", user_defined=True) # Instance attribute type: TeamMembershipType (validator is set below) membership_type = bb.Attribute("membership_type", user_defined=True) # Instance attribute type: datetime.datetime (validator is set below) invited_on = bb.Attribute("invited_on", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) joined_on = bb.Attribute("joined_on", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) suspended_on = bb.Attribute("suspended_on", nullable=True) # Instance attribute type: str (validator is set below) persistent_id = bb.Attribute("persistent_id", nullable=True) # Instance attribute type: bool (validator is set below) is_directory_restricted = bb.Attribute("is_directory_restricted", nullable=True) # Instance attribute type: str (validator is set below) profile_photo_url = bb.Attribute("profile_photo_url", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberProfile, self)._process_custom_annotations(annotation_type, field_path, processor) MemberProfile_validator = bv.Struct(MemberProfile) class UserSelectorError(bb.Union): """ Error that can be returned whenever a struct derived from :class:`UserSelectorArg` is used. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.UserSelectorError.user_not_found: No matching user found. The provided team_member_id, email, or external_id does not exist on this team. """ _catch_all = None # Attribute is overwritten below the class definition user_not_found = None def is_user_not_found(self): """ Check if the union tag is ``user_not_found``. :rtype: bool """ return self._tag == 'user_not_found' def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserSelectorError, self)._process_custom_annotations(annotation_type, field_path, processor) UserSelectorError_validator = bv.Union(UserSelectorError) class MemberSelectorError(UserSelectorError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MemberSelectorError.user_not_in_team: The user is not a member of the team. """ # Attribute is overwritten below the class definition user_not_in_team = None def is_user_not_in_team(self): """ Check if the union tag is ``user_not_in_team``. :rtype: bool """ return self._tag == 'user_not_in_team' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSelectorError, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSelectorError_validator = bv.Union(MemberSelectorError) class MembersAddArgBase(bb.Struct): """ :ivar team.MembersAddArgBase.force_async: Whether to force the add to happen asynchronously. """ __slots__ = [ '_force_async_value', ] _has_required_fields = False def __init__(self, force_async=None): self._force_async_value = bb.NOT_SET if force_async is not None: self.force_async = force_async # Instance attribute type: bool (validator is set below) force_async = bb.Attribute("force_async") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersAddArgBase, self)._process_custom_annotations(annotation_type, field_path, processor) MembersAddArgBase_validator = bv.Struct(MembersAddArgBase) class MembersAddArg(MembersAddArgBase): """ :ivar team.MembersAddArg.new_members: Details of new members to be added to the team. """ __slots__ = [ '_new_members_value', ] _has_required_fields = True def __init__(self, new_members=None, force_async=None): super(MembersAddArg, self).__init__(force_async) self._new_members_value = bb.NOT_SET if new_members is not None: self.new_members = new_members # Instance attribute type: list of [MemberAddArg] (validator is set below) new_members = bb.Attribute("new_members") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersAddArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersAddArg_validator = bv.Struct(MembersAddArg) class MembersAddJobStatus(async_.PollResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar list of [MemberAddResult] team.MembersAddJobStatus.complete: The asynchronous job has finished. For each member that was specified in the parameter :type:`MembersAddArg` that was provided to :route:`members/add`, a corresponding item is returned in this list. :ivar str team.MembersAddJobStatus.failed: The asynchronous job returned an error. The string contains an error message. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param list of [MemberAddResult] val: :rtype: MembersAddJobStatus """ return cls('complete', val) @classmethod def failed(cls, val): """ Create an instance of this class set to the ``failed`` tag with value ``val``. :param str val: :rtype: MembersAddJobStatus """ return cls('failed', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_failed(self): """ Check if the union tag is ``failed``. :rtype: bool """ return self._tag == 'failed' def get_complete(self): """ The asynchronous job has finished. For each member that was specified in the parameter :class:`MembersAddArg` that was provided to :meth:`dropbox.dropbox_client.Dropbox.team_members_add`, a corresponding item is returned in this list. Only call this if :meth:`is_complete` is true. :rtype: list of [MemberAddResult] """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def get_failed(self): """ The asynchronous job returned an error. The string contains an error message. Only call this if :meth:`is_failed` is true. :rtype: str """ if not self.is_failed(): raise AttributeError("tag 'failed' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersAddJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor) MembersAddJobStatus_validator = bv.Union(MembersAddJobStatus) class MembersAddJobStatusV2Result(async_.PollResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar list of [MemberAddV2Result] team.MembersAddJobStatusV2Result.complete: The asynchronous job has finished. For each member that was specified in the parameter :type:`MembersAddArg` that was provided to :route:`members/add:2`, a corresponding item is returned in this list. :ivar str team.MembersAddJobStatusV2Result.failed: The asynchronous job returned an error. The string contains an error message. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param list of [MemberAddV2Result] val: :rtype: MembersAddJobStatusV2Result """ return cls('complete', val) @classmethod def failed(cls, val): """ Create an instance of this class set to the ``failed`` tag with value ``val``. :param str val: :rtype: MembersAddJobStatusV2Result """ return cls('failed', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_failed(self): """ Check if the union tag is ``failed``. :rtype: bool """ return self._tag == 'failed' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_complete(self): """ The asynchronous job has finished. For each member that was specified in the parameter :class:`MembersAddArg` that was provided to :meth:`dropbox.dropbox_client.Dropbox.team_members_add`, a corresponding item is returned in this list. Only call this if :meth:`is_complete` is true. :rtype: list of [MemberAddV2Result] """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def get_failed(self): """ The asynchronous job returned an error. The string contains an error message. Only call this if :meth:`is_failed` is true. :rtype: str """ if not self.is_failed(): raise AttributeError("tag 'failed' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersAddJobStatusV2Result, self)._process_custom_annotations(annotation_type, field_path, processor) MembersAddJobStatusV2Result_validator = bv.Union(MembersAddJobStatusV2Result) class MembersAddLaunch(async_.LaunchResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param list of [MemberAddResult] val: :rtype: MembersAddLaunch """ return cls('complete', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def get_complete(self): """ Only call this if :meth:`is_complete` is true. :rtype: list of [MemberAddResult] """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersAddLaunch, self)._process_custom_annotations(annotation_type, field_path, processor) MembersAddLaunch_validator = bv.Union(MembersAddLaunch) class MembersAddLaunchV2Result(async_.LaunchResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param list of [MemberAddV2Result] val: :rtype: MembersAddLaunchV2Result """ return cls('complete', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_complete(self): """ Only call this if :meth:`is_complete` is true. :rtype: list of [MemberAddV2Result] """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersAddLaunchV2Result, self)._process_custom_annotations(annotation_type, field_path, processor) MembersAddLaunchV2Result_validator = bv.Union(MembersAddLaunchV2Result) class MembersAddV2Arg(MembersAddArgBase): """ :ivar team.MembersAddV2Arg.new_members: Details of new members to be added to the team. """ __slots__ = [ '_new_members_value', ] _has_required_fields = True def __init__(self, new_members=None, force_async=None): super(MembersAddV2Arg, self).__init__(force_async) self._new_members_value = bb.NOT_SET if new_members is not None: self.new_members = new_members # Instance attribute type: list of [MemberAddV2Arg] (validator is set below) new_members = bb.Attribute("new_members") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersAddV2Arg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersAddV2Arg_validator = bv.Struct(MembersAddV2Arg) class MembersDeactivateBaseArg(bb.Struct): """ Exactly one of team_member_id, email, or external_id must be provided to identify the user account. :ivar team.MembersDeactivateBaseArg.user: Identity of user to remove/suspend/have their files moved. """ __slots__ = [ '_user_value', ] _has_required_fields = True def __init__(self, user=None): self._user_value = bb.NOT_SET if user is not None: self.user = user # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersDeactivateBaseArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersDeactivateBaseArg_validator = bv.Struct(MembersDeactivateBaseArg) class MembersDataTransferArg(MembersDeactivateBaseArg): """ :ivar team.MembersDataTransferArg.transfer_dest_id: Files from the deleted member account will be transferred to this user. :ivar team.MembersDataTransferArg.transfer_admin_id: Errors during the transfer process will be sent via email to this user. """ __slots__ = [ '_transfer_dest_id_value', '_transfer_admin_id_value', ] _has_required_fields = True def __init__(self, user=None, transfer_dest_id=None, transfer_admin_id=None): super(MembersDataTransferArg, self).__init__(user) self._transfer_dest_id_value = bb.NOT_SET self._transfer_admin_id_value = bb.NOT_SET if transfer_dest_id is not None: self.transfer_dest_id = transfer_dest_id if transfer_admin_id is not None: self.transfer_admin_id = transfer_admin_id # Instance attribute type: UserSelectorArg (validator is set below) transfer_dest_id = bb.Attribute("transfer_dest_id", user_defined=True) # Instance attribute type: UserSelectorArg (validator is set below) transfer_admin_id = bb.Attribute("transfer_admin_id", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersDataTransferArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersDataTransferArg_validator = bv.Struct(MembersDataTransferArg) class MembersDeactivateArg(MembersDeactivateBaseArg): """ :ivar team.MembersDeactivateArg.wipe_data: If provided, controls if the user's data will be deleted on their linked devices. """ __slots__ = [ '_wipe_data_value', ] _has_required_fields = True def __init__(self, user=None, wipe_data=None): super(MembersDeactivateArg, self).__init__(user) self._wipe_data_value = bb.NOT_SET if wipe_data is not None: self.wipe_data = wipe_data # Instance attribute type: bool (validator is set below) wipe_data = bb.Attribute("wipe_data") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersDeactivateArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersDeactivateArg_validator = bv.Struct(MembersDeactivateArg) class MembersDeactivateError(UserSelectorError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersDeactivateError.user_not_in_team: The user is not a member of the team. """ _catch_all = 'other' # Attribute is overwritten below the class definition user_not_in_team = None # Attribute is overwritten below the class definition other = None def is_user_not_in_team(self): """ Check if the union tag is ``user_not_in_team``. :rtype: bool """ return self._tag == 'user_not_in_team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersDeactivateError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersDeactivateError_validator = bv.Union(MembersDeactivateError) class MembersDeleteProfilePhotoArg(bb.Struct): """ :ivar team.MembersDeleteProfilePhotoArg.user: Identity of the user whose profile photo will be deleted. """ __slots__ = [ '_user_value', ] _has_required_fields = True def __init__(self, user=None): self._user_value = bb.NOT_SET if user is not None: self.user = user # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersDeleteProfilePhotoArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersDeleteProfilePhotoArg_validator = bv.Struct(MembersDeleteProfilePhotoArg) class MembersDeleteProfilePhotoError(MemberSelectorError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersDeleteProfilePhotoError.set_profile_disallowed: Modifying deleted users is not allowed. """ _catch_all = 'other' # Attribute is overwritten below the class definition set_profile_disallowed = None # Attribute is overwritten below the class definition other = None def is_set_profile_disallowed(self): """ Check if the union tag is ``set_profile_disallowed``. :rtype: bool """ return self._tag == 'set_profile_disallowed' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersDeleteProfilePhotoError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersDeleteProfilePhotoError_validator = bv.Union(MembersDeleteProfilePhotoError) class MembersGetAvailableTeamMemberRolesResult(bb.Struct): """ Available TeamMemberRole for the connected team. To be used with :meth:`dropbox.dropbox_client.Dropbox.team_members_set_admin_permissions`. :ivar team.MembersGetAvailableTeamMemberRolesResult.roles: Available roles. """ __slots__ = [ '_roles_value', ] _has_required_fields = True def __init__(self, roles=None): self._roles_value = bb.NOT_SET if roles is not None: self.roles = roles # Instance attribute type: list of [TeamMemberRole] (validator is set below) roles = bb.Attribute("roles") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersGetAvailableTeamMemberRolesResult, self)._process_custom_annotations(annotation_type, field_path, processor) MembersGetAvailableTeamMemberRolesResult_validator = bv.Struct(MembersGetAvailableTeamMemberRolesResult) class MembersGetInfoArgs(bb.Struct): """ :ivar team.MembersGetInfoArgs.members: List of team members. """ __slots__ = [ '_members_value', ] _has_required_fields = True def __init__(self, members=None): self._members_value = bb.NOT_SET if members is not None: self.members = members # Instance attribute type: list of [UserSelectorArg] (validator is set below) members = bb.Attribute("members") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersGetInfoArgs, self)._process_custom_annotations(annotation_type, field_path, processor) MembersGetInfoArgs_validator = bv.Struct(MembersGetInfoArgs) class MembersGetInfoError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersGetInfoError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersGetInfoError_validator = bv.Union(MembersGetInfoError) class MembersGetInfoItemBase(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str team.MembersGetInfoItemBase.id_not_found: An ID that was provided as a parameter to :route:`members/get_info` or :route:`members/get_info:2`, and did not match a corresponding user. This might be a team_member_id, an email, or an external ID, depending on how the method was called. """ _catch_all = None @classmethod def id_not_found(cls, val): """ Create an instance of this class set to the ``id_not_found`` tag with value ``val``. :param str val: :rtype: MembersGetInfoItemBase """ return cls('id_not_found', val) def is_id_not_found(self): """ Check if the union tag is ``id_not_found``. :rtype: bool """ return self._tag == 'id_not_found' def get_id_not_found(self): """ An ID that was provided as a parameter to :meth:`dropbox.dropbox_client.Dropbox.team_members_get_info` or :meth:`dropbox.dropbox_client.Dropbox.team_members_get_info`, and did not match a corresponding user. This might be a team_member_id, an email, or an external ID, depending on how the method was called. Only call this if :meth:`is_id_not_found` is true. :rtype: str """ if not self.is_id_not_found(): raise AttributeError("tag 'id_not_found' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersGetInfoItemBase, self)._process_custom_annotations(annotation_type, field_path, processor) MembersGetInfoItemBase_validator = bv.Union(MembersGetInfoItemBase) class MembersGetInfoItem(MembersGetInfoItemBase): """ Describes a result obtained for a single user whose id was specified in the parameter of :meth:`dropbox.dropbox_client.Dropbox.team_members_get_info`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar TeamMemberInfo MembersGetInfoItem.member_info: Info about a team member. """ @classmethod def member_info(cls, val): """ Create an instance of this class set to the ``member_info`` tag with value ``val``. :param TeamMemberInfo val: :rtype: MembersGetInfoItem """ return cls('member_info', val) def is_member_info(self): """ Check if the union tag is ``member_info``. :rtype: bool """ return self._tag == 'member_info' def get_member_info(self): """ Info about a team member. Only call this if :meth:`is_member_info` is true. :rtype: TeamMemberInfo """ if not self.is_member_info(): raise AttributeError("tag 'member_info' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersGetInfoItem, self)._process_custom_annotations(annotation_type, field_path, processor) MembersGetInfoItem_validator = bv.Union(MembersGetInfoItem) class MembersGetInfoItemV2(MembersGetInfoItemBase): """ Describes a result obtained for a single user whose id was specified in the parameter of :meth:`dropbox.dropbox_client.Dropbox.team_members_get_info`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar TeamMemberInfoV2 MembersGetInfoItemV2.member_info: Info about a team member. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def member_info(cls, val): """ Create an instance of this class set to the ``member_info`` tag with value ``val``. :param TeamMemberInfoV2 val: :rtype: MembersGetInfoItemV2 """ return cls('member_info', val) def is_member_info(self): """ Check if the union tag is ``member_info``. :rtype: bool """ return self._tag == 'member_info' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_member_info(self): """ Info about a team member. Only call this if :meth:`is_member_info` is true. :rtype: TeamMemberInfoV2 """ if not self.is_member_info(): raise AttributeError("tag 'member_info' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersGetInfoItemV2, self)._process_custom_annotations(annotation_type, field_path, processor) MembersGetInfoItemV2_validator = bv.Union(MembersGetInfoItemV2) class MembersGetInfoV2Arg(bb.Struct): """ :ivar team.MembersGetInfoV2Arg.members: List of team members. """ __slots__ = [ '_members_value', ] _has_required_fields = True def __init__(self, members=None): self._members_value = bb.NOT_SET if members is not None: self.members = members # Instance attribute type: list of [UserSelectorArg] (validator is set below) members = bb.Attribute("members") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersGetInfoV2Arg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersGetInfoV2Arg_validator = bv.Struct(MembersGetInfoV2Arg) class MembersGetInfoV2Result(bb.Struct): """ :ivar team.MembersGetInfoV2Result.members_info: List of team members info. """ __slots__ = [ '_members_info_value', ] _has_required_fields = True def __init__(self, members_info=None): self._members_info_value = bb.NOT_SET if members_info is not None: self.members_info = members_info # Instance attribute type: list of [MembersGetInfoItemV2] (validator is set below) members_info = bb.Attribute("members_info") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersGetInfoV2Result, self)._process_custom_annotations(annotation_type, field_path, processor) MembersGetInfoV2Result_validator = bv.Struct(MembersGetInfoV2Result) class MembersInfo(bb.Struct): """ :ivar team.MembersInfo.team_member_ids: Team member IDs of the users under this hold. :ivar team.MembersInfo.permanently_deleted_users: The number of permanently deleted users that were under this hold. """ __slots__ = [ '_team_member_ids_value', '_permanently_deleted_users_value', ] _has_required_fields = True def __init__(self, team_member_ids=None, permanently_deleted_users=None): self._team_member_ids_value = bb.NOT_SET self._permanently_deleted_users_value = bb.NOT_SET if team_member_ids is not None: self.team_member_ids = team_member_ids if permanently_deleted_users is not None: self.permanently_deleted_users = permanently_deleted_users # Instance attribute type: list of [str] (validator is set below) team_member_ids = bb.Attribute("team_member_ids") # Instance attribute type: int (validator is set below) permanently_deleted_users = bb.Attribute("permanently_deleted_users") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersInfo, self)._process_custom_annotations(annotation_type, field_path, processor) MembersInfo_validator = bv.Struct(MembersInfo) class MembersListArg(bb.Struct): """ :ivar team.MembersListArg.limit: Number of results to return per call. :ivar team.MembersListArg.include_removed: Whether to return removed members. """ __slots__ = [ '_limit_value', '_include_removed_value', ] _has_required_fields = False def __init__(self, limit=None, include_removed=None): self._limit_value = bb.NOT_SET self._include_removed_value = bb.NOT_SET if limit is not None: self.limit = limit if include_removed is not None: self.include_removed = include_removed # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") # Instance attribute type: bool (validator is set below) include_removed = bb.Attribute("include_removed") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersListArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersListArg_validator = bv.Struct(MembersListArg) class MembersListContinueArg(bb.Struct): """ :ivar team.MembersListContinueArg.cursor: Indicates from what point to get the next set of members. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersListContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersListContinueArg_validator = bv.Struct(MembersListContinueArg) class MembersListContinueError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersListContinueError.invalid_cursor: The cursor is invalid. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_cursor = None # Attribute is overwritten below the class definition other = None def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersListContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersListContinueError_validator = bv.Union(MembersListContinueError) class MembersListError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersListError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersListError_validator = bv.Union(MembersListError) class MembersListResult(bb.Struct): """ :ivar team.MembersListResult.members: List of team members. :ivar team.MembersListResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.team_members_list_continue` to obtain the additional members. :ivar team.MembersListResult.has_more: Is true if there are additional team members that have not been returned yet. An additional call to :meth:`dropbox.dropbox_client.Dropbox.team_members_list_continue` can retrieve them. """ __slots__ = [ '_members_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, members=None, cursor=None, has_more=None): self._members_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if members is not None: self.members = members if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [TeamMemberInfo] (validator is set below) members = bb.Attribute("members") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersListResult, self)._process_custom_annotations(annotation_type, field_path, processor) MembersListResult_validator = bv.Struct(MembersListResult) class MembersListV2Result(bb.Struct): """ :ivar team.MembersListV2Result.members: List of team members. :ivar team.MembersListV2Result.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.team_members_list_continue` to obtain the additional members. :ivar team.MembersListV2Result.has_more: Is true if there are additional team members that have not been returned yet. An additional call to :meth:`dropbox.dropbox_client.Dropbox.team_members_list_continue` can retrieve them. """ __slots__ = [ '_members_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, members=None, cursor=None, has_more=None): self._members_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if members is not None: self.members = members if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [TeamMemberInfoV2] (validator is set below) members = bb.Attribute("members") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersListV2Result, self)._process_custom_annotations(annotation_type, field_path, processor) MembersListV2Result_validator = bv.Struct(MembersListV2Result) class MembersRecoverArg(bb.Struct): """ Exactly one of team_member_id, email, or external_id must be provided to identify the user account. :ivar team.MembersRecoverArg.user: Identity of user to recover. """ __slots__ = [ '_user_value', ] _has_required_fields = True def __init__(self, user=None): self._user_value = bb.NOT_SET if user is not None: self.user = user # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersRecoverArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersRecoverArg_validator = bv.Struct(MembersRecoverArg) class MembersRecoverError(UserSelectorError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersRecoverError.user_unrecoverable: The user is not recoverable. :ivar team.MembersRecoverError.user_not_in_team: The user is not a member of the team. :ivar team.MembersRecoverError.team_license_limit: Team is full. The organization has no available licenses. """ _catch_all = 'other' # Attribute is overwritten below the class definition user_unrecoverable = None # Attribute is overwritten below the class definition user_not_in_team = None # Attribute is overwritten below the class definition team_license_limit = None # Attribute is overwritten below the class definition other = None def is_user_unrecoverable(self): """ Check if the union tag is ``user_unrecoverable``. :rtype: bool """ return self._tag == 'user_unrecoverable' def is_user_not_in_team(self): """ Check if the union tag is ``user_not_in_team``. :rtype: bool """ return self._tag == 'user_not_in_team' def is_team_license_limit(self): """ Check if the union tag is ``team_license_limit``. :rtype: bool """ return self._tag == 'team_license_limit' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersRecoverError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersRecoverError_validator = bv.Union(MembersRecoverError) class MembersRemoveArg(MembersDeactivateArg): """ :ivar team.MembersRemoveArg.transfer_dest_id: If provided, files from the deleted member account will be transferred to this user. :ivar team.MembersRemoveArg.transfer_admin_id: If provided, errors during the transfer process will be sent via email to this user. If the transfer_dest_id argument was provided, then this argument must be provided as well. :ivar team.MembersRemoveArg.keep_account: Downgrade the member to a Basic account. The user will retain the email address associated with their Dropbox account and data in their account that is not restricted to team members. In order to keep the account the argument ``wipe_data`` should be set to ``False``. :ivar team.MembersRemoveArg.retain_team_shares: If provided, allows removed users to keep access to Dropbox folders (not Dropbox Paper folders) already explicitly shared with them (not via a group) when they are downgraded to a Basic account. Users will not retain access to folders that do not allow external sharing. In order to keep the sharing relationships, the arguments ``wipe_data`` should be set to ``False`` and ``keep_account`` should be set to ``True``. """ __slots__ = [ '_transfer_dest_id_value', '_transfer_admin_id_value', '_keep_account_value', '_retain_team_shares_value', ] _has_required_fields = True def __init__(self, user=None, wipe_data=None, transfer_dest_id=None, transfer_admin_id=None, keep_account=None, retain_team_shares=None): super(MembersRemoveArg, self).__init__(user, wipe_data) self._transfer_dest_id_value = bb.NOT_SET self._transfer_admin_id_value = bb.NOT_SET self._keep_account_value = bb.NOT_SET self._retain_team_shares_value = bb.NOT_SET if transfer_dest_id is not None: self.transfer_dest_id = transfer_dest_id if transfer_admin_id is not None: self.transfer_admin_id = transfer_admin_id if keep_account is not None: self.keep_account = keep_account if retain_team_shares is not None: self.retain_team_shares = retain_team_shares # Instance attribute type: UserSelectorArg (validator is set below) transfer_dest_id = bb.Attribute("transfer_dest_id", nullable=True, user_defined=True) # Instance attribute type: UserSelectorArg (validator is set below) transfer_admin_id = bb.Attribute("transfer_admin_id", nullable=True, user_defined=True) # Instance attribute type: bool (validator is set below) keep_account = bb.Attribute("keep_account") # Instance attribute type: bool (validator is set below) retain_team_shares = bb.Attribute("retain_team_shares") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersRemoveArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersRemoveArg_validator = bv.Struct(MembersRemoveArg) class MembersTransferFilesError(MembersDeactivateError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersTransferFilesError.removed_and_transfer_dest_should_differ: Expected removed user and transfer_dest user to be different. :ivar team.MembersTransferFilesError.removed_and_transfer_admin_should_differ: Expected removed user and transfer_admin user to be different. :ivar team.MembersTransferFilesError.transfer_dest_user_not_found: No matching user found for the argument transfer_dest_id. :ivar team.MembersTransferFilesError.transfer_dest_user_not_in_team: The provided transfer_dest_id does not exist on this team. :ivar team.MembersTransferFilesError.transfer_admin_user_not_in_team: The provided transfer_admin_id does not exist on this team. :ivar team.MembersTransferFilesError.transfer_admin_user_not_found: No matching user found for the argument transfer_admin_id. :ivar team.MembersTransferFilesError.unspecified_transfer_admin_id: The transfer_admin_id argument must be provided when file transfer is requested. :ivar team.MembersTransferFilesError.transfer_admin_is_not_admin: Specified transfer_admin user is not a team admin. :ivar team.MembersTransferFilesError.recipient_not_verified: The recipient user's email is not verified. """ # Attribute is overwritten below the class definition removed_and_transfer_dest_should_differ = None # Attribute is overwritten below the class definition removed_and_transfer_admin_should_differ = None # Attribute is overwritten below the class definition transfer_dest_user_not_found = None # Attribute is overwritten below the class definition transfer_dest_user_not_in_team = None # Attribute is overwritten below the class definition transfer_admin_user_not_in_team = None # Attribute is overwritten below the class definition transfer_admin_user_not_found = None # Attribute is overwritten below the class definition unspecified_transfer_admin_id = None # Attribute is overwritten below the class definition transfer_admin_is_not_admin = None # Attribute is overwritten below the class definition recipient_not_verified = None def is_removed_and_transfer_dest_should_differ(self): """ Check if the union tag is ``removed_and_transfer_dest_should_differ``. :rtype: bool """ return self._tag == 'removed_and_transfer_dest_should_differ' def is_removed_and_transfer_admin_should_differ(self): """ Check if the union tag is ``removed_and_transfer_admin_should_differ``. :rtype: bool """ return self._tag == 'removed_and_transfer_admin_should_differ' def is_transfer_dest_user_not_found(self): """ Check if the union tag is ``transfer_dest_user_not_found``. :rtype: bool """ return self._tag == 'transfer_dest_user_not_found' def is_transfer_dest_user_not_in_team(self): """ Check if the union tag is ``transfer_dest_user_not_in_team``. :rtype: bool """ return self._tag == 'transfer_dest_user_not_in_team' def is_transfer_admin_user_not_in_team(self): """ Check if the union tag is ``transfer_admin_user_not_in_team``. :rtype: bool """ return self._tag == 'transfer_admin_user_not_in_team' def is_transfer_admin_user_not_found(self): """ Check if the union tag is ``transfer_admin_user_not_found``. :rtype: bool """ return self._tag == 'transfer_admin_user_not_found' def is_unspecified_transfer_admin_id(self): """ Check if the union tag is ``unspecified_transfer_admin_id``. :rtype: bool """ return self._tag == 'unspecified_transfer_admin_id' def is_transfer_admin_is_not_admin(self): """ Check if the union tag is ``transfer_admin_is_not_admin``. :rtype: bool """ return self._tag == 'transfer_admin_is_not_admin' def is_recipient_not_verified(self): """ Check if the union tag is ``recipient_not_verified``. :rtype: bool """ return self._tag == 'recipient_not_verified' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersTransferFilesError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersTransferFilesError_validator = bv.Union(MembersTransferFilesError) class MembersRemoveError(MembersTransferFilesError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersRemoveError.remove_last_admin: The user is the last admin of the team, so it cannot be removed from it. :ivar team.MembersRemoveError.cannot_keep_account_and_transfer: Cannot keep account and transfer the data to another user at the same time. :ivar team.MembersRemoveError.cannot_keep_account_and_delete_data: Cannot keep account and delete the data at the same time. To keep the account the argument wipe_data should be set to ``False``. :ivar team.MembersRemoveError.email_address_too_long_to_be_disabled: The email address of the user is too long to be disabled. :ivar team.MembersRemoveError.cannot_keep_invited_user_account: Cannot keep account of an invited user. :ivar team.MembersRemoveError.cannot_retain_shares_when_data_wiped: Cannot retain team shares when the user's data is marked for deletion on their linked devices. The argument wipe_data should be set to ``False``. :ivar team.MembersRemoveError.cannot_retain_shares_when_no_account_kept: The user's account must be kept in order to retain team shares. The argument keep_account should be set to ``True``. :ivar team.MembersRemoveError.cannot_retain_shares_when_team_external_sharing_off: Externally sharing files, folders, and links must be enabled in team settings in order to retain team shares for the user. :ivar team.MembersRemoveError.cannot_keep_account: Only a team admin, can convert this account to a Basic account. :ivar team.MembersRemoveError.cannot_keep_account_under_legal_hold: This user content is currently being held. To convert this member's account to a Basic account, you'll first need to remove them from the hold. :ivar team.MembersRemoveError.cannot_keep_account_required_to_sign_tos: To convert this member to a Basic account, they'll first need to sign in to Dropbox and agree to the terms of service. """ # Attribute is overwritten below the class definition remove_last_admin = None # Attribute is overwritten below the class definition cannot_keep_account_and_transfer = None # Attribute is overwritten below the class definition cannot_keep_account_and_delete_data = None # Attribute is overwritten below the class definition email_address_too_long_to_be_disabled = None # Attribute is overwritten below the class definition cannot_keep_invited_user_account = None # Attribute is overwritten below the class definition cannot_retain_shares_when_data_wiped = None # Attribute is overwritten below the class definition cannot_retain_shares_when_no_account_kept = None # Attribute is overwritten below the class definition cannot_retain_shares_when_team_external_sharing_off = None # Attribute is overwritten below the class definition cannot_keep_account = None # Attribute is overwritten below the class definition cannot_keep_account_under_legal_hold = None # Attribute is overwritten below the class definition cannot_keep_account_required_to_sign_tos = None def is_remove_last_admin(self): """ Check if the union tag is ``remove_last_admin``. :rtype: bool """ return self._tag == 'remove_last_admin' def is_cannot_keep_account_and_transfer(self): """ Check if the union tag is ``cannot_keep_account_and_transfer``. :rtype: bool """ return self._tag == 'cannot_keep_account_and_transfer' def is_cannot_keep_account_and_delete_data(self): """ Check if the union tag is ``cannot_keep_account_and_delete_data``. :rtype: bool """ return self._tag == 'cannot_keep_account_and_delete_data' def is_email_address_too_long_to_be_disabled(self): """ Check if the union tag is ``email_address_too_long_to_be_disabled``. :rtype: bool """ return self._tag == 'email_address_too_long_to_be_disabled' def is_cannot_keep_invited_user_account(self): """ Check if the union tag is ``cannot_keep_invited_user_account``. :rtype: bool """ return self._tag == 'cannot_keep_invited_user_account' def is_cannot_retain_shares_when_data_wiped(self): """ Check if the union tag is ``cannot_retain_shares_when_data_wiped``. :rtype: bool """ return self._tag == 'cannot_retain_shares_when_data_wiped' def is_cannot_retain_shares_when_no_account_kept(self): """ Check if the union tag is ``cannot_retain_shares_when_no_account_kept``. :rtype: bool """ return self._tag == 'cannot_retain_shares_when_no_account_kept' def is_cannot_retain_shares_when_team_external_sharing_off(self): """ Check if the union tag is ``cannot_retain_shares_when_team_external_sharing_off``. :rtype: bool """ return self._tag == 'cannot_retain_shares_when_team_external_sharing_off' def is_cannot_keep_account(self): """ Check if the union tag is ``cannot_keep_account``. :rtype: bool """ return self._tag == 'cannot_keep_account' def is_cannot_keep_account_under_legal_hold(self): """ Check if the union tag is ``cannot_keep_account_under_legal_hold``. :rtype: bool """ return self._tag == 'cannot_keep_account_under_legal_hold' def is_cannot_keep_account_required_to_sign_tos(self): """ Check if the union tag is ``cannot_keep_account_required_to_sign_tos``. :rtype: bool """ return self._tag == 'cannot_keep_account_required_to_sign_tos' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersRemoveError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersRemoveError_validator = bv.Union(MembersRemoveError) class MembersSendWelcomeError(MemberSelectorError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersSendWelcomeError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersSendWelcomeError_validator = bv.Union(MembersSendWelcomeError) class MembersSetPermissions2Arg(bb.Struct): """ Exactly one of team_member_id, email, or external_id must be provided to identify the user account. :ivar team.MembersSetPermissions2Arg.user: Identity of user whose role will be set. :ivar team.MembersSetPermissions2Arg.new_roles: The new roles for the member. Send empty list to make user member only. For now, only up to one role is allowed. """ __slots__ = [ '_user_value', '_new_roles_value', ] _has_required_fields = True def __init__(self, user=None, new_roles=None): self._user_value = bb.NOT_SET self._new_roles_value = bb.NOT_SET if user is not None: self.user = user if new_roles is not None: self.new_roles = new_roles # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) # Instance attribute type: list of [str] (validator is set below) new_roles = bb.Attribute("new_roles", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersSetPermissions2Arg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersSetPermissions2Arg_validator = bv.Struct(MembersSetPermissions2Arg) class MembersSetPermissions2Error(UserSelectorError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersSetPermissions2Error.last_admin: Cannot remove the admin setting of the last admin. :ivar team.MembersSetPermissions2Error.user_not_in_team: The user is not a member of the team. :ivar team.MembersSetPermissions2Error.cannot_set_permissions: Cannot remove/grant permissions. This can happen if the team member is suspended. :ivar team.MembersSetPermissions2Error.role_not_found: No matching role found. At least one of the provided new_roles does not exist on this team. """ _catch_all = 'other' # Attribute is overwritten below the class definition last_admin = None # Attribute is overwritten below the class definition user_not_in_team = None # Attribute is overwritten below the class definition cannot_set_permissions = None # Attribute is overwritten below the class definition role_not_found = None # Attribute is overwritten below the class definition other = None def is_last_admin(self): """ Check if the union tag is ``last_admin``. :rtype: bool """ return self._tag == 'last_admin' def is_user_not_in_team(self): """ Check if the union tag is ``user_not_in_team``. :rtype: bool """ return self._tag == 'user_not_in_team' def is_cannot_set_permissions(self): """ Check if the union tag is ``cannot_set_permissions``. :rtype: bool """ return self._tag == 'cannot_set_permissions' def is_role_not_found(self): """ Check if the union tag is ``role_not_found``. :rtype: bool """ return self._tag == 'role_not_found' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersSetPermissions2Error, self)._process_custom_annotations(annotation_type, field_path, processor) MembersSetPermissions2Error_validator = bv.Union(MembersSetPermissions2Error) class MembersSetPermissions2Result(bb.Struct): """ :ivar team.MembersSetPermissions2Result.team_member_id: The member ID of the user to which the change was applied. :ivar team.MembersSetPermissions2Result.roles: The roles after the change. Empty in case the user become a non-admin. """ __slots__ = [ '_team_member_id_value', '_roles_value', ] _has_required_fields = True def __init__(self, team_member_id=None, roles=None): self._team_member_id_value = bb.NOT_SET self._roles_value = bb.NOT_SET if team_member_id is not None: self.team_member_id = team_member_id if roles is not None: self.roles = roles # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id") # Instance attribute type: list of [TeamMemberRole] (validator is set below) roles = bb.Attribute("roles", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersSetPermissions2Result, self)._process_custom_annotations(annotation_type, field_path, processor) MembersSetPermissions2Result_validator = bv.Struct(MembersSetPermissions2Result) class MembersSetPermissionsArg(bb.Struct): """ Exactly one of team_member_id, email, or external_id must be provided to identify the user account. :ivar team.MembersSetPermissionsArg.user: Identity of user whose role will be set. :ivar team.MembersSetPermissionsArg.new_role: The new role of the member. """ __slots__ = [ '_user_value', '_new_role_value', ] _has_required_fields = True def __init__(self, user=None, new_role=None): self._user_value = bb.NOT_SET self._new_role_value = bb.NOT_SET if user is not None: self.user = user if new_role is not None: self.new_role = new_role # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) # Instance attribute type: AdminTier (validator is set below) new_role = bb.Attribute("new_role", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersSetPermissionsArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersSetPermissionsArg_validator = bv.Struct(MembersSetPermissionsArg) class MembersSetPermissionsError(UserSelectorError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersSetPermissionsError.last_admin: Cannot remove the admin setting of the last admin. :ivar team.MembersSetPermissionsError.user_not_in_team: The user is not a member of the team. :ivar team.MembersSetPermissionsError.cannot_set_permissions: Cannot remove/grant permissions. :ivar team.MembersSetPermissionsError.team_license_limit: Team is full. The organization has no available licenses. """ _catch_all = 'other' # Attribute is overwritten below the class definition last_admin = None # Attribute is overwritten below the class definition user_not_in_team = None # Attribute is overwritten below the class definition cannot_set_permissions = None # Attribute is overwritten below the class definition team_license_limit = None # Attribute is overwritten below the class definition other = None def is_last_admin(self): """ Check if the union tag is ``last_admin``. :rtype: bool """ return self._tag == 'last_admin' def is_user_not_in_team(self): """ Check if the union tag is ``user_not_in_team``. :rtype: bool """ return self._tag == 'user_not_in_team' def is_cannot_set_permissions(self): """ Check if the union tag is ``cannot_set_permissions``. :rtype: bool """ return self._tag == 'cannot_set_permissions' def is_team_license_limit(self): """ Check if the union tag is ``team_license_limit``. :rtype: bool """ return self._tag == 'team_license_limit' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersSetPermissionsError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersSetPermissionsError_validator = bv.Union(MembersSetPermissionsError) class MembersSetPermissionsResult(bb.Struct): """ :ivar team.MembersSetPermissionsResult.team_member_id: The member ID of the user to which the change was applied. :ivar team.MembersSetPermissionsResult.role: The role after the change. """ __slots__ = [ '_team_member_id_value', '_role_value', ] _has_required_fields = True def __init__(self, team_member_id=None, role=None): self._team_member_id_value = bb.NOT_SET self._role_value = bb.NOT_SET if team_member_id is not None: self.team_member_id = team_member_id if role is not None: self.role = role # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id") # Instance attribute type: AdminTier (validator is set below) role = bb.Attribute("role", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersSetPermissionsResult, self)._process_custom_annotations(annotation_type, field_path, processor) MembersSetPermissionsResult_validator = bv.Struct(MembersSetPermissionsResult) class MembersSetProfileArg(bb.Struct): """ Exactly one of team_member_id, email, or external_id must be provided to identify the user account. At least one of new_email, new_external_id, new_given_name, and/or new_surname must be provided. :ivar team.MembersSetProfileArg.user: Identity of user whose profile will be set. :ivar team.MembersSetProfileArg.new_email: New email for member. :ivar team.MembersSetProfileArg.new_external_id: New external ID for member. :ivar team.MembersSetProfileArg.new_given_name: New given name for member. :ivar team.MembersSetProfileArg.new_surname: New surname for member. :ivar team.MembersSetProfileArg.new_persistent_id: New persistent ID. This field only available to teams using persistent ID SAML configuration. :ivar team.MembersSetProfileArg.new_is_directory_restricted: New value for whether the user is a directory restricted user. """ __slots__ = [ '_user_value', '_new_email_value', '_new_external_id_value', '_new_given_name_value', '_new_surname_value', '_new_persistent_id_value', '_new_is_directory_restricted_value', ] _has_required_fields = True def __init__(self, user=None, new_email=None, new_external_id=None, new_given_name=None, new_surname=None, new_persistent_id=None, new_is_directory_restricted=None): self._user_value = bb.NOT_SET self._new_email_value = bb.NOT_SET self._new_external_id_value = bb.NOT_SET self._new_given_name_value = bb.NOT_SET self._new_surname_value = bb.NOT_SET self._new_persistent_id_value = bb.NOT_SET self._new_is_directory_restricted_value = bb.NOT_SET if user is not None: self.user = user if new_email is not None: self.new_email = new_email if new_external_id is not None: self.new_external_id = new_external_id if new_given_name is not None: self.new_given_name = new_given_name if new_surname is not None: self.new_surname = new_surname if new_persistent_id is not None: self.new_persistent_id = new_persistent_id if new_is_directory_restricted is not None: self.new_is_directory_restricted = new_is_directory_restricted # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) # Instance attribute type: str (validator is set below) new_email = bb.Attribute("new_email", nullable=True) # Instance attribute type: str (validator is set below) new_external_id = bb.Attribute("new_external_id", nullable=True) # Instance attribute type: str (validator is set below) new_given_name = bb.Attribute("new_given_name", nullable=True) # Instance attribute type: str (validator is set below) new_surname = bb.Attribute("new_surname", nullable=True) # Instance attribute type: str (validator is set below) new_persistent_id = bb.Attribute("new_persistent_id", nullable=True) # Instance attribute type: bool (validator is set below) new_is_directory_restricted = bb.Attribute("new_is_directory_restricted", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersSetProfileArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersSetProfileArg_validator = bv.Struct(MembersSetProfileArg) class MembersSetProfileError(MemberSelectorError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersSetProfileError.external_id_and_new_external_id_unsafe: It is unsafe to use both external_id and new_external_id. :ivar team.MembersSetProfileError.no_new_data_specified: None of new_email, new_given_name, new_surname, or new_external_id are specified. :ivar team.MembersSetProfileError.email_reserved_for_other_user: Email is already reserved for another user. :ivar team.MembersSetProfileError.external_id_used_by_other_user: The external ID is already in use by another team member. :ivar team.MembersSetProfileError.set_profile_disallowed: Modifying deleted users is not allowed. :ivar team.MembersSetProfileError.param_cannot_be_empty: Parameter new_email cannot be empty. :ivar team.MembersSetProfileError.persistent_id_disabled: Persistent ID is only available to teams with persistent ID SAML configuration. Please contact Dropbox for more information. :ivar team.MembersSetProfileError.persistent_id_used_by_other_user: The persistent ID is already in use by another team member. :ivar team.MembersSetProfileError.directory_restricted_off: Directory Restrictions option is not available. """ _catch_all = 'other' # Attribute is overwritten below the class definition external_id_and_new_external_id_unsafe = None # Attribute is overwritten below the class definition no_new_data_specified = None # Attribute is overwritten below the class definition email_reserved_for_other_user = None # Attribute is overwritten below the class definition external_id_used_by_other_user = None # Attribute is overwritten below the class definition set_profile_disallowed = None # Attribute is overwritten below the class definition param_cannot_be_empty = None # Attribute is overwritten below the class definition persistent_id_disabled = None # Attribute is overwritten below the class definition persistent_id_used_by_other_user = None # Attribute is overwritten below the class definition directory_restricted_off = None # Attribute is overwritten below the class definition other = None def is_external_id_and_new_external_id_unsafe(self): """ Check if the union tag is ``external_id_and_new_external_id_unsafe``. :rtype: bool """ return self._tag == 'external_id_and_new_external_id_unsafe' def is_no_new_data_specified(self): """ Check if the union tag is ``no_new_data_specified``. :rtype: bool """ return self._tag == 'no_new_data_specified' def is_email_reserved_for_other_user(self): """ Check if the union tag is ``email_reserved_for_other_user``. :rtype: bool """ return self._tag == 'email_reserved_for_other_user' def is_external_id_used_by_other_user(self): """ Check if the union tag is ``external_id_used_by_other_user``. :rtype: bool """ return self._tag == 'external_id_used_by_other_user' def is_set_profile_disallowed(self): """ Check if the union tag is ``set_profile_disallowed``. :rtype: bool """ return self._tag == 'set_profile_disallowed' def is_param_cannot_be_empty(self): """ Check if the union tag is ``param_cannot_be_empty``. :rtype: bool """ return self._tag == 'param_cannot_be_empty' def is_persistent_id_disabled(self): """ Check if the union tag is ``persistent_id_disabled``. :rtype: bool """ return self._tag == 'persistent_id_disabled' def is_persistent_id_used_by_other_user(self): """ Check if the union tag is ``persistent_id_used_by_other_user``. :rtype: bool """ return self._tag == 'persistent_id_used_by_other_user' def is_directory_restricted_off(self): """ Check if the union tag is ``directory_restricted_off``. :rtype: bool """ return self._tag == 'directory_restricted_off' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersSetProfileError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersSetProfileError_validator = bv.Union(MembersSetProfileError) class MembersSetProfilePhotoArg(bb.Struct): """ :ivar team.MembersSetProfilePhotoArg.user: Identity of the user whose profile photo will be set. :ivar team.MembersSetProfilePhotoArg.photo: Image to set as the member's new profile photo. """ __slots__ = [ '_user_value', '_photo_value', ] _has_required_fields = True def __init__(self, user=None, photo=None): self._user_value = bb.NOT_SET self._photo_value = bb.NOT_SET if user is not None: self.user = user if photo is not None: self.photo = photo # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) # Instance attribute type: account.PhotoSourceArg (validator is set below) photo = bb.Attribute("photo", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersSetProfilePhotoArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersSetProfilePhotoArg_validator = bv.Struct(MembersSetProfilePhotoArg) class MembersSetProfilePhotoError(MemberSelectorError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersSetProfilePhotoError.set_profile_disallowed: Modifying deleted users is not allowed. """ _catch_all = 'other' # Attribute is overwritten below the class definition set_profile_disallowed = None # Attribute is overwritten below the class definition other = None @classmethod def photo_error(cls, val): """ Create an instance of this class set to the ``photo_error`` tag with value ``val``. :param account.SetProfilePhotoError val: :rtype: MembersSetProfilePhotoError """ return cls('photo_error', val) def is_set_profile_disallowed(self): """ Check if the union tag is ``set_profile_disallowed``. :rtype: bool """ return self._tag == 'set_profile_disallowed' def is_photo_error(self): """ Check if the union tag is ``photo_error``. :rtype: bool """ return self._tag == 'photo_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_photo_error(self): """ Only call this if :meth:`is_photo_error` is true. :rtype: account.SetProfilePhotoError """ if not self.is_photo_error(): raise AttributeError("tag 'photo_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersSetProfilePhotoError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersSetProfilePhotoError_validator = bv.Union(MembersSetProfilePhotoError) class MembersSuspendError(MembersDeactivateError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersSuspendError.suspend_inactive_user: The user is not active, so it cannot be suspended. :ivar team.MembersSuspendError.suspend_last_admin: The user is the last admin of the team, so it cannot be suspended. :ivar team.MembersSuspendError.team_license_limit: Team is full. The organization has no available licenses. """ # Attribute is overwritten below the class definition suspend_inactive_user = None # Attribute is overwritten below the class definition suspend_last_admin = None # Attribute is overwritten below the class definition team_license_limit = None def is_suspend_inactive_user(self): """ Check if the union tag is ``suspend_inactive_user``. :rtype: bool """ return self._tag == 'suspend_inactive_user' def is_suspend_last_admin(self): """ Check if the union tag is ``suspend_last_admin``. :rtype: bool """ return self._tag == 'suspend_last_admin' def is_team_license_limit(self): """ Check if the union tag is ``team_license_limit``. :rtype: bool """ return self._tag == 'team_license_limit' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersSuspendError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersSuspendError_validator = bv.Union(MembersSuspendError) class MembersTransferFormerMembersFilesError(MembersTransferFilesError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersTransferFormerMembersFilesError.user_data_is_being_transferred: The user's data is being transferred. Please wait some time before retrying. :ivar team.MembersTransferFormerMembersFilesError.user_not_removed: No matching removed user found for the argument user. :ivar team.MembersTransferFormerMembersFilesError.user_data_cannot_be_transferred: User files aren't transferable anymore. :ivar team.MembersTransferFormerMembersFilesError.user_data_already_transferred: User's data has already been transferred to another user. """ # Attribute is overwritten below the class definition user_data_is_being_transferred = None # Attribute is overwritten below the class definition user_not_removed = None # Attribute is overwritten below the class definition user_data_cannot_be_transferred = None # Attribute is overwritten below the class definition user_data_already_transferred = None def is_user_data_is_being_transferred(self): """ Check if the union tag is ``user_data_is_being_transferred``. :rtype: bool """ return self._tag == 'user_data_is_being_transferred' def is_user_not_removed(self): """ Check if the union tag is ``user_not_removed``. :rtype: bool """ return self._tag == 'user_not_removed' def is_user_data_cannot_be_transferred(self): """ Check if the union tag is ``user_data_cannot_be_transferred``. :rtype: bool """ return self._tag == 'user_data_cannot_be_transferred' def is_user_data_already_transferred(self): """ Check if the union tag is ``user_data_already_transferred``. :rtype: bool """ return self._tag == 'user_data_already_transferred' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersTransferFormerMembersFilesError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersTransferFormerMembersFilesError_validator = bv.Union(MembersTransferFormerMembersFilesError) class MembersUnsuspendArg(bb.Struct): """ Exactly one of team_member_id, email, or external_id must be provided to identify the user account. :ivar team.MembersUnsuspendArg.user: Identity of user to unsuspend. """ __slots__ = [ '_user_value', ] _has_required_fields = True def __init__(self, user=None): self._user_value = bb.NOT_SET if user is not None: self.user = user # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersUnsuspendArg, self)._process_custom_annotations(annotation_type, field_path, processor) MembersUnsuspendArg_validator = bv.Struct(MembersUnsuspendArg) class MembersUnsuspendError(MembersDeactivateError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MembersUnsuspendError.unsuspend_non_suspended_member: The user is unsuspended, so it cannot be unsuspended again. :ivar team.MembersUnsuspendError.team_license_limit: Team is full. The organization has no available licenses. """ # Attribute is overwritten below the class definition unsuspend_non_suspended_member = None # Attribute is overwritten below the class definition team_license_limit = None def is_unsuspend_non_suspended_member(self): """ Check if the union tag is ``unsuspend_non_suspended_member``. :rtype: bool """ return self._tag == 'unsuspend_non_suspended_member' def is_team_license_limit(self): """ Check if the union tag is ``team_license_limit``. :rtype: bool """ return self._tag == 'team_license_limit' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MembersUnsuspendError, self)._process_custom_annotations(annotation_type, field_path, processor) MembersUnsuspendError_validator = bv.Union(MembersUnsuspendError) class MobileClientPlatform(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.MobileClientPlatform.iphone: Official Dropbox iPhone client. :ivar team.MobileClientPlatform.ipad: Official Dropbox iPad client. :ivar team.MobileClientPlatform.android: Official Dropbox Android client. :ivar team.MobileClientPlatform.windows_phone: Official Dropbox Windows phone client. :ivar team.MobileClientPlatform.blackberry: Official Dropbox Blackberry client. """ _catch_all = 'other' # Attribute is overwritten below the class definition iphone = None # Attribute is overwritten below the class definition ipad = None # Attribute is overwritten below the class definition android = None # Attribute is overwritten below the class definition windows_phone = None # Attribute is overwritten below the class definition blackberry = None # Attribute is overwritten below the class definition other = None def is_iphone(self): """ Check if the union tag is ``iphone``. :rtype: bool """ return self._tag == 'iphone' def is_ipad(self): """ Check if the union tag is ``ipad``. :rtype: bool """ return self._tag == 'ipad' def is_android(self): """ Check if the union tag is ``android``. :rtype: bool """ return self._tag == 'android' def is_windows_phone(self): """ Check if the union tag is ``windows_phone``. :rtype: bool """ return self._tag == 'windows_phone' def is_blackberry(self): """ Check if the union tag is ``blackberry``. :rtype: bool """ return self._tag == 'blackberry' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MobileClientPlatform, self)._process_custom_annotations(annotation_type, field_path, processor) MobileClientPlatform_validator = bv.Union(MobileClientPlatform) class MobileClientSession(DeviceSession): """ Information about linked Dropbox mobile client sessions. :ivar team.MobileClientSession.device_name: The device name. :ivar team.MobileClientSession.client_type: The mobile application type. :ivar team.MobileClientSession.client_version: The dropbox client version. :ivar team.MobileClientSession.os_version: The hosting OS version. :ivar team.MobileClientSession.last_carrier: last carrier used by the device. """ __slots__ = [ '_device_name_value', '_client_type_value', '_client_version_value', '_os_version_value', '_last_carrier_value', ] _has_required_fields = True def __init__(self, session_id=None, device_name=None, client_type=None, ip_address=None, country=None, created=None, updated=None, client_version=None, os_version=None, last_carrier=None): super(MobileClientSession, self).__init__(session_id, ip_address, country, created, updated) self._device_name_value = bb.NOT_SET self._client_type_value = bb.NOT_SET self._client_version_value = bb.NOT_SET self._os_version_value = bb.NOT_SET self._last_carrier_value = bb.NOT_SET if device_name is not None: self.device_name = device_name if client_type is not None: self.client_type = client_type if client_version is not None: self.client_version = client_version if os_version is not None: self.os_version = os_version if last_carrier is not None: self.last_carrier = last_carrier # Instance attribute type: str (validator is set below) device_name = bb.Attribute("device_name") # Instance attribute type: MobileClientPlatform (validator is set below) client_type = bb.Attribute("client_type", user_defined=True) # Instance attribute type: str (validator is set below) client_version = bb.Attribute("client_version", nullable=True) # Instance attribute type: str (validator is set below) os_version = bb.Attribute("os_version", nullable=True) # Instance attribute type: str (validator is set below) last_carrier = bb.Attribute("last_carrier", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MobileClientSession, self)._process_custom_annotations(annotation_type, field_path, processor) MobileClientSession_validator = bv.Struct(MobileClientSession) class NamespaceMetadata(bb.Struct): """ Properties of a namespace. :ivar team.NamespaceMetadata.name: The name of this namespace. :ivar team.NamespaceMetadata.namespace_id: The ID of this namespace. :ivar team.NamespaceMetadata.namespace_type: The type of this namespace. :ivar team.NamespaceMetadata.team_member_id: If this is a team member or app folder, the ID of the owning team member. Otherwise, this field is not present. """ __slots__ = [ '_name_value', '_namespace_id_value', '_namespace_type_value', '_team_member_id_value', ] _has_required_fields = True def __init__(self, name=None, namespace_id=None, namespace_type=None, team_member_id=None): self._name_value = bb.NOT_SET self._namespace_id_value = bb.NOT_SET self._namespace_type_value = bb.NOT_SET self._team_member_id_value = bb.NOT_SET if name is not None: self.name = name if namespace_id is not None: self.namespace_id = namespace_id if namespace_type is not None: self.namespace_type = namespace_type if team_member_id is not None: self.team_member_id = team_member_id # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) namespace_id = bb.Attribute("namespace_id") # Instance attribute type: NamespaceType (validator is set below) namespace_type = bb.Attribute("namespace_type", user_defined=True) # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(NamespaceMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) NamespaceMetadata_validator = bv.Struct(NamespaceMetadata) class NamespaceType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.NamespaceType.app_folder: App sandbox folder. :ivar team.NamespaceType.shared_folder: Shared folder. :ivar team.NamespaceType.team_folder: Top-level team-owned folder. :ivar team.NamespaceType.team_member_folder: Team member's home folder. """ _catch_all = 'other' # Attribute is overwritten below the class definition app_folder = None # Attribute is overwritten below the class definition shared_folder = None # Attribute is overwritten below the class definition team_folder = None # Attribute is overwritten below the class definition team_member_folder = None # Attribute is overwritten below the class definition other = None def is_app_folder(self): """ Check if the union tag is ``app_folder``. :rtype: bool """ return self._tag == 'app_folder' def is_shared_folder(self): """ Check if the union tag is ``shared_folder``. :rtype: bool """ return self._tag == 'shared_folder' def is_team_folder(self): """ Check if the union tag is ``team_folder``. :rtype: bool """ return self._tag == 'team_folder' def is_team_member_folder(self): """ Check if the union tag is ``team_member_folder``. :rtype: bool """ return self._tag == 'team_member_folder' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(NamespaceType, self)._process_custom_annotations(annotation_type, field_path, processor) NamespaceType_validator = bv.Union(NamespaceType) class RemoveCustomQuotaResult(bb.Union): """ User result for setting member custom quota. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar UserSelectorArg RemoveCustomQuotaResult.success: Successfully removed user. :ivar UserSelectorArg RemoveCustomQuotaResult.invalid_user: Invalid user (not in team). """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param UserSelectorArg val: :rtype: RemoveCustomQuotaResult """ return cls('success', val) @classmethod def invalid_user(cls, val): """ Create an instance of this class set to the ``invalid_user`` tag with value ``val``. :param UserSelectorArg val: :rtype: RemoveCustomQuotaResult """ return cls('invalid_user', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_invalid_user(self): """ Check if the union tag is ``invalid_user``. :rtype: bool """ return self._tag == 'invalid_user' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_success(self): """ Successfully removed user. Only call this if :meth:`is_success` is true. :rtype: UserSelectorArg """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_invalid_user(self): """ Invalid user (not in team). Only call this if :meth:`is_invalid_user` is true. :rtype: UserSelectorArg """ if not self.is_invalid_user(): raise AttributeError("tag 'invalid_user' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemoveCustomQuotaResult, self)._process_custom_annotations(annotation_type, field_path, processor) RemoveCustomQuotaResult_validator = bv.Union(RemoveCustomQuotaResult) class RemovedStatus(bb.Struct): """ :ivar team.RemovedStatus.is_recoverable: True if the removed team member is recoverable. :ivar team.RemovedStatus.is_disconnected: True if the team member's account was converted to individual account. """ __slots__ = [ '_is_recoverable_value', '_is_disconnected_value', ] _has_required_fields = True def __init__(self, is_recoverable=None, is_disconnected=None): self._is_recoverable_value = bb.NOT_SET self._is_disconnected_value = bb.NOT_SET if is_recoverable is not None: self.is_recoverable = is_recoverable if is_disconnected is not None: self.is_disconnected = is_disconnected # Instance attribute type: bool (validator is set below) is_recoverable = bb.Attribute("is_recoverable") # Instance attribute type: bool (validator is set below) is_disconnected = bb.Attribute("is_disconnected") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RemovedStatus, self)._process_custom_annotations(annotation_type, field_path, processor) RemovedStatus_validator = bv.Struct(RemovedStatus) class ResendSecondaryEmailResult(bb.Union): """ Result of trying to resend verification email to a secondary email address. 'success' is the only value indicating that a verification email was successfully sent. The other values explain the type of error that occurred, and include the email for which the error occurred. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str team.ResendSecondaryEmailResult.success: A verification email was successfully sent to the secondary email address. :ivar str team.ResendSecondaryEmailResult.not_pending: This secondary email address is not pending for the user. :ivar str team.ResendSecondaryEmailResult.rate_limited: Too many emails are being sent to this email address. Please try again later. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param str val: :rtype: ResendSecondaryEmailResult """ return cls('success', val) @classmethod def not_pending(cls, val): """ Create an instance of this class set to the ``not_pending`` tag with value ``val``. :param str val: :rtype: ResendSecondaryEmailResult """ return cls('not_pending', val) @classmethod def rate_limited(cls, val): """ Create an instance of this class set to the ``rate_limited`` tag with value ``val``. :param str val: :rtype: ResendSecondaryEmailResult """ return cls('rate_limited', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_not_pending(self): """ Check if the union tag is ``not_pending``. :rtype: bool """ return self._tag == 'not_pending' def is_rate_limited(self): """ Check if the union tag is ``rate_limited``. :rtype: bool """ return self._tag == 'rate_limited' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_success(self): """ A verification email was successfully sent to the secondary email address. Only call this if :meth:`is_success` is true. :rtype: str """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_not_pending(self): """ This secondary email address is not pending for the user. Only call this if :meth:`is_not_pending` is true. :rtype: str """ if not self.is_not_pending(): raise AttributeError("tag 'not_pending' not set") return self._value def get_rate_limited(self): """ Too many emails are being sent to this email address. Please try again later. Only call this if :meth:`is_rate_limited` is true. :rtype: str """ if not self.is_rate_limited(): raise AttributeError("tag 'rate_limited' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResendSecondaryEmailResult, self)._process_custom_annotations(annotation_type, field_path, processor) ResendSecondaryEmailResult_validator = bv.Union(ResendSecondaryEmailResult) class ResendVerificationEmailArg(bb.Struct): """ :ivar team.ResendVerificationEmailArg.emails_to_resend: List of users and secondary emails to resend verification emails to. """ __slots__ = [ '_emails_to_resend_value', ] _has_required_fields = True def __init__(self, emails_to_resend=None): self._emails_to_resend_value = bb.NOT_SET if emails_to_resend is not None: self.emails_to_resend = emails_to_resend # Instance attribute type: list of [UserSecondaryEmailsArg] (validator is set below) emails_to_resend = bb.Attribute("emails_to_resend") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResendVerificationEmailArg, self)._process_custom_annotations(annotation_type, field_path, processor) ResendVerificationEmailArg_validator = bv.Struct(ResendVerificationEmailArg) class ResendVerificationEmailResult(bb.Struct): """ List of users and resend results. """ __slots__ = [ '_results_value', ] _has_required_fields = True def __init__(self, results=None): self._results_value = bb.NOT_SET if results is not None: self.results = results # Instance attribute type: list of [UserResendResult] (validator is set below) results = bb.Attribute("results") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResendVerificationEmailResult, self)._process_custom_annotations(annotation_type, field_path, processor) ResendVerificationEmailResult_validator = bv.Struct(ResendVerificationEmailResult) class RevokeDesktopClientArg(DeviceSessionArg): """ :ivar team.RevokeDesktopClientArg.delete_on_unlink: Whether to delete all files of the account (this is possible only if supported by the desktop client and will be made the next time the client access the account). """ __slots__ = [ '_delete_on_unlink_value', ] _has_required_fields = True def __init__(self, session_id=None, team_member_id=None, delete_on_unlink=None): super(RevokeDesktopClientArg, self).__init__(session_id, team_member_id) self._delete_on_unlink_value = bb.NOT_SET if delete_on_unlink is not None: self.delete_on_unlink = delete_on_unlink # Instance attribute type: bool (validator is set below) delete_on_unlink = bb.Attribute("delete_on_unlink") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeDesktopClientArg, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeDesktopClientArg_validator = bv.Struct(RevokeDesktopClientArg) class RevokeDeviceSessionArg(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar DeviceSessionArg RevokeDeviceSessionArg.web_session: End an active session. :ivar RevokeDesktopClientArg RevokeDeviceSessionArg.desktop_client: Unlink a linked desktop device. :ivar DeviceSessionArg RevokeDeviceSessionArg.mobile_client: Unlink a linked mobile device. """ _catch_all = None @classmethod def web_session(cls, val): """ Create an instance of this class set to the ``web_session`` tag with value ``val``. :param DeviceSessionArg val: :rtype: RevokeDeviceSessionArg """ return cls('web_session', val) @classmethod def desktop_client(cls, val): """ Create an instance of this class set to the ``desktop_client`` tag with value ``val``. :param RevokeDesktopClientArg val: :rtype: RevokeDeviceSessionArg """ return cls('desktop_client', val) @classmethod def mobile_client(cls, val): """ Create an instance of this class set to the ``mobile_client`` tag with value ``val``. :param DeviceSessionArg val: :rtype: RevokeDeviceSessionArg """ return cls('mobile_client', val) def is_web_session(self): """ Check if the union tag is ``web_session``. :rtype: bool """ return self._tag == 'web_session' def is_desktop_client(self): """ Check if the union tag is ``desktop_client``. :rtype: bool """ return self._tag == 'desktop_client' def is_mobile_client(self): """ Check if the union tag is ``mobile_client``. :rtype: bool """ return self._tag == 'mobile_client' def get_web_session(self): """ End an active session. Only call this if :meth:`is_web_session` is true. :rtype: DeviceSessionArg """ if not self.is_web_session(): raise AttributeError("tag 'web_session' not set") return self._value def get_desktop_client(self): """ Unlink a linked desktop device. Only call this if :meth:`is_desktop_client` is true. :rtype: RevokeDesktopClientArg """ if not self.is_desktop_client(): raise AttributeError("tag 'desktop_client' not set") return self._value def get_mobile_client(self): """ Unlink a linked mobile device. Only call this if :meth:`is_mobile_client` is true. :rtype: DeviceSessionArg """ if not self.is_mobile_client(): raise AttributeError("tag 'mobile_client' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeDeviceSessionArg, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeDeviceSessionArg_validator = bv.Union(RevokeDeviceSessionArg) class RevokeDeviceSessionBatchArg(bb.Struct): __slots__ = [ '_revoke_devices_value', ] _has_required_fields = True def __init__(self, revoke_devices=None): self._revoke_devices_value = bb.NOT_SET if revoke_devices is not None: self.revoke_devices = revoke_devices # Instance attribute type: list of [RevokeDeviceSessionArg] (validator is set below) revoke_devices = bb.Attribute("revoke_devices") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeDeviceSessionBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeDeviceSessionBatchArg_validator = bv.Struct(RevokeDeviceSessionBatchArg) class RevokeDeviceSessionBatchError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeDeviceSessionBatchError, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeDeviceSessionBatchError_validator = bv.Union(RevokeDeviceSessionBatchError) class RevokeDeviceSessionBatchResult(bb.Struct): __slots__ = [ '_revoke_devices_status_value', ] _has_required_fields = True def __init__(self, revoke_devices_status=None): self._revoke_devices_status_value = bb.NOT_SET if revoke_devices_status is not None: self.revoke_devices_status = revoke_devices_status # Instance attribute type: list of [RevokeDeviceSessionStatus] (validator is set below) revoke_devices_status = bb.Attribute("revoke_devices_status") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeDeviceSessionBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeDeviceSessionBatchResult_validator = bv.Struct(RevokeDeviceSessionBatchResult) class RevokeDeviceSessionError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.RevokeDeviceSessionError.device_session_not_found: Device session not found. :ivar team.RevokeDeviceSessionError.member_not_found: Member not found. """ _catch_all = 'other' # Attribute is overwritten below the class definition device_session_not_found = None # Attribute is overwritten below the class definition member_not_found = None # Attribute is overwritten below the class definition other = None def is_device_session_not_found(self): """ Check if the union tag is ``device_session_not_found``. :rtype: bool """ return self._tag == 'device_session_not_found' def is_member_not_found(self): """ Check if the union tag is ``member_not_found``. :rtype: bool """ return self._tag == 'member_not_found' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeDeviceSessionError, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeDeviceSessionError_validator = bv.Union(RevokeDeviceSessionError) class RevokeDeviceSessionStatus(bb.Struct): """ :ivar team.RevokeDeviceSessionStatus.success: Result of the revoking request. :ivar team.RevokeDeviceSessionStatus.error_type: The error cause in case of a failure. """ __slots__ = [ '_success_value', '_error_type_value', ] _has_required_fields = True def __init__(self, success=None, error_type=None): self._success_value = bb.NOT_SET self._error_type_value = bb.NOT_SET if success is not None: self.success = success if error_type is not None: self.error_type = error_type # Instance attribute type: bool (validator is set below) success = bb.Attribute("success") # Instance attribute type: RevokeDeviceSessionError (validator is set below) error_type = bb.Attribute("error_type", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeDeviceSessionStatus, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeDeviceSessionStatus_validator = bv.Struct(RevokeDeviceSessionStatus) class RevokeLinkedApiAppArg(bb.Struct): """ :ivar team.RevokeLinkedApiAppArg.app_id: The application's unique id. :ivar team.RevokeLinkedApiAppArg.team_member_id: The unique id of the member owning the device. :ivar team.RevokeLinkedApiAppArg.keep_app_folder: This flag is not longer supported, the application dedicated folder (in case the application uses one) will be kept. """ __slots__ = [ '_app_id_value', '_team_member_id_value', '_keep_app_folder_value', ] _has_required_fields = True def __init__(self, app_id=None, team_member_id=None, keep_app_folder=None): self._app_id_value = bb.NOT_SET self._team_member_id_value = bb.NOT_SET self._keep_app_folder_value = bb.NOT_SET if app_id is not None: self.app_id = app_id if team_member_id is not None: self.team_member_id = team_member_id if keep_app_folder is not None: self.keep_app_folder = keep_app_folder # Instance attribute type: str (validator is set below) app_id = bb.Attribute("app_id") # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id") # Instance attribute type: bool (validator is set below) keep_app_folder = bb.Attribute("keep_app_folder") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeLinkedApiAppArg, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeLinkedApiAppArg_validator = bv.Struct(RevokeLinkedApiAppArg) class RevokeLinkedApiAppBatchArg(bb.Struct): __slots__ = [ '_revoke_linked_app_value', ] _has_required_fields = True def __init__(self, revoke_linked_app=None): self._revoke_linked_app_value = bb.NOT_SET if revoke_linked_app is not None: self.revoke_linked_app = revoke_linked_app # Instance attribute type: list of [RevokeLinkedApiAppArg] (validator is set below) revoke_linked_app = bb.Attribute("revoke_linked_app") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeLinkedApiAppBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeLinkedApiAppBatchArg_validator = bv.Struct(RevokeLinkedApiAppBatchArg) class RevokeLinkedAppBatchError(bb.Union): """ Error returned by :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_revoke_linked_app_batch`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeLinkedAppBatchError, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeLinkedAppBatchError_validator = bv.Union(RevokeLinkedAppBatchError) class RevokeLinkedAppBatchResult(bb.Struct): __slots__ = [ '_revoke_linked_app_status_value', ] _has_required_fields = True def __init__(self, revoke_linked_app_status=None): self._revoke_linked_app_status_value = bb.NOT_SET if revoke_linked_app_status is not None: self.revoke_linked_app_status = revoke_linked_app_status # Instance attribute type: list of [RevokeLinkedAppStatus] (validator is set below) revoke_linked_app_status = bb.Attribute("revoke_linked_app_status") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeLinkedAppBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeLinkedAppBatchResult_validator = bv.Struct(RevokeLinkedAppBatchResult) class RevokeLinkedAppError(bb.Union): """ Error returned by :meth:`dropbox.dropbox_client.Dropbox.team_linked_apps_revoke_linked_app`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.RevokeLinkedAppError.app_not_found: Application not found. :ivar team.RevokeLinkedAppError.member_not_found: Member not found. :ivar team.RevokeLinkedAppError.app_folder_removal_not_supported: App folder removal is not supported. """ _catch_all = 'other' # Attribute is overwritten below the class definition app_not_found = None # Attribute is overwritten below the class definition member_not_found = None # Attribute is overwritten below the class definition app_folder_removal_not_supported = None # Attribute is overwritten below the class definition other = None def is_app_not_found(self): """ Check if the union tag is ``app_not_found``. :rtype: bool """ return self._tag == 'app_not_found' def is_member_not_found(self): """ Check if the union tag is ``member_not_found``. :rtype: bool """ return self._tag == 'member_not_found' def is_app_folder_removal_not_supported(self): """ Check if the union tag is ``app_folder_removal_not_supported``. :rtype: bool """ return self._tag == 'app_folder_removal_not_supported' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeLinkedAppError, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeLinkedAppError_validator = bv.Union(RevokeLinkedAppError) class RevokeLinkedAppStatus(bb.Struct): """ :ivar team.RevokeLinkedAppStatus.success: Result of the revoking request. :ivar team.RevokeLinkedAppStatus.error_type: The error cause in case of a failure. """ __slots__ = [ '_success_value', '_error_type_value', ] _has_required_fields = True def __init__(self, success=None, error_type=None): self._success_value = bb.NOT_SET self._error_type_value = bb.NOT_SET if success is not None: self.success = success if error_type is not None: self.error_type = error_type # Instance attribute type: bool (validator is set below) success = bb.Attribute("success") # Instance attribute type: RevokeLinkedAppError (validator is set below) error_type = bb.Attribute("error_type", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(RevokeLinkedAppStatus, self)._process_custom_annotations(annotation_type, field_path, processor) RevokeLinkedAppStatus_validator = bv.Struct(RevokeLinkedAppStatus) class SetCustomQuotaArg(bb.Struct): """ :ivar team.SetCustomQuotaArg.users_and_quotas: List of users and their custom quotas. """ __slots__ = [ '_users_and_quotas_value', ] _has_required_fields = True def __init__(self, users_and_quotas=None): self._users_and_quotas_value = bb.NOT_SET if users_and_quotas is not None: self.users_and_quotas = users_and_quotas # Instance attribute type: list of [UserCustomQuotaArg] (validator is set below) users_and_quotas = bb.Attribute("users_and_quotas") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SetCustomQuotaArg, self)._process_custom_annotations(annotation_type, field_path, processor) SetCustomQuotaArg_validator = bv.Struct(SetCustomQuotaArg) class SetCustomQuotaError(CustomQuotaError): """ Error returned when setting member custom quota. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.SetCustomQuotaError.some_users_are_excluded: Some of the users are on the excluded users list and can't have custom quota set. """ # Attribute is overwritten below the class definition some_users_are_excluded = None def is_some_users_are_excluded(self): """ Check if the union tag is ``some_users_are_excluded``. :rtype: bool """ return self._tag == 'some_users_are_excluded' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SetCustomQuotaError, self)._process_custom_annotations(annotation_type, field_path, processor) SetCustomQuotaError_validator = bv.Union(SetCustomQuotaError) class SharingAllowlistAddArgs(bb.Struct): """ Structure representing Approve List entries. Domain and emails are supported. At least one entry of any supported type is required. :ivar team.SharingAllowlistAddArgs.domains: List of domains represented by valid string representation (RFC-1034/5). :ivar team.SharingAllowlistAddArgs.emails: List of emails represented by valid string representation (RFC-5322/822). """ __slots__ = [ '_domains_value', '_emails_value', ] _has_required_fields = False def __init__(self, domains=None, emails=None): self._domains_value = bb.NOT_SET self._emails_value = bb.NOT_SET if domains is not None: self.domains = domains if emails is not None: self.emails = emails # Instance attribute type: list of [str] (validator is set below) domains = bb.Attribute("domains", nullable=True) # Instance attribute type: list of [str] (validator is set below) emails = bb.Attribute("emails", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingAllowlistAddArgs, self)._process_custom_annotations(annotation_type, field_path, processor) SharingAllowlistAddArgs_validator = bv.Struct(SharingAllowlistAddArgs) class SharingAllowlistAddError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str team.SharingAllowlistAddError.malformed_entry: One of provided values is not valid. :ivar team.SharingAllowlistAddError.no_entries_provided: Neither single domain nor email provided. :ivar team.SharingAllowlistAddError.too_many_entries_provided: Too many entries provided within one call. :ivar team.SharingAllowlistAddError.team_limit_reached: Team entries limit reached. :ivar team.SharingAllowlistAddError.unknown_error: Unknown error. :ivar str team.SharingAllowlistAddError.entries_already_exist: Entries already exists. """ _catch_all = 'other' # Attribute is overwritten below the class definition no_entries_provided = None # Attribute is overwritten below the class definition too_many_entries_provided = None # Attribute is overwritten below the class definition team_limit_reached = None # Attribute is overwritten below the class definition unknown_error = None # Attribute is overwritten below the class definition other = None @classmethod def malformed_entry(cls, val): """ Create an instance of this class set to the ``malformed_entry`` tag with value ``val``. :param str val: :rtype: SharingAllowlistAddError """ return cls('malformed_entry', val) @classmethod def entries_already_exist(cls, val): """ Create an instance of this class set to the ``entries_already_exist`` tag with value ``val``. :param str val: :rtype: SharingAllowlistAddError """ return cls('entries_already_exist', val) def is_malformed_entry(self): """ Check if the union tag is ``malformed_entry``. :rtype: bool """ return self._tag == 'malformed_entry' def is_no_entries_provided(self): """ Check if the union tag is ``no_entries_provided``. :rtype: bool """ return self._tag == 'no_entries_provided' def is_too_many_entries_provided(self): """ Check if the union tag is ``too_many_entries_provided``. :rtype: bool """ return self._tag == 'too_many_entries_provided' def is_team_limit_reached(self): """ Check if the union tag is ``team_limit_reached``. :rtype: bool """ return self._tag == 'team_limit_reached' def is_unknown_error(self): """ Check if the union tag is ``unknown_error``. :rtype: bool """ return self._tag == 'unknown_error' def is_entries_already_exist(self): """ Check if the union tag is ``entries_already_exist``. :rtype: bool """ return self._tag == 'entries_already_exist' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_malformed_entry(self): """ One of provided values is not valid. Only call this if :meth:`is_malformed_entry` is true. :rtype: str """ if not self.is_malformed_entry(): raise AttributeError("tag 'malformed_entry' not set") return self._value def get_entries_already_exist(self): """ Entries already exists. Only call this if :meth:`is_entries_already_exist` is true. :rtype: str """ if not self.is_entries_already_exist(): raise AttributeError("tag 'entries_already_exist' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingAllowlistAddError, self)._process_custom_annotations(annotation_type, field_path, processor) SharingAllowlistAddError_validator = bv.Union(SharingAllowlistAddError) class SharingAllowlistAddResponse(bb.Struct): """ This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingAllowlistAddResponse, self)._process_custom_annotations(annotation_type, field_path, processor) SharingAllowlistAddResponse_validator = bv.Struct(SharingAllowlistAddResponse) class SharingAllowlistListArg(bb.Struct): """ :ivar team.SharingAllowlistListArg.limit: The number of entries to fetch at one time. """ __slots__ = [ '_limit_value', ] _has_required_fields = False def __init__(self, limit=None): self._limit_value = bb.NOT_SET if limit is not None: self.limit = limit # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingAllowlistListArg, self)._process_custom_annotations(annotation_type, field_path, processor) SharingAllowlistListArg_validator = bv.Struct(SharingAllowlistListArg) class SharingAllowlistListContinueArg(bb.Struct): """ :ivar team.SharingAllowlistListContinueArg.cursor: The cursor returned from a previous call to :meth:`dropbox.dropbox_client.Dropbox.team_sharing_allowlist_list` or :meth:`dropbox.dropbox_client.Dropbox.team_sharing_allowlist_list_continue`. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingAllowlistListContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) SharingAllowlistListContinueArg_validator = bv.Struct(SharingAllowlistListContinueArg) class SharingAllowlistListContinueError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.SharingAllowlistListContinueError.invalid_cursor: Provided cursor is not valid. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_cursor = None # Attribute is overwritten below the class definition other = None def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingAllowlistListContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) SharingAllowlistListContinueError_validator = bv.Union(SharingAllowlistListContinueError) class SharingAllowlistListError(bb.Struct): """ This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingAllowlistListError, self)._process_custom_annotations(annotation_type, field_path, processor) SharingAllowlistListError_validator = bv.Struct(SharingAllowlistListError) class SharingAllowlistListResponse(bb.Struct): """ :ivar team.SharingAllowlistListResponse.domains: List of domains represented by valid string representation (RFC-1034/5). :ivar team.SharingAllowlistListResponse.emails: List of emails represented by valid string representation (RFC-5322/822). :ivar team.SharingAllowlistListResponse.cursor: If this is nonempty, there are more entries that can be fetched with :meth:`dropbox.dropbox_client.Dropbox.team_sharing_allowlist_list_continue`. :ivar team.SharingAllowlistListResponse.has_more: if true indicates that more entries can be fetched with :meth:`dropbox.dropbox_client.Dropbox.team_sharing_allowlist_list_continue`. """ __slots__ = [ '_domains_value', '_emails_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, domains=None, emails=None, cursor=None, has_more=None): self._domains_value = bb.NOT_SET self._emails_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if domains is not None: self.domains = domains if emails is not None: self.emails = emails if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [str] (validator is set below) domains = bb.Attribute("domains") # Instance attribute type: list of [str] (validator is set below) emails = bb.Attribute("emails") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingAllowlistListResponse, self)._process_custom_annotations(annotation_type, field_path, processor) SharingAllowlistListResponse_validator = bv.Struct(SharingAllowlistListResponse) class SharingAllowlistRemoveArgs(bb.Struct): """ :ivar team.SharingAllowlistRemoveArgs.domains: List of domains represented by valid string representation (RFC-1034/5). :ivar team.SharingAllowlistRemoveArgs.emails: List of emails represented by valid string representation (RFC-5322/822). """ __slots__ = [ '_domains_value', '_emails_value', ] _has_required_fields = False def __init__(self, domains=None, emails=None): self._domains_value = bb.NOT_SET self._emails_value = bb.NOT_SET if domains is not None: self.domains = domains if emails is not None: self.emails = emails # Instance attribute type: list of [str] (validator is set below) domains = bb.Attribute("domains", nullable=True) # Instance attribute type: list of [str] (validator is set below) emails = bb.Attribute("emails", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingAllowlistRemoveArgs, self)._process_custom_annotations(annotation_type, field_path, processor) SharingAllowlistRemoveArgs_validator = bv.Struct(SharingAllowlistRemoveArgs) class SharingAllowlistRemoveError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str team.SharingAllowlistRemoveError.malformed_entry: One of provided values is not valid. :ivar str team.SharingAllowlistRemoveError.entries_do_not_exist: One or more provided values do not exist. :ivar team.SharingAllowlistRemoveError.no_entries_provided: Neither single domain nor email provided. :ivar team.SharingAllowlistRemoveError.too_many_entries_provided: Too many entries provided within one call. :ivar team.SharingAllowlistRemoveError.unknown_error: Unknown error. """ _catch_all = 'other' # Attribute is overwritten below the class definition no_entries_provided = None # Attribute is overwritten below the class definition too_many_entries_provided = None # Attribute is overwritten below the class definition unknown_error = None # Attribute is overwritten below the class definition other = None @classmethod def malformed_entry(cls, val): """ Create an instance of this class set to the ``malformed_entry`` tag with value ``val``. :param str val: :rtype: SharingAllowlistRemoveError """ return cls('malformed_entry', val) @classmethod def entries_do_not_exist(cls, val): """ Create an instance of this class set to the ``entries_do_not_exist`` tag with value ``val``. :param str val: :rtype: SharingAllowlistRemoveError """ return cls('entries_do_not_exist', val) def is_malformed_entry(self): """ Check if the union tag is ``malformed_entry``. :rtype: bool """ return self._tag == 'malformed_entry' def is_entries_do_not_exist(self): """ Check if the union tag is ``entries_do_not_exist``. :rtype: bool """ return self._tag == 'entries_do_not_exist' def is_no_entries_provided(self): """ Check if the union tag is ``no_entries_provided``. :rtype: bool """ return self._tag == 'no_entries_provided' def is_too_many_entries_provided(self): """ Check if the union tag is ``too_many_entries_provided``. :rtype: bool """ return self._tag == 'too_many_entries_provided' def is_unknown_error(self): """ Check if the union tag is ``unknown_error``. :rtype: bool """ return self._tag == 'unknown_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_malformed_entry(self): """ One of provided values is not valid. Only call this if :meth:`is_malformed_entry` is true. :rtype: str """ if not self.is_malformed_entry(): raise AttributeError("tag 'malformed_entry' not set") return self._value def get_entries_do_not_exist(self): """ One or more provided values do not exist. Only call this if :meth:`is_entries_do_not_exist` is true. :rtype: str """ if not self.is_entries_do_not_exist(): raise AttributeError("tag 'entries_do_not_exist' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingAllowlistRemoveError, self)._process_custom_annotations(annotation_type, field_path, processor) SharingAllowlistRemoveError_validator = bv.Union(SharingAllowlistRemoveError) class SharingAllowlistRemoveResponse(bb.Struct): """ This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingAllowlistRemoveResponse, self)._process_custom_annotations(annotation_type, field_path, processor) SharingAllowlistRemoveResponse_validator = bv.Struct(SharingAllowlistRemoveResponse) class StorageBucket(bb.Struct): """ Describes the number of users in a specific storage bucket. :ivar team.StorageBucket.bucket: The name of the storage bucket. For example, '1G' is a bucket of users with storage size up to 1 Giga. :ivar team.StorageBucket.users: The number of people whose storage is in the range of this storage bucket. """ __slots__ = [ '_bucket_value', '_users_value', ] _has_required_fields = True def __init__(self, bucket=None, users=None): self._bucket_value = bb.NOT_SET self._users_value = bb.NOT_SET if bucket is not None: self.bucket = bucket if users is not None: self.users = users # Instance attribute type: str (validator is set below) bucket = bb.Attribute("bucket") # Instance attribute type: int (validator is set below) users = bb.Attribute("users") def _process_custom_annotations(self, annotation_type, field_path, processor): super(StorageBucket, self)._process_custom_annotations(annotation_type, field_path, processor) StorageBucket_validator = bv.Struct(StorageBucket) class TeamFolderAccessError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TeamFolderAccessError.invalid_team_folder_id: The team folder ID is invalid. :ivar team.TeamFolderAccessError.no_access: The authenticated app does not have permission to manage that team folder. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_team_folder_id = None # Attribute is overwritten below the class definition no_access = None # Attribute is overwritten below the class definition other = None def is_invalid_team_folder_id(self): """ Check if the union tag is ``invalid_team_folder_id``. :rtype: bool """ return self._tag == 'invalid_team_folder_id' def is_no_access(self): """ Check if the union tag is ``no_access``. :rtype: bool """ return self._tag == 'no_access' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderAccessError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderAccessError_validator = bv.Union(TeamFolderAccessError) class TeamFolderActivateError(BaseTeamFolderError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderActivateError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderActivateError_validator = bv.Union(TeamFolderActivateError) class TeamFolderIdArg(bb.Struct): """ :ivar team.TeamFolderIdArg.team_folder_id: The ID of the team folder. """ __slots__ = [ '_team_folder_id_value', ] _has_required_fields = True def __init__(self, team_folder_id=None): self._team_folder_id_value = bb.NOT_SET if team_folder_id is not None: self.team_folder_id = team_folder_id # Instance attribute type: str (validator is set below) team_folder_id = bb.Attribute("team_folder_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderIdArg, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderIdArg_validator = bv.Struct(TeamFolderIdArg) class TeamFolderArchiveArg(TeamFolderIdArg): """ :ivar team.TeamFolderArchiveArg.force_async_off: Whether to force the archive to happen synchronously. """ __slots__ = [ '_force_async_off_value', ] _has_required_fields = True def __init__(self, team_folder_id=None, force_async_off=None): super(TeamFolderArchiveArg, self).__init__(team_folder_id) self._force_async_off_value = bb.NOT_SET if force_async_off is not None: self.force_async_off = force_async_off # Instance attribute type: bool (validator is set below) force_async_off = bb.Attribute("force_async_off") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderArchiveArg, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderArchiveArg_validator = bv.Struct(TeamFolderArchiveArg) class TeamFolderArchiveError(BaseTeamFolderError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderArchiveError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderArchiveError_validator = bv.Union(TeamFolderArchiveError) class TeamFolderArchiveJobStatus(async_.PollResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar TeamFolderMetadata TeamFolderArchiveJobStatus.complete: The archive job has finished. The value is the metadata for the resulting team folder. :ivar TeamFolderArchiveError TeamFolderArchiveJobStatus.failed: Error occurred while performing an asynchronous job from :meth:`dropbox.dropbox_client.Dropbox.team_team_folder_archive`. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param TeamFolderMetadata val: :rtype: TeamFolderArchiveJobStatus """ return cls('complete', val) @classmethod def failed(cls, val): """ Create an instance of this class set to the ``failed`` tag with value ``val``. :param TeamFolderArchiveError val: :rtype: TeamFolderArchiveJobStatus """ return cls('failed', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def is_failed(self): """ Check if the union tag is ``failed``. :rtype: bool """ return self._tag == 'failed' def get_complete(self): """ The archive job has finished. The value is the metadata for the resulting team folder. Only call this if :meth:`is_complete` is true. :rtype: TeamFolderMetadata """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def get_failed(self): """ Error occurred while performing an asynchronous job from :meth:`dropbox.dropbox_client.Dropbox.team_team_folder_archive`. Only call this if :meth:`is_failed` is true. :rtype: TeamFolderArchiveError """ if not self.is_failed(): raise AttributeError("tag 'failed' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderArchiveJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderArchiveJobStatus_validator = bv.Union(TeamFolderArchiveJobStatus) class TeamFolderArchiveLaunch(async_.LaunchResultBase): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ @classmethod def complete(cls, val): """ Create an instance of this class set to the ``complete`` tag with value ``val``. :param TeamFolderMetadata val: :rtype: TeamFolderArchiveLaunch """ return cls('complete', val) def is_complete(self): """ Check if the union tag is ``complete``. :rtype: bool """ return self._tag == 'complete' def get_complete(self): """ Only call this if :meth:`is_complete` is true. :rtype: TeamFolderMetadata """ if not self.is_complete(): raise AttributeError("tag 'complete' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderArchiveLaunch, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderArchiveLaunch_validator = bv.Union(TeamFolderArchiveLaunch) class TeamFolderCreateArg(bb.Struct): """ :ivar team.TeamFolderCreateArg.name: Name for the new team folder. :ivar team.TeamFolderCreateArg.sync_setting: The sync setting to apply to this team folder. Only permitted if the team has team selective sync enabled. """ __slots__ = [ '_name_value', '_sync_setting_value', ] _has_required_fields = True def __init__(self, name=None, sync_setting=None): self._name_value = bb.NOT_SET self._sync_setting_value = bb.NOT_SET if name is not None: self.name = name if sync_setting is not None: self.sync_setting = sync_setting # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: files.SyncSettingArg (validator is set below) sync_setting = bb.Attribute("sync_setting", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderCreateArg, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderCreateArg_validator = bv.Struct(TeamFolderCreateArg) class TeamFolderCreateError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TeamFolderCreateError.invalid_folder_name: The provided name cannot be used. :ivar team.TeamFolderCreateError.folder_name_already_used: There is already a team folder with the provided name. :ivar team.TeamFolderCreateError.folder_name_reserved: The provided name cannot be used because it is reserved. :ivar SyncSettingsError TeamFolderCreateError.sync_settings_error: An error occurred setting the sync settings. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_folder_name = None # Attribute is overwritten below the class definition folder_name_already_used = None # Attribute is overwritten below the class definition folder_name_reserved = None # Attribute is overwritten below the class definition other = None @classmethod def sync_settings_error(cls, val): """ Create an instance of this class set to the ``sync_settings_error`` tag with value ``val``. :param files.SyncSettingsError val: :rtype: TeamFolderCreateError """ return cls('sync_settings_error', val) def is_invalid_folder_name(self): """ Check if the union tag is ``invalid_folder_name``. :rtype: bool """ return self._tag == 'invalid_folder_name' def is_folder_name_already_used(self): """ Check if the union tag is ``folder_name_already_used``. :rtype: bool """ return self._tag == 'folder_name_already_used' def is_folder_name_reserved(self): """ Check if the union tag is ``folder_name_reserved``. :rtype: bool """ return self._tag == 'folder_name_reserved' def is_sync_settings_error(self): """ Check if the union tag is ``sync_settings_error``. :rtype: bool """ return self._tag == 'sync_settings_error' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_sync_settings_error(self): """ An error occurred setting the sync settings. Only call this if :meth:`is_sync_settings_error` is true. :rtype: files.SyncSettingsError """ if not self.is_sync_settings_error(): raise AttributeError("tag 'sync_settings_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderCreateError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderCreateError_validator = bv.Union(TeamFolderCreateError) class TeamFolderGetInfoItem(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str team.TeamFolderGetInfoItem.id_not_found: An ID that was provided as a parameter to :route:`team_folder/get_info` did not match any of the team's team folders. :ivar TeamFolderMetadata TeamFolderGetInfoItem.team_folder_metadata: Properties of a team folder. """ _catch_all = None @classmethod def id_not_found(cls, val): """ Create an instance of this class set to the ``id_not_found`` tag with value ``val``. :param str val: :rtype: TeamFolderGetInfoItem """ return cls('id_not_found', val) @classmethod def team_folder_metadata(cls, val): """ Create an instance of this class set to the ``team_folder_metadata`` tag with value ``val``. :param TeamFolderMetadata val: :rtype: TeamFolderGetInfoItem """ return cls('team_folder_metadata', val) def is_id_not_found(self): """ Check if the union tag is ``id_not_found``. :rtype: bool """ return self._tag == 'id_not_found' def is_team_folder_metadata(self): """ Check if the union tag is ``team_folder_metadata``. :rtype: bool """ return self._tag == 'team_folder_metadata' def get_id_not_found(self): """ An ID that was provided as a parameter to :meth:`dropbox.dropbox_client.Dropbox.team_team_folder_get_info` did not match any of the team's team folders. Only call this if :meth:`is_id_not_found` is true. :rtype: str """ if not self.is_id_not_found(): raise AttributeError("tag 'id_not_found' not set") return self._value def get_team_folder_metadata(self): """ Properties of a team folder. Only call this if :meth:`is_team_folder_metadata` is true. :rtype: TeamFolderMetadata """ if not self.is_team_folder_metadata(): raise AttributeError("tag 'team_folder_metadata' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderGetInfoItem, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderGetInfoItem_validator = bv.Union(TeamFolderGetInfoItem) class TeamFolderIdListArg(bb.Struct): """ :ivar team.TeamFolderIdListArg.team_folder_ids: The list of team folder IDs. """ __slots__ = [ '_team_folder_ids_value', ] _has_required_fields = True def __init__(self, team_folder_ids=None): self._team_folder_ids_value = bb.NOT_SET if team_folder_ids is not None: self.team_folder_ids = team_folder_ids # Instance attribute type: list of [str] (validator is set below) team_folder_ids = bb.Attribute("team_folder_ids") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderIdListArg, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderIdListArg_validator = bv.Struct(TeamFolderIdListArg) class TeamFolderInvalidStatusError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TeamFolderInvalidStatusError.active: The folder is active and the operation did not succeed. :ivar team.TeamFolderInvalidStatusError.archived: The folder is archived and the operation did not succeed. :ivar team.TeamFolderInvalidStatusError.archive_in_progress: The folder is being archived and the operation did not succeed. """ _catch_all = 'other' # Attribute is overwritten below the class definition active = None # Attribute is overwritten below the class definition archived = None # Attribute is overwritten below the class definition archive_in_progress = None # Attribute is overwritten below the class definition other = None def is_active(self): """ Check if the union tag is ``active``. :rtype: bool """ return self._tag == 'active' def is_archived(self): """ Check if the union tag is ``archived``. :rtype: bool """ return self._tag == 'archived' def is_archive_in_progress(self): """ Check if the union tag is ``archive_in_progress``. :rtype: bool """ return self._tag == 'archive_in_progress' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderInvalidStatusError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderInvalidStatusError_validator = bv.Union(TeamFolderInvalidStatusError) class TeamFolderListArg(bb.Struct): """ :ivar team.TeamFolderListArg.limit: The maximum number of results to return per request. """ __slots__ = [ '_limit_value', ] _has_required_fields = False def __init__(self, limit=None): self._limit_value = bb.NOT_SET if limit is not None: self.limit = limit # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderListArg, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderListArg_validator = bv.Struct(TeamFolderListArg) class TeamFolderListContinueArg(bb.Struct): """ :ivar team.TeamFolderListContinueArg.cursor: Indicates from what point to get the next set of team folders. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderListContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderListContinueArg_validator = bv.Struct(TeamFolderListContinueArg) class TeamFolderListContinueError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TeamFolderListContinueError.invalid_cursor: The cursor is invalid. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_cursor = None # Attribute is overwritten below the class definition other = None def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderListContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderListContinueError_validator = bv.Union(TeamFolderListContinueError) class TeamFolderListError(bb.Struct): __slots__ = [ '_access_error_value', ] _has_required_fields = True def __init__(self, access_error=None): self._access_error_value = bb.NOT_SET if access_error is not None: self.access_error = access_error # Instance attribute type: TeamFolderAccessError (validator is set below) access_error = bb.Attribute("access_error", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderListError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderListError_validator = bv.Struct(TeamFolderListError) class TeamFolderListResult(bb.Struct): """ Result for :meth:`dropbox.dropbox_client.Dropbox.team_team_folder_list` and :meth:`dropbox.dropbox_client.Dropbox.team_team_folder_list_continue`. :ivar team.TeamFolderListResult.team_folders: List of all team folders in the authenticated team. :ivar team.TeamFolderListResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.team_team_folder_list_continue` to obtain additional team folders. :ivar team.TeamFolderListResult.has_more: Is true if there are additional team folders that have not been returned yet. An additional call to :meth:`dropbox.dropbox_client.Dropbox.team_team_folder_list_continue` can retrieve them. """ __slots__ = [ '_team_folders_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, team_folders=None, cursor=None, has_more=None): self._team_folders_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if team_folders is not None: self.team_folders = team_folders if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [TeamFolderMetadata] (validator is set below) team_folders = bb.Attribute("team_folders") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderListResult, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderListResult_validator = bv.Struct(TeamFolderListResult) class TeamFolderMetadata(bb.Struct): """ Properties of a team folder. :ivar team.TeamFolderMetadata.team_folder_id: The ID of the team folder. :ivar team.TeamFolderMetadata.name: The name of the team folder. :ivar team.TeamFolderMetadata.status: The status of the team folder. :ivar team.TeamFolderMetadata.is_team_shared_dropbox: True if this team folder is a shared team root. :ivar team.TeamFolderMetadata.sync_setting: The sync setting applied to this team folder. :ivar team.TeamFolderMetadata.content_sync_settings: Sync settings applied to contents of this team folder. """ __slots__ = [ '_team_folder_id_value', '_name_value', '_status_value', '_is_team_shared_dropbox_value', '_sync_setting_value', '_content_sync_settings_value', ] _has_required_fields = True def __init__(self, team_folder_id=None, name=None, status=None, is_team_shared_dropbox=None, sync_setting=None, content_sync_settings=None): self._team_folder_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._status_value = bb.NOT_SET self._is_team_shared_dropbox_value = bb.NOT_SET self._sync_setting_value = bb.NOT_SET self._content_sync_settings_value = bb.NOT_SET if team_folder_id is not None: self.team_folder_id = team_folder_id if name is not None: self.name = name if status is not None: self.status = status if is_team_shared_dropbox is not None: self.is_team_shared_dropbox = is_team_shared_dropbox if sync_setting is not None: self.sync_setting = sync_setting if content_sync_settings is not None: self.content_sync_settings = content_sync_settings # Instance attribute type: str (validator is set below) team_folder_id = bb.Attribute("team_folder_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: TeamFolderStatus (validator is set below) status = bb.Attribute("status", user_defined=True) # Instance attribute type: bool (validator is set below) is_team_shared_dropbox = bb.Attribute("is_team_shared_dropbox") # Instance attribute type: files.SyncSetting (validator is set below) sync_setting = bb.Attribute("sync_setting", user_defined=True) # Instance attribute type: list of [files.ContentSyncSetting] (validator is set below) content_sync_settings = bb.Attribute("content_sync_settings") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderMetadata, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderMetadata_validator = bv.Struct(TeamFolderMetadata) class TeamFolderPermanentlyDeleteError(BaseTeamFolderError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderPermanentlyDeleteError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderPermanentlyDeleteError_validator = bv.Union(TeamFolderPermanentlyDeleteError) class TeamFolderRenameArg(TeamFolderIdArg): """ :ivar team.TeamFolderRenameArg.name: New team folder name. """ __slots__ = [ '_name_value', ] _has_required_fields = True def __init__(self, team_folder_id=None, name=None): super(TeamFolderRenameArg, self).__init__(team_folder_id) self._name_value = bb.NOT_SET if name is not None: self.name = name # Instance attribute type: str (validator is set below) name = bb.Attribute("name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderRenameArg, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderRenameArg_validator = bv.Struct(TeamFolderRenameArg) class TeamFolderRenameError(BaseTeamFolderError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TeamFolderRenameError.invalid_folder_name: The provided folder name cannot be used. :ivar team.TeamFolderRenameError.folder_name_already_used: There is already a team folder with the same name. :ivar team.TeamFolderRenameError.folder_name_reserved: The provided name cannot be used because it is reserved. """ # Attribute is overwritten below the class definition invalid_folder_name = None # Attribute is overwritten below the class definition folder_name_already_used = None # Attribute is overwritten below the class definition folder_name_reserved = None def is_invalid_folder_name(self): """ Check if the union tag is ``invalid_folder_name``. :rtype: bool """ return self._tag == 'invalid_folder_name' def is_folder_name_already_used(self): """ Check if the union tag is ``folder_name_already_used``. :rtype: bool """ return self._tag == 'folder_name_already_used' def is_folder_name_reserved(self): """ Check if the union tag is ``folder_name_reserved``. :rtype: bool """ return self._tag == 'folder_name_reserved' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderRenameError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderRenameError_validator = bv.Union(TeamFolderRenameError) class TeamFolderStatus(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TeamFolderStatus.active: The team folder and sub-folders are available to all members. :ivar team.TeamFolderStatus.archived: The team folder is not accessible outside of the team folder manager. :ivar team.TeamFolderStatus.archive_in_progress: The team folder is not accessible outside of the team folder manager. """ _catch_all = 'other' # Attribute is overwritten below the class definition active = None # Attribute is overwritten below the class definition archived = None # Attribute is overwritten below the class definition archive_in_progress = None # Attribute is overwritten below the class definition other = None def is_active(self): """ Check if the union tag is ``active``. :rtype: bool """ return self._tag == 'active' def is_archived(self): """ Check if the union tag is ``archived``. :rtype: bool """ return self._tag == 'archived' def is_archive_in_progress(self): """ Check if the union tag is ``archive_in_progress``. :rtype: bool """ return self._tag == 'archive_in_progress' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderStatus, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderStatus_validator = bv.Union(TeamFolderStatus) class TeamFolderTeamSharedDropboxError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TeamFolderTeamSharedDropboxError.disallowed: This action is not allowed for a shared team root. """ _catch_all = 'other' # Attribute is overwritten below the class definition disallowed = None # Attribute is overwritten below the class definition other = None def is_disallowed(self): """ Check if the union tag is ``disallowed``. :rtype: bool """ return self._tag == 'disallowed' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderTeamSharedDropboxError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderTeamSharedDropboxError_validator = bv.Union(TeamFolderTeamSharedDropboxError) class TeamFolderUpdateSyncSettingsArg(TeamFolderIdArg): """ :ivar team.TeamFolderUpdateSyncSettingsArg.sync_setting: Sync setting to apply to the team folder itself. Only meaningful if the team folder is not a shared team root. :ivar team.TeamFolderUpdateSyncSettingsArg.content_sync_settings: Sync settings to apply to contents of this team folder. """ __slots__ = [ '_sync_setting_value', '_content_sync_settings_value', ] _has_required_fields = True def __init__(self, team_folder_id=None, sync_setting=None, content_sync_settings=None): super(TeamFolderUpdateSyncSettingsArg, self).__init__(team_folder_id) self._sync_setting_value = bb.NOT_SET self._content_sync_settings_value = bb.NOT_SET if sync_setting is not None: self.sync_setting = sync_setting if content_sync_settings is not None: self.content_sync_settings = content_sync_settings # Instance attribute type: files.SyncSettingArg (validator is set below) sync_setting = bb.Attribute("sync_setting", nullable=True, user_defined=True) # Instance attribute type: list of [files.ContentSyncSettingArg] (validator is set below) content_sync_settings = bb.Attribute("content_sync_settings", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderUpdateSyncSettingsArg, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderUpdateSyncSettingsArg_validator = bv.Struct(TeamFolderUpdateSyncSettingsArg) class TeamFolderUpdateSyncSettingsError(BaseTeamFolderError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar SyncSettingsError TeamFolderUpdateSyncSettingsError.sync_settings_error: An error occurred setting the sync settings. """ @classmethod def sync_settings_error(cls, val): """ Create an instance of this class set to the ``sync_settings_error`` tag with value ``val``. :param files.SyncSettingsError val: :rtype: TeamFolderUpdateSyncSettingsError """ return cls('sync_settings_error', val) def is_sync_settings_error(self): """ Check if the union tag is ``sync_settings_error``. :rtype: bool """ return self._tag == 'sync_settings_error' def get_sync_settings_error(self): """ An error occurred setting the sync settings. Only call this if :meth:`is_sync_settings_error` is true. :rtype: files.SyncSettingsError """ if not self.is_sync_settings_error(): raise AttributeError("tag 'sync_settings_error' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderUpdateSyncSettingsError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderUpdateSyncSettingsError_validator = bv.Union(TeamFolderUpdateSyncSettingsError) class TeamGetInfoResult(bb.Struct): """ :ivar team.TeamGetInfoResult.name: The name of the team. :ivar team.TeamGetInfoResult.team_id: The ID of the team. :ivar team.TeamGetInfoResult.num_licensed_users: The number of licenses available to the team. :ivar team.TeamGetInfoResult.num_provisioned_users: The number of accounts that have been invited or are already active members of the team. :ivar team.TeamGetInfoResult.num_used_licenses: The number of licenses used on the team. """ __slots__ = [ '_name_value', '_team_id_value', '_num_licensed_users_value', '_num_provisioned_users_value', '_num_used_licenses_value', '_policies_value', ] _has_required_fields = True def __init__(self, name=None, team_id=None, num_licensed_users=None, num_provisioned_users=None, policies=None, num_used_licenses=None): self._name_value = bb.NOT_SET self._team_id_value = bb.NOT_SET self._num_licensed_users_value = bb.NOT_SET self._num_provisioned_users_value = bb.NOT_SET self._num_used_licenses_value = bb.NOT_SET self._policies_value = bb.NOT_SET if name is not None: self.name = name if team_id is not None: self.team_id = team_id if num_licensed_users is not None: self.num_licensed_users = num_licensed_users if num_provisioned_users is not None: self.num_provisioned_users = num_provisioned_users if num_used_licenses is not None: self.num_used_licenses = num_used_licenses if policies is not None: self.policies = policies # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) team_id = bb.Attribute("team_id") # Instance attribute type: int (validator is set below) num_licensed_users = bb.Attribute("num_licensed_users") # Instance attribute type: int (validator is set below) num_provisioned_users = bb.Attribute("num_provisioned_users") # Instance attribute type: int (validator is set below) num_used_licenses = bb.Attribute("num_used_licenses") # Instance attribute type: team_policies.TeamMemberPolicies (validator is set below) policies = bb.Attribute("policies", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamGetInfoResult, self)._process_custom_annotations(annotation_type, field_path, processor) TeamGetInfoResult_validator = bv.Struct(TeamGetInfoResult) class TeamMemberInfo(bb.Struct): """ Information about a team member. :ivar team.TeamMemberInfo.profile: Profile of a user as a member of a team. :ivar team.TeamMemberInfo.role: The user's role in the team. """ __slots__ = [ '_profile_value', '_role_value', ] _has_required_fields = True def __init__(self, profile=None, role=None): self._profile_value = bb.NOT_SET self._role_value = bb.NOT_SET if profile is not None: self.profile = profile if role is not None: self.role = role # Instance attribute type: TeamMemberProfile (validator is set below) profile = bb.Attribute("profile", user_defined=True) # Instance attribute type: AdminTier (validator is set below) role = bb.Attribute("role", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMemberInfo, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMemberInfo_validator = bv.Struct(TeamMemberInfo) class TeamMemberInfoV2(bb.Struct): """ Information about a team member. :ivar team.TeamMemberInfoV2.profile: Profile of a user as a member of a team. :ivar team.TeamMemberInfoV2.roles: The user's roles in the team. """ __slots__ = [ '_profile_value', '_roles_value', ] _has_required_fields = True def __init__(self, profile=None, roles=None): self._profile_value = bb.NOT_SET self._roles_value = bb.NOT_SET if profile is not None: self.profile = profile if roles is not None: self.roles = roles # Instance attribute type: TeamMemberProfile (validator is set below) profile = bb.Attribute("profile", user_defined=True) # Instance attribute type: list of [TeamMemberRole] (validator is set below) roles = bb.Attribute("roles", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMemberInfoV2, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMemberInfoV2_validator = bv.Struct(TeamMemberInfoV2) class TeamMemberInfoV2Result(bb.Struct): """ Information about a team member, after the change, like at :meth:`dropbox.dropbox_client.Dropbox.team_members_set_profile`. :ivar team.TeamMemberInfoV2Result.member_info: Member info, after the change. """ __slots__ = [ '_member_info_value', ] _has_required_fields = True def __init__(self, member_info=None): self._member_info_value = bb.NOT_SET if member_info is not None: self.member_info = member_info # Instance attribute type: TeamMemberInfoV2 (validator is set below) member_info = bb.Attribute("member_info", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMemberInfoV2Result, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMemberInfoV2Result_validator = bv.Struct(TeamMemberInfoV2Result) class TeamMemberProfile(MemberProfile): """ Profile of a user as a member of a team. :ivar team.TeamMemberProfile.groups: List of group IDs of groups that the user belongs to. :ivar team.TeamMemberProfile.member_folder_id: The namespace id of the user's root folder. """ __slots__ = [ '_groups_value', '_member_folder_id_value', ] _has_required_fields = True def __init__(self, team_member_id=None, email=None, email_verified=None, status=None, name=None, membership_type=None, groups=None, member_folder_id=None, external_id=None, account_id=None, secondary_emails=None, invited_on=None, joined_on=None, suspended_on=None, persistent_id=None, is_directory_restricted=None, profile_photo_url=None): super(TeamMemberProfile, self).__init__(team_member_id, email, email_verified, status, name, membership_type, external_id, account_id, secondary_emails, invited_on, joined_on, suspended_on, persistent_id, is_directory_restricted, profile_photo_url) self._groups_value = bb.NOT_SET self._member_folder_id_value = bb.NOT_SET if groups is not None: self.groups = groups if member_folder_id is not None: self.member_folder_id = member_folder_id # Instance attribute type: list of [str] (validator is set below) groups = bb.Attribute("groups") # Instance attribute type: str (validator is set below) member_folder_id = bb.Attribute("member_folder_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMemberProfile, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMemberProfile_validator = bv.Struct(TeamMemberProfile) class TeamMemberRole(bb.Struct): """ A role which can be attached to a team member. This replaces AdminTier; each AdminTier corresponds to a new TeamMemberRole with a matching name. :ivar team.TeamMemberRole.role_id: A string containing encoded role ID. For roles defined by Dropbox, this is the same across all teams. :ivar team.TeamMemberRole.name: The role display name. :ivar team.TeamMemberRole.description: Role description. Describes which permissions come with this role. """ __slots__ = [ '_role_id_value', '_name_value', '_description_value', ] _has_required_fields = True def __init__(self, role_id=None, name=None, description=None): self._role_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._description_value = bb.NOT_SET if role_id is not None: self.role_id = role_id if name is not None: self.name = name if description is not None: self.description = description # Instance attribute type: str (validator is set below) role_id = bb.Attribute("role_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMemberRole, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMemberRole_validator = bv.Struct(TeamMemberRole) class TeamMemberStatus(bb.Union): """ The user's status as a member of a specific team. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TeamMemberStatus.active: User has successfully joined the team. :ivar team.TeamMemberStatus.invited: User has been invited to a team, but has not joined the team yet. :ivar team.TeamMemberStatus.suspended: User is no longer a member of the team, but the account can be un-suspended, re-establishing the user as a team member. :ivar RemovedStatus TeamMemberStatus.removed: User is no longer a member of the team. Removed users are only listed when include_removed is true in members/list. """ _catch_all = None # Attribute is overwritten below the class definition active = None # Attribute is overwritten below the class definition invited = None # Attribute is overwritten below the class definition suspended = None @classmethod def removed(cls, val): """ Create an instance of this class set to the ``removed`` tag with value ``val``. :param RemovedStatus val: :rtype: TeamMemberStatus """ return cls('removed', val) def is_active(self): """ Check if the union tag is ``active``. :rtype: bool """ return self._tag == 'active' def is_invited(self): """ Check if the union tag is ``invited``. :rtype: bool """ return self._tag == 'invited' def is_suspended(self): """ Check if the union tag is ``suspended``. :rtype: bool """ return self._tag == 'suspended' def is_removed(self): """ Check if the union tag is ``removed``. :rtype: bool """ return self._tag == 'removed' def get_removed(self): """ User is no longer a member of the team. Removed users are only listed when include_removed is true in members/list. Only call this if :meth:`is_removed` is true. :rtype: RemovedStatus """ if not self.is_removed(): raise AttributeError("tag 'removed' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMemberStatus, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMemberStatus_validator = bv.Union(TeamMemberStatus) class TeamMembershipType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TeamMembershipType.full: User uses a license and has full access to team resources like the shared quota. :ivar team.TeamMembershipType.limited: User does not have access to the shared quota and team admins have restricted administrative control. """ _catch_all = None # Attribute is overwritten below the class definition full = None # Attribute is overwritten below the class definition limited = None def is_full(self): """ Check if the union tag is ``full``. :rtype: bool """ return self._tag == 'full' def is_limited(self): """ Check if the union tag is ``limited``. :rtype: bool """ return self._tag == 'limited' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMembershipType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMembershipType_validator = bv.Union(TeamMembershipType) class TeamNamespacesListArg(bb.Struct): """ :ivar team.TeamNamespacesListArg.limit: Specifying a value here has no effect. """ __slots__ = [ '_limit_value', ] _has_required_fields = False def __init__(self, limit=None): self._limit_value = bb.NOT_SET if limit is not None: self.limit = limit # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamNamespacesListArg, self)._process_custom_annotations(annotation_type, field_path, processor) TeamNamespacesListArg_validator = bv.Struct(TeamNamespacesListArg) class TeamNamespacesListContinueArg(bb.Struct): """ :ivar team.TeamNamespacesListContinueArg.cursor: Indicates from what point to get the next set of team-accessible namespaces. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamNamespacesListContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) TeamNamespacesListContinueArg_validator = bv.Struct(TeamNamespacesListContinueArg) class TeamNamespacesListError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TeamNamespacesListError.invalid_arg: Argument passed in is invalid. """ _catch_all = 'other' # Attribute is overwritten below the class definition invalid_arg = None # Attribute is overwritten below the class definition other = None def is_invalid_arg(self): """ Check if the union tag is ``invalid_arg``. :rtype: bool """ return self._tag == 'invalid_arg' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamNamespacesListError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamNamespacesListError_validator = bv.Union(TeamNamespacesListError) class TeamNamespacesListContinueError(TeamNamespacesListError): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TeamNamespacesListContinueError.invalid_cursor: The cursor is invalid. """ # Attribute is overwritten below the class definition invalid_cursor = None def is_invalid_cursor(self): """ Check if the union tag is ``invalid_cursor``. :rtype: bool """ return self._tag == 'invalid_cursor' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamNamespacesListContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) TeamNamespacesListContinueError_validator = bv.Union(TeamNamespacesListContinueError) class TeamNamespacesListResult(bb.Struct): """ Result for :meth:`dropbox.dropbox_client.Dropbox.team_namespaces_list`. :ivar team.TeamNamespacesListResult.namespaces: List of all namespaces the team can access. :ivar team.TeamNamespacesListResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.team_namespaces_list_continue` to obtain additional namespaces. Note that duplicate namespaces may be returned. :ivar team.TeamNamespacesListResult.has_more: Is true if there are additional namespaces that have not been returned yet. """ __slots__ = [ '_namespaces_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, namespaces=None, cursor=None, has_more=None): self._namespaces_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if namespaces is not None: self.namespaces = namespaces if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [NamespaceMetadata] (validator is set below) namespaces = bb.Attribute("namespaces") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamNamespacesListResult, self)._process_custom_annotations(annotation_type, field_path, processor) TeamNamespacesListResult_validator = bv.Struct(TeamNamespacesListResult) class TeamReportFailureReason(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TeamReportFailureReason.temporary_error: We couldn't create the report, but we think this was a fluke. Everything should work if you try it again. :ivar team.TeamReportFailureReason.many_reports_at_once: Too many other reports are being created right now. Try creating this report again once the others finish. :ivar team.TeamReportFailureReason.too_much_data: We couldn't create the report. Try creating the report again with less data. """ _catch_all = 'other' # Attribute is overwritten below the class definition temporary_error = None # Attribute is overwritten below the class definition many_reports_at_once = None # Attribute is overwritten below the class definition too_much_data = None # Attribute is overwritten below the class definition other = None def is_temporary_error(self): """ Check if the union tag is ``temporary_error``. :rtype: bool """ return self._tag == 'temporary_error' def is_many_reports_at_once(self): """ Check if the union tag is ``many_reports_at_once``. :rtype: bool """ return self._tag == 'many_reports_at_once' def is_too_much_data(self): """ Check if the union tag is ``too_much_data``. :rtype: bool """ return self._tag == 'too_much_data' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamReportFailureReason, self)._process_custom_annotations(annotation_type, field_path, processor) TeamReportFailureReason_validator = bv.Union(TeamReportFailureReason) class TokenGetAuthenticatedAdminError(bb.Union): """ Error returned by :meth:`dropbox.dropbox_client.Dropbox.team_token_get_authenticated_admin`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.TokenGetAuthenticatedAdminError.mapping_not_found: The current token is not associated with a team admin, because mappings were not recorded when the token was created. Consider re-authorizing a new access token to record its authenticating admin. :ivar team.TokenGetAuthenticatedAdminError.admin_not_active: Either the team admin that authorized this token is no longer an active member of the team or no longer a team admin. """ _catch_all = 'other' # Attribute is overwritten below the class definition mapping_not_found = None # Attribute is overwritten below the class definition admin_not_active = None # Attribute is overwritten below the class definition other = None def is_mapping_not_found(self): """ Check if the union tag is ``mapping_not_found``. :rtype: bool """ return self._tag == 'mapping_not_found' def is_admin_not_active(self): """ Check if the union tag is ``admin_not_active``. :rtype: bool """ return self._tag == 'admin_not_active' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TokenGetAuthenticatedAdminError, self)._process_custom_annotations(annotation_type, field_path, processor) TokenGetAuthenticatedAdminError_validator = bv.Union(TokenGetAuthenticatedAdminError) class TokenGetAuthenticatedAdminResult(bb.Struct): """ Results for :meth:`dropbox.dropbox_client.Dropbox.team_token_get_authenticated_admin`. :ivar team.TokenGetAuthenticatedAdminResult.admin_profile: The admin who authorized the token. """ __slots__ = [ '_admin_profile_value', ] _has_required_fields = True def __init__(self, admin_profile=None): self._admin_profile_value = bb.NOT_SET if admin_profile is not None: self.admin_profile = admin_profile # Instance attribute type: TeamMemberProfile (validator is set below) admin_profile = bb.Attribute("admin_profile", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TokenGetAuthenticatedAdminResult, self)._process_custom_annotations(annotation_type, field_path, processor) TokenGetAuthenticatedAdminResult_validator = bv.Struct(TokenGetAuthenticatedAdminResult) class UploadApiRateLimitValue(bb.Union): """ The value for ``Feature.upload_api_rate_limit``. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team.UploadApiRateLimitValue.unlimited: This team has unlimited upload API quota. So far both server version account and legacy account type have unlimited monthly upload api quota. :ivar int team.UploadApiRateLimitValue.limit: The number of upload API calls allowed per month. """ _catch_all = 'other' # Attribute is overwritten below the class definition unlimited = None # Attribute is overwritten below the class definition other = None @classmethod def limit(cls, val): """ Create an instance of this class set to the ``limit`` tag with value ``val``. :param int val: :rtype: UploadApiRateLimitValue """ return cls('limit', val) def is_unlimited(self): """ Check if the union tag is ``unlimited``. :rtype: bool """ return self._tag == 'unlimited' def is_limit(self): """ Check if the union tag is ``limit``. :rtype: bool """ return self._tag == 'limit' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_limit(self): """ The number of upload API calls allowed per month. Only call this if :meth:`is_limit` is true. :rtype: int """ if not self.is_limit(): raise AttributeError("tag 'limit' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UploadApiRateLimitValue, self)._process_custom_annotations(annotation_type, field_path, processor) UploadApiRateLimitValue_validator = bv.Union(UploadApiRateLimitValue) class UserAddResult(bb.Union): """ Result of trying to add secondary emails to a user. 'success' is the only value indicating that a user was successfully retrieved for adding secondary emails. The other values explain the type of error that occurred, and include the user for which the error occurred. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar UserSecondaryEmailsResult UserAddResult.success: Describes a user and the results for each attempt to add a secondary email. :ivar UserSelectorArg UserAddResult.invalid_user: Specified user is not a valid target for adding secondary emails. :ivar UserSelectorArg UserAddResult.unverified: Secondary emails can only be added to verified users. :ivar UserSelectorArg UserAddResult.placeholder_user: Secondary emails cannot be added to placeholder users. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param UserSecondaryEmailsResult val: :rtype: UserAddResult """ return cls('success', val) @classmethod def invalid_user(cls, val): """ Create an instance of this class set to the ``invalid_user`` tag with value ``val``. :param UserSelectorArg val: :rtype: UserAddResult """ return cls('invalid_user', val) @classmethod def unverified(cls, val): """ Create an instance of this class set to the ``unverified`` tag with value ``val``. :param UserSelectorArg val: :rtype: UserAddResult """ return cls('unverified', val) @classmethod def placeholder_user(cls, val): """ Create an instance of this class set to the ``placeholder_user`` tag with value ``val``. :param UserSelectorArg val: :rtype: UserAddResult """ return cls('placeholder_user', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_invalid_user(self): """ Check if the union tag is ``invalid_user``. :rtype: bool """ return self._tag == 'invalid_user' def is_unverified(self): """ Check if the union tag is ``unverified``. :rtype: bool """ return self._tag == 'unverified' def is_placeholder_user(self): """ Check if the union tag is ``placeholder_user``. :rtype: bool """ return self._tag == 'placeholder_user' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_success(self): """ Describes a user and the results for each attempt to add a secondary email. Only call this if :meth:`is_success` is true. :rtype: UserSecondaryEmailsResult """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_invalid_user(self): """ Specified user is not a valid target for adding secondary emails. Only call this if :meth:`is_invalid_user` is true. :rtype: UserSelectorArg """ if not self.is_invalid_user(): raise AttributeError("tag 'invalid_user' not set") return self._value def get_unverified(self): """ Secondary emails can only be added to verified users. Only call this if :meth:`is_unverified` is true. :rtype: UserSelectorArg """ if not self.is_unverified(): raise AttributeError("tag 'unverified' not set") return self._value def get_placeholder_user(self): """ Secondary emails cannot be added to placeholder users. Only call this if :meth:`is_placeholder_user` is true. :rtype: UserSelectorArg """ if not self.is_placeholder_user(): raise AttributeError("tag 'placeholder_user' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserAddResult, self)._process_custom_annotations(annotation_type, field_path, processor) UserAddResult_validator = bv.Union(UserAddResult) class UserCustomQuotaArg(bb.Struct): """ User and their required custom quota in GB (1 TB = 1024 GB). """ __slots__ = [ '_user_value', '_quota_gb_value', ] _has_required_fields = True def __init__(self, user=None, quota_gb=None): self._user_value = bb.NOT_SET self._quota_gb_value = bb.NOT_SET if user is not None: self.user = user if quota_gb is not None: self.quota_gb = quota_gb # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) # Instance attribute type: int (validator is set below) quota_gb = bb.Attribute("quota_gb") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserCustomQuotaArg, self)._process_custom_annotations(annotation_type, field_path, processor) UserCustomQuotaArg_validator = bv.Struct(UserCustomQuotaArg) class UserCustomQuotaResult(bb.Struct): """ User and their custom quota in GB (1 TB = 1024 GB). No quota returns if the user has no custom quota set. """ __slots__ = [ '_user_value', '_quota_gb_value', ] _has_required_fields = True def __init__(self, user=None, quota_gb=None): self._user_value = bb.NOT_SET self._quota_gb_value = bb.NOT_SET if user is not None: self.user = user if quota_gb is not None: self.quota_gb = quota_gb # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) # Instance attribute type: int (validator is set below) quota_gb = bb.Attribute("quota_gb", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserCustomQuotaResult, self)._process_custom_annotations(annotation_type, field_path, processor) UserCustomQuotaResult_validator = bv.Struct(UserCustomQuotaResult) class UserDeleteEmailsResult(bb.Struct): __slots__ = [ '_user_value', '_results_value', ] _has_required_fields = True def __init__(self, user=None, results=None): self._user_value = bb.NOT_SET self._results_value = bb.NOT_SET if user is not None: self.user = user if results is not None: self.results = results # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) # Instance attribute type: list of [DeleteSecondaryEmailResult] (validator is set below) results = bb.Attribute("results") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserDeleteEmailsResult, self)._process_custom_annotations(annotation_type, field_path, processor) UserDeleteEmailsResult_validator = bv.Struct(UserDeleteEmailsResult) class UserDeleteResult(bb.Union): """ Result of trying to delete a user's secondary emails. 'success' is the only value indicating that a user was successfully retrieved for deleting secondary emails. The other values explain the type of error that occurred, and include the user for which the error occurred. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar UserDeleteEmailsResult UserDeleteResult.success: Describes a user and the results for each attempt to delete a secondary email. :ivar UserSelectorArg UserDeleteResult.invalid_user: Specified user is not a valid target for deleting secondary emails. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param UserDeleteEmailsResult val: :rtype: UserDeleteResult """ return cls('success', val) @classmethod def invalid_user(cls, val): """ Create an instance of this class set to the ``invalid_user`` tag with value ``val``. :param UserSelectorArg val: :rtype: UserDeleteResult """ return cls('invalid_user', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_invalid_user(self): """ Check if the union tag is ``invalid_user``. :rtype: bool """ return self._tag == 'invalid_user' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_success(self): """ Describes a user and the results for each attempt to delete a secondary email. Only call this if :meth:`is_success` is true. :rtype: UserDeleteEmailsResult """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_invalid_user(self): """ Specified user is not a valid target for deleting secondary emails. Only call this if :meth:`is_invalid_user` is true. :rtype: UserSelectorArg """ if not self.is_invalid_user(): raise AttributeError("tag 'invalid_user' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserDeleteResult, self)._process_custom_annotations(annotation_type, field_path, processor) UserDeleteResult_validator = bv.Union(UserDeleteResult) class UserResendEmailsResult(bb.Struct): __slots__ = [ '_user_value', '_results_value', ] _has_required_fields = True def __init__(self, user=None, results=None): self._user_value = bb.NOT_SET self._results_value = bb.NOT_SET if user is not None: self.user = user if results is not None: self.results = results # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) # Instance attribute type: list of [ResendSecondaryEmailResult] (validator is set below) results = bb.Attribute("results") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserResendEmailsResult, self)._process_custom_annotations(annotation_type, field_path, processor) UserResendEmailsResult_validator = bv.Struct(UserResendEmailsResult) class UserResendResult(bb.Union): """ Result of trying to resend verification emails to a user. 'success' is the only value indicating that a user was successfully retrieved for sending verification emails. The other values explain the type of error that occurred, and include the user for which the error occurred. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar UserResendEmailsResult UserResendResult.success: Describes a user and the results for each attempt to resend verification emails. :ivar UserSelectorArg UserResendResult.invalid_user: Specified user is not a valid target for resending verification emails. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def success(cls, val): """ Create an instance of this class set to the ``success`` tag with value ``val``. :param UserResendEmailsResult val: :rtype: UserResendResult """ return cls('success', val) @classmethod def invalid_user(cls, val): """ Create an instance of this class set to the ``invalid_user`` tag with value ``val``. :param UserSelectorArg val: :rtype: UserResendResult """ return cls('invalid_user', val) def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_invalid_user(self): """ Check if the union tag is ``invalid_user``. :rtype: bool """ return self._tag == 'invalid_user' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_success(self): """ Describes a user and the results for each attempt to resend verification emails. Only call this if :meth:`is_success` is true. :rtype: UserResendEmailsResult """ if not self.is_success(): raise AttributeError("tag 'success' not set") return self._value def get_invalid_user(self): """ Specified user is not a valid target for resending verification emails. Only call this if :meth:`is_invalid_user` is true. :rtype: UserSelectorArg """ if not self.is_invalid_user(): raise AttributeError("tag 'invalid_user' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserResendResult, self)._process_custom_annotations(annotation_type, field_path, processor) UserResendResult_validator = bv.Union(UserResendResult) class UserSecondaryEmailsArg(bb.Struct): """ User and a list of secondary emails. """ __slots__ = [ '_user_value', '_secondary_emails_value', ] _has_required_fields = True def __init__(self, user=None, secondary_emails=None): self._user_value = bb.NOT_SET self._secondary_emails_value = bb.NOT_SET if user is not None: self.user = user if secondary_emails is not None: self.secondary_emails = secondary_emails # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) # Instance attribute type: list of [str] (validator is set below) secondary_emails = bb.Attribute("secondary_emails") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserSecondaryEmailsArg, self)._process_custom_annotations(annotation_type, field_path, processor) UserSecondaryEmailsArg_validator = bv.Struct(UserSecondaryEmailsArg) class UserSecondaryEmailsResult(bb.Struct): __slots__ = [ '_user_value', '_results_value', ] _has_required_fields = True def __init__(self, user=None, results=None): self._user_value = bb.NOT_SET self._results_value = bb.NOT_SET if user is not None: self.user = user if results is not None: self.results = results # Instance attribute type: UserSelectorArg (validator is set below) user = bb.Attribute("user", user_defined=True) # Instance attribute type: list of [AddSecondaryEmailResult] (validator is set below) results = bb.Attribute("results") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserSecondaryEmailsResult, self)._process_custom_annotations(annotation_type, field_path, processor) UserSecondaryEmailsResult_validator = bv.Struct(UserSecondaryEmailsResult) class UserSelectorArg(bb.Union): """ Argument for selecting a single user, either by team_member_id, external_id or email. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = None @classmethod def team_member_id(cls, val): """ Create an instance of this class set to the ``team_member_id`` tag with value ``val``. :param str val: :rtype: UserSelectorArg """ return cls('team_member_id', val) @classmethod def external_id(cls, val): """ Create an instance of this class set to the ``external_id`` tag with value ``val``. :param str val: :rtype: UserSelectorArg """ return cls('external_id', val) @classmethod def email(cls, val): """ Create an instance of this class set to the ``email`` tag with value ``val``. :param str val: :rtype: UserSelectorArg """ return cls('email', val) def is_team_member_id(self): """ Check if the union tag is ``team_member_id``. :rtype: bool """ return self._tag == 'team_member_id' def is_external_id(self): """ Check if the union tag is ``external_id``. :rtype: bool """ return self._tag == 'external_id' def is_email(self): """ Check if the union tag is ``email``. :rtype: bool """ return self._tag == 'email' def get_team_member_id(self): """ Only call this if :meth:`is_team_member_id` is true. :rtype: str """ if not self.is_team_member_id(): raise AttributeError("tag 'team_member_id' not set") return self._value def get_external_id(self): """ Only call this if :meth:`is_external_id` is true. :rtype: str """ if not self.is_external_id(): raise AttributeError("tag 'external_id' not set") return self._value def get_email(self): """ Only call this if :meth:`is_email` is true. :rtype: str """ if not self.is_email(): raise AttributeError("tag 'email' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserSelectorArg, self)._process_custom_annotations(annotation_type, field_path, processor) UserSelectorArg_validator = bv.Union(UserSelectorArg) class UsersSelectorArg(bb.Union): """ Argument for selecting a list of users, either by team_member_ids, external_ids or emails. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar list of [str] team.UsersSelectorArg.team_member_ids: List of member IDs. :ivar list of [str] team.UsersSelectorArg.external_ids: List of external user IDs. :ivar list of [str] team.UsersSelectorArg.emails: List of email addresses. """ _catch_all = None @classmethod def team_member_ids(cls, val): """ Create an instance of this class set to the ``team_member_ids`` tag with value ``val``. :param list of [str] val: :rtype: UsersSelectorArg """ return cls('team_member_ids', val) @classmethod def external_ids(cls, val): """ Create an instance of this class set to the ``external_ids`` tag with value ``val``. :param list of [str] val: :rtype: UsersSelectorArg """ return cls('external_ids', val) @classmethod def emails(cls, val): """ Create an instance of this class set to the ``emails`` tag with value ``val``. :param list of [str] val: :rtype: UsersSelectorArg """ return cls('emails', val) def is_team_member_ids(self): """ Check if the union tag is ``team_member_ids``. :rtype: bool """ return self._tag == 'team_member_ids' def is_external_ids(self): """ Check if the union tag is ``external_ids``. :rtype: bool """ return self._tag == 'external_ids' def is_emails(self): """ Check if the union tag is ``emails``. :rtype: bool """ return self._tag == 'emails' def get_team_member_ids(self): """ List of member IDs. Only call this if :meth:`is_team_member_ids` is true. :rtype: list of [str] """ if not self.is_team_member_ids(): raise AttributeError("tag 'team_member_ids' not set") return self._value def get_external_ids(self): """ List of external user IDs. Only call this if :meth:`is_external_ids` is true. :rtype: list of [str] """ if not self.is_external_ids(): raise AttributeError("tag 'external_ids' not set") return self._value def get_emails(self): """ List of email addresses. Only call this if :meth:`is_emails` is true. :rtype: list of [str] """ if not self.is_emails(): raise AttributeError("tag 'emails' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UsersSelectorArg, self)._process_custom_annotations(annotation_type, field_path, processor) UsersSelectorArg_validator = bv.Union(UsersSelectorArg) GroupsGetInfoResult_validator = bv.List(GroupsGetInfoItem_validator) LegalHoldId_validator = bv.String(pattern='^pid_dbhid:.+') LegalHoldPolicyDescription_validator = bv.String(max_length=501) LegalHoldPolicyName_validator = bv.String(max_length=140) LegalHoldsGetPolicyResult_validator = LegalHoldPolicy_validator LegalHoldsGetPolicyResult = LegalHoldPolicy LegalHoldsPolicyCreateResult_validator = LegalHoldPolicy_validator LegalHoldsPolicyCreateResult = LegalHoldPolicy LegalHoldsPolicyUpdateResult_validator = LegalHoldPolicy_validator LegalHoldsPolicyUpdateResult = LegalHoldPolicy ListHeldRevisionCursor_validator = bv.String(min_length=1) MembersGetInfoResult_validator = bv.List(MembersGetInfoItem_validator) NumberPerDay_validator = bv.List(bv.Nullable(bv.UInt64())) Path_validator = bv.String(pattern='(/(.|[\\r\\n])*)?') SecondaryEmail_validator = secondary_emails.SecondaryEmail_validator SecondaryEmail = secondary_emails.SecondaryEmail TeamMemberRoleId_validator = bv.String(max_length=128, pattern='pid_dbtmr:.*') UserQuota_validator = bv.UInt32(min_value=15) DeviceSession.session_id.validator = bv.String() DeviceSession.ip_address.validator = bv.Nullable(bv.String()) DeviceSession.country.validator = bv.Nullable(bv.String()) DeviceSession.created.validator = bv.Nullable(common.DropboxTimestamp_validator) DeviceSession.updated.validator = bv.Nullable(common.DropboxTimestamp_validator) DeviceSession._all_field_names_ = set([ 'session_id', 'ip_address', 'country', 'created', 'updated', ]) DeviceSession._all_fields_ = [ ('session_id', DeviceSession.session_id.validator), ('ip_address', DeviceSession.ip_address.validator), ('country', DeviceSession.country.validator), ('created', DeviceSession.created.validator), ('updated', DeviceSession.updated.validator), ] ActiveWebSession.user_agent.validator = bv.String() ActiveWebSession.os.validator = bv.String() ActiveWebSession.browser.validator = bv.String() ActiveWebSession.expires.validator = bv.Nullable(common.DropboxTimestamp_validator) ActiveWebSession._all_field_names_ = DeviceSession._all_field_names_.union(set([ 'user_agent', 'os', 'browser', 'expires', ])) ActiveWebSession._all_fields_ = DeviceSession._all_fields_ + [ ('user_agent', ActiveWebSession.user_agent.validator), ('os', ActiveWebSession.os.validator), ('browser', ActiveWebSession.browser.validator), ('expires', ActiveWebSession.expires.validator), ] AddSecondaryEmailResult._success_validator = SecondaryEmail_validator AddSecondaryEmailResult._unavailable_validator = common.EmailAddress_validator AddSecondaryEmailResult._already_pending_validator = common.EmailAddress_validator AddSecondaryEmailResult._already_owned_by_user_validator = common.EmailAddress_validator AddSecondaryEmailResult._reached_limit_validator = common.EmailAddress_validator AddSecondaryEmailResult._transient_error_validator = common.EmailAddress_validator AddSecondaryEmailResult._too_many_updates_validator = common.EmailAddress_validator AddSecondaryEmailResult._unknown_error_validator = common.EmailAddress_validator AddSecondaryEmailResult._rate_limited_validator = common.EmailAddress_validator AddSecondaryEmailResult._other_validator = bv.Void() AddSecondaryEmailResult._tagmap = { 'success': AddSecondaryEmailResult._success_validator, 'unavailable': AddSecondaryEmailResult._unavailable_validator, 'already_pending': AddSecondaryEmailResult._already_pending_validator, 'already_owned_by_user': AddSecondaryEmailResult._already_owned_by_user_validator, 'reached_limit': AddSecondaryEmailResult._reached_limit_validator, 'transient_error': AddSecondaryEmailResult._transient_error_validator, 'too_many_updates': AddSecondaryEmailResult._too_many_updates_validator, 'unknown_error': AddSecondaryEmailResult._unknown_error_validator, 'rate_limited': AddSecondaryEmailResult._rate_limited_validator, 'other': AddSecondaryEmailResult._other_validator, } AddSecondaryEmailResult.other = AddSecondaryEmailResult('other') AddSecondaryEmailsArg.new_secondary_emails.validator = bv.List(UserSecondaryEmailsArg_validator) AddSecondaryEmailsArg._all_field_names_ = set(['new_secondary_emails']) AddSecondaryEmailsArg._all_fields_ = [('new_secondary_emails', AddSecondaryEmailsArg.new_secondary_emails.validator)] AddSecondaryEmailsError._secondary_emails_disabled_validator = bv.Void() AddSecondaryEmailsError._too_many_emails_validator = bv.Void() AddSecondaryEmailsError._other_validator = bv.Void() AddSecondaryEmailsError._tagmap = { 'secondary_emails_disabled': AddSecondaryEmailsError._secondary_emails_disabled_validator, 'too_many_emails': AddSecondaryEmailsError._too_many_emails_validator, 'other': AddSecondaryEmailsError._other_validator, } AddSecondaryEmailsError.secondary_emails_disabled = AddSecondaryEmailsError('secondary_emails_disabled') AddSecondaryEmailsError.too_many_emails = AddSecondaryEmailsError('too_many_emails') AddSecondaryEmailsError.other = AddSecondaryEmailsError('other') AddSecondaryEmailsResult.results.validator = bv.List(UserAddResult_validator) AddSecondaryEmailsResult._all_field_names_ = set(['results']) AddSecondaryEmailsResult._all_fields_ = [('results', AddSecondaryEmailsResult.results.validator)] AdminTier._team_admin_validator = bv.Void() AdminTier._user_management_admin_validator = bv.Void() AdminTier._support_admin_validator = bv.Void() AdminTier._member_only_validator = bv.Void() AdminTier._tagmap = { 'team_admin': AdminTier._team_admin_validator, 'user_management_admin': AdminTier._user_management_admin_validator, 'support_admin': AdminTier._support_admin_validator, 'member_only': AdminTier._member_only_validator, } AdminTier.team_admin = AdminTier('team_admin') AdminTier.user_management_admin = AdminTier('user_management_admin') AdminTier.support_admin = AdminTier('support_admin') AdminTier.member_only = AdminTier('member_only') ApiApp.app_id.validator = bv.String() ApiApp.app_name.validator = bv.String() ApiApp.publisher.validator = bv.Nullable(bv.String()) ApiApp.publisher_url.validator = bv.Nullable(bv.String()) ApiApp.linked.validator = bv.Nullable(common.DropboxTimestamp_validator) ApiApp.is_app_folder.validator = bv.Boolean() ApiApp._all_field_names_ = set([ 'app_id', 'app_name', 'publisher', 'publisher_url', 'linked', 'is_app_folder', ]) ApiApp._all_fields_ = [ ('app_id', ApiApp.app_id.validator), ('app_name', ApiApp.app_name.validator), ('publisher', ApiApp.publisher.validator), ('publisher_url', ApiApp.publisher_url.validator), ('linked', ApiApp.linked.validator), ('is_app_folder', ApiApp.is_app_folder.validator), ] BaseDfbReport.start_date.validator = bv.String() BaseDfbReport._all_field_names_ = set(['start_date']) BaseDfbReport._all_fields_ = [('start_date', BaseDfbReport.start_date.validator)] BaseTeamFolderError._access_error_validator = TeamFolderAccessError_validator BaseTeamFolderError._status_error_validator = TeamFolderInvalidStatusError_validator BaseTeamFolderError._team_shared_dropbox_error_validator = TeamFolderTeamSharedDropboxError_validator BaseTeamFolderError._other_validator = bv.Void() BaseTeamFolderError._tagmap = { 'access_error': BaseTeamFolderError._access_error_validator, 'status_error': BaseTeamFolderError._status_error_validator, 'team_shared_dropbox_error': BaseTeamFolderError._team_shared_dropbox_error_validator, 'other': BaseTeamFolderError._other_validator, } BaseTeamFolderError.other = BaseTeamFolderError('other') CustomQuotaError._too_many_users_validator = bv.Void() CustomQuotaError._other_validator = bv.Void() CustomQuotaError._tagmap = { 'too_many_users': CustomQuotaError._too_many_users_validator, 'other': CustomQuotaError._other_validator, } CustomQuotaError.too_many_users = CustomQuotaError('too_many_users') CustomQuotaError.other = CustomQuotaError('other') CustomQuotaResult._success_validator = UserCustomQuotaResult_validator CustomQuotaResult._invalid_user_validator = UserSelectorArg_validator CustomQuotaResult._other_validator = bv.Void() CustomQuotaResult._tagmap = { 'success': CustomQuotaResult._success_validator, 'invalid_user': CustomQuotaResult._invalid_user_validator, 'other': CustomQuotaResult._other_validator, } CustomQuotaResult.other = CustomQuotaResult('other') CustomQuotaUsersArg.users.validator = bv.List(UserSelectorArg_validator) CustomQuotaUsersArg._all_field_names_ = set(['users']) CustomQuotaUsersArg._all_fields_ = [('users', CustomQuotaUsersArg.users.validator)] DateRange.start_date.validator = bv.Nullable(common.Date_validator) DateRange.end_date.validator = bv.Nullable(common.Date_validator) DateRange._all_field_names_ = set([ 'start_date', 'end_date', ]) DateRange._all_fields_ = [ ('start_date', DateRange.start_date.validator), ('end_date', DateRange.end_date.validator), ] DateRangeError._other_validator = bv.Void() DateRangeError._tagmap = { 'other': DateRangeError._other_validator, } DateRangeError.other = DateRangeError('other') DeleteSecondaryEmailResult._success_validator = common.EmailAddress_validator DeleteSecondaryEmailResult._not_found_validator = common.EmailAddress_validator DeleteSecondaryEmailResult._cannot_remove_primary_validator = common.EmailAddress_validator DeleteSecondaryEmailResult._other_validator = bv.Void() DeleteSecondaryEmailResult._tagmap = { 'success': DeleteSecondaryEmailResult._success_validator, 'not_found': DeleteSecondaryEmailResult._not_found_validator, 'cannot_remove_primary': DeleteSecondaryEmailResult._cannot_remove_primary_validator, 'other': DeleteSecondaryEmailResult._other_validator, } DeleteSecondaryEmailResult.other = DeleteSecondaryEmailResult('other') DeleteSecondaryEmailsArg.emails_to_delete.validator = bv.List(UserSecondaryEmailsArg_validator) DeleteSecondaryEmailsArg._all_field_names_ = set(['emails_to_delete']) DeleteSecondaryEmailsArg._all_fields_ = [('emails_to_delete', DeleteSecondaryEmailsArg.emails_to_delete.validator)] DeleteSecondaryEmailsResult.results.validator = bv.List(UserDeleteResult_validator) DeleteSecondaryEmailsResult._all_field_names_ = set(['results']) DeleteSecondaryEmailsResult._all_fields_ = [('results', DeleteSecondaryEmailsResult.results.validator)] DesktopClientSession.host_name.validator = bv.String() DesktopClientSession.client_type.validator = DesktopPlatform_validator DesktopClientSession.client_version.validator = bv.String() DesktopClientSession.platform.validator = bv.String() DesktopClientSession.is_delete_on_unlink_supported.validator = bv.Boolean() DesktopClientSession._all_field_names_ = DeviceSession._all_field_names_.union(set([ 'host_name', 'client_type', 'client_version', 'platform', 'is_delete_on_unlink_supported', ])) DesktopClientSession._all_fields_ = DeviceSession._all_fields_ + [ ('host_name', DesktopClientSession.host_name.validator), ('client_type', DesktopClientSession.client_type.validator), ('client_version', DesktopClientSession.client_version.validator), ('platform', DesktopClientSession.platform.validator), ('is_delete_on_unlink_supported', DesktopClientSession.is_delete_on_unlink_supported.validator), ] DesktopPlatform._windows_validator = bv.Void() DesktopPlatform._mac_validator = bv.Void() DesktopPlatform._linux_validator = bv.Void() DesktopPlatform._other_validator = bv.Void() DesktopPlatform._tagmap = { 'windows': DesktopPlatform._windows_validator, 'mac': DesktopPlatform._mac_validator, 'linux': DesktopPlatform._linux_validator, 'other': DesktopPlatform._other_validator, } DesktopPlatform.windows = DesktopPlatform('windows') DesktopPlatform.mac = DesktopPlatform('mac') DesktopPlatform.linux = DesktopPlatform('linux') DesktopPlatform.other = DesktopPlatform('other') DeviceSessionArg.session_id.validator = bv.String() DeviceSessionArg.team_member_id.validator = bv.String() DeviceSessionArg._all_field_names_ = set([ 'session_id', 'team_member_id', ]) DeviceSessionArg._all_fields_ = [ ('session_id', DeviceSessionArg.session_id.validator), ('team_member_id', DeviceSessionArg.team_member_id.validator), ] DevicesActive.windows.validator = NumberPerDay_validator DevicesActive.macos.validator = NumberPerDay_validator DevicesActive.linux.validator = NumberPerDay_validator DevicesActive.ios.validator = NumberPerDay_validator DevicesActive.android.validator = NumberPerDay_validator DevicesActive.other.validator = NumberPerDay_validator DevicesActive.total.validator = NumberPerDay_validator DevicesActive._all_field_names_ = set([ 'windows', 'macos', 'linux', 'ios', 'android', 'other', 'total', ]) DevicesActive._all_fields_ = [ ('windows', DevicesActive.windows.validator), ('macos', DevicesActive.macos.validator), ('linux', DevicesActive.linux.validator), ('ios', DevicesActive.ios.validator), ('android', DevicesActive.android.validator), ('other', DevicesActive.other.validator), ('total', DevicesActive.total.validator), ] ExcludedUsersListArg.limit.validator = bv.UInt32(min_value=1, max_value=1000) ExcludedUsersListArg._all_field_names_ = set(['limit']) ExcludedUsersListArg._all_fields_ = [('limit', ExcludedUsersListArg.limit.validator)] ExcludedUsersListContinueArg.cursor.validator = bv.String() ExcludedUsersListContinueArg._all_field_names_ = set(['cursor']) ExcludedUsersListContinueArg._all_fields_ = [('cursor', ExcludedUsersListContinueArg.cursor.validator)] ExcludedUsersListContinueError._invalid_cursor_validator = bv.Void() ExcludedUsersListContinueError._other_validator = bv.Void() ExcludedUsersListContinueError._tagmap = { 'invalid_cursor': ExcludedUsersListContinueError._invalid_cursor_validator, 'other': ExcludedUsersListContinueError._other_validator, } ExcludedUsersListContinueError.invalid_cursor = ExcludedUsersListContinueError('invalid_cursor') ExcludedUsersListContinueError.other = ExcludedUsersListContinueError('other') ExcludedUsersListError._list_error_validator = bv.Void() ExcludedUsersListError._other_validator = bv.Void() ExcludedUsersListError._tagmap = { 'list_error': ExcludedUsersListError._list_error_validator, 'other': ExcludedUsersListError._other_validator, } ExcludedUsersListError.list_error = ExcludedUsersListError('list_error') ExcludedUsersListError.other = ExcludedUsersListError('other') ExcludedUsersListResult.users.validator = bv.List(MemberProfile_validator) ExcludedUsersListResult.cursor.validator = bv.Nullable(bv.String()) ExcludedUsersListResult.has_more.validator = bv.Boolean() ExcludedUsersListResult._all_field_names_ = set([ 'users', 'cursor', 'has_more', ]) ExcludedUsersListResult._all_fields_ = [ ('users', ExcludedUsersListResult.users.validator), ('cursor', ExcludedUsersListResult.cursor.validator), ('has_more', ExcludedUsersListResult.has_more.validator), ] ExcludedUsersUpdateArg.users.validator = bv.Nullable(bv.List(UserSelectorArg_validator)) ExcludedUsersUpdateArg._all_field_names_ = set(['users']) ExcludedUsersUpdateArg._all_fields_ = [('users', ExcludedUsersUpdateArg.users.validator)] ExcludedUsersUpdateError._users_not_in_team_validator = bv.Void() ExcludedUsersUpdateError._too_many_users_validator = bv.Void() ExcludedUsersUpdateError._other_validator = bv.Void() ExcludedUsersUpdateError._tagmap = { 'users_not_in_team': ExcludedUsersUpdateError._users_not_in_team_validator, 'too_many_users': ExcludedUsersUpdateError._too_many_users_validator, 'other': ExcludedUsersUpdateError._other_validator, } ExcludedUsersUpdateError.users_not_in_team = ExcludedUsersUpdateError('users_not_in_team') ExcludedUsersUpdateError.too_many_users = ExcludedUsersUpdateError('too_many_users') ExcludedUsersUpdateError.other = ExcludedUsersUpdateError('other') ExcludedUsersUpdateResult.status.validator = ExcludedUsersUpdateStatus_validator ExcludedUsersUpdateResult._all_field_names_ = set(['status']) ExcludedUsersUpdateResult._all_fields_ = [('status', ExcludedUsersUpdateResult.status.validator)] ExcludedUsersUpdateStatus._success_validator = bv.Void() ExcludedUsersUpdateStatus._other_validator = bv.Void() ExcludedUsersUpdateStatus._tagmap = { 'success': ExcludedUsersUpdateStatus._success_validator, 'other': ExcludedUsersUpdateStatus._other_validator, } ExcludedUsersUpdateStatus.success = ExcludedUsersUpdateStatus('success') ExcludedUsersUpdateStatus.other = ExcludedUsersUpdateStatus('other') Feature._upload_api_rate_limit_validator = bv.Void() Feature._has_team_shared_dropbox_validator = bv.Void() Feature._has_team_file_events_validator = bv.Void() Feature._has_team_selective_sync_validator = bv.Void() Feature._other_validator = bv.Void() Feature._tagmap = { 'upload_api_rate_limit': Feature._upload_api_rate_limit_validator, 'has_team_shared_dropbox': Feature._has_team_shared_dropbox_validator, 'has_team_file_events': Feature._has_team_file_events_validator, 'has_team_selective_sync': Feature._has_team_selective_sync_validator, 'other': Feature._other_validator, } Feature.upload_api_rate_limit = Feature('upload_api_rate_limit') Feature.has_team_shared_dropbox = Feature('has_team_shared_dropbox') Feature.has_team_file_events = Feature('has_team_file_events') Feature.has_team_selective_sync = Feature('has_team_selective_sync') Feature.other = Feature('other') FeatureValue._upload_api_rate_limit_validator = UploadApiRateLimitValue_validator FeatureValue._has_team_shared_dropbox_validator = HasTeamSharedDropboxValue_validator FeatureValue._has_team_file_events_validator = HasTeamFileEventsValue_validator FeatureValue._has_team_selective_sync_validator = HasTeamSelectiveSyncValue_validator FeatureValue._other_validator = bv.Void() FeatureValue._tagmap = { 'upload_api_rate_limit': FeatureValue._upload_api_rate_limit_validator, 'has_team_shared_dropbox': FeatureValue._has_team_shared_dropbox_validator, 'has_team_file_events': FeatureValue._has_team_file_events_validator, 'has_team_selective_sync': FeatureValue._has_team_selective_sync_validator, 'other': FeatureValue._other_validator, } FeatureValue.other = FeatureValue('other') FeaturesGetValuesBatchArg.features.validator = bv.List(Feature_validator) FeaturesGetValuesBatchArg._all_field_names_ = set(['features']) FeaturesGetValuesBatchArg._all_fields_ = [('features', FeaturesGetValuesBatchArg.features.validator)] FeaturesGetValuesBatchError._empty_features_list_validator = bv.Void() FeaturesGetValuesBatchError._other_validator = bv.Void() FeaturesGetValuesBatchError._tagmap = { 'empty_features_list': FeaturesGetValuesBatchError._empty_features_list_validator, 'other': FeaturesGetValuesBatchError._other_validator, } FeaturesGetValuesBatchError.empty_features_list = FeaturesGetValuesBatchError('empty_features_list') FeaturesGetValuesBatchError.other = FeaturesGetValuesBatchError('other') FeaturesGetValuesBatchResult.values.validator = bv.List(FeatureValue_validator) FeaturesGetValuesBatchResult._all_field_names_ = set(['values']) FeaturesGetValuesBatchResult._all_fields_ = [('values', FeaturesGetValuesBatchResult.values.validator)] GetActivityReport.adds.validator = NumberPerDay_validator GetActivityReport.edits.validator = NumberPerDay_validator GetActivityReport.deletes.validator = NumberPerDay_validator GetActivityReport.active_users_28_day.validator = NumberPerDay_validator GetActivityReport.active_users_7_day.validator = NumberPerDay_validator GetActivityReport.active_users_1_day.validator = NumberPerDay_validator GetActivityReport.active_shared_folders_28_day.validator = NumberPerDay_validator GetActivityReport.active_shared_folders_7_day.validator = NumberPerDay_validator GetActivityReport.active_shared_folders_1_day.validator = NumberPerDay_validator GetActivityReport.shared_links_created.validator = NumberPerDay_validator GetActivityReport.shared_links_viewed_by_team.validator = NumberPerDay_validator GetActivityReport.shared_links_viewed_by_outside_user.validator = NumberPerDay_validator GetActivityReport.shared_links_viewed_by_not_logged_in.validator = NumberPerDay_validator GetActivityReport.shared_links_viewed_total.validator = NumberPerDay_validator GetActivityReport._all_field_names_ = BaseDfbReport._all_field_names_.union(set([ 'adds', 'edits', 'deletes', 'active_users_28_day', 'active_users_7_day', 'active_users_1_day', 'active_shared_folders_28_day', 'active_shared_folders_7_day', 'active_shared_folders_1_day', 'shared_links_created', 'shared_links_viewed_by_team', 'shared_links_viewed_by_outside_user', 'shared_links_viewed_by_not_logged_in', 'shared_links_viewed_total', ])) GetActivityReport._all_fields_ = BaseDfbReport._all_fields_ + [ ('adds', GetActivityReport.adds.validator), ('edits', GetActivityReport.edits.validator), ('deletes', GetActivityReport.deletes.validator), ('active_users_28_day', GetActivityReport.active_users_28_day.validator), ('active_users_7_day', GetActivityReport.active_users_7_day.validator), ('active_users_1_day', GetActivityReport.active_users_1_day.validator), ('active_shared_folders_28_day', GetActivityReport.active_shared_folders_28_day.validator), ('active_shared_folders_7_day', GetActivityReport.active_shared_folders_7_day.validator), ('active_shared_folders_1_day', GetActivityReport.active_shared_folders_1_day.validator), ('shared_links_created', GetActivityReport.shared_links_created.validator), ('shared_links_viewed_by_team', GetActivityReport.shared_links_viewed_by_team.validator), ('shared_links_viewed_by_outside_user', GetActivityReport.shared_links_viewed_by_outside_user.validator), ('shared_links_viewed_by_not_logged_in', GetActivityReport.shared_links_viewed_by_not_logged_in.validator), ('shared_links_viewed_total', GetActivityReport.shared_links_viewed_total.validator), ] GetDevicesReport.active_1_day.validator = DevicesActive_validator GetDevicesReport.active_7_day.validator = DevicesActive_validator GetDevicesReport.active_28_day.validator = DevicesActive_validator GetDevicesReport._all_field_names_ = BaseDfbReport._all_field_names_.union(set([ 'active_1_day', 'active_7_day', 'active_28_day', ])) GetDevicesReport._all_fields_ = BaseDfbReport._all_fields_ + [ ('active_1_day', GetDevicesReport.active_1_day.validator), ('active_7_day', GetDevicesReport.active_7_day.validator), ('active_28_day', GetDevicesReport.active_28_day.validator), ] GetMembershipReport.team_size.validator = NumberPerDay_validator GetMembershipReport.pending_invites.validator = NumberPerDay_validator GetMembershipReport.members_joined.validator = NumberPerDay_validator GetMembershipReport.suspended_members.validator = NumberPerDay_validator GetMembershipReport.licenses.validator = NumberPerDay_validator GetMembershipReport._all_field_names_ = BaseDfbReport._all_field_names_.union(set([ 'team_size', 'pending_invites', 'members_joined', 'suspended_members', 'licenses', ])) GetMembershipReport._all_fields_ = BaseDfbReport._all_fields_ + [ ('team_size', GetMembershipReport.team_size.validator), ('pending_invites', GetMembershipReport.pending_invites.validator), ('members_joined', GetMembershipReport.members_joined.validator), ('suspended_members', GetMembershipReport.suspended_members.validator), ('licenses', GetMembershipReport.licenses.validator), ] GetStorageReport.total_usage.validator = NumberPerDay_validator GetStorageReport.shared_usage.validator = NumberPerDay_validator GetStorageReport.unshared_usage.validator = NumberPerDay_validator GetStorageReport.shared_folders.validator = NumberPerDay_validator GetStorageReport.member_storage_map.validator = bv.List(bv.List(StorageBucket_validator)) GetStorageReport._all_field_names_ = BaseDfbReport._all_field_names_.union(set([ 'total_usage', 'shared_usage', 'unshared_usage', 'shared_folders', 'member_storage_map', ])) GetStorageReport._all_fields_ = BaseDfbReport._all_fields_ + [ ('total_usage', GetStorageReport.total_usage.validator), ('shared_usage', GetStorageReport.shared_usage.validator), ('unshared_usage', GetStorageReport.unshared_usage.validator), ('shared_folders', GetStorageReport.shared_folders.validator), ('member_storage_map', GetStorageReport.member_storage_map.validator), ] GroupAccessType._member_validator = bv.Void() GroupAccessType._owner_validator = bv.Void() GroupAccessType._tagmap = { 'member': GroupAccessType._member_validator, 'owner': GroupAccessType._owner_validator, } GroupAccessType.member = GroupAccessType('member') GroupAccessType.owner = GroupAccessType('owner') GroupCreateArg.group_name.validator = bv.String() GroupCreateArg.add_creator_as_owner.validator = bv.Boolean() GroupCreateArg.group_external_id.validator = bv.Nullable(team_common.GroupExternalId_validator) GroupCreateArg.group_management_type.validator = bv.Nullable(team_common.GroupManagementType_validator) GroupCreateArg._all_field_names_ = set([ 'group_name', 'add_creator_as_owner', 'group_external_id', 'group_management_type', ]) GroupCreateArg._all_fields_ = [ ('group_name', GroupCreateArg.group_name.validator), ('add_creator_as_owner', GroupCreateArg.add_creator_as_owner.validator), ('group_external_id', GroupCreateArg.group_external_id.validator), ('group_management_type', GroupCreateArg.group_management_type.validator), ] GroupCreateError._group_name_already_used_validator = bv.Void() GroupCreateError._group_name_invalid_validator = bv.Void() GroupCreateError._external_id_already_in_use_validator = bv.Void() GroupCreateError._system_managed_group_disallowed_validator = bv.Void() GroupCreateError._other_validator = bv.Void() GroupCreateError._tagmap = { 'group_name_already_used': GroupCreateError._group_name_already_used_validator, 'group_name_invalid': GroupCreateError._group_name_invalid_validator, 'external_id_already_in_use': GroupCreateError._external_id_already_in_use_validator, 'system_managed_group_disallowed': GroupCreateError._system_managed_group_disallowed_validator, 'other': GroupCreateError._other_validator, } GroupCreateError.group_name_already_used = GroupCreateError('group_name_already_used') GroupCreateError.group_name_invalid = GroupCreateError('group_name_invalid') GroupCreateError.external_id_already_in_use = GroupCreateError('external_id_already_in_use') GroupCreateError.system_managed_group_disallowed = GroupCreateError('system_managed_group_disallowed') GroupCreateError.other = GroupCreateError('other') GroupSelectorError._group_not_found_validator = bv.Void() GroupSelectorError._other_validator = bv.Void() GroupSelectorError._tagmap = { 'group_not_found': GroupSelectorError._group_not_found_validator, 'other': GroupSelectorError._other_validator, } GroupSelectorError.group_not_found = GroupSelectorError('group_not_found') GroupSelectorError.other = GroupSelectorError('other') GroupSelectorWithTeamGroupError._system_managed_group_disallowed_validator = bv.Void() GroupSelectorWithTeamGroupError._tagmap = { 'system_managed_group_disallowed': GroupSelectorWithTeamGroupError._system_managed_group_disallowed_validator, } GroupSelectorWithTeamGroupError._tagmap.update(GroupSelectorError._tagmap) GroupSelectorWithTeamGroupError.system_managed_group_disallowed = GroupSelectorWithTeamGroupError('system_managed_group_disallowed') GroupDeleteError._group_already_deleted_validator = bv.Void() GroupDeleteError._tagmap = { 'group_already_deleted': GroupDeleteError._group_already_deleted_validator, } GroupDeleteError._tagmap.update(GroupSelectorWithTeamGroupError._tagmap) GroupDeleteError.group_already_deleted = GroupDeleteError('group_already_deleted') GroupFullInfo.members.validator = bv.Nullable(bv.List(GroupMemberInfo_validator)) GroupFullInfo.created.validator = bv.UInt64() GroupFullInfo._all_field_names_ = team_common.GroupSummary._all_field_names_.union(set([ 'members', 'created', ])) GroupFullInfo._all_fields_ = team_common.GroupSummary._all_fields_ + [ ('members', GroupFullInfo.members.validator), ('created', GroupFullInfo.created.validator), ] GroupMemberInfo.profile.validator = MemberProfile_validator GroupMemberInfo.access_type.validator = GroupAccessType_validator GroupMemberInfo._all_field_names_ = set([ 'profile', 'access_type', ]) GroupMemberInfo._all_fields_ = [ ('profile', GroupMemberInfo.profile.validator), ('access_type', GroupMemberInfo.access_type.validator), ] GroupMemberSelector.group.validator = GroupSelector_validator GroupMemberSelector.user.validator = UserSelectorArg_validator GroupMemberSelector._all_field_names_ = set([ 'group', 'user', ]) GroupMemberSelector._all_fields_ = [ ('group', GroupMemberSelector.group.validator), ('user', GroupMemberSelector.user.validator), ] GroupMemberSelectorError._member_not_in_group_validator = bv.Void() GroupMemberSelectorError._tagmap = { 'member_not_in_group': GroupMemberSelectorError._member_not_in_group_validator, } GroupMemberSelectorError._tagmap.update(GroupSelectorWithTeamGroupError._tagmap) GroupMemberSelectorError.member_not_in_group = GroupMemberSelectorError('member_not_in_group') GroupMemberSetAccessTypeError._user_cannot_be_manager_of_company_managed_group_validator = bv.Void() GroupMemberSetAccessTypeError._tagmap = { 'user_cannot_be_manager_of_company_managed_group': GroupMemberSetAccessTypeError._user_cannot_be_manager_of_company_managed_group_validator, } GroupMemberSetAccessTypeError._tagmap.update(GroupMemberSelectorError._tagmap) GroupMemberSetAccessTypeError.user_cannot_be_manager_of_company_managed_group = GroupMemberSetAccessTypeError('user_cannot_be_manager_of_company_managed_group') IncludeMembersArg.return_members.validator = bv.Boolean() IncludeMembersArg._all_field_names_ = set(['return_members']) IncludeMembersArg._all_fields_ = [('return_members', IncludeMembersArg.return_members.validator)] GroupMembersAddArg.group.validator = GroupSelector_validator GroupMembersAddArg.members.validator = bv.List(MemberAccess_validator) GroupMembersAddArg._all_field_names_ = IncludeMembersArg._all_field_names_.union(set([ 'group', 'members', ])) GroupMembersAddArg._all_fields_ = IncludeMembersArg._all_fields_ + [ ('group', GroupMembersAddArg.group.validator), ('members', GroupMembersAddArg.members.validator), ] GroupMembersAddError._duplicate_user_validator = bv.Void() GroupMembersAddError._group_not_in_team_validator = bv.Void() GroupMembersAddError._members_not_in_team_validator = bv.List(bv.String()) GroupMembersAddError._users_not_found_validator = bv.List(bv.String()) GroupMembersAddError._user_must_be_active_to_be_owner_validator = bv.Void() GroupMembersAddError._user_cannot_be_manager_of_company_managed_group_validator = bv.List(bv.String()) GroupMembersAddError._tagmap = { 'duplicate_user': GroupMembersAddError._duplicate_user_validator, 'group_not_in_team': GroupMembersAddError._group_not_in_team_validator, 'members_not_in_team': GroupMembersAddError._members_not_in_team_validator, 'users_not_found': GroupMembersAddError._users_not_found_validator, 'user_must_be_active_to_be_owner': GroupMembersAddError._user_must_be_active_to_be_owner_validator, 'user_cannot_be_manager_of_company_managed_group': GroupMembersAddError._user_cannot_be_manager_of_company_managed_group_validator, } GroupMembersAddError._tagmap.update(GroupSelectorWithTeamGroupError._tagmap) GroupMembersAddError.duplicate_user = GroupMembersAddError('duplicate_user') GroupMembersAddError.group_not_in_team = GroupMembersAddError('group_not_in_team') GroupMembersAddError.user_must_be_active_to_be_owner = GroupMembersAddError('user_must_be_active_to_be_owner') GroupMembersChangeResult.group_info.validator = GroupFullInfo_validator GroupMembersChangeResult.async_job_id.validator = async_.AsyncJobId_validator GroupMembersChangeResult._all_field_names_ = set([ 'group_info', 'async_job_id', ]) GroupMembersChangeResult._all_fields_ = [ ('group_info', GroupMembersChangeResult.group_info.validator), ('async_job_id', GroupMembersChangeResult.async_job_id.validator), ] GroupMembersRemoveArg.group.validator = GroupSelector_validator GroupMembersRemoveArg.users.validator = bv.List(UserSelectorArg_validator) GroupMembersRemoveArg._all_field_names_ = IncludeMembersArg._all_field_names_.union(set([ 'group', 'users', ])) GroupMembersRemoveArg._all_fields_ = IncludeMembersArg._all_fields_ + [ ('group', GroupMembersRemoveArg.group.validator), ('users', GroupMembersRemoveArg.users.validator), ] GroupMembersSelectorError._member_not_in_group_validator = bv.Void() GroupMembersSelectorError._tagmap = { 'member_not_in_group': GroupMembersSelectorError._member_not_in_group_validator, } GroupMembersSelectorError._tagmap.update(GroupSelectorWithTeamGroupError._tagmap) GroupMembersSelectorError.member_not_in_group = GroupMembersSelectorError('member_not_in_group') GroupMembersRemoveError._group_not_in_team_validator = bv.Void() GroupMembersRemoveError._members_not_in_team_validator = bv.List(bv.String()) GroupMembersRemoveError._users_not_found_validator = bv.List(bv.String()) GroupMembersRemoveError._tagmap = { 'group_not_in_team': GroupMembersRemoveError._group_not_in_team_validator, 'members_not_in_team': GroupMembersRemoveError._members_not_in_team_validator, 'users_not_found': GroupMembersRemoveError._users_not_found_validator, } GroupMembersRemoveError._tagmap.update(GroupMembersSelectorError._tagmap) GroupMembersRemoveError.group_not_in_team = GroupMembersRemoveError('group_not_in_team') GroupMembersSelector.group.validator = GroupSelector_validator GroupMembersSelector.users.validator = UsersSelectorArg_validator GroupMembersSelector._all_field_names_ = set([ 'group', 'users', ]) GroupMembersSelector._all_fields_ = [ ('group', GroupMembersSelector.group.validator), ('users', GroupMembersSelector.users.validator), ] GroupMembersSetAccessTypeArg.access_type.validator = GroupAccessType_validator GroupMembersSetAccessTypeArg.return_members.validator = bv.Boolean() GroupMembersSetAccessTypeArg._all_field_names_ = GroupMemberSelector._all_field_names_.union(set([ 'access_type', 'return_members', ])) GroupMembersSetAccessTypeArg._all_fields_ = GroupMemberSelector._all_fields_ + [ ('access_type', GroupMembersSetAccessTypeArg.access_type.validator), ('return_members', GroupMembersSetAccessTypeArg.return_members.validator), ] GroupSelector._group_id_validator = team_common.GroupId_validator GroupSelector._group_external_id_validator = team_common.GroupExternalId_validator GroupSelector._tagmap = { 'group_id': GroupSelector._group_id_validator, 'group_external_id': GroupSelector._group_external_id_validator, } GroupUpdateArgs.group.validator = GroupSelector_validator GroupUpdateArgs.new_group_name.validator = bv.Nullable(bv.String()) GroupUpdateArgs.new_group_external_id.validator = bv.Nullable(team_common.GroupExternalId_validator) GroupUpdateArgs.new_group_management_type.validator = bv.Nullable(team_common.GroupManagementType_validator) GroupUpdateArgs._all_field_names_ = IncludeMembersArg._all_field_names_.union(set([ 'group', 'new_group_name', 'new_group_external_id', 'new_group_management_type', ])) GroupUpdateArgs._all_fields_ = IncludeMembersArg._all_fields_ + [ ('group', GroupUpdateArgs.group.validator), ('new_group_name', GroupUpdateArgs.new_group_name.validator), ('new_group_external_id', GroupUpdateArgs.new_group_external_id.validator), ('new_group_management_type', GroupUpdateArgs.new_group_management_type.validator), ] GroupUpdateError._group_name_already_used_validator = bv.Void() GroupUpdateError._group_name_invalid_validator = bv.Void() GroupUpdateError._external_id_already_in_use_validator = bv.Void() GroupUpdateError._tagmap = { 'group_name_already_used': GroupUpdateError._group_name_already_used_validator, 'group_name_invalid': GroupUpdateError._group_name_invalid_validator, 'external_id_already_in_use': GroupUpdateError._external_id_already_in_use_validator, } GroupUpdateError._tagmap.update(GroupSelectorWithTeamGroupError._tagmap) GroupUpdateError.group_name_already_used = GroupUpdateError('group_name_already_used') GroupUpdateError.group_name_invalid = GroupUpdateError('group_name_invalid') GroupUpdateError.external_id_already_in_use = GroupUpdateError('external_id_already_in_use') GroupsGetInfoError._group_not_on_team_validator = bv.Void() GroupsGetInfoError._other_validator = bv.Void() GroupsGetInfoError._tagmap = { 'group_not_on_team': GroupsGetInfoError._group_not_on_team_validator, 'other': GroupsGetInfoError._other_validator, } GroupsGetInfoError.group_not_on_team = GroupsGetInfoError('group_not_on_team') GroupsGetInfoError.other = GroupsGetInfoError('other') GroupsGetInfoItem._id_not_found_validator = bv.String() GroupsGetInfoItem._group_info_validator = GroupFullInfo_validator GroupsGetInfoItem._tagmap = { 'id_not_found': GroupsGetInfoItem._id_not_found_validator, 'group_info': GroupsGetInfoItem._group_info_validator, } GroupsListArg.limit.validator = bv.UInt32(min_value=1, max_value=1000) GroupsListArg._all_field_names_ = set(['limit']) GroupsListArg._all_fields_ = [('limit', GroupsListArg.limit.validator)] GroupsListContinueArg.cursor.validator = bv.String() GroupsListContinueArg._all_field_names_ = set(['cursor']) GroupsListContinueArg._all_fields_ = [('cursor', GroupsListContinueArg.cursor.validator)] GroupsListContinueError._invalid_cursor_validator = bv.Void() GroupsListContinueError._other_validator = bv.Void() GroupsListContinueError._tagmap = { 'invalid_cursor': GroupsListContinueError._invalid_cursor_validator, 'other': GroupsListContinueError._other_validator, } GroupsListContinueError.invalid_cursor = GroupsListContinueError('invalid_cursor') GroupsListContinueError.other = GroupsListContinueError('other') GroupsListResult.groups.validator = bv.List(team_common.GroupSummary_validator) GroupsListResult.cursor.validator = bv.String() GroupsListResult.has_more.validator = bv.Boolean() GroupsListResult._all_field_names_ = set([ 'groups', 'cursor', 'has_more', ]) GroupsListResult._all_fields_ = [ ('groups', GroupsListResult.groups.validator), ('cursor', GroupsListResult.cursor.validator), ('has_more', GroupsListResult.has_more.validator), ] GroupsMembersListArg.group.validator = GroupSelector_validator GroupsMembersListArg.limit.validator = bv.UInt32(min_value=1, max_value=1000) GroupsMembersListArg._all_field_names_ = set([ 'group', 'limit', ]) GroupsMembersListArg._all_fields_ = [ ('group', GroupsMembersListArg.group.validator), ('limit', GroupsMembersListArg.limit.validator), ] GroupsMembersListContinueArg.cursor.validator = bv.String() GroupsMembersListContinueArg._all_field_names_ = set(['cursor']) GroupsMembersListContinueArg._all_fields_ = [('cursor', GroupsMembersListContinueArg.cursor.validator)] GroupsMembersListContinueError._invalid_cursor_validator = bv.Void() GroupsMembersListContinueError._other_validator = bv.Void() GroupsMembersListContinueError._tagmap = { 'invalid_cursor': GroupsMembersListContinueError._invalid_cursor_validator, 'other': GroupsMembersListContinueError._other_validator, } GroupsMembersListContinueError.invalid_cursor = GroupsMembersListContinueError('invalid_cursor') GroupsMembersListContinueError.other = GroupsMembersListContinueError('other') GroupsMembersListResult.members.validator = bv.List(GroupMemberInfo_validator) GroupsMembersListResult.cursor.validator = bv.String() GroupsMembersListResult.has_more.validator = bv.Boolean() GroupsMembersListResult._all_field_names_ = set([ 'members', 'cursor', 'has_more', ]) GroupsMembersListResult._all_fields_ = [ ('members', GroupsMembersListResult.members.validator), ('cursor', GroupsMembersListResult.cursor.validator), ('has_more', GroupsMembersListResult.has_more.validator), ] GroupsPollError._access_denied_validator = bv.Void() GroupsPollError._tagmap = { 'access_denied': GroupsPollError._access_denied_validator, } GroupsPollError._tagmap.update(async_.PollError._tagmap) GroupsPollError.access_denied = GroupsPollError('access_denied') GroupsSelector._group_ids_validator = bv.List(team_common.GroupId_validator) GroupsSelector._group_external_ids_validator = bv.List(bv.String()) GroupsSelector._tagmap = { 'group_ids': GroupsSelector._group_ids_validator, 'group_external_ids': GroupsSelector._group_external_ids_validator, } HasTeamFileEventsValue._enabled_validator = bv.Boolean() HasTeamFileEventsValue._other_validator = bv.Void() HasTeamFileEventsValue._tagmap = { 'enabled': HasTeamFileEventsValue._enabled_validator, 'other': HasTeamFileEventsValue._other_validator, } HasTeamFileEventsValue.other = HasTeamFileEventsValue('other') HasTeamSelectiveSyncValue._has_team_selective_sync_validator = bv.Boolean() HasTeamSelectiveSyncValue._other_validator = bv.Void() HasTeamSelectiveSyncValue._tagmap = { 'has_team_selective_sync': HasTeamSelectiveSyncValue._has_team_selective_sync_validator, 'other': HasTeamSelectiveSyncValue._other_validator, } HasTeamSelectiveSyncValue.other = HasTeamSelectiveSyncValue('other') HasTeamSharedDropboxValue._has_team_shared_dropbox_validator = bv.Boolean() HasTeamSharedDropboxValue._other_validator = bv.Void() HasTeamSharedDropboxValue._tagmap = { 'has_team_shared_dropbox': HasTeamSharedDropboxValue._has_team_shared_dropbox_validator, 'other': HasTeamSharedDropboxValue._other_validator, } HasTeamSharedDropboxValue.other = HasTeamSharedDropboxValue('other') LegalHoldHeldRevisionMetadata.new_filename.validator = bv.String() LegalHoldHeldRevisionMetadata.original_revision_id.validator = files.Rev_validator LegalHoldHeldRevisionMetadata.original_file_path.validator = Path_validator LegalHoldHeldRevisionMetadata.server_modified.validator = common.DropboxTimestamp_validator LegalHoldHeldRevisionMetadata.author_member_id.validator = team_common.TeamMemberId_validator LegalHoldHeldRevisionMetadata.author_member_status.validator = TeamMemberStatus_validator LegalHoldHeldRevisionMetadata.author_email.validator = common.EmailAddress_validator LegalHoldHeldRevisionMetadata.file_type.validator = bv.String() LegalHoldHeldRevisionMetadata.size.validator = bv.UInt64() LegalHoldHeldRevisionMetadata.content_hash.validator = files.Sha256HexHash_validator LegalHoldHeldRevisionMetadata._all_field_names_ = set([ 'new_filename', 'original_revision_id', 'original_file_path', 'server_modified', 'author_member_id', 'author_member_status', 'author_email', 'file_type', 'size', 'content_hash', ]) LegalHoldHeldRevisionMetadata._all_fields_ = [ ('new_filename', LegalHoldHeldRevisionMetadata.new_filename.validator), ('original_revision_id', LegalHoldHeldRevisionMetadata.original_revision_id.validator), ('original_file_path', LegalHoldHeldRevisionMetadata.original_file_path.validator), ('server_modified', LegalHoldHeldRevisionMetadata.server_modified.validator), ('author_member_id', LegalHoldHeldRevisionMetadata.author_member_id.validator), ('author_member_status', LegalHoldHeldRevisionMetadata.author_member_status.validator), ('author_email', LegalHoldHeldRevisionMetadata.author_email.validator), ('file_type', LegalHoldHeldRevisionMetadata.file_type.validator), ('size', LegalHoldHeldRevisionMetadata.size.validator), ('content_hash', LegalHoldHeldRevisionMetadata.content_hash.validator), ] LegalHoldPolicy.id.validator = LegalHoldId_validator LegalHoldPolicy.name.validator = LegalHoldPolicyName_validator LegalHoldPolicy.description.validator = bv.Nullable(LegalHoldPolicyDescription_validator) LegalHoldPolicy.activation_time.validator = bv.Nullable(common.DropboxTimestamp_validator) LegalHoldPolicy.members.validator = MembersInfo_validator LegalHoldPolicy.status.validator = LegalHoldStatus_validator LegalHoldPolicy.start_date.validator = common.DropboxTimestamp_validator LegalHoldPolicy.end_date.validator = bv.Nullable(common.DropboxTimestamp_validator) LegalHoldPolicy._all_field_names_ = set([ 'id', 'name', 'description', 'activation_time', 'members', 'status', 'start_date', 'end_date', ]) LegalHoldPolicy._all_fields_ = [ ('id', LegalHoldPolicy.id.validator), ('name', LegalHoldPolicy.name.validator), ('description', LegalHoldPolicy.description.validator), ('activation_time', LegalHoldPolicy.activation_time.validator), ('members', LegalHoldPolicy.members.validator), ('status', LegalHoldPolicy.status.validator), ('start_date', LegalHoldPolicy.start_date.validator), ('end_date', LegalHoldPolicy.end_date.validator), ] LegalHoldStatus._active_validator = bv.Void() LegalHoldStatus._released_validator = bv.Void() LegalHoldStatus._activating_validator = bv.Void() LegalHoldStatus._updating_validator = bv.Void() LegalHoldStatus._exporting_validator = bv.Void() LegalHoldStatus._releasing_validator = bv.Void() LegalHoldStatus._other_validator = bv.Void() LegalHoldStatus._tagmap = { 'active': LegalHoldStatus._active_validator, 'released': LegalHoldStatus._released_validator, 'activating': LegalHoldStatus._activating_validator, 'updating': LegalHoldStatus._updating_validator, 'exporting': LegalHoldStatus._exporting_validator, 'releasing': LegalHoldStatus._releasing_validator, 'other': LegalHoldStatus._other_validator, } LegalHoldStatus.active = LegalHoldStatus('active') LegalHoldStatus.released = LegalHoldStatus('released') LegalHoldStatus.activating = LegalHoldStatus('activating') LegalHoldStatus.updating = LegalHoldStatus('updating') LegalHoldStatus.exporting = LegalHoldStatus('exporting') LegalHoldStatus.releasing = LegalHoldStatus('releasing') LegalHoldStatus.other = LegalHoldStatus('other') LegalHoldsError._unknown_legal_hold_error_validator = bv.Void() LegalHoldsError._insufficient_permissions_validator = bv.Void() LegalHoldsError._other_validator = bv.Void() LegalHoldsError._tagmap = { 'unknown_legal_hold_error': LegalHoldsError._unknown_legal_hold_error_validator, 'insufficient_permissions': LegalHoldsError._insufficient_permissions_validator, 'other': LegalHoldsError._other_validator, } LegalHoldsError.unknown_legal_hold_error = LegalHoldsError('unknown_legal_hold_error') LegalHoldsError.insufficient_permissions = LegalHoldsError('insufficient_permissions') LegalHoldsError.other = LegalHoldsError('other') LegalHoldsGetPolicyArg.id.validator = LegalHoldId_validator LegalHoldsGetPolicyArg._all_field_names_ = set(['id']) LegalHoldsGetPolicyArg._all_fields_ = [('id', LegalHoldsGetPolicyArg.id.validator)] LegalHoldsGetPolicyError._legal_hold_policy_not_found_validator = bv.Void() LegalHoldsGetPolicyError._tagmap = { 'legal_hold_policy_not_found': LegalHoldsGetPolicyError._legal_hold_policy_not_found_validator, } LegalHoldsGetPolicyError._tagmap.update(LegalHoldsError._tagmap) LegalHoldsGetPolicyError.legal_hold_policy_not_found = LegalHoldsGetPolicyError('legal_hold_policy_not_found') LegalHoldsListHeldRevisionResult.entries.validator = bv.List(LegalHoldHeldRevisionMetadata_validator) LegalHoldsListHeldRevisionResult.cursor.validator = bv.Nullable(ListHeldRevisionCursor_validator) LegalHoldsListHeldRevisionResult.has_more.validator = bv.Boolean() LegalHoldsListHeldRevisionResult._all_field_names_ = set([ 'entries', 'cursor', 'has_more', ]) LegalHoldsListHeldRevisionResult._all_fields_ = [ ('entries', LegalHoldsListHeldRevisionResult.entries.validator), ('cursor', LegalHoldsListHeldRevisionResult.cursor.validator), ('has_more', LegalHoldsListHeldRevisionResult.has_more.validator), ] LegalHoldsListHeldRevisionsArg.id.validator = LegalHoldId_validator LegalHoldsListHeldRevisionsArg._all_field_names_ = set(['id']) LegalHoldsListHeldRevisionsArg._all_fields_ = [('id', LegalHoldsListHeldRevisionsArg.id.validator)] LegalHoldsListHeldRevisionsContinueArg.id.validator = LegalHoldId_validator LegalHoldsListHeldRevisionsContinueArg.cursor.validator = bv.Nullable(ListHeldRevisionCursor_validator) LegalHoldsListHeldRevisionsContinueArg._all_field_names_ = set([ 'id', 'cursor', ]) LegalHoldsListHeldRevisionsContinueArg._all_fields_ = [ ('id', LegalHoldsListHeldRevisionsContinueArg.id.validator), ('cursor', LegalHoldsListHeldRevisionsContinueArg.cursor.validator), ] LegalHoldsListHeldRevisionsContinueError._unknown_legal_hold_error_validator = bv.Void() LegalHoldsListHeldRevisionsContinueError._transient_error_validator = bv.Void() LegalHoldsListHeldRevisionsContinueError._reset_validator = bv.Void() LegalHoldsListHeldRevisionsContinueError._other_validator = bv.Void() LegalHoldsListHeldRevisionsContinueError._tagmap = { 'unknown_legal_hold_error': LegalHoldsListHeldRevisionsContinueError._unknown_legal_hold_error_validator, 'transient_error': LegalHoldsListHeldRevisionsContinueError._transient_error_validator, 'reset': LegalHoldsListHeldRevisionsContinueError._reset_validator, 'other': LegalHoldsListHeldRevisionsContinueError._other_validator, } LegalHoldsListHeldRevisionsContinueError.unknown_legal_hold_error = LegalHoldsListHeldRevisionsContinueError('unknown_legal_hold_error') LegalHoldsListHeldRevisionsContinueError.transient_error = LegalHoldsListHeldRevisionsContinueError('transient_error') LegalHoldsListHeldRevisionsContinueError.reset = LegalHoldsListHeldRevisionsContinueError('reset') LegalHoldsListHeldRevisionsContinueError.other = LegalHoldsListHeldRevisionsContinueError('other') LegalHoldsListHeldRevisionsError._transient_error_validator = bv.Void() LegalHoldsListHeldRevisionsError._legal_hold_still_empty_validator = bv.Void() LegalHoldsListHeldRevisionsError._inactive_legal_hold_validator = bv.Void() LegalHoldsListHeldRevisionsError._tagmap = { 'transient_error': LegalHoldsListHeldRevisionsError._transient_error_validator, 'legal_hold_still_empty': LegalHoldsListHeldRevisionsError._legal_hold_still_empty_validator, 'inactive_legal_hold': LegalHoldsListHeldRevisionsError._inactive_legal_hold_validator, } LegalHoldsListHeldRevisionsError._tagmap.update(LegalHoldsError._tagmap) LegalHoldsListHeldRevisionsError.transient_error = LegalHoldsListHeldRevisionsError('transient_error') LegalHoldsListHeldRevisionsError.legal_hold_still_empty = LegalHoldsListHeldRevisionsError('legal_hold_still_empty') LegalHoldsListHeldRevisionsError.inactive_legal_hold = LegalHoldsListHeldRevisionsError('inactive_legal_hold') LegalHoldsListPoliciesArg.include_released.validator = bv.Boolean() LegalHoldsListPoliciesArg._all_field_names_ = set(['include_released']) LegalHoldsListPoliciesArg._all_fields_ = [('include_released', LegalHoldsListPoliciesArg.include_released.validator)] LegalHoldsListPoliciesError._transient_error_validator = bv.Void() LegalHoldsListPoliciesError._tagmap = { 'transient_error': LegalHoldsListPoliciesError._transient_error_validator, } LegalHoldsListPoliciesError._tagmap.update(LegalHoldsError._tagmap) LegalHoldsListPoliciesError.transient_error = LegalHoldsListPoliciesError('transient_error') LegalHoldsListPoliciesResult.policies.validator = bv.List(LegalHoldPolicy_validator) LegalHoldsListPoliciesResult._all_field_names_ = set(['policies']) LegalHoldsListPoliciesResult._all_fields_ = [('policies', LegalHoldsListPoliciesResult.policies.validator)] LegalHoldsPolicyCreateArg.name.validator = LegalHoldPolicyName_validator LegalHoldsPolicyCreateArg.description.validator = bv.Nullable(LegalHoldPolicyDescription_validator) LegalHoldsPolicyCreateArg.members.validator = bv.List(team_common.TeamMemberId_validator) LegalHoldsPolicyCreateArg.start_date.validator = bv.Nullable(common.DropboxTimestamp_validator) LegalHoldsPolicyCreateArg.end_date.validator = bv.Nullable(common.DropboxTimestamp_validator) LegalHoldsPolicyCreateArg._all_field_names_ = set([ 'name', 'description', 'members', 'start_date', 'end_date', ]) LegalHoldsPolicyCreateArg._all_fields_ = [ ('name', LegalHoldsPolicyCreateArg.name.validator), ('description', LegalHoldsPolicyCreateArg.description.validator), ('members', LegalHoldsPolicyCreateArg.members.validator), ('start_date', LegalHoldsPolicyCreateArg.start_date.validator), ('end_date', LegalHoldsPolicyCreateArg.end_date.validator), ] LegalHoldsPolicyCreateError._start_date_is_later_than_end_date_validator = bv.Void() LegalHoldsPolicyCreateError._empty_members_list_validator = bv.Void() LegalHoldsPolicyCreateError._invalid_members_validator = bv.Void() LegalHoldsPolicyCreateError._number_of_users_on_hold_is_greater_than_hold_limitation_validator = bv.Void() LegalHoldsPolicyCreateError._transient_error_validator = bv.Void() LegalHoldsPolicyCreateError._name_must_be_unique_validator = bv.Void() LegalHoldsPolicyCreateError._team_exceeded_legal_hold_quota_validator = bv.Void() LegalHoldsPolicyCreateError._invalid_date_validator = bv.Void() LegalHoldsPolicyCreateError._tagmap = { 'start_date_is_later_than_end_date': LegalHoldsPolicyCreateError._start_date_is_later_than_end_date_validator, 'empty_members_list': LegalHoldsPolicyCreateError._empty_members_list_validator, 'invalid_members': LegalHoldsPolicyCreateError._invalid_members_validator, 'number_of_users_on_hold_is_greater_than_hold_limitation': LegalHoldsPolicyCreateError._number_of_users_on_hold_is_greater_than_hold_limitation_validator, 'transient_error': LegalHoldsPolicyCreateError._transient_error_validator, 'name_must_be_unique': LegalHoldsPolicyCreateError._name_must_be_unique_validator, 'team_exceeded_legal_hold_quota': LegalHoldsPolicyCreateError._team_exceeded_legal_hold_quota_validator, 'invalid_date': LegalHoldsPolicyCreateError._invalid_date_validator, } LegalHoldsPolicyCreateError._tagmap.update(LegalHoldsError._tagmap) LegalHoldsPolicyCreateError.start_date_is_later_than_end_date = LegalHoldsPolicyCreateError('start_date_is_later_than_end_date') LegalHoldsPolicyCreateError.empty_members_list = LegalHoldsPolicyCreateError('empty_members_list') LegalHoldsPolicyCreateError.invalid_members = LegalHoldsPolicyCreateError('invalid_members') LegalHoldsPolicyCreateError.number_of_users_on_hold_is_greater_than_hold_limitation = LegalHoldsPolicyCreateError('number_of_users_on_hold_is_greater_than_hold_limitation') LegalHoldsPolicyCreateError.transient_error = LegalHoldsPolicyCreateError('transient_error') LegalHoldsPolicyCreateError.name_must_be_unique = LegalHoldsPolicyCreateError('name_must_be_unique') LegalHoldsPolicyCreateError.team_exceeded_legal_hold_quota = LegalHoldsPolicyCreateError('team_exceeded_legal_hold_quota') LegalHoldsPolicyCreateError.invalid_date = LegalHoldsPolicyCreateError('invalid_date') LegalHoldsPolicyReleaseArg.id.validator = LegalHoldId_validator LegalHoldsPolicyReleaseArg._all_field_names_ = set(['id']) LegalHoldsPolicyReleaseArg._all_fields_ = [('id', LegalHoldsPolicyReleaseArg.id.validator)] LegalHoldsPolicyReleaseError._legal_hold_performing_another_operation_validator = bv.Void() LegalHoldsPolicyReleaseError._legal_hold_already_releasing_validator = bv.Void() LegalHoldsPolicyReleaseError._legal_hold_policy_not_found_validator = bv.Void() LegalHoldsPolicyReleaseError._tagmap = { 'legal_hold_performing_another_operation': LegalHoldsPolicyReleaseError._legal_hold_performing_another_operation_validator, 'legal_hold_already_releasing': LegalHoldsPolicyReleaseError._legal_hold_already_releasing_validator, 'legal_hold_policy_not_found': LegalHoldsPolicyReleaseError._legal_hold_policy_not_found_validator, } LegalHoldsPolicyReleaseError._tagmap.update(LegalHoldsError._tagmap) LegalHoldsPolicyReleaseError.legal_hold_performing_another_operation = LegalHoldsPolicyReleaseError('legal_hold_performing_another_operation') LegalHoldsPolicyReleaseError.legal_hold_already_releasing = LegalHoldsPolicyReleaseError('legal_hold_already_releasing') LegalHoldsPolicyReleaseError.legal_hold_policy_not_found = LegalHoldsPolicyReleaseError('legal_hold_policy_not_found') LegalHoldsPolicyUpdateArg.id.validator = LegalHoldId_validator LegalHoldsPolicyUpdateArg.name.validator = bv.Nullable(LegalHoldPolicyName_validator) LegalHoldsPolicyUpdateArg.description.validator = bv.Nullable(LegalHoldPolicyDescription_validator) LegalHoldsPolicyUpdateArg.members.validator = bv.Nullable(bv.List(team_common.TeamMemberId_validator)) LegalHoldsPolicyUpdateArg._all_field_names_ = set([ 'id', 'name', 'description', 'members', ]) LegalHoldsPolicyUpdateArg._all_fields_ = [ ('id', LegalHoldsPolicyUpdateArg.id.validator), ('name', LegalHoldsPolicyUpdateArg.name.validator), ('description', LegalHoldsPolicyUpdateArg.description.validator), ('members', LegalHoldsPolicyUpdateArg.members.validator), ] LegalHoldsPolicyUpdateError._transient_error_validator = bv.Void() LegalHoldsPolicyUpdateError._inactive_legal_hold_validator = bv.Void() LegalHoldsPolicyUpdateError._legal_hold_performing_another_operation_validator = bv.Void() LegalHoldsPolicyUpdateError._invalid_members_validator = bv.Void() LegalHoldsPolicyUpdateError._number_of_users_on_hold_is_greater_than_hold_limitation_validator = bv.Void() LegalHoldsPolicyUpdateError._empty_members_list_validator = bv.Void() LegalHoldsPolicyUpdateError._name_must_be_unique_validator = bv.Void() LegalHoldsPolicyUpdateError._legal_hold_policy_not_found_validator = bv.Void() LegalHoldsPolicyUpdateError._tagmap = { 'transient_error': LegalHoldsPolicyUpdateError._transient_error_validator, 'inactive_legal_hold': LegalHoldsPolicyUpdateError._inactive_legal_hold_validator, 'legal_hold_performing_another_operation': LegalHoldsPolicyUpdateError._legal_hold_performing_another_operation_validator, 'invalid_members': LegalHoldsPolicyUpdateError._invalid_members_validator, 'number_of_users_on_hold_is_greater_than_hold_limitation': LegalHoldsPolicyUpdateError._number_of_users_on_hold_is_greater_than_hold_limitation_validator, 'empty_members_list': LegalHoldsPolicyUpdateError._empty_members_list_validator, 'name_must_be_unique': LegalHoldsPolicyUpdateError._name_must_be_unique_validator, 'legal_hold_policy_not_found': LegalHoldsPolicyUpdateError._legal_hold_policy_not_found_validator, } LegalHoldsPolicyUpdateError._tagmap.update(LegalHoldsError._tagmap) LegalHoldsPolicyUpdateError.transient_error = LegalHoldsPolicyUpdateError('transient_error') LegalHoldsPolicyUpdateError.inactive_legal_hold = LegalHoldsPolicyUpdateError('inactive_legal_hold') LegalHoldsPolicyUpdateError.legal_hold_performing_another_operation = LegalHoldsPolicyUpdateError('legal_hold_performing_another_operation') LegalHoldsPolicyUpdateError.invalid_members = LegalHoldsPolicyUpdateError('invalid_members') LegalHoldsPolicyUpdateError.number_of_users_on_hold_is_greater_than_hold_limitation = LegalHoldsPolicyUpdateError('number_of_users_on_hold_is_greater_than_hold_limitation') LegalHoldsPolicyUpdateError.empty_members_list = LegalHoldsPolicyUpdateError('empty_members_list') LegalHoldsPolicyUpdateError.name_must_be_unique = LegalHoldsPolicyUpdateError('name_must_be_unique') LegalHoldsPolicyUpdateError.legal_hold_policy_not_found = LegalHoldsPolicyUpdateError('legal_hold_policy_not_found') ListMemberAppsArg.team_member_id.validator = bv.String() ListMemberAppsArg._all_field_names_ = set(['team_member_id']) ListMemberAppsArg._all_fields_ = [('team_member_id', ListMemberAppsArg.team_member_id.validator)] ListMemberAppsError._member_not_found_validator = bv.Void() ListMemberAppsError._other_validator = bv.Void() ListMemberAppsError._tagmap = { 'member_not_found': ListMemberAppsError._member_not_found_validator, 'other': ListMemberAppsError._other_validator, } ListMemberAppsError.member_not_found = ListMemberAppsError('member_not_found') ListMemberAppsError.other = ListMemberAppsError('other') ListMemberAppsResult.linked_api_apps.validator = bv.List(ApiApp_validator) ListMemberAppsResult._all_field_names_ = set(['linked_api_apps']) ListMemberAppsResult._all_fields_ = [('linked_api_apps', ListMemberAppsResult.linked_api_apps.validator)] ListMemberDevicesArg.team_member_id.validator = bv.String() ListMemberDevicesArg.include_web_sessions.validator = bv.Boolean() ListMemberDevicesArg.include_desktop_clients.validator = bv.Boolean() ListMemberDevicesArg.include_mobile_clients.validator = bv.Boolean() ListMemberDevicesArg._all_field_names_ = set([ 'team_member_id', 'include_web_sessions', 'include_desktop_clients', 'include_mobile_clients', ]) ListMemberDevicesArg._all_fields_ = [ ('team_member_id', ListMemberDevicesArg.team_member_id.validator), ('include_web_sessions', ListMemberDevicesArg.include_web_sessions.validator), ('include_desktop_clients', ListMemberDevicesArg.include_desktop_clients.validator), ('include_mobile_clients', ListMemberDevicesArg.include_mobile_clients.validator), ] ListMemberDevicesError._member_not_found_validator = bv.Void() ListMemberDevicesError._other_validator = bv.Void() ListMemberDevicesError._tagmap = { 'member_not_found': ListMemberDevicesError._member_not_found_validator, 'other': ListMemberDevicesError._other_validator, } ListMemberDevicesError.member_not_found = ListMemberDevicesError('member_not_found') ListMemberDevicesError.other = ListMemberDevicesError('other') ListMemberDevicesResult.active_web_sessions.validator = bv.Nullable(bv.List(ActiveWebSession_validator)) ListMemberDevicesResult.desktop_client_sessions.validator = bv.Nullable(bv.List(DesktopClientSession_validator)) ListMemberDevicesResult.mobile_client_sessions.validator = bv.Nullable(bv.List(MobileClientSession_validator)) ListMemberDevicesResult._all_field_names_ = set([ 'active_web_sessions', 'desktop_client_sessions', 'mobile_client_sessions', ]) ListMemberDevicesResult._all_fields_ = [ ('active_web_sessions', ListMemberDevicesResult.active_web_sessions.validator), ('desktop_client_sessions', ListMemberDevicesResult.desktop_client_sessions.validator), ('mobile_client_sessions', ListMemberDevicesResult.mobile_client_sessions.validator), ] ListMembersAppsArg.cursor.validator = bv.Nullable(bv.String()) ListMembersAppsArg._all_field_names_ = set(['cursor']) ListMembersAppsArg._all_fields_ = [('cursor', ListMembersAppsArg.cursor.validator)] ListMembersAppsError._reset_validator = bv.Void() ListMembersAppsError._other_validator = bv.Void() ListMembersAppsError._tagmap = { 'reset': ListMembersAppsError._reset_validator, 'other': ListMembersAppsError._other_validator, } ListMembersAppsError.reset = ListMembersAppsError('reset') ListMembersAppsError.other = ListMembersAppsError('other') ListMembersAppsResult.apps.validator = bv.List(MemberLinkedApps_validator) ListMembersAppsResult.has_more.validator = bv.Boolean() ListMembersAppsResult.cursor.validator = bv.Nullable(bv.String()) ListMembersAppsResult._all_field_names_ = set([ 'apps', 'has_more', 'cursor', ]) ListMembersAppsResult._all_fields_ = [ ('apps', ListMembersAppsResult.apps.validator), ('has_more', ListMembersAppsResult.has_more.validator), ('cursor', ListMembersAppsResult.cursor.validator), ] ListMembersDevicesArg.cursor.validator = bv.Nullable(bv.String()) ListMembersDevicesArg.include_web_sessions.validator = bv.Boolean() ListMembersDevicesArg.include_desktop_clients.validator = bv.Boolean() ListMembersDevicesArg.include_mobile_clients.validator = bv.Boolean() ListMembersDevicesArg._all_field_names_ = set([ 'cursor', 'include_web_sessions', 'include_desktop_clients', 'include_mobile_clients', ]) ListMembersDevicesArg._all_fields_ = [ ('cursor', ListMembersDevicesArg.cursor.validator), ('include_web_sessions', ListMembersDevicesArg.include_web_sessions.validator), ('include_desktop_clients', ListMembersDevicesArg.include_desktop_clients.validator), ('include_mobile_clients', ListMembersDevicesArg.include_mobile_clients.validator), ] ListMembersDevicesError._reset_validator = bv.Void() ListMembersDevicesError._other_validator = bv.Void() ListMembersDevicesError._tagmap = { 'reset': ListMembersDevicesError._reset_validator, 'other': ListMembersDevicesError._other_validator, } ListMembersDevicesError.reset = ListMembersDevicesError('reset') ListMembersDevicesError.other = ListMembersDevicesError('other') ListMembersDevicesResult.devices.validator = bv.List(MemberDevices_validator) ListMembersDevicesResult.has_more.validator = bv.Boolean() ListMembersDevicesResult.cursor.validator = bv.Nullable(bv.String()) ListMembersDevicesResult._all_field_names_ = set([ 'devices', 'has_more', 'cursor', ]) ListMembersDevicesResult._all_fields_ = [ ('devices', ListMembersDevicesResult.devices.validator), ('has_more', ListMembersDevicesResult.has_more.validator), ('cursor', ListMembersDevicesResult.cursor.validator), ] ListTeamAppsArg.cursor.validator = bv.Nullable(bv.String()) ListTeamAppsArg._all_field_names_ = set(['cursor']) ListTeamAppsArg._all_fields_ = [('cursor', ListTeamAppsArg.cursor.validator)] ListTeamAppsError._reset_validator = bv.Void() ListTeamAppsError._other_validator = bv.Void() ListTeamAppsError._tagmap = { 'reset': ListTeamAppsError._reset_validator, 'other': ListTeamAppsError._other_validator, } ListTeamAppsError.reset = ListTeamAppsError('reset') ListTeamAppsError.other = ListTeamAppsError('other') ListTeamAppsResult.apps.validator = bv.List(MemberLinkedApps_validator) ListTeamAppsResult.has_more.validator = bv.Boolean() ListTeamAppsResult.cursor.validator = bv.Nullable(bv.String()) ListTeamAppsResult._all_field_names_ = set([ 'apps', 'has_more', 'cursor', ]) ListTeamAppsResult._all_fields_ = [ ('apps', ListTeamAppsResult.apps.validator), ('has_more', ListTeamAppsResult.has_more.validator), ('cursor', ListTeamAppsResult.cursor.validator), ] ListTeamDevicesArg.cursor.validator = bv.Nullable(bv.String()) ListTeamDevicesArg.include_web_sessions.validator = bv.Boolean() ListTeamDevicesArg.include_desktop_clients.validator = bv.Boolean() ListTeamDevicesArg.include_mobile_clients.validator = bv.Boolean() ListTeamDevicesArg._all_field_names_ = set([ 'cursor', 'include_web_sessions', 'include_desktop_clients', 'include_mobile_clients', ]) ListTeamDevicesArg._all_fields_ = [ ('cursor', ListTeamDevicesArg.cursor.validator), ('include_web_sessions', ListTeamDevicesArg.include_web_sessions.validator), ('include_desktop_clients', ListTeamDevicesArg.include_desktop_clients.validator), ('include_mobile_clients', ListTeamDevicesArg.include_mobile_clients.validator), ] ListTeamDevicesError._reset_validator = bv.Void() ListTeamDevicesError._other_validator = bv.Void() ListTeamDevicesError._tagmap = { 'reset': ListTeamDevicesError._reset_validator, 'other': ListTeamDevicesError._other_validator, } ListTeamDevicesError.reset = ListTeamDevicesError('reset') ListTeamDevicesError.other = ListTeamDevicesError('other') ListTeamDevicesResult.devices.validator = bv.List(MemberDevices_validator) ListTeamDevicesResult.has_more.validator = bv.Boolean() ListTeamDevicesResult.cursor.validator = bv.Nullable(bv.String()) ListTeamDevicesResult._all_field_names_ = set([ 'devices', 'has_more', 'cursor', ]) ListTeamDevicesResult._all_fields_ = [ ('devices', ListTeamDevicesResult.devices.validator), ('has_more', ListTeamDevicesResult.has_more.validator), ('cursor', ListTeamDevicesResult.cursor.validator), ] MemberAccess.user.validator = UserSelectorArg_validator MemberAccess.access_type.validator = GroupAccessType_validator MemberAccess._all_field_names_ = set([ 'user', 'access_type', ]) MemberAccess._all_fields_ = [ ('user', MemberAccess.user.validator), ('access_type', MemberAccess.access_type.validator), ] MemberAddArgBase.member_email.validator = common.EmailAddress_validator MemberAddArgBase.member_given_name.validator = bv.Nullable(common.OptionalNamePart_validator) MemberAddArgBase.member_surname.validator = bv.Nullable(common.OptionalNamePart_validator) MemberAddArgBase.member_external_id.validator = bv.Nullable(team_common.MemberExternalId_validator) MemberAddArgBase.member_persistent_id.validator = bv.Nullable(bv.String()) MemberAddArgBase.send_welcome_email.validator = bv.Boolean() MemberAddArgBase.is_directory_restricted.validator = bv.Nullable(bv.Boolean()) MemberAddArgBase._all_field_names_ = set([ 'member_email', 'member_given_name', 'member_surname', 'member_external_id', 'member_persistent_id', 'send_welcome_email', 'is_directory_restricted', ]) MemberAddArgBase._all_fields_ = [ ('member_email', MemberAddArgBase.member_email.validator), ('member_given_name', MemberAddArgBase.member_given_name.validator), ('member_surname', MemberAddArgBase.member_surname.validator), ('member_external_id', MemberAddArgBase.member_external_id.validator), ('member_persistent_id', MemberAddArgBase.member_persistent_id.validator), ('send_welcome_email', MemberAddArgBase.send_welcome_email.validator), ('is_directory_restricted', MemberAddArgBase.is_directory_restricted.validator), ] MemberAddArg.role.validator = AdminTier_validator MemberAddArg._all_field_names_ = MemberAddArgBase._all_field_names_.union(set(['role'])) MemberAddArg._all_fields_ = MemberAddArgBase._all_fields_ + [('role', MemberAddArg.role.validator)] MemberAddResultBase._team_license_limit_validator = common.EmailAddress_validator MemberAddResultBase._free_team_member_limit_reached_validator = common.EmailAddress_validator MemberAddResultBase._user_already_on_team_validator = common.EmailAddress_validator MemberAddResultBase._user_on_another_team_validator = common.EmailAddress_validator MemberAddResultBase._user_already_paired_validator = common.EmailAddress_validator MemberAddResultBase._user_migration_failed_validator = common.EmailAddress_validator MemberAddResultBase._duplicate_external_member_id_validator = common.EmailAddress_validator MemberAddResultBase._duplicate_member_persistent_id_validator = common.EmailAddress_validator MemberAddResultBase._persistent_id_disabled_validator = common.EmailAddress_validator MemberAddResultBase._user_creation_failed_validator = common.EmailAddress_validator MemberAddResultBase._tagmap = { 'team_license_limit': MemberAddResultBase._team_license_limit_validator, 'free_team_member_limit_reached': MemberAddResultBase._free_team_member_limit_reached_validator, 'user_already_on_team': MemberAddResultBase._user_already_on_team_validator, 'user_on_another_team': MemberAddResultBase._user_on_another_team_validator, 'user_already_paired': MemberAddResultBase._user_already_paired_validator, 'user_migration_failed': MemberAddResultBase._user_migration_failed_validator, 'duplicate_external_member_id': MemberAddResultBase._duplicate_external_member_id_validator, 'duplicate_member_persistent_id': MemberAddResultBase._duplicate_member_persistent_id_validator, 'persistent_id_disabled': MemberAddResultBase._persistent_id_disabled_validator, 'user_creation_failed': MemberAddResultBase._user_creation_failed_validator, } MemberAddResult._success_validator = TeamMemberInfo_validator MemberAddResult._tagmap = { 'success': MemberAddResult._success_validator, } MemberAddResult._tagmap.update(MemberAddResultBase._tagmap) MemberAddV2Arg.role_ids.validator = bv.Nullable(bv.List(TeamMemberRoleId_validator, max_items=1)) MemberAddV2Arg._all_field_names_ = MemberAddArgBase._all_field_names_.union(set(['role_ids'])) MemberAddV2Arg._all_fields_ = MemberAddArgBase._all_fields_ + [('role_ids', MemberAddV2Arg.role_ids.validator)] MemberAddV2Result._success_validator = TeamMemberInfoV2_validator MemberAddV2Result._other_validator = bv.Void() MemberAddV2Result._tagmap = { 'success': MemberAddV2Result._success_validator, 'other': MemberAddV2Result._other_validator, } MemberAddV2Result._tagmap.update(MemberAddResultBase._tagmap) MemberAddV2Result.other = MemberAddV2Result('other') MemberDevices.team_member_id.validator = bv.String() MemberDevices.web_sessions.validator = bv.Nullable(bv.List(ActiveWebSession_validator)) MemberDevices.desktop_clients.validator = bv.Nullable(bv.List(DesktopClientSession_validator)) MemberDevices.mobile_clients.validator = bv.Nullable(bv.List(MobileClientSession_validator)) MemberDevices._all_field_names_ = set([ 'team_member_id', 'web_sessions', 'desktop_clients', 'mobile_clients', ]) MemberDevices._all_fields_ = [ ('team_member_id', MemberDevices.team_member_id.validator), ('web_sessions', MemberDevices.web_sessions.validator), ('desktop_clients', MemberDevices.desktop_clients.validator), ('mobile_clients', MemberDevices.mobile_clients.validator), ] MemberLinkedApps.team_member_id.validator = bv.String() MemberLinkedApps.linked_api_apps.validator = bv.List(ApiApp_validator) MemberLinkedApps._all_field_names_ = set([ 'team_member_id', 'linked_api_apps', ]) MemberLinkedApps._all_fields_ = [ ('team_member_id', MemberLinkedApps.team_member_id.validator), ('linked_api_apps', MemberLinkedApps.linked_api_apps.validator), ] MemberProfile.team_member_id.validator = team_common.TeamMemberId_validator MemberProfile.external_id.validator = bv.Nullable(bv.String()) MemberProfile.account_id.validator = bv.Nullable(users_common.AccountId_validator) MemberProfile.email.validator = bv.String() MemberProfile.email_verified.validator = bv.Boolean() MemberProfile.secondary_emails.validator = bv.Nullable(bv.List(secondary_emails.SecondaryEmail_validator)) MemberProfile.status.validator = TeamMemberStatus_validator MemberProfile.name.validator = users.Name_validator MemberProfile.membership_type.validator = TeamMembershipType_validator MemberProfile.invited_on.validator = bv.Nullable(common.DropboxTimestamp_validator) MemberProfile.joined_on.validator = bv.Nullable(common.DropboxTimestamp_validator) MemberProfile.suspended_on.validator = bv.Nullable(common.DropboxTimestamp_validator) MemberProfile.persistent_id.validator = bv.Nullable(bv.String()) MemberProfile.is_directory_restricted.validator = bv.Nullable(bv.Boolean()) MemberProfile.profile_photo_url.validator = bv.Nullable(bv.String()) MemberProfile._all_field_names_ = set([ 'team_member_id', 'external_id', 'account_id', 'email', 'email_verified', 'secondary_emails', 'status', 'name', 'membership_type', 'invited_on', 'joined_on', 'suspended_on', 'persistent_id', 'is_directory_restricted', 'profile_photo_url', ]) MemberProfile._all_fields_ = [ ('team_member_id', MemberProfile.team_member_id.validator), ('external_id', MemberProfile.external_id.validator), ('account_id', MemberProfile.account_id.validator), ('email', MemberProfile.email.validator), ('email_verified', MemberProfile.email_verified.validator), ('secondary_emails', MemberProfile.secondary_emails.validator), ('status', MemberProfile.status.validator), ('name', MemberProfile.name.validator), ('membership_type', MemberProfile.membership_type.validator), ('invited_on', MemberProfile.invited_on.validator), ('joined_on', MemberProfile.joined_on.validator), ('suspended_on', MemberProfile.suspended_on.validator), ('persistent_id', MemberProfile.persistent_id.validator), ('is_directory_restricted', MemberProfile.is_directory_restricted.validator), ('profile_photo_url', MemberProfile.profile_photo_url.validator), ] UserSelectorError._user_not_found_validator = bv.Void() UserSelectorError._tagmap = { 'user_not_found': UserSelectorError._user_not_found_validator, } UserSelectorError.user_not_found = UserSelectorError('user_not_found') MemberSelectorError._user_not_in_team_validator = bv.Void() MemberSelectorError._tagmap = { 'user_not_in_team': MemberSelectorError._user_not_in_team_validator, } MemberSelectorError._tagmap.update(UserSelectorError._tagmap) MemberSelectorError.user_not_in_team = MemberSelectorError('user_not_in_team') MembersAddArgBase.force_async.validator = bv.Boolean() MembersAddArgBase._all_field_names_ = set(['force_async']) MembersAddArgBase._all_fields_ = [('force_async', MembersAddArgBase.force_async.validator)] MembersAddArg.new_members.validator = bv.List(MemberAddArg_validator) MembersAddArg._all_field_names_ = MembersAddArgBase._all_field_names_.union(set(['new_members'])) MembersAddArg._all_fields_ = MembersAddArgBase._all_fields_ + [('new_members', MembersAddArg.new_members.validator)] MembersAddJobStatus._complete_validator = bv.List(MemberAddResult_validator) MembersAddJobStatus._failed_validator = bv.String() MembersAddJobStatus._tagmap = { 'complete': MembersAddJobStatus._complete_validator, 'failed': MembersAddJobStatus._failed_validator, } MembersAddJobStatus._tagmap.update(async_.PollResultBase._tagmap) MembersAddJobStatusV2Result._complete_validator = bv.List(MemberAddV2Result_validator) MembersAddJobStatusV2Result._failed_validator = bv.String() MembersAddJobStatusV2Result._other_validator = bv.Void() MembersAddJobStatusV2Result._tagmap = { 'complete': MembersAddJobStatusV2Result._complete_validator, 'failed': MembersAddJobStatusV2Result._failed_validator, 'other': MembersAddJobStatusV2Result._other_validator, } MembersAddJobStatusV2Result._tagmap.update(async_.PollResultBase._tagmap) MembersAddJobStatusV2Result.other = MembersAddJobStatusV2Result('other') MembersAddLaunch._complete_validator = bv.List(MemberAddResult_validator) MembersAddLaunch._tagmap = { 'complete': MembersAddLaunch._complete_validator, } MembersAddLaunch._tagmap.update(async_.LaunchResultBase._tagmap) MembersAddLaunchV2Result._complete_validator = bv.List(MemberAddV2Result_validator) MembersAddLaunchV2Result._other_validator = bv.Void() MembersAddLaunchV2Result._tagmap = { 'complete': MembersAddLaunchV2Result._complete_validator, 'other': MembersAddLaunchV2Result._other_validator, } MembersAddLaunchV2Result._tagmap.update(async_.LaunchResultBase._tagmap) MembersAddLaunchV2Result.other = MembersAddLaunchV2Result('other') MembersAddV2Arg.new_members.validator = bv.List(MemberAddV2Arg_validator) MembersAddV2Arg._all_field_names_ = MembersAddArgBase._all_field_names_.union(set(['new_members'])) MembersAddV2Arg._all_fields_ = MembersAddArgBase._all_fields_ + [('new_members', MembersAddV2Arg.new_members.validator)] MembersDeactivateBaseArg.user.validator = UserSelectorArg_validator MembersDeactivateBaseArg._all_field_names_ = set(['user']) MembersDeactivateBaseArg._all_fields_ = [('user', MembersDeactivateBaseArg.user.validator)] MembersDataTransferArg.transfer_dest_id.validator = UserSelectorArg_validator MembersDataTransferArg.transfer_admin_id.validator = UserSelectorArg_validator MembersDataTransferArg._all_field_names_ = MembersDeactivateBaseArg._all_field_names_.union(set([ 'transfer_dest_id', 'transfer_admin_id', ])) MembersDataTransferArg._all_fields_ = MembersDeactivateBaseArg._all_fields_ + [ ('transfer_dest_id', MembersDataTransferArg.transfer_dest_id.validator), ('transfer_admin_id', MembersDataTransferArg.transfer_admin_id.validator), ] MembersDeactivateArg.wipe_data.validator = bv.Boolean() MembersDeactivateArg._all_field_names_ = MembersDeactivateBaseArg._all_field_names_.union(set(['wipe_data'])) MembersDeactivateArg._all_fields_ = MembersDeactivateBaseArg._all_fields_ + [('wipe_data', MembersDeactivateArg.wipe_data.validator)] MembersDeactivateError._user_not_in_team_validator = bv.Void() MembersDeactivateError._other_validator = bv.Void() MembersDeactivateError._tagmap = { 'user_not_in_team': MembersDeactivateError._user_not_in_team_validator, 'other': MembersDeactivateError._other_validator, } MembersDeactivateError._tagmap.update(UserSelectorError._tagmap) MembersDeactivateError.user_not_in_team = MembersDeactivateError('user_not_in_team') MembersDeactivateError.other = MembersDeactivateError('other') MembersDeleteProfilePhotoArg.user.validator = UserSelectorArg_validator MembersDeleteProfilePhotoArg._all_field_names_ = set(['user']) MembersDeleteProfilePhotoArg._all_fields_ = [('user', MembersDeleteProfilePhotoArg.user.validator)] MembersDeleteProfilePhotoError._set_profile_disallowed_validator = bv.Void() MembersDeleteProfilePhotoError._other_validator = bv.Void() MembersDeleteProfilePhotoError._tagmap = { 'set_profile_disallowed': MembersDeleteProfilePhotoError._set_profile_disallowed_validator, 'other': MembersDeleteProfilePhotoError._other_validator, } MembersDeleteProfilePhotoError._tagmap.update(MemberSelectorError._tagmap) MembersDeleteProfilePhotoError.set_profile_disallowed = MembersDeleteProfilePhotoError('set_profile_disallowed') MembersDeleteProfilePhotoError.other = MembersDeleteProfilePhotoError('other') MembersGetAvailableTeamMemberRolesResult.roles.validator = bv.List(TeamMemberRole_validator) MembersGetAvailableTeamMemberRolesResult._all_field_names_ = set(['roles']) MembersGetAvailableTeamMemberRolesResult._all_fields_ = [('roles', MembersGetAvailableTeamMemberRolesResult.roles.validator)] MembersGetInfoArgs.members.validator = bv.List(UserSelectorArg_validator) MembersGetInfoArgs._all_field_names_ = set(['members']) MembersGetInfoArgs._all_fields_ = [('members', MembersGetInfoArgs.members.validator)] MembersGetInfoError._other_validator = bv.Void() MembersGetInfoError._tagmap = { 'other': MembersGetInfoError._other_validator, } MembersGetInfoError.other = MembersGetInfoError('other') MembersGetInfoItemBase._id_not_found_validator = bv.String() MembersGetInfoItemBase._tagmap = { 'id_not_found': MembersGetInfoItemBase._id_not_found_validator, } MembersGetInfoItem._member_info_validator = TeamMemberInfo_validator MembersGetInfoItem._tagmap = { 'member_info': MembersGetInfoItem._member_info_validator, } MembersGetInfoItem._tagmap.update(MembersGetInfoItemBase._tagmap) MembersGetInfoItemV2._member_info_validator = TeamMemberInfoV2_validator MembersGetInfoItemV2._other_validator = bv.Void() MembersGetInfoItemV2._tagmap = { 'member_info': MembersGetInfoItemV2._member_info_validator, 'other': MembersGetInfoItemV2._other_validator, } MembersGetInfoItemV2._tagmap.update(MembersGetInfoItemBase._tagmap) MembersGetInfoItemV2.other = MembersGetInfoItemV2('other') MembersGetInfoV2Arg.members.validator = bv.List(UserSelectorArg_validator) MembersGetInfoV2Arg._all_field_names_ = set(['members']) MembersGetInfoV2Arg._all_fields_ = [('members', MembersGetInfoV2Arg.members.validator)] MembersGetInfoV2Result.members_info.validator = bv.List(MembersGetInfoItemV2_validator) MembersGetInfoV2Result._all_field_names_ = set(['members_info']) MembersGetInfoV2Result._all_fields_ = [('members_info', MembersGetInfoV2Result.members_info.validator)] MembersInfo.team_member_ids.validator = bv.List(team_common.TeamMemberId_validator) MembersInfo.permanently_deleted_users.validator = bv.UInt64() MembersInfo._all_field_names_ = set([ 'team_member_ids', 'permanently_deleted_users', ]) MembersInfo._all_fields_ = [ ('team_member_ids', MembersInfo.team_member_ids.validator), ('permanently_deleted_users', MembersInfo.permanently_deleted_users.validator), ] MembersListArg.limit.validator = bv.UInt32(min_value=1, max_value=1000) MembersListArg.include_removed.validator = bv.Boolean() MembersListArg._all_field_names_ = set([ 'limit', 'include_removed', ]) MembersListArg._all_fields_ = [ ('limit', MembersListArg.limit.validator), ('include_removed', MembersListArg.include_removed.validator), ] MembersListContinueArg.cursor.validator = bv.String() MembersListContinueArg._all_field_names_ = set(['cursor']) MembersListContinueArg._all_fields_ = [('cursor', MembersListContinueArg.cursor.validator)] MembersListContinueError._invalid_cursor_validator = bv.Void() MembersListContinueError._other_validator = bv.Void() MembersListContinueError._tagmap = { 'invalid_cursor': MembersListContinueError._invalid_cursor_validator, 'other': MembersListContinueError._other_validator, } MembersListContinueError.invalid_cursor = MembersListContinueError('invalid_cursor') MembersListContinueError.other = MembersListContinueError('other') MembersListError._other_validator = bv.Void() MembersListError._tagmap = { 'other': MembersListError._other_validator, } MembersListError.other = MembersListError('other') MembersListResult.members.validator = bv.List(TeamMemberInfo_validator) MembersListResult.cursor.validator = bv.String() MembersListResult.has_more.validator = bv.Boolean() MembersListResult._all_field_names_ = set([ 'members', 'cursor', 'has_more', ]) MembersListResult._all_fields_ = [ ('members', MembersListResult.members.validator), ('cursor', MembersListResult.cursor.validator), ('has_more', MembersListResult.has_more.validator), ] MembersListV2Result.members.validator = bv.List(TeamMemberInfoV2_validator) MembersListV2Result.cursor.validator = bv.String() MembersListV2Result.has_more.validator = bv.Boolean() MembersListV2Result._all_field_names_ = set([ 'members', 'cursor', 'has_more', ]) MembersListV2Result._all_fields_ = [ ('members', MembersListV2Result.members.validator), ('cursor', MembersListV2Result.cursor.validator), ('has_more', MembersListV2Result.has_more.validator), ] MembersRecoverArg.user.validator = UserSelectorArg_validator MembersRecoverArg._all_field_names_ = set(['user']) MembersRecoverArg._all_fields_ = [('user', MembersRecoverArg.user.validator)] MembersRecoverError._user_unrecoverable_validator = bv.Void() MembersRecoverError._user_not_in_team_validator = bv.Void() MembersRecoverError._team_license_limit_validator = bv.Void() MembersRecoverError._other_validator = bv.Void() MembersRecoverError._tagmap = { 'user_unrecoverable': MembersRecoverError._user_unrecoverable_validator, 'user_not_in_team': MembersRecoverError._user_not_in_team_validator, 'team_license_limit': MembersRecoverError._team_license_limit_validator, 'other': MembersRecoverError._other_validator, } MembersRecoverError._tagmap.update(UserSelectorError._tagmap) MembersRecoverError.user_unrecoverable = MembersRecoverError('user_unrecoverable') MembersRecoverError.user_not_in_team = MembersRecoverError('user_not_in_team') MembersRecoverError.team_license_limit = MembersRecoverError('team_license_limit') MembersRecoverError.other = MembersRecoverError('other') MembersRemoveArg.transfer_dest_id.validator = bv.Nullable(UserSelectorArg_validator) MembersRemoveArg.transfer_admin_id.validator = bv.Nullable(UserSelectorArg_validator) MembersRemoveArg.keep_account.validator = bv.Boolean() MembersRemoveArg.retain_team_shares.validator = bv.Boolean() MembersRemoveArg._all_field_names_ = MembersDeactivateArg._all_field_names_.union(set([ 'transfer_dest_id', 'transfer_admin_id', 'keep_account', 'retain_team_shares', ])) MembersRemoveArg._all_fields_ = MembersDeactivateArg._all_fields_ + [ ('transfer_dest_id', MembersRemoveArg.transfer_dest_id.validator), ('transfer_admin_id', MembersRemoveArg.transfer_admin_id.validator), ('keep_account', MembersRemoveArg.keep_account.validator), ('retain_team_shares', MembersRemoveArg.retain_team_shares.validator), ] MembersTransferFilesError._removed_and_transfer_dest_should_differ_validator = bv.Void() MembersTransferFilesError._removed_and_transfer_admin_should_differ_validator = bv.Void() MembersTransferFilesError._transfer_dest_user_not_found_validator = bv.Void() MembersTransferFilesError._transfer_dest_user_not_in_team_validator = bv.Void() MembersTransferFilesError._transfer_admin_user_not_in_team_validator = bv.Void() MembersTransferFilesError._transfer_admin_user_not_found_validator = bv.Void() MembersTransferFilesError._unspecified_transfer_admin_id_validator = bv.Void() MembersTransferFilesError._transfer_admin_is_not_admin_validator = bv.Void() MembersTransferFilesError._recipient_not_verified_validator = bv.Void() MembersTransferFilesError._tagmap = { 'removed_and_transfer_dest_should_differ': MembersTransferFilesError._removed_and_transfer_dest_should_differ_validator, 'removed_and_transfer_admin_should_differ': MembersTransferFilesError._removed_and_transfer_admin_should_differ_validator, 'transfer_dest_user_not_found': MembersTransferFilesError._transfer_dest_user_not_found_validator, 'transfer_dest_user_not_in_team': MembersTransferFilesError._transfer_dest_user_not_in_team_validator, 'transfer_admin_user_not_in_team': MembersTransferFilesError._transfer_admin_user_not_in_team_validator, 'transfer_admin_user_not_found': MembersTransferFilesError._transfer_admin_user_not_found_validator, 'unspecified_transfer_admin_id': MembersTransferFilesError._unspecified_transfer_admin_id_validator, 'transfer_admin_is_not_admin': MembersTransferFilesError._transfer_admin_is_not_admin_validator, 'recipient_not_verified': MembersTransferFilesError._recipient_not_verified_validator, } MembersTransferFilesError._tagmap.update(MembersDeactivateError._tagmap) MembersTransferFilesError.removed_and_transfer_dest_should_differ = MembersTransferFilesError('removed_and_transfer_dest_should_differ') MembersTransferFilesError.removed_and_transfer_admin_should_differ = MembersTransferFilesError('removed_and_transfer_admin_should_differ') MembersTransferFilesError.transfer_dest_user_not_found = MembersTransferFilesError('transfer_dest_user_not_found') MembersTransferFilesError.transfer_dest_user_not_in_team = MembersTransferFilesError('transfer_dest_user_not_in_team') MembersTransferFilesError.transfer_admin_user_not_in_team = MembersTransferFilesError('transfer_admin_user_not_in_team') MembersTransferFilesError.transfer_admin_user_not_found = MembersTransferFilesError('transfer_admin_user_not_found') MembersTransferFilesError.unspecified_transfer_admin_id = MembersTransferFilesError('unspecified_transfer_admin_id') MembersTransferFilesError.transfer_admin_is_not_admin = MembersTransferFilesError('transfer_admin_is_not_admin') MembersTransferFilesError.recipient_not_verified = MembersTransferFilesError('recipient_not_verified') MembersRemoveError._remove_last_admin_validator = bv.Void() MembersRemoveError._cannot_keep_account_and_transfer_validator = bv.Void() MembersRemoveError._cannot_keep_account_and_delete_data_validator = bv.Void() MembersRemoveError._email_address_too_long_to_be_disabled_validator = bv.Void() MembersRemoveError._cannot_keep_invited_user_account_validator = bv.Void() MembersRemoveError._cannot_retain_shares_when_data_wiped_validator = bv.Void() MembersRemoveError._cannot_retain_shares_when_no_account_kept_validator = bv.Void() MembersRemoveError._cannot_retain_shares_when_team_external_sharing_off_validator = bv.Void() MembersRemoveError._cannot_keep_account_validator = bv.Void() MembersRemoveError._cannot_keep_account_under_legal_hold_validator = bv.Void() MembersRemoveError._cannot_keep_account_required_to_sign_tos_validator = bv.Void() MembersRemoveError._tagmap = { 'remove_last_admin': MembersRemoveError._remove_last_admin_validator, 'cannot_keep_account_and_transfer': MembersRemoveError._cannot_keep_account_and_transfer_validator, 'cannot_keep_account_and_delete_data': MembersRemoveError._cannot_keep_account_and_delete_data_validator, 'email_address_too_long_to_be_disabled': MembersRemoveError._email_address_too_long_to_be_disabled_validator, 'cannot_keep_invited_user_account': MembersRemoveError._cannot_keep_invited_user_account_validator, 'cannot_retain_shares_when_data_wiped': MembersRemoveError._cannot_retain_shares_when_data_wiped_validator, 'cannot_retain_shares_when_no_account_kept': MembersRemoveError._cannot_retain_shares_when_no_account_kept_validator, 'cannot_retain_shares_when_team_external_sharing_off': MembersRemoveError._cannot_retain_shares_when_team_external_sharing_off_validator, 'cannot_keep_account': MembersRemoveError._cannot_keep_account_validator, 'cannot_keep_account_under_legal_hold': MembersRemoveError._cannot_keep_account_under_legal_hold_validator, 'cannot_keep_account_required_to_sign_tos': MembersRemoveError._cannot_keep_account_required_to_sign_tos_validator, } MembersRemoveError._tagmap.update(MembersTransferFilesError._tagmap) MembersRemoveError.remove_last_admin = MembersRemoveError('remove_last_admin') MembersRemoveError.cannot_keep_account_and_transfer = MembersRemoveError('cannot_keep_account_and_transfer') MembersRemoveError.cannot_keep_account_and_delete_data = MembersRemoveError('cannot_keep_account_and_delete_data') MembersRemoveError.email_address_too_long_to_be_disabled = MembersRemoveError('email_address_too_long_to_be_disabled') MembersRemoveError.cannot_keep_invited_user_account = MembersRemoveError('cannot_keep_invited_user_account') MembersRemoveError.cannot_retain_shares_when_data_wiped = MembersRemoveError('cannot_retain_shares_when_data_wiped') MembersRemoveError.cannot_retain_shares_when_no_account_kept = MembersRemoveError('cannot_retain_shares_when_no_account_kept') MembersRemoveError.cannot_retain_shares_when_team_external_sharing_off = MembersRemoveError('cannot_retain_shares_when_team_external_sharing_off') MembersRemoveError.cannot_keep_account = MembersRemoveError('cannot_keep_account') MembersRemoveError.cannot_keep_account_under_legal_hold = MembersRemoveError('cannot_keep_account_under_legal_hold') MembersRemoveError.cannot_keep_account_required_to_sign_tos = MembersRemoveError('cannot_keep_account_required_to_sign_tos') MembersSendWelcomeError._other_validator = bv.Void() MembersSendWelcomeError._tagmap = { 'other': MembersSendWelcomeError._other_validator, } MembersSendWelcomeError._tagmap.update(MemberSelectorError._tagmap) MembersSendWelcomeError.other = MembersSendWelcomeError('other') MembersSetPermissions2Arg.user.validator = UserSelectorArg_validator MembersSetPermissions2Arg.new_roles.validator = bv.Nullable(bv.List(TeamMemberRoleId_validator, max_items=1)) MembersSetPermissions2Arg._all_field_names_ = set([ 'user', 'new_roles', ]) MembersSetPermissions2Arg._all_fields_ = [ ('user', MembersSetPermissions2Arg.user.validator), ('new_roles', MembersSetPermissions2Arg.new_roles.validator), ] MembersSetPermissions2Error._last_admin_validator = bv.Void() MembersSetPermissions2Error._user_not_in_team_validator = bv.Void() MembersSetPermissions2Error._cannot_set_permissions_validator = bv.Void() MembersSetPermissions2Error._role_not_found_validator = bv.Void() MembersSetPermissions2Error._other_validator = bv.Void() MembersSetPermissions2Error._tagmap = { 'last_admin': MembersSetPermissions2Error._last_admin_validator, 'user_not_in_team': MembersSetPermissions2Error._user_not_in_team_validator, 'cannot_set_permissions': MembersSetPermissions2Error._cannot_set_permissions_validator, 'role_not_found': MembersSetPermissions2Error._role_not_found_validator, 'other': MembersSetPermissions2Error._other_validator, } MembersSetPermissions2Error._tagmap.update(UserSelectorError._tagmap) MembersSetPermissions2Error.last_admin = MembersSetPermissions2Error('last_admin') MembersSetPermissions2Error.user_not_in_team = MembersSetPermissions2Error('user_not_in_team') MembersSetPermissions2Error.cannot_set_permissions = MembersSetPermissions2Error('cannot_set_permissions') MembersSetPermissions2Error.role_not_found = MembersSetPermissions2Error('role_not_found') MembersSetPermissions2Error.other = MembersSetPermissions2Error('other') MembersSetPermissions2Result.team_member_id.validator = team_common.TeamMemberId_validator MembersSetPermissions2Result.roles.validator = bv.Nullable(bv.List(TeamMemberRole_validator)) MembersSetPermissions2Result._all_field_names_ = set([ 'team_member_id', 'roles', ]) MembersSetPermissions2Result._all_fields_ = [ ('team_member_id', MembersSetPermissions2Result.team_member_id.validator), ('roles', MembersSetPermissions2Result.roles.validator), ] MembersSetPermissionsArg.user.validator = UserSelectorArg_validator MembersSetPermissionsArg.new_role.validator = AdminTier_validator MembersSetPermissionsArg._all_field_names_ = set([ 'user', 'new_role', ]) MembersSetPermissionsArg._all_fields_ = [ ('user', MembersSetPermissionsArg.user.validator), ('new_role', MembersSetPermissionsArg.new_role.validator), ] MembersSetPermissionsError._last_admin_validator = bv.Void() MembersSetPermissionsError._user_not_in_team_validator = bv.Void() MembersSetPermissionsError._cannot_set_permissions_validator = bv.Void() MembersSetPermissionsError._team_license_limit_validator = bv.Void() MembersSetPermissionsError._other_validator = bv.Void() MembersSetPermissionsError._tagmap = { 'last_admin': MembersSetPermissionsError._last_admin_validator, 'user_not_in_team': MembersSetPermissionsError._user_not_in_team_validator, 'cannot_set_permissions': MembersSetPermissionsError._cannot_set_permissions_validator, 'team_license_limit': MembersSetPermissionsError._team_license_limit_validator, 'other': MembersSetPermissionsError._other_validator, } MembersSetPermissionsError._tagmap.update(UserSelectorError._tagmap) MembersSetPermissionsError.last_admin = MembersSetPermissionsError('last_admin') MembersSetPermissionsError.user_not_in_team = MembersSetPermissionsError('user_not_in_team') MembersSetPermissionsError.cannot_set_permissions = MembersSetPermissionsError('cannot_set_permissions') MembersSetPermissionsError.team_license_limit = MembersSetPermissionsError('team_license_limit') MembersSetPermissionsError.other = MembersSetPermissionsError('other') MembersSetPermissionsResult.team_member_id.validator = team_common.TeamMemberId_validator MembersSetPermissionsResult.role.validator = AdminTier_validator MembersSetPermissionsResult._all_field_names_ = set([ 'team_member_id', 'role', ]) MembersSetPermissionsResult._all_fields_ = [ ('team_member_id', MembersSetPermissionsResult.team_member_id.validator), ('role', MembersSetPermissionsResult.role.validator), ] MembersSetProfileArg.user.validator = UserSelectorArg_validator MembersSetProfileArg.new_email.validator = bv.Nullable(common.EmailAddress_validator) MembersSetProfileArg.new_external_id.validator = bv.Nullable(team_common.MemberExternalId_validator) MembersSetProfileArg.new_given_name.validator = bv.Nullable(common.OptionalNamePart_validator) MembersSetProfileArg.new_surname.validator = bv.Nullable(common.OptionalNamePart_validator) MembersSetProfileArg.new_persistent_id.validator = bv.Nullable(bv.String()) MembersSetProfileArg.new_is_directory_restricted.validator = bv.Nullable(bv.Boolean()) MembersSetProfileArg._all_field_names_ = set([ 'user', 'new_email', 'new_external_id', 'new_given_name', 'new_surname', 'new_persistent_id', 'new_is_directory_restricted', ]) MembersSetProfileArg._all_fields_ = [ ('user', MembersSetProfileArg.user.validator), ('new_email', MembersSetProfileArg.new_email.validator), ('new_external_id', MembersSetProfileArg.new_external_id.validator), ('new_given_name', MembersSetProfileArg.new_given_name.validator), ('new_surname', MembersSetProfileArg.new_surname.validator), ('new_persistent_id', MembersSetProfileArg.new_persistent_id.validator), ('new_is_directory_restricted', MembersSetProfileArg.new_is_directory_restricted.validator), ] MembersSetProfileError._external_id_and_new_external_id_unsafe_validator = bv.Void() MembersSetProfileError._no_new_data_specified_validator = bv.Void() MembersSetProfileError._email_reserved_for_other_user_validator = bv.Void() MembersSetProfileError._external_id_used_by_other_user_validator = bv.Void() MembersSetProfileError._set_profile_disallowed_validator = bv.Void() MembersSetProfileError._param_cannot_be_empty_validator = bv.Void() MembersSetProfileError._persistent_id_disabled_validator = bv.Void() MembersSetProfileError._persistent_id_used_by_other_user_validator = bv.Void() MembersSetProfileError._directory_restricted_off_validator = bv.Void() MembersSetProfileError._other_validator = bv.Void() MembersSetProfileError._tagmap = { 'external_id_and_new_external_id_unsafe': MembersSetProfileError._external_id_and_new_external_id_unsafe_validator, 'no_new_data_specified': MembersSetProfileError._no_new_data_specified_validator, 'email_reserved_for_other_user': MembersSetProfileError._email_reserved_for_other_user_validator, 'external_id_used_by_other_user': MembersSetProfileError._external_id_used_by_other_user_validator, 'set_profile_disallowed': MembersSetProfileError._set_profile_disallowed_validator, 'param_cannot_be_empty': MembersSetProfileError._param_cannot_be_empty_validator, 'persistent_id_disabled': MembersSetProfileError._persistent_id_disabled_validator, 'persistent_id_used_by_other_user': MembersSetProfileError._persistent_id_used_by_other_user_validator, 'directory_restricted_off': MembersSetProfileError._directory_restricted_off_validator, 'other': MembersSetProfileError._other_validator, } MembersSetProfileError._tagmap.update(MemberSelectorError._tagmap) MembersSetProfileError.external_id_and_new_external_id_unsafe = MembersSetProfileError('external_id_and_new_external_id_unsafe') MembersSetProfileError.no_new_data_specified = MembersSetProfileError('no_new_data_specified') MembersSetProfileError.email_reserved_for_other_user = MembersSetProfileError('email_reserved_for_other_user') MembersSetProfileError.external_id_used_by_other_user = MembersSetProfileError('external_id_used_by_other_user') MembersSetProfileError.set_profile_disallowed = MembersSetProfileError('set_profile_disallowed') MembersSetProfileError.param_cannot_be_empty = MembersSetProfileError('param_cannot_be_empty') MembersSetProfileError.persistent_id_disabled = MembersSetProfileError('persistent_id_disabled') MembersSetProfileError.persistent_id_used_by_other_user = MembersSetProfileError('persistent_id_used_by_other_user') MembersSetProfileError.directory_restricted_off = MembersSetProfileError('directory_restricted_off') MembersSetProfileError.other = MembersSetProfileError('other') MembersSetProfilePhotoArg.user.validator = UserSelectorArg_validator MembersSetProfilePhotoArg.photo.validator = account.PhotoSourceArg_validator MembersSetProfilePhotoArg._all_field_names_ = set([ 'user', 'photo', ]) MembersSetProfilePhotoArg._all_fields_ = [ ('user', MembersSetProfilePhotoArg.user.validator), ('photo', MembersSetProfilePhotoArg.photo.validator), ] MembersSetProfilePhotoError._set_profile_disallowed_validator = bv.Void() MembersSetProfilePhotoError._photo_error_validator = account.SetProfilePhotoError_validator MembersSetProfilePhotoError._other_validator = bv.Void() MembersSetProfilePhotoError._tagmap = { 'set_profile_disallowed': MembersSetProfilePhotoError._set_profile_disallowed_validator, 'photo_error': MembersSetProfilePhotoError._photo_error_validator, 'other': MembersSetProfilePhotoError._other_validator, } MembersSetProfilePhotoError._tagmap.update(MemberSelectorError._tagmap) MembersSetProfilePhotoError.set_profile_disallowed = MembersSetProfilePhotoError('set_profile_disallowed') MembersSetProfilePhotoError.other = MembersSetProfilePhotoError('other') MembersSuspendError._suspend_inactive_user_validator = bv.Void() MembersSuspendError._suspend_last_admin_validator = bv.Void() MembersSuspendError._team_license_limit_validator = bv.Void() MembersSuspendError._tagmap = { 'suspend_inactive_user': MembersSuspendError._suspend_inactive_user_validator, 'suspend_last_admin': MembersSuspendError._suspend_last_admin_validator, 'team_license_limit': MembersSuspendError._team_license_limit_validator, } MembersSuspendError._tagmap.update(MembersDeactivateError._tagmap) MembersSuspendError.suspend_inactive_user = MembersSuspendError('suspend_inactive_user') MembersSuspendError.suspend_last_admin = MembersSuspendError('suspend_last_admin') MembersSuspendError.team_license_limit = MembersSuspendError('team_license_limit') MembersTransferFormerMembersFilesError._user_data_is_being_transferred_validator = bv.Void() MembersTransferFormerMembersFilesError._user_not_removed_validator = bv.Void() MembersTransferFormerMembersFilesError._user_data_cannot_be_transferred_validator = bv.Void() MembersTransferFormerMembersFilesError._user_data_already_transferred_validator = bv.Void() MembersTransferFormerMembersFilesError._tagmap = { 'user_data_is_being_transferred': MembersTransferFormerMembersFilesError._user_data_is_being_transferred_validator, 'user_not_removed': MembersTransferFormerMembersFilesError._user_not_removed_validator, 'user_data_cannot_be_transferred': MembersTransferFormerMembersFilesError._user_data_cannot_be_transferred_validator, 'user_data_already_transferred': MembersTransferFormerMembersFilesError._user_data_already_transferred_validator, } MembersTransferFormerMembersFilesError._tagmap.update(MembersTransferFilesError._tagmap) MembersTransferFormerMembersFilesError.user_data_is_being_transferred = MembersTransferFormerMembersFilesError('user_data_is_being_transferred') MembersTransferFormerMembersFilesError.user_not_removed = MembersTransferFormerMembersFilesError('user_not_removed') MembersTransferFormerMembersFilesError.user_data_cannot_be_transferred = MembersTransferFormerMembersFilesError('user_data_cannot_be_transferred') MembersTransferFormerMembersFilesError.user_data_already_transferred = MembersTransferFormerMembersFilesError('user_data_already_transferred') MembersUnsuspendArg.user.validator = UserSelectorArg_validator MembersUnsuspendArg._all_field_names_ = set(['user']) MembersUnsuspendArg._all_fields_ = [('user', MembersUnsuspendArg.user.validator)] MembersUnsuspendError._unsuspend_non_suspended_member_validator = bv.Void() MembersUnsuspendError._team_license_limit_validator = bv.Void() MembersUnsuspendError._tagmap = { 'unsuspend_non_suspended_member': MembersUnsuspendError._unsuspend_non_suspended_member_validator, 'team_license_limit': MembersUnsuspendError._team_license_limit_validator, } MembersUnsuspendError._tagmap.update(MembersDeactivateError._tagmap) MembersUnsuspendError.unsuspend_non_suspended_member = MembersUnsuspendError('unsuspend_non_suspended_member') MembersUnsuspendError.team_license_limit = MembersUnsuspendError('team_license_limit') MobileClientPlatform._iphone_validator = bv.Void() MobileClientPlatform._ipad_validator = bv.Void() MobileClientPlatform._android_validator = bv.Void() MobileClientPlatform._windows_phone_validator = bv.Void() MobileClientPlatform._blackberry_validator = bv.Void() MobileClientPlatform._other_validator = bv.Void() MobileClientPlatform._tagmap = { 'iphone': MobileClientPlatform._iphone_validator, 'ipad': MobileClientPlatform._ipad_validator, 'android': MobileClientPlatform._android_validator, 'windows_phone': MobileClientPlatform._windows_phone_validator, 'blackberry': MobileClientPlatform._blackberry_validator, 'other': MobileClientPlatform._other_validator, } MobileClientPlatform.iphone = MobileClientPlatform('iphone') MobileClientPlatform.ipad = MobileClientPlatform('ipad') MobileClientPlatform.android = MobileClientPlatform('android') MobileClientPlatform.windows_phone = MobileClientPlatform('windows_phone') MobileClientPlatform.blackberry = MobileClientPlatform('blackberry') MobileClientPlatform.other = MobileClientPlatform('other') MobileClientSession.device_name.validator = bv.String() MobileClientSession.client_type.validator = MobileClientPlatform_validator MobileClientSession.client_version.validator = bv.Nullable(bv.String()) MobileClientSession.os_version.validator = bv.Nullable(bv.String()) MobileClientSession.last_carrier.validator = bv.Nullable(bv.String()) MobileClientSession._all_field_names_ = DeviceSession._all_field_names_.union(set([ 'device_name', 'client_type', 'client_version', 'os_version', 'last_carrier', ])) MobileClientSession._all_fields_ = DeviceSession._all_fields_ + [ ('device_name', MobileClientSession.device_name.validator), ('client_type', MobileClientSession.client_type.validator), ('client_version', MobileClientSession.client_version.validator), ('os_version', MobileClientSession.os_version.validator), ('last_carrier', MobileClientSession.last_carrier.validator), ] NamespaceMetadata.name.validator = bv.String() NamespaceMetadata.namespace_id.validator = common.SharedFolderId_validator NamespaceMetadata.namespace_type.validator = NamespaceType_validator NamespaceMetadata.team_member_id.validator = bv.Nullable(team_common.TeamMemberId_validator) NamespaceMetadata._all_field_names_ = set([ 'name', 'namespace_id', 'namespace_type', 'team_member_id', ]) NamespaceMetadata._all_fields_ = [ ('name', NamespaceMetadata.name.validator), ('namespace_id', NamespaceMetadata.namespace_id.validator), ('namespace_type', NamespaceMetadata.namespace_type.validator), ('team_member_id', NamespaceMetadata.team_member_id.validator), ] NamespaceType._app_folder_validator = bv.Void() NamespaceType._shared_folder_validator = bv.Void() NamespaceType._team_folder_validator = bv.Void() NamespaceType._team_member_folder_validator = bv.Void() NamespaceType._other_validator = bv.Void() NamespaceType._tagmap = { 'app_folder': NamespaceType._app_folder_validator, 'shared_folder': NamespaceType._shared_folder_validator, 'team_folder': NamespaceType._team_folder_validator, 'team_member_folder': NamespaceType._team_member_folder_validator, 'other': NamespaceType._other_validator, } NamespaceType.app_folder = NamespaceType('app_folder') NamespaceType.shared_folder = NamespaceType('shared_folder') NamespaceType.team_folder = NamespaceType('team_folder') NamespaceType.team_member_folder = NamespaceType('team_member_folder') NamespaceType.other = NamespaceType('other') RemoveCustomQuotaResult._success_validator = UserSelectorArg_validator RemoveCustomQuotaResult._invalid_user_validator = UserSelectorArg_validator RemoveCustomQuotaResult._other_validator = bv.Void() RemoveCustomQuotaResult._tagmap = { 'success': RemoveCustomQuotaResult._success_validator, 'invalid_user': RemoveCustomQuotaResult._invalid_user_validator, 'other': RemoveCustomQuotaResult._other_validator, } RemoveCustomQuotaResult.other = RemoveCustomQuotaResult('other') RemovedStatus.is_recoverable.validator = bv.Boolean() RemovedStatus.is_disconnected.validator = bv.Boolean() RemovedStatus._all_field_names_ = set([ 'is_recoverable', 'is_disconnected', ]) RemovedStatus._all_fields_ = [ ('is_recoverable', RemovedStatus.is_recoverable.validator), ('is_disconnected', RemovedStatus.is_disconnected.validator), ] ResendSecondaryEmailResult._success_validator = common.EmailAddress_validator ResendSecondaryEmailResult._not_pending_validator = common.EmailAddress_validator ResendSecondaryEmailResult._rate_limited_validator = common.EmailAddress_validator ResendSecondaryEmailResult._other_validator = bv.Void() ResendSecondaryEmailResult._tagmap = { 'success': ResendSecondaryEmailResult._success_validator, 'not_pending': ResendSecondaryEmailResult._not_pending_validator, 'rate_limited': ResendSecondaryEmailResult._rate_limited_validator, 'other': ResendSecondaryEmailResult._other_validator, } ResendSecondaryEmailResult.other = ResendSecondaryEmailResult('other') ResendVerificationEmailArg.emails_to_resend.validator = bv.List(UserSecondaryEmailsArg_validator) ResendVerificationEmailArg._all_field_names_ = set(['emails_to_resend']) ResendVerificationEmailArg._all_fields_ = [('emails_to_resend', ResendVerificationEmailArg.emails_to_resend.validator)] ResendVerificationEmailResult.results.validator = bv.List(UserResendResult_validator) ResendVerificationEmailResult._all_field_names_ = set(['results']) ResendVerificationEmailResult._all_fields_ = [('results', ResendVerificationEmailResult.results.validator)] RevokeDesktopClientArg.delete_on_unlink.validator = bv.Boolean() RevokeDesktopClientArg._all_field_names_ = DeviceSessionArg._all_field_names_.union(set(['delete_on_unlink'])) RevokeDesktopClientArg._all_fields_ = DeviceSessionArg._all_fields_ + [('delete_on_unlink', RevokeDesktopClientArg.delete_on_unlink.validator)] RevokeDeviceSessionArg._web_session_validator = DeviceSessionArg_validator RevokeDeviceSessionArg._desktop_client_validator = RevokeDesktopClientArg_validator RevokeDeviceSessionArg._mobile_client_validator = DeviceSessionArg_validator RevokeDeviceSessionArg._tagmap = { 'web_session': RevokeDeviceSessionArg._web_session_validator, 'desktop_client': RevokeDeviceSessionArg._desktop_client_validator, 'mobile_client': RevokeDeviceSessionArg._mobile_client_validator, } RevokeDeviceSessionBatchArg.revoke_devices.validator = bv.List(RevokeDeviceSessionArg_validator) RevokeDeviceSessionBatchArg._all_field_names_ = set(['revoke_devices']) RevokeDeviceSessionBatchArg._all_fields_ = [('revoke_devices', RevokeDeviceSessionBatchArg.revoke_devices.validator)] RevokeDeviceSessionBatchError._other_validator = bv.Void() RevokeDeviceSessionBatchError._tagmap = { 'other': RevokeDeviceSessionBatchError._other_validator, } RevokeDeviceSessionBatchError.other = RevokeDeviceSessionBatchError('other') RevokeDeviceSessionBatchResult.revoke_devices_status.validator = bv.List(RevokeDeviceSessionStatus_validator) RevokeDeviceSessionBatchResult._all_field_names_ = set(['revoke_devices_status']) RevokeDeviceSessionBatchResult._all_fields_ = [('revoke_devices_status', RevokeDeviceSessionBatchResult.revoke_devices_status.validator)] RevokeDeviceSessionError._device_session_not_found_validator = bv.Void() RevokeDeviceSessionError._member_not_found_validator = bv.Void() RevokeDeviceSessionError._other_validator = bv.Void() RevokeDeviceSessionError._tagmap = { 'device_session_not_found': RevokeDeviceSessionError._device_session_not_found_validator, 'member_not_found': RevokeDeviceSessionError._member_not_found_validator, 'other': RevokeDeviceSessionError._other_validator, } RevokeDeviceSessionError.device_session_not_found = RevokeDeviceSessionError('device_session_not_found') RevokeDeviceSessionError.member_not_found = RevokeDeviceSessionError('member_not_found') RevokeDeviceSessionError.other = RevokeDeviceSessionError('other') RevokeDeviceSessionStatus.success.validator = bv.Boolean() RevokeDeviceSessionStatus.error_type.validator = bv.Nullable(RevokeDeviceSessionError_validator) RevokeDeviceSessionStatus._all_field_names_ = set([ 'success', 'error_type', ]) RevokeDeviceSessionStatus._all_fields_ = [ ('success', RevokeDeviceSessionStatus.success.validator), ('error_type', RevokeDeviceSessionStatus.error_type.validator), ] RevokeLinkedApiAppArg.app_id.validator = bv.String() RevokeLinkedApiAppArg.team_member_id.validator = bv.String() RevokeLinkedApiAppArg.keep_app_folder.validator = bv.Boolean() RevokeLinkedApiAppArg._all_field_names_ = set([ 'app_id', 'team_member_id', 'keep_app_folder', ]) RevokeLinkedApiAppArg._all_fields_ = [ ('app_id', RevokeLinkedApiAppArg.app_id.validator), ('team_member_id', RevokeLinkedApiAppArg.team_member_id.validator), ('keep_app_folder', RevokeLinkedApiAppArg.keep_app_folder.validator), ] RevokeLinkedApiAppBatchArg.revoke_linked_app.validator = bv.List(RevokeLinkedApiAppArg_validator) RevokeLinkedApiAppBatchArg._all_field_names_ = set(['revoke_linked_app']) RevokeLinkedApiAppBatchArg._all_fields_ = [('revoke_linked_app', RevokeLinkedApiAppBatchArg.revoke_linked_app.validator)] RevokeLinkedAppBatchError._other_validator = bv.Void() RevokeLinkedAppBatchError._tagmap = { 'other': RevokeLinkedAppBatchError._other_validator, } RevokeLinkedAppBatchError.other = RevokeLinkedAppBatchError('other') RevokeLinkedAppBatchResult.revoke_linked_app_status.validator = bv.List(RevokeLinkedAppStatus_validator) RevokeLinkedAppBatchResult._all_field_names_ = set(['revoke_linked_app_status']) RevokeLinkedAppBatchResult._all_fields_ = [('revoke_linked_app_status', RevokeLinkedAppBatchResult.revoke_linked_app_status.validator)] RevokeLinkedAppError._app_not_found_validator = bv.Void() RevokeLinkedAppError._member_not_found_validator = bv.Void() RevokeLinkedAppError._app_folder_removal_not_supported_validator = bv.Void() RevokeLinkedAppError._other_validator = bv.Void() RevokeLinkedAppError._tagmap = { 'app_not_found': RevokeLinkedAppError._app_not_found_validator, 'member_not_found': RevokeLinkedAppError._member_not_found_validator, 'app_folder_removal_not_supported': RevokeLinkedAppError._app_folder_removal_not_supported_validator, 'other': RevokeLinkedAppError._other_validator, } RevokeLinkedAppError.app_not_found = RevokeLinkedAppError('app_not_found') RevokeLinkedAppError.member_not_found = RevokeLinkedAppError('member_not_found') RevokeLinkedAppError.app_folder_removal_not_supported = RevokeLinkedAppError('app_folder_removal_not_supported') RevokeLinkedAppError.other = RevokeLinkedAppError('other') RevokeLinkedAppStatus.success.validator = bv.Boolean() RevokeLinkedAppStatus.error_type.validator = bv.Nullable(RevokeLinkedAppError_validator) RevokeLinkedAppStatus._all_field_names_ = set([ 'success', 'error_type', ]) RevokeLinkedAppStatus._all_fields_ = [ ('success', RevokeLinkedAppStatus.success.validator), ('error_type', RevokeLinkedAppStatus.error_type.validator), ] SetCustomQuotaArg.users_and_quotas.validator = bv.List(UserCustomQuotaArg_validator) SetCustomQuotaArg._all_field_names_ = set(['users_and_quotas']) SetCustomQuotaArg._all_fields_ = [('users_and_quotas', SetCustomQuotaArg.users_and_quotas.validator)] SetCustomQuotaError._some_users_are_excluded_validator = bv.Void() SetCustomQuotaError._tagmap = { 'some_users_are_excluded': SetCustomQuotaError._some_users_are_excluded_validator, } SetCustomQuotaError._tagmap.update(CustomQuotaError._tagmap) SetCustomQuotaError.some_users_are_excluded = SetCustomQuotaError('some_users_are_excluded') SharingAllowlistAddArgs.domains.validator = bv.Nullable(bv.List(bv.String())) SharingAllowlistAddArgs.emails.validator = bv.Nullable(bv.List(bv.String())) SharingAllowlistAddArgs._all_field_names_ = set([ 'domains', 'emails', ]) SharingAllowlistAddArgs._all_fields_ = [ ('domains', SharingAllowlistAddArgs.domains.validator), ('emails', SharingAllowlistAddArgs.emails.validator), ] SharingAllowlistAddError._malformed_entry_validator = bv.String() SharingAllowlistAddError._no_entries_provided_validator = bv.Void() SharingAllowlistAddError._too_many_entries_provided_validator = bv.Void() SharingAllowlistAddError._team_limit_reached_validator = bv.Void() SharingAllowlistAddError._unknown_error_validator = bv.Void() SharingAllowlistAddError._entries_already_exist_validator = bv.String() SharingAllowlistAddError._other_validator = bv.Void() SharingAllowlistAddError._tagmap = { 'malformed_entry': SharingAllowlistAddError._malformed_entry_validator, 'no_entries_provided': SharingAllowlistAddError._no_entries_provided_validator, 'too_many_entries_provided': SharingAllowlistAddError._too_many_entries_provided_validator, 'team_limit_reached': SharingAllowlistAddError._team_limit_reached_validator, 'unknown_error': SharingAllowlistAddError._unknown_error_validator, 'entries_already_exist': SharingAllowlistAddError._entries_already_exist_validator, 'other': SharingAllowlistAddError._other_validator, } SharingAllowlistAddError.no_entries_provided = SharingAllowlistAddError('no_entries_provided') SharingAllowlistAddError.too_many_entries_provided = SharingAllowlistAddError('too_many_entries_provided') SharingAllowlistAddError.team_limit_reached = SharingAllowlistAddError('team_limit_reached') SharingAllowlistAddError.unknown_error = SharingAllowlistAddError('unknown_error') SharingAllowlistAddError.other = SharingAllowlistAddError('other') SharingAllowlistAddResponse._all_field_names_ = set([]) SharingAllowlistAddResponse._all_fields_ = [] SharingAllowlistListArg.limit.validator = bv.UInt32(min_value=1, max_value=1000) SharingAllowlistListArg._all_field_names_ = set(['limit']) SharingAllowlistListArg._all_fields_ = [('limit', SharingAllowlistListArg.limit.validator)] SharingAllowlistListContinueArg.cursor.validator = bv.String() SharingAllowlistListContinueArg._all_field_names_ = set(['cursor']) SharingAllowlistListContinueArg._all_fields_ = [('cursor', SharingAllowlistListContinueArg.cursor.validator)] SharingAllowlistListContinueError._invalid_cursor_validator = bv.Void() SharingAllowlistListContinueError._other_validator = bv.Void() SharingAllowlistListContinueError._tagmap = { 'invalid_cursor': SharingAllowlistListContinueError._invalid_cursor_validator, 'other': SharingAllowlistListContinueError._other_validator, } SharingAllowlistListContinueError.invalid_cursor = SharingAllowlistListContinueError('invalid_cursor') SharingAllowlistListContinueError.other = SharingAllowlistListContinueError('other') SharingAllowlistListError._all_field_names_ = set([]) SharingAllowlistListError._all_fields_ = [] SharingAllowlistListResponse.domains.validator = bv.List(bv.String()) SharingAllowlistListResponse.emails.validator = bv.List(bv.String()) SharingAllowlistListResponse.cursor.validator = bv.String() SharingAllowlistListResponse.has_more.validator = bv.Boolean() SharingAllowlistListResponse._all_field_names_ = set([ 'domains', 'emails', 'cursor', 'has_more', ]) SharingAllowlistListResponse._all_fields_ = [ ('domains', SharingAllowlistListResponse.domains.validator), ('emails', SharingAllowlistListResponse.emails.validator), ('cursor', SharingAllowlistListResponse.cursor.validator), ('has_more', SharingAllowlistListResponse.has_more.validator), ] SharingAllowlistRemoveArgs.domains.validator = bv.Nullable(bv.List(bv.String())) SharingAllowlistRemoveArgs.emails.validator = bv.Nullable(bv.List(bv.String())) SharingAllowlistRemoveArgs._all_field_names_ = set([ 'domains', 'emails', ]) SharingAllowlistRemoveArgs._all_fields_ = [ ('domains', SharingAllowlistRemoveArgs.domains.validator), ('emails', SharingAllowlistRemoveArgs.emails.validator), ] SharingAllowlistRemoveError._malformed_entry_validator = bv.String() SharingAllowlistRemoveError._entries_do_not_exist_validator = bv.String() SharingAllowlistRemoveError._no_entries_provided_validator = bv.Void() SharingAllowlistRemoveError._too_many_entries_provided_validator = bv.Void() SharingAllowlistRemoveError._unknown_error_validator = bv.Void() SharingAllowlistRemoveError._other_validator = bv.Void() SharingAllowlistRemoveError._tagmap = { 'malformed_entry': SharingAllowlistRemoveError._malformed_entry_validator, 'entries_do_not_exist': SharingAllowlistRemoveError._entries_do_not_exist_validator, 'no_entries_provided': SharingAllowlistRemoveError._no_entries_provided_validator, 'too_many_entries_provided': SharingAllowlistRemoveError._too_many_entries_provided_validator, 'unknown_error': SharingAllowlistRemoveError._unknown_error_validator, 'other': SharingAllowlistRemoveError._other_validator, } SharingAllowlistRemoveError.no_entries_provided = SharingAllowlistRemoveError('no_entries_provided') SharingAllowlistRemoveError.too_many_entries_provided = SharingAllowlistRemoveError('too_many_entries_provided') SharingAllowlistRemoveError.unknown_error = SharingAllowlistRemoveError('unknown_error') SharingAllowlistRemoveError.other = SharingAllowlistRemoveError('other') SharingAllowlistRemoveResponse._all_field_names_ = set([]) SharingAllowlistRemoveResponse._all_fields_ = [] StorageBucket.bucket.validator = bv.String() StorageBucket.users.validator = bv.UInt64() StorageBucket._all_field_names_ = set([ 'bucket', 'users', ]) StorageBucket._all_fields_ = [ ('bucket', StorageBucket.bucket.validator), ('users', StorageBucket.users.validator), ] TeamFolderAccessError._invalid_team_folder_id_validator = bv.Void() TeamFolderAccessError._no_access_validator = bv.Void() TeamFolderAccessError._other_validator = bv.Void() TeamFolderAccessError._tagmap = { 'invalid_team_folder_id': TeamFolderAccessError._invalid_team_folder_id_validator, 'no_access': TeamFolderAccessError._no_access_validator, 'other': TeamFolderAccessError._other_validator, } TeamFolderAccessError.invalid_team_folder_id = TeamFolderAccessError('invalid_team_folder_id') TeamFolderAccessError.no_access = TeamFolderAccessError('no_access') TeamFolderAccessError.other = TeamFolderAccessError('other') TeamFolderActivateError._tagmap = { } TeamFolderActivateError._tagmap.update(BaseTeamFolderError._tagmap) TeamFolderIdArg.team_folder_id.validator = common.SharedFolderId_validator TeamFolderIdArg._all_field_names_ = set(['team_folder_id']) TeamFolderIdArg._all_fields_ = [('team_folder_id', TeamFolderIdArg.team_folder_id.validator)] TeamFolderArchiveArg.force_async_off.validator = bv.Boolean() TeamFolderArchiveArg._all_field_names_ = TeamFolderIdArg._all_field_names_.union(set(['force_async_off'])) TeamFolderArchiveArg._all_fields_ = TeamFolderIdArg._all_fields_ + [('force_async_off', TeamFolderArchiveArg.force_async_off.validator)] TeamFolderArchiveError._tagmap = { } TeamFolderArchiveError._tagmap.update(BaseTeamFolderError._tagmap) TeamFolderArchiveJobStatus._complete_validator = TeamFolderMetadata_validator TeamFolderArchiveJobStatus._failed_validator = TeamFolderArchiveError_validator TeamFolderArchiveJobStatus._tagmap = { 'complete': TeamFolderArchiveJobStatus._complete_validator, 'failed': TeamFolderArchiveJobStatus._failed_validator, } TeamFolderArchiveJobStatus._tagmap.update(async_.PollResultBase._tagmap) TeamFolderArchiveLaunch._complete_validator = TeamFolderMetadata_validator TeamFolderArchiveLaunch._tagmap = { 'complete': TeamFolderArchiveLaunch._complete_validator, } TeamFolderArchiveLaunch._tagmap.update(async_.LaunchResultBase._tagmap) TeamFolderCreateArg.name.validator = bv.String() TeamFolderCreateArg.sync_setting.validator = bv.Nullable(files.SyncSettingArg_validator) TeamFolderCreateArg._all_field_names_ = set([ 'name', 'sync_setting', ]) TeamFolderCreateArg._all_fields_ = [ ('name', TeamFolderCreateArg.name.validator), ('sync_setting', TeamFolderCreateArg.sync_setting.validator), ] TeamFolderCreateError._invalid_folder_name_validator = bv.Void() TeamFolderCreateError._folder_name_already_used_validator = bv.Void() TeamFolderCreateError._folder_name_reserved_validator = bv.Void() TeamFolderCreateError._sync_settings_error_validator = files.SyncSettingsError_validator TeamFolderCreateError._other_validator = bv.Void() TeamFolderCreateError._tagmap = { 'invalid_folder_name': TeamFolderCreateError._invalid_folder_name_validator, 'folder_name_already_used': TeamFolderCreateError._folder_name_already_used_validator, 'folder_name_reserved': TeamFolderCreateError._folder_name_reserved_validator, 'sync_settings_error': TeamFolderCreateError._sync_settings_error_validator, 'other': TeamFolderCreateError._other_validator, } TeamFolderCreateError.invalid_folder_name = TeamFolderCreateError('invalid_folder_name') TeamFolderCreateError.folder_name_already_used = TeamFolderCreateError('folder_name_already_used') TeamFolderCreateError.folder_name_reserved = TeamFolderCreateError('folder_name_reserved') TeamFolderCreateError.other = TeamFolderCreateError('other') TeamFolderGetInfoItem._id_not_found_validator = bv.String() TeamFolderGetInfoItem._team_folder_metadata_validator = TeamFolderMetadata_validator TeamFolderGetInfoItem._tagmap = { 'id_not_found': TeamFolderGetInfoItem._id_not_found_validator, 'team_folder_metadata': TeamFolderGetInfoItem._team_folder_metadata_validator, } TeamFolderIdListArg.team_folder_ids.validator = bv.List(common.SharedFolderId_validator, min_items=1) TeamFolderIdListArg._all_field_names_ = set(['team_folder_ids']) TeamFolderIdListArg._all_fields_ = [('team_folder_ids', TeamFolderIdListArg.team_folder_ids.validator)] TeamFolderInvalidStatusError._active_validator = bv.Void() TeamFolderInvalidStatusError._archived_validator = bv.Void() TeamFolderInvalidStatusError._archive_in_progress_validator = bv.Void() TeamFolderInvalidStatusError._other_validator = bv.Void() TeamFolderInvalidStatusError._tagmap = { 'active': TeamFolderInvalidStatusError._active_validator, 'archived': TeamFolderInvalidStatusError._archived_validator, 'archive_in_progress': TeamFolderInvalidStatusError._archive_in_progress_validator, 'other': TeamFolderInvalidStatusError._other_validator, } TeamFolderInvalidStatusError.active = TeamFolderInvalidStatusError('active') TeamFolderInvalidStatusError.archived = TeamFolderInvalidStatusError('archived') TeamFolderInvalidStatusError.archive_in_progress = TeamFolderInvalidStatusError('archive_in_progress') TeamFolderInvalidStatusError.other = TeamFolderInvalidStatusError('other') TeamFolderListArg.limit.validator = bv.UInt32(min_value=1, max_value=1000) TeamFolderListArg._all_field_names_ = set(['limit']) TeamFolderListArg._all_fields_ = [('limit', TeamFolderListArg.limit.validator)] TeamFolderListContinueArg.cursor.validator = bv.String() TeamFolderListContinueArg._all_field_names_ = set(['cursor']) TeamFolderListContinueArg._all_fields_ = [('cursor', TeamFolderListContinueArg.cursor.validator)] TeamFolderListContinueError._invalid_cursor_validator = bv.Void() TeamFolderListContinueError._other_validator = bv.Void() TeamFolderListContinueError._tagmap = { 'invalid_cursor': TeamFolderListContinueError._invalid_cursor_validator, 'other': TeamFolderListContinueError._other_validator, } TeamFolderListContinueError.invalid_cursor = TeamFolderListContinueError('invalid_cursor') TeamFolderListContinueError.other = TeamFolderListContinueError('other') TeamFolderListError.access_error.validator = TeamFolderAccessError_validator TeamFolderListError._all_field_names_ = set(['access_error']) TeamFolderListError._all_fields_ = [('access_error', TeamFolderListError.access_error.validator)] TeamFolderListResult.team_folders.validator = bv.List(TeamFolderMetadata_validator) TeamFolderListResult.cursor.validator = bv.String() TeamFolderListResult.has_more.validator = bv.Boolean() TeamFolderListResult._all_field_names_ = set([ 'team_folders', 'cursor', 'has_more', ]) TeamFolderListResult._all_fields_ = [ ('team_folders', TeamFolderListResult.team_folders.validator), ('cursor', TeamFolderListResult.cursor.validator), ('has_more', TeamFolderListResult.has_more.validator), ] TeamFolderMetadata.team_folder_id.validator = common.SharedFolderId_validator TeamFolderMetadata.name.validator = bv.String() TeamFolderMetadata.status.validator = TeamFolderStatus_validator TeamFolderMetadata.is_team_shared_dropbox.validator = bv.Boolean() TeamFolderMetadata.sync_setting.validator = files.SyncSetting_validator TeamFolderMetadata.content_sync_settings.validator = bv.List(files.ContentSyncSetting_validator) TeamFolderMetadata._all_field_names_ = set([ 'team_folder_id', 'name', 'status', 'is_team_shared_dropbox', 'sync_setting', 'content_sync_settings', ]) TeamFolderMetadata._all_fields_ = [ ('team_folder_id', TeamFolderMetadata.team_folder_id.validator), ('name', TeamFolderMetadata.name.validator), ('status', TeamFolderMetadata.status.validator), ('is_team_shared_dropbox', TeamFolderMetadata.is_team_shared_dropbox.validator), ('sync_setting', TeamFolderMetadata.sync_setting.validator), ('content_sync_settings', TeamFolderMetadata.content_sync_settings.validator), ] TeamFolderPermanentlyDeleteError._tagmap = { } TeamFolderPermanentlyDeleteError._tagmap.update(BaseTeamFolderError._tagmap) TeamFolderRenameArg.name.validator = bv.String() TeamFolderRenameArg._all_field_names_ = TeamFolderIdArg._all_field_names_.union(set(['name'])) TeamFolderRenameArg._all_fields_ = TeamFolderIdArg._all_fields_ + [('name', TeamFolderRenameArg.name.validator)] TeamFolderRenameError._invalid_folder_name_validator = bv.Void() TeamFolderRenameError._folder_name_already_used_validator = bv.Void() TeamFolderRenameError._folder_name_reserved_validator = bv.Void() TeamFolderRenameError._tagmap = { 'invalid_folder_name': TeamFolderRenameError._invalid_folder_name_validator, 'folder_name_already_used': TeamFolderRenameError._folder_name_already_used_validator, 'folder_name_reserved': TeamFolderRenameError._folder_name_reserved_validator, } TeamFolderRenameError._tagmap.update(BaseTeamFolderError._tagmap) TeamFolderRenameError.invalid_folder_name = TeamFolderRenameError('invalid_folder_name') TeamFolderRenameError.folder_name_already_used = TeamFolderRenameError('folder_name_already_used') TeamFolderRenameError.folder_name_reserved = TeamFolderRenameError('folder_name_reserved') TeamFolderStatus._active_validator = bv.Void() TeamFolderStatus._archived_validator = bv.Void() TeamFolderStatus._archive_in_progress_validator = bv.Void() TeamFolderStatus._other_validator = bv.Void() TeamFolderStatus._tagmap = { 'active': TeamFolderStatus._active_validator, 'archived': TeamFolderStatus._archived_validator, 'archive_in_progress': TeamFolderStatus._archive_in_progress_validator, 'other': TeamFolderStatus._other_validator, } TeamFolderStatus.active = TeamFolderStatus('active') TeamFolderStatus.archived = TeamFolderStatus('archived') TeamFolderStatus.archive_in_progress = TeamFolderStatus('archive_in_progress') TeamFolderStatus.other = TeamFolderStatus('other') TeamFolderTeamSharedDropboxError._disallowed_validator = bv.Void() TeamFolderTeamSharedDropboxError._other_validator = bv.Void() TeamFolderTeamSharedDropboxError._tagmap = { 'disallowed': TeamFolderTeamSharedDropboxError._disallowed_validator, 'other': TeamFolderTeamSharedDropboxError._other_validator, } TeamFolderTeamSharedDropboxError.disallowed = TeamFolderTeamSharedDropboxError('disallowed') TeamFolderTeamSharedDropboxError.other = TeamFolderTeamSharedDropboxError('other') TeamFolderUpdateSyncSettingsArg.sync_setting.validator = bv.Nullable(files.SyncSettingArg_validator) TeamFolderUpdateSyncSettingsArg.content_sync_settings.validator = bv.Nullable(bv.List(files.ContentSyncSettingArg_validator)) TeamFolderUpdateSyncSettingsArg._all_field_names_ = TeamFolderIdArg._all_field_names_.union(set([ 'sync_setting', 'content_sync_settings', ])) TeamFolderUpdateSyncSettingsArg._all_fields_ = TeamFolderIdArg._all_fields_ + [ ('sync_setting', TeamFolderUpdateSyncSettingsArg.sync_setting.validator), ('content_sync_settings', TeamFolderUpdateSyncSettingsArg.content_sync_settings.validator), ] TeamFolderUpdateSyncSettingsError._sync_settings_error_validator = files.SyncSettingsError_validator TeamFolderUpdateSyncSettingsError._tagmap = { 'sync_settings_error': TeamFolderUpdateSyncSettingsError._sync_settings_error_validator, } TeamFolderUpdateSyncSettingsError._tagmap.update(BaseTeamFolderError._tagmap) TeamGetInfoResult.name.validator = bv.String() TeamGetInfoResult.team_id.validator = bv.String() TeamGetInfoResult.num_licensed_users.validator = bv.UInt32() TeamGetInfoResult.num_provisioned_users.validator = bv.UInt32() TeamGetInfoResult.num_used_licenses.validator = bv.UInt32() TeamGetInfoResult.policies.validator = team_policies.TeamMemberPolicies_validator TeamGetInfoResult._all_field_names_ = set([ 'name', 'team_id', 'num_licensed_users', 'num_provisioned_users', 'num_used_licenses', 'policies', ]) TeamGetInfoResult._all_fields_ = [ ('name', TeamGetInfoResult.name.validator), ('team_id', TeamGetInfoResult.team_id.validator), ('num_licensed_users', TeamGetInfoResult.num_licensed_users.validator), ('num_provisioned_users', TeamGetInfoResult.num_provisioned_users.validator), ('num_used_licenses', TeamGetInfoResult.num_used_licenses.validator), ('policies', TeamGetInfoResult.policies.validator), ] TeamMemberInfo.profile.validator = TeamMemberProfile_validator TeamMemberInfo.role.validator = AdminTier_validator TeamMemberInfo._all_field_names_ = set([ 'profile', 'role', ]) TeamMemberInfo._all_fields_ = [ ('profile', TeamMemberInfo.profile.validator), ('role', TeamMemberInfo.role.validator), ] TeamMemberInfoV2.profile.validator = TeamMemberProfile_validator TeamMemberInfoV2.roles.validator = bv.Nullable(bv.List(TeamMemberRole_validator)) TeamMemberInfoV2._all_field_names_ = set([ 'profile', 'roles', ]) TeamMemberInfoV2._all_fields_ = [ ('profile', TeamMemberInfoV2.profile.validator), ('roles', TeamMemberInfoV2.roles.validator), ] TeamMemberInfoV2Result.member_info.validator = TeamMemberInfoV2_validator TeamMemberInfoV2Result._all_field_names_ = set(['member_info']) TeamMemberInfoV2Result._all_fields_ = [('member_info', TeamMemberInfoV2Result.member_info.validator)] TeamMemberProfile.groups.validator = bv.List(team_common.GroupId_validator) TeamMemberProfile.member_folder_id.validator = common.NamespaceId_validator TeamMemberProfile._all_field_names_ = MemberProfile._all_field_names_.union(set([ 'groups', 'member_folder_id', ])) TeamMemberProfile._all_fields_ = MemberProfile._all_fields_ + [ ('groups', TeamMemberProfile.groups.validator), ('member_folder_id', TeamMemberProfile.member_folder_id.validator), ] TeamMemberRole.role_id.validator = TeamMemberRoleId_validator TeamMemberRole.name.validator = bv.String(max_length=32) TeamMemberRole.description.validator = bv.String(max_length=256) TeamMemberRole._all_field_names_ = set([ 'role_id', 'name', 'description', ]) TeamMemberRole._all_fields_ = [ ('role_id', TeamMemberRole.role_id.validator), ('name', TeamMemberRole.name.validator), ('description', TeamMemberRole.description.validator), ] TeamMemberStatus._active_validator = bv.Void() TeamMemberStatus._invited_validator = bv.Void() TeamMemberStatus._suspended_validator = bv.Void() TeamMemberStatus._removed_validator = RemovedStatus_validator TeamMemberStatus._tagmap = { 'active': TeamMemberStatus._active_validator, 'invited': TeamMemberStatus._invited_validator, 'suspended': TeamMemberStatus._suspended_validator, 'removed': TeamMemberStatus._removed_validator, } TeamMemberStatus.active = TeamMemberStatus('active') TeamMemberStatus.invited = TeamMemberStatus('invited') TeamMemberStatus.suspended = TeamMemberStatus('suspended') TeamMembershipType._full_validator = bv.Void() TeamMembershipType._limited_validator = bv.Void() TeamMembershipType._tagmap = { 'full': TeamMembershipType._full_validator, 'limited': TeamMembershipType._limited_validator, } TeamMembershipType.full = TeamMembershipType('full') TeamMembershipType.limited = TeamMembershipType('limited') TeamNamespacesListArg.limit.validator = bv.UInt32(min_value=1, max_value=1000) TeamNamespacesListArg._all_field_names_ = set(['limit']) TeamNamespacesListArg._all_fields_ = [('limit', TeamNamespacesListArg.limit.validator)] TeamNamespacesListContinueArg.cursor.validator = bv.String() TeamNamespacesListContinueArg._all_field_names_ = set(['cursor']) TeamNamespacesListContinueArg._all_fields_ = [('cursor', TeamNamespacesListContinueArg.cursor.validator)] TeamNamespacesListError._invalid_arg_validator = bv.Void() TeamNamespacesListError._other_validator = bv.Void() TeamNamespacesListError._tagmap = { 'invalid_arg': TeamNamespacesListError._invalid_arg_validator, 'other': TeamNamespacesListError._other_validator, } TeamNamespacesListError.invalid_arg = TeamNamespacesListError('invalid_arg') TeamNamespacesListError.other = TeamNamespacesListError('other') TeamNamespacesListContinueError._invalid_cursor_validator = bv.Void() TeamNamespacesListContinueError._tagmap = { 'invalid_cursor': TeamNamespacesListContinueError._invalid_cursor_validator, } TeamNamespacesListContinueError._tagmap.update(TeamNamespacesListError._tagmap) TeamNamespacesListContinueError.invalid_cursor = TeamNamespacesListContinueError('invalid_cursor') TeamNamespacesListResult.namespaces.validator = bv.List(NamespaceMetadata_validator) TeamNamespacesListResult.cursor.validator = bv.String() TeamNamespacesListResult.has_more.validator = bv.Boolean() TeamNamespacesListResult._all_field_names_ = set([ 'namespaces', 'cursor', 'has_more', ]) TeamNamespacesListResult._all_fields_ = [ ('namespaces', TeamNamespacesListResult.namespaces.validator), ('cursor', TeamNamespacesListResult.cursor.validator), ('has_more', TeamNamespacesListResult.has_more.validator), ] TeamReportFailureReason._temporary_error_validator = bv.Void() TeamReportFailureReason._many_reports_at_once_validator = bv.Void() TeamReportFailureReason._too_much_data_validator = bv.Void() TeamReportFailureReason._other_validator = bv.Void() TeamReportFailureReason._tagmap = { 'temporary_error': TeamReportFailureReason._temporary_error_validator, 'many_reports_at_once': TeamReportFailureReason._many_reports_at_once_validator, 'too_much_data': TeamReportFailureReason._too_much_data_validator, 'other': TeamReportFailureReason._other_validator, } TeamReportFailureReason.temporary_error = TeamReportFailureReason('temporary_error') TeamReportFailureReason.many_reports_at_once = TeamReportFailureReason('many_reports_at_once') TeamReportFailureReason.too_much_data = TeamReportFailureReason('too_much_data') TeamReportFailureReason.other = TeamReportFailureReason('other') TokenGetAuthenticatedAdminError._mapping_not_found_validator = bv.Void() TokenGetAuthenticatedAdminError._admin_not_active_validator = bv.Void() TokenGetAuthenticatedAdminError._other_validator = bv.Void() TokenGetAuthenticatedAdminError._tagmap = { 'mapping_not_found': TokenGetAuthenticatedAdminError._mapping_not_found_validator, 'admin_not_active': TokenGetAuthenticatedAdminError._admin_not_active_validator, 'other': TokenGetAuthenticatedAdminError._other_validator, } TokenGetAuthenticatedAdminError.mapping_not_found = TokenGetAuthenticatedAdminError('mapping_not_found') TokenGetAuthenticatedAdminError.admin_not_active = TokenGetAuthenticatedAdminError('admin_not_active') TokenGetAuthenticatedAdminError.other = TokenGetAuthenticatedAdminError('other') TokenGetAuthenticatedAdminResult.admin_profile.validator = TeamMemberProfile_validator TokenGetAuthenticatedAdminResult._all_field_names_ = set(['admin_profile']) TokenGetAuthenticatedAdminResult._all_fields_ = [('admin_profile', TokenGetAuthenticatedAdminResult.admin_profile.validator)] UploadApiRateLimitValue._unlimited_validator = bv.Void() UploadApiRateLimitValue._limit_validator = bv.UInt32() UploadApiRateLimitValue._other_validator = bv.Void() UploadApiRateLimitValue._tagmap = { 'unlimited': UploadApiRateLimitValue._unlimited_validator, 'limit': UploadApiRateLimitValue._limit_validator, 'other': UploadApiRateLimitValue._other_validator, } UploadApiRateLimitValue.unlimited = UploadApiRateLimitValue('unlimited') UploadApiRateLimitValue.other = UploadApiRateLimitValue('other') UserAddResult._success_validator = UserSecondaryEmailsResult_validator UserAddResult._invalid_user_validator = UserSelectorArg_validator UserAddResult._unverified_validator = UserSelectorArg_validator UserAddResult._placeholder_user_validator = UserSelectorArg_validator UserAddResult._other_validator = bv.Void() UserAddResult._tagmap = { 'success': UserAddResult._success_validator, 'invalid_user': UserAddResult._invalid_user_validator, 'unverified': UserAddResult._unverified_validator, 'placeholder_user': UserAddResult._placeholder_user_validator, 'other': UserAddResult._other_validator, } UserAddResult.other = UserAddResult('other') UserCustomQuotaArg.user.validator = UserSelectorArg_validator UserCustomQuotaArg.quota_gb.validator = UserQuota_validator UserCustomQuotaArg._all_field_names_ = set([ 'user', 'quota_gb', ]) UserCustomQuotaArg._all_fields_ = [ ('user', UserCustomQuotaArg.user.validator), ('quota_gb', UserCustomQuotaArg.quota_gb.validator), ] UserCustomQuotaResult.user.validator = UserSelectorArg_validator UserCustomQuotaResult.quota_gb.validator = bv.Nullable(UserQuota_validator) UserCustomQuotaResult._all_field_names_ = set([ 'user', 'quota_gb', ]) UserCustomQuotaResult._all_fields_ = [ ('user', UserCustomQuotaResult.user.validator), ('quota_gb', UserCustomQuotaResult.quota_gb.validator), ] UserDeleteEmailsResult.user.validator = UserSelectorArg_validator UserDeleteEmailsResult.results.validator = bv.List(DeleteSecondaryEmailResult_validator) UserDeleteEmailsResult._all_field_names_ = set([ 'user', 'results', ]) UserDeleteEmailsResult._all_fields_ = [ ('user', UserDeleteEmailsResult.user.validator), ('results', UserDeleteEmailsResult.results.validator), ] UserDeleteResult._success_validator = UserDeleteEmailsResult_validator UserDeleteResult._invalid_user_validator = UserSelectorArg_validator UserDeleteResult._other_validator = bv.Void() UserDeleteResult._tagmap = { 'success': UserDeleteResult._success_validator, 'invalid_user': UserDeleteResult._invalid_user_validator, 'other': UserDeleteResult._other_validator, } UserDeleteResult.other = UserDeleteResult('other') UserResendEmailsResult.user.validator = UserSelectorArg_validator UserResendEmailsResult.results.validator = bv.List(ResendSecondaryEmailResult_validator) UserResendEmailsResult._all_field_names_ = set([ 'user', 'results', ]) UserResendEmailsResult._all_fields_ = [ ('user', UserResendEmailsResult.user.validator), ('results', UserResendEmailsResult.results.validator), ] UserResendResult._success_validator = UserResendEmailsResult_validator UserResendResult._invalid_user_validator = UserSelectorArg_validator UserResendResult._other_validator = bv.Void() UserResendResult._tagmap = { 'success': UserResendResult._success_validator, 'invalid_user': UserResendResult._invalid_user_validator, 'other': UserResendResult._other_validator, } UserResendResult.other = UserResendResult('other') UserSecondaryEmailsArg.user.validator = UserSelectorArg_validator UserSecondaryEmailsArg.secondary_emails.validator = bv.List(common.EmailAddress_validator) UserSecondaryEmailsArg._all_field_names_ = set([ 'user', 'secondary_emails', ]) UserSecondaryEmailsArg._all_fields_ = [ ('user', UserSecondaryEmailsArg.user.validator), ('secondary_emails', UserSecondaryEmailsArg.secondary_emails.validator), ] UserSecondaryEmailsResult.user.validator = UserSelectorArg_validator UserSecondaryEmailsResult.results.validator = bv.List(AddSecondaryEmailResult_validator) UserSecondaryEmailsResult._all_field_names_ = set([ 'user', 'results', ]) UserSecondaryEmailsResult._all_fields_ = [ ('user', UserSecondaryEmailsResult.user.validator), ('results', UserSecondaryEmailsResult.results.validator), ] UserSelectorArg._team_member_id_validator = team_common.TeamMemberId_validator UserSelectorArg._external_id_validator = team_common.MemberExternalId_validator UserSelectorArg._email_validator = common.EmailAddress_validator UserSelectorArg._tagmap = { 'team_member_id': UserSelectorArg._team_member_id_validator, 'external_id': UserSelectorArg._external_id_validator, 'email': UserSelectorArg._email_validator, } UsersSelectorArg._team_member_ids_validator = bv.List(team_common.TeamMemberId_validator) UsersSelectorArg._external_ids_validator = bv.List(team_common.MemberExternalId_validator) UsersSelectorArg._emails_validator = bv.List(common.EmailAddress_validator) UsersSelectorArg._tagmap = { 'team_member_ids': UsersSelectorArg._team_member_ids_validator, 'external_ids': UsersSelectorArg._external_ids_validator, 'emails': UsersSelectorArg._emails_validator, } ExcludedUsersListArg.limit.default = 1000 GroupCreateArg.add_creator_as_owner.default = False IncludeMembersArg.return_members.default = True GroupMembersSetAccessTypeArg.return_members.default = True GroupsListArg.limit.default = 1000 GroupsMembersListArg.limit.default = 1000 LegalHoldsListPoliciesArg.include_released.default = False ListMemberDevicesArg.include_web_sessions.default = True ListMemberDevicesArg.include_desktop_clients.default = True ListMemberDevicesArg.include_mobile_clients.default = True ListMembersDevicesArg.include_web_sessions.default = True ListMembersDevicesArg.include_desktop_clients.default = True ListMembersDevicesArg.include_mobile_clients.default = True ListTeamDevicesArg.include_web_sessions.default = True ListTeamDevicesArg.include_desktop_clients.default = True ListTeamDevicesArg.include_mobile_clients.default = True MemberAddArgBase.send_welcome_email.default = True MemberAddArg.role.default = AdminTier.member_only MembersAddArgBase.force_async.default = False MembersDeactivateArg.wipe_data.default = True MembersListArg.limit.default = 1000 MembersListArg.include_removed.default = False MembersRemoveArg.keep_account.default = False MembersRemoveArg.retain_team_shares.default = False RevokeDesktopClientArg.delete_on_unlink.default = False RevokeLinkedApiAppArg.keep_app_folder.default = True SharingAllowlistListArg.limit.default = 1000 SharingAllowlistListResponse.cursor.default = '' SharingAllowlistListResponse.has_more.default = False TeamFolderArchiveArg.force_async_off.default = False TeamFolderListArg.limit.default = 1000 TeamGetInfoResult.num_used_licenses.default = 0 TeamNamespacesListArg.limit.default = 1000 devices_list_member_devices = bb.Route( 'devices/list_member_devices', 1, False, ListMemberDevicesArg_validator, ListMemberDevicesResult_validator, ListMemberDevicesError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) devices_list_members_devices = bb.Route( 'devices/list_members_devices', 1, False, ListMembersDevicesArg_validator, ListMembersDevicesResult_validator, ListMembersDevicesError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) devices_list_team_devices = bb.Route( 'devices/list_team_devices', 1, True, ListTeamDevicesArg_validator, ListTeamDevicesResult_validator, ListTeamDevicesError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) devices_revoke_device_session = bb.Route( 'devices/revoke_device_session', 1, False, RevokeDeviceSessionArg_validator, bv.Void(), RevokeDeviceSessionError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) devices_revoke_device_session_batch = bb.Route( 'devices/revoke_device_session_batch', 1, False, RevokeDeviceSessionBatchArg_validator, RevokeDeviceSessionBatchResult_validator, RevokeDeviceSessionBatchError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) features_get_values = bb.Route( 'features/get_values', 1, False, FeaturesGetValuesBatchArg_validator, FeaturesGetValuesBatchResult_validator, FeaturesGetValuesBatchError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) get_info = bb.Route( 'get_info', 1, False, bv.Void(), TeamGetInfoResult_validator, bv.Void(), {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) groups_create = bb.Route( 'groups/create', 1, False, GroupCreateArg_validator, GroupFullInfo_validator, GroupCreateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) groups_delete = bb.Route( 'groups/delete', 1, False, GroupSelector_validator, async_.LaunchEmptyResult_validator, GroupDeleteError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) groups_get_info = bb.Route( 'groups/get_info', 1, False, GroupsSelector_validator, GroupsGetInfoResult_validator, GroupsGetInfoError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) groups_job_status_get = bb.Route( 'groups/job_status/get', 1, False, async_.PollArg_validator, async_.PollEmptyResult_validator, GroupsPollError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) groups_list = bb.Route( 'groups/list', 1, False, GroupsListArg_validator, GroupsListResult_validator, bv.Void(), {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) groups_list_continue = bb.Route( 'groups/list/continue', 1, False, GroupsListContinueArg_validator, GroupsListResult_validator, GroupsListContinueError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) groups_members_add = bb.Route( 'groups/members/add', 1, False, GroupMembersAddArg_validator, GroupMembersChangeResult_validator, GroupMembersAddError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) groups_members_list = bb.Route( 'groups/members/list', 1, False, GroupsMembersListArg_validator, GroupsMembersListResult_validator, GroupSelectorError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) groups_members_list_continue = bb.Route( 'groups/members/list/continue', 1, False, GroupsMembersListContinueArg_validator, GroupsMembersListResult_validator, GroupsMembersListContinueError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) groups_members_remove = bb.Route( 'groups/members/remove', 1, False, GroupMembersRemoveArg_validator, GroupMembersChangeResult_validator, GroupMembersRemoveError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) groups_members_set_access_type = bb.Route( 'groups/members/set_access_type', 1, False, GroupMembersSetAccessTypeArg_validator, GroupsGetInfoResult_validator, GroupMemberSetAccessTypeError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) groups_update = bb.Route( 'groups/update', 1, False, GroupUpdateArgs_validator, GroupFullInfo_validator, GroupUpdateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) legal_holds_create_policy = bb.Route( 'legal_holds/create_policy', 1, False, LegalHoldsPolicyCreateArg_validator, LegalHoldsPolicyCreateResult_validator, LegalHoldsPolicyCreateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) legal_holds_get_policy = bb.Route( 'legal_holds/get_policy', 1, False, LegalHoldsGetPolicyArg_validator, LegalHoldsGetPolicyResult_validator, LegalHoldsGetPolicyError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) legal_holds_list_held_revisions = bb.Route( 'legal_holds/list_held_revisions', 1, False, LegalHoldsListHeldRevisionsArg_validator, LegalHoldsListHeldRevisionResult_validator, LegalHoldsListHeldRevisionsError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) legal_holds_list_held_revisions_continue = bb.Route( 'legal_holds/list_held_revisions_continue', 1, False, LegalHoldsListHeldRevisionsContinueArg_validator, LegalHoldsListHeldRevisionResult_validator, LegalHoldsListHeldRevisionsError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) legal_holds_list_policies = bb.Route( 'legal_holds/list_policies', 1, False, LegalHoldsListPoliciesArg_validator, LegalHoldsListPoliciesResult_validator, LegalHoldsListPoliciesError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) legal_holds_release_policy = bb.Route( 'legal_holds/release_policy', 1, False, LegalHoldsPolicyReleaseArg_validator, bv.Void(), LegalHoldsPolicyReleaseError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) legal_holds_update_policy = bb.Route( 'legal_holds/update_policy', 1, False, LegalHoldsPolicyUpdateArg_validator, LegalHoldsPolicyUpdateResult_validator, LegalHoldsPolicyUpdateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) linked_apps_list_member_linked_apps = bb.Route( 'linked_apps/list_member_linked_apps', 1, False, ListMemberAppsArg_validator, ListMemberAppsResult_validator, ListMemberAppsError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) linked_apps_list_members_linked_apps = bb.Route( 'linked_apps/list_members_linked_apps', 1, False, ListMembersAppsArg_validator, ListMembersAppsResult_validator, ListMembersAppsError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) linked_apps_list_team_linked_apps = bb.Route( 'linked_apps/list_team_linked_apps', 1, True, ListTeamAppsArg_validator, ListTeamAppsResult_validator, ListTeamAppsError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) linked_apps_revoke_linked_app = bb.Route( 'linked_apps/revoke_linked_app', 1, False, RevokeLinkedApiAppArg_validator, bv.Void(), RevokeLinkedAppError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) linked_apps_revoke_linked_app_batch = bb.Route( 'linked_apps/revoke_linked_app_batch', 1, False, RevokeLinkedApiAppBatchArg_validator, RevokeLinkedAppBatchResult_validator, RevokeLinkedAppBatchError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) member_space_limits_excluded_users_add = bb.Route( 'member_space_limits/excluded_users/add', 1, False, ExcludedUsersUpdateArg_validator, ExcludedUsersUpdateResult_validator, ExcludedUsersUpdateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) member_space_limits_excluded_users_list = bb.Route( 'member_space_limits/excluded_users/list', 1, False, ExcludedUsersListArg_validator, ExcludedUsersListResult_validator, ExcludedUsersListError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) member_space_limits_excluded_users_list_continue = bb.Route( 'member_space_limits/excluded_users/list/continue', 1, False, ExcludedUsersListContinueArg_validator, ExcludedUsersListResult_validator, ExcludedUsersListContinueError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) member_space_limits_excluded_users_remove = bb.Route( 'member_space_limits/excluded_users/remove', 1, False, ExcludedUsersUpdateArg_validator, ExcludedUsersUpdateResult_validator, ExcludedUsersUpdateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) member_space_limits_get_custom_quota = bb.Route( 'member_space_limits/get_custom_quota', 1, False, CustomQuotaUsersArg_validator, bv.List(CustomQuotaResult_validator), CustomQuotaError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) member_space_limits_remove_custom_quota = bb.Route( 'member_space_limits/remove_custom_quota', 1, False, CustomQuotaUsersArg_validator, bv.List(RemoveCustomQuotaResult_validator), CustomQuotaError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) member_space_limits_set_custom_quota = bb.Route( 'member_space_limits/set_custom_quota', 1, False, SetCustomQuotaArg_validator, bv.List(CustomQuotaResult_validator), SetCustomQuotaError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_add_v2 = bb.Route( 'members/add', 2, False, MembersAddV2Arg_validator, MembersAddLaunchV2Result_validator, bv.Void(), {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_add = bb.Route( 'members/add', 1, False, MembersAddArg_validator, MembersAddLaunch_validator, bv.Void(), {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_add_job_status_get_v2 = bb.Route( 'members/add/job_status/get', 2, False, async_.PollArg_validator, MembersAddJobStatusV2Result_validator, async_.PollError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_add_job_status_get = bb.Route( 'members/add/job_status/get', 1, False, async_.PollArg_validator, MembersAddJobStatus_validator, async_.PollError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_delete_profile_photo_v2 = bb.Route( 'members/delete_profile_photo', 2, False, MembersDeleteProfilePhotoArg_validator, TeamMemberInfoV2Result_validator, MembersDeleteProfilePhotoError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_delete_profile_photo = bb.Route( 'members/delete_profile_photo', 1, False, MembersDeleteProfilePhotoArg_validator, TeamMemberInfo_validator, MembersDeleteProfilePhotoError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_get_available_team_member_roles = bb.Route( 'members/get_available_team_member_roles', 1, False, bv.Void(), MembersGetAvailableTeamMemberRolesResult_validator, bv.Void(), {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_get_info_v2 = bb.Route( 'members/get_info', 2, False, MembersGetInfoV2Arg_validator, MembersGetInfoV2Result_validator, MembersGetInfoError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_get_info = bb.Route( 'members/get_info', 1, False, MembersGetInfoArgs_validator, MembersGetInfoResult_validator, MembersGetInfoError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_list_v2 = bb.Route( 'members/list', 2, False, MembersListArg_validator, MembersListV2Result_validator, MembersListError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_list = bb.Route( 'members/list', 1, False, MembersListArg_validator, MembersListResult_validator, MembersListError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_list_continue_v2 = bb.Route( 'members/list/continue', 2, False, MembersListContinueArg_validator, MembersListV2Result_validator, MembersListContinueError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_list_continue = bb.Route( 'members/list/continue', 1, False, MembersListContinueArg_validator, MembersListResult_validator, MembersListContinueError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_move_former_member_files = bb.Route( 'members/move_former_member_files', 1, False, MembersDataTransferArg_validator, async_.LaunchEmptyResult_validator, MembersTransferFormerMembersFilesError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_move_former_member_files_job_status_check = bb.Route( 'members/move_former_member_files/job_status/check', 1, False, async_.PollArg_validator, async_.PollEmptyResult_validator, async_.PollError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_recover = bb.Route( 'members/recover', 1, False, MembersRecoverArg_validator, bv.Void(), MembersRecoverError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_remove = bb.Route( 'members/remove', 1, False, MembersRemoveArg_validator, async_.LaunchEmptyResult_validator, MembersRemoveError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_remove_job_status_get = bb.Route( 'members/remove/job_status/get', 1, False, async_.PollArg_validator, async_.PollEmptyResult_validator, async_.PollError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_secondary_emails_add = bb.Route( 'members/secondary_emails/add', 1, False, AddSecondaryEmailsArg_validator, AddSecondaryEmailsResult_validator, AddSecondaryEmailsError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_secondary_emails_delete = bb.Route( 'members/secondary_emails/delete', 1, False, DeleteSecondaryEmailsArg_validator, DeleteSecondaryEmailsResult_validator, bv.Void(), {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_secondary_emails_resend_verification_emails = bb.Route( 'members/secondary_emails/resend_verification_emails', 1, False, ResendVerificationEmailArg_validator, ResendVerificationEmailResult_validator, bv.Void(), {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_send_welcome_email = bb.Route( 'members/send_welcome_email', 1, False, UserSelectorArg_validator, bv.Void(), MembersSendWelcomeError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_set_admin_permissions_v2 = bb.Route( 'members/set_admin_permissions', 2, False, MembersSetPermissions2Arg_validator, MembersSetPermissions2Result_validator, MembersSetPermissions2Error_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_set_admin_permissions = bb.Route( 'members/set_admin_permissions', 1, False, MembersSetPermissionsArg_validator, MembersSetPermissionsResult_validator, MembersSetPermissionsError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_set_profile_v2 = bb.Route( 'members/set_profile', 2, False, MembersSetProfileArg_validator, TeamMemberInfoV2Result_validator, MembersSetProfileError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_set_profile = bb.Route( 'members/set_profile', 1, False, MembersSetProfileArg_validator, TeamMemberInfo_validator, MembersSetProfileError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_set_profile_photo_v2 = bb.Route( 'members/set_profile_photo', 2, False, MembersSetProfilePhotoArg_validator, TeamMemberInfoV2Result_validator, MembersSetProfilePhotoError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_set_profile_photo = bb.Route( 'members/set_profile_photo', 1, False, MembersSetProfilePhotoArg_validator, TeamMemberInfo_validator, MembersSetProfilePhotoError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_suspend = bb.Route( 'members/suspend', 1, False, MembersDeactivateArg_validator, bv.Void(), MembersSuspendError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) members_unsuspend = bb.Route( 'members/unsuspend', 1, False, MembersUnsuspendArg_validator, bv.Void(), MembersUnsuspendError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) namespaces_list = bb.Route( 'namespaces/list', 1, False, TeamNamespacesListArg_validator, TeamNamespacesListResult_validator, TeamNamespacesListError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) namespaces_list_continue = bb.Route( 'namespaces/list/continue', 1, False, TeamNamespacesListContinueArg_validator, TeamNamespacesListResult_validator, TeamNamespacesListContinueError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) properties_template_add = bb.Route( 'properties/template/add', 1, True, file_properties.AddTemplateArg_validator, file_properties.AddTemplateResult_validator, file_properties.ModifyTemplateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) properties_template_get = bb.Route( 'properties/template/get', 1, True, file_properties.GetTemplateArg_validator, file_properties.GetTemplateResult_validator, file_properties.TemplateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) properties_template_list = bb.Route( 'properties/template/list', 1, True, bv.Void(), file_properties.ListTemplateResult_validator, file_properties.TemplateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) properties_template_update = bb.Route( 'properties/template/update', 1, True, file_properties.UpdateTemplateArg_validator, file_properties.UpdateTemplateResult_validator, file_properties.ModifyTemplateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) reports_get_activity = bb.Route( 'reports/get_activity', 1, True, DateRange_validator, GetActivityReport_validator, DateRangeError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) reports_get_devices = bb.Route( 'reports/get_devices', 1, True, DateRange_validator, GetDevicesReport_validator, DateRangeError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) reports_get_membership = bb.Route( 'reports/get_membership', 1, True, DateRange_validator, GetMembershipReport_validator, DateRangeError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) reports_get_storage = bb.Route( 'reports/get_storage', 1, True, DateRange_validator, GetStorageReport_validator, DateRangeError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) sharing_allowlist_add = bb.Route( 'sharing_allowlist/add', 1, False, SharingAllowlistAddArgs_validator, SharingAllowlistAddResponse_validator, SharingAllowlistAddError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) sharing_allowlist_list = bb.Route( 'sharing_allowlist/list', 1, False, SharingAllowlistListArg_validator, SharingAllowlistListResponse_validator, SharingAllowlistListError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) sharing_allowlist_list_continue = bb.Route( 'sharing_allowlist/list/continue', 1, False, SharingAllowlistListContinueArg_validator, SharingAllowlistListResponse_validator, SharingAllowlistListContinueError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) sharing_allowlist_remove = bb.Route( 'sharing_allowlist/remove', 1, False, SharingAllowlistRemoveArgs_validator, SharingAllowlistRemoveResponse_validator, SharingAllowlistRemoveError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) team_folder_activate = bb.Route( 'team_folder/activate', 1, False, TeamFolderIdArg_validator, TeamFolderMetadata_validator, TeamFolderActivateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) team_folder_archive = bb.Route( 'team_folder/archive', 1, False, TeamFolderArchiveArg_validator, TeamFolderArchiveLaunch_validator, TeamFolderArchiveError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) team_folder_archive_check = bb.Route( 'team_folder/archive/check', 1, False, async_.PollArg_validator, TeamFolderArchiveJobStatus_validator, async_.PollError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) team_folder_create = bb.Route( 'team_folder/create', 1, False, TeamFolderCreateArg_validator, TeamFolderMetadata_validator, TeamFolderCreateError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) team_folder_get_info = bb.Route( 'team_folder/get_info', 1, False, TeamFolderIdListArg_validator, bv.List(TeamFolderGetInfoItem_validator), bv.Void(), {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) team_folder_list = bb.Route( 'team_folder/list', 1, False, TeamFolderListArg_validator, TeamFolderListResult_validator, TeamFolderListError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) team_folder_list_continue = bb.Route( 'team_folder/list/continue', 1, False, TeamFolderListContinueArg_validator, TeamFolderListResult_validator, TeamFolderListContinueError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) team_folder_permanently_delete = bb.Route( 'team_folder/permanently_delete', 1, False, TeamFolderIdArg_validator, bv.Void(), TeamFolderPermanentlyDeleteError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) team_folder_rename = bb.Route( 'team_folder/rename', 1, False, TeamFolderRenameArg_validator, TeamFolderMetadata_validator, TeamFolderRenameError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) team_folder_update_sync_settings = bb.Route( 'team_folder/update_sync_settings', 1, False, TeamFolderUpdateSyncSettingsArg_validator, TeamFolderMetadata_validator, TeamFolderUpdateSyncSettingsError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) token_get_authenticated_admin = bb.Route( 'token/get_authenticated_admin', 1, False, bv.Void(), TokenGetAuthenticatedAdminResult_validator, TokenGetAuthenticatedAdminError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'devices/list_member_devices': devices_list_member_devices, 'devices/list_members_devices': devices_list_members_devices, 'devices/list_team_devices': devices_list_team_devices, 'devices/revoke_device_session': devices_revoke_device_session, 'devices/revoke_device_session_batch': devices_revoke_device_session_batch, 'features/get_values': features_get_values, 'get_info': get_info, 'groups/create': groups_create, 'groups/delete': groups_delete, 'groups/get_info': groups_get_info, 'groups/job_status/get': groups_job_status_get, 'groups/list': groups_list, 'groups/list/continue': groups_list_continue, 'groups/members/add': groups_members_add, 'groups/members/list': groups_members_list, 'groups/members/list/continue': groups_members_list_continue, 'groups/members/remove': groups_members_remove, 'groups/members/set_access_type': groups_members_set_access_type, 'groups/update': groups_update, 'legal_holds/create_policy': legal_holds_create_policy, 'legal_holds/get_policy': legal_holds_get_policy, 'legal_holds/list_held_revisions': legal_holds_list_held_revisions, 'legal_holds/list_held_revisions_continue': legal_holds_list_held_revisions_continue, 'legal_holds/list_policies': legal_holds_list_policies, 'legal_holds/release_policy': legal_holds_release_policy, 'legal_holds/update_policy': legal_holds_update_policy, 'linked_apps/list_member_linked_apps': linked_apps_list_member_linked_apps, 'linked_apps/list_members_linked_apps': linked_apps_list_members_linked_apps, 'linked_apps/list_team_linked_apps': linked_apps_list_team_linked_apps, 'linked_apps/revoke_linked_app': linked_apps_revoke_linked_app, 'linked_apps/revoke_linked_app_batch': linked_apps_revoke_linked_app_batch, 'member_space_limits/excluded_users/add': member_space_limits_excluded_users_add, 'member_space_limits/excluded_users/list': member_space_limits_excluded_users_list, 'member_space_limits/excluded_users/list/continue': member_space_limits_excluded_users_list_continue, 'member_space_limits/excluded_users/remove': member_space_limits_excluded_users_remove, 'member_space_limits/get_custom_quota': member_space_limits_get_custom_quota, 'member_space_limits/remove_custom_quota': member_space_limits_remove_custom_quota, 'member_space_limits/set_custom_quota': member_space_limits_set_custom_quota, 'members/add:2': members_add_v2, 'members/add': members_add, 'members/add/job_status/get:2': members_add_job_status_get_v2, 'members/add/job_status/get': members_add_job_status_get, 'members/delete_profile_photo:2': members_delete_profile_photo_v2, 'members/delete_profile_photo': members_delete_profile_photo, 'members/get_available_team_member_roles': members_get_available_team_member_roles, 'members/get_info:2': members_get_info_v2, 'members/get_info': members_get_info, 'members/list:2': members_list_v2, 'members/list': members_list, 'members/list/continue:2': members_list_continue_v2, 'members/list/continue': members_list_continue, 'members/move_former_member_files': members_move_former_member_files, 'members/move_former_member_files/job_status/check': members_move_former_member_files_job_status_check, 'members/recover': members_recover, 'members/remove': members_remove, 'members/remove/job_status/get': members_remove_job_status_get, 'members/secondary_emails/add': members_secondary_emails_add, 'members/secondary_emails/delete': members_secondary_emails_delete, 'members/secondary_emails/resend_verification_emails': members_secondary_emails_resend_verification_emails, 'members/send_welcome_email': members_send_welcome_email, 'members/set_admin_permissions:2': members_set_admin_permissions_v2, 'members/set_admin_permissions': members_set_admin_permissions, 'members/set_profile:2': members_set_profile_v2, 'members/set_profile': members_set_profile, 'members/set_profile_photo:2': members_set_profile_photo_v2, 'members/set_profile_photo': members_set_profile_photo, 'members/suspend': members_suspend, 'members/unsuspend': members_unsuspend, 'namespaces/list': namespaces_list, 'namespaces/list/continue': namespaces_list_continue, 'properties/template/add': properties_template_add, 'properties/template/get': properties_template_get, 'properties/template/list': properties_template_list, 'properties/template/update': properties_template_update, 'reports/get_activity': reports_get_activity, 'reports/get_devices': reports_get_devices, 'reports/get_membership': reports_get_membership, 'reports/get_storage': reports_get_storage, 'sharing_allowlist/add': sharing_allowlist_add, 'sharing_allowlist/list': sharing_allowlist_list, 'sharing_allowlist/list/continue': sharing_allowlist_list_continue, 'sharing_allowlist/remove': sharing_allowlist_remove, 'team_folder/activate': team_folder_activate, 'team_folder/archive': team_folder_archive, 'team_folder/archive/check': team_folder_archive_check, 'team_folder/create': team_folder_create, 'team_folder/get_info': team_folder_get_info, 'team_folder/list': team_folder_list, 'team_folder/list/continue': team_folder_list_continue, 'team_folder/permanently_delete': team_folder_permanently_delete, 'team_folder/rename': team_folder_rename, 'team_folder/update_sync_settings': team_folder_update_sync_settings, 'token/get_authenticated_admin': token_get_authenticated_admin, } dropbox-sdk-python-12.0.2/dropbox/team_common.py000066400000000000000000000305171462737130500217120ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv from dropbox import common class GroupManagementType(bb.Union): """ The group type determines how a group is managed. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_common.GroupManagementType.user_managed: A group which is managed by selected users. :ivar team_common.GroupManagementType.company_managed: A group which is managed by team admins only. :ivar team_common.GroupManagementType.system_managed: A group which is managed automatically by Dropbox. """ _catch_all = 'other' # Attribute is overwritten below the class definition user_managed = None # Attribute is overwritten below the class definition company_managed = None # Attribute is overwritten below the class definition system_managed = None # Attribute is overwritten below the class definition other = None def is_user_managed(self): """ Check if the union tag is ``user_managed``. :rtype: bool """ return self._tag == 'user_managed' def is_company_managed(self): """ Check if the union tag is ``company_managed``. :rtype: bool """ return self._tag == 'company_managed' def is_system_managed(self): """ Check if the union tag is ``system_managed``. :rtype: bool """ return self._tag == 'system_managed' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupManagementType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupManagementType_validator = bv.Union(GroupManagementType) class GroupSummary(bb.Struct): """ Information about a group. :ivar team_common.GroupSummary.group_external_id: External ID of group. This is an arbitrary ID that an admin can attach to a group. :ivar team_common.GroupSummary.member_count: The number of members in the group. :ivar team_common.GroupSummary.group_management_type: Who is allowed to manage the group. """ __slots__ = [ '_group_name_value', '_group_id_value', '_group_external_id_value', '_member_count_value', '_group_management_type_value', ] _has_required_fields = True def __init__(self, group_name=None, group_id=None, group_management_type=None, group_external_id=None, member_count=None): self._group_name_value = bb.NOT_SET self._group_id_value = bb.NOT_SET self._group_external_id_value = bb.NOT_SET self._member_count_value = bb.NOT_SET self._group_management_type_value = bb.NOT_SET if group_name is not None: self.group_name = group_name if group_id is not None: self.group_id = group_id if group_external_id is not None: self.group_external_id = group_external_id if member_count is not None: self.member_count = member_count if group_management_type is not None: self.group_management_type = group_management_type # Instance attribute type: str (validator is set below) group_name = bb.Attribute("group_name") # Instance attribute type: str (validator is set below) group_id = bb.Attribute("group_id") # Instance attribute type: str (validator is set below) group_external_id = bb.Attribute("group_external_id", nullable=True) # Instance attribute type: int (validator is set below) member_count = bb.Attribute("member_count", nullable=True) # Instance attribute type: GroupManagementType (validator is set below) group_management_type = bb.Attribute("group_management_type", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupSummary, self)._process_custom_annotations(annotation_type, field_path, processor) GroupSummary_validator = bv.Struct(GroupSummary) class GroupType(bb.Union): """ The group type determines how a group is created and managed. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_common.GroupType.team: A group to which team members are automatically added. Applicable to `team folders `_ only. :ivar team_common.GroupType.user_managed: A group is created and managed by a user. """ _catch_all = 'other' # Attribute is overwritten below the class definition team = None # Attribute is overwritten below the class definition user_managed = None # Attribute is overwritten below the class definition other = None def is_team(self): """ Check if the union tag is ``team``. :rtype: bool """ return self._tag == 'team' def is_user_managed(self): """ Check if the union tag is ``user_managed``. :rtype: bool """ return self._tag == 'user_managed' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupType_validator = bv.Union(GroupType) class MemberSpaceLimitType(bb.Union): """ The type of the space limit imposed on a team member. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_common.MemberSpaceLimitType.off: The team member does not have imposed space limit. :ivar team_common.MemberSpaceLimitType.alert_only: The team member has soft imposed space limit - the limit is used for display and for notifications. :ivar team_common.MemberSpaceLimitType.stop_sync: The team member has hard imposed space limit - Dropbox file sync will stop after the limit is reached. """ _catch_all = 'other' # Attribute is overwritten below the class definition off = None # Attribute is overwritten below the class definition alert_only = None # Attribute is overwritten below the class definition stop_sync = None # Attribute is overwritten below the class definition other = None def is_off(self): """ Check if the union tag is ``off``. :rtype: bool """ return self._tag == 'off' def is_alert_only(self): """ Check if the union tag is ``alert_only``. :rtype: bool """ return self._tag == 'alert_only' def is_stop_sync(self): """ Check if the union tag is ``stop_sync``. :rtype: bool """ return self._tag == 'stop_sync' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitType_validator = bv.Union(MemberSpaceLimitType) class TimeRange(bb.Struct): """ Time range. :ivar team_common.TimeRange.start_time: Optional starting time (inclusive). :ivar team_common.TimeRange.end_time: Optional ending time (exclusive). """ __slots__ = [ '_start_time_value', '_end_time_value', ] _has_required_fields = False def __init__(self, start_time=None, end_time=None): self._start_time_value = bb.NOT_SET self._end_time_value = bb.NOT_SET if start_time is not None: self.start_time = start_time if end_time is not None: self.end_time = end_time # Instance attribute type: datetime.datetime (validator is set below) start_time = bb.Attribute("start_time", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) end_time = bb.Attribute("end_time", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TimeRange, self)._process_custom_annotations(annotation_type, field_path, processor) TimeRange_validator = bv.Struct(TimeRange) GroupExternalId_validator = bv.String() GroupId_validator = bv.String() MemberExternalId_validator = bv.String(max_length=64) ResellerId_validator = bv.String() TeamId_validator = bv.String() TeamMemberId_validator = bv.String() GroupManagementType._user_managed_validator = bv.Void() GroupManagementType._company_managed_validator = bv.Void() GroupManagementType._system_managed_validator = bv.Void() GroupManagementType._other_validator = bv.Void() GroupManagementType._tagmap = { 'user_managed': GroupManagementType._user_managed_validator, 'company_managed': GroupManagementType._company_managed_validator, 'system_managed': GroupManagementType._system_managed_validator, 'other': GroupManagementType._other_validator, } GroupManagementType.user_managed = GroupManagementType('user_managed') GroupManagementType.company_managed = GroupManagementType('company_managed') GroupManagementType.system_managed = GroupManagementType('system_managed') GroupManagementType.other = GroupManagementType('other') GroupSummary.group_name.validator = bv.String() GroupSummary.group_id.validator = GroupId_validator GroupSummary.group_external_id.validator = bv.Nullable(GroupExternalId_validator) GroupSummary.member_count.validator = bv.Nullable(bv.UInt32()) GroupSummary.group_management_type.validator = GroupManagementType_validator GroupSummary._all_field_names_ = set([ 'group_name', 'group_id', 'group_external_id', 'member_count', 'group_management_type', ]) GroupSummary._all_fields_ = [ ('group_name', GroupSummary.group_name.validator), ('group_id', GroupSummary.group_id.validator), ('group_external_id', GroupSummary.group_external_id.validator), ('member_count', GroupSummary.member_count.validator), ('group_management_type', GroupSummary.group_management_type.validator), ] GroupType._team_validator = bv.Void() GroupType._user_managed_validator = bv.Void() GroupType._other_validator = bv.Void() GroupType._tagmap = { 'team': GroupType._team_validator, 'user_managed': GroupType._user_managed_validator, 'other': GroupType._other_validator, } GroupType.team = GroupType('team') GroupType.user_managed = GroupType('user_managed') GroupType.other = GroupType('other') MemberSpaceLimitType._off_validator = bv.Void() MemberSpaceLimitType._alert_only_validator = bv.Void() MemberSpaceLimitType._stop_sync_validator = bv.Void() MemberSpaceLimitType._other_validator = bv.Void() MemberSpaceLimitType._tagmap = { 'off': MemberSpaceLimitType._off_validator, 'alert_only': MemberSpaceLimitType._alert_only_validator, 'stop_sync': MemberSpaceLimitType._stop_sync_validator, 'other': MemberSpaceLimitType._other_validator, } MemberSpaceLimitType.off = MemberSpaceLimitType('off') MemberSpaceLimitType.alert_only = MemberSpaceLimitType('alert_only') MemberSpaceLimitType.stop_sync = MemberSpaceLimitType('stop_sync') MemberSpaceLimitType.other = MemberSpaceLimitType('other') TimeRange.start_time.validator = bv.Nullable(common.DropboxTimestamp_validator) TimeRange.end_time.validator = bv.Nullable(common.DropboxTimestamp_validator) TimeRange._all_field_names_ = set([ 'start_time', 'end_time', ]) TimeRange._all_fields_ = [ ('start_time', TimeRange.start_time.validator), ('end_time', TimeRange.end_time.validator), ] ROUTES = { } dropbox-sdk-python-12.0.2/dropbox/team_log.py000066400000000000000000144060661462737130500212160ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv from dropbox import common from dropbox import file_requests from dropbox import files from dropbox import sharing from dropbox import team from dropbox import team_common from dropbox import team_policies from dropbox import users_common class AccessMethodLogInfo(bb.Union): """ Indicates the method in which the action was performed. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar WebSessionLogInfo AccessMethodLogInfo.admin_console: Admin console session details. :ivar ApiSessionLogInfo AccessMethodLogInfo.api: Api session details. :ivar WebSessionLogInfo AccessMethodLogInfo.content_manager: Content manager session details. :ivar SessionLogInfo AccessMethodLogInfo.end_user: End user session details. :ivar WebSessionLogInfo AccessMethodLogInfo.enterprise_console: Enterprise console session details. :ivar WebSessionLogInfo AccessMethodLogInfo.sign_in_as: Sign in as session details. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def admin_console(cls, val): """ Create an instance of this class set to the ``admin_console`` tag with value ``val``. :param WebSessionLogInfo val: :rtype: AccessMethodLogInfo """ return cls('admin_console', val) @classmethod def api(cls, val): """ Create an instance of this class set to the ``api`` tag with value ``val``. :param ApiSessionLogInfo val: :rtype: AccessMethodLogInfo """ return cls('api', val) @classmethod def content_manager(cls, val): """ Create an instance of this class set to the ``content_manager`` tag with value ``val``. :param WebSessionLogInfo val: :rtype: AccessMethodLogInfo """ return cls('content_manager', val) @classmethod def end_user(cls, val): """ Create an instance of this class set to the ``end_user`` tag with value ``val``. :param SessionLogInfo val: :rtype: AccessMethodLogInfo """ return cls('end_user', val) @classmethod def enterprise_console(cls, val): """ Create an instance of this class set to the ``enterprise_console`` tag with value ``val``. :param WebSessionLogInfo val: :rtype: AccessMethodLogInfo """ return cls('enterprise_console', val) @classmethod def sign_in_as(cls, val): """ Create an instance of this class set to the ``sign_in_as`` tag with value ``val``. :param WebSessionLogInfo val: :rtype: AccessMethodLogInfo """ return cls('sign_in_as', val) def is_admin_console(self): """ Check if the union tag is ``admin_console``. :rtype: bool """ return self._tag == 'admin_console' def is_api(self): """ Check if the union tag is ``api``. :rtype: bool """ return self._tag == 'api' def is_content_manager(self): """ Check if the union tag is ``content_manager``. :rtype: bool """ return self._tag == 'content_manager' def is_end_user(self): """ Check if the union tag is ``end_user``. :rtype: bool """ return self._tag == 'end_user' def is_enterprise_console(self): """ Check if the union tag is ``enterprise_console``. :rtype: bool """ return self._tag == 'enterprise_console' def is_sign_in_as(self): """ Check if the union tag is ``sign_in_as``. :rtype: bool """ return self._tag == 'sign_in_as' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_admin_console(self): """ Admin console session details. Only call this if :meth:`is_admin_console` is true. :rtype: WebSessionLogInfo """ if not self.is_admin_console(): raise AttributeError("tag 'admin_console' not set") return self._value def get_api(self): """ Api session details. Only call this if :meth:`is_api` is true. :rtype: ApiSessionLogInfo """ if not self.is_api(): raise AttributeError("tag 'api' not set") return self._value def get_content_manager(self): """ Content manager session details. Only call this if :meth:`is_content_manager` is true. :rtype: WebSessionLogInfo """ if not self.is_content_manager(): raise AttributeError("tag 'content_manager' not set") return self._value def get_end_user(self): """ End user session details. Only call this if :meth:`is_end_user` is true. :rtype: SessionLogInfo """ if not self.is_end_user(): raise AttributeError("tag 'end_user' not set") return self._value def get_enterprise_console(self): """ Enterprise console session details. Only call this if :meth:`is_enterprise_console` is true. :rtype: WebSessionLogInfo """ if not self.is_enterprise_console(): raise AttributeError("tag 'enterprise_console' not set") return self._value def get_sign_in_as(self): """ Sign in as session details. Only call this if :meth:`is_sign_in_as` is true. :rtype: WebSessionLogInfo """ if not self.is_sign_in_as(): raise AttributeError("tag 'sign_in_as' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccessMethodLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) AccessMethodLogInfo_validator = bv.Union(AccessMethodLogInfo) class AccountCaptureAvailability(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition available = None # Attribute is overwritten below the class definition unavailable = None # Attribute is overwritten below the class definition other = None def is_available(self): """ Check if the union tag is ``available``. :rtype: bool """ return self._tag == 'available' def is_unavailable(self): """ Check if the union tag is ``unavailable``. :rtype: bool """ return self._tag == 'unavailable' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCaptureAvailability, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCaptureAvailability_validator = bv.Union(AccountCaptureAvailability) class AccountCaptureChangeAvailabilityDetails(bb.Struct): """ Granted/revoked option to enable account capture on team domains. :ivar team_log.AccountCaptureChangeAvailabilityDetails.new_value: New account capture availabilty value. :ivar team_log.AccountCaptureChangeAvailabilityDetails.previous_value: Previous account capture availabilty value. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: AccountCaptureAvailability (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: AccountCaptureAvailability (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCaptureChangeAvailabilityDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCaptureChangeAvailabilityDetails_validator = bv.Struct(AccountCaptureChangeAvailabilityDetails) class AccountCaptureChangeAvailabilityType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCaptureChangeAvailabilityType, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCaptureChangeAvailabilityType_validator = bv.Struct(AccountCaptureChangeAvailabilityType) class AccountCaptureChangePolicyDetails(bb.Struct): """ Changed account capture setting on team domain. :ivar team_log.AccountCaptureChangePolicyDetails.new_value: New account capture policy. :ivar team_log.AccountCaptureChangePolicyDetails.previous_value: Previous account capture policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: AccountCapturePolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: AccountCapturePolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCaptureChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCaptureChangePolicyDetails_validator = bv.Struct(AccountCaptureChangePolicyDetails) class AccountCaptureChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCaptureChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCaptureChangePolicyType_validator = bv.Struct(AccountCaptureChangePolicyType) class AccountCaptureMigrateAccountDetails(bb.Struct): """ Account-captured user migrated account to team. :ivar team_log.AccountCaptureMigrateAccountDetails.domain_name: Domain name. """ __slots__ = [ '_domain_name_value', ] _has_required_fields = True def __init__(self, domain_name=None): self._domain_name_value = bb.NOT_SET if domain_name is not None: self.domain_name = domain_name # Instance attribute type: str (validator is set below) domain_name = bb.Attribute("domain_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCaptureMigrateAccountDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCaptureMigrateAccountDetails_validator = bv.Struct(AccountCaptureMigrateAccountDetails) class AccountCaptureMigrateAccountType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCaptureMigrateAccountType, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCaptureMigrateAccountType_validator = bv.Struct(AccountCaptureMigrateAccountType) class AccountCaptureNotificationEmailsSentDetails(bb.Struct): """ Sent account capture email to all unmanaged members. :ivar team_log.AccountCaptureNotificationEmailsSentDetails.domain_name: Domain name. :ivar team_log.AccountCaptureNotificationEmailsSentDetails.notification_type: Account-capture email notification type. """ __slots__ = [ '_domain_name_value', '_notification_type_value', ] _has_required_fields = True def __init__(self, domain_name=None, notification_type=None): self._domain_name_value = bb.NOT_SET self._notification_type_value = bb.NOT_SET if domain_name is not None: self.domain_name = domain_name if notification_type is not None: self.notification_type = notification_type # Instance attribute type: str (validator is set below) domain_name = bb.Attribute("domain_name") # Instance attribute type: AccountCaptureNotificationType (validator is set below) notification_type = bb.Attribute("notification_type", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCaptureNotificationEmailsSentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCaptureNotificationEmailsSentDetails_validator = bv.Struct(AccountCaptureNotificationEmailsSentDetails) class AccountCaptureNotificationEmailsSentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCaptureNotificationEmailsSentType, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCaptureNotificationEmailsSentType_validator = bv.Struct(AccountCaptureNotificationEmailsSentType) class AccountCaptureNotificationType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition actionable_notification = None # Attribute is overwritten below the class definition proactive_warning_notification = None # Attribute is overwritten below the class definition other = None def is_actionable_notification(self): """ Check if the union tag is ``actionable_notification``. :rtype: bool """ return self._tag == 'actionable_notification' def is_proactive_warning_notification(self): """ Check if the union tag is ``proactive_warning_notification``. :rtype: bool """ return self._tag == 'proactive_warning_notification' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCaptureNotificationType, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCaptureNotificationType_validator = bv.Union(AccountCaptureNotificationType) class AccountCapturePolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition all_users = None # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition invited_users = None # Attribute is overwritten below the class definition prevent_personal_creation = None # Attribute is overwritten below the class definition other = None def is_all_users(self): """ Check if the union tag is ``all_users``. :rtype: bool """ return self._tag == 'all_users' def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_invited_users(self): """ Check if the union tag is ``invited_users``. :rtype: bool """ return self._tag == 'invited_users' def is_prevent_personal_creation(self): """ Check if the union tag is ``prevent_personal_creation``. :rtype: bool """ return self._tag == 'prevent_personal_creation' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCapturePolicy, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCapturePolicy_validator = bv.Union(AccountCapturePolicy) class AccountCaptureRelinquishAccountDetails(bb.Struct): """ Account-captured user changed account email to personal email. :ivar team_log.AccountCaptureRelinquishAccountDetails.domain_name: Domain name. """ __slots__ = [ '_domain_name_value', ] _has_required_fields = True def __init__(self, domain_name=None): self._domain_name_value = bb.NOT_SET if domain_name is not None: self.domain_name = domain_name # Instance attribute type: str (validator is set below) domain_name = bb.Attribute("domain_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCaptureRelinquishAccountDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCaptureRelinquishAccountDetails_validator = bv.Struct(AccountCaptureRelinquishAccountDetails) class AccountCaptureRelinquishAccountType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountCaptureRelinquishAccountType, self)._process_custom_annotations(annotation_type, field_path, processor) AccountCaptureRelinquishAccountType_validator = bv.Struct(AccountCaptureRelinquishAccountType) class AccountLockOrUnlockedDetails(bb.Struct): """ Unlocked/locked account after failed sign in attempts. :ivar team_log.AccountLockOrUnlockedDetails.previous_value: The previous account status. :ivar team_log.AccountLockOrUnlockedDetails.new_value: The new account status. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: AccountState (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: AccountState (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountLockOrUnlockedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AccountLockOrUnlockedDetails_validator = bv.Struct(AccountLockOrUnlockedDetails) class AccountLockOrUnlockedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountLockOrUnlockedType, self)._process_custom_annotations(annotation_type, field_path, processor) AccountLockOrUnlockedType_validator = bv.Struct(AccountLockOrUnlockedType) class AccountState(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition locked = None # Attribute is overwritten below the class definition unlocked = None # Attribute is overwritten below the class definition other = None def is_locked(self): """ Check if the union tag is ``locked``. :rtype: bool """ return self._tag == 'locked' def is_unlocked(self): """ Check if the union tag is ``unlocked``. :rtype: bool """ return self._tag == 'unlocked' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountState, self)._process_custom_annotations(annotation_type, field_path, processor) AccountState_validator = bv.Union(AccountState) class ActionDetails(bb.Union): """ Additional information indicating the action taken that caused status change. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar MemberRemoveActionType ActionDetails.remove_action: Define how the user was removed from the team. :ivar TeamInviteDetails ActionDetails.team_invite_details: Additional information relevant when someone is invited to the team. :ivar JoinTeamDetails ActionDetails.team_join_details: Additional information relevant when a new member joins the team. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def remove_action(cls, val): """ Create an instance of this class set to the ``remove_action`` tag with value ``val``. :param MemberRemoveActionType val: :rtype: ActionDetails """ return cls('remove_action', val) @classmethod def team_invite_details(cls, val): """ Create an instance of this class set to the ``team_invite_details`` tag with value ``val``. :param TeamInviteDetails val: :rtype: ActionDetails """ return cls('team_invite_details', val) @classmethod def team_join_details(cls, val): """ Create an instance of this class set to the ``team_join_details`` tag with value ``val``. :param JoinTeamDetails val: :rtype: ActionDetails """ return cls('team_join_details', val) def is_remove_action(self): """ Check if the union tag is ``remove_action``. :rtype: bool """ return self._tag == 'remove_action' def is_team_invite_details(self): """ Check if the union tag is ``team_invite_details``. :rtype: bool """ return self._tag == 'team_invite_details' def is_team_join_details(self): """ Check if the union tag is ``team_join_details``. :rtype: bool """ return self._tag == 'team_join_details' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_remove_action(self): """ Define how the user was removed from the team. Only call this if :meth:`is_remove_action` is true. :rtype: MemberRemoveActionType """ if not self.is_remove_action(): raise AttributeError("tag 'remove_action' not set") return self._value def get_team_invite_details(self): """ Additional information relevant when someone is invited to the team. Only call this if :meth:`is_team_invite_details` is true. :rtype: TeamInviteDetails """ if not self.is_team_invite_details(): raise AttributeError("tag 'team_invite_details' not set") return self._value def get_team_join_details(self): """ Additional information relevant when a new member joins the team. Only call this if :meth:`is_team_join_details` is true. :rtype: JoinTeamDetails """ if not self.is_team_join_details(): raise AttributeError("tag 'team_join_details' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ActionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ActionDetails_validator = bv.Union(ActionDetails) class ActorLogInfo(bb.Union): """ The entity who performed the action. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar UserLogInfo ActorLogInfo.admin: The admin who did the action. :ivar team_log.ActorLogInfo.anonymous: Anonymous actor. :ivar AppLogInfo ActorLogInfo.app: The application who did the action. :ivar team_log.ActorLogInfo.dropbox: Action done by Dropbox. :ivar ResellerLogInfo ActorLogInfo.reseller: Action done by reseller. :ivar UserLogInfo ActorLogInfo.user: The user who did the action. """ _catch_all = 'other' # Attribute is overwritten below the class definition anonymous = None # Attribute is overwritten below the class definition dropbox = None # Attribute is overwritten below the class definition other = None @classmethod def admin(cls, val): """ Create an instance of this class set to the ``admin`` tag with value ``val``. :param UserLogInfo val: :rtype: ActorLogInfo """ return cls('admin', val) @classmethod def app(cls, val): """ Create an instance of this class set to the ``app`` tag with value ``val``. :param AppLogInfo val: :rtype: ActorLogInfo """ return cls('app', val) @classmethod def reseller(cls, val): """ Create an instance of this class set to the ``reseller`` tag with value ``val``. :param ResellerLogInfo val: :rtype: ActorLogInfo """ return cls('reseller', val) @classmethod def user(cls, val): """ Create an instance of this class set to the ``user`` tag with value ``val``. :param UserLogInfo val: :rtype: ActorLogInfo """ return cls('user', val) def is_admin(self): """ Check if the union tag is ``admin``. :rtype: bool """ return self._tag == 'admin' def is_anonymous(self): """ Check if the union tag is ``anonymous``. :rtype: bool """ return self._tag == 'anonymous' def is_app(self): """ Check if the union tag is ``app``. :rtype: bool """ return self._tag == 'app' def is_dropbox(self): """ Check if the union tag is ``dropbox``. :rtype: bool """ return self._tag == 'dropbox' def is_reseller(self): """ Check if the union tag is ``reseller``. :rtype: bool """ return self._tag == 'reseller' def is_user(self): """ Check if the union tag is ``user``. :rtype: bool """ return self._tag == 'user' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_admin(self): """ The admin who did the action. Only call this if :meth:`is_admin` is true. :rtype: UserLogInfo """ if not self.is_admin(): raise AttributeError("tag 'admin' not set") return self._value def get_app(self): """ The application who did the action. Only call this if :meth:`is_app` is true. :rtype: AppLogInfo """ if not self.is_app(): raise AttributeError("tag 'app' not set") return self._value def get_reseller(self): """ Action done by reseller. Only call this if :meth:`is_reseller` is true. :rtype: ResellerLogInfo """ if not self.is_reseller(): raise AttributeError("tag 'reseller' not set") return self._value def get_user(self): """ The user who did the action. Only call this if :meth:`is_user` is true. :rtype: UserLogInfo """ if not self.is_user(): raise AttributeError("tag 'user' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ActorLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) ActorLogInfo_validator = bv.Union(ActorLogInfo) class AdminAlertCategoryEnum(bb.Union): """ Alert category This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition account_takeover = None # Attribute is overwritten below the class definition data_loss_protection = None # Attribute is overwritten below the class definition information_governance = None # Attribute is overwritten below the class definition malware_sharing = None # Attribute is overwritten below the class definition massive_file_operation = None # Attribute is overwritten below the class definition na = None # Attribute is overwritten below the class definition threat_management = None # Attribute is overwritten below the class definition other = None def is_account_takeover(self): """ Check if the union tag is ``account_takeover``. :rtype: bool """ return self._tag == 'account_takeover' def is_data_loss_protection(self): """ Check if the union tag is ``data_loss_protection``. :rtype: bool """ return self._tag == 'data_loss_protection' def is_information_governance(self): """ Check if the union tag is ``information_governance``. :rtype: bool """ return self._tag == 'information_governance' def is_malware_sharing(self): """ Check if the union tag is ``malware_sharing``. :rtype: bool """ return self._tag == 'malware_sharing' def is_massive_file_operation(self): """ Check if the union tag is ``massive_file_operation``. :rtype: bool """ return self._tag == 'massive_file_operation' def is_na(self): """ Check if the union tag is ``na``. :rtype: bool """ return self._tag == 'na' def is_threat_management(self): """ Check if the union tag is ``threat_management``. :rtype: bool """ return self._tag == 'threat_management' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminAlertCategoryEnum, self)._process_custom_annotations(annotation_type, field_path, processor) AdminAlertCategoryEnum_validator = bv.Union(AdminAlertCategoryEnum) class AdminAlertGeneralStateEnum(bb.Union): """ Alert state This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition active = None # Attribute is overwritten below the class definition dismissed = None # Attribute is overwritten below the class definition in_progress = None # Attribute is overwritten below the class definition na = None # Attribute is overwritten below the class definition resolved = None # Attribute is overwritten below the class definition other = None def is_active(self): """ Check if the union tag is ``active``. :rtype: bool """ return self._tag == 'active' def is_dismissed(self): """ Check if the union tag is ``dismissed``. :rtype: bool """ return self._tag == 'dismissed' def is_in_progress(self): """ Check if the union tag is ``in_progress``. :rtype: bool """ return self._tag == 'in_progress' def is_na(self): """ Check if the union tag is ``na``. :rtype: bool """ return self._tag == 'na' def is_resolved(self): """ Check if the union tag is ``resolved``. :rtype: bool """ return self._tag == 'resolved' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminAlertGeneralStateEnum, self)._process_custom_annotations(annotation_type, field_path, processor) AdminAlertGeneralStateEnum_validator = bv.Union(AdminAlertGeneralStateEnum) class AdminAlertSeverityEnum(bb.Union): """ Alert severity This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition high = None # Attribute is overwritten below the class definition info = None # Attribute is overwritten below the class definition low = None # Attribute is overwritten below the class definition medium = None # Attribute is overwritten below the class definition na = None # Attribute is overwritten below the class definition other = None def is_high(self): """ Check if the union tag is ``high``. :rtype: bool """ return self._tag == 'high' def is_info(self): """ Check if the union tag is ``info``. :rtype: bool """ return self._tag == 'info' def is_low(self): """ Check if the union tag is ``low``. :rtype: bool """ return self._tag == 'low' def is_medium(self): """ Check if the union tag is ``medium``. :rtype: bool """ return self._tag == 'medium' def is_na(self): """ Check if the union tag is ``na``. :rtype: bool """ return self._tag == 'na' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminAlertSeverityEnum, self)._process_custom_annotations(annotation_type, field_path, processor) AdminAlertSeverityEnum_validator = bv.Union(AdminAlertSeverityEnum) class AdminAlertingAlertConfiguration(bb.Struct): """ Alert configurations :ivar team_log.AdminAlertingAlertConfiguration.alert_state: Alert state. :ivar team_log.AdminAlertingAlertConfiguration.sensitivity_level: Sensitivity level. :ivar team_log.AdminAlertingAlertConfiguration.recipients_settings: Recipient settings. :ivar team_log.AdminAlertingAlertConfiguration.text: Text. :ivar team_log.AdminAlertingAlertConfiguration.excluded_file_extensions: Excluded file extensions. """ __slots__ = [ '_alert_state_value', '_sensitivity_level_value', '_recipients_settings_value', '_text_value', '_excluded_file_extensions_value', ] _has_required_fields = False def __init__(self, alert_state=None, sensitivity_level=None, recipients_settings=None, text=None, excluded_file_extensions=None): self._alert_state_value = bb.NOT_SET self._sensitivity_level_value = bb.NOT_SET self._recipients_settings_value = bb.NOT_SET self._text_value = bb.NOT_SET self._excluded_file_extensions_value = bb.NOT_SET if alert_state is not None: self.alert_state = alert_state if sensitivity_level is not None: self.sensitivity_level = sensitivity_level if recipients_settings is not None: self.recipients_settings = recipients_settings if text is not None: self.text = text if excluded_file_extensions is not None: self.excluded_file_extensions = excluded_file_extensions # Instance attribute type: AdminAlertingAlertStatePolicy (validator is set below) alert_state = bb.Attribute("alert_state", nullable=True, user_defined=True) # Instance attribute type: AdminAlertingAlertSensitivity (validator is set below) sensitivity_level = bb.Attribute("sensitivity_level", nullable=True, user_defined=True) # Instance attribute type: RecipientsConfiguration (validator is set below) recipients_settings = bb.Attribute("recipients_settings", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) text = bb.Attribute("text", nullable=True) # Instance attribute type: str (validator is set below) excluded_file_extensions = bb.Attribute("excluded_file_extensions", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminAlertingAlertConfiguration, self)._process_custom_annotations(annotation_type, field_path, processor) AdminAlertingAlertConfiguration_validator = bv.Struct(AdminAlertingAlertConfiguration) class AdminAlertingAlertSensitivity(bb.Union): """ Alert sensitivity This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition high = None # Attribute is overwritten below the class definition highest = None # Attribute is overwritten below the class definition invalid = None # Attribute is overwritten below the class definition low = None # Attribute is overwritten below the class definition lowest = None # Attribute is overwritten below the class definition medium = None # Attribute is overwritten below the class definition other = None def is_high(self): """ Check if the union tag is ``high``. :rtype: bool """ return self._tag == 'high' def is_highest(self): """ Check if the union tag is ``highest``. :rtype: bool """ return self._tag == 'highest' def is_invalid(self): """ Check if the union tag is ``invalid``. :rtype: bool """ return self._tag == 'invalid' def is_low(self): """ Check if the union tag is ``low``. :rtype: bool """ return self._tag == 'low' def is_lowest(self): """ Check if the union tag is ``lowest``. :rtype: bool """ return self._tag == 'lowest' def is_medium(self): """ Check if the union tag is ``medium``. :rtype: bool """ return self._tag == 'medium' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminAlertingAlertSensitivity, self)._process_custom_annotations(annotation_type, field_path, processor) AdminAlertingAlertSensitivity_validator = bv.Union(AdminAlertingAlertSensitivity) class AdminAlertingAlertStateChangedDetails(bb.Struct): """ Changed an alert state. :ivar team_log.AdminAlertingAlertStateChangedDetails.alert_name: Alert name. :ivar team_log.AdminAlertingAlertStateChangedDetails.alert_severity: Alert severity. :ivar team_log.AdminAlertingAlertStateChangedDetails.alert_category: Alert category. :ivar team_log.AdminAlertingAlertStateChangedDetails.alert_instance_id: Alert ID. :ivar team_log.AdminAlertingAlertStateChangedDetails.previous_value: Alert state before the change. :ivar team_log.AdminAlertingAlertStateChangedDetails.new_value: Alert state after the change. """ __slots__ = [ '_alert_name_value', '_alert_severity_value', '_alert_category_value', '_alert_instance_id_value', '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, alert_name=None, alert_severity=None, alert_category=None, alert_instance_id=None, previous_value=None, new_value=None): self._alert_name_value = bb.NOT_SET self._alert_severity_value = bb.NOT_SET self._alert_category_value = bb.NOT_SET self._alert_instance_id_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if alert_name is not None: self.alert_name = alert_name if alert_severity is not None: self.alert_severity = alert_severity if alert_category is not None: self.alert_category = alert_category if alert_instance_id is not None: self.alert_instance_id = alert_instance_id if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) alert_name = bb.Attribute("alert_name") # Instance attribute type: AdminAlertSeverityEnum (validator is set below) alert_severity = bb.Attribute("alert_severity", user_defined=True) # Instance attribute type: AdminAlertCategoryEnum (validator is set below) alert_category = bb.Attribute("alert_category", user_defined=True) # Instance attribute type: str (validator is set below) alert_instance_id = bb.Attribute("alert_instance_id") # Instance attribute type: AdminAlertGeneralStateEnum (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: AdminAlertGeneralStateEnum (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminAlertingAlertStateChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AdminAlertingAlertStateChangedDetails_validator = bv.Struct(AdminAlertingAlertStateChangedDetails) class AdminAlertingAlertStateChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminAlertingAlertStateChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) AdminAlertingAlertStateChangedType_validator = bv.Struct(AdminAlertingAlertStateChangedType) class AdminAlertingAlertStatePolicy(bb.Union): """ Policy for controlling whether an alert can be triggered or not This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition off = None # Attribute is overwritten below the class definition on = None # Attribute is overwritten below the class definition other = None def is_off(self): """ Check if the union tag is ``off``. :rtype: bool """ return self._tag == 'off' def is_on(self): """ Check if the union tag is ``on``. :rtype: bool """ return self._tag == 'on' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminAlertingAlertStatePolicy, self)._process_custom_annotations(annotation_type, field_path, processor) AdminAlertingAlertStatePolicy_validator = bv.Union(AdminAlertingAlertStatePolicy) class AdminAlertingChangedAlertConfigDetails(bb.Struct): """ Changed an alert setting. :ivar team_log.AdminAlertingChangedAlertConfigDetails.alert_name: Alert Name. :ivar team_log.AdminAlertingChangedAlertConfigDetails.previous_alert_config: Previous alert configuration. :ivar team_log.AdminAlertingChangedAlertConfigDetails.new_alert_config: New alert configuration. """ __slots__ = [ '_alert_name_value', '_previous_alert_config_value', '_new_alert_config_value', ] _has_required_fields = True def __init__(self, alert_name=None, previous_alert_config=None, new_alert_config=None): self._alert_name_value = bb.NOT_SET self._previous_alert_config_value = bb.NOT_SET self._new_alert_config_value = bb.NOT_SET if alert_name is not None: self.alert_name = alert_name if previous_alert_config is not None: self.previous_alert_config = previous_alert_config if new_alert_config is not None: self.new_alert_config = new_alert_config # Instance attribute type: str (validator is set below) alert_name = bb.Attribute("alert_name") # Instance attribute type: AdminAlertingAlertConfiguration (validator is set below) previous_alert_config = bb.Attribute("previous_alert_config", user_defined=True) # Instance attribute type: AdminAlertingAlertConfiguration (validator is set below) new_alert_config = bb.Attribute("new_alert_config", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminAlertingChangedAlertConfigDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AdminAlertingChangedAlertConfigDetails_validator = bv.Struct(AdminAlertingChangedAlertConfigDetails) class AdminAlertingChangedAlertConfigType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminAlertingChangedAlertConfigType, self)._process_custom_annotations(annotation_type, field_path, processor) AdminAlertingChangedAlertConfigType_validator = bv.Struct(AdminAlertingChangedAlertConfigType) class AdminAlertingTriggeredAlertDetails(bb.Struct): """ Triggered security alert. :ivar team_log.AdminAlertingTriggeredAlertDetails.alert_name: Alert name. :ivar team_log.AdminAlertingTriggeredAlertDetails.alert_severity: Alert severity. :ivar team_log.AdminAlertingTriggeredAlertDetails.alert_category: Alert category. :ivar team_log.AdminAlertingTriggeredAlertDetails.alert_instance_id: Alert ID. """ __slots__ = [ '_alert_name_value', '_alert_severity_value', '_alert_category_value', '_alert_instance_id_value', ] _has_required_fields = True def __init__(self, alert_name=None, alert_severity=None, alert_category=None, alert_instance_id=None): self._alert_name_value = bb.NOT_SET self._alert_severity_value = bb.NOT_SET self._alert_category_value = bb.NOT_SET self._alert_instance_id_value = bb.NOT_SET if alert_name is not None: self.alert_name = alert_name if alert_severity is not None: self.alert_severity = alert_severity if alert_category is not None: self.alert_category = alert_category if alert_instance_id is not None: self.alert_instance_id = alert_instance_id # Instance attribute type: str (validator is set below) alert_name = bb.Attribute("alert_name") # Instance attribute type: AdminAlertSeverityEnum (validator is set below) alert_severity = bb.Attribute("alert_severity", user_defined=True) # Instance attribute type: AdminAlertCategoryEnum (validator is set below) alert_category = bb.Attribute("alert_category", user_defined=True) # Instance attribute type: str (validator is set below) alert_instance_id = bb.Attribute("alert_instance_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminAlertingTriggeredAlertDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AdminAlertingTriggeredAlertDetails_validator = bv.Struct(AdminAlertingTriggeredAlertDetails) class AdminAlertingTriggeredAlertType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminAlertingTriggeredAlertType, self)._process_custom_annotations(annotation_type, field_path, processor) AdminAlertingTriggeredAlertType_validator = bv.Struct(AdminAlertingTriggeredAlertType) class AdminConsoleAppPermission(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition default_for_listed_apps = None # Attribute is overwritten below the class definition default_for_unlisted_apps = None # Attribute is overwritten below the class definition other = None def is_default_for_listed_apps(self): """ Check if the union tag is ``default_for_listed_apps``. :rtype: bool """ return self._tag == 'default_for_listed_apps' def is_default_for_unlisted_apps(self): """ Check if the union tag is ``default_for_unlisted_apps``. :rtype: bool """ return self._tag == 'default_for_unlisted_apps' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminConsoleAppPermission, self)._process_custom_annotations(annotation_type, field_path, processor) AdminConsoleAppPermission_validator = bv.Union(AdminConsoleAppPermission) class AdminConsoleAppPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition allow = None # Attribute is overwritten below the class definition block = None # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition other = None def is_allow(self): """ Check if the union tag is ``allow``. :rtype: bool """ return self._tag == 'allow' def is_block(self): """ Check if the union tag is ``block``. :rtype: bool """ return self._tag == 'block' def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminConsoleAppPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) AdminConsoleAppPolicy_validator = bv.Union(AdminConsoleAppPolicy) class AdminEmailRemindersChangedDetails(bb.Struct): """ Changed admin reminder settings for requests to join the team. :ivar team_log.AdminEmailRemindersChangedDetails.new_value: To. :ivar team_log.AdminEmailRemindersChangedDetails.previous_value: From. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: AdminEmailRemindersPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: AdminEmailRemindersPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminEmailRemindersChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AdminEmailRemindersChangedDetails_validator = bv.Struct(AdminEmailRemindersChangedDetails) class AdminEmailRemindersChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminEmailRemindersChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) AdminEmailRemindersChangedType_validator = bv.Struct(AdminEmailRemindersChangedType) class AdminEmailRemindersPolicy(bb.Union): """ Policy for deciding whether team admins receive reminder emails for requests to join the team This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminEmailRemindersPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) AdminEmailRemindersPolicy_validator = bv.Union(AdminEmailRemindersPolicy) class AdminRole(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition billing_admin = None # Attribute is overwritten below the class definition compliance_admin = None # Attribute is overwritten below the class definition content_admin = None # Attribute is overwritten below the class definition limited_admin = None # Attribute is overwritten below the class definition member_only = None # Attribute is overwritten below the class definition reporting_admin = None # Attribute is overwritten below the class definition security_admin = None # Attribute is overwritten below the class definition support_admin = None # Attribute is overwritten below the class definition team_admin = None # Attribute is overwritten below the class definition user_management_admin = None # Attribute is overwritten below the class definition other = None def is_billing_admin(self): """ Check if the union tag is ``billing_admin``. :rtype: bool """ return self._tag == 'billing_admin' def is_compliance_admin(self): """ Check if the union tag is ``compliance_admin``. :rtype: bool """ return self._tag == 'compliance_admin' def is_content_admin(self): """ Check if the union tag is ``content_admin``. :rtype: bool """ return self._tag == 'content_admin' def is_limited_admin(self): """ Check if the union tag is ``limited_admin``. :rtype: bool """ return self._tag == 'limited_admin' def is_member_only(self): """ Check if the union tag is ``member_only``. :rtype: bool """ return self._tag == 'member_only' def is_reporting_admin(self): """ Check if the union tag is ``reporting_admin``. :rtype: bool """ return self._tag == 'reporting_admin' def is_security_admin(self): """ Check if the union tag is ``security_admin``. :rtype: bool """ return self._tag == 'security_admin' def is_support_admin(self): """ Check if the union tag is ``support_admin``. :rtype: bool """ return self._tag == 'support_admin' def is_team_admin(self): """ Check if the union tag is ``team_admin``. :rtype: bool """ return self._tag == 'team_admin' def is_user_management_admin(self): """ Check if the union tag is ``user_management_admin``. :rtype: bool """ return self._tag == 'user_management_admin' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AdminRole, self)._process_custom_annotations(annotation_type, field_path, processor) AdminRole_validator = bv.Union(AdminRole) class AlertRecipientsSettingType(bb.Union): """ Alert recipients setting type This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition custom_list = None # Attribute is overwritten below the class definition invalid = None # Attribute is overwritten below the class definition none = None # Attribute is overwritten below the class definition team_admins = None # Attribute is overwritten below the class definition other = None def is_custom_list(self): """ Check if the union tag is ``custom_list``. :rtype: bool """ return self._tag == 'custom_list' def is_invalid(self): """ Check if the union tag is ``invalid``. :rtype: bool """ return self._tag == 'invalid' def is_none(self): """ Check if the union tag is ``none``. :rtype: bool """ return self._tag == 'none' def is_team_admins(self): """ Check if the union tag is ``team_admins``. :rtype: bool """ return self._tag == 'team_admins' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AlertRecipientsSettingType, self)._process_custom_annotations(annotation_type, field_path, processor) AlertRecipientsSettingType_validator = bv.Union(AlertRecipientsSettingType) class AllowDownloadDisabledDetails(bb.Struct): """ Disabled downloads. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(AllowDownloadDisabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AllowDownloadDisabledDetails_validator = bv.Struct(AllowDownloadDisabledDetails) class AllowDownloadDisabledType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AllowDownloadDisabledType, self)._process_custom_annotations(annotation_type, field_path, processor) AllowDownloadDisabledType_validator = bv.Struct(AllowDownloadDisabledType) class AllowDownloadEnabledDetails(bb.Struct): """ Enabled downloads. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(AllowDownloadEnabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AllowDownloadEnabledDetails_validator = bv.Struct(AllowDownloadEnabledDetails) class AllowDownloadEnabledType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AllowDownloadEnabledType, self)._process_custom_annotations(annotation_type, field_path, processor) AllowDownloadEnabledType_validator = bv.Struct(AllowDownloadEnabledType) class ApiSessionLogInfo(bb.Struct): """ Api session. :ivar team_log.ApiSessionLogInfo.request_id: Api request ID. """ __slots__ = [ '_request_id_value', ] _has_required_fields = True def __init__(self, request_id=None): self._request_id_value = bb.NOT_SET if request_id is not None: self.request_id = request_id # Instance attribute type: str (validator is set below) request_id = bb.Attribute("request_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ApiSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) ApiSessionLogInfo_validator = bv.Struct(ApiSessionLogInfo) class AppBlockedByPermissionsDetails(bb.Struct): """ Failed to connect app for member. :ivar team_log.AppBlockedByPermissionsDetails.app_info: Relevant application details. """ __slots__ = [ '_app_info_value', ] _has_required_fields = True def __init__(self, app_info=None): self._app_info_value = bb.NOT_SET if app_info is not None: self.app_info = app_info # Instance attribute type: AppLogInfo (validator is set below) app_info = bb.Attribute("app_info", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppBlockedByPermissionsDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AppBlockedByPermissionsDetails_validator = bv.Struct(AppBlockedByPermissionsDetails) class AppBlockedByPermissionsType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppBlockedByPermissionsType, self)._process_custom_annotations(annotation_type, field_path, processor) AppBlockedByPermissionsType_validator = bv.Struct(AppBlockedByPermissionsType) class AppLinkTeamDetails(bb.Struct): """ Linked app for team. :ivar team_log.AppLinkTeamDetails.app_info: Relevant application details. """ __slots__ = [ '_app_info_value', ] _has_required_fields = True def __init__(self, app_info=None): self._app_info_value = bb.NOT_SET if app_info is not None: self.app_info = app_info # Instance attribute type: AppLogInfo (validator is set below) app_info = bb.Attribute("app_info", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppLinkTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AppLinkTeamDetails_validator = bv.Struct(AppLinkTeamDetails) class AppLinkTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppLinkTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) AppLinkTeamType_validator = bv.Struct(AppLinkTeamType) class AppLinkUserDetails(bb.Struct): """ Linked app for member. :ivar team_log.AppLinkUserDetails.app_info: Relevant application details. """ __slots__ = [ '_app_info_value', ] _has_required_fields = True def __init__(self, app_info=None): self._app_info_value = bb.NOT_SET if app_info is not None: self.app_info = app_info # Instance attribute type: AppLogInfo (validator is set below) app_info = bb.Attribute("app_info", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppLinkUserDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AppLinkUserDetails_validator = bv.Struct(AppLinkUserDetails) class AppLinkUserType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppLinkUserType, self)._process_custom_annotations(annotation_type, field_path, processor) AppLinkUserType_validator = bv.Struct(AppLinkUserType) class AppLogInfo(bb.Struct): """ App's logged information. :ivar team_log.AppLogInfo.app_id: App unique ID. :ivar team_log.AppLogInfo.display_name: App display name. """ __slots__ = [ '_app_id_value', '_display_name_value', ] _has_required_fields = False def __init__(self, app_id=None, display_name=None): self._app_id_value = bb.NOT_SET self._display_name_value = bb.NOT_SET if app_id is not None: self.app_id = app_id if display_name is not None: self.display_name = display_name # Instance attribute type: str (validator is set below) app_id = bb.Attribute("app_id", nullable=True) # Instance attribute type: str (validator is set below) display_name = bb.Attribute("display_name", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) AppLogInfo_validator = bv.StructTree(AppLogInfo) class AppPermissionsChangedDetails(bb.Struct): """ Changed app permissions. :ivar team_log.AppPermissionsChangedDetails.app_name: Name of the app. :ivar team_log.AppPermissionsChangedDetails.permission: Permission that was changed. :ivar team_log.AppPermissionsChangedDetails.previous_value: Previous policy. :ivar team_log.AppPermissionsChangedDetails.new_value: New policy. """ __slots__ = [ '_app_name_value', '_permission_value', '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None, app_name=None, permission=None): self._app_name_value = bb.NOT_SET self._permission_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if app_name is not None: self.app_name = app_name if permission is not None: self.permission = permission if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) app_name = bb.Attribute("app_name", nullable=True) # Instance attribute type: AdminConsoleAppPermission (validator is set below) permission = bb.Attribute("permission", nullable=True, user_defined=True) # Instance attribute type: AdminConsoleAppPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: AdminConsoleAppPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppPermissionsChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AppPermissionsChangedDetails_validator = bv.Struct(AppPermissionsChangedDetails) class AppPermissionsChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppPermissionsChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) AppPermissionsChangedType_validator = bv.Struct(AppPermissionsChangedType) class AppUnlinkTeamDetails(bb.Struct): """ Unlinked app for team. :ivar team_log.AppUnlinkTeamDetails.app_info: Relevant application details. """ __slots__ = [ '_app_info_value', ] _has_required_fields = True def __init__(self, app_info=None): self._app_info_value = bb.NOT_SET if app_info is not None: self.app_info = app_info # Instance attribute type: AppLogInfo (validator is set below) app_info = bb.Attribute("app_info", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppUnlinkTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AppUnlinkTeamDetails_validator = bv.Struct(AppUnlinkTeamDetails) class AppUnlinkTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppUnlinkTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) AppUnlinkTeamType_validator = bv.Struct(AppUnlinkTeamType) class AppUnlinkUserDetails(bb.Struct): """ Unlinked app for member. :ivar team_log.AppUnlinkUserDetails.app_info: Relevant application details. """ __slots__ = [ '_app_info_value', ] _has_required_fields = True def __init__(self, app_info=None): self._app_info_value = bb.NOT_SET if app_info is not None: self.app_info = app_info # Instance attribute type: AppLogInfo (validator is set below) app_info = bb.Attribute("app_info", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppUnlinkUserDetails, self)._process_custom_annotations(annotation_type, field_path, processor) AppUnlinkUserDetails_validator = bv.Struct(AppUnlinkUserDetails) class AppUnlinkUserType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(AppUnlinkUserType, self)._process_custom_annotations(annotation_type, field_path, processor) AppUnlinkUserType_validator = bv.Struct(AppUnlinkUserType) class ApplyNamingConventionDetails(bb.Struct): """ Applied naming convention. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(ApplyNamingConventionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ApplyNamingConventionDetails_validator = bv.Struct(ApplyNamingConventionDetails) class ApplyNamingConventionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ApplyNamingConventionType, self)._process_custom_annotations(annotation_type, field_path, processor) ApplyNamingConventionType_validator = bv.Struct(ApplyNamingConventionType) class AssetLogInfo(bb.Union): """ Asset details. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar FileLogInfo AssetLogInfo.file: File's details. :ivar FolderLogInfo AssetLogInfo.folder: Folder's details. :ivar PaperDocumentLogInfo AssetLogInfo.paper_document: Paper document's details. :ivar PaperFolderLogInfo AssetLogInfo.paper_folder: Paper folder's details. :ivar ShowcaseDocumentLogInfo AssetLogInfo.showcase_document: Showcase document's details. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def file(cls, val): """ Create an instance of this class set to the ``file`` tag with value ``val``. :param FileLogInfo val: :rtype: AssetLogInfo """ return cls('file', val) @classmethod def folder(cls, val): """ Create an instance of this class set to the ``folder`` tag with value ``val``. :param FolderLogInfo val: :rtype: AssetLogInfo """ return cls('folder', val) @classmethod def paper_document(cls, val): """ Create an instance of this class set to the ``paper_document`` tag with value ``val``. :param PaperDocumentLogInfo val: :rtype: AssetLogInfo """ return cls('paper_document', val) @classmethod def paper_folder(cls, val): """ Create an instance of this class set to the ``paper_folder`` tag with value ``val``. :param PaperFolderLogInfo val: :rtype: AssetLogInfo """ return cls('paper_folder', val) @classmethod def showcase_document(cls, val): """ Create an instance of this class set to the ``showcase_document`` tag with value ``val``. :param ShowcaseDocumentLogInfo val: :rtype: AssetLogInfo """ return cls('showcase_document', val) def is_file(self): """ Check if the union tag is ``file``. :rtype: bool """ return self._tag == 'file' def is_folder(self): """ Check if the union tag is ``folder``. :rtype: bool """ return self._tag == 'folder' def is_paper_document(self): """ Check if the union tag is ``paper_document``. :rtype: bool """ return self._tag == 'paper_document' def is_paper_folder(self): """ Check if the union tag is ``paper_folder``. :rtype: bool """ return self._tag == 'paper_folder' def is_showcase_document(self): """ Check if the union tag is ``showcase_document``. :rtype: bool """ return self._tag == 'showcase_document' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_file(self): """ File's details. Only call this if :meth:`is_file` is true. :rtype: FileLogInfo """ if not self.is_file(): raise AttributeError("tag 'file' not set") return self._value def get_folder(self): """ Folder's details. Only call this if :meth:`is_folder` is true. :rtype: FolderLogInfo """ if not self.is_folder(): raise AttributeError("tag 'folder' not set") return self._value def get_paper_document(self): """ Paper document's details. Only call this if :meth:`is_paper_document` is true. :rtype: PaperDocumentLogInfo """ if not self.is_paper_document(): raise AttributeError("tag 'paper_document' not set") return self._value def get_paper_folder(self): """ Paper folder's details. Only call this if :meth:`is_paper_folder` is true. :rtype: PaperFolderLogInfo """ if not self.is_paper_folder(): raise AttributeError("tag 'paper_folder' not set") return self._value def get_showcase_document(self): """ Showcase document's details. Only call this if :meth:`is_showcase_document` is true. :rtype: ShowcaseDocumentLogInfo """ if not self.is_showcase_document(): raise AttributeError("tag 'showcase_document' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(AssetLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) AssetLogInfo_validator = bv.Union(AssetLogInfo) class BackupAdminInvitationSentDetails(bb.Struct): """ Invited members to activate Backup. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(BackupAdminInvitationSentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) BackupAdminInvitationSentDetails_validator = bv.Struct(BackupAdminInvitationSentDetails) class BackupAdminInvitationSentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BackupAdminInvitationSentType, self)._process_custom_annotations(annotation_type, field_path, processor) BackupAdminInvitationSentType_validator = bv.Struct(BackupAdminInvitationSentType) class BackupInvitationOpenedDetails(bb.Struct): """ Opened Backup invite. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(BackupInvitationOpenedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) BackupInvitationOpenedDetails_validator = bv.Struct(BackupInvitationOpenedDetails) class BackupInvitationOpenedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BackupInvitationOpenedType, self)._process_custom_annotations(annotation_type, field_path, processor) BackupInvitationOpenedType_validator = bv.Struct(BackupInvitationOpenedType) class BackupStatus(bb.Union): """ Backup status This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(BackupStatus, self)._process_custom_annotations(annotation_type, field_path, processor) BackupStatus_validator = bv.Union(BackupStatus) class BinderAddPageDetails(bb.Struct): """ Added Binder page. :ivar team_log.BinderAddPageDetails.event_uuid: Event unique identifier. :ivar team_log.BinderAddPageDetails.doc_title: Title of the Binder doc. :ivar team_log.BinderAddPageDetails.binder_item_name: Name of the Binder page/section. """ __slots__ = [ '_event_uuid_value', '_doc_title_value', '_binder_item_name_value', ] _has_required_fields = True def __init__(self, event_uuid=None, doc_title=None, binder_item_name=None): self._event_uuid_value = bb.NOT_SET self._doc_title_value = bb.NOT_SET self._binder_item_name_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if doc_title is not None: self.doc_title = doc_title if binder_item_name is not None: self.binder_item_name = binder_item_name # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) doc_title = bb.Attribute("doc_title") # Instance attribute type: str (validator is set below) binder_item_name = bb.Attribute("binder_item_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderAddPageDetails, self)._process_custom_annotations(annotation_type, field_path, processor) BinderAddPageDetails_validator = bv.Struct(BinderAddPageDetails) class BinderAddPageType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderAddPageType, self)._process_custom_annotations(annotation_type, field_path, processor) BinderAddPageType_validator = bv.Struct(BinderAddPageType) class BinderAddSectionDetails(bb.Struct): """ Added Binder section. :ivar team_log.BinderAddSectionDetails.event_uuid: Event unique identifier. :ivar team_log.BinderAddSectionDetails.doc_title: Title of the Binder doc. :ivar team_log.BinderAddSectionDetails.binder_item_name: Name of the Binder page/section. """ __slots__ = [ '_event_uuid_value', '_doc_title_value', '_binder_item_name_value', ] _has_required_fields = True def __init__(self, event_uuid=None, doc_title=None, binder_item_name=None): self._event_uuid_value = bb.NOT_SET self._doc_title_value = bb.NOT_SET self._binder_item_name_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if doc_title is not None: self.doc_title = doc_title if binder_item_name is not None: self.binder_item_name = binder_item_name # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) doc_title = bb.Attribute("doc_title") # Instance attribute type: str (validator is set below) binder_item_name = bb.Attribute("binder_item_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderAddSectionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) BinderAddSectionDetails_validator = bv.Struct(BinderAddSectionDetails) class BinderAddSectionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderAddSectionType, self)._process_custom_annotations(annotation_type, field_path, processor) BinderAddSectionType_validator = bv.Struct(BinderAddSectionType) class BinderRemovePageDetails(bb.Struct): """ Removed Binder page. :ivar team_log.BinderRemovePageDetails.event_uuid: Event unique identifier. :ivar team_log.BinderRemovePageDetails.doc_title: Title of the Binder doc. :ivar team_log.BinderRemovePageDetails.binder_item_name: Name of the Binder page/section. """ __slots__ = [ '_event_uuid_value', '_doc_title_value', '_binder_item_name_value', ] _has_required_fields = True def __init__(self, event_uuid=None, doc_title=None, binder_item_name=None): self._event_uuid_value = bb.NOT_SET self._doc_title_value = bb.NOT_SET self._binder_item_name_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if doc_title is not None: self.doc_title = doc_title if binder_item_name is not None: self.binder_item_name = binder_item_name # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) doc_title = bb.Attribute("doc_title") # Instance attribute type: str (validator is set below) binder_item_name = bb.Attribute("binder_item_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderRemovePageDetails, self)._process_custom_annotations(annotation_type, field_path, processor) BinderRemovePageDetails_validator = bv.Struct(BinderRemovePageDetails) class BinderRemovePageType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderRemovePageType, self)._process_custom_annotations(annotation_type, field_path, processor) BinderRemovePageType_validator = bv.Struct(BinderRemovePageType) class BinderRemoveSectionDetails(bb.Struct): """ Removed Binder section. :ivar team_log.BinderRemoveSectionDetails.event_uuid: Event unique identifier. :ivar team_log.BinderRemoveSectionDetails.doc_title: Title of the Binder doc. :ivar team_log.BinderRemoveSectionDetails.binder_item_name: Name of the Binder page/section. """ __slots__ = [ '_event_uuid_value', '_doc_title_value', '_binder_item_name_value', ] _has_required_fields = True def __init__(self, event_uuid=None, doc_title=None, binder_item_name=None): self._event_uuid_value = bb.NOT_SET self._doc_title_value = bb.NOT_SET self._binder_item_name_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if doc_title is not None: self.doc_title = doc_title if binder_item_name is not None: self.binder_item_name = binder_item_name # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) doc_title = bb.Attribute("doc_title") # Instance attribute type: str (validator is set below) binder_item_name = bb.Attribute("binder_item_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderRemoveSectionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) BinderRemoveSectionDetails_validator = bv.Struct(BinderRemoveSectionDetails) class BinderRemoveSectionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderRemoveSectionType, self)._process_custom_annotations(annotation_type, field_path, processor) BinderRemoveSectionType_validator = bv.Struct(BinderRemoveSectionType) class BinderRenamePageDetails(bb.Struct): """ Renamed Binder page. :ivar team_log.BinderRenamePageDetails.event_uuid: Event unique identifier. :ivar team_log.BinderRenamePageDetails.doc_title: Title of the Binder doc. :ivar team_log.BinderRenamePageDetails.binder_item_name: Name of the Binder page/section. :ivar team_log.BinderRenamePageDetails.previous_binder_item_name: Previous name of the Binder page/section. """ __slots__ = [ '_event_uuid_value', '_doc_title_value', '_binder_item_name_value', '_previous_binder_item_name_value', ] _has_required_fields = True def __init__(self, event_uuid=None, doc_title=None, binder_item_name=None, previous_binder_item_name=None): self._event_uuid_value = bb.NOT_SET self._doc_title_value = bb.NOT_SET self._binder_item_name_value = bb.NOT_SET self._previous_binder_item_name_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if doc_title is not None: self.doc_title = doc_title if binder_item_name is not None: self.binder_item_name = binder_item_name if previous_binder_item_name is not None: self.previous_binder_item_name = previous_binder_item_name # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) doc_title = bb.Attribute("doc_title") # Instance attribute type: str (validator is set below) binder_item_name = bb.Attribute("binder_item_name") # Instance attribute type: str (validator is set below) previous_binder_item_name = bb.Attribute("previous_binder_item_name", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderRenamePageDetails, self)._process_custom_annotations(annotation_type, field_path, processor) BinderRenamePageDetails_validator = bv.Struct(BinderRenamePageDetails) class BinderRenamePageType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderRenamePageType, self)._process_custom_annotations(annotation_type, field_path, processor) BinderRenamePageType_validator = bv.Struct(BinderRenamePageType) class BinderRenameSectionDetails(bb.Struct): """ Renamed Binder section. :ivar team_log.BinderRenameSectionDetails.event_uuid: Event unique identifier. :ivar team_log.BinderRenameSectionDetails.doc_title: Title of the Binder doc. :ivar team_log.BinderRenameSectionDetails.binder_item_name: Name of the Binder page/section. :ivar team_log.BinderRenameSectionDetails.previous_binder_item_name: Previous name of the Binder page/section. """ __slots__ = [ '_event_uuid_value', '_doc_title_value', '_binder_item_name_value', '_previous_binder_item_name_value', ] _has_required_fields = True def __init__(self, event_uuid=None, doc_title=None, binder_item_name=None, previous_binder_item_name=None): self._event_uuid_value = bb.NOT_SET self._doc_title_value = bb.NOT_SET self._binder_item_name_value = bb.NOT_SET self._previous_binder_item_name_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if doc_title is not None: self.doc_title = doc_title if binder_item_name is not None: self.binder_item_name = binder_item_name if previous_binder_item_name is not None: self.previous_binder_item_name = previous_binder_item_name # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) doc_title = bb.Attribute("doc_title") # Instance attribute type: str (validator is set below) binder_item_name = bb.Attribute("binder_item_name") # Instance attribute type: str (validator is set below) previous_binder_item_name = bb.Attribute("previous_binder_item_name", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderRenameSectionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) BinderRenameSectionDetails_validator = bv.Struct(BinderRenameSectionDetails) class BinderRenameSectionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderRenameSectionType, self)._process_custom_annotations(annotation_type, field_path, processor) BinderRenameSectionType_validator = bv.Struct(BinderRenameSectionType) class BinderReorderPageDetails(bb.Struct): """ Reordered Binder page. :ivar team_log.BinderReorderPageDetails.event_uuid: Event unique identifier. :ivar team_log.BinderReorderPageDetails.doc_title: Title of the Binder doc. :ivar team_log.BinderReorderPageDetails.binder_item_name: Name of the Binder page/section. """ __slots__ = [ '_event_uuid_value', '_doc_title_value', '_binder_item_name_value', ] _has_required_fields = True def __init__(self, event_uuid=None, doc_title=None, binder_item_name=None): self._event_uuid_value = bb.NOT_SET self._doc_title_value = bb.NOT_SET self._binder_item_name_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if doc_title is not None: self.doc_title = doc_title if binder_item_name is not None: self.binder_item_name = binder_item_name # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) doc_title = bb.Attribute("doc_title") # Instance attribute type: str (validator is set below) binder_item_name = bb.Attribute("binder_item_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderReorderPageDetails, self)._process_custom_annotations(annotation_type, field_path, processor) BinderReorderPageDetails_validator = bv.Struct(BinderReorderPageDetails) class BinderReorderPageType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderReorderPageType, self)._process_custom_annotations(annotation_type, field_path, processor) BinderReorderPageType_validator = bv.Struct(BinderReorderPageType) class BinderReorderSectionDetails(bb.Struct): """ Reordered Binder section. :ivar team_log.BinderReorderSectionDetails.event_uuid: Event unique identifier. :ivar team_log.BinderReorderSectionDetails.doc_title: Title of the Binder doc. :ivar team_log.BinderReorderSectionDetails.binder_item_name: Name of the Binder page/section. """ __slots__ = [ '_event_uuid_value', '_doc_title_value', '_binder_item_name_value', ] _has_required_fields = True def __init__(self, event_uuid=None, doc_title=None, binder_item_name=None): self._event_uuid_value = bb.NOT_SET self._doc_title_value = bb.NOT_SET self._binder_item_name_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if doc_title is not None: self.doc_title = doc_title if binder_item_name is not None: self.binder_item_name = binder_item_name # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) doc_title = bb.Attribute("doc_title") # Instance attribute type: str (validator is set below) binder_item_name = bb.Attribute("binder_item_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderReorderSectionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) BinderReorderSectionDetails_validator = bv.Struct(BinderReorderSectionDetails) class BinderReorderSectionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(BinderReorderSectionType, self)._process_custom_annotations(annotation_type, field_path, processor) BinderReorderSectionType_validator = bv.Struct(BinderReorderSectionType) class CameraUploadsPolicy(bb.Union): """ Policy for controlling if team members can activate camera uploads This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(CameraUploadsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) CameraUploadsPolicy_validator = bv.Union(CameraUploadsPolicy) class CameraUploadsPolicyChangedDetails(bb.Struct): """ Changed camera uploads setting for team. :ivar team_log.CameraUploadsPolicyChangedDetails.new_value: New camera uploads setting. :ivar team_log.CameraUploadsPolicyChangedDetails.previous_value: Previous camera uploads setting. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: CameraUploadsPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: CameraUploadsPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(CameraUploadsPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) CameraUploadsPolicyChangedDetails_validator = bv.Struct(CameraUploadsPolicyChangedDetails) class CameraUploadsPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CameraUploadsPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) CameraUploadsPolicyChangedType_validator = bv.Struct(CameraUploadsPolicyChangedType) class CaptureTranscriptPolicy(bb.Union): """ Policy for deciding whether team users can transcription in Capture This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(CaptureTranscriptPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) CaptureTranscriptPolicy_validator = bv.Union(CaptureTranscriptPolicy) class CaptureTranscriptPolicyChangedDetails(bb.Struct): """ Changed Capture transcription policy for team. :ivar team_log.CaptureTranscriptPolicyChangedDetails.new_value: To. :ivar team_log.CaptureTranscriptPolicyChangedDetails.previous_value: From. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: CaptureTranscriptPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: CaptureTranscriptPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(CaptureTranscriptPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) CaptureTranscriptPolicyChangedDetails_validator = bv.Struct(CaptureTranscriptPolicyChangedDetails) class CaptureTranscriptPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CaptureTranscriptPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) CaptureTranscriptPolicyChangedType_validator = bv.Struct(CaptureTranscriptPolicyChangedType) class Certificate(bb.Struct): """ Certificate details. :ivar team_log.Certificate.subject: Certificate subject. :ivar team_log.Certificate.issuer: Certificate issuer. :ivar team_log.Certificate.issue_date: Certificate issue date. :ivar team_log.Certificate.expiration_date: Certificate expiration date. :ivar team_log.Certificate.serial_number: Certificate serial number. :ivar team_log.Certificate.sha1_fingerprint: Certificate sha1 fingerprint. :ivar team_log.Certificate.common_name: Certificate common name. """ __slots__ = [ '_subject_value', '_issuer_value', '_issue_date_value', '_expiration_date_value', '_serial_number_value', '_sha1_fingerprint_value', '_common_name_value', ] _has_required_fields = True def __init__(self, subject=None, issuer=None, issue_date=None, expiration_date=None, serial_number=None, sha1_fingerprint=None, common_name=None): self._subject_value = bb.NOT_SET self._issuer_value = bb.NOT_SET self._issue_date_value = bb.NOT_SET self._expiration_date_value = bb.NOT_SET self._serial_number_value = bb.NOT_SET self._sha1_fingerprint_value = bb.NOT_SET self._common_name_value = bb.NOT_SET if subject is not None: self.subject = subject if issuer is not None: self.issuer = issuer if issue_date is not None: self.issue_date = issue_date if expiration_date is not None: self.expiration_date = expiration_date if serial_number is not None: self.serial_number = serial_number if sha1_fingerprint is not None: self.sha1_fingerprint = sha1_fingerprint if common_name is not None: self.common_name = common_name # Instance attribute type: str (validator is set below) subject = bb.Attribute("subject") # Instance attribute type: str (validator is set below) issuer = bb.Attribute("issuer") # Instance attribute type: str (validator is set below) issue_date = bb.Attribute("issue_date") # Instance attribute type: str (validator is set below) expiration_date = bb.Attribute("expiration_date") # Instance attribute type: str (validator is set below) serial_number = bb.Attribute("serial_number") # Instance attribute type: str (validator is set below) sha1_fingerprint = bb.Attribute("sha1_fingerprint") # Instance attribute type: str (validator is set below) common_name = bb.Attribute("common_name", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(Certificate, self)._process_custom_annotations(annotation_type, field_path, processor) Certificate_validator = bv.Struct(Certificate) class ChangeLinkExpirationPolicy(bb.Union): """ Policy for deciding whether the team's default expiration days policy must be enforced when an externally shared link is updated This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition allowed = None # Attribute is overwritten below the class definition not_allowed = None # Attribute is overwritten below the class definition other = None def is_allowed(self): """ Check if the union tag is ``allowed``. :rtype: bool """ return self._tag == 'allowed' def is_not_allowed(self): """ Check if the union tag is ``not_allowed``. :rtype: bool """ return self._tag == 'not_allowed' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ChangeLinkExpirationPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ChangeLinkExpirationPolicy_validator = bv.Union(ChangeLinkExpirationPolicy) class ChangedEnterpriseAdminRoleDetails(bb.Struct): """ Changed enterprise admin role. :ivar team_log.ChangedEnterpriseAdminRoleDetails.previous_value: The member’s previous enterprise admin role. :ivar team_log.ChangedEnterpriseAdminRoleDetails.new_value: The member’s new enterprise admin role. :ivar team_log.ChangedEnterpriseAdminRoleDetails.team_name: The name of the member’s team. """ __slots__ = [ '_previous_value_value', '_new_value_value', '_team_name_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None, team_name=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET self._team_name_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value if team_name is not None: self.team_name = team_name # Instance attribute type: FedAdminRole (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: FedAdminRole (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: str (validator is set below) team_name = bb.Attribute("team_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ChangedEnterpriseAdminRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ChangedEnterpriseAdminRoleDetails_validator = bv.Struct(ChangedEnterpriseAdminRoleDetails) class ChangedEnterpriseAdminRoleType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ChangedEnterpriseAdminRoleType, self)._process_custom_annotations(annotation_type, field_path, processor) ChangedEnterpriseAdminRoleType_validator = bv.Struct(ChangedEnterpriseAdminRoleType) class ChangedEnterpriseConnectedTeamStatusDetails(bb.Struct): """ Changed enterprise-connected team status. :ivar team_log.ChangedEnterpriseConnectedTeamStatusDetails.action: The preformed change in the team’s connection status. :ivar team_log.ChangedEnterpriseConnectedTeamStatusDetails.additional_info: Additional information about the organization or team. :ivar team_log.ChangedEnterpriseConnectedTeamStatusDetails.previous_value: Previous request state. :ivar team_log.ChangedEnterpriseConnectedTeamStatusDetails.new_value: New request state. """ __slots__ = [ '_action_value', '_additional_info_value', '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, action=None, additional_info=None, previous_value=None, new_value=None): self._action_value = bb.NOT_SET self._additional_info_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if action is not None: self.action = action if additional_info is not None: self.additional_info = additional_info if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: FedHandshakeAction (validator is set below) action = bb.Attribute("action", user_defined=True) # Instance attribute type: FederationStatusChangeAdditionalInfo (validator is set below) additional_info = bb.Attribute("additional_info", user_defined=True) # Instance attribute type: TrustedTeamsRequestState (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: TrustedTeamsRequestState (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ChangedEnterpriseConnectedTeamStatusDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ChangedEnterpriseConnectedTeamStatusDetails_validator = bv.Struct(ChangedEnterpriseConnectedTeamStatusDetails) class ChangedEnterpriseConnectedTeamStatusType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ChangedEnterpriseConnectedTeamStatusType, self)._process_custom_annotations(annotation_type, field_path, processor) ChangedEnterpriseConnectedTeamStatusType_validator = bv.Struct(ChangedEnterpriseConnectedTeamStatusType) class ClassificationChangePolicyDetails(bb.Struct): """ Changed classification policy for team. :ivar team_log.ClassificationChangePolicyDetails.previous_value: Previous classification policy. :ivar team_log.ClassificationChangePolicyDetails.new_value: New classification policy. :ivar team_log.ClassificationChangePolicyDetails.classification_type: Policy type. """ __slots__ = [ '_previous_value_value', '_new_value_value', '_classification_type_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None, classification_type=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET self._classification_type_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value if classification_type is not None: self.classification_type = classification_type # Instance attribute type: ClassificationPolicyEnumWrapper (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: ClassificationPolicyEnumWrapper (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: ClassificationType (validator is set below) classification_type = bb.Attribute("classification_type", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ClassificationChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ClassificationChangePolicyDetails_validator = bv.Struct(ClassificationChangePolicyDetails) class ClassificationChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ClassificationChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) ClassificationChangePolicyType_validator = bv.Struct(ClassificationChangePolicyType) class ClassificationCreateReportDetails(bb.Struct): """ Created Classification report. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(ClassificationCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ClassificationCreateReportDetails_validator = bv.Struct(ClassificationCreateReportDetails) class ClassificationCreateReportFailDetails(bb.Struct): """ Couldn't create Classification report. :ivar team_log.ClassificationCreateReportFailDetails.failure_reason: Failure reason. """ __slots__ = [ '_failure_reason_value', ] _has_required_fields = True def __init__(self, failure_reason=None): self._failure_reason_value = bb.NOT_SET if failure_reason is not None: self.failure_reason = failure_reason # Instance attribute type: team.TeamReportFailureReason (validator is set below) failure_reason = bb.Attribute("failure_reason", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ClassificationCreateReportFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ClassificationCreateReportFailDetails_validator = bv.Struct(ClassificationCreateReportFailDetails) class ClassificationCreateReportFailType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ClassificationCreateReportFailType, self)._process_custom_annotations(annotation_type, field_path, processor) ClassificationCreateReportFailType_validator = bv.Struct(ClassificationCreateReportFailType) class ClassificationCreateReportType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ClassificationCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor) ClassificationCreateReportType_validator = bv.Struct(ClassificationCreateReportType) class ClassificationPolicyEnumWrapper(bb.Union): """ Policy for controlling team access to the classification feature This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition member_and_team_folders = None # Attribute is overwritten below the class definition team_folders = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_member_and_team_folders(self): """ Check if the union tag is ``member_and_team_folders``. :rtype: bool """ return self._tag == 'member_and_team_folders' def is_team_folders(self): """ Check if the union tag is ``team_folders``. :rtype: bool """ return self._tag == 'team_folders' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ClassificationPolicyEnumWrapper, self)._process_custom_annotations(annotation_type, field_path, processor) ClassificationPolicyEnumWrapper_validator = bv.Union(ClassificationPolicyEnumWrapper) class ClassificationType(bb.Union): """ The type of classification (currently only personal information) This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition personal_information = None # Attribute is overwritten below the class definition pii = None # Attribute is overwritten below the class definition other = None def is_personal_information(self): """ Check if the union tag is ``personal_information``. :rtype: bool """ return self._tag == 'personal_information' def is_pii(self): """ Check if the union tag is ``pii``. :rtype: bool """ return self._tag == 'pii' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ClassificationType, self)._process_custom_annotations(annotation_type, field_path, processor) ClassificationType_validator = bv.Union(ClassificationType) class CollectionShareDetails(bb.Struct): """ Shared album. :ivar team_log.CollectionShareDetails.album_name: Album name. """ __slots__ = [ '_album_name_value', ] _has_required_fields = True def __init__(self, album_name=None): self._album_name_value = bb.NOT_SET if album_name is not None: self.album_name = album_name # Instance attribute type: str (validator is set below) album_name = bb.Attribute("album_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CollectionShareDetails, self)._process_custom_annotations(annotation_type, field_path, processor) CollectionShareDetails_validator = bv.Struct(CollectionShareDetails) class CollectionShareType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CollectionShareType, self)._process_custom_annotations(annotation_type, field_path, processor) CollectionShareType_validator = bv.Struct(CollectionShareType) class ComputerBackupPolicy(bb.Union): """ Policy for controlling team access to computer backup feature This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ComputerBackupPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ComputerBackupPolicy_validator = bv.Union(ComputerBackupPolicy) class ComputerBackupPolicyChangedDetails(bb.Struct): """ Changed computer backup policy for team. :ivar team_log.ComputerBackupPolicyChangedDetails.new_value: New computer backup policy. :ivar team_log.ComputerBackupPolicyChangedDetails.previous_value: Previous computer backup policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: ComputerBackupPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: ComputerBackupPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ComputerBackupPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ComputerBackupPolicyChangedDetails_validator = bv.Struct(ComputerBackupPolicyChangedDetails) class ComputerBackupPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ComputerBackupPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) ComputerBackupPolicyChangedType_validator = bv.Struct(ComputerBackupPolicyChangedType) class ConnectedTeamName(bb.Struct): """ The name of the team :ivar team_log.ConnectedTeamName.team: The name of the team. """ __slots__ = [ '_team_value', ] _has_required_fields = True def __init__(self, team=None): self._team_value = bb.NOT_SET if team is not None: self.team = team # Instance attribute type: str (validator is set below) team = bb.Attribute("team") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ConnectedTeamName, self)._process_custom_annotations(annotation_type, field_path, processor) ConnectedTeamName_validator = bv.Struct(ConnectedTeamName) class ContentAdministrationPolicyChangedDetails(bb.Struct): """ Changed content management setting. :ivar team_log.ContentAdministrationPolicyChangedDetails.new_value: New content administration policy. :ivar team_log.ContentAdministrationPolicyChangedDetails.previous_value: Previous content administration policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ContentAdministrationPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ContentAdministrationPolicyChangedDetails_validator = bv.Struct(ContentAdministrationPolicyChangedDetails) class ContentAdministrationPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ContentAdministrationPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) ContentAdministrationPolicyChangedType_validator = bv.Struct(ContentAdministrationPolicyChangedType) class ContentPermanentDeletePolicy(bb.Union): """ Policy for pemanent content deletion This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ContentPermanentDeletePolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ContentPermanentDeletePolicy_validator = bv.Union(ContentPermanentDeletePolicy) class ContextLogInfo(bb.Union): """ The primary entity on which the action was done. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_log.ContextLogInfo.anonymous: Anonymous context. :ivar NonTeamMemberLogInfo ContextLogInfo.non_team_member: Action was done on behalf of a non team member. :ivar TeamLogInfo ContextLogInfo.organization_team: Action was done on behalf of a team that's part of an organization. :ivar team_log.ContextLogInfo.team: Action was done on behalf of the team. :ivar TeamMemberLogInfo ContextLogInfo.team_member: Action was done on behalf of a team member. :ivar TrustedNonTeamMemberLogInfo ContextLogInfo.trusted_non_team_member: Action was done on behalf of a trusted non team member. """ _catch_all = 'other' # Attribute is overwritten below the class definition anonymous = None # Attribute is overwritten below the class definition team = None # Attribute is overwritten below the class definition other = None @classmethod def non_team_member(cls, val): """ Create an instance of this class set to the ``non_team_member`` tag with value ``val``. :param NonTeamMemberLogInfo val: :rtype: ContextLogInfo """ return cls('non_team_member', val) @classmethod def organization_team(cls, val): """ Create an instance of this class set to the ``organization_team`` tag with value ``val``. :param TeamLogInfo val: :rtype: ContextLogInfo """ return cls('organization_team', val) @classmethod def team_member(cls, val): """ Create an instance of this class set to the ``team_member`` tag with value ``val``. :param TeamMemberLogInfo val: :rtype: ContextLogInfo """ return cls('team_member', val) @classmethod def trusted_non_team_member(cls, val): """ Create an instance of this class set to the ``trusted_non_team_member`` tag with value ``val``. :param TrustedNonTeamMemberLogInfo val: :rtype: ContextLogInfo """ return cls('trusted_non_team_member', val) def is_anonymous(self): """ Check if the union tag is ``anonymous``. :rtype: bool """ return self._tag == 'anonymous' def is_non_team_member(self): """ Check if the union tag is ``non_team_member``. :rtype: bool """ return self._tag == 'non_team_member' def is_organization_team(self): """ Check if the union tag is ``organization_team``. :rtype: bool """ return self._tag == 'organization_team' def is_team(self): """ Check if the union tag is ``team``. :rtype: bool """ return self._tag == 'team' def is_team_member(self): """ Check if the union tag is ``team_member``. :rtype: bool """ return self._tag == 'team_member' def is_trusted_non_team_member(self): """ Check if the union tag is ``trusted_non_team_member``. :rtype: bool """ return self._tag == 'trusted_non_team_member' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_non_team_member(self): """ Action was done on behalf of a non team member. Only call this if :meth:`is_non_team_member` is true. :rtype: NonTeamMemberLogInfo """ if not self.is_non_team_member(): raise AttributeError("tag 'non_team_member' not set") return self._value def get_organization_team(self): """ Action was done on behalf of a team that's part of an organization. Only call this if :meth:`is_organization_team` is true. :rtype: TeamLogInfo """ if not self.is_organization_team(): raise AttributeError("tag 'organization_team' not set") return self._value def get_team_member(self): """ Action was done on behalf of a team member. Only call this if :meth:`is_team_member` is true. :rtype: TeamMemberLogInfo """ if not self.is_team_member(): raise AttributeError("tag 'team_member' not set") return self._value def get_trusted_non_team_member(self): """ Action was done on behalf of a trusted non team member. Only call this if :meth:`is_trusted_non_team_member` is true. :rtype: TrustedNonTeamMemberLogInfo """ if not self.is_trusted_non_team_member(): raise AttributeError("tag 'trusted_non_team_member' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ContextLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) ContextLogInfo_validator = bv.Union(ContextLogInfo) class CreateFolderDetails(bb.Struct): """ Created folders. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderDetails, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderDetails_validator = bv.Struct(CreateFolderDetails) class CreateFolderType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateFolderType, self)._process_custom_annotations(annotation_type, field_path, processor) CreateFolderType_validator = bv.Struct(CreateFolderType) class CreateTeamInviteLinkDetails(bb.Struct): """ Created team invite link. :ivar team_log.CreateTeamInviteLinkDetails.link_url: The invite link url that was created. :ivar team_log.CreateTeamInviteLinkDetails.expiry_date: The expiration date of the invite link. """ __slots__ = [ '_link_url_value', '_expiry_date_value', ] _has_required_fields = True def __init__(self, link_url=None, expiry_date=None): self._link_url_value = bb.NOT_SET self._expiry_date_value = bb.NOT_SET if link_url is not None: self.link_url = link_url if expiry_date is not None: self.expiry_date = expiry_date # Instance attribute type: str (validator is set below) link_url = bb.Attribute("link_url") # Instance attribute type: str (validator is set below) expiry_date = bb.Attribute("expiry_date") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateTeamInviteLinkDetails, self)._process_custom_annotations(annotation_type, field_path, processor) CreateTeamInviteLinkDetails_validator = bv.Struct(CreateTeamInviteLinkDetails) class CreateTeamInviteLinkType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(CreateTeamInviteLinkType, self)._process_custom_annotations(annotation_type, field_path, processor) CreateTeamInviteLinkType_validator = bv.Struct(CreateTeamInviteLinkType) class DataPlacementRestrictionChangePolicyDetails(bb.Struct): """ Set restrictions on data center locations where team data resides. :ivar team_log.DataPlacementRestrictionChangePolicyDetails.previous_value: Previous placement restriction. :ivar team_log.DataPlacementRestrictionChangePolicyDetails.new_value: New placement restriction. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: PlacementRestriction (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: PlacementRestriction (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DataPlacementRestrictionChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DataPlacementRestrictionChangePolicyDetails_validator = bv.Struct(DataPlacementRestrictionChangePolicyDetails) class DataPlacementRestrictionChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DataPlacementRestrictionChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) DataPlacementRestrictionChangePolicyType_validator = bv.Struct(DataPlacementRestrictionChangePolicyType) class DataPlacementRestrictionSatisfyPolicyDetails(bb.Struct): """ Completed restrictions on data center locations where team data resides. :ivar team_log.DataPlacementRestrictionSatisfyPolicyDetails.placement_restriction: Placement restriction. """ __slots__ = [ '_placement_restriction_value', ] _has_required_fields = True def __init__(self, placement_restriction=None): self._placement_restriction_value = bb.NOT_SET if placement_restriction is not None: self.placement_restriction = placement_restriction # Instance attribute type: PlacementRestriction (validator is set below) placement_restriction = bb.Attribute("placement_restriction", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DataPlacementRestrictionSatisfyPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DataPlacementRestrictionSatisfyPolicyDetails_validator = bv.Struct(DataPlacementRestrictionSatisfyPolicyDetails) class DataPlacementRestrictionSatisfyPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DataPlacementRestrictionSatisfyPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) DataPlacementRestrictionSatisfyPolicyType_validator = bv.Struct(DataPlacementRestrictionSatisfyPolicyType) class DataResidencyMigrationRequestSuccessfulDetails(bb.Struct): """ Requested data residency migration for team data. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DataResidencyMigrationRequestSuccessfulDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DataResidencyMigrationRequestSuccessfulDetails_validator = bv.Struct(DataResidencyMigrationRequestSuccessfulDetails) class DataResidencyMigrationRequestSuccessfulType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DataResidencyMigrationRequestSuccessfulType, self)._process_custom_annotations(annotation_type, field_path, processor) DataResidencyMigrationRequestSuccessfulType_validator = bv.Struct(DataResidencyMigrationRequestSuccessfulType) class DataResidencyMigrationRequestUnsuccessfulDetails(bb.Struct): """ Request for data residency migration for team data has failed. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DataResidencyMigrationRequestUnsuccessfulDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DataResidencyMigrationRequestUnsuccessfulDetails_validator = bv.Struct(DataResidencyMigrationRequestUnsuccessfulDetails) class DataResidencyMigrationRequestUnsuccessfulType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DataResidencyMigrationRequestUnsuccessfulType, self)._process_custom_annotations(annotation_type, field_path, processor) DataResidencyMigrationRequestUnsuccessfulType_validator = bv.Struct(DataResidencyMigrationRequestUnsuccessfulType) class DefaultLinkExpirationDaysPolicy(bb.Union): """ Policy for the default number of days until an externally shared link expires This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition day_1 = None # Attribute is overwritten below the class definition day_180 = None # Attribute is overwritten below the class definition day_3 = None # Attribute is overwritten below the class definition day_30 = None # Attribute is overwritten below the class definition day_7 = None # Attribute is overwritten below the class definition day_90 = None # Attribute is overwritten below the class definition none = None # Attribute is overwritten below the class definition year_1 = None # Attribute is overwritten below the class definition other = None def is_day_1(self): """ Check if the union tag is ``day_1``. :rtype: bool """ return self._tag == 'day_1' def is_day_180(self): """ Check if the union tag is ``day_180``. :rtype: bool """ return self._tag == 'day_180' def is_day_3(self): """ Check if the union tag is ``day_3``. :rtype: bool """ return self._tag == 'day_3' def is_day_30(self): """ Check if the union tag is ``day_30``. :rtype: bool """ return self._tag == 'day_30' def is_day_7(self): """ Check if the union tag is ``day_7``. :rtype: bool """ return self._tag == 'day_7' def is_day_90(self): """ Check if the union tag is ``day_90``. :rtype: bool """ return self._tag == 'day_90' def is_none(self): """ Check if the union tag is ``none``. :rtype: bool """ return self._tag == 'none' def is_year_1(self): """ Check if the union tag is ``year_1``. :rtype: bool """ return self._tag == 'year_1' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DefaultLinkExpirationDaysPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) DefaultLinkExpirationDaysPolicy_validator = bv.Union(DefaultLinkExpirationDaysPolicy) class DeleteTeamInviteLinkDetails(bb.Struct): """ Deleted team invite link. :ivar team_log.DeleteTeamInviteLinkDetails.link_url: The invite link url that was deleted. """ __slots__ = [ '_link_url_value', ] _has_required_fields = True def __init__(self, link_url=None): self._link_url_value = bb.NOT_SET if link_url is not None: self.link_url = link_url # Instance attribute type: str (validator is set below) link_url = bb.Attribute("link_url") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteTeamInviteLinkDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteTeamInviteLinkDetails_validator = bv.Struct(DeleteTeamInviteLinkDetails) class DeleteTeamInviteLinkType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeleteTeamInviteLinkType, self)._process_custom_annotations(annotation_type, field_path, processor) DeleteTeamInviteLinkType_validator = bv.Struct(DeleteTeamInviteLinkType) class DeviceSessionLogInfo(bb.Struct): """ Device's session logged information. :ivar team_log.DeviceSessionLogInfo.ip_address: The IP address of the last activity from this session. :ivar team_log.DeviceSessionLogInfo.created: The time this session was created. :ivar team_log.DeviceSessionLogInfo.updated: The time of the last activity from this session. """ __slots__ = [ '_ip_address_value', '_created_value', '_updated_value', ] _has_required_fields = False def __init__(self, ip_address=None, created=None, updated=None): self._ip_address_value = bb.NOT_SET self._created_value = bb.NOT_SET self._updated_value = bb.NOT_SET if ip_address is not None: self.ip_address = ip_address if created is not None: self.created = created if updated is not None: self.updated = updated # Instance attribute type: str (validator is set below) ip_address = bb.Attribute("ip_address", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) created = bb.Attribute("created", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) updated = bb.Attribute("updated", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceSessionLogInfo_validator = bv.StructTree(DeviceSessionLogInfo) class DesktopDeviceSessionLogInfo(DeviceSessionLogInfo): """ Information about linked Dropbox desktop client sessions :ivar team_log.DesktopDeviceSessionLogInfo.session_info: Desktop session unique id. :ivar team_log.DesktopDeviceSessionLogInfo.host_name: Name of the hosting desktop. :ivar team_log.DesktopDeviceSessionLogInfo.client_type: The Dropbox desktop client type. :ivar team_log.DesktopDeviceSessionLogInfo.client_version: The Dropbox client version. :ivar team_log.DesktopDeviceSessionLogInfo.platform: Information on the hosting platform. :ivar team_log.DesktopDeviceSessionLogInfo.is_delete_on_unlink_supported: Whether itu2019s possible to delete all of the account files upon unlinking. """ __slots__ = [ '_session_info_value', '_host_name_value', '_client_type_value', '_client_version_value', '_platform_value', '_is_delete_on_unlink_supported_value', ] _has_required_fields = True def __init__(self, host_name=None, client_type=None, platform=None, is_delete_on_unlink_supported=None, ip_address=None, created=None, updated=None, session_info=None, client_version=None): super(DesktopDeviceSessionLogInfo, self).__init__(ip_address, created, updated) self._session_info_value = bb.NOT_SET self._host_name_value = bb.NOT_SET self._client_type_value = bb.NOT_SET self._client_version_value = bb.NOT_SET self._platform_value = bb.NOT_SET self._is_delete_on_unlink_supported_value = bb.NOT_SET if session_info is not None: self.session_info = session_info if host_name is not None: self.host_name = host_name if client_type is not None: self.client_type = client_type if client_version is not None: self.client_version = client_version if platform is not None: self.platform = platform if is_delete_on_unlink_supported is not None: self.is_delete_on_unlink_supported = is_delete_on_unlink_supported # Instance attribute type: DesktopSessionLogInfo (validator is set below) session_info = bb.Attribute("session_info", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) host_name = bb.Attribute("host_name") # Instance attribute type: team.DesktopPlatform (validator is set below) client_type = bb.Attribute("client_type", user_defined=True) # Instance attribute type: str (validator is set below) client_version = bb.Attribute("client_version", nullable=True) # Instance attribute type: str (validator is set below) platform = bb.Attribute("platform") # Instance attribute type: bool (validator is set below) is_delete_on_unlink_supported = bb.Attribute("is_delete_on_unlink_supported") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DesktopDeviceSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) DesktopDeviceSessionLogInfo_validator = bv.Struct(DesktopDeviceSessionLogInfo) class SessionLogInfo(bb.Struct): """ Session's logged information. :ivar team_log.SessionLogInfo.session_id: Session ID. """ __slots__ = [ '_session_id_value', ] _has_required_fields = False def __init__(self, session_id=None): self._session_id_value = bb.NOT_SET if session_id is not None: self.session_id = session_id # Instance attribute type: str (validator is set below) session_id = bb.Attribute("session_id", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) SessionLogInfo_validator = bv.StructTree(SessionLogInfo) class DesktopSessionLogInfo(SessionLogInfo): """ Desktop session. """ __slots__ = [ ] _has_required_fields = False def __init__(self, session_id=None): super(DesktopSessionLogInfo, self).__init__(session_id) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DesktopSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) DesktopSessionLogInfo_validator = bv.Struct(DesktopSessionLogInfo) class DeviceApprovalsAddExceptionDetails(bb.Struct): """ Added members to device approvals exception list. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsAddExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsAddExceptionDetails_validator = bv.Struct(DeviceApprovalsAddExceptionDetails) class DeviceApprovalsAddExceptionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsAddExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsAddExceptionType_validator = bv.Struct(DeviceApprovalsAddExceptionType) class DeviceApprovalsChangeDesktopPolicyDetails(bb.Struct): """ Set/removed limit on number of computers member can link to team Dropbox account. :ivar team_log.DeviceApprovalsChangeDesktopPolicyDetails.new_value: New desktop device approvals policy. Might be missing due to historical data gap. :ivar team_log.DeviceApprovalsChangeDesktopPolicyDetails.previous_value: Previous desktop device approvals policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = False def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: DeviceApprovalsPolicy (validator is set below) new_value = bb.Attribute("new_value", nullable=True, user_defined=True) # Instance attribute type: DeviceApprovalsPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsChangeDesktopPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsChangeDesktopPolicyDetails_validator = bv.Struct(DeviceApprovalsChangeDesktopPolicyDetails) class DeviceApprovalsChangeDesktopPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsChangeDesktopPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsChangeDesktopPolicyType_validator = bv.Struct(DeviceApprovalsChangeDesktopPolicyType) class DeviceApprovalsChangeMobilePolicyDetails(bb.Struct): """ Set/removed limit on number of mobile devices member can link to team Dropbox account. :ivar team_log.DeviceApprovalsChangeMobilePolicyDetails.new_value: New mobile device approvals policy. Might be missing due to historical data gap. :ivar team_log.DeviceApprovalsChangeMobilePolicyDetails.previous_value: Previous mobile device approvals policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = False def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: DeviceApprovalsPolicy (validator is set below) new_value = bb.Attribute("new_value", nullable=True, user_defined=True) # Instance attribute type: DeviceApprovalsPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsChangeMobilePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsChangeMobilePolicyDetails_validator = bv.Struct(DeviceApprovalsChangeMobilePolicyDetails) class DeviceApprovalsChangeMobilePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsChangeMobilePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsChangeMobilePolicyType_validator = bv.Struct(DeviceApprovalsChangeMobilePolicyType) class DeviceApprovalsChangeOverageActionDetails(bb.Struct): """ Changed device approvals setting when member is over limit. :ivar team_log.DeviceApprovalsChangeOverageActionDetails.new_value: New over the limits policy. Might be missing due to historical data gap. :ivar team_log.DeviceApprovalsChangeOverageActionDetails.previous_value: Previous over the limit policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = False def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: team_policies.RolloutMethod (validator is set below) new_value = bb.Attribute("new_value", nullable=True, user_defined=True) # Instance attribute type: team_policies.RolloutMethod (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsChangeOverageActionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsChangeOverageActionDetails_validator = bv.Struct(DeviceApprovalsChangeOverageActionDetails) class DeviceApprovalsChangeOverageActionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsChangeOverageActionType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsChangeOverageActionType_validator = bv.Struct(DeviceApprovalsChangeOverageActionType) class DeviceApprovalsChangeUnlinkActionDetails(bb.Struct): """ Changed device approvals setting when member unlinks approved device. :ivar team_log.DeviceApprovalsChangeUnlinkActionDetails.new_value: New device unlink policy. Might be missing due to historical data gap. :ivar team_log.DeviceApprovalsChangeUnlinkActionDetails.previous_value: Previous device unlink policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = False def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: DeviceUnlinkPolicy (validator is set below) new_value = bb.Attribute("new_value", nullable=True, user_defined=True) # Instance attribute type: DeviceUnlinkPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsChangeUnlinkActionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsChangeUnlinkActionDetails_validator = bv.Struct(DeviceApprovalsChangeUnlinkActionDetails) class DeviceApprovalsChangeUnlinkActionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsChangeUnlinkActionType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsChangeUnlinkActionType_validator = bv.Struct(DeviceApprovalsChangeUnlinkActionType) class DeviceApprovalsPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition limited = None # Attribute is overwritten below the class definition unlimited = None # Attribute is overwritten below the class definition other = None def is_limited(self): """ Check if the union tag is ``limited``. :rtype: bool """ return self._tag == 'limited' def is_unlimited(self): """ Check if the union tag is ``unlimited``. :rtype: bool """ return self._tag == 'unlimited' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsPolicy_validator = bv.Union(DeviceApprovalsPolicy) class DeviceApprovalsRemoveExceptionDetails(bb.Struct): """ Removed members from device approvals exception list. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsRemoveExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsRemoveExceptionDetails_validator = bv.Struct(DeviceApprovalsRemoveExceptionDetails) class DeviceApprovalsRemoveExceptionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceApprovalsRemoveExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceApprovalsRemoveExceptionType_validator = bv.Struct(DeviceApprovalsRemoveExceptionType) class DeviceChangeIpDesktopDetails(bb.Struct): """ Changed IP address associated with active desktop session. :ivar team_log.DeviceChangeIpDesktopDetails.device_session_info: Device's session logged information. """ __slots__ = [ '_device_session_info_value', ] _has_required_fields = True def __init__(self, device_session_info=None): self._device_session_info_value = bb.NOT_SET if device_session_info is not None: self.device_session_info = device_session_info # Instance attribute type: DeviceSessionLogInfo (validator is set below) device_session_info = bb.Attribute("device_session_info", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceChangeIpDesktopDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceChangeIpDesktopDetails_validator = bv.Struct(DeviceChangeIpDesktopDetails) class DeviceChangeIpDesktopType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceChangeIpDesktopType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceChangeIpDesktopType_validator = bv.Struct(DeviceChangeIpDesktopType) class DeviceChangeIpMobileDetails(bb.Struct): """ Changed IP address associated with active mobile session. :ivar team_log.DeviceChangeIpMobileDetails.device_session_info: Device's session logged information. """ __slots__ = [ '_device_session_info_value', ] _has_required_fields = False def __init__(self, device_session_info=None): self._device_session_info_value = bb.NOT_SET if device_session_info is not None: self.device_session_info = device_session_info # Instance attribute type: DeviceSessionLogInfo (validator is set below) device_session_info = bb.Attribute("device_session_info", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceChangeIpMobileDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceChangeIpMobileDetails_validator = bv.Struct(DeviceChangeIpMobileDetails) class DeviceChangeIpMobileType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceChangeIpMobileType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceChangeIpMobileType_validator = bv.Struct(DeviceChangeIpMobileType) class DeviceChangeIpWebDetails(bb.Struct): """ Changed IP address associated with active web session. :ivar team_log.DeviceChangeIpWebDetails.user_agent: Web browser name. """ __slots__ = [ '_user_agent_value', ] _has_required_fields = True def __init__(self, user_agent=None): self._user_agent_value = bb.NOT_SET if user_agent is not None: self.user_agent = user_agent # Instance attribute type: str (validator is set below) user_agent = bb.Attribute("user_agent") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceChangeIpWebDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceChangeIpWebDetails_validator = bv.Struct(DeviceChangeIpWebDetails) class DeviceChangeIpWebType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceChangeIpWebType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceChangeIpWebType_validator = bv.Struct(DeviceChangeIpWebType) class DeviceDeleteOnUnlinkFailDetails(bb.Struct): """ Failed to delete all files from unlinked device. :ivar team_log.DeviceDeleteOnUnlinkFailDetails.session_info: Session unique id. :ivar team_log.DeviceDeleteOnUnlinkFailDetails.display_name: The device name. Might be missing due to historical data gap. :ivar team_log.DeviceDeleteOnUnlinkFailDetails.num_failures: The number of times that remote file deletion failed. """ __slots__ = [ '_session_info_value', '_display_name_value', '_num_failures_value', ] _has_required_fields = True def __init__(self, num_failures=None, session_info=None, display_name=None): self._session_info_value = bb.NOT_SET self._display_name_value = bb.NOT_SET self._num_failures_value = bb.NOT_SET if session_info is not None: self.session_info = session_info if display_name is not None: self.display_name = display_name if num_failures is not None: self.num_failures = num_failures # Instance attribute type: SessionLogInfo (validator is set below) session_info = bb.Attribute("session_info", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) display_name = bb.Attribute("display_name", nullable=True) # Instance attribute type: int (validator is set below) num_failures = bb.Attribute("num_failures") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceDeleteOnUnlinkFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceDeleteOnUnlinkFailDetails_validator = bv.Struct(DeviceDeleteOnUnlinkFailDetails) class DeviceDeleteOnUnlinkFailType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceDeleteOnUnlinkFailType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceDeleteOnUnlinkFailType_validator = bv.Struct(DeviceDeleteOnUnlinkFailType) class DeviceDeleteOnUnlinkSuccessDetails(bb.Struct): """ Deleted all files from unlinked device. :ivar team_log.DeviceDeleteOnUnlinkSuccessDetails.session_info: Session unique id. :ivar team_log.DeviceDeleteOnUnlinkSuccessDetails.display_name: The device name. Might be missing due to historical data gap. """ __slots__ = [ '_session_info_value', '_display_name_value', ] _has_required_fields = False def __init__(self, session_info=None, display_name=None): self._session_info_value = bb.NOT_SET self._display_name_value = bb.NOT_SET if session_info is not None: self.session_info = session_info if display_name is not None: self.display_name = display_name # Instance attribute type: SessionLogInfo (validator is set below) session_info = bb.Attribute("session_info", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) display_name = bb.Attribute("display_name", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceDeleteOnUnlinkSuccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceDeleteOnUnlinkSuccessDetails_validator = bv.Struct(DeviceDeleteOnUnlinkSuccessDetails) class DeviceDeleteOnUnlinkSuccessType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceDeleteOnUnlinkSuccessType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceDeleteOnUnlinkSuccessType_validator = bv.Struct(DeviceDeleteOnUnlinkSuccessType) class DeviceLinkFailDetails(bb.Struct): """ Failed to link device. :ivar team_log.DeviceLinkFailDetails.ip_address: IP address. Might be missing due to historical data gap. :ivar team_log.DeviceLinkFailDetails.device_type: A description of the device used while user approval blocked. """ __slots__ = [ '_ip_address_value', '_device_type_value', ] _has_required_fields = True def __init__(self, device_type=None, ip_address=None): self._ip_address_value = bb.NOT_SET self._device_type_value = bb.NOT_SET if ip_address is not None: self.ip_address = ip_address if device_type is not None: self.device_type = device_type # Instance attribute type: str (validator is set below) ip_address = bb.Attribute("ip_address", nullable=True) # Instance attribute type: DeviceType (validator is set below) device_type = bb.Attribute("device_type", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceLinkFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceLinkFailDetails_validator = bv.Struct(DeviceLinkFailDetails) class DeviceLinkFailType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceLinkFailType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceLinkFailType_validator = bv.Struct(DeviceLinkFailType) class DeviceLinkSuccessDetails(bb.Struct): """ Linked device. :ivar team_log.DeviceLinkSuccessDetails.device_session_info: Device's session logged information. """ __slots__ = [ '_device_session_info_value', ] _has_required_fields = False def __init__(self, device_session_info=None): self._device_session_info_value = bb.NOT_SET if device_session_info is not None: self.device_session_info = device_session_info # Instance attribute type: DeviceSessionLogInfo (validator is set below) device_session_info = bb.Attribute("device_session_info", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceLinkSuccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceLinkSuccessDetails_validator = bv.Struct(DeviceLinkSuccessDetails) class DeviceLinkSuccessType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceLinkSuccessType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceLinkSuccessType_validator = bv.Struct(DeviceLinkSuccessType) class DeviceManagementDisabledDetails(bb.Struct): """ Disabled device management. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceManagementDisabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceManagementDisabledDetails_validator = bv.Struct(DeviceManagementDisabledDetails) class DeviceManagementDisabledType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceManagementDisabledType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceManagementDisabledType_validator = bv.Struct(DeviceManagementDisabledType) class DeviceManagementEnabledDetails(bb.Struct): """ Enabled device management. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceManagementEnabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceManagementEnabledDetails_validator = bv.Struct(DeviceManagementEnabledDetails) class DeviceManagementEnabledType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceManagementEnabledType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceManagementEnabledType_validator = bv.Struct(DeviceManagementEnabledType) class DeviceSyncBackupStatusChangedDetails(bb.Struct): """ Enabled/disabled backup for computer. :ivar team_log.DeviceSyncBackupStatusChangedDetails.desktop_device_session_info: Device's session logged information. :ivar team_log.DeviceSyncBackupStatusChangedDetails.previous_value: Previous status of computer backup on the device. :ivar team_log.DeviceSyncBackupStatusChangedDetails.new_value: Next status of computer backup on the device. """ __slots__ = [ '_desktop_device_session_info_value', '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, desktop_device_session_info=None, previous_value=None, new_value=None): self._desktop_device_session_info_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if desktop_device_session_info is not None: self.desktop_device_session_info = desktop_device_session_info if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: DesktopDeviceSessionLogInfo (validator is set below) desktop_device_session_info = bb.Attribute("desktop_device_session_info", user_defined=True) # Instance attribute type: BackupStatus (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: BackupStatus (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceSyncBackupStatusChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceSyncBackupStatusChangedDetails_validator = bv.Struct(DeviceSyncBackupStatusChangedDetails) class DeviceSyncBackupStatusChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceSyncBackupStatusChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceSyncBackupStatusChangedType_validator = bv.Struct(DeviceSyncBackupStatusChangedType) class DeviceType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition desktop = None # Attribute is overwritten below the class definition mobile = None # Attribute is overwritten below the class definition other = None def is_desktop(self): """ Check if the union tag is ``desktop``. :rtype: bool """ return self._tag == 'desktop' def is_mobile(self): """ Check if the union tag is ``mobile``. :rtype: bool """ return self._tag == 'mobile' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceType_validator = bv.Union(DeviceType) class DeviceUnlinkDetails(bb.Struct): """ Disconnected device. :ivar team_log.DeviceUnlinkDetails.session_info: Session unique id. :ivar team_log.DeviceUnlinkDetails.display_name: The device name. Might be missing due to historical data gap. :ivar team_log.DeviceUnlinkDetails.delete_data: True if the user requested to delete data after device unlink, false otherwise. """ __slots__ = [ '_session_info_value', '_display_name_value', '_delete_data_value', ] _has_required_fields = True def __init__(self, delete_data=None, session_info=None, display_name=None): self._session_info_value = bb.NOT_SET self._display_name_value = bb.NOT_SET self._delete_data_value = bb.NOT_SET if session_info is not None: self.session_info = session_info if display_name is not None: self.display_name = display_name if delete_data is not None: self.delete_data = delete_data # Instance attribute type: SessionLogInfo (validator is set below) session_info = bb.Attribute("session_info", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) display_name = bb.Attribute("display_name", nullable=True) # Instance attribute type: bool (validator is set below) delete_data = bb.Attribute("delete_data") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceUnlinkDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceUnlinkDetails_validator = bv.Struct(DeviceUnlinkDetails) class DeviceUnlinkPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition keep = None # Attribute is overwritten below the class definition remove = None # Attribute is overwritten below the class definition other = None def is_keep(self): """ Check if the union tag is ``keep``. :rtype: bool """ return self._tag == 'keep' def is_remove(self): """ Check if the union tag is ``remove``. :rtype: bool """ return self._tag == 'remove' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceUnlinkPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceUnlinkPolicy_validator = bv.Union(DeviceUnlinkPolicy) class DeviceUnlinkType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DeviceUnlinkType, self)._process_custom_annotations(annotation_type, field_path, processor) DeviceUnlinkType_validator = bv.Struct(DeviceUnlinkType) class DirectoryRestrictionsAddMembersDetails(bb.Struct): """ Added members to directory restrictions list. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DirectoryRestrictionsAddMembersDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DirectoryRestrictionsAddMembersDetails_validator = bv.Struct(DirectoryRestrictionsAddMembersDetails) class DirectoryRestrictionsAddMembersType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DirectoryRestrictionsAddMembersType, self)._process_custom_annotations(annotation_type, field_path, processor) DirectoryRestrictionsAddMembersType_validator = bv.Struct(DirectoryRestrictionsAddMembersType) class DirectoryRestrictionsRemoveMembersDetails(bb.Struct): """ Removed members from directory restrictions list. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DirectoryRestrictionsRemoveMembersDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DirectoryRestrictionsRemoveMembersDetails_validator = bv.Struct(DirectoryRestrictionsRemoveMembersDetails) class DirectoryRestrictionsRemoveMembersType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DirectoryRestrictionsRemoveMembersType, self)._process_custom_annotations(annotation_type, field_path, processor) DirectoryRestrictionsRemoveMembersType_validator = bv.Struct(DirectoryRestrictionsRemoveMembersType) class DisabledDomainInvitesDetails(bb.Struct): """ Disabled domain invites. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DisabledDomainInvitesDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DisabledDomainInvitesDetails_validator = bv.Struct(DisabledDomainInvitesDetails) class DisabledDomainInvitesType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DisabledDomainInvitesType, self)._process_custom_annotations(annotation_type, field_path, processor) DisabledDomainInvitesType_validator = bv.Struct(DisabledDomainInvitesType) class DispositionActionType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition automatic_delete = None # Attribute is overwritten below the class definition automatic_permanently_delete = None # Attribute is overwritten below the class definition other = None def is_automatic_delete(self): """ Check if the union tag is ``automatic_delete``. :rtype: bool """ return self._tag == 'automatic_delete' def is_automatic_permanently_delete(self): """ Check if the union tag is ``automatic_permanently_delete``. :rtype: bool """ return self._tag == 'automatic_permanently_delete' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DispositionActionType, self)._process_custom_annotations(annotation_type, field_path, processor) DispositionActionType_validator = bv.Union(DispositionActionType) class DomainInvitesApproveRequestToJoinTeamDetails(bb.Struct): """ Approved user's request to join team. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainInvitesApproveRequestToJoinTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DomainInvitesApproveRequestToJoinTeamDetails_validator = bv.Struct(DomainInvitesApproveRequestToJoinTeamDetails) class DomainInvitesApproveRequestToJoinTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainInvitesApproveRequestToJoinTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) DomainInvitesApproveRequestToJoinTeamType_validator = bv.Struct(DomainInvitesApproveRequestToJoinTeamType) class DomainInvitesDeclineRequestToJoinTeamDetails(bb.Struct): """ Declined user's request to join team. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainInvitesDeclineRequestToJoinTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DomainInvitesDeclineRequestToJoinTeamDetails_validator = bv.Struct(DomainInvitesDeclineRequestToJoinTeamDetails) class DomainInvitesDeclineRequestToJoinTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainInvitesDeclineRequestToJoinTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) DomainInvitesDeclineRequestToJoinTeamType_validator = bv.Struct(DomainInvitesDeclineRequestToJoinTeamType) class DomainInvitesEmailExistingUsersDetails(bb.Struct): """ Sent domain invites to existing domain accounts. :ivar team_log.DomainInvitesEmailExistingUsersDetails.domain_name: Domain names. :ivar team_log.DomainInvitesEmailExistingUsersDetails.num_recipients: Number of recipients. """ __slots__ = [ '_domain_name_value', '_num_recipients_value', ] _has_required_fields = True def __init__(self, domain_name=None, num_recipients=None): self._domain_name_value = bb.NOT_SET self._num_recipients_value = bb.NOT_SET if domain_name is not None: self.domain_name = domain_name if num_recipients is not None: self.num_recipients = num_recipients # Instance attribute type: str (validator is set below) domain_name = bb.Attribute("domain_name") # Instance attribute type: int (validator is set below) num_recipients = bb.Attribute("num_recipients") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainInvitesEmailExistingUsersDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DomainInvitesEmailExistingUsersDetails_validator = bv.Struct(DomainInvitesEmailExistingUsersDetails) class DomainInvitesEmailExistingUsersType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainInvitesEmailExistingUsersType, self)._process_custom_annotations(annotation_type, field_path, processor) DomainInvitesEmailExistingUsersType_validator = bv.Struct(DomainInvitesEmailExistingUsersType) class DomainInvitesRequestToJoinTeamDetails(bb.Struct): """ Requested to join team. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainInvitesRequestToJoinTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DomainInvitesRequestToJoinTeamDetails_validator = bv.Struct(DomainInvitesRequestToJoinTeamDetails) class DomainInvitesRequestToJoinTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainInvitesRequestToJoinTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) DomainInvitesRequestToJoinTeamType_validator = bv.Struct(DomainInvitesRequestToJoinTeamType) class DomainInvitesSetInviteNewUserPrefToNoDetails(bb.Struct): """ Disabled "Automatically invite new users". """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainInvitesSetInviteNewUserPrefToNoDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DomainInvitesSetInviteNewUserPrefToNoDetails_validator = bv.Struct(DomainInvitesSetInviteNewUserPrefToNoDetails) class DomainInvitesSetInviteNewUserPrefToNoType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainInvitesSetInviteNewUserPrefToNoType, self)._process_custom_annotations(annotation_type, field_path, processor) DomainInvitesSetInviteNewUserPrefToNoType_validator = bv.Struct(DomainInvitesSetInviteNewUserPrefToNoType) class DomainInvitesSetInviteNewUserPrefToYesDetails(bb.Struct): """ Enabled "Automatically invite new users". """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainInvitesSetInviteNewUserPrefToYesDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DomainInvitesSetInviteNewUserPrefToYesDetails_validator = bv.Struct(DomainInvitesSetInviteNewUserPrefToYesDetails) class DomainInvitesSetInviteNewUserPrefToYesType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainInvitesSetInviteNewUserPrefToYesType, self)._process_custom_annotations(annotation_type, field_path, processor) DomainInvitesSetInviteNewUserPrefToYesType_validator = bv.Struct(DomainInvitesSetInviteNewUserPrefToYesType) class DomainVerificationAddDomainFailDetails(bb.Struct): """ Failed to verify team domain. :ivar team_log.DomainVerificationAddDomainFailDetails.domain_name: Domain name. :ivar team_log.DomainVerificationAddDomainFailDetails.verification_method: Domain name verification method. Might be missing due to historical data gap. """ __slots__ = [ '_domain_name_value', '_verification_method_value', ] _has_required_fields = True def __init__(self, domain_name=None, verification_method=None): self._domain_name_value = bb.NOT_SET self._verification_method_value = bb.NOT_SET if domain_name is not None: self.domain_name = domain_name if verification_method is not None: self.verification_method = verification_method # Instance attribute type: str (validator is set below) domain_name = bb.Attribute("domain_name") # Instance attribute type: str (validator is set below) verification_method = bb.Attribute("verification_method", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainVerificationAddDomainFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DomainVerificationAddDomainFailDetails_validator = bv.Struct(DomainVerificationAddDomainFailDetails) class DomainVerificationAddDomainFailType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainVerificationAddDomainFailType, self)._process_custom_annotations(annotation_type, field_path, processor) DomainVerificationAddDomainFailType_validator = bv.Struct(DomainVerificationAddDomainFailType) class DomainVerificationAddDomainSuccessDetails(bb.Struct): """ Verified team domain. :ivar team_log.DomainVerificationAddDomainSuccessDetails.domain_names: Domain names. :ivar team_log.DomainVerificationAddDomainSuccessDetails.verification_method: Domain name verification method. Might be missing due to historical data gap. """ __slots__ = [ '_domain_names_value', '_verification_method_value', ] _has_required_fields = True def __init__(self, domain_names=None, verification_method=None): self._domain_names_value = bb.NOT_SET self._verification_method_value = bb.NOT_SET if domain_names is not None: self.domain_names = domain_names if verification_method is not None: self.verification_method = verification_method # Instance attribute type: list of [str] (validator is set below) domain_names = bb.Attribute("domain_names") # Instance attribute type: str (validator is set below) verification_method = bb.Attribute("verification_method", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainVerificationAddDomainSuccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DomainVerificationAddDomainSuccessDetails_validator = bv.Struct(DomainVerificationAddDomainSuccessDetails) class DomainVerificationAddDomainSuccessType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainVerificationAddDomainSuccessType, self)._process_custom_annotations(annotation_type, field_path, processor) DomainVerificationAddDomainSuccessType_validator = bv.Struct(DomainVerificationAddDomainSuccessType) class DomainVerificationRemoveDomainDetails(bb.Struct): """ Removed domain from list of verified team domains. :ivar team_log.DomainVerificationRemoveDomainDetails.domain_names: Domain names. """ __slots__ = [ '_domain_names_value', ] _has_required_fields = True def __init__(self, domain_names=None): self._domain_names_value = bb.NOT_SET if domain_names is not None: self.domain_names = domain_names # Instance attribute type: list of [str] (validator is set below) domain_names = bb.Attribute("domain_names") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainVerificationRemoveDomainDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DomainVerificationRemoveDomainDetails_validator = bv.Struct(DomainVerificationRemoveDomainDetails) class DomainVerificationRemoveDomainType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DomainVerificationRemoveDomainType, self)._process_custom_annotations(annotation_type, field_path, processor) DomainVerificationRemoveDomainType_validator = bv.Struct(DomainVerificationRemoveDomainType) class DownloadPolicyType(bb.Union): """ Shared content downloads policy This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition allow = None # Attribute is overwritten below the class definition disallow = None # Attribute is overwritten below the class definition other = None def is_allow(self): """ Check if the union tag is ``allow``. :rtype: bool """ return self._tag == 'allow' def is_disallow(self): """ Check if the union tag is ``disallow``. :rtype: bool """ return self._tag == 'disallow' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DownloadPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) DownloadPolicyType_validator = bv.Union(DownloadPolicyType) class DropboxPasswordsExportedDetails(bb.Struct): """ Exported passwords. :ivar team_log.DropboxPasswordsExportedDetails.platform: The platform the device runs export. """ __slots__ = [ '_platform_value', ] _has_required_fields = True def __init__(self, platform=None): self._platform_value = bb.NOT_SET if platform is not None: self.platform = platform # Instance attribute type: str (validator is set below) platform = bb.Attribute("platform") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DropboxPasswordsExportedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DropboxPasswordsExportedDetails_validator = bv.Struct(DropboxPasswordsExportedDetails) class DropboxPasswordsExportedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DropboxPasswordsExportedType, self)._process_custom_annotations(annotation_type, field_path, processor) DropboxPasswordsExportedType_validator = bv.Struct(DropboxPasswordsExportedType) class DropboxPasswordsNewDeviceEnrolledDetails(bb.Struct): """ Enrolled new Dropbox Passwords device. :ivar team_log.DropboxPasswordsNewDeviceEnrolledDetails.is_first_device: Whether it's a first device enrolled. :ivar team_log.DropboxPasswordsNewDeviceEnrolledDetails.platform: The platform the device is enrolled. """ __slots__ = [ '_is_first_device_value', '_platform_value', ] _has_required_fields = True def __init__(self, is_first_device=None, platform=None): self._is_first_device_value = bb.NOT_SET self._platform_value = bb.NOT_SET if is_first_device is not None: self.is_first_device = is_first_device if platform is not None: self.platform = platform # Instance attribute type: bool (validator is set below) is_first_device = bb.Attribute("is_first_device") # Instance attribute type: str (validator is set below) platform = bb.Attribute("platform") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DropboxPasswordsNewDeviceEnrolledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DropboxPasswordsNewDeviceEnrolledDetails_validator = bv.Struct(DropboxPasswordsNewDeviceEnrolledDetails) class DropboxPasswordsNewDeviceEnrolledType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DropboxPasswordsNewDeviceEnrolledType, self)._process_custom_annotations(annotation_type, field_path, processor) DropboxPasswordsNewDeviceEnrolledType_validator = bv.Struct(DropboxPasswordsNewDeviceEnrolledType) class DropboxPasswordsPolicy(bb.Union): """ Policy for deciding whether team users can use Dropbox Passwords This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(DropboxPasswordsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) DropboxPasswordsPolicy_validator = bv.Union(DropboxPasswordsPolicy) class DropboxPasswordsPolicyChangedDetails(bb.Struct): """ Changed Dropbox Passwords policy for team. :ivar team_log.DropboxPasswordsPolicyChangedDetails.new_value: To. :ivar team_log.DropboxPasswordsPolicyChangedDetails.previous_value: From. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: DropboxPasswordsPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: DropboxPasswordsPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(DropboxPasswordsPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) DropboxPasswordsPolicyChangedDetails_validator = bv.Struct(DropboxPasswordsPolicyChangedDetails) class DropboxPasswordsPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DropboxPasswordsPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) DropboxPasswordsPolicyChangedType_validator = bv.Struct(DropboxPasswordsPolicyChangedType) class DurationLogInfo(bb.Struct): """ Represents a time duration: unit and amount :ivar team_log.DurationLogInfo.unit: Time unit. :ivar team_log.DurationLogInfo.amount: Amount of time. """ __slots__ = [ '_unit_value', '_amount_value', ] _has_required_fields = True def __init__(self, unit=None, amount=None): self._unit_value = bb.NOT_SET self._amount_value = bb.NOT_SET if unit is not None: self.unit = unit if amount is not None: self.amount = amount # Instance attribute type: TimeUnit (validator is set below) unit = bb.Attribute("unit", user_defined=True) # Instance attribute type: int (validator is set below) amount = bb.Attribute("amount") def _process_custom_annotations(self, annotation_type, field_path, processor): super(DurationLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) DurationLogInfo_validator = bv.Struct(DurationLogInfo) class EmailIngestPolicy(bb.Union): """ Policy for deciding whether a team can use Email to Dropbox feature This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmailIngestPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) EmailIngestPolicy_validator = bv.Union(EmailIngestPolicy) class EmailIngestPolicyChangedDetails(bb.Struct): """ Changed email to Dropbox policy for team. :ivar team_log.EmailIngestPolicyChangedDetails.new_value: To. :ivar team_log.EmailIngestPolicyChangedDetails.previous_value: From. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: EmailIngestPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: EmailIngestPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmailIngestPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EmailIngestPolicyChangedDetails_validator = bv.Struct(EmailIngestPolicyChangedDetails) class EmailIngestPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmailIngestPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) EmailIngestPolicyChangedType_validator = bv.Struct(EmailIngestPolicyChangedType) class EmailIngestReceiveFileDetails(bb.Struct): """ Received files via Email to Dropbox. :ivar team_log.EmailIngestReceiveFileDetails.inbox_name: Inbox name. :ivar team_log.EmailIngestReceiveFileDetails.attachment_names: Submitted file names. :ivar team_log.EmailIngestReceiveFileDetails.subject: Subject of the email. :ivar team_log.EmailIngestReceiveFileDetails.from_name: The name as provided by the submitter. :ivar team_log.EmailIngestReceiveFileDetails.from_email: The email as provided by the submitter. """ __slots__ = [ '_inbox_name_value', '_attachment_names_value', '_subject_value', '_from_name_value', '_from_email_value', ] _has_required_fields = True def __init__(self, inbox_name=None, attachment_names=None, subject=None, from_name=None, from_email=None): self._inbox_name_value = bb.NOT_SET self._attachment_names_value = bb.NOT_SET self._subject_value = bb.NOT_SET self._from_name_value = bb.NOT_SET self._from_email_value = bb.NOT_SET if inbox_name is not None: self.inbox_name = inbox_name if attachment_names is not None: self.attachment_names = attachment_names if subject is not None: self.subject = subject if from_name is not None: self.from_name = from_name if from_email is not None: self.from_email = from_email # Instance attribute type: str (validator is set below) inbox_name = bb.Attribute("inbox_name") # Instance attribute type: list of [str] (validator is set below) attachment_names = bb.Attribute("attachment_names") # Instance attribute type: str (validator is set below) subject = bb.Attribute("subject", nullable=True) # Instance attribute type: str (validator is set below) from_name = bb.Attribute("from_name", nullable=True) # Instance attribute type: str (validator is set below) from_email = bb.Attribute("from_email", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmailIngestReceiveFileDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EmailIngestReceiveFileDetails_validator = bv.Struct(EmailIngestReceiveFileDetails) class EmailIngestReceiveFileType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmailIngestReceiveFileType, self)._process_custom_annotations(annotation_type, field_path, processor) EmailIngestReceiveFileType_validator = bv.Struct(EmailIngestReceiveFileType) class EmmAddExceptionDetails(bb.Struct): """ Added members to EMM exception list. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmAddExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EmmAddExceptionDetails_validator = bv.Struct(EmmAddExceptionDetails) class EmmAddExceptionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmAddExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor) EmmAddExceptionType_validator = bv.Struct(EmmAddExceptionType) class EmmChangePolicyDetails(bb.Struct): """ Enabled/disabled enterprise mobility management for members. :ivar team_log.EmmChangePolicyDetails.new_value: New enterprise mobility management policy. :ivar team_log.EmmChangePolicyDetails.previous_value: Previous enterprise mobility management policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: team_policies.EmmState (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: team_policies.EmmState (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EmmChangePolicyDetails_validator = bv.Struct(EmmChangePolicyDetails) class EmmChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) EmmChangePolicyType_validator = bv.Struct(EmmChangePolicyType) class EmmCreateExceptionsReportDetails(bb.Struct): """ Created EMM-excluded users report. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmCreateExceptionsReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EmmCreateExceptionsReportDetails_validator = bv.Struct(EmmCreateExceptionsReportDetails) class EmmCreateExceptionsReportType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmCreateExceptionsReportType, self)._process_custom_annotations(annotation_type, field_path, processor) EmmCreateExceptionsReportType_validator = bv.Struct(EmmCreateExceptionsReportType) class EmmCreateUsageReportDetails(bb.Struct): """ Created EMM mobile app usage report. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmCreateUsageReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EmmCreateUsageReportDetails_validator = bv.Struct(EmmCreateUsageReportDetails) class EmmCreateUsageReportType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmCreateUsageReportType, self)._process_custom_annotations(annotation_type, field_path, processor) EmmCreateUsageReportType_validator = bv.Struct(EmmCreateUsageReportType) class EmmErrorDetails(bb.Struct): """ Failed to sign in via EMM. :ivar team_log.EmmErrorDetails.error_details: Error details. """ __slots__ = [ '_error_details_value', ] _has_required_fields = True def __init__(self, error_details=None): self._error_details_value = bb.NOT_SET if error_details is not None: self.error_details = error_details # Instance attribute type: FailureDetailsLogInfo (validator is set below) error_details = bb.Attribute("error_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmErrorDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EmmErrorDetails_validator = bv.Struct(EmmErrorDetails) class EmmErrorType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmErrorType, self)._process_custom_annotations(annotation_type, field_path, processor) EmmErrorType_validator = bv.Struct(EmmErrorType) class EmmRefreshAuthTokenDetails(bb.Struct): """ Refreshed auth token used for setting up EMM. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmRefreshAuthTokenDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EmmRefreshAuthTokenDetails_validator = bv.Struct(EmmRefreshAuthTokenDetails) class EmmRefreshAuthTokenType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmRefreshAuthTokenType, self)._process_custom_annotations(annotation_type, field_path, processor) EmmRefreshAuthTokenType_validator = bv.Struct(EmmRefreshAuthTokenType) class EmmRemoveExceptionDetails(bb.Struct): """ Removed members from EMM exception list. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmRemoveExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EmmRemoveExceptionDetails_validator = bv.Struct(EmmRemoveExceptionDetails) class EmmRemoveExceptionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmRemoveExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor) EmmRemoveExceptionType_validator = bv.Struct(EmmRemoveExceptionType) class EnabledDomainInvitesDetails(bb.Struct): """ Enabled domain invites. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(EnabledDomainInvitesDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EnabledDomainInvitesDetails_validator = bv.Struct(EnabledDomainInvitesDetails) class EnabledDomainInvitesType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EnabledDomainInvitesType, self)._process_custom_annotations(annotation_type, field_path, processor) EnabledDomainInvitesType_validator = bv.Struct(EnabledDomainInvitesType) class EndedEnterpriseAdminSessionDeprecatedDetails(bb.Struct): """ Ended enterprise admin session. :ivar team_log.EndedEnterpriseAdminSessionDeprecatedDetails.federation_extra_details: More information about the organization or team. """ __slots__ = [ '_federation_extra_details_value', ] _has_required_fields = True def __init__(self, federation_extra_details=None): self._federation_extra_details_value = bb.NOT_SET if federation_extra_details is not None: self.federation_extra_details = federation_extra_details # Instance attribute type: FedExtraDetails (validator is set below) federation_extra_details = bb.Attribute("federation_extra_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(EndedEnterpriseAdminSessionDeprecatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EndedEnterpriseAdminSessionDeprecatedDetails_validator = bv.Struct(EndedEnterpriseAdminSessionDeprecatedDetails) class EndedEnterpriseAdminSessionDeprecatedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EndedEnterpriseAdminSessionDeprecatedType, self)._process_custom_annotations(annotation_type, field_path, processor) EndedEnterpriseAdminSessionDeprecatedType_validator = bv.Struct(EndedEnterpriseAdminSessionDeprecatedType) class EndedEnterpriseAdminSessionDetails(bb.Struct): """ Ended enterprise admin session. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(EndedEnterpriseAdminSessionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EndedEnterpriseAdminSessionDetails_validator = bv.Struct(EndedEnterpriseAdminSessionDetails) class EndedEnterpriseAdminSessionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EndedEnterpriseAdminSessionType, self)._process_custom_annotations(annotation_type, field_path, processor) EndedEnterpriseAdminSessionType_validator = bv.Struct(EndedEnterpriseAdminSessionType) class EnforceLinkPasswordPolicy(bb.Union): """ Policy for deciding whether password must be enforced when an externally shared link is updated This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition optional = None # Attribute is overwritten below the class definition required = None # Attribute is overwritten below the class definition other = None def is_optional(self): """ Check if the union tag is ``optional``. :rtype: bool """ return self._tag == 'optional' def is_required(self): """ Check if the union tag is ``required``. :rtype: bool """ return self._tag == 'required' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(EnforceLinkPasswordPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) EnforceLinkPasswordPolicy_validator = bv.Union(EnforceLinkPasswordPolicy) class EnterpriseSettingsLockingDetails(bb.Struct): """ Changed who can update a setting. :ivar team_log.EnterpriseSettingsLockingDetails.team_name: The secondary team name. :ivar team_log.EnterpriseSettingsLockingDetails.settings_page_name: Settings page name. :ivar team_log.EnterpriseSettingsLockingDetails.previous_settings_page_locking_state: Previous locked settings page state. :ivar team_log.EnterpriseSettingsLockingDetails.new_settings_page_locking_state: New locked settings page state. """ __slots__ = [ '_team_name_value', '_settings_page_name_value', '_previous_settings_page_locking_state_value', '_new_settings_page_locking_state_value', ] _has_required_fields = True def __init__(self, team_name=None, settings_page_name=None, previous_settings_page_locking_state=None, new_settings_page_locking_state=None): self._team_name_value = bb.NOT_SET self._settings_page_name_value = bb.NOT_SET self._previous_settings_page_locking_state_value = bb.NOT_SET self._new_settings_page_locking_state_value = bb.NOT_SET if team_name is not None: self.team_name = team_name if settings_page_name is not None: self.settings_page_name = settings_page_name if previous_settings_page_locking_state is not None: self.previous_settings_page_locking_state = previous_settings_page_locking_state if new_settings_page_locking_state is not None: self.new_settings_page_locking_state = new_settings_page_locking_state # Instance attribute type: str (validator is set below) team_name = bb.Attribute("team_name") # Instance attribute type: str (validator is set below) settings_page_name = bb.Attribute("settings_page_name") # Instance attribute type: str (validator is set below) previous_settings_page_locking_state = bb.Attribute("previous_settings_page_locking_state") # Instance attribute type: str (validator is set below) new_settings_page_locking_state = bb.Attribute("new_settings_page_locking_state") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EnterpriseSettingsLockingDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EnterpriseSettingsLockingDetails_validator = bv.Struct(EnterpriseSettingsLockingDetails) class EnterpriseSettingsLockingType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(EnterpriseSettingsLockingType, self)._process_custom_annotations(annotation_type, field_path, processor) EnterpriseSettingsLockingType_validator = bv.Struct(EnterpriseSettingsLockingType) class EventCategory(bb.Union): """ Category of events in event audit log. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_log.EventCategory.admin_alerting: Events that involve team related alerts. :ivar team_log.EventCategory.apps: Events that apply to management of linked apps. :ivar team_log.EventCategory.comments: Events that have to do with comments on files and Paper documents. :ivar team_log.EventCategory.data_governance: Events that involve data governance actions :ivar team_log.EventCategory.devices: Events that apply to linked devices on mobile, desktop and Web platforms. :ivar team_log.EventCategory.domains: Events that involve domain management feature: domain verification, invite enforcement and account capture. :ivar team_log.EventCategory.encryption: Events that involve encryption. :ivar team_log.EventCategory.file_operations: Events that have to do with filesystem operations on files and folders: copy, move, delete, etc. :ivar team_log.EventCategory.file_requests: Events that apply to the file requests feature. :ivar team_log.EventCategory.groups: Events that involve group management. :ivar team_log.EventCategory.logins: Events that involve users signing in to or out of Dropbox. :ivar team_log.EventCategory.members: Events that involve team member management. :ivar team_log.EventCategory.paper: Events that apply to Dropbox Paper. :ivar team_log.EventCategory.passwords: Events that involve using, changing or resetting passwords. :ivar team_log.EventCategory.reports: Events that concern generation of admin reports, including team activity and device usage. :ivar team_log.EventCategory.sharing: Events that apply to all types of sharing and collaboration. :ivar team_log.EventCategory.showcase: Events that apply to Dropbox Showcase. :ivar team_log.EventCategory.sso: Events that involve using or configuring single sign-on as well as administrative policies concerning single sign-on. :ivar team_log.EventCategory.team_folders: Events that involve team folder management. :ivar team_log.EventCategory.team_policies: Events that involve a change in team-wide policies. :ivar team_log.EventCategory.team_profile: Events that involve a change in the team profile. :ivar team_log.EventCategory.tfa: Events that involve using or configuring two factor authentication as well as administrative policies concerning two factor authentication. :ivar team_log.EventCategory.trusted_teams: Events that apply to cross-team trust establishment. """ _catch_all = 'other' # Attribute is overwritten below the class definition admin_alerting = None # Attribute is overwritten below the class definition apps = None # Attribute is overwritten below the class definition comments = None # Attribute is overwritten below the class definition data_governance = None # Attribute is overwritten below the class definition devices = None # Attribute is overwritten below the class definition domains = None # Attribute is overwritten below the class definition encryption = None # Attribute is overwritten below the class definition file_operations = None # Attribute is overwritten below the class definition file_requests = None # Attribute is overwritten below the class definition groups = None # Attribute is overwritten below the class definition logins = None # Attribute is overwritten below the class definition members = None # Attribute is overwritten below the class definition paper = None # Attribute is overwritten below the class definition passwords = None # Attribute is overwritten below the class definition reports = None # Attribute is overwritten below the class definition sharing = None # Attribute is overwritten below the class definition showcase = None # Attribute is overwritten below the class definition sso = None # Attribute is overwritten below the class definition team_folders = None # Attribute is overwritten below the class definition team_policies = None # Attribute is overwritten below the class definition team_profile = None # Attribute is overwritten below the class definition tfa = None # Attribute is overwritten below the class definition trusted_teams = None # Attribute is overwritten below the class definition other = None def is_admin_alerting(self): """ Check if the union tag is ``admin_alerting``. :rtype: bool """ return self._tag == 'admin_alerting' def is_apps(self): """ Check if the union tag is ``apps``. :rtype: bool """ return self._tag == 'apps' def is_comments(self): """ Check if the union tag is ``comments``. :rtype: bool """ return self._tag == 'comments' def is_data_governance(self): """ Check if the union tag is ``data_governance``. :rtype: bool """ return self._tag == 'data_governance' def is_devices(self): """ Check if the union tag is ``devices``. :rtype: bool """ return self._tag == 'devices' def is_domains(self): """ Check if the union tag is ``domains``. :rtype: bool """ return self._tag == 'domains' def is_encryption(self): """ Check if the union tag is ``encryption``. :rtype: bool """ return self._tag == 'encryption' def is_file_operations(self): """ Check if the union tag is ``file_operations``. :rtype: bool """ return self._tag == 'file_operations' def is_file_requests(self): """ Check if the union tag is ``file_requests``. :rtype: bool """ return self._tag == 'file_requests' def is_groups(self): """ Check if the union tag is ``groups``. :rtype: bool """ return self._tag == 'groups' def is_logins(self): """ Check if the union tag is ``logins``. :rtype: bool """ return self._tag == 'logins' def is_members(self): """ Check if the union tag is ``members``. :rtype: bool """ return self._tag == 'members' def is_paper(self): """ Check if the union tag is ``paper``. :rtype: bool """ return self._tag == 'paper' def is_passwords(self): """ Check if the union tag is ``passwords``. :rtype: bool """ return self._tag == 'passwords' def is_reports(self): """ Check if the union tag is ``reports``. :rtype: bool """ return self._tag == 'reports' def is_sharing(self): """ Check if the union tag is ``sharing``. :rtype: bool """ return self._tag == 'sharing' def is_showcase(self): """ Check if the union tag is ``showcase``. :rtype: bool """ return self._tag == 'showcase' def is_sso(self): """ Check if the union tag is ``sso``. :rtype: bool """ return self._tag == 'sso' def is_team_folders(self): """ Check if the union tag is ``team_folders``. :rtype: bool """ return self._tag == 'team_folders' def is_team_policies(self): """ Check if the union tag is ``team_policies``. :rtype: bool """ return self._tag == 'team_policies' def is_team_profile(self): """ Check if the union tag is ``team_profile``. :rtype: bool """ return self._tag == 'team_profile' def is_tfa(self): """ Check if the union tag is ``tfa``. :rtype: bool """ return self._tag == 'tfa' def is_trusted_teams(self): """ Check if the union tag is ``trusted_teams``. :rtype: bool """ return self._tag == 'trusted_teams' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(EventCategory, self)._process_custom_annotations(annotation_type, field_path, processor) EventCategory_validator = bv.Union(EventCategory) class EventDetails(bb.Union): """ Additional fields depending on the event type. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar MissingDetails EventDetails.missing_details: Hints that this event was returned with missing details due to an internal error. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def admin_alerting_alert_state_changed_details(cls, val): """ Create an instance of this class set to the ``admin_alerting_alert_state_changed_details`` tag with value ``val``. :param AdminAlertingAlertStateChangedDetails val: :rtype: EventDetails """ return cls('admin_alerting_alert_state_changed_details', val) @classmethod def admin_alerting_changed_alert_config_details(cls, val): """ Create an instance of this class set to the ``admin_alerting_changed_alert_config_details`` tag with value ``val``. :param AdminAlertingChangedAlertConfigDetails val: :rtype: EventDetails """ return cls('admin_alerting_changed_alert_config_details', val) @classmethod def admin_alerting_triggered_alert_details(cls, val): """ Create an instance of this class set to the ``admin_alerting_triggered_alert_details`` tag with value ``val``. :param AdminAlertingTriggeredAlertDetails val: :rtype: EventDetails """ return cls('admin_alerting_triggered_alert_details', val) @classmethod def ransomware_restore_process_completed_details(cls, val): """ Create an instance of this class set to the ``ransomware_restore_process_completed_details`` tag with value ``val``. :param RansomwareRestoreProcessCompletedDetails val: :rtype: EventDetails """ return cls('ransomware_restore_process_completed_details', val) @classmethod def ransomware_restore_process_started_details(cls, val): """ Create an instance of this class set to the ``ransomware_restore_process_started_details`` tag with value ``val``. :param RansomwareRestoreProcessStartedDetails val: :rtype: EventDetails """ return cls('ransomware_restore_process_started_details', val) @classmethod def app_blocked_by_permissions_details(cls, val): """ Create an instance of this class set to the ``app_blocked_by_permissions_details`` tag with value ``val``. :param AppBlockedByPermissionsDetails val: :rtype: EventDetails """ return cls('app_blocked_by_permissions_details', val) @classmethod def app_link_team_details(cls, val): """ Create an instance of this class set to the ``app_link_team_details`` tag with value ``val``. :param AppLinkTeamDetails val: :rtype: EventDetails """ return cls('app_link_team_details', val) @classmethod def app_link_user_details(cls, val): """ Create an instance of this class set to the ``app_link_user_details`` tag with value ``val``. :param AppLinkUserDetails val: :rtype: EventDetails """ return cls('app_link_user_details', val) @classmethod def app_unlink_team_details(cls, val): """ Create an instance of this class set to the ``app_unlink_team_details`` tag with value ``val``. :param AppUnlinkTeamDetails val: :rtype: EventDetails """ return cls('app_unlink_team_details', val) @classmethod def app_unlink_user_details(cls, val): """ Create an instance of this class set to the ``app_unlink_user_details`` tag with value ``val``. :param AppUnlinkUserDetails val: :rtype: EventDetails """ return cls('app_unlink_user_details', val) @classmethod def integration_connected_details(cls, val): """ Create an instance of this class set to the ``integration_connected_details`` tag with value ``val``. :param IntegrationConnectedDetails val: :rtype: EventDetails """ return cls('integration_connected_details', val) @classmethod def integration_disconnected_details(cls, val): """ Create an instance of this class set to the ``integration_disconnected_details`` tag with value ``val``. :param IntegrationDisconnectedDetails val: :rtype: EventDetails """ return cls('integration_disconnected_details', val) @classmethod def file_add_comment_details(cls, val): """ Create an instance of this class set to the ``file_add_comment_details`` tag with value ``val``. :param FileAddCommentDetails val: :rtype: EventDetails """ return cls('file_add_comment_details', val) @classmethod def file_change_comment_subscription_details(cls, val): """ Create an instance of this class set to the ``file_change_comment_subscription_details`` tag with value ``val``. :param FileChangeCommentSubscriptionDetails val: :rtype: EventDetails """ return cls('file_change_comment_subscription_details', val) @classmethod def file_delete_comment_details(cls, val): """ Create an instance of this class set to the ``file_delete_comment_details`` tag with value ``val``. :param FileDeleteCommentDetails val: :rtype: EventDetails """ return cls('file_delete_comment_details', val) @classmethod def file_edit_comment_details(cls, val): """ Create an instance of this class set to the ``file_edit_comment_details`` tag with value ``val``. :param FileEditCommentDetails val: :rtype: EventDetails """ return cls('file_edit_comment_details', val) @classmethod def file_like_comment_details(cls, val): """ Create an instance of this class set to the ``file_like_comment_details`` tag with value ``val``. :param FileLikeCommentDetails val: :rtype: EventDetails """ return cls('file_like_comment_details', val) @classmethod def file_resolve_comment_details(cls, val): """ Create an instance of this class set to the ``file_resolve_comment_details`` tag with value ``val``. :param FileResolveCommentDetails val: :rtype: EventDetails """ return cls('file_resolve_comment_details', val) @classmethod def file_unlike_comment_details(cls, val): """ Create an instance of this class set to the ``file_unlike_comment_details`` tag with value ``val``. :param FileUnlikeCommentDetails val: :rtype: EventDetails """ return cls('file_unlike_comment_details', val) @classmethod def file_unresolve_comment_details(cls, val): """ Create an instance of this class set to the ``file_unresolve_comment_details`` tag with value ``val``. :param FileUnresolveCommentDetails val: :rtype: EventDetails """ return cls('file_unresolve_comment_details', val) @classmethod def governance_policy_add_folders_details(cls, val): """ Create an instance of this class set to the ``governance_policy_add_folders_details`` tag with value ``val``. :param GovernancePolicyAddFoldersDetails val: :rtype: EventDetails """ return cls('governance_policy_add_folders_details', val) @classmethod def governance_policy_add_folder_failed_details(cls, val): """ Create an instance of this class set to the ``governance_policy_add_folder_failed_details`` tag with value ``val``. :param GovernancePolicyAddFolderFailedDetails val: :rtype: EventDetails """ return cls('governance_policy_add_folder_failed_details', val) @classmethod def governance_policy_content_disposed_details(cls, val): """ Create an instance of this class set to the ``governance_policy_content_disposed_details`` tag with value ``val``. :param GovernancePolicyContentDisposedDetails val: :rtype: EventDetails """ return cls('governance_policy_content_disposed_details', val) @classmethod def governance_policy_create_details(cls, val): """ Create an instance of this class set to the ``governance_policy_create_details`` tag with value ``val``. :param GovernancePolicyCreateDetails val: :rtype: EventDetails """ return cls('governance_policy_create_details', val) @classmethod def governance_policy_delete_details(cls, val): """ Create an instance of this class set to the ``governance_policy_delete_details`` tag with value ``val``. :param GovernancePolicyDeleteDetails val: :rtype: EventDetails """ return cls('governance_policy_delete_details', val) @classmethod def governance_policy_edit_details_details(cls, val): """ Create an instance of this class set to the ``governance_policy_edit_details_details`` tag with value ``val``. :param GovernancePolicyEditDetailsDetails val: :rtype: EventDetails """ return cls('governance_policy_edit_details_details', val) @classmethod def governance_policy_edit_duration_details(cls, val): """ Create an instance of this class set to the ``governance_policy_edit_duration_details`` tag with value ``val``. :param GovernancePolicyEditDurationDetails val: :rtype: EventDetails """ return cls('governance_policy_edit_duration_details', val) @classmethod def governance_policy_export_created_details(cls, val): """ Create an instance of this class set to the ``governance_policy_export_created_details`` tag with value ``val``. :param GovernancePolicyExportCreatedDetails val: :rtype: EventDetails """ return cls('governance_policy_export_created_details', val) @classmethod def governance_policy_export_removed_details(cls, val): """ Create an instance of this class set to the ``governance_policy_export_removed_details`` tag with value ``val``. :param GovernancePolicyExportRemovedDetails val: :rtype: EventDetails """ return cls('governance_policy_export_removed_details', val) @classmethod def governance_policy_remove_folders_details(cls, val): """ Create an instance of this class set to the ``governance_policy_remove_folders_details`` tag with value ``val``. :param GovernancePolicyRemoveFoldersDetails val: :rtype: EventDetails """ return cls('governance_policy_remove_folders_details', val) @classmethod def governance_policy_report_created_details(cls, val): """ Create an instance of this class set to the ``governance_policy_report_created_details`` tag with value ``val``. :param GovernancePolicyReportCreatedDetails val: :rtype: EventDetails """ return cls('governance_policy_report_created_details', val) @classmethod def governance_policy_zip_part_downloaded_details(cls, val): """ Create an instance of this class set to the ``governance_policy_zip_part_downloaded_details`` tag with value ``val``. :param GovernancePolicyZipPartDownloadedDetails val: :rtype: EventDetails """ return cls('governance_policy_zip_part_downloaded_details', val) @classmethod def legal_holds_activate_a_hold_details(cls, val): """ Create an instance of this class set to the ``legal_holds_activate_a_hold_details`` tag with value ``val``. :param LegalHoldsActivateAHoldDetails val: :rtype: EventDetails """ return cls('legal_holds_activate_a_hold_details', val) @classmethod def legal_holds_add_members_details(cls, val): """ Create an instance of this class set to the ``legal_holds_add_members_details`` tag with value ``val``. :param LegalHoldsAddMembersDetails val: :rtype: EventDetails """ return cls('legal_holds_add_members_details', val) @classmethod def legal_holds_change_hold_details_details(cls, val): """ Create an instance of this class set to the ``legal_holds_change_hold_details_details`` tag with value ``val``. :param LegalHoldsChangeHoldDetailsDetails val: :rtype: EventDetails """ return cls('legal_holds_change_hold_details_details', val) @classmethod def legal_holds_change_hold_name_details(cls, val): """ Create an instance of this class set to the ``legal_holds_change_hold_name_details`` tag with value ``val``. :param LegalHoldsChangeHoldNameDetails val: :rtype: EventDetails """ return cls('legal_holds_change_hold_name_details', val) @classmethod def legal_holds_export_a_hold_details(cls, val): """ Create an instance of this class set to the ``legal_holds_export_a_hold_details`` tag with value ``val``. :param LegalHoldsExportAHoldDetails val: :rtype: EventDetails """ return cls('legal_holds_export_a_hold_details', val) @classmethod def legal_holds_export_cancelled_details(cls, val): """ Create an instance of this class set to the ``legal_holds_export_cancelled_details`` tag with value ``val``. :param LegalHoldsExportCancelledDetails val: :rtype: EventDetails """ return cls('legal_holds_export_cancelled_details', val) @classmethod def legal_holds_export_downloaded_details(cls, val): """ Create an instance of this class set to the ``legal_holds_export_downloaded_details`` tag with value ``val``. :param LegalHoldsExportDownloadedDetails val: :rtype: EventDetails """ return cls('legal_holds_export_downloaded_details', val) @classmethod def legal_holds_export_removed_details(cls, val): """ Create an instance of this class set to the ``legal_holds_export_removed_details`` tag with value ``val``. :param LegalHoldsExportRemovedDetails val: :rtype: EventDetails """ return cls('legal_holds_export_removed_details', val) @classmethod def legal_holds_release_a_hold_details(cls, val): """ Create an instance of this class set to the ``legal_holds_release_a_hold_details`` tag with value ``val``. :param LegalHoldsReleaseAHoldDetails val: :rtype: EventDetails """ return cls('legal_holds_release_a_hold_details', val) @classmethod def legal_holds_remove_members_details(cls, val): """ Create an instance of this class set to the ``legal_holds_remove_members_details`` tag with value ``val``. :param LegalHoldsRemoveMembersDetails val: :rtype: EventDetails """ return cls('legal_holds_remove_members_details', val) @classmethod def legal_holds_report_a_hold_details(cls, val): """ Create an instance of this class set to the ``legal_holds_report_a_hold_details`` tag with value ``val``. :param LegalHoldsReportAHoldDetails val: :rtype: EventDetails """ return cls('legal_holds_report_a_hold_details', val) @classmethod def device_change_ip_desktop_details(cls, val): """ Create an instance of this class set to the ``device_change_ip_desktop_details`` tag with value ``val``. :param DeviceChangeIpDesktopDetails val: :rtype: EventDetails """ return cls('device_change_ip_desktop_details', val) @classmethod def device_change_ip_mobile_details(cls, val): """ Create an instance of this class set to the ``device_change_ip_mobile_details`` tag with value ``val``. :param DeviceChangeIpMobileDetails val: :rtype: EventDetails """ return cls('device_change_ip_mobile_details', val) @classmethod def device_change_ip_web_details(cls, val): """ Create an instance of this class set to the ``device_change_ip_web_details`` tag with value ``val``. :param DeviceChangeIpWebDetails val: :rtype: EventDetails """ return cls('device_change_ip_web_details', val) @classmethod def device_delete_on_unlink_fail_details(cls, val): """ Create an instance of this class set to the ``device_delete_on_unlink_fail_details`` tag with value ``val``. :param DeviceDeleteOnUnlinkFailDetails val: :rtype: EventDetails """ return cls('device_delete_on_unlink_fail_details', val) @classmethod def device_delete_on_unlink_success_details(cls, val): """ Create an instance of this class set to the ``device_delete_on_unlink_success_details`` tag with value ``val``. :param DeviceDeleteOnUnlinkSuccessDetails val: :rtype: EventDetails """ return cls('device_delete_on_unlink_success_details', val) @classmethod def device_link_fail_details(cls, val): """ Create an instance of this class set to the ``device_link_fail_details`` tag with value ``val``. :param DeviceLinkFailDetails val: :rtype: EventDetails """ return cls('device_link_fail_details', val) @classmethod def device_link_success_details(cls, val): """ Create an instance of this class set to the ``device_link_success_details`` tag with value ``val``. :param DeviceLinkSuccessDetails val: :rtype: EventDetails """ return cls('device_link_success_details', val) @classmethod def device_management_disabled_details(cls, val): """ Create an instance of this class set to the ``device_management_disabled_details`` tag with value ``val``. :param DeviceManagementDisabledDetails val: :rtype: EventDetails """ return cls('device_management_disabled_details', val) @classmethod def device_management_enabled_details(cls, val): """ Create an instance of this class set to the ``device_management_enabled_details`` tag with value ``val``. :param DeviceManagementEnabledDetails val: :rtype: EventDetails """ return cls('device_management_enabled_details', val) @classmethod def device_sync_backup_status_changed_details(cls, val): """ Create an instance of this class set to the ``device_sync_backup_status_changed_details`` tag with value ``val``. :param DeviceSyncBackupStatusChangedDetails val: :rtype: EventDetails """ return cls('device_sync_backup_status_changed_details', val) @classmethod def device_unlink_details(cls, val): """ Create an instance of this class set to the ``device_unlink_details`` tag with value ``val``. :param DeviceUnlinkDetails val: :rtype: EventDetails """ return cls('device_unlink_details', val) @classmethod def dropbox_passwords_exported_details(cls, val): """ Create an instance of this class set to the ``dropbox_passwords_exported_details`` tag with value ``val``. :param DropboxPasswordsExportedDetails val: :rtype: EventDetails """ return cls('dropbox_passwords_exported_details', val) @classmethod def dropbox_passwords_new_device_enrolled_details(cls, val): """ Create an instance of this class set to the ``dropbox_passwords_new_device_enrolled_details`` tag with value ``val``. :param DropboxPasswordsNewDeviceEnrolledDetails val: :rtype: EventDetails """ return cls('dropbox_passwords_new_device_enrolled_details', val) @classmethod def emm_refresh_auth_token_details(cls, val): """ Create an instance of this class set to the ``emm_refresh_auth_token_details`` tag with value ``val``. :param EmmRefreshAuthTokenDetails val: :rtype: EventDetails """ return cls('emm_refresh_auth_token_details', val) @classmethod def external_drive_backup_eligibility_status_checked_details(cls, val): """ Create an instance of this class set to the ``external_drive_backup_eligibility_status_checked_details`` tag with value ``val``. :param ExternalDriveBackupEligibilityStatusCheckedDetails val: :rtype: EventDetails """ return cls('external_drive_backup_eligibility_status_checked_details', val) @classmethod def external_drive_backup_status_changed_details(cls, val): """ Create an instance of this class set to the ``external_drive_backup_status_changed_details`` tag with value ``val``. :param ExternalDriveBackupStatusChangedDetails val: :rtype: EventDetails """ return cls('external_drive_backup_status_changed_details', val) @classmethod def account_capture_change_availability_details(cls, val): """ Create an instance of this class set to the ``account_capture_change_availability_details`` tag with value ``val``. :param AccountCaptureChangeAvailabilityDetails val: :rtype: EventDetails """ return cls('account_capture_change_availability_details', val) @classmethod def account_capture_migrate_account_details(cls, val): """ Create an instance of this class set to the ``account_capture_migrate_account_details`` tag with value ``val``. :param AccountCaptureMigrateAccountDetails val: :rtype: EventDetails """ return cls('account_capture_migrate_account_details', val) @classmethod def account_capture_notification_emails_sent_details(cls, val): """ Create an instance of this class set to the ``account_capture_notification_emails_sent_details`` tag with value ``val``. :param AccountCaptureNotificationEmailsSentDetails val: :rtype: EventDetails """ return cls('account_capture_notification_emails_sent_details', val) @classmethod def account_capture_relinquish_account_details(cls, val): """ Create an instance of this class set to the ``account_capture_relinquish_account_details`` tag with value ``val``. :param AccountCaptureRelinquishAccountDetails val: :rtype: EventDetails """ return cls('account_capture_relinquish_account_details', val) @classmethod def disabled_domain_invites_details(cls, val): """ Create an instance of this class set to the ``disabled_domain_invites_details`` tag with value ``val``. :param DisabledDomainInvitesDetails val: :rtype: EventDetails """ return cls('disabled_domain_invites_details', val) @classmethod def domain_invites_approve_request_to_join_team_details(cls, val): """ Create an instance of this class set to the ``domain_invites_approve_request_to_join_team_details`` tag with value ``val``. :param DomainInvitesApproveRequestToJoinTeamDetails val: :rtype: EventDetails """ return cls('domain_invites_approve_request_to_join_team_details', val) @classmethod def domain_invites_decline_request_to_join_team_details(cls, val): """ Create an instance of this class set to the ``domain_invites_decline_request_to_join_team_details`` tag with value ``val``. :param DomainInvitesDeclineRequestToJoinTeamDetails val: :rtype: EventDetails """ return cls('domain_invites_decline_request_to_join_team_details', val) @classmethod def domain_invites_email_existing_users_details(cls, val): """ Create an instance of this class set to the ``domain_invites_email_existing_users_details`` tag with value ``val``. :param DomainInvitesEmailExistingUsersDetails val: :rtype: EventDetails """ return cls('domain_invites_email_existing_users_details', val) @classmethod def domain_invites_request_to_join_team_details(cls, val): """ Create an instance of this class set to the ``domain_invites_request_to_join_team_details`` tag with value ``val``. :param DomainInvitesRequestToJoinTeamDetails val: :rtype: EventDetails """ return cls('domain_invites_request_to_join_team_details', val) @classmethod def domain_invites_set_invite_new_user_pref_to_no_details(cls, val): """ Create an instance of this class set to the ``domain_invites_set_invite_new_user_pref_to_no_details`` tag with value ``val``. :param DomainInvitesSetInviteNewUserPrefToNoDetails val: :rtype: EventDetails """ return cls('domain_invites_set_invite_new_user_pref_to_no_details', val) @classmethod def domain_invites_set_invite_new_user_pref_to_yes_details(cls, val): """ Create an instance of this class set to the ``domain_invites_set_invite_new_user_pref_to_yes_details`` tag with value ``val``. :param DomainInvitesSetInviteNewUserPrefToYesDetails val: :rtype: EventDetails """ return cls('domain_invites_set_invite_new_user_pref_to_yes_details', val) @classmethod def domain_verification_add_domain_fail_details(cls, val): """ Create an instance of this class set to the ``domain_verification_add_domain_fail_details`` tag with value ``val``. :param DomainVerificationAddDomainFailDetails val: :rtype: EventDetails """ return cls('domain_verification_add_domain_fail_details', val) @classmethod def domain_verification_add_domain_success_details(cls, val): """ Create an instance of this class set to the ``domain_verification_add_domain_success_details`` tag with value ``val``. :param DomainVerificationAddDomainSuccessDetails val: :rtype: EventDetails """ return cls('domain_verification_add_domain_success_details', val) @classmethod def domain_verification_remove_domain_details(cls, val): """ Create an instance of this class set to the ``domain_verification_remove_domain_details`` tag with value ``val``. :param DomainVerificationRemoveDomainDetails val: :rtype: EventDetails """ return cls('domain_verification_remove_domain_details', val) @classmethod def enabled_domain_invites_details(cls, val): """ Create an instance of this class set to the ``enabled_domain_invites_details`` tag with value ``val``. :param EnabledDomainInvitesDetails val: :rtype: EventDetails """ return cls('enabled_domain_invites_details', val) @classmethod def team_encryption_key_cancel_key_deletion_details(cls, val): """ Create an instance of this class set to the ``team_encryption_key_cancel_key_deletion_details`` tag with value ``val``. :param TeamEncryptionKeyCancelKeyDeletionDetails val: :rtype: EventDetails """ return cls('team_encryption_key_cancel_key_deletion_details', val) @classmethod def team_encryption_key_create_key_details(cls, val): """ Create an instance of this class set to the ``team_encryption_key_create_key_details`` tag with value ``val``. :param TeamEncryptionKeyCreateKeyDetails val: :rtype: EventDetails """ return cls('team_encryption_key_create_key_details', val) @classmethod def team_encryption_key_delete_key_details(cls, val): """ Create an instance of this class set to the ``team_encryption_key_delete_key_details`` tag with value ``val``. :param TeamEncryptionKeyDeleteKeyDetails val: :rtype: EventDetails """ return cls('team_encryption_key_delete_key_details', val) @classmethod def team_encryption_key_disable_key_details(cls, val): """ Create an instance of this class set to the ``team_encryption_key_disable_key_details`` tag with value ``val``. :param TeamEncryptionKeyDisableKeyDetails val: :rtype: EventDetails """ return cls('team_encryption_key_disable_key_details', val) @classmethod def team_encryption_key_enable_key_details(cls, val): """ Create an instance of this class set to the ``team_encryption_key_enable_key_details`` tag with value ``val``. :param TeamEncryptionKeyEnableKeyDetails val: :rtype: EventDetails """ return cls('team_encryption_key_enable_key_details', val) @classmethod def team_encryption_key_rotate_key_details(cls, val): """ Create an instance of this class set to the ``team_encryption_key_rotate_key_details`` tag with value ``val``. :param TeamEncryptionKeyRotateKeyDetails val: :rtype: EventDetails """ return cls('team_encryption_key_rotate_key_details', val) @classmethod def team_encryption_key_schedule_key_deletion_details(cls, val): """ Create an instance of this class set to the ``team_encryption_key_schedule_key_deletion_details`` tag with value ``val``. :param TeamEncryptionKeyScheduleKeyDeletionDetails val: :rtype: EventDetails """ return cls('team_encryption_key_schedule_key_deletion_details', val) @classmethod def apply_naming_convention_details(cls, val): """ Create an instance of this class set to the ``apply_naming_convention_details`` tag with value ``val``. :param ApplyNamingConventionDetails val: :rtype: EventDetails """ return cls('apply_naming_convention_details', val) @classmethod def create_folder_details(cls, val): """ Create an instance of this class set to the ``create_folder_details`` tag with value ``val``. :param CreateFolderDetails val: :rtype: EventDetails """ return cls('create_folder_details', val) @classmethod def file_add_details(cls, val): """ Create an instance of this class set to the ``file_add_details`` tag with value ``val``. :param FileAddDetails val: :rtype: EventDetails """ return cls('file_add_details', val) @classmethod def file_add_from_automation_details(cls, val): """ Create an instance of this class set to the ``file_add_from_automation_details`` tag with value ``val``. :param FileAddFromAutomationDetails val: :rtype: EventDetails """ return cls('file_add_from_automation_details', val) @classmethod def file_copy_details(cls, val): """ Create an instance of this class set to the ``file_copy_details`` tag with value ``val``. :param FileCopyDetails val: :rtype: EventDetails """ return cls('file_copy_details', val) @classmethod def file_delete_details(cls, val): """ Create an instance of this class set to the ``file_delete_details`` tag with value ``val``. :param FileDeleteDetails val: :rtype: EventDetails """ return cls('file_delete_details', val) @classmethod def file_download_details(cls, val): """ Create an instance of this class set to the ``file_download_details`` tag with value ``val``. :param FileDownloadDetails val: :rtype: EventDetails """ return cls('file_download_details', val) @classmethod def file_edit_details(cls, val): """ Create an instance of this class set to the ``file_edit_details`` tag with value ``val``. :param FileEditDetails val: :rtype: EventDetails """ return cls('file_edit_details', val) @classmethod def file_get_copy_reference_details(cls, val): """ Create an instance of this class set to the ``file_get_copy_reference_details`` tag with value ``val``. :param FileGetCopyReferenceDetails val: :rtype: EventDetails """ return cls('file_get_copy_reference_details', val) @classmethod def file_locking_lock_status_changed_details(cls, val): """ Create an instance of this class set to the ``file_locking_lock_status_changed_details`` tag with value ``val``. :param FileLockingLockStatusChangedDetails val: :rtype: EventDetails """ return cls('file_locking_lock_status_changed_details', val) @classmethod def file_move_details(cls, val): """ Create an instance of this class set to the ``file_move_details`` tag with value ``val``. :param FileMoveDetails val: :rtype: EventDetails """ return cls('file_move_details', val) @classmethod def file_permanently_delete_details(cls, val): """ Create an instance of this class set to the ``file_permanently_delete_details`` tag with value ``val``. :param FilePermanentlyDeleteDetails val: :rtype: EventDetails """ return cls('file_permanently_delete_details', val) @classmethod def file_preview_details(cls, val): """ Create an instance of this class set to the ``file_preview_details`` tag with value ``val``. :param FilePreviewDetails val: :rtype: EventDetails """ return cls('file_preview_details', val) @classmethod def file_rename_details(cls, val): """ Create an instance of this class set to the ``file_rename_details`` tag with value ``val``. :param FileRenameDetails val: :rtype: EventDetails """ return cls('file_rename_details', val) @classmethod def file_restore_details(cls, val): """ Create an instance of this class set to the ``file_restore_details`` tag with value ``val``. :param FileRestoreDetails val: :rtype: EventDetails """ return cls('file_restore_details', val) @classmethod def file_revert_details(cls, val): """ Create an instance of this class set to the ``file_revert_details`` tag with value ``val``. :param FileRevertDetails val: :rtype: EventDetails """ return cls('file_revert_details', val) @classmethod def file_rollback_changes_details(cls, val): """ Create an instance of this class set to the ``file_rollback_changes_details`` tag with value ``val``. :param FileRollbackChangesDetails val: :rtype: EventDetails """ return cls('file_rollback_changes_details', val) @classmethod def file_save_copy_reference_details(cls, val): """ Create an instance of this class set to the ``file_save_copy_reference_details`` tag with value ``val``. :param FileSaveCopyReferenceDetails val: :rtype: EventDetails """ return cls('file_save_copy_reference_details', val) @classmethod def folder_overview_description_changed_details(cls, val): """ Create an instance of this class set to the ``folder_overview_description_changed_details`` tag with value ``val``. :param FolderOverviewDescriptionChangedDetails val: :rtype: EventDetails """ return cls('folder_overview_description_changed_details', val) @classmethod def folder_overview_item_pinned_details(cls, val): """ Create an instance of this class set to the ``folder_overview_item_pinned_details`` tag with value ``val``. :param FolderOverviewItemPinnedDetails val: :rtype: EventDetails """ return cls('folder_overview_item_pinned_details', val) @classmethod def folder_overview_item_unpinned_details(cls, val): """ Create an instance of this class set to the ``folder_overview_item_unpinned_details`` tag with value ``val``. :param FolderOverviewItemUnpinnedDetails val: :rtype: EventDetails """ return cls('folder_overview_item_unpinned_details', val) @classmethod def object_label_added_details(cls, val): """ Create an instance of this class set to the ``object_label_added_details`` tag with value ``val``. :param ObjectLabelAddedDetails val: :rtype: EventDetails """ return cls('object_label_added_details', val) @classmethod def object_label_removed_details(cls, val): """ Create an instance of this class set to the ``object_label_removed_details`` tag with value ``val``. :param ObjectLabelRemovedDetails val: :rtype: EventDetails """ return cls('object_label_removed_details', val) @classmethod def object_label_updated_value_details(cls, val): """ Create an instance of this class set to the ``object_label_updated_value_details`` tag with value ``val``. :param ObjectLabelUpdatedValueDetails val: :rtype: EventDetails """ return cls('object_label_updated_value_details', val) @classmethod def organize_folder_with_tidy_details(cls, val): """ Create an instance of this class set to the ``organize_folder_with_tidy_details`` tag with value ``val``. :param OrganizeFolderWithTidyDetails val: :rtype: EventDetails """ return cls('organize_folder_with_tidy_details', val) @classmethod def replay_file_delete_details(cls, val): """ Create an instance of this class set to the ``replay_file_delete_details`` tag with value ``val``. :param ReplayFileDeleteDetails val: :rtype: EventDetails """ return cls('replay_file_delete_details', val) @classmethod def rewind_folder_details(cls, val): """ Create an instance of this class set to the ``rewind_folder_details`` tag with value ``val``. :param RewindFolderDetails val: :rtype: EventDetails """ return cls('rewind_folder_details', val) @classmethod def undo_naming_convention_details(cls, val): """ Create an instance of this class set to the ``undo_naming_convention_details`` tag with value ``val``. :param UndoNamingConventionDetails val: :rtype: EventDetails """ return cls('undo_naming_convention_details', val) @classmethod def undo_organize_folder_with_tidy_details(cls, val): """ Create an instance of this class set to the ``undo_organize_folder_with_tidy_details`` tag with value ``val``. :param UndoOrganizeFolderWithTidyDetails val: :rtype: EventDetails """ return cls('undo_organize_folder_with_tidy_details', val) @classmethod def user_tags_added_details(cls, val): """ Create an instance of this class set to the ``user_tags_added_details`` tag with value ``val``. :param UserTagsAddedDetails val: :rtype: EventDetails """ return cls('user_tags_added_details', val) @classmethod def user_tags_removed_details(cls, val): """ Create an instance of this class set to the ``user_tags_removed_details`` tag with value ``val``. :param UserTagsRemovedDetails val: :rtype: EventDetails """ return cls('user_tags_removed_details', val) @classmethod def email_ingest_receive_file_details(cls, val): """ Create an instance of this class set to the ``email_ingest_receive_file_details`` tag with value ``val``. :param EmailIngestReceiveFileDetails val: :rtype: EventDetails """ return cls('email_ingest_receive_file_details', val) @classmethod def file_request_change_details(cls, val): """ Create an instance of this class set to the ``file_request_change_details`` tag with value ``val``. :param FileRequestChangeDetails val: :rtype: EventDetails """ return cls('file_request_change_details', val) @classmethod def file_request_close_details(cls, val): """ Create an instance of this class set to the ``file_request_close_details`` tag with value ``val``. :param FileRequestCloseDetails val: :rtype: EventDetails """ return cls('file_request_close_details', val) @classmethod def file_request_create_details(cls, val): """ Create an instance of this class set to the ``file_request_create_details`` tag with value ``val``. :param FileRequestCreateDetails val: :rtype: EventDetails """ return cls('file_request_create_details', val) @classmethod def file_request_delete_details(cls, val): """ Create an instance of this class set to the ``file_request_delete_details`` tag with value ``val``. :param FileRequestDeleteDetails val: :rtype: EventDetails """ return cls('file_request_delete_details', val) @classmethod def file_request_receive_file_details(cls, val): """ Create an instance of this class set to the ``file_request_receive_file_details`` tag with value ``val``. :param FileRequestReceiveFileDetails val: :rtype: EventDetails """ return cls('file_request_receive_file_details', val) @classmethod def group_add_external_id_details(cls, val): """ Create an instance of this class set to the ``group_add_external_id_details`` tag with value ``val``. :param GroupAddExternalIdDetails val: :rtype: EventDetails """ return cls('group_add_external_id_details', val) @classmethod def group_add_member_details(cls, val): """ Create an instance of this class set to the ``group_add_member_details`` tag with value ``val``. :param GroupAddMemberDetails val: :rtype: EventDetails """ return cls('group_add_member_details', val) @classmethod def group_change_external_id_details(cls, val): """ Create an instance of this class set to the ``group_change_external_id_details`` tag with value ``val``. :param GroupChangeExternalIdDetails val: :rtype: EventDetails """ return cls('group_change_external_id_details', val) @classmethod def group_change_management_type_details(cls, val): """ Create an instance of this class set to the ``group_change_management_type_details`` tag with value ``val``. :param GroupChangeManagementTypeDetails val: :rtype: EventDetails """ return cls('group_change_management_type_details', val) @classmethod def group_change_member_role_details(cls, val): """ Create an instance of this class set to the ``group_change_member_role_details`` tag with value ``val``. :param GroupChangeMemberRoleDetails val: :rtype: EventDetails """ return cls('group_change_member_role_details', val) @classmethod def group_create_details(cls, val): """ Create an instance of this class set to the ``group_create_details`` tag with value ``val``. :param GroupCreateDetails val: :rtype: EventDetails """ return cls('group_create_details', val) @classmethod def group_delete_details(cls, val): """ Create an instance of this class set to the ``group_delete_details`` tag with value ``val``. :param GroupDeleteDetails val: :rtype: EventDetails """ return cls('group_delete_details', val) @classmethod def group_description_updated_details(cls, val): """ Create an instance of this class set to the ``group_description_updated_details`` tag with value ``val``. :param GroupDescriptionUpdatedDetails val: :rtype: EventDetails """ return cls('group_description_updated_details', val) @classmethod def group_join_policy_updated_details(cls, val): """ Create an instance of this class set to the ``group_join_policy_updated_details`` tag with value ``val``. :param GroupJoinPolicyUpdatedDetails val: :rtype: EventDetails """ return cls('group_join_policy_updated_details', val) @classmethod def group_moved_details(cls, val): """ Create an instance of this class set to the ``group_moved_details`` tag with value ``val``. :param GroupMovedDetails val: :rtype: EventDetails """ return cls('group_moved_details', val) @classmethod def group_remove_external_id_details(cls, val): """ Create an instance of this class set to the ``group_remove_external_id_details`` tag with value ``val``. :param GroupRemoveExternalIdDetails val: :rtype: EventDetails """ return cls('group_remove_external_id_details', val) @classmethod def group_remove_member_details(cls, val): """ Create an instance of this class set to the ``group_remove_member_details`` tag with value ``val``. :param GroupRemoveMemberDetails val: :rtype: EventDetails """ return cls('group_remove_member_details', val) @classmethod def group_rename_details(cls, val): """ Create an instance of this class set to the ``group_rename_details`` tag with value ``val``. :param GroupRenameDetails val: :rtype: EventDetails """ return cls('group_rename_details', val) @classmethod def account_lock_or_unlocked_details(cls, val): """ Create an instance of this class set to the ``account_lock_or_unlocked_details`` tag with value ``val``. :param AccountLockOrUnlockedDetails val: :rtype: EventDetails """ return cls('account_lock_or_unlocked_details', val) @classmethod def emm_error_details(cls, val): """ Create an instance of this class set to the ``emm_error_details`` tag with value ``val``. :param EmmErrorDetails val: :rtype: EventDetails """ return cls('emm_error_details', val) @classmethod def guest_admin_signed_in_via_trusted_teams_details(cls, val): """ Create an instance of this class set to the ``guest_admin_signed_in_via_trusted_teams_details`` tag with value ``val``. :param GuestAdminSignedInViaTrustedTeamsDetails val: :rtype: EventDetails """ return cls('guest_admin_signed_in_via_trusted_teams_details', val) @classmethod def guest_admin_signed_out_via_trusted_teams_details(cls, val): """ Create an instance of this class set to the ``guest_admin_signed_out_via_trusted_teams_details`` tag with value ``val``. :param GuestAdminSignedOutViaTrustedTeamsDetails val: :rtype: EventDetails """ return cls('guest_admin_signed_out_via_trusted_teams_details', val) @classmethod def login_fail_details(cls, val): """ Create an instance of this class set to the ``login_fail_details`` tag with value ``val``. :param LoginFailDetails val: :rtype: EventDetails """ return cls('login_fail_details', val) @classmethod def login_success_details(cls, val): """ Create an instance of this class set to the ``login_success_details`` tag with value ``val``. :param LoginSuccessDetails val: :rtype: EventDetails """ return cls('login_success_details', val) @classmethod def logout_details(cls, val): """ Create an instance of this class set to the ``logout_details`` tag with value ``val``. :param LogoutDetails val: :rtype: EventDetails """ return cls('logout_details', val) @classmethod def reseller_support_session_end_details(cls, val): """ Create an instance of this class set to the ``reseller_support_session_end_details`` tag with value ``val``. :param ResellerSupportSessionEndDetails val: :rtype: EventDetails """ return cls('reseller_support_session_end_details', val) @classmethod def reseller_support_session_start_details(cls, val): """ Create an instance of this class set to the ``reseller_support_session_start_details`` tag with value ``val``. :param ResellerSupportSessionStartDetails val: :rtype: EventDetails """ return cls('reseller_support_session_start_details', val) @classmethod def sign_in_as_session_end_details(cls, val): """ Create an instance of this class set to the ``sign_in_as_session_end_details`` tag with value ``val``. :param SignInAsSessionEndDetails val: :rtype: EventDetails """ return cls('sign_in_as_session_end_details', val) @classmethod def sign_in_as_session_start_details(cls, val): """ Create an instance of this class set to the ``sign_in_as_session_start_details`` tag with value ``val``. :param SignInAsSessionStartDetails val: :rtype: EventDetails """ return cls('sign_in_as_session_start_details', val) @classmethod def sso_error_details(cls, val): """ Create an instance of this class set to the ``sso_error_details`` tag with value ``val``. :param SsoErrorDetails val: :rtype: EventDetails """ return cls('sso_error_details', val) @classmethod def backup_admin_invitation_sent_details(cls, val): """ Create an instance of this class set to the ``backup_admin_invitation_sent_details`` tag with value ``val``. :param BackupAdminInvitationSentDetails val: :rtype: EventDetails """ return cls('backup_admin_invitation_sent_details', val) @classmethod def backup_invitation_opened_details(cls, val): """ Create an instance of this class set to the ``backup_invitation_opened_details`` tag with value ``val``. :param BackupInvitationOpenedDetails val: :rtype: EventDetails """ return cls('backup_invitation_opened_details', val) @classmethod def create_team_invite_link_details(cls, val): """ Create an instance of this class set to the ``create_team_invite_link_details`` tag with value ``val``. :param CreateTeamInviteLinkDetails val: :rtype: EventDetails """ return cls('create_team_invite_link_details', val) @classmethod def delete_team_invite_link_details(cls, val): """ Create an instance of this class set to the ``delete_team_invite_link_details`` tag with value ``val``. :param DeleteTeamInviteLinkDetails val: :rtype: EventDetails """ return cls('delete_team_invite_link_details', val) @classmethod def member_add_external_id_details(cls, val): """ Create an instance of this class set to the ``member_add_external_id_details`` tag with value ``val``. :param MemberAddExternalIdDetails val: :rtype: EventDetails """ return cls('member_add_external_id_details', val) @classmethod def member_add_name_details(cls, val): """ Create an instance of this class set to the ``member_add_name_details`` tag with value ``val``. :param MemberAddNameDetails val: :rtype: EventDetails """ return cls('member_add_name_details', val) @classmethod def member_change_admin_role_details(cls, val): """ Create an instance of this class set to the ``member_change_admin_role_details`` tag with value ``val``. :param MemberChangeAdminRoleDetails val: :rtype: EventDetails """ return cls('member_change_admin_role_details', val) @classmethod def member_change_email_details(cls, val): """ Create an instance of this class set to the ``member_change_email_details`` tag with value ``val``. :param MemberChangeEmailDetails val: :rtype: EventDetails """ return cls('member_change_email_details', val) @classmethod def member_change_external_id_details(cls, val): """ Create an instance of this class set to the ``member_change_external_id_details`` tag with value ``val``. :param MemberChangeExternalIdDetails val: :rtype: EventDetails """ return cls('member_change_external_id_details', val) @classmethod def member_change_membership_type_details(cls, val): """ Create an instance of this class set to the ``member_change_membership_type_details`` tag with value ``val``. :param MemberChangeMembershipTypeDetails val: :rtype: EventDetails """ return cls('member_change_membership_type_details', val) @classmethod def member_change_name_details(cls, val): """ Create an instance of this class set to the ``member_change_name_details`` tag with value ``val``. :param MemberChangeNameDetails val: :rtype: EventDetails """ return cls('member_change_name_details', val) @classmethod def member_change_reseller_role_details(cls, val): """ Create an instance of this class set to the ``member_change_reseller_role_details`` tag with value ``val``. :param MemberChangeResellerRoleDetails val: :rtype: EventDetails """ return cls('member_change_reseller_role_details', val) @classmethod def member_change_status_details(cls, val): """ Create an instance of this class set to the ``member_change_status_details`` tag with value ``val``. :param MemberChangeStatusDetails val: :rtype: EventDetails """ return cls('member_change_status_details', val) @classmethod def member_delete_manual_contacts_details(cls, val): """ Create an instance of this class set to the ``member_delete_manual_contacts_details`` tag with value ``val``. :param MemberDeleteManualContactsDetails val: :rtype: EventDetails """ return cls('member_delete_manual_contacts_details', val) @classmethod def member_delete_profile_photo_details(cls, val): """ Create an instance of this class set to the ``member_delete_profile_photo_details`` tag with value ``val``. :param MemberDeleteProfilePhotoDetails val: :rtype: EventDetails """ return cls('member_delete_profile_photo_details', val) @classmethod def member_permanently_delete_account_contents_details(cls, val): """ Create an instance of this class set to the ``member_permanently_delete_account_contents_details`` tag with value ``val``. :param MemberPermanentlyDeleteAccountContentsDetails val: :rtype: EventDetails """ return cls('member_permanently_delete_account_contents_details', val) @classmethod def member_remove_external_id_details(cls, val): """ Create an instance of this class set to the ``member_remove_external_id_details`` tag with value ``val``. :param MemberRemoveExternalIdDetails val: :rtype: EventDetails """ return cls('member_remove_external_id_details', val) @classmethod def member_set_profile_photo_details(cls, val): """ Create an instance of this class set to the ``member_set_profile_photo_details`` tag with value ``val``. :param MemberSetProfilePhotoDetails val: :rtype: EventDetails """ return cls('member_set_profile_photo_details', val) @classmethod def member_space_limits_add_custom_quota_details(cls, val): """ Create an instance of this class set to the ``member_space_limits_add_custom_quota_details`` tag with value ``val``. :param MemberSpaceLimitsAddCustomQuotaDetails val: :rtype: EventDetails """ return cls('member_space_limits_add_custom_quota_details', val) @classmethod def member_space_limits_change_custom_quota_details(cls, val): """ Create an instance of this class set to the ``member_space_limits_change_custom_quota_details`` tag with value ``val``. :param MemberSpaceLimitsChangeCustomQuotaDetails val: :rtype: EventDetails """ return cls('member_space_limits_change_custom_quota_details', val) @classmethod def member_space_limits_change_status_details(cls, val): """ Create an instance of this class set to the ``member_space_limits_change_status_details`` tag with value ``val``. :param MemberSpaceLimitsChangeStatusDetails val: :rtype: EventDetails """ return cls('member_space_limits_change_status_details', val) @classmethod def member_space_limits_remove_custom_quota_details(cls, val): """ Create an instance of this class set to the ``member_space_limits_remove_custom_quota_details`` tag with value ``val``. :param MemberSpaceLimitsRemoveCustomQuotaDetails val: :rtype: EventDetails """ return cls('member_space_limits_remove_custom_quota_details', val) @classmethod def member_suggest_details(cls, val): """ Create an instance of this class set to the ``member_suggest_details`` tag with value ``val``. :param MemberSuggestDetails val: :rtype: EventDetails """ return cls('member_suggest_details', val) @classmethod def member_transfer_account_contents_details(cls, val): """ Create an instance of this class set to the ``member_transfer_account_contents_details`` tag with value ``val``. :param MemberTransferAccountContentsDetails val: :rtype: EventDetails """ return cls('member_transfer_account_contents_details', val) @classmethod def pending_secondary_email_added_details(cls, val): """ Create an instance of this class set to the ``pending_secondary_email_added_details`` tag with value ``val``. :param PendingSecondaryEmailAddedDetails val: :rtype: EventDetails """ return cls('pending_secondary_email_added_details', val) @classmethod def secondary_email_deleted_details(cls, val): """ Create an instance of this class set to the ``secondary_email_deleted_details`` tag with value ``val``. :param SecondaryEmailDeletedDetails val: :rtype: EventDetails """ return cls('secondary_email_deleted_details', val) @classmethod def secondary_email_verified_details(cls, val): """ Create an instance of this class set to the ``secondary_email_verified_details`` tag with value ``val``. :param SecondaryEmailVerifiedDetails val: :rtype: EventDetails """ return cls('secondary_email_verified_details', val) @classmethod def secondary_mails_policy_changed_details(cls, val): """ Create an instance of this class set to the ``secondary_mails_policy_changed_details`` tag with value ``val``. :param SecondaryMailsPolicyChangedDetails val: :rtype: EventDetails """ return cls('secondary_mails_policy_changed_details', val) @classmethod def binder_add_page_details(cls, val): """ Create an instance of this class set to the ``binder_add_page_details`` tag with value ``val``. :param BinderAddPageDetails val: :rtype: EventDetails """ return cls('binder_add_page_details', val) @classmethod def binder_add_section_details(cls, val): """ Create an instance of this class set to the ``binder_add_section_details`` tag with value ``val``. :param BinderAddSectionDetails val: :rtype: EventDetails """ return cls('binder_add_section_details', val) @classmethod def binder_remove_page_details(cls, val): """ Create an instance of this class set to the ``binder_remove_page_details`` tag with value ``val``. :param BinderRemovePageDetails val: :rtype: EventDetails """ return cls('binder_remove_page_details', val) @classmethod def binder_remove_section_details(cls, val): """ Create an instance of this class set to the ``binder_remove_section_details`` tag with value ``val``. :param BinderRemoveSectionDetails val: :rtype: EventDetails """ return cls('binder_remove_section_details', val) @classmethod def binder_rename_page_details(cls, val): """ Create an instance of this class set to the ``binder_rename_page_details`` tag with value ``val``. :param BinderRenamePageDetails val: :rtype: EventDetails """ return cls('binder_rename_page_details', val) @classmethod def binder_rename_section_details(cls, val): """ Create an instance of this class set to the ``binder_rename_section_details`` tag with value ``val``. :param BinderRenameSectionDetails val: :rtype: EventDetails """ return cls('binder_rename_section_details', val) @classmethod def binder_reorder_page_details(cls, val): """ Create an instance of this class set to the ``binder_reorder_page_details`` tag with value ``val``. :param BinderReorderPageDetails val: :rtype: EventDetails """ return cls('binder_reorder_page_details', val) @classmethod def binder_reorder_section_details(cls, val): """ Create an instance of this class set to the ``binder_reorder_section_details`` tag with value ``val``. :param BinderReorderSectionDetails val: :rtype: EventDetails """ return cls('binder_reorder_section_details', val) @classmethod def paper_content_add_member_details(cls, val): """ Create an instance of this class set to the ``paper_content_add_member_details`` tag with value ``val``. :param PaperContentAddMemberDetails val: :rtype: EventDetails """ return cls('paper_content_add_member_details', val) @classmethod def paper_content_add_to_folder_details(cls, val): """ Create an instance of this class set to the ``paper_content_add_to_folder_details`` tag with value ``val``. :param PaperContentAddToFolderDetails val: :rtype: EventDetails """ return cls('paper_content_add_to_folder_details', val) @classmethod def paper_content_archive_details(cls, val): """ Create an instance of this class set to the ``paper_content_archive_details`` tag with value ``val``. :param PaperContentArchiveDetails val: :rtype: EventDetails """ return cls('paper_content_archive_details', val) @classmethod def paper_content_create_details(cls, val): """ Create an instance of this class set to the ``paper_content_create_details`` tag with value ``val``. :param PaperContentCreateDetails val: :rtype: EventDetails """ return cls('paper_content_create_details', val) @classmethod def paper_content_permanently_delete_details(cls, val): """ Create an instance of this class set to the ``paper_content_permanently_delete_details`` tag with value ``val``. :param PaperContentPermanentlyDeleteDetails val: :rtype: EventDetails """ return cls('paper_content_permanently_delete_details', val) @classmethod def paper_content_remove_from_folder_details(cls, val): """ Create an instance of this class set to the ``paper_content_remove_from_folder_details`` tag with value ``val``. :param PaperContentRemoveFromFolderDetails val: :rtype: EventDetails """ return cls('paper_content_remove_from_folder_details', val) @classmethod def paper_content_remove_member_details(cls, val): """ Create an instance of this class set to the ``paper_content_remove_member_details`` tag with value ``val``. :param PaperContentRemoveMemberDetails val: :rtype: EventDetails """ return cls('paper_content_remove_member_details', val) @classmethod def paper_content_rename_details(cls, val): """ Create an instance of this class set to the ``paper_content_rename_details`` tag with value ``val``. :param PaperContentRenameDetails val: :rtype: EventDetails """ return cls('paper_content_rename_details', val) @classmethod def paper_content_restore_details(cls, val): """ Create an instance of this class set to the ``paper_content_restore_details`` tag with value ``val``. :param PaperContentRestoreDetails val: :rtype: EventDetails """ return cls('paper_content_restore_details', val) @classmethod def paper_doc_add_comment_details(cls, val): """ Create an instance of this class set to the ``paper_doc_add_comment_details`` tag with value ``val``. :param PaperDocAddCommentDetails val: :rtype: EventDetails """ return cls('paper_doc_add_comment_details', val) @classmethod def paper_doc_change_member_role_details(cls, val): """ Create an instance of this class set to the ``paper_doc_change_member_role_details`` tag with value ``val``. :param PaperDocChangeMemberRoleDetails val: :rtype: EventDetails """ return cls('paper_doc_change_member_role_details', val) @classmethod def paper_doc_change_sharing_policy_details(cls, val): """ Create an instance of this class set to the ``paper_doc_change_sharing_policy_details`` tag with value ``val``. :param PaperDocChangeSharingPolicyDetails val: :rtype: EventDetails """ return cls('paper_doc_change_sharing_policy_details', val) @classmethod def paper_doc_change_subscription_details(cls, val): """ Create an instance of this class set to the ``paper_doc_change_subscription_details`` tag with value ``val``. :param PaperDocChangeSubscriptionDetails val: :rtype: EventDetails """ return cls('paper_doc_change_subscription_details', val) @classmethod def paper_doc_deleted_details(cls, val): """ Create an instance of this class set to the ``paper_doc_deleted_details`` tag with value ``val``. :param PaperDocDeletedDetails val: :rtype: EventDetails """ return cls('paper_doc_deleted_details', val) @classmethod def paper_doc_delete_comment_details(cls, val): """ Create an instance of this class set to the ``paper_doc_delete_comment_details`` tag with value ``val``. :param PaperDocDeleteCommentDetails val: :rtype: EventDetails """ return cls('paper_doc_delete_comment_details', val) @classmethod def paper_doc_download_details(cls, val): """ Create an instance of this class set to the ``paper_doc_download_details`` tag with value ``val``. :param PaperDocDownloadDetails val: :rtype: EventDetails """ return cls('paper_doc_download_details', val) @classmethod def paper_doc_edit_details(cls, val): """ Create an instance of this class set to the ``paper_doc_edit_details`` tag with value ``val``. :param PaperDocEditDetails val: :rtype: EventDetails """ return cls('paper_doc_edit_details', val) @classmethod def paper_doc_edit_comment_details(cls, val): """ Create an instance of this class set to the ``paper_doc_edit_comment_details`` tag with value ``val``. :param PaperDocEditCommentDetails val: :rtype: EventDetails """ return cls('paper_doc_edit_comment_details', val) @classmethod def paper_doc_followed_details(cls, val): """ Create an instance of this class set to the ``paper_doc_followed_details`` tag with value ``val``. :param PaperDocFollowedDetails val: :rtype: EventDetails """ return cls('paper_doc_followed_details', val) @classmethod def paper_doc_mention_details(cls, val): """ Create an instance of this class set to the ``paper_doc_mention_details`` tag with value ``val``. :param PaperDocMentionDetails val: :rtype: EventDetails """ return cls('paper_doc_mention_details', val) @classmethod def paper_doc_ownership_changed_details(cls, val): """ Create an instance of this class set to the ``paper_doc_ownership_changed_details`` tag with value ``val``. :param PaperDocOwnershipChangedDetails val: :rtype: EventDetails """ return cls('paper_doc_ownership_changed_details', val) @classmethod def paper_doc_request_access_details(cls, val): """ Create an instance of this class set to the ``paper_doc_request_access_details`` tag with value ``val``. :param PaperDocRequestAccessDetails val: :rtype: EventDetails """ return cls('paper_doc_request_access_details', val) @classmethod def paper_doc_resolve_comment_details(cls, val): """ Create an instance of this class set to the ``paper_doc_resolve_comment_details`` tag with value ``val``. :param PaperDocResolveCommentDetails val: :rtype: EventDetails """ return cls('paper_doc_resolve_comment_details', val) @classmethod def paper_doc_revert_details(cls, val): """ Create an instance of this class set to the ``paper_doc_revert_details`` tag with value ``val``. :param PaperDocRevertDetails val: :rtype: EventDetails """ return cls('paper_doc_revert_details', val) @classmethod def paper_doc_slack_share_details(cls, val): """ Create an instance of this class set to the ``paper_doc_slack_share_details`` tag with value ``val``. :param PaperDocSlackShareDetails val: :rtype: EventDetails """ return cls('paper_doc_slack_share_details', val) @classmethod def paper_doc_team_invite_details(cls, val): """ Create an instance of this class set to the ``paper_doc_team_invite_details`` tag with value ``val``. :param PaperDocTeamInviteDetails val: :rtype: EventDetails """ return cls('paper_doc_team_invite_details', val) @classmethod def paper_doc_trashed_details(cls, val): """ Create an instance of this class set to the ``paper_doc_trashed_details`` tag with value ``val``. :param PaperDocTrashedDetails val: :rtype: EventDetails """ return cls('paper_doc_trashed_details', val) @classmethod def paper_doc_unresolve_comment_details(cls, val): """ Create an instance of this class set to the ``paper_doc_unresolve_comment_details`` tag with value ``val``. :param PaperDocUnresolveCommentDetails val: :rtype: EventDetails """ return cls('paper_doc_unresolve_comment_details', val) @classmethod def paper_doc_untrashed_details(cls, val): """ Create an instance of this class set to the ``paper_doc_untrashed_details`` tag with value ``val``. :param PaperDocUntrashedDetails val: :rtype: EventDetails """ return cls('paper_doc_untrashed_details', val) @classmethod def paper_doc_view_details(cls, val): """ Create an instance of this class set to the ``paper_doc_view_details`` tag with value ``val``. :param PaperDocViewDetails val: :rtype: EventDetails """ return cls('paper_doc_view_details', val) @classmethod def paper_external_view_allow_details(cls, val): """ Create an instance of this class set to the ``paper_external_view_allow_details`` tag with value ``val``. :param PaperExternalViewAllowDetails val: :rtype: EventDetails """ return cls('paper_external_view_allow_details', val) @classmethod def paper_external_view_default_team_details(cls, val): """ Create an instance of this class set to the ``paper_external_view_default_team_details`` tag with value ``val``. :param PaperExternalViewDefaultTeamDetails val: :rtype: EventDetails """ return cls('paper_external_view_default_team_details', val) @classmethod def paper_external_view_forbid_details(cls, val): """ Create an instance of this class set to the ``paper_external_view_forbid_details`` tag with value ``val``. :param PaperExternalViewForbidDetails val: :rtype: EventDetails """ return cls('paper_external_view_forbid_details', val) @classmethod def paper_folder_change_subscription_details(cls, val): """ Create an instance of this class set to the ``paper_folder_change_subscription_details`` tag with value ``val``. :param PaperFolderChangeSubscriptionDetails val: :rtype: EventDetails """ return cls('paper_folder_change_subscription_details', val) @classmethod def paper_folder_deleted_details(cls, val): """ Create an instance of this class set to the ``paper_folder_deleted_details`` tag with value ``val``. :param PaperFolderDeletedDetails val: :rtype: EventDetails """ return cls('paper_folder_deleted_details', val) @classmethod def paper_folder_followed_details(cls, val): """ Create an instance of this class set to the ``paper_folder_followed_details`` tag with value ``val``. :param PaperFolderFollowedDetails val: :rtype: EventDetails """ return cls('paper_folder_followed_details', val) @classmethod def paper_folder_team_invite_details(cls, val): """ Create an instance of this class set to the ``paper_folder_team_invite_details`` tag with value ``val``. :param PaperFolderTeamInviteDetails val: :rtype: EventDetails """ return cls('paper_folder_team_invite_details', val) @classmethod def paper_published_link_change_permission_details(cls, val): """ Create an instance of this class set to the ``paper_published_link_change_permission_details`` tag with value ``val``. :param PaperPublishedLinkChangePermissionDetails val: :rtype: EventDetails """ return cls('paper_published_link_change_permission_details', val) @classmethod def paper_published_link_create_details(cls, val): """ Create an instance of this class set to the ``paper_published_link_create_details`` tag with value ``val``. :param PaperPublishedLinkCreateDetails val: :rtype: EventDetails """ return cls('paper_published_link_create_details', val) @classmethod def paper_published_link_disabled_details(cls, val): """ Create an instance of this class set to the ``paper_published_link_disabled_details`` tag with value ``val``. :param PaperPublishedLinkDisabledDetails val: :rtype: EventDetails """ return cls('paper_published_link_disabled_details', val) @classmethod def paper_published_link_view_details(cls, val): """ Create an instance of this class set to the ``paper_published_link_view_details`` tag with value ``val``. :param PaperPublishedLinkViewDetails val: :rtype: EventDetails """ return cls('paper_published_link_view_details', val) @classmethod def password_change_details(cls, val): """ Create an instance of this class set to the ``password_change_details`` tag with value ``val``. :param PasswordChangeDetails val: :rtype: EventDetails """ return cls('password_change_details', val) @classmethod def password_reset_details(cls, val): """ Create an instance of this class set to the ``password_reset_details`` tag with value ``val``. :param PasswordResetDetails val: :rtype: EventDetails """ return cls('password_reset_details', val) @classmethod def password_reset_all_details(cls, val): """ Create an instance of this class set to the ``password_reset_all_details`` tag with value ``val``. :param PasswordResetAllDetails val: :rtype: EventDetails """ return cls('password_reset_all_details', val) @classmethod def classification_create_report_details(cls, val): """ Create an instance of this class set to the ``classification_create_report_details`` tag with value ``val``. :param ClassificationCreateReportDetails val: :rtype: EventDetails """ return cls('classification_create_report_details', val) @classmethod def classification_create_report_fail_details(cls, val): """ Create an instance of this class set to the ``classification_create_report_fail_details`` tag with value ``val``. :param ClassificationCreateReportFailDetails val: :rtype: EventDetails """ return cls('classification_create_report_fail_details', val) @classmethod def emm_create_exceptions_report_details(cls, val): """ Create an instance of this class set to the ``emm_create_exceptions_report_details`` tag with value ``val``. :param EmmCreateExceptionsReportDetails val: :rtype: EventDetails """ return cls('emm_create_exceptions_report_details', val) @classmethod def emm_create_usage_report_details(cls, val): """ Create an instance of this class set to the ``emm_create_usage_report_details`` tag with value ``val``. :param EmmCreateUsageReportDetails val: :rtype: EventDetails """ return cls('emm_create_usage_report_details', val) @classmethod def export_members_report_details(cls, val): """ Create an instance of this class set to the ``export_members_report_details`` tag with value ``val``. :param ExportMembersReportDetails val: :rtype: EventDetails """ return cls('export_members_report_details', val) @classmethod def export_members_report_fail_details(cls, val): """ Create an instance of this class set to the ``export_members_report_fail_details`` tag with value ``val``. :param ExportMembersReportFailDetails val: :rtype: EventDetails """ return cls('export_members_report_fail_details', val) @classmethod def external_sharing_create_report_details(cls, val): """ Create an instance of this class set to the ``external_sharing_create_report_details`` tag with value ``val``. :param ExternalSharingCreateReportDetails val: :rtype: EventDetails """ return cls('external_sharing_create_report_details', val) @classmethod def external_sharing_report_failed_details(cls, val): """ Create an instance of this class set to the ``external_sharing_report_failed_details`` tag with value ``val``. :param ExternalSharingReportFailedDetails val: :rtype: EventDetails """ return cls('external_sharing_report_failed_details', val) @classmethod def no_expiration_link_gen_create_report_details(cls, val): """ Create an instance of this class set to the ``no_expiration_link_gen_create_report_details`` tag with value ``val``. :param NoExpirationLinkGenCreateReportDetails val: :rtype: EventDetails """ return cls('no_expiration_link_gen_create_report_details', val) @classmethod def no_expiration_link_gen_report_failed_details(cls, val): """ Create an instance of this class set to the ``no_expiration_link_gen_report_failed_details`` tag with value ``val``. :param NoExpirationLinkGenReportFailedDetails val: :rtype: EventDetails """ return cls('no_expiration_link_gen_report_failed_details', val) @classmethod def no_password_link_gen_create_report_details(cls, val): """ Create an instance of this class set to the ``no_password_link_gen_create_report_details`` tag with value ``val``. :param NoPasswordLinkGenCreateReportDetails val: :rtype: EventDetails """ return cls('no_password_link_gen_create_report_details', val) @classmethod def no_password_link_gen_report_failed_details(cls, val): """ Create an instance of this class set to the ``no_password_link_gen_report_failed_details`` tag with value ``val``. :param NoPasswordLinkGenReportFailedDetails val: :rtype: EventDetails """ return cls('no_password_link_gen_report_failed_details', val) @classmethod def no_password_link_view_create_report_details(cls, val): """ Create an instance of this class set to the ``no_password_link_view_create_report_details`` tag with value ``val``. :param NoPasswordLinkViewCreateReportDetails val: :rtype: EventDetails """ return cls('no_password_link_view_create_report_details', val) @classmethod def no_password_link_view_report_failed_details(cls, val): """ Create an instance of this class set to the ``no_password_link_view_report_failed_details`` tag with value ``val``. :param NoPasswordLinkViewReportFailedDetails val: :rtype: EventDetails """ return cls('no_password_link_view_report_failed_details', val) @classmethod def outdated_link_view_create_report_details(cls, val): """ Create an instance of this class set to the ``outdated_link_view_create_report_details`` tag with value ``val``. :param OutdatedLinkViewCreateReportDetails val: :rtype: EventDetails """ return cls('outdated_link_view_create_report_details', val) @classmethod def outdated_link_view_report_failed_details(cls, val): """ Create an instance of this class set to the ``outdated_link_view_report_failed_details`` tag with value ``val``. :param OutdatedLinkViewReportFailedDetails val: :rtype: EventDetails """ return cls('outdated_link_view_report_failed_details', val) @classmethod def paper_admin_export_start_details(cls, val): """ Create an instance of this class set to the ``paper_admin_export_start_details`` tag with value ``val``. :param PaperAdminExportStartDetails val: :rtype: EventDetails """ return cls('paper_admin_export_start_details', val) @classmethod def ransomware_alert_create_report_details(cls, val): """ Create an instance of this class set to the ``ransomware_alert_create_report_details`` tag with value ``val``. :param RansomwareAlertCreateReportDetails val: :rtype: EventDetails """ return cls('ransomware_alert_create_report_details', val) @classmethod def ransomware_alert_create_report_failed_details(cls, val): """ Create an instance of this class set to the ``ransomware_alert_create_report_failed_details`` tag with value ``val``. :param RansomwareAlertCreateReportFailedDetails val: :rtype: EventDetails """ return cls('ransomware_alert_create_report_failed_details', val) @classmethod def smart_sync_create_admin_privilege_report_details(cls, val): """ Create an instance of this class set to the ``smart_sync_create_admin_privilege_report_details`` tag with value ``val``. :param SmartSyncCreateAdminPrivilegeReportDetails val: :rtype: EventDetails """ return cls('smart_sync_create_admin_privilege_report_details', val) @classmethod def team_activity_create_report_details(cls, val): """ Create an instance of this class set to the ``team_activity_create_report_details`` tag with value ``val``. :param TeamActivityCreateReportDetails val: :rtype: EventDetails """ return cls('team_activity_create_report_details', val) @classmethod def team_activity_create_report_fail_details(cls, val): """ Create an instance of this class set to the ``team_activity_create_report_fail_details`` tag with value ``val``. :param TeamActivityCreateReportFailDetails val: :rtype: EventDetails """ return cls('team_activity_create_report_fail_details', val) @classmethod def collection_share_details(cls, val): """ Create an instance of this class set to the ``collection_share_details`` tag with value ``val``. :param CollectionShareDetails val: :rtype: EventDetails """ return cls('collection_share_details', val) @classmethod def file_transfers_file_add_details(cls, val): """ Create an instance of this class set to the ``file_transfers_file_add_details`` tag with value ``val``. :param FileTransfersFileAddDetails val: :rtype: EventDetails """ return cls('file_transfers_file_add_details', val) @classmethod def file_transfers_transfer_delete_details(cls, val): """ Create an instance of this class set to the ``file_transfers_transfer_delete_details`` tag with value ``val``. :param FileTransfersTransferDeleteDetails val: :rtype: EventDetails """ return cls('file_transfers_transfer_delete_details', val) @classmethod def file_transfers_transfer_download_details(cls, val): """ Create an instance of this class set to the ``file_transfers_transfer_download_details`` tag with value ``val``. :param FileTransfersTransferDownloadDetails val: :rtype: EventDetails """ return cls('file_transfers_transfer_download_details', val) @classmethod def file_transfers_transfer_send_details(cls, val): """ Create an instance of this class set to the ``file_transfers_transfer_send_details`` tag with value ``val``. :param FileTransfersTransferSendDetails val: :rtype: EventDetails """ return cls('file_transfers_transfer_send_details', val) @classmethod def file_transfers_transfer_view_details(cls, val): """ Create an instance of this class set to the ``file_transfers_transfer_view_details`` tag with value ``val``. :param FileTransfersTransferViewDetails val: :rtype: EventDetails """ return cls('file_transfers_transfer_view_details', val) @classmethod def note_acl_invite_only_details(cls, val): """ Create an instance of this class set to the ``note_acl_invite_only_details`` tag with value ``val``. :param NoteAclInviteOnlyDetails val: :rtype: EventDetails """ return cls('note_acl_invite_only_details', val) @classmethod def note_acl_link_details(cls, val): """ Create an instance of this class set to the ``note_acl_link_details`` tag with value ``val``. :param NoteAclLinkDetails val: :rtype: EventDetails """ return cls('note_acl_link_details', val) @classmethod def note_acl_team_link_details(cls, val): """ Create an instance of this class set to the ``note_acl_team_link_details`` tag with value ``val``. :param NoteAclTeamLinkDetails val: :rtype: EventDetails """ return cls('note_acl_team_link_details', val) @classmethod def note_shared_details(cls, val): """ Create an instance of this class set to the ``note_shared_details`` tag with value ``val``. :param NoteSharedDetails val: :rtype: EventDetails """ return cls('note_shared_details', val) @classmethod def note_share_receive_details(cls, val): """ Create an instance of this class set to the ``note_share_receive_details`` tag with value ``val``. :param NoteShareReceiveDetails val: :rtype: EventDetails """ return cls('note_share_receive_details', val) @classmethod def open_note_shared_details(cls, val): """ Create an instance of this class set to the ``open_note_shared_details`` tag with value ``val``. :param OpenNoteSharedDetails val: :rtype: EventDetails """ return cls('open_note_shared_details', val) @classmethod def replay_file_shared_link_created_details(cls, val): """ Create an instance of this class set to the ``replay_file_shared_link_created_details`` tag with value ``val``. :param ReplayFileSharedLinkCreatedDetails val: :rtype: EventDetails """ return cls('replay_file_shared_link_created_details', val) @classmethod def replay_file_shared_link_modified_details(cls, val): """ Create an instance of this class set to the ``replay_file_shared_link_modified_details`` tag with value ``val``. :param ReplayFileSharedLinkModifiedDetails val: :rtype: EventDetails """ return cls('replay_file_shared_link_modified_details', val) @classmethod def replay_project_team_add_details(cls, val): """ Create an instance of this class set to the ``replay_project_team_add_details`` tag with value ``val``. :param ReplayProjectTeamAddDetails val: :rtype: EventDetails """ return cls('replay_project_team_add_details', val) @classmethod def replay_project_team_delete_details(cls, val): """ Create an instance of this class set to the ``replay_project_team_delete_details`` tag with value ``val``. :param ReplayProjectTeamDeleteDetails val: :rtype: EventDetails """ return cls('replay_project_team_delete_details', val) @classmethod def sf_add_group_details(cls, val): """ Create an instance of this class set to the ``sf_add_group_details`` tag with value ``val``. :param SfAddGroupDetails val: :rtype: EventDetails """ return cls('sf_add_group_details', val) @classmethod def sf_allow_non_members_to_view_shared_links_details(cls, val): """ Create an instance of this class set to the ``sf_allow_non_members_to_view_shared_links_details`` tag with value ``val``. :param SfAllowNonMembersToViewSharedLinksDetails val: :rtype: EventDetails """ return cls('sf_allow_non_members_to_view_shared_links_details', val) @classmethod def sf_external_invite_warn_details(cls, val): """ Create an instance of this class set to the ``sf_external_invite_warn_details`` tag with value ``val``. :param SfExternalInviteWarnDetails val: :rtype: EventDetails """ return cls('sf_external_invite_warn_details', val) @classmethod def sf_fb_invite_details(cls, val): """ Create an instance of this class set to the ``sf_fb_invite_details`` tag with value ``val``. :param SfFbInviteDetails val: :rtype: EventDetails """ return cls('sf_fb_invite_details', val) @classmethod def sf_fb_invite_change_role_details(cls, val): """ Create an instance of this class set to the ``sf_fb_invite_change_role_details`` tag with value ``val``. :param SfFbInviteChangeRoleDetails val: :rtype: EventDetails """ return cls('sf_fb_invite_change_role_details', val) @classmethod def sf_fb_uninvite_details(cls, val): """ Create an instance of this class set to the ``sf_fb_uninvite_details`` tag with value ``val``. :param SfFbUninviteDetails val: :rtype: EventDetails """ return cls('sf_fb_uninvite_details', val) @classmethod def sf_invite_group_details(cls, val): """ Create an instance of this class set to the ``sf_invite_group_details`` tag with value ``val``. :param SfInviteGroupDetails val: :rtype: EventDetails """ return cls('sf_invite_group_details', val) @classmethod def sf_team_grant_access_details(cls, val): """ Create an instance of this class set to the ``sf_team_grant_access_details`` tag with value ``val``. :param SfTeamGrantAccessDetails val: :rtype: EventDetails """ return cls('sf_team_grant_access_details', val) @classmethod def sf_team_invite_details(cls, val): """ Create an instance of this class set to the ``sf_team_invite_details`` tag with value ``val``. :param SfTeamInviteDetails val: :rtype: EventDetails """ return cls('sf_team_invite_details', val) @classmethod def sf_team_invite_change_role_details(cls, val): """ Create an instance of this class set to the ``sf_team_invite_change_role_details`` tag with value ``val``. :param SfTeamInviteChangeRoleDetails val: :rtype: EventDetails """ return cls('sf_team_invite_change_role_details', val) @classmethod def sf_team_join_details(cls, val): """ Create an instance of this class set to the ``sf_team_join_details`` tag with value ``val``. :param SfTeamJoinDetails val: :rtype: EventDetails """ return cls('sf_team_join_details', val) @classmethod def sf_team_join_from_oob_link_details(cls, val): """ Create an instance of this class set to the ``sf_team_join_from_oob_link_details`` tag with value ``val``. :param SfTeamJoinFromOobLinkDetails val: :rtype: EventDetails """ return cls('sf_team_join_from_oob_link_details', val) @classmethod def sf_team_uninvite_details(cls, val): """ Create an instance of this class set to the ``sf_team_uninvite_details`` tag with value ``val``. :param SfTeamUninviteDetails val: :rtype: EventDetails """ return cls('sf_team_uninvite_details', val) @classmethod def shared_content_add_invitees_details(cls, val): """ Create an instance of this class set to the ``shared_content_add_invitees_details`` tag with value ``val``. :param SharedContentAddInviteesDetails val: :rtype: EventDetails """ return cls('shared_content_add_invitees_details', val) @classmethod def shared_content_add_link_expiry_details(cls, val): """ Create an instance of this class set to the ``shared_content_add_link_expiry_details`` tag with value ``val``. :param SharedContentAddLinkExpiryDetails val: :rtype: EventDetails """ return cls('shared_content_add_link_expiry_details', val) @classmethod def shared_content_add_link_password_details(cls, val): """ Create an instance of this class set to the ``shared_content_add_link_password_details`` tag with value ``val``. :param SharedContentAddLinkPasswordDetails val: :rtype: EventDetails """ return cls('shared_content_add_link_password_details', val) @classmethod def shared_content_add_member_details(cls, val): """ Create an instance of this class set to the ``shared_content_add_member_details`` tag with value ``val``. :param SharedContentAddMemberDetails val: :rtype: EventDetails """ return cls('shared_content_add_member_details', val) @classmethod def shared_content_change_downloads_policy_details(cls, val): """ Create an instance of this class set to the ``shared_content_change_downloads_policy_details`` tag with value ``val``. :param SharedContentChangeDownloadsPolicyDetails val: :rtype: EventDetails """ return cls('shared_content_change_downloads_policy_details', val) @classmethod def shared_content_change_invitee_role_details(cls, val): """ Create an instance of this class set to the ``shared_content_change_invitee_role_details`` tag with value ``val``. :param SharedContentChangeInviteeRoleDetails val: :rtype: EventDetails """ return cls('shared_content_change_invitee_role_details', val) @classmethod def shared_content_change_link_audience_details(cls, val): """ Create an instance of this class set to the ``shared_content_change_link_audience_details`` tag with value ``val``. :param SharedContentChangeLinkAudienceDetails val: :rtype: EventDetails """ return cls('shared_content_change_link_audience_details', val) @classmethod def shared_content_change_link_expiry_details(cls, val): """ Create an instance of this class set to the ``shared_content_change_link_expiry_details`` tag with value ``val``. :param SharedContentChangeLinkExpiryDetails val: :rtype: EventDetails """ return cls('shared_content_change_link_expiry_details', val) @classmethod def shared_content_change_link_password_details(cls, val): """ Create an instance of this class set to the ``shared_content_change_link_password_details`` tag with value ``val``. :param SharedContentChangeLinkPasswordDetails val: :rtype: EventDetails """ return cls('shared_content_change_link_password_details', val) @classmethod def shared_content_change_member_role_details(cls, val): """ Create an instance of this class set to the ``shared_content_change_member_role_details`` tag with value ``val``. :param SharedContentChangeMemberRoleDetails val: :rtype: EventDetails """ return cls('shared_content_change_member_role_details', val) @classmethod def shared_content_change_viewer_info_policy_details(cls, val): """ Create an instance of this class set to the ``shared_content_change_viewer_info_policy_details`` tag with value ``val``. :param SharedContentChangeViewerInfoPolicyDetails val: :rtype: EventDetails """ return cls('shared_content_change_viewer_info_policy_details', val) @classmethod def shared_content_claim_invitation_details(cls, val): """ Create an instance of this class set to the ``shared_content_claim_invitation_details`` tag with value ``val``. :param SharedContentClaimInvitationDetails val: :rtype: EventDetails """ return cls('shared_content_claim_invitation_details', val) @classmethod def shared_content_copy_details(cls, val): """ Create an instance of this class set to the ``shared_content_copy_details`` tag with value ``val``. :param SharedContentCopyDetails val: :rtype: EventDetails """ return cls('shared_content_copy_details', val) @classmethod def shared_content_download_details(cls, val): """ Create an instance of this class set to the ``shared_content_download_details`` tag with value ``val``. :param SharedContentDownloadDetails val: :rtype: EventDetails """ return cls('shared_content_download_details', val) @classmethod def shared_content_relinquish_membership_details(cls, val): """ Create an instance of this class set to the ``shared_content_relinquish_membership_details`` tag with value ``val``. :param SharedContentRelinquishMembershipDetails val: :rtype: EventDetails """ return cls('shared_content_relinquish_membership_details', val) @classmethod def shared_content_remove_invitees_details(cls, val): """ Create an instance of this class set to the ``shared_content_remove_invitees_details`` tag with value ``val``. :param SharedContentRemoveInviteesDetails val: :rtype: EventDetails """ return cls('shared_content_remove_invitees_details', val) @classmethod def shared_content_remove_link_expiry_details(cls, val): """ Create an instance of this class set to the ``shared_content_remove_link_expiry_details`` tag with value ``val``. :param SharedContentRemoveLinkExpiryDetails val: :rtype: EventDetails """ return cls('shared_content_remove_link_expiry_details', val) @classmethod def shared_content_remove_link_password_details(cls, val): """ Create an instance of this class set to the ``shared_content_remove_link_password_details`` tag with value ``val``. :param SharedContentRemoveLinkPasswordDetails val: :rtype: EventDetails """ return cls('shared_content_remove_link_password_details', val) @classmethod def shared_content_remove_member_details(cls, val): """ Create an instance of this class set to the ``shared_content_remove_member_details`` tag with value ``val``. :param SharedContentRemoveMemberDetails val: :rtype: EventDetails """ return cls('shared_content_remove_member_details', val) @classmethod def shared_content_request_access_details(cls, val): """ Create an instance of this class set to the ``shared_content_request_access_details`` tag with value ``val``. :param SharedContentRequestAccessDetails val: :rtype: EventDetails """ return cls('shared_content_request_access_details', val) @classmethod def shared_content_restore_invitees_details(cls, val): """ Create an instance of this class set to the ``shared_content_restore_invitees_details`` tag with value ``val``. :param SharedContentRestoreInviteesDetails val: :rtype: EventDetails """ return cls('shared_content_restore_invitees_details', val) @classmethod def shared_content_restore_member_details(cls, val): """ Create an instance of this class set to the ``shared_content_restore_member_details`` tag with value ``val``. :param SharedContentRestoreMemberDetails val: :rtype: EventDetails """ return cls('shared_content_restore_member_details', val) @classmethod def shared_content_unshare_details(cls, val): """ Create an instance of this class set to the ``shared_content_unshare_details`` tag with value ``val``. :param SharedContentUnshareDetails val: :rtype: EventDetails """ return cls('shared_content_unshare_details', val) @classmethod def shared_content_view_details(cls, val): """ Create an instance of this class set to the ``shared_content_view_details`` tag with value ``val``. :param SharedContentViewDetails val: :rtype: EventDetails """ return cls('shared_content_view_details', val) @classmethod def shared_folder_change_link_policy_details(cls, val): """ Create an instance of this class set to the ``shared_folder_change_link_policy_details`` tag with value ``val``. :param SharedFolderChangeLinkPolicyDetails val: :rtype: EventDetails """ return cls('shared_folder_change_link_policy_details', val) @classmethod def shared_folder_change_members_inheritance_policy_details(cls, val): """ Create an instance of this class set to the ``shared_folder_change_members_inheritance_policy_details`` tag with value ``val``. :param SharedFolderChangeMembersInheritancePolicyDetails val: :rtype: EventDetails """ return cls('shared_folder_change_members_inheritance_policy_details', val) @classmethod def shared_folder_change_members_management_policy_details(cls, val): """ Create an instance of this class set to the ``shared_folder_change_members_management_policy_details`` tag with value ``val``. :param SharedFolderChangeMembersManagementPolicyDetails val: :rtype: EventDetails """ return cls('shared_folder_change_members_management_policy_details', val) @classmethod def shared_folder_change_members_policy_details(cls, val): """ Create an instance of this class set to the ``shared_folder_change_members_policy_details`` tag with value ``val``. :param SharedFolderChangeMembersPolicyDetails val: :rtype: EventDetails """ return cls('shared_folder_change_members_policy_details', val) @classmethod def shared_folder_create_details(cls, val): """ Create an instance of this class set to the ``shared_folder_create_details`` tag with value ``val``. :param SharedFolderCreateDetails val: :rtype: EventDetails """ return cls('shared_folder_create_details', val) @classmethod def shared_folder_decline_invitation_details(cls, val): """ Create an instance of this class set to the ``shared_folder_decline_invitation_details`` tag with value ``val``. :param SharedFolderDeclineInvitationDetails val: :rtype: EventDetails """ return cls('shared_folder_decline_invitation_details', val) @classmethod def shared_folder_mount_details(cls, val): """ Create an instance of this class set to the ``shared_folder_mount_details`` tag with value ``val``. :param SharedFolderMountDetails val: :rtype: EventDetails """ return cls('shared_folder_mount_details', val) @classmethod def shared_folder_nest_details(cls, val): """ Create an instance of this class set to the ``shared_folder_nest_details`` tag with value ``val``. :param SharedFolderNestDetails val: :rtype: EventDetails """ return cls('shared_folder_nest_details', val) @classmethod def shared_folder_transfer_ownership_details(cls, val): """ Create an instance of this class set to the ``shared_folder_transfer_ownership_details`` tag with value ``val``. :param SharedFolderTransferOwnershipDetails val: :rtype: EventDetails """ return cls('shared_folder_transfer_ownership_details', val) @classmethod def shared_folder_unmount_details(cls, val): """ Create an instance of this class set to the ``shared_folder_unmount_details`` tag with value ``val``. :param SharedFolderUnmountDetails val: :rtype: EventDetails """ return cls('shared_folder_unmount_details', val) @classmethod def shared_link_add_expiry_details(cls, val): """ Create an instance of this class set to the ``shared_link_add_expiry_details`` tag with value ``val``. :param SharedLinkAddExpiryDetails val: :rtype: EventDetails """ return cls('shared_link_add_expiry_details', val) @classmethod def shared_link_change_expiry_details(cls, val): """ Create an instance of this class set to the ``shared_link_change_expiry_details`` tag with value ``val``. :param SharedLinkChangeExpiryDetails val: :rtype: EventDetails """ return cls('shared_link_change_expiry_details', val) @classmethod def shared_link_change_visibility_details(cls, val): """ Create an instance of this class set to the ``shared_link_change_visibility_details`` tag with value ``val``. :param SharedLinkChangeVisibilityDetails val: :rtype: EventDetails """ return cls('shared_link_change_visibility_details', val) @classmethod def shared_link_copy_details(cls, val): """ Create an instance of this class set to the ``shared_link_copy_details`` tag with value ``val``. :param SharedLinkCopyDetails val: :rtype: EventDetails """ return cls('shared_link_copy_details', val) @classmethod def shared_link_create_details(cls, val): """ Create an instance of this class set to the ``shared_link_create_details`` tag with value ``val``. :param SharedLinkCreateDetails val: :rtype: EventDetails """ return cls('shared_link_create_details', val) @classmethod def shared_link_disable_details(cls, val): """ Create an instance of this class set to the ``shared_link_disable_details`` tag with value ``val``. :param SharedLinkDisableDetails val: :rtype: EventDetails """ return cls('shared_link_disable_details', val) @classmethod def shared_link_download_details(cls, val): """ Create an instance of this class set to the ``shared_link_download_details`` tag with value ``val``. :param SharedLinkDownloadDetails val: :rtype: EventDetails """ return cls('shared_link_download_details', val) @classmethod def shared_link_remove_expiry_details(cls, val): """ Create an instance of this class set to the ``shared_link_remove_expiry_details`` tag with value ``val``. :param SharedLinkRemoveExpiryDetails val: :rtype: EventDetails """ return cls('shared_link_remove_expiry_details', val) @classmethod def shared_link_settings_add_expiration_details(cls, val): """ Create an instance of this class set to the ``shared_link_settings_add_expiration_details`` tag with value ``val``. :param SharedLinkSettingsAddExpirationDetails val: :rtype: EventDetails """ return cls('shared_link_settings_add_expiration_details', val) @classmethod def shared_link_settings_add_password_details(cls, val): """ Create an instance of this class set to the ``shared_link_settings_add_password_details`` tag with value ``val``. :param SharedLinkSettingsAddPasswordDetails val: :rtype: EventDetails """ return cls('shared_link_settings_add_password_details', val) @classmethod def shared_link_settings_allow_download_disabled_details(cls, val): """ Create an instance of this class set to the ``shared_link_settings_allow_download_disabled_details`` tag with value ``val``. :param SharedLinkSettingsAllowDownloadDisabledDetails val: :rtype: EventDetails """ return cls('shared_link_settings_allow_download_disabled_details', val) @classmethod def shared_link_settings_allow_download_enabled_details(cls, val): """ Create an instance of this class set to the ``shared_link_settings_allow_download_enabled_details`` tag with value ``val``. :param SharedLinkSettingsAllowDownloadEnabledDetails val: :rtype: EventDetails """ return cls('shared_link_settings_allow_download_enabled_details', val) @classmethod def shared_link_settings_change_audience_details(cls, val): """ Create an instance of this class set to the ``shared_link_settings_change_audience_details`` tag with value ``val``. :param SharedLinkSettingsChangeAudienceDetails val: :rtype: EventDetails """ return cls('shared_link_settings_change_audience_details', val) @classmethod def shared_link_settings_change_expiration_details(cls, val): """ Create an instance of this class set to the ``shared_link_settings_change_expiration_details`` tag with value ``val``. :param SharedLinkSettingsChangeExpirationDetails val: :rtype: EventDetails """ return cls('shared_link_settings_change_expiration_details', val) @classmethod def shared_link_settings_change_password_details(cls, val): """ Create an instance of this class set to the ``shared_link_settings_change_password_details`` tag with value ``val``. :param SharedLinkSettingsChangePasswordDetails val: :rtype: EventDetails """ return cls('shared_link_settings_change_password_details', val) @classmethod def shared_link_settings_remove_expiration_details(cls, val): """ Create an instance of this class set to the ``shared_link_settings_remove_expiration_details`` tag with value ``val``. :param SharedLinkSettingsRemoveExpirationDetails val: :rtype: EventDetails """ return cls('shared_link_settings_remove_expiration_details', val) @classmethod def shared_link_settings_remove_password_details(cls, val): """ Create an instance of this class set to the ``shared_link_settings_remove_password_details`` tag with value ``val``. :param SharedLinkSettingsRemovePasswordDetails val: :rtype: EventDetails """ return cls('shared_link_settings_remove_password_details', val) @classmethod def shared_link_share_details(cls, val): """ Create an instance of this class set to the ``shared_link_share_details`` tag with value ``val``. :param SharedLinkShareDetails val: :rtype: EventDetails """ return cls('shared_link_share_details', val) @classmethod def shared_link_view_details(cls, val): """ Create an instance of this class set to the ``shared_link_view_details`` tag with value ``val``. :param SharedLinkViewDetails val: :rtype: EventDetails """ return cls('shared_link_view_details', val) @classmethod def shared_note_opened_details(cls, val): """ Create an instance of this class set to the ``shared_note_opened_details`` tag with value ``val``. :param SharedNoteOpenedDetails val: :rtype: EventDetails """ return cls('shared_note_opened_details', val) @classmethod def shmodel_disable_downloads_details(cls, val): """ Create an instance of this class set to the ``shmodel_disable_downloads_details`` tag with value ``val``. :param ShmodelDisableDownloadsDetails val: :rtype: EventDetails """ return cls('shmodel_disable_downloads_details', val) @classmethod def shmodel_enable_downloads_details(cls, val): """ Create an instance of this class set to the ``shmodel_enable_downloads_details`` tag with value ``val``. :param ShmodelEnableDownloadsDetails val: :rtype: EventDetails """ return cls('shmodel_enable_downloads_details', val) @classmethod def shmodel_group_share_details(cls, val): """ Create an instance of this class set to the ``shmodel_group_share_details`` tag with value ``val``. :param ShmodelGroupShareDetails val: :rtype: EventDetails """ return cls('shmodel_group_share_details', val) @classmethod def showcase_access_granted_details(cls, val): """ Create an instance of this class set to the ``showcase_access_granted_details`` tag with value ``val``. :param ShowcaseAccessGrantedDetails val: :rtype: EventDetails """ return cls('showcase_access_granted_details', val) @classmethod def showcase_add_member_details(cls, val): """ Create an instance of this class set to the ``showcase_add_member_details`` tag with value ``val``. :param ShowcaseAddMemberDetails val: :rtype: EventDetails """ return cls('showcase_add_member_details', val) @classmethod def showcase_archived_details(cls, val): """ Create an instance of this class set to the ``showcase_archived_details`` tag with value ``val``. :param ShowcaseArchivedDetails val: :rtype: EventDetails """ return cls('showcase_archived_details', val) @classmethod def showcase_created_details(cls, val): """ Create an instance of this class set to the ``showcase_created_details`` tag with value ``val``. :param ShowcaseCreatedDetails val: :rtype: EventDetails """ return cls('showcase_created_details', val) @classmethod def showcase_delete_comment_details(cls, val): """ Create an instance of this class set to the ``showcase_delete_comment_details`` tag with value ``val``. :param ShowcaseDeleteCommentDetails val: :rtype: EventDetails """ return cls('showcase_delete_comment_details', val) @classmethod def showcase_edited_details(cls, val): """ Create an instance of this class set to the ``showcase_edited_details`` tag with value ``val``. :param ShowcaseEditedDetails val: :rtype: EventDetails """ return cls('showcase_edited_details', val) @classmethod def showcase_edit_comment_details(cls, val): """ Create an instance of this class set to the ``showcase_edit_comment_details`` tag with value ``val``. :param ShowcaseEditCommentDetails val: :rtype: EventDetails """ return cls('showcase_edit_comment_details', val) @classmethod def showcase_file_added_details(cls, val): """ Create an instance of this class set to the ``showcase_file_added_details`` tag with value ``val``. :param ShowcaseFileAddedDetails val: :rtype: EventDetails """ return cls('showcase_file_added_details', val) @classmethod def showcase_file_download_details(cls, val): """ Create an instance of this class set to the ``showcase_file_download_details`` tag with value ``val``. :param ShowcaseFileDownloadDetails val: :rtype: EventDetails """ return cls('showcase_file_download_details', val) @classmethod def showcase_file_removed_details(cls, val): """ Create an instance of this class set to the ``showcase_file_removed_details`` tag with value ``val``. :param ShowcaseFileRemovedDetails val: :rtype: EventDetails """ return cls('showcase_file_removed_details', val) @classmethod def showcase_file_view_details(cls, val): """ Create an instance of this class set to the ``showcase_file_view_details`` tag with value ``val``. :param ShowcaseFileViewDetails val: :rtype: EventDetails """ return cls('showcase_file_view_details', val) @classmethod def showcase_permanently_deleted_details(cls, val): """ Create an instance of this class set to the ``showcase_permanently_deleted_details`` tag with value ``val``. :param ShowcasePermanentlyDeletedDetails val: :rtype: EventDetails """ return cls('showcase_permanently_deleted_details', val) @classmethod def showcase_post_comment_details(cls, val): """ Create an instance of this class set to the ``showcase_post_comment_details`` tag with value ``val``. :param ShowcasePostCommentDetails val: :rtype: EventDetails """ return cls('showcase_post_comment_details', val) @classmethod def showcase_remove_member_details(cls, val): """ Create an instance of this class set to the ``showcase_remove_member_details`` tag with value ``val``. :param ShowcaseRemoveMemberDetails val: :rtype: EventDetails """ return cls('showcase_remove_member_details', val) @classmethod def showcase_renamed_details(cls, val): """ Create an instance of this class set to the ``showcase_renamed_details`` tag with value ``val``. :param ShowcaseRenamedDetails val: :rtype: EventDetails """ return cls('showcase_renamed_details', val) @classmethod def showcase_request_access_details(cls, val): """ Create an instance of this class set to the ``showcase_request_access_details`` tag with value ``val``. :param ShowcaseRequestAccessDetails val: :rtype: EventDetails """ return cls('showcase_request_access_details', val) @classmethod def showcase_resolve_comment_details(cls, val): """ Create an instance of this class set to the ``showcase_resolve_comment_details`` tag with value ``val``. :param ShowcaseResolveCommentDetails val: :rtype: EventDetails """ return cls('showcase_resolve_comment_details', val) @classmethod def showcase_restored_details(cls, val): """ Create an instance of this class set to the ``showcase_restored_details`` tag with value ``val``. :param ShowcaseRestoredDetails val: :rtype: EventDetails """ return cls('showcase_restored_details', val) @classmethod def showcase_trashed_details(cls, val): """ Create an instance of this class set to the ``showcase_trashed_details`` tag with value ``val``. :param ShowcaseTrashedDetails val: :rtype: EventDetails """ return cls('showcase_trashed_details', val) @classmethod def showcase_trashed_deprecated_details(cls, val): """ Create an instance of this class set to the ``showcase_trashed_deprecated_details`` tag with value ``val``. :param ShowcaseTrashedDeprecatedDetails val: :rtype: EventDetails """ return cls('showcase_trashed_deprecated_details', val) @classmethod def showcase_unresolve_comment_details(cls, val): """ Create an instance of this class set to the ``showcase_unresolve_comment_details`` tag with value ``val``. :param ShowcaseUnresolveCommentDetails val: :rtype: EventDetails """ return cls('showcase_unresolve_comment_details', val) @classmethod def showcase_untrashed_details(cls, val): """ Create an instance of this class set to the ``showcase_untrashed_details`` tag with value ``val``. :param ShowcaseUntrashedDetails val: :rtype: EventDetails """ return cls('showcase_untrashed_details', val) @classmethod def showcase_untrashed_deprecated_details(cls, val): """ Create an instance of this class set to the ``showcase_untrashed_deprecated_details`` tag with value ``val``. :param ShowcaseUntrashedDeprecatedDetails val: :rtype: EventDetails """ return cls('showcase_untrashed_deprecated_details', val) @classmethod def showcase_view_details(cls, val): """ Create an instance of this class set to the ``showcase_view_details`` tag with value ``val``. :param ShowcaseViewDetails val: :rtype: EventDetails """ return cls('showcase_view_details', val) @classmethod def sso_add_cert_details(cls, val): """ Create an instance of this class set to the ``sso_add_cert_details`` tag with value ``val``. :param SsoAddCertDetails val: :rtype: EventDetails """ return cls('sso_add_cert_details', val) @classmethod def sso_add_login_url_details(cls, val): """ Create an instance of this class set to the ``sso_add_login_url_details`` tag with value ``val``. :param SsoAddLoginUrlDetails val: :rtype: EventDetails """ return cls('sso_add_login_url_details', val) @classmethod def sso_add_logout_url_details(cls, val): """ Create an instance of this class set to the ``sso_add_logout_url_details`` tag with value ``val``. :param SsoAddLogoutUrlDetails val: :rtype: EventDetails """ return cls('sso_add_logout_url_details', val) @classmethod def sso_change_cert_details(cls, val): """ Create an instance of this class set to the ``sso_change_cert_details`` tag with value ``val``. :param SsoChangeCertDetails val: :rtype: EventDetails """ return cls('sso_change_cert_details', val) @classmethod def sso_change_login_url_details(cls, val): """ Create an instance of this class set to the ``sso_change_login_url_details`` tag with value ``val``. :param SsoChangeLoginUrlDetails val: :rtype: EventDetails """ return cls('sso_change_login_url_details', val) @classmethod def sso_change_logout_url_details(cls, val): """ Create an instance of this class set to the ``sso_change_logout_url_details`` tag with value ``val``. :param SsoChangeLogoutUrlDetails val: :rtype: EventDetails """ return cls('sso_change_logout_url_details', val) @classmethod def sso_change_saml_identity_mode_details(cls, val): """ Create an instance of this class set to the ``sso_change_saml_identity_mode_details`` tag with value ``val``. :param SsoChangeSamlIdentityModeDetails val: :rtype: EventDetails """ return cls('sso_change_saml_identity_mode_details', val) @classmethod def sso_remove_cert_details(cls, val): """ Create an instance of this class set to the ``sso_remove_cert_details`` tag with value ``val``. :param SsoRemoveCertDetails val: :rtype: EventDetails """ return cls('sso_remove_cert_details', val) @classmethod def sso_remove_login_url_details(cls, val): """ Create an instance of this class set to the ``sso_remove_login_url_details`` tag with value ``val``. :param SsoRemoveLoginUrlDetails val: :rtype: EventDetails """ return cls('sso_remove_login_url_details', val) @classmethod def sso_remove_logout_url_details(cls, val): """ Create an instance of this class set to the ``sso_remove_logout_url_details`` tag with value ``val``. :param SsoRemoveLogoutUrlDetails val: :rtype: EventDetails """ return cls('sso_remove_logout_url_details', val) @classmethod def team_folder_change_status_details(cls, val): """ Create an instance of this class set to the ``team_folder_change_status_details`` tag with value ``val``. :param TeamFolderChangeStatusDetails val: :rtype: EventDetails """ return cls('team_folder_change_status_details', val) @classmethod def team_folder_create_details(cls, val): """ Create an instance of this class set to the ``team_folder_create_details`` tag with value ``val``. :param TeamFolderCreateDetails val: :rtype: EventDetails """ return cls('team_folder_create_details', val) @classmethod def team_folder_downgrade_details(cls, val): """ Create an instance of this class set to the ``team_folder_downgrade_details`` tag with value ``val``. :param TeamFolderDowngradeDetails val: :rtype: EventDetails """ return cls('team_folder_downgrade_details', val) @classmethod def team_folder_permanently_delete_details(cls, val): """ Create an instance of this class set to the ``team_folder_permanently_delete_details`` tag with value ``val``. :param TeamFolderPermanentlyDeleteDetails val: :rtype: EventDetails """ return cls('team_folder_permanently_delete_details', val) @classmethod def team_folder_rename_details(cls, val): """ Create an instance of this class set to the ``team_folder_rename_details`` tag with value ``val``. :param TeamFolderRenameDetails val: :rtype: EventDetails """ return cls('team_folder_rename_details', val) @classmethod def team_selective_sync_settings_changed_details(cls, val): """ Create an instance of this class set to the ``team_selective_sync_settings_changed_details`` tag with value ``val``. :param TeamSelectiveSyncSettingsChangedDetails val: :rtype: EventDetails """ return cls('team_selective_sync_settings_changed_details', val) @classmethod def account_capture_change_policy_details(cls, val): """ Create an instance of this class set to the ``account_capture_change_policy_details`` tag with value ``val``. :param AccountCaptureChangePolicyDetails val: :rtype: EventDetails """ return cls('account_capture_change_policy_details', val) @classmethod def admin_email_reminders_changed_details(cls, val): """ Create an instance of this class set to the ``admin_email_reminders_changed_details`` tag with value ``val``. :param AdminEmailRemindersChangedDetails val: :rtype: EventDetails """ return cls('admin_email_reminders_changed_details', val) @classmethod def allow_download_disabled_details(cls, val): """ Create an instance of this class set to the ``allow_download_disabled_details`` tag with value ``val``. :param AllowDownloadDisabledDetails val: :rtype: EventDetails """ return cls('allow_download_disabled_details', val) @classmethod def allow_download_enabled_details(cls, val): """ Create an instance of this class set to the ``allow_download_enabled_details`` tag with value ``val``. :param AllowDownloadEnabledDetails val: :rtype: EventDetails """ return cls('allow_download_enabled_details', val) @classmethod def app_permissions_changed_details(cls, val): """ Create an instance of this class set to the ``app_permissions_changed_details`` tag with value ``val``. :param AppPermissionsChangedDetails val: :rtype: EventDetails """ return cls('app_permissions_changed_details', val) @classmethod def camera_uploads_policy_changed_details(cls, val): """ Create an instance of this class set to the ``camera_uploads_policy_changed_details`` tag with value ``val``. :param CameraUploadsPolicyChangedDetails val: :rtype: EventDetails """ return cls('camera_uploads_policy_changed_details', val) @classmethod def capture_transcript_policy_changed_details(cls, val): """ Create an instance of this class set to the ``capture_transcript_policy_changed_details`` tag with value ``val``. :param CaptureTranscriptPolicyChangedDetails val: :rtype: EventDetails """ return cls('capture_transcript_policy_changed_details', val) @classmethod def classification_change_policy_details(cls, val): """ Create an instance of this class set to the ``classification_change_policy_details`` tag with value ``val``. :param ClassificationChangePolicyDetails val: :rtype: EventDetails """ return cls('classification_change_policy_details', val) @classmethod def computer_backup_policy_changed_details(cls, val): """ Create an instance of this class set to the ``computer_backup_policy_changed_details`` tag with value ``val``. :param ComputerBackupPolicyChangedDetails val: :rtype: EventDetails """ return cls('computer_backup_policy_changed_details', val) @classmethod def content_administration_policy_changed_details(cls, val): """ Create an instance of this class set to the ``content_administration_policy_changed_details`` tag with value ``val``. :param ContentAdministrationPolicyChangedDetails val: :rtype: EventDetails """ return cls('content_administration_policy_changed_details', val) @classmethod def data_placement_restriction_change_policy_details(cls, val): """ Create an instance of this class set to the ``data_placement_restriction_change_policy_details`` tag with value ``val``. :param DataPlacementRestrictionChangePolicyDetails val: :rtype: EventDetails """ return cls('data_placement_restriction_change_policy_details', val) @classmethod def data_placement_restriction_satisfy_policy_details(cls, val): """ Create an instance of this class set to the ``data_placement_restriction_satisfy_policy_details`` tag with value ``val``. :param DataPlacementRestrictionSatisfyPolicyDetails val: :rtype: EventDetails """ return cls('data_placement_restriction_satisfy_policy_details', val) @classmethod def device_approvals_add_exception_details(cls, val): """ Create an instance of this class set to the ``device_approvals_add_exception_details`` tag with value ``val``. :param DeviceApprovalsAddExceptionDetails val: :rtype: EventDetails """ return cls('device_approvals_add_exception_details', val) @classmethod def device_approvals_change_desktop_policy_details(cls, val): """ Create an instance of this class set to the ``device_approvals_change_desktop_policy_details`` tag with value ``val``. :param DeviceApprovalsChangeDesktopPolicyDetails val: :rtype: EventDetails """ return cls('device_approvals_change_desktop_policy_details', val) @classmethod def device_approvals_change_mobile_policy_details(cls, val): """ Create an instance of this class set to the ``device_approvals_change_mobile_policy_details`` tag with value ``val``. :param DeviceApprovalsChangeMobilePolicyDetails val: :rtype: EventDetails """ return cls('device_approvals_change_mobile_policy_details', val) @classmethod def device_approvals_change_overage_action_details(cls, val): """ Create an instance of this class set to the ``device_approvals_change_overage_action_details`` tag with value ``val``. :param DeviceApprovalsChangeOverageActionDetails val: :rtype: EventDetails """ return cls('device_approvals_change_overage_action_details', val) @classmethod def device_approvals_change_unlink_action_details(cls, val): """ Create an instance of this class set to the ``device_approvals_change_unlink_action_details`` tag with value ``val``. :param DeviceApprovalsChangeUnlinkActionDetails val: :rtype: EventDetails """ return cls('device_approvals_change_unlink_action_details', val) @classmethod def device_approvals_remove_exception_details(cls, val): """ Create an instance of this class set to the ``device_approvals_remove_exception_details`` tag with value ``val``. :param DeviceApprovalsRemoveExceptionDetails val: :rtype: EventDetails """ return cls('device_approvals_remove_exception_details', val) @classmethod def directory_restrictions_add_members_details(cls, val): """ Create an instance of this class set to the ``directory_restrictions_add_members_details`` tag with value ``val``. :param DirectoryRestrictionsAddMembersDetails val: :rtype: EventDetails """ return cls('directory_restrictions_add_members_details', val) @classmethod def directory_restrictions_remove_members_details(cls, val): """ Create an instance of this class set to the ``directory_restrictions_remove_members_details`` tag with value ``val``. :param DirectoryRestrictionsRemoveMembersDetails val: :rtype: EventDetails """ return cls('directory_restrictions_remove_members_details', val) @classmethod def dropbox_passwords_policy_changed_details(cls, val): """ Create an instance of this class set to the ``dropbox_passwords_policy_changed_details`` tag with value ``val``. :param DropboxPasswordsPolicyChangedDetails val: :rtype: EventDetails """ return cls('dropbox_passwords_policy_changed_details', val) @classmethod def email_ingest_policy_changed_details(cls, val): """ Create an instance of this class set to the ``email_ingest_policy_changed_details`` tag with value ``val``. :param EmailIngestPolicyChangedDetails val: :rtype: EventDetails """ return cls('email_ingest_policy_changed_details', val) @classmethod def emm_add_exception_details(cls, val): """ Create an instance of this class set to the ``emm_add_exception_details`` tag with value ``val``. :param EmmAddExceptionDetails val: :rtype: EventDetails """ return cls('emm_add_exception_details', val) @classmethod def emm_change_policy_details(cls, val): """ Create an instance of this class set to the ``emm_change_policy_details`` tag with value ``val``. :param EmmChangePolicyDetails val: :rtype: EventDetails """ return cls('emm_change_policy_details', val) @classmethod def emm_remove_exception_details(cls, val): """ Create an instance of this class set to the ``emm_remove_exception_details`` tag with value ``val``. :param EmmRemoveExceptionDetails val: :rtype: EventDetails """ return cls('emm_remove_exception_details', val) @classmethod def extended_version_history_change_policy_details(cls, val): """ Create an instance of this class set to the ``extended_version_history_change_policy_details`` tag with value ``val``. :param ExtendedVersionHistoryChangePolicyDetails val: :rtype: EventDetails """ return cls('extended_version_history_change_policy_details', val) @classmethod def external_drive_backup_policy_changed_details(cls, val): """ Create an instance of this class set to the ``external_drive_backup_policy_changed_details`` tag with value ``val``. :param ExternalDriveBackupPolicyChangedDetails val: :rtype: EventDetails """ return cls('external_drive_backup_policy_changed_details', val) @classmethod def file_comments_change_policy_details(cls, val): """ Create an instance of this class set to the ``file_comments_change_policy_details`` tag with value ``val``. :param FileCommentsChangePolicyDetails val: :rtype: EventDetails """ return cls('file_comments_change_policy_details', val) @classmethod def file_locking_policy_changed_details(cls, val): """ Create an instance of this class set to the ``file_locking_policy_changed_details`` tag with value ``val``. :param FileLockingPolicyChangedDetails val: :rtype: EventDetails """ return cls('file_locking_policy_changed_details', val) @classmethod def file_provider_migration_policy_changed_details(cls, val): """ Create an instance of this class set to the ``file_provider_migration_policy_changed_details`` tag with value ``val``. :param FileProviderMigrationPolicyChangedDetails val: :rtype: EventDetails """ return cls('file_provider_migration_policy_changed_details', val) @classmethod def file_requests_change_policy_details(cls, val): """ Create an instance of this class set to the ``file_requests_change_policy_details`` tag with value ``val``. :param FileRequestsChangePolicyDetails val: :rtype: EventDetails """ return cls('file_requests_change_policy_details', val) @classmethod def file_requests_emails_enabled_details(cls, val): """ Create an instance of this class set to the ``file_requests_emails_enabled_details`` tag with value ``val``. :param FileRequestsEmailsEnabledDetails val: :rtype: EventDetails """ return cls('file_requests_emails_enabled_details', val) @classmethod def file_requests_emails_restricted_to_team_only_details(cls, val): """ Create an instance of this class set to the ``file_requests_emails_restricted_to_team_only_details`` tag with value ``val``. :param FileRequestsEmailsRestrictedToTeamOnlyDetails val: :rtype: EventDetails """ return cls('file_requests_emails_restricted_to_team_only_details', val) @classmethod def file_transfers_policy_changed_details(cls, val): """ Create an instance of this class set to the ``file_transfers_policy_changed_details`` tag with value ``val``. :param FileTransfersPolicyChangedDetails val: :rtype: EventDetails """ return cls('file_transfers_policy_changed_details', val) @classmethod def folder_link_restriction_policy_changed_details(cls, val): """ Create an instance of this class set to the ``folder_link_restriction_policy_changed_details`` tag with value ``val``. :param FolderLinkRestrictionPolicyChangedDetails val: :rtype: EventDetails """ return cls('folder_link_restriction_policy_changed_details', val) @classmethod def google_sso_change_policy_details(cls, val): """ Create an instance of this class set to the ``google_sso_change_policy_details`` tag with value ``val``. :param GoogleSsoChangePolicyDetails val: :rtype: EventDetails """ return cls('google_sso_change_policy_details', val) @classmethod def group_user_management_change_policy_details(cls, val): """ Create an instance of this class set to the ``group_user_management_change_policy_details`` tag with value ``val``. :param GroupUserManagementChangePolicyDetails val: :rtype: EventDetails """ return cls('group_user_management_change_policy_details', val) @classmethod def integration_policy_changed_details(cls, val): """ Create an instance of this class set to the ``integration_policy_changed_details`` tag with value ``val``. :param IntegrationPolicyChangedDetails val: :rtype: EventDetails """ return cls('integration_policy_changed_details', val) @classmethod def invite_acceptance_email_policy_changed_details(cls, val): """ Create an instance of this class set to the ``invite_acceptance_email_policy_changed_details`` tag with value ``val``. :param InviteAcceptanceEmailPolicyChangedDetails val: :rtype: EventDetails """ return cls('invite_acceptance_email_policy_changed_details', val) @classmethod def member_requests_change_policy_details(cls, val): """ Create an instance of this class set to the ``member_requests_change_policy_details`` tag with value ``val``. :param MemberRequestsChangePolicyDetails val: :rtype: EventDetails """ return cls('member_requests_change_policy_details', val) @classmethod def member_send_invite_policy_changed_details(cls, val): """ Create an instance of this class set to the ``member_send_invite_policy_changed_details`` tag with value ``val``. :param MemberSendInvitePolicyChangedDetails val: :rtype: EventDetails """ return cls('member_send_invite_policy_changed_details', val) @classmethod def member_space_limits_add_exception_details(cls, val): """ Create an instance of this class set to the ``member_space_limits_add_exception_details`` tag with value ``val``. :param MemberSpaceLimitsAddExceptionDetails val: :rtype: EventDetails """ return cls('member_space_limits_add_exception_details', val) @classmethod def member_space_limits_change_caps_type_policy_details(cls, val): """ Create an instance of this class set to the ``member_space_limits_change_caps_type_policy_details`` tag with value ``val``. :param MemberSpaceLimitsChangeCapsTypePolicyDetails val: :rtype: EventDetails """ return cls('member_space_limits_change_caps_type_policy_details', val) @classmethod def member_space_limits_change_policy_details(cls, val): """ Create an instance of this class set to the ``member_space_limits_change_policy_details`` tag with value ``val``. :param MemberSpaceLimitsChangePolicyDetails val: :rtype: EventDetails """ return cls('member_space_limits_change_policy_details', val) @classmethod def member_space_limits_remove_exception_details(cls, val): """ Create an instance of this class set to the ``member_space_limits_remove_exception_details`` tag with value ``val``. :param MemberSpaceLimitsRemoveExceptionDetails val: :rtype: EventDetails """ return cls('member_space_limits_remove_exception_details', val) @classmethod def member_suggestions_change_policy_details(cls, val): """ Create an instance of this class set to the ``member_suggestions_change_policy_details`` tag with value ``val``. :param MemberSuggestionsChangePolicyDetails val: :rtype: EventDetails """ return cls('member_suggestions_change_policy_details', val) @classmethod def microsoft_office_addin_change_policy_details(cls, val): """ Create an instance of this class set to the ``microsoft_office_addin_change_policy_details`` tag with value ``val``. :param MicrosoftOfficeAddinChangePolicyDetails val: :rtype: EventDetails """ return cls('microsoft_office_addin_change_policy_details', val) @classmethod def network_control_change_policy_details(cls, val): """ Create an instance of this class set to the ``network_control_change_policy_details`` tag with value ``val``. :param NetworkControlChangePolicyDetails val: :rtype: EventDetails """ return cls('network_control_change_policy_details', val) @classmethod def paper_change_deployment_policy_details(cls, val): """ Create an instance of this class set to the ``paper_change_deployment_policy_details`` tag with value ``val``. :param PaperChangeDeploymentPolicyDetails val: :rtype: EventDetails """ return cls('paper_change_deployment_policy_details', val) @classmethod def paper_change_member_link_policy_details(cls, val): """ Create an instance of this class set to the ``paper_change_member_link_policy_details`` tag with value ``val``. :param PaperChangeMemberLinkPolicyDetails val: :rtype: EventDetails """ return cls('paper_change_member_link_policy_details', val) @classmethod def paper_change_member_policy_details(cls, val): """ Create an instance of this class set to the ``paper_change_member_policy_details`` tag with value ``val``. :param PaperChangeMemberPolicyDetails val: :rtype: EventDetails """ return cls('paper_change_member_policy_details', val) @classmethod def paper_change_policy_details(cls, val): """ Create an instance of this class set to the ``paper_change_policy_details`` tag with value ``val``. :param PaperChangePolicyDetails val: :rtype: EventDetails """ return cls('paper_change_policy_details', val) @classmethod def paper_default_folder_policy_changed_details(cls, val): """ Create an instance of this class set to the ``paper_default_folder_policy_changed_details`` tag with value ``val``. :param PaperDefaultFolderPolicyChangedDetails val: :rtype: EventDetails """ return cls('paper_default_folder_policy_changed_details', val) @classmethod def paper_desktop_policy_changed_details(cls, val): """ Create an instance of this class set to the ``paper_desktop_policy_changed_details`` tag with value ``val``. :param PaperDesktopPolicyChangedDetails val: :rtype: EventDetails """ return cls('paper_desktop_policy_changed_details', val) @classmethod def paper_enabled_users_group_addition_details(cls, val): """ Create an instance of this class set to the ``paper_enabled_users_group_addition_details`` tag with value ``val``. :param PaperEnabledUsersGroupAdditionDetails val: :rtype: EventDetails """ return cls('paper_enabled_users_group_addition_details', val) @classmethod def paper_enabled_users_group_removal_details(cls, val): """ Create an instance of this class set to the ``paper_enabled_users_group_removal_details`` tag with value ``val``. :param PaperEnabledUsersGroupRemovalDetails val: :rtype: EventDetails """ return cls('paper_enabled_users_group_removal_details', val) @classmethod def password_strength_requirements_change_policy_details(cls, val): """ Create an instance of this class set to the ``password_strength_requirements_change_policy_details`` tag with value ``val``. :param PasswordStrengthRequirementsChangePolicyDetails val: :rtype: EventDetails """ return cls('password_strength_requirements_change_policy_details', val) @classmethod def permanent_delete_change_policy_details(cls, val): """ Create an instance of this class set to the ``permanent_delete_change_policy_details`` tag with value ``val``. :param PermanentDeleteChangePolicyDetails val: :rtype: EventDetails """ return cls('permanent_delete_change_policy_details', val) @classmethod def reseller_support_change_policy_details(cls, val): """ Create an instance of this class set to the ``reseller_support_change_policy_details`` tag with value ``val``. :param ResellerSupportChangePolicyDetails val: :rtype: EventDetails """ return cls('reseller_support_change_policy_details', val) @classmethod def rewind_policy_changed_details(cls, val): """ Create an instance of this class set to the ``rewind_policy_changed_details`` tag with value ``val``. :param RewindPolicyChangedDetails val: :rtype: EventDetails """ return cls('rewind_policy_changed_details', val) @classmethod def send_for_signature_policy_changed_details(cls, val): """ Create an instance of this class set to the ``send_for_signature_policy_changed_details`` tag with value ``val``. :param SendForSignaturePolicyChangedDetails val: :rtype: EventDetails """ return cls('send_for_signature_policy_changed_details', val) @classmethod def sharing_change_folder_join_policy_details(cls, val): """ Create an instance of this class set to the ``sharing_change_folder_join_policy_details`` tag with value ``val``. :param SharingChangeFolderJoinPolicyDetails val: :rtype: EventDetails """ return cls('sharing_change_folder_join_policy_details', val) @classmethod def sharing_change_link_allow_change_expiration_policy_details(cls, val): """ Create an instance of this class set to the ``sharing_change_link_allow_change_expiration_policy_details`` tag with value ``val``. :param SharingChangeLinkAllowChangeExpirationPolicyDetails val: :rtype: EventDetails """ return cls('sharing_change_link_allow_change_expiration_policy_details', val) @classmethod def sharing_change_link_default_expiration_policy_details(cls, val): """ Create an instance of this class set to the ``sharing_change_link_default_expiration_policy_details`` tag with value ``val``. :param SharingChangeLinkDefaultExpirationPolicyDetails val: :rtype: EventDetails """ return cls('sharing_change_link_default_expiration_policy_details', val) @classmethod def sharing_change_link_enforce_password_policy_details(cls, val): """ Create an instance of this class set to the ``sharing_change_link_enforce_password_policy_details`` tag with value ``val``. :param SharingChangeLinkEnforcePasswordPolicyDetails val: :rtype: EventDetails """ return cls('sharing_change_link_enforce_password_policy_details', val) @classmethod def sharing_change_link_policy_details(cls, val): """ Create an instance of this class set to the ``sharing_change_link_policy_details`` tag with value ``val``. :param SharingChangeLinkPolicyDetails val: :rtype: EventDetails """ return cls('sharing_change_link_policy_details', val) @classmethod def sharing_change_member_policy_details(cls, val): """ Create an instance of this class set to the ``sharing_change_member_policy_details`` tag with value ``val``. :param SharingChangeMemberPolicyDetails val: :rtype: EventDetails """ return cls('sharing_change_member_policy_details', val) @classmethod def showcase_change_download_policy_details(cls, val): """ Create an instance of this class set to the ``showcase_change_download_policy_details`` tag with value ``val``. :param ShowcaseChangeDownloadPolicyDetails val: :rtype: EventDetails """ return cls('showcase_change_download_policy_details', val) @classmethod def showcase_change_enabled_policy_details(cls, val): """ Create an instance of this class set to the ``showcase_change_enabled_policy_details`` tag with value ``val``. :param ShowcaseChangeEnabledPolicyDetails val: :rtype: EventDetails """ return cls('showcase_change_enabled_policy_details', val) @classmethod def showcase_change_external_sharing_policy_details(cls, val): """ Create an instance of this class set to the ``showcase_change_external_sharing_policy_details`` tag with value ``val``. :param ShowcaseChangeExternalSharingPolicyDetails val: :rtype: EventDetails """ return cls('showcase_change_external_sharing_policy_details', val) @classmethod def smarter_smart_sync_policy_changed_details(cls, val): """ Create an instance of this class set to the ``smarter_smart_sync_policy_changed_details`` tag with value ``val``. :param SmarterSmartSyncPolicyChangedDetails val: :rtype: EventDetails """ return cls('smarter_smart_sync_policy_changed_details', val) @classmethod def smart_sync_change_policy_details(cls, val): """ Create an instance of this class set to the ``smart_sync_change_policy_details`` tag with value ``val``. :param SmartSyncChangePolicyDetails val: :rtype: EventDetails """ return cls('smart_sync_change_policy_details', val) @classmethod def smart_sync_not_opt_out_details(cls, val): """ Create an instance of this class set to the ``smart_sync_not_opt_out_details`` tag with value ``val``. :param SmartSyncNotOptOutDetails val: :rtype: EventDetails """ return cls('smart_sync_not_opt_out_details', val) @classmethod def smart_sync_opt_out_details(cls, val): """ Create an instance of this class set to the ``smart_sync_opt_out_details`` tag with value ``val``. :param SmartSyncOptOutDetails val: :rtype: EventDetails """ return cls('smart_sync_opt_out_details', val) @classmethod def sso_change_policy_details(cls, val): """ Create an instance of this class set to the ``sso_change_policy_details`` tag with value ``val``. :param SsoChangePolicyDetails val: :rtype: EventDetails """ return cls('sso_change_policy_details', val) @classmethod def team_branding_policy_changed_details(cls, val): """ Create an instance of this class set to the ``team_branding_policy_changed_details`` tag with value ``val``. :param TeamBrandingPolicyChangedDetails val: :rtype: EventDetails """ return cls('team_branding_policy_changed_details', val) @classmethod def team_extensions_policy_changed_details(cls, val): """ Create an instance of this class set to the ``team_extensions_policy_changed_details`` tag with value ``val``. :param TeamExtensionsPolicyChangedDetails val: :rtype: EventDetails """ return cls('team_extensions_policy_changed_details', val) @classmethod def team_selective_sync_policy_changed_details(cls, val): """ Create an instance of this class set to the ``team_selective_sync_policy_changed_details`` tag with value ``val``. :param TeamSelectiveSyncPolicyChangedDetails val: :rtype: EventDetails """ return cls('team_selective_sync_policy_changed_details', val) @classmethod def team_sharing_whitelist_subjects_changed_details(cls, val): """ Create an instance of this class set to the ``team_sharing_whitelist_subjects_changed_details`` tag with value ``val``. :param TeamSharingWhitelistSubjectsChangedDetails val: :rtype: EventDetails """ return cls('team_sharing_whitelist_subjects_changed_details', val) @classmethod def tfa_add_exception_details(cls, val): """ Create an instance of this class set to the ``tfa_add_exception_details`` tag with value ``val``. :param TfaAddExceptionDetails val: :rtype: EventDetails """ return cls('tfa_add_exception_details', val) @classmethod def tfa_change_policy_details(cls, val): """ Create an instance of this class set to the ``tfa_change_policy_details`` tag with value ``val``. :param TfaChangePolicyDetails val: :rtype: EventDetails """ return cls('tfa_change_policy_details', val) @classmethod def tfa_remove_exception_details(cls, val): """ Create an instance of this class set to the ``tfa_remove_exception_details`` tag with value ``val``. :param TfaRemoveExceptionDetails val: :rtype: EventDetails """ return cls('tfa_remove_exception_details', val) @classmethod def two_account_change_policy_details(cls, val): """ Create an instance of this class set to the ``two_account_change_policy_details`` tag with value ``val``. :param TwoAccountChangePolicyDetails val: :rtype: EventDetails """ return cls('two_account_change_policy_details', val) @classmethod def viewer_info_policy_changed_details(cls, val): """ Create an instance of this class set to the ``viewer_info_policy_changed_details`` tag with value ``val``. :param ViewerInfoPolicyChangedDetails val: :rtype: EventDetails """ return cls('viewer_info_policy_changed_details', val) @classmethod def watermarking_policy_changed_details(cls, val): """ Create an instance of this class set to the ``watermarking_policy_changed_details`` tag with value ``val``. :param WatermarkingPolicyChangedDetails val: :rtype: EventDetails """ return cls('watermarking_policy_changed_details', val) @classmethod def web_sessions_change_active_session_limit_details(cls, val): """ Create an instance of this class set to the ``web_sessions_change_active_session_limit_details`` tag with value ``val``. :param WebSessionsChangeActiveSessionLimitDetails val: :rtype: EventDetails """ return cls('web_sessions_change_active_session_limit_details', val) @classmethod def web_sessions_change_fixed_length_policy_details(cls, val): """ Create an instance of this class set to the ``web_sessions_change_fixed_length_policy_details`` tag with value ``val``. :param WebSessionsChangeFixedLengthPolicyDetails val: :rtype: EventDetails """ return cls('web_sessions_change_fixed_length_policy_details', val) @classmethod def web_sessions_change_idle_length_policy_details(cls, val): """ Create an instance of this class set to the ``web_sessions_change_idle_length_policy_details`` tag with value ``val``. :param WebSessionsChangeIdleLengthPolicyDetails val: :rtype: EventDetails """ return cls('web_sessions_change_idle_length_policy_details', val) @classmethod def data_residency_migration_request_successful_details(cls, val): """ Create an instance of this class set to the ``data_residency_migration_request_successful_details`` tag with value ``val``. :param DataResidencyMigrationRequestSuccessfulDetails val: :rtype: EventDetails """ return cls('data_residency_migration_request_successful_details', val) @classmethod def data_residency_migration_request_unsuccessful_details(cls, val): """ Create an instance of this class set to the ``data_residency_migration_request_unsuccessful_details`` tag with value ``val``. :param DataResidencyMigrationRequestUnsuccessfulDetails val: :rtype: EventDetails """ return cls('data_residency_migration_request_unsuccessful_details', val) @classmethod def team_merge_from_details(cls, val): """ Create an instance of this class set to the ``team_merge_from_details`` tag with value ``val``. :param TeamMergeFromDetails val: :rtype: EventDetails """ return cls('team_merge_from_details', val) @classmethod def team_merge_to_details(cls, val): """ Create an instance of this class set to the ``team_merge_to_details`` tag with value ``val``. :param TeamMergeToDetails val: :rtype: EventDetails """ return cls('team_merge_to_details', val) @classmethod def team_profile_add_background_details(cls, val): """ Create an instance of this class set to the ``team_profile_add_background_details`` tag with value ``val``. :param TeamProfileAddBackgroundDetails val: :rtype: EventDetails """ return cls('team_profile_add_background_details', val) @classmethod def team_profile_add_logo_details(cls, val): """ Create an instance of this class set to the ``team_profile_add_logo_details`` tag with value ``val``. :param TeamProfileAddLogoDetails val: :rtype: EventDetails """ return cls('team_profile_add_logo_details', val) @classmethod def team_profile_change_background_details(cls, val): """ Create an instance of this class set to the ``team_profile_change_background_details`` tag with value ``val``. :param TeamProfileChangeBackgroundDetails val: :rtype: EventDetails """ return cls('team_profile_change_background_details', val) @classmethod def team_profile_change_default_language_details(cls, val): """ Create an instance of this class set to the ``team_profile_change_default_language_details`` tag with value ``val``. :param TeamProfileChangeDefaultLanguageDetails val: :rtype: EventDetails """ return cls('team_profile_change_default_language_details', val) @classmethod def team_profile_change_logo_details(cls, val): """ Create an instance of this class set to the ``team_profile_change_logo_details`` tag with value ``val``. :param TeamProfileChangeLogoDetails val: :rtype: EventDetails """ return cls('team_profile_change_logo_details', val) @classmethod def team_profile_change_name_details(cls, val): """ Create an instance of this class set to the ``team_profile_change_name_details`` tag with value ``val``. :param TeamProfileChangeNameDetails val: :rtype: EventDetails """ return cls('team_profile_change_name_details', val) @classmethod def team_profile_remove_background_details(cls, val): """ Create an instance of this class set to the ``team_profile_remove_background_details`` tag with value ``val``. :param TeamProfileRemoveBackgroundDetails val: :rtype: EventDetails """ return cls('team_profile_remove_background_details', val) @classmethod def team_profile_remove_logo_details(cls, val): """ Create an instance of this class set to the ``team_profile_remove_logo_details`` tag with value ``val``. :param TeamProfileRemoveLogoDetails val: :rtype: EventDetails """ return cls('team_profile_remove_logo_details', val) @classmethod def tfa_add_backup_phone_details(cls, val): """ Create an instance of this class set to the ``tfa_add_backup_phone_details`` tag with value ``val``. :param TfaAddBackupPhoneDetails val: :rtype: EventDetails """ return cls('tfa_add_backup_phone_details', val) @classmethod def tfa_add_security_key_details(cls, val): """ Create an instance of this class set to the ``tfa_add_security_key_details`` tag with value ``val``. :param TfaAddSecurityKeyDetails val: :rtype: EventDetails """ return cls('tfa_add_security_key_details', val) @classmethod def tfa_change_backup_phone_details(cls, val): """ Create an instance of this class set to the ``tfa_change_backup_phone_details`` tag with value ``val``. :param TfaChangeBackupPhoneDetails val: :rtype: EventDetails """ return cls('tfa_change_backup_phone_details', val) @classmethod def tfa_change_status_details(cls, val): """ Create an instance of this class set to the ``tfa_change_status_details`` tag with value ``val``. :param TfaChangeStatusDetails val: :rtype: EventDetails """ return cls('tfa_change_status_details', val) @classmethod def tfa_remove_backup_phone_details(cls, val): """ Create an instance of this class set to the ``tfa_remove_backup_phone_details`` tag with value ``val``. :param TfaRemoveBackupPhoneDetails val: :rtype: EventDetails """ return cls('tfa_remove_backup_phone_details', val) @classmethod def tfa_remove_security_key_details(cls, val): """ Create an instance of this class set to the ``tfa_remove_security_key_details`` tag with value ``val``. :param TfaRemoveSecurityKeyDetails val: :rtype: EventDetails """ return cls('tfa_remove_security_key_details', val) @classmethod def tfa_reset_details(cls, val): """ Create an instance of this class set to the ``tfa_reset_details`` tag with value ``val``. :param TfaResetDetails val: :rtype: EventDetails """ return cls('tfa_reset_details', val) @classmethod def changed_enterprise_admin_role_details(cls, val): """ Create an instance of this class set to the ``changed_enterprise_admin_role_details`` tag with value ``val``. :param ChangedEnterpriseAdminRoleDetails val: :rtype: EventDetails """ return cls('changed_enterprise_admin_role_details', val) @classmethod def changed_enterprise_connected_team_status_details(cls, val): """ Create an instance of this class set to the ``changed_enterprise_connected_team_status_details`` tag with value ``val``. :param ChangedEnterpriseConnectedTeamStatusDetails val: :rtype: EventDetails """ return cls('changed_enterprise_connected_team_status_details', val) @classmethod def ended_enterprise_admin_session_details(cls, val): """ Create an instance of this class set to the ``ended_enterprise_admin_session_details`` tag with value ``val``. :param EndedEnterpriseAdminSessionDetails val: :rtype: EventDetails """ return cls('ended_enterprise_admin_session_details', val) @classmethod def ended_enterprise_admin_session_deprecated_details(cls, val): """ Create an instance of this class set to the ``ended_enterprise_admin_session_deprecated_details`` tag with value ``val``. :param EndedEnterpriseAdminSessionDeprecatedDetails val: :rtype: EventDetails """ return cls('ended_enterprise_admin_session_deprecated_details', val) @classmethod def enterprise_settings_locking_details(cls, val): """ Create an instance of this class set to the ``enterprise_settings_locking_details`` tag with value ``val``. :param EnterpriseSettingsLockingDetails val: :rtype: EventDetails """ return cls('enterprise_settings_locking_details', val) @classmethod def guest_admin_change_status_details(cls, val): """ Create an instance of this class set to the ``guest_admin_change_status_details`` tag with value ``val``. :param GuestAdminChangeStatusDetails val: :rtype: EventDetails """ return cls('guest_admin_change_status_details', val) @classmethod def started_enterprise_admin_session_details(cls, val): """ Create an instance of this class set to the ``started_enterprise_admin_session_details`` tag with value ``val``. :param StartedEnterpriseAdminSessionDetails val: :rtype: EventDetails """ return cls('started_enterprise_admin_session_details', val) @classmethod def team_merge_request_accepted_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_accepted_details`` tag with value ``val``. :param TeamMergeRequestAcceptedDetails val: :rtype: EventDetails """ return cls('team_merge_request_accepted_details', val) @classmethod def team_merge_request_accepted_shown_to_primary_team_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_accepted_shown_to_primary_team_details`` tag with value ``val``. :param TeamMergeRequestAcceptedShownToPrimaryTeamDetails val: :rtype: EventDetails """ return cls('team_merge_request_accepted_shown_to_primary_team_details', val) @classmethod def team_merge_request_accepted_shown_to_secondary_team_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_accepted_shown_to_secondary_team_details`` tag with value ``val``. :param TeamMergeRequestAcceptedShownToSecondaryTeamDetails val: :rtype: EventDetails """ return cls('team_merge_request_accepted_shown_to_secondary_team_details', val) @classmethod def team_merge_request_auto_canceled_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_auto_canceled_details`` tag with value ``val``. :param TeamMergeRequestAutoCanceledDetails val: :rtype: EventDetails """ return cls('team_merge_request_auto_canceled_details', val) @classmethod def team_merge_request_canceled_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_canceled_details`` tag with value ``val``. :param TeamMergeRequestCanceledDetails val: :rtype: EventDetails """ return cls('team_merge_request_canceled_details', val) @classmethod def team_merge_request_canceled_shown_to_primary_team_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_canceled_shown_to_primary_team_details`` tag with value ``val``. :param TeamMergeRequestCanceledShownToPrimaryTeamDetails val: :rtype: EventDetails """ return cls('team_merge_request_canceled_shown_to_primary_team_details', val) @classmethod def team_merge_request_canceled_shown_to_secondary_team_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_canceled_shown_to_secondary_team_details`` tag with value ``val``. :param TeamMergeRequestCanceledShownToSecondaryTeamDetails val: :rtype: EventDetails """ return cls('team_merge_request_canceled_shown_to_secondary_team_details', val) @classmethod def team_merge_request_expired_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_expired_details`` tag with value ``val``. :param TeamMergeRequestExpiredDetails val: :rtype: EventDetails """ return cls('team_merge_request_expired_details', val) @classmethod def team_merge_request_expired_shown_to_primary_team_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_expired_shown_to_primary_team_details`` tag with value ``val``. :param TeamMergeRequestExpiredShownToPrimaryTeamDetails val: :rtype: EventDetails """ return cls('team_merge_request_expired_shown_to_primary_team_details', val) @classmethod def team_merge_request_expired_shown_to_secondary_team_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_expired_shown_to_secondary_team_details`` tag with value ``val``. :param TeamMergeRequestExpiredShownToSecondaryTeamDetails val: :rtype: EventDetails """ return cls('team_merge_request_expired_shown_to_secondary_team_details', val) @classmethod def team_merge_request_rejected_shown_to_primary_team_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_rejected_shown_to_primary_team_details`` tag with value ``val``. :param TeamMergeRequestRejectedShownToPrimaryTeamDetails val: :rtype: EventDetails """ return cls('team_merge_request_rejected_shown_to_primary_team_details', val) @classmethod def team_merge_request_rejected_shown_to_secondary_team_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_rejected_shown_to_secondary_team_details`` tag with value ``val``. :param TeamMergeRequestRejectedShownToSecondaryTeamDetails val: :rtype: EventDetails """ return cls('team_merge_request_rejected_shown_to_secondary_team_details', val) @classmethod def team_merge_request_reminder_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_reminder_details`` tag with value ``val``. :param TeamMergeRequestReminderDetails val: :rtype: EventDetails """ return cls('team_merge_request_reminder_details', val) @classmethod def team_merge_request_reminder_shown_to_primary_team_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_reminder_shown_to_primary_team_details`` tag with value ``val``. :param TeamMergeRequestReminderShownToPrimaryTeamDetails val: :rtype: EventDetails """ return cls('team_merge_request_reminder_shown_to_primary_team_details', val) @classmethod def team_merge_request_reminder_shown_to_secondary_team_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_reminder_shown_to_secondary_team_details`` tag with value ``val``. :param TeamMergeRequestReminderShownToSecondaryTeamDetails val: :rtype: EventDetails """ return cls('team_merge_request_reminder_shown_to_secondary_team_details', val) @classmethod def team_merge_request_revoked_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_revoked_details`` tag with value ``val``. :param TeamMergeRequestRevokedDetails val: :rtype: EventDetails """ return cls('team_merge_request_revoked_details', val) @classmethod def team_merge_request_sent_shown_to_primary_team_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_sent_shown_to_primary_team_details`` tag with value ``val``. :param TeamMergeRequestSentShownToPrimaryTeamDetails val: :rtype: EventDetails """ return cls('team_merge_request_sent_shown_to_primary_team_details', val) @classmethod def team_merge_request_sent_shown_to_secondary_team_details(cls, val): """ Create an instance of this class set to the ``team_merge_request_sent_shown_to_secondary_team_details`` tag with value ``val``. :param TeamMergeRequestSentShownToSecondaryTeamDetails val: :rtype: EventDetails """ return cls('team_merge_request_sent_shown_to_secondary_team_details', val) @classmethod def missing_details(cls, val): """ Create an instance of this class set to the ``missing_details`` tag with value ``val``. :param MissingDetails val: :rtype: EventDetails """ return cls('missing_details', val) def is_admin_alerting_alert_state_changed_details(self): """ Check if the union tag is ``admin_alerting_alert_state_changed_details``. :rtype: bool """ return self._tag == 'admin_alerting_alert_state_changed_details' def is_admin_alerting_changed_alert_config_details(self): """ Check if the union tag is ``admin_alerting_changed_alert_config_details``. :rtype: bool """ return self._tag == 'admin_alerting_changed_alert_config_details' def is_admin_alerting_triggered_alert_details(self): """ Check if the union tag is ``admin_alerting_triggered_alert_details``. :rtype: bool """ return self._tag == 'admin_alerting_triggered_alert_details' def is_ransomware_restore_process_completed_details(self): """ Check if the union tag is ``ransomware_restore_process_completed_details``. :rtype: bool """ return self._tag == 'ransomware_restore_process_completed_details' def is_ransomware_restore_process_started_details(self): """ Check if the union tag is ``ransomware_restore_process_started_details``. :rtype: bool """ return self._tag == 'ransomware_restore_process_started_details' def is_app_blocked_by_permissions_details(self): """ Check if the union tag is ``app_blocked_by_permissions_details``. :rtype: bool """ return self._tag == 'app_blocked_by_permissions_details' def is_app_link_team_details(self): """ Check if the union tag is ``app_link_team_details``. :rtype: bool """ return self._tag == 'app_link_team_details' def is_app_link_user_details(self): """ Check if the union tag is ``app_link_user_details``. :rtype: bool """ return self._tag == 'app_link_user_details' def is_app_unlink_team_details(self): """ Check if the union tag is ``app_unlink_team_details``. :rtype: bool """ return self._tag == 'app_unlink_team_details' def is_app_unlink_user_details(self): """ Check if the union tag is ``app_unlink_user_details``. :rtype: bool """ return self._tag == 'app_unlink_user_details' def is_integration_connected_details(self): """ Check if the union tag is ``integration_connected_details``. :rtype: bool """ return self._tag == 'integration_connected_details' def is_integration_disconnected_details(self): """ Check if the union tag is ``integration_disconnected_details``. :rtype: bool """ return self._tag == 'integration_disconnected_details' def is_file_add_comment_details(self): """ Check if the union tag is ``file_add_comment_details``. :rtype: bool """ return self._tag == 'file_add_comment_details' def is_file_change_comment_subscription_details(self): """ Check if the union tag is ``file_change_comment_subscription_details``. :rtype: bool """ return self._tag == 'file_change_comment_subscription_details' def is_file_delete_comment_details(self): """ Check if the union tag is ``file_delete_comment_details``. :rtype: bool """ return self._tag == 'file_delete_comment_details' def is_file_edit_comment_details(self): """ Check if the union tag is ``file_edit_comment_details``. :rtype: bool """ return self._tag == 'file_edit_comment_details' def is_file_like_comment_details(self): """ Check if the union tag is ``file_like_comment_details``. :rtype: bool """ return self._tag == 'file_like_comment_details' def is_file_resolve_comment_details(self): """ Check if the union tag is ``file_resolve_comment_details``. :rtype: bool """ return self._tag == 'file_resolve_comment_details' def is_file_unlike_comment_details(self): """ Check if the union tag is ``file_unlike_comment_details``. :rtype: bool """ return self._tag == 'file_unlike_comment_details' def is_file_unresolve_comment_details(self): """ Check if the union tag is ``file_unresolve_comment_details``. :rtype: bool """ return self._tag == 'file_unresolve_comment_details' def is_governance_policy_add_folders_details(self): """ Check if the union tag is ``governance_policy_add_folders_details``. :rtype: bool """ return self._tag == 'governance_policy_add_folders_details' def is_governance_policy_add_folder_failed_details(self): """ Check if the union tag is ``governance_policy_add_folder_failed_details``. :rtype: bool """ return self._tag == 'governance_policy_add_folder_failed_details' def is_governance_policy_content_disposed_details(self): """ Check if the union tag is ``governance_policy_content_disposed_details``. :rtype: bool """ return self._tag == 'governance_policy_content_disposed_details' def is_governance_policy_create_details(self): """ Check if the union tag is ``governance_policy_create_details``. :rtype: bool """ return self._tag == 'governance_policy_create_details' def is_governance_policy_delete_details(self): """ Check if the union tag is ``governance_policy_delete_details``. :rtype: bool """ return self._tag == 'governance_policy_delete_details' def is_governance_policy_edit_details_details(self): """ Check if the union tag is ``governance_policy_edit_details_details``. :rtype: bool """ return self._tag == 'governance_policy_edit_details_details' def is_governance_policy_edit_duration_details(self): """ Check if the union tag is ``governance_policy_edit_duration_details``. :rtype: bool """ return self._tag == 'governance_policy_edit_duration_details' def is_governance_policy_export_created_details(self): """ Check if the union tag is ``governance_policy_export_created_details``. :rtype: bool """ return self._tag == 'governance_policy_export_created_details' def is_governance_policy_export_removed_details(self): """ Check if the union tag is ``governance_policy_export_removed_details``. :rtype: bool """ return self._tag == 'governance_policy_export_removed_details' def is_governance_policy_remove_folders_details(self): """ Check if the union tag is ``governance_policy_remove_folders_details``. :rtype: bool """ return self._tag == 'governance_policy_remove_folders_details' def is_governance_policy_report_created_details(self): """ Check if the union tag is ``governance_policy_report_created_details``. :rtype: bool """ return self._tag == 'governance_policy_report_created_details' def is_governance_policy_zip_part_downloaded_details(self): """ Check if the union tag is ``governance_policy_zip_part_downloaded_details``. :rtype: bool """ return self._tag == 'governance_policy_zip_part_downloaded_details' def is_legal_holds_activate_a_hold_details(self): """ Check if the union tag is ``legal_holds_activate_a_hold_details``. :rtype: bool """ return self._tag == 'legal_holds_activate_a_hold_details' def is_legal_holds_add_members_details(self): """ Check if the union tag is ``legal_holds_add_members_details``. :rtype: bool """ return self._tag == 'legal_holds_add_members_details' def is_legal_holds_change_hold_details_details(self): """ Check if the union tag is ``legal_holds_change_hold_details_details``. :rtype: bool """ return self._tag == 'legal_holds_change_hold_details_details' def is_legal_holds_change_hold_name_details(self): """ Check if the union tag is ``legal_holds_change_hold_name_details``. :rtype: bool """ return self._tag == 'legal_holds_change_hold_name_details' def is_legal_holds_export_a_hold_details(self): """ Check if the union tag is ``legal_holds_export_a_hold_details``. :rtype: bool """ return self._tag == 'legal_holds_export_a_hold_details' def is_legal_holds_export_cancelled_details(self): """ Check if the union tag is ``legal_holds_export_cancelled_details``. :rtype: bool """ return self._tag == 'legal_holds_export_cancelled_details' def is_legal_holds_export_downloaded_details(self): """ Check if the union tag is ``legal_holds_export_downloaded_details``. :rtype: bool """ return self._tag == 'legal_holds_export_downloaded_details' def is_legal_holds_export_removed_details(self): """ Check if the union tag is ``legal_holds_export_removed_details``. :rtype: bool """ return self._tag == 'legal_holds_export_removed_details' def is_legal_holds_release_a_hold_details(self): """ Check if the union tag is ``legal_holds_release_a_hold_details``. :rtype: bool """ return self._tag == 'legal_holds_release_a_hold_details' def is_legal_holds_remove_members_details(self): """ Check if the union tag is ``legal_holds_remove_members_details``. :rtype: bool """ return self._tag == 'legal_holds_remove_members_details' def is_legal_holds_report_a_hold_details(self): """ Check if the union tag is ``legal_holds_report_a_hold_details``. :rtype: bool """ return self._tag == 'legal_holds_report_a_hold_details' def is_device_change_ip_desktop_details(self): """ Check if the union tag is ``device_change_ip_desktop_details``. :rtype: bool """ return self._tag == 'device_change_ip_desktop_details' def is_device_change_ip_mobile_details(self): """ Check if the union tag is ``device_change_ip_mobile_details``. :rtype: bool """ return self._tag == 'device_change_ip_mobile_details' def is_device_change_ip_web_details(self): """ Check if the union tag is ``device_change_ip_web_details``. :rtype: bool """ return self._tag == 'device_change_ip_web_details' def is_device_delete_on_unlink_fail_details(self): """ Check if the union tag is ``device_delete_on_unlink_fail_details``. :rtype: bool """ return self._tag == 'device_delete_on_unlink_fail_details' def is_device_delete_on_unlink_success_details(self): """ Check if the union tag is ``device_delete_on_unlink_success_details``. :rtype: bool """ return self._tag == 'device_delete_on_unlink_success_details' def is_device_link_fail_details(self): """ Check if the union tag is ``device_link_fail_details``. :rtype: bool """ return self._tag == 'device_link_fail_details' def is_device_link_success_details(self): """ Check if the union tag is ``device_link_success_details``. :rtype: bool """ return self._tag == 'device_link_success_details' def is_device_management_disabled_details(self): """ Check if the union tag is ``device_management_disabled_details``. :rtype: bool """ return self._tag == 'device_management_disabled_details' def is_device_management_enabled_details(self): """ Check if the union tag is ``device_management_enabled_details``. :rtype: bool """ return self._tag == 'device_management_enabled_details' def is_device_sync_backup_status_changed_details(self): """ Check if the union tag is ``device_sync_backup_status_changed_details``. :rtype: bool """ return self._tag == 'device_sync_backup_status_changed_details' def is_device_unlink_details(self): """ Check if the union tag is ``device_unlink_details``. :rtype: bool """ return self._tag == 'device_unlink_details' def is_dropbox_passwords_exported_details(self): """ Check if the union tag is ``dropbox_passwords_exported_details``. :rtype: bool """ return self._tag == 'dropbox_passwords_exported_details' def is_dropbox_passwords_new_device_enrolled_details(self): """ Check if the union tag is ``dropbox_passwords_new_device_enrolled_details``. :rtype: bool """ return self._tag == 'dropbox_passwords_new_device_enrolled_details' def is_emm_refresh_auth_token_details(self): """ Check if the union tag is ``emm_refresh_auth_token_details``. :rtype: bool """ return self._tag == 'emm_refresh_auth_token_details' def is_external_drive_backup_eligibility_status_checked_details(self): """ Check if the union tag is ``external_drive_backup_eligibility_status_checked_details``. :rtype: bool """ return self._tag == 'external_drive_backup_eligibility_status_checked_details' def is_external_drive_backup_status_changed_details(self): """ Check if the union tag is ``external_drive_backup_status_changed_details``. :rtype: bool """ return self._tag == 'external_drive_backup_status_changed_details' def is_account_capture_change_availability_details(self): """ Check if the union tag is ``account_capture_change_availability_details``. :rtype: bool """ return self._tag == 'account_capture_change_availability_details' def is_account_capture_migrate_account_details(self): """ Check if the union tag is ``account_capture_migrate_account_details``. :rtype: bool """ return self._tag == 'account_capture_migrate_account_details' def is_account_capture_notification_emails_sent_details(self): """ Check if the union tag is ``account_capture_notification_emails_sent_details``. :rtype: bool """ return self._tag == 'account_capture_notification_emails_sent_details' def is_account_capture_relinquish_account_details(self): """ Check if the union tag is ``account_capture_relinquish_account_details``. :rtype: bool """ return self._tag == 'account_capture_relinquish_account_details' def is_disabled_domain_invites_details(self): """ Check if the union tag is ``disabled_domain_invites_details``. :rtype: bool """ return self._tag == 'disabled_domain_invites_details' def is_domain_invites_approve_request_to_join_team_details(self): """ Check if the union tag is ``domain_invites_approve_request_to_join_team_details``. :rtype: bool """ return self._tag == 'domain_invites_approve_request_to_join_team_details' def is_domain_invites_decline_request_to_join_team_details(self): """ Check if the union tag is ``domain_invites_decline_request_to_join_team_details``. :rtype: bool """ return self._tag == 'domain_invites_decline_request_to_join_team_details' def is_domain_invites_email_existing_users_details(self): """ Check if the union tag is ``domain_invites_email_existing_users_details``. :rtype: bool """ return self._tag == 'domain_invites_email_existing_users_details' def is_domain_invites_request_to_join_team_details(self): """ Check if the union tag is ``domain_invites_request_to_join_team_details``. :rtype: bool """ return self._tag == 'domain_invites_request_to_join_team_details' def is_domain_invites_set_invite_new_user_pref_to_no_details(self): """ Check if the union tag is ``domain_invites_set_invite_new_user_pref_to_no_details``. :rtype: bool """ return self._tag == 'domain_invites_set_invite_new_user_pref_to_no_details' def is_domain_invites_set_invite_new_user_pref_to_yes_details(self): """ Check if the union tag is ``domain_invites_set_invite_new_user_pref_to_yes_details``. :rtype: bool """ return self._tag == 'domain_invites_set_invite_new_user_pref_to_yes_details' def is_domain_verification_add_domain_fail_details(self): """ Check if the union tag is ``domain_verification_add_domain_fail_details``. :rtype: bool """ return self._tag == 'domain_verification_add_domain_fail_details' def is_domain_verification_add_domain_success_details(self): """ Check if the union tag is ``domain_verification_add_domain_success_details``. :rtype: bool """ return self._tag == 'domain_verification_add_domain_success_details' def is_domain_verification_remove_domain_details(self): """ Check if the union tag is ``domain_verification_remove_domain_details``. :rtype: bool """ return self._tag == 'domain_verification_remove_domain_details' def is_enabled_domain_invites_details(self): """ Check if the union tag is ``enabled_domain_invites_details``. :rtype: bool """ return self._tag == 'enabled_domain_invites_details' def is_team_encryption_key_cancel_key_deletion_details(self): """ Check if the union tag is ``team_encryption_key_cancel_key_deletion_details``. :rtype: bool """ return self._tag == 'team_encryption_key_cancel_key_deletion_details' def is_team_encryption_key_create_key_details(self): """ Check if the union tag is ``team_encryption_key_create_key_details``. :rtype: bool """ return self._tag == 'team_encryption_key_create_key_details' def is_team_encryption_key_delete_key_details(self): """ Check if the union tag is ``team_encryption_key_delete_key_details``. :rtype: bool """ return self._tag == 'team_encryption_key_delete_key_details' def is_team_encryption_key_disable_key_details(self): """ Check if the union tag is ``team_encryption_key_disable_key_details``. :rtype: bool """ return self._tag == 'team_encryption_key_disable_key_details' def is_team_encryption_key_enable_key_details(self): """ Check if the union tag is ``team_encryption_key_enable_key_details``. :rtype: bool """ return self._tag == 'team_encryption_key_enable_key_details' def is_team_encryption_key_rotate_key_details(self): """ Check if the union tag is ``team_encryption_key_rotate_key_details``. :rtype: bool """ return self._tag == 'team_encryption_key_rotate_key_details' def is_team_encryption_key_schedule_key_deletion_details(self): """ Check if the union tag is ``team_encryption_key_schedule_key_deletion_details``. :rtype: bool """ return self._tag == 'team_encryption_key_schedule_key_deletion_details' def is_apply_naming_convention_details(self): """ Check if the union tag is ``apply_naming_convention_details``. :rtype: bool """ return self._tag == 'apply_naming_convention_details' def is_create_folder_details(self): """ Check if the union tag is ``create_folder_details``. :rtype: bool """ return self._tag == 'create_folder_details' def is_file_add_details(self): """ Check if the union tag is ``file_add_details``. :rtype: bool """ return self._tag == 'file_add_details' def is_file_add_from_automation_details(self): """ Check if the union tag is ``file_add_from_automation_details``. :rtype: bool """ return self._tag == 'file_add_from_automation_details' def is_file_copy_details(self): """ Check if the union tag is ``file_copy_details``. :rtype: bool """ return self._tag == 'file_copy_details' def is_file_delete_details(self): """ Check if the union tag is ``file_delete_details``. :rtype: bool """ return self._tag == 'file_delete_details' def is_file_download_details(self): """ Check if the union tag is ``file_download_details``. :rtype: bool """ return self._tag == 'file_download_details' def is_file_edit_details(self): """ Check if the union tag is ``file_edit_details``. :rtype: bool """ return self._tag == 'file_edit_details' def is_file_get_copy_reference_details(self): """ Check if the union tag is ``file_get_copy_reference_details``. :rtype: bool """ return self._tag == 'file_get_copy_reference_details' def is_file_locking_lock_status_changed_details(self): """ Check if the union tag is ``file_locking_lock_status_changed_details``. :rtype: bool """ return self._tag == 'file_locking_lock_status_changed_details' def is_file_move_details(self): """ Check if the union tag is ``file_move_details``. :rtype: bool """ return self._tag == 'file_move_details' def is_file_permanently_delete_details(self): """ Check if the union tag is ``file_permanently_delete_details``. :rtype: bool """ return self._tag == 'file_permanently_delete_details' def is_file_preview_details(self): """ Check if the union tag is ``file_preview_details``. :rtype: bool """ return self._tag == 'file_preview_details' def is_file_rename_details(self): """ Check if the union tag is ``file_rename_details``. :rtype: bool """ return self._tag == 'file_rename_details' def is_file_restore_details(self): """ Check if the union tag is ``file_restore_details``. :rtype: bool """ return self._tag == 'file_restore_details' def is_file_revert_details(self): """ Check if the union tag is ``file_revert_details``. :rtype: bool """ return self._tag == 'file_revert_details' def is_file_rollback_changes_details(self): """ Check if the union tag is ``file_rollback_changes_details``. :rtype: bool """ return self._tag == 'file_rollback_changes_details' def is_file_save_copy_reference_details(self): """ Check if the union tag is ``file_save_copy_reference_details``. :rtype: bool """ return self._tag == 'file_save_copy_reference_details' def is_folder_overview_description_changed_details(self): """ Check if the union tag is ``folder_overview_description_changed_details``. :rtype: bool """ return self._tag == 'folder_overview_description_changed_details' def is_folder_overview_item_pinned_details(self): """ Check if the union tag is ``folder_overview_item_pinned_details``. :rtype: bool """ return self._tag == 'folder_overview_item_pinned_details' def is_folder_overview_item_unpinned_details(self): """ Check if the union tag is ``folder_overview_item_unpinned_details``. :rtype: bool """ return self._tag == 'folder_overview_item_unpinned_details' def is_object_label_added_details(self): """ Check if the union tag is ``object_label_added_details``. :rtype: bool """ return self._tag == 'object_label_added_details' def is_object_label_removed_details(self): """ Check if the union tag is ``object_label_removed_details``. :rtype: bool """ return self._tag == 'object_label_removed_details' def is_object_label_updated_value_details(self): """ Check if the union tag is ``object_label_updated_value_details``. :rtype: bool """ return self._tag == 'object_label_updated_value_details' def is_organize_folder_with_tidy_details(self): """ Check if the union tag is ``organize_folder_with_tidy_details``. :rtype: bool """ return self._tag == 'organize_folder_with_tidy_details' def is_replay_file_delete_details(self): """ Check if the union tag is ``replay_file_delete_details``. :rtype: bool """ return self._tag == 'replay_file_delete_details' def is_rewind_folder_details(self): """ Check if the union tag is ``rewind_folder_details``. :rtype: bool """ return self._tag == 'rewind_folder_details' def is_undo_naming_convention_details(self): """ Check if the union tag is ``undo_naming_convention_details``. :rtype: bool """ return self._tag == 'undo_naming_convention_details' def is_undo_organize_folder_with_tidy_details(self): """ Check if the union tag is ``undo_organize_folder_with_tidy_details``. :rtype: bool """ return self._tag == 'undo_organize_folder_with_tidy_details' def is_user_tags_added_details(self): """ Check if the union tag is ``user_tags_added_details``. :rtype: bool """ return self._tag == 'user_tags_added_details' def is_user_tags_removed_details(self): """ Check if the union tag is ``user_tags_removed_details``. :rtype: bool """ return self._tag == 'user_tags_removed_details' def is_email_ingest_receive_file_details(self): """ Check if the union tag is ``email_ingest_receive_file_details``. :rtype: bool """ return self._tag == 'email_ingest_receive_file_details' def is_file_request_change_details(self): """ Check if the union tag is ``file_request_change_details``. :rtype: bool """ return self._tag == 'file_request_change_details' def is_file_request_close_details(self): """ Check if the union tag is ``file_request_close_details``. :rtype: bool """ return self._tag == 'file_request_close_details' def is_file_request_create_details(self): """ Check if the union tag is ``file_request_create_details``. :rtype: bool """ return self._tag == 'file_request_create_details' def is_file_request_delete_details(self): """ Check if the union tag is ``file_request_delete_details``. :rtype: bool """ return self._tag == 'file_request_delete_details' def is_file_request_receive_file_details(self): """ Check if the union tag is ``file_request_receive_file_details``. :rtype: bool """ return self._tag == 'file_request_receive_file_details' def is_group_add_external_id_details(self): """ Check if the union tag is ``group_add_external_id_details``. :rtype: bool """ return self._tag == 'group_add_external_id_details' def is_group_add_member_details(self): """ Check if the union tag is ``group_add_member_details``. :rtype: bool """ return self._tag == 'group_add_member_details' def is_group_change_external_id_details(self): """ Check if the union tag is ``group_change_external_id_details``. :rtype: bool """ return self._tag == 'group_change_external_id_details' def is_group_change_management_type_details(self): """ Check if the union tag is ``group_change_management_type_details``. :rtype: bool """ return self._tag == 'group_change_management_type_details' def is_group_change_member_role_details(self): """ Check if the union tag is ``group_change_member_role_details``. :rtype: bool """ return self._tag == 'group_change_member_role_details' def is_group_create_details(self): """ Check if the union tag is ``group_create_details``. :rtype: bool """ return self._tag == 'group_create_details' def is_group_delete_details(self): """ Check if the union tag is ``group_delete_details``. :rtype: bool """ return self._tag == 'group_delete_details' def is_group_description_updated_details(self): """ Check if the union tag is ``group_description_updated_details``. :rtype: bool """ return self._tag == 'group_description_updated_details' def is_group_join_policy_updated_details(self): """ Check if the union tag is ``group_join_policy_updated_details``. :rtype: bool """ return self._tag == 'group_join_policy_updated_details' def is_group_moved_details(self): """ Check if the union tag is ``group_moved_details``. :rtype: bool """ return self._tag == 'group_moved_details' def is_group_remove_external_id_details(self): """ Check if the union tag is ``group_remove_external_id_details``. :rtype: bool """ return self._tag == 'group_remove_external_id_details' def is_group_remove_member_details(self): """ Check if the union tag is ``group_remove_member_details``. :rtype: bool """ return self._tag == 'group_remove_member_details' def is_group_rename_details(self): """ Check if the union tag is ``group_rename_details``. :rtype: bool """ return self._tag == 'group_rename_details' def is_account_lock_or_unlocked_details(self): """ Check if the union tag is ``account_lock_or_unlocked_details``. :rtype: bool """ return self._tag == 'account_lock_or_unlocked_details' def is_emm_error_details(self): """ Check if the union tag is ``emm_error_details``. :rtype: bool """ return self._tag == 'emm_error_details' def is_guest_admin_signed_in_via_trusted_teams_details(self): """ Check if the union tag is ``guest_admin_signed_in_via_trusted_teams_details``. :rtype: bool """ return self._tag == 'guest_admin_signed_in_via_trusted_teams_details' def is_guest_admin_signed_out_via_trusted_teams_details(self): """ Check if the union tag is ``guest_admin_signed_out_via_trusted_teams_details``. :rtype: bool """ return self._tag == 'guest_admin_signed_out_via_trusted_teams_details' def is_login_fail_details(self): """ Check if the union tag is ``login_fail_details``. :rtype: bool """ return self._tag == 'login_fail_details' def is_login_success_details(self): """ Check if the union tag is ``login_success_details``. :rtype: bool """ return self._tag == 'login_success_details' def is_logout_details(self): """ Check if the union tag is ``logout_details``. :rtype: bool """ return self._tag == 'logout_details' def is_reseller_support_session_end_details(self): """ Check if the union tag is ``reseller_support_session_end_details``. :rtype: bool """ return self._tag == 'reseller_support_session_end_details' def is_reseller_support_session_start_details(self): """ Check if the union tag is ``reseller_support_session_start_details``. :rtype: bool """ return self._tag == 'reseller_support_session_start_details' def is_sign_in_as_session_end_details(self): """ Check if the union tag is ``sign_in_as_session_end_details``. :rtype: bool """ return self._tag == 'sign_in_as_session_end_details' def is_sign_in_as_session_start_details(self): """ Check if the union tag is ``sign_in_as_session_start_details``. :rtype: bool """ return self._tag == 'sign_in_as_session_start_details' def is_sso_error_details(self): """ Check if the union tag is ``sso_error_details``. :rtype: bool """ return self._tag == 'sso_error_details' def is_backup_admin_invitation_sent_details(self): """ Check if the union tag is ``backup_admin_invitation_sent_details``. :rtype: bool """ return self._tag == 'backup_admin_invitation_sent_details' def is_backup_invitation_opened_details(self): """ Check if the union tag is ``backup_invitation_opened_details``. :rtype: bool """ return self._tag == 'backup_invitation_opened_details' def is_create_team_invite_link_details(self): """ Check if the union tag is ``create_team_invite_link_details``. :rtype: bool """ return self._tag == 'create_team_invite_link_details' def is_delete_team_invite_link_details(self): """ Check if the union tag is ``delete_team_invite_link_details``. :rtype: bool """ return self._tag == 'delete_team_invite_link_details' def is_member_add_external_id_details(self): """ Check if the union tag is ``member_add_external_id_details``. :rtype: bool """ return self._tag == 'member_add_external_id_details' def is_member_add_name_details(self): """ Check if the union tag is ``member_add_name_details``. :rtype: bool """ return self._tag == 'member_add_name_details' def is_member_change_admin_role_details(self): """ Check if the union tag is ``member_change_admin_role_details``. :rtype: bool """ return self._tag == 'member_change_admin_role_details' def is_member_change_email_details(self): """ Check if the union tag is ``member_change_email_details``. :rtype: bool """ return self._tag == 'member_change_email_details' def is_member_change_external_id_details(self): """ Check if the union tag is ``member_change_external_id_details``. :rtype: bool """ return self._tag == 'member_change_external_id_details' def is_member_change_membership_type_details(self): """ Check if the union tag is ``member_change_membership_type_details``. :rtype: bool """ return self._tag == 'member_change_membership_type_details' def is_member_change_name_details(self): """ Check if the union tag is ``member_change_name_details``. :rtype: bool """ return self._tag == 'member_change_name_details' def is_member_change_reseller_role_details(self): """ Check if the union tag is ``member_change_reseller_role_details``. :rtype: bool """ return self._tag == 'member_change_reseller_role_details' def is_member_change_status_details(self): """ Check if the union tag is ``member_change_status_details``. :rtype: bool """ return self._tag == 'member_change_status_details' def is_member_delete_manual_contacts_details(self): """ Check if the union tag is ``member_delete_manual_contacts_details``. :rtype: bool """ return self._tag == 'member_delete_manual_contacts_details' def is_member_delete_profile_photo_details(self): """ Check if the union tag is ``member_delete_profile_photo_details``. :rtype: bool """ return self._tag == 'member_delete_profile_photo_details' def is_member_permanently_delete_account_contents_details(self): """ Check if the union tag is ``member_permanently_delete_account_contents_details``. :rtype: bool """ return self._tag == 'member_permanently_delete_account_contents_details' def is_member_remove_external_id_details(self): """ Check if the union tag is ``member_remove_external_id_details``. :rtype: bool """ return self._tag == 'member_remove_external_id_details' def is_member_set_profile_photo_details(self): """ Check if the union tag is ``member_set_profile_photo_details``. :rtype: bool """ return self._tag == 'member_set_profile_photo_details' def is_member_space_limits_add_custom_quota_details(self): """ Check if the union tag is ``member_space_limits_add_custom_quota_details``. :rtype: bool """ return self._tag == 'member_space_limits_add_custom_quota_details' def is_member_space_limits_change_custom_quota_details(self): """ Check if the union tag is ``member_space_limits_change_custom_quota_details``. :rtype: bool """ return self._tag == 'member_space_limits_change_custom_quota_details' def is_member_space_limits_change_status_details(self): """ Check if the union tag is ``member_space_limits_change_status_details``. :rtype: bool """ return self._tag == 'member_space_limits_change_status_details' def is_member_space_limits_remove_custom_quota_details(self): """ Check if the union tag is ``member_space_limits_remove_custom_quota_details``. :rtype: bool """ return self._tag == 'member_space_limits_remove_custom_quota_details' def is_member_suggest_details(self): """ Check if the union tag is ``member_suggest_details``. :rtype: bool """ return self._tag == 'member_suggest_details' def is_member_transfer_account_contents_details(self): """ Check if the union tag is ``member_transfer_account_contents_details``. :rtype: bool """ return self._tag == 'member_transfer_account_contents_details' def is_pending_secondary_email_added_details(self): """ Check if the union tag is ``pending_secondary_email_added_details``. :rtype: bool """ return self._tag == 'pending_secondary_email_added_details' def is_secondary_email_deleted_details(self): """ Check if the union tag is ``secondary_email_deleted_details``. :rtype: bool """ return self._tag == 'secondary_email_deleted_details' def is_secondary_email_verified_details(self): """ Check if the union tag is ``secondary_email_verified_details``. :rtype: bool """ return self._tag == 'secondary_email_verified_details' def is_secondary_mails_policy_changed_details(self): """ Check if the union tag is ``secondary_mails_policy_changed_details``. :rtype: bool """ return self._tag == 'secondary_mails_policy_changed_details' def is_binder_add_page_details(self): """ Check if the union tag is ``binder_add_page_details``. :rtype: bool """ return self._tag == 'binder_add_page_details' def is_binder_add_section_details(self): """ Check if the union tag is ``binder_add_section_details``. :rtype: bool """ return self._tag == 'binder_add_section_details' def is_binder_remove_page_details(self): """ Check if the union tag is ``binder_remove_page_details``. :rtype: bool """ return self._tag == 'binder_remove_page_details' def is_binder_remove_section_details(self): """ Check if the union tag is ``binder_remove_section_details``. :rtype: bool """ return self._tag == 'binder_remove_section_details' def is_binder_rename_page_details(self): """ Check if the union tag is ``binder_rename_page_details``. :rtype: bool """ return self._tag == 'binder_rename_page_details' def is_binder_rename_section_details(self): """ Check if the union tag is ``binder_rename_section_details``. :rtype: bool """ return self._tag == 'binder_rename_section_details' def is_binder_reorder_page_details(self): """ Check if the union tag is ``binder_reorder_page_details``. :rtype: bool """ return self._tag == 'binder_reorder_page_details' def is_binder_reorder_section_details(self): """ Check if the union tag is ``binder_reorder_section_details``. :rtype: bool """ return self._tag == 'binder_reorder_section_details' def is_paper_content_add_member_details(self): """ Check if the union tag is ``paper_content_add_member_details``. :rtype: bool """ return self._tag == 'paper_content_add_member_details' def is_paper_content_add_to_folder_details(self): """ Check if the union tag is ``paper_content_add_to_folder_details``. :rtype: bool """ return self._tag == 'paper_content_add_to_folder_details' def is_paper_content_archive_details(self): """ Check if the union tag is ``paper_content_archive_details``. :rtype: bool """ return self._tag == 'paper_content_archive_details' def is_paper_content_create_details(self): """ Check if the union tag is ``paper_content_create_details``. :rtype: bool """ return self._tag == 'paper_content_create_details' def is_paper_content_permanently_delete_details(self): """ Check if the union tag is ``paper_content_permanently_delete_details``. :rtype: bool """ return self._tag == 'paper_content_permanently_delete_details' def is_paper_content_remove_from_folder_details(self): """ Check if the union tag is ``paper_content_remove_from_folder_details``. :rtype: bool """ return self._tag == 'paper_content_remove_from_folder_details' def is_paper_content_remove_member_details(self): """ Check if the union tag is ``paper_content_remove_member_details``. :rtype: bool """ return self._tag == 'paper_content_remove_member_details' def is_paper_content_rename_details(self): """ Check if the union tag is ``paper_content_rename_details``. :rtype: bool """ return self._tag == 'paper_content_rename_details' def is_paper_content_restore_details(self): """ Check if the union tag is ``paper_content_restore_details``. :rtype: bool """ return self._tag == 'paper_content_restore_details' def is_paper_doc_add_comment_details(self): """ Check if the union tag is ``paper_doc_add_comment_details``. :rtype: bool """ return self._tag == 'paper_doc_add_comment_details' def is_paper_doc_change_member_role_details(self): """ Check if the union tag is ``paper_doc_change_member_role_details``. :rtype: bool """ return self._tag == 'paper_doc_change_member_role_details' def is_paper_doc_change_sharing_policy_details(self): """ Check if the union tag is ``paper_doc_change_sharing_policy_details``. :rtype: bool """ return self._tag == 'paper_doc_change_sharing_policy_details' def is_paper_doc_change_subscription_details(self): """ Check if the union tag is ``paper_doc_change_subscription_details``. :rtype: bool """ return self._tag == 'paper_doc_change_subscription_details' def is_paper_doc_deleted_details(self): """ Check if the union tag is ``paper_doc_deleted_details``. :rtype: bool """ return self._tag == 'paper_doc_deleted_details' def is_paper_doc_delete_comment_details(self): """ Check if the union tag is ``paper_doc_delete_comment_details``. :rtype: bool """ return self._tag == 'paper_doc_delete_comment_details' def is_paper_doc_download_details(self): """ Check if the union tag is ``paper_doc_download_details``. :rtype: bool """ return self._tag == 'paper_doc_download_details' def is_paper_doc_edit_details(self): """ Check if the union tag is ``paper_doc_edit_details``. :rtype: bool """ return self._tag == 'paper_doc_edit_details' def is_paper_doc_edit_comment_details(self): """ Check if the union tag is ``paper_doc_edit_comment_details``. :rtype: bool """ return self._tag == 'paper_doc_edit_comment_details' def is_paper_doc_followed_details(self): """ Check if the union tag is ``paper_doc_followed_details``. :rtype: bool """ return self._tag == 'paper_doc_followed_details' def is_paper_doc_mention_details(self): """ Check if the union tag is ``paper_doc_mention_details``. :rtype: bool """ return self._tag == 'paper_doc_mention_details' def is_paper_doc_ownership_changed_details(self): """ Check if the union tag is ``paper_doc_ownership_changed_details``. :rtype: bool """ return self._tag == 'paper_doc_ownership_changed_details' def is_paper_doc_request_access_details(self): """ Check if the union tag is ``paper_doc_request_access_details``. :rtype: bool """ return self._tag == 'paper_doc_request_access_details' def is_paper_doc_resolve_comment_details(self): """ Check if the union tag is ``paper_doc_resolve_comment_details``. :rtype: bool """ return self._tag == 'paper_doc_resolve_comment_details' def is_paper_doc_revert_details(self): """ Check if the union tag is ``paper_doc_revert_details``. :rtype: bool """ return self._tag == 'paper_doc_revert_details' def is_paper_doc_slack_share_details(self): """ Check if the union tag is ``paper_doc_slack_share_details``. :rtype: bool """ return self._tag == 'paper_doc_slack_share_details' def is_paper_doc_team_invite_details(self): """ Check if the union tag is ``paper_doc_team_invite_details``. :rtype: bool """ return self._tag == 'paper_doc_team_invite_details' def is_paper_doc_trashed_details(self): """ Check if the union tag is ``paper_doc_trashed_details``. :rtype: bool """ return self._tag == 'paper_doc_trashed_details' def is_paper_doc_unresolve_comment_details(self): """ Check if the union tag is ``paper_doc_unresolve_comment_details``. :rtype: bool """ return self._tag == 'paper_doc_unresolve_comment_details' def is_paper_doc_untrashed_details(self): """ Check if the union tag is ``paper_doc_untrashed_details``. :rtype: bool """ return self._tag == 'paper_doc_untrashed_details' def is_paper_doc_view_details(self): """ Check if the union tag is ``paper_doc_view_details``. :rtype: bool """ return self._tag == 'paper_doc_view_details' def is_paper_external_view_allow_details(self): """ Check if the union tag is ``paper_external_view_allow_details``. :rtype: bool """ return self._tag == 'paper_external_view_allow_details' def is_paper_external_view_default_team_details(self): """ Check if the union tag is ``paper_external_view_default_team_details``. :rtype: bool """ return self._tag == 'paper_external_view_default_team_details' def is_paper_external_view_forbid_details(self): """ Check if the union tag is ``paper_external_view_forbid_details``. :rtype: bool """ return self._tag == 'paper_external_view_forbid_details' def is_paper_folder_change_subscription_details(self): """ Check if the union tag is ``paper_folder_change_subscription_details``. :rtype: bool """ return self._tag == 'paper_folder_change_subscription_details' def is_paper_folder_deleted_details(self): """ Check if the union tag is ``paper_folder_deleted_details``. :rtype: bool """ return self._tag == 'paper_folder_deleted_details' def is_paper_folder_followed_details(self): """ Check if the union tag is ``paper_folder_followed_details``. :rtype: bool """ return self._tag == 'paper_folder_followed_details' def is_paper_folder_team_invite_details(self): """ Check if the union tag is ``paper_folder_team_invite_details``. :rtype: bool """ return self._tag == 'paper_folder_team_invite_details' def is_paper_published_link_change_permission_details(self): """ Check if the union tag is ``paper_published_link_change_permission_details``. :rtype: bool """ return self._tag == 'paper_published_link_change_permission_details' def is_paper_published_link_create_details(self): """ Check if the union tag is ``paper_published_link_create_details``. :rtype: bool """ return self._tag == 'paper_published_link_create_details' def is_paper_published_link_disabled_details(self): """ Check if the union tag is ``paper_published_link_disabled_details``. :rtype: bool """ return self._tag == 'paper_published_link_disabled_details' def is_paper_published_link_view_details(self): """ Check if the union tag is ``paper_published_link_view_details``. :rtype: bool """ return self._tag == 'paper_published_link_view_details' def is_password_change_details(self): """ Check if the union tag is ``password_change_details``. :rtype: bool """ return self._tag == 'password_change_details' def is_password_reset_details(self): """ Check if the union tag is ``password_reset_details``. :rtype: bool """ return self._tag == 'password_reset_details' def is_password_reset_all_details(self): """ Check if the union tag is ``password_reset_all_details``. :rtype: bool """ return self._tag == 'password_reset_all_details' def is_classification_create_report_details(self): """ Check if the union tag is ``classification_create_report_details``. :rtype: bool """ return self._tag == 'classification_create_report_details' def is_classification_create_report_fail_details(self): """ Check if the union tag is ``classification_create_report_fail_details``. :rtype: bool """ return self._tag == 'classification_create_report_fail_details' def is_emm_create_exceptions_report_details(self): """ Check if the union tag is ``emm_create_exceptions_report_details``. :rtype: bool """ return self._tag == 'emm_create_exceptions_report_details' def is_emm_create_usage_report_details(self): """ Check if the union tag is ``emm_create_usage_report_details``. :rtype: bool """ return self._tag == 'emm_create_usage_report_details' def is_export_members_report_details(self): """ Check if the union tag is ``export_members_report_details``. :rtype: bool """ return self._tag == 'export_members_report_details' def is_export_members_report_fail_details(self): """ Check if the union tag is ``export_members_report_fail_details``. :rtype: bool """ return self._tag == 'export_members_report_fail_details' def is_external_sharing_create_report_details(self): """ Check if the union tag is ``external_sharing_create_report_details``. :rtype: bool """ return self._tag == 'external_sharing_create_report_details' def is_external_sharing_report_failed_details(self): """ Check if the union tag is ``external_sharing_report_failed_details``. :rtype: bool """ return self._tag == 'external_sharing_report_failed_details' def is_no_expiration_link_gen_create_report_details(self): """ Check if the union tag is ``no_expiration_link_gen_create_report_details``. :rtype: bool """ return self._tag == 'no_expiration_link_gen_create_report_details' def is_no_expiration_link_gen_report_failed_details(self): """ Check if the union tag is ``no_expiration_link_gen_report_failed_details``. :rtype: bool """ return self._tag == 'no_expiration_link_gen_report_failed_details' def is_no_password_link_gen_create_report_details(self): """ Check if the union tag is ``no_password_link_gen_create_report_details``. :rtype: bool """ return self._tag == 'no_password_link_gen_create_report_details' def is_no_password_link_gen_report_failed_details(self): """ Check if the union tag is ``no_password_link_gen_report_failed_details``. :rtype: bool """ return self._tag == 'no_password_link_gen_report_failed_details' def is_no_password_link_view_create_report_details(self): """ Check if the union tag is ``no_password_link_view_create_report_details``. :rtype: bool """ return self._tag == 'no_password_link_view_create_report_details' def is_no_password_link_view_report_failed_details(self): """ Check if the union tag is ``no_password_link_view_report_failed_details``. :rtype: bool """ return self._tag == 'no_password_link_view_report_failed_details' def is_outdated_link_view_create_report_details(self): """ Check if the union tag is ``outdated_link_view_create_report_details``. :rtype: bool """ return self._tag == 'outdated_link_view_create_report_details' def is_outdated_link_view_report_failed_details(self): """ Check if the union tag is ``outdated_link_view_report_failed_details``. :rtype: bool """ return self._tag == 'outdated_link_view_report_failed_details' def is_paper_admin_export_start_details(self): """ Check if the union tag is ``paper_admin_export_start_details``. :rtype: bool """ return self._tag == 'paper_admin_export_start_details' def is_ransomware_alert_create_report_details(self): """ Check if the union tag is ``ransomware_alert_create_report_details``. :rtype: bool """ return self._tag == 'ransomware_alert_create_report_details' def is_ransomware_alert_create_report_failed_details(self): """ Check if the union tag is ``ransomware_alert_create_report_failed_details``. :rtype: bool """ return self._tag == 'ransomware_alert_create_report_failed_details' def is_smart_sync_create_admin_privilege_report_details(self): """ Check if the union tag is ``smart_sync_create_admin_privilege_report_details``. :rtype: bool """ return self._tag == 'smart_sync_create_admin_privilege_report_details' def is_team_activity_create_report_details(self): """ Check if the union tag is ``team_activity_create_report_details``. :rtype: bool """ return self._tag == 'team_activity_create_report_details' def is_team_activity_create_report_fail_details(self): """ Check if the union tag is ``team_activity_create_report_fail_details``. :rtype: bool """ return self._tag == 'team_activity_create_report_fail_details' def is_collection_share_details(self): """ Check if the union tag is ``collection_share_details``. :rtype: bool """ return self._tag == 'collection_share_details' def is_file_transfers_file_add_details(self): """ Check if the union tag is ``file_transfers_file_add_details``. :rtype: bool """ return self._tag == 'file_transfers_file_add_details' def is_file_transfers_transfer_delete_details(self): """ Check if the union tag is ``file_transfers_transfer_delete_details``. :rtype: bool """ return self._tag == 'file_transfers_transfer_delete_details' def is_file_transfers_transfer_download_details(self): """ Check if the union tag is ``file_transfers_transfer_download_details``. :rtype: bool """ return self._tag == 'file_transfers_transfer_download_details' def is_file_transfers_transfer_send_details(self): """ Check if the union tag is ``file_transfers_transfer_send_details``. :rtype: bool """ return self._tag == 'file_transfers_transfer_send_details' def is_file_transfers_transfer_view_details(self): """ Check if the union tag is ``file_transfers_transfer_view_details``. :rtype: bool """ return self._tag == 'file_transfers_transfer_view_details' def is_note_acl_invite_only_details(self): """ Check if the union tag is ``note_acl_invite_only_details``. :rtype: bool """ return self._tag == 'note_acl_invite_only_details' def is_note_acl_link_details(self): """ Check if the union tag is ``note_acl_link_details``. :rtype: bool """ return self._tag == 'note_acl_link_details' def is_note_acl_team_link_details(self): """ Check if the union tag is ``note_acl_team_link_details``. :rtype: bool """ return self._tag == 'note_acl_team_link_details' def is_note_shared_details(self): """ Check if the union tag is ``note_shared_details``. :rtype: bool """ return self._tag == 'note_shared_details' def is_note_share_receive_details(self): """ Check if the union tag is ``note_share_receive_details``. :rtype: bool """ return self._tag == 'note_share_receive_details' def is_open_note_shared_details(self): """ Check if the union tag is ``open_note_shared_details``. :rtype: bool """ return self._tag == 'open_note_shared_details' def is_replay_file_shared_link_created_details(self): """ Check if the union tag is ``replay_file_shared_link_created_details``. :rtype: bool """ return self._tag == 'replay_file_shared_link_created_details' def is_replay_file_shared_link_modified_details(self): """ Check if the union tag is ``replay_file_shared_link_modified_details``. :rtype: bool """ return self._tag == 'replay_file_shared_link_modified_details' def is_replay_project_team_add_details(self): """ Check if the union tag is ``replay_project_team_add_details``. :rtype: bool """ return self._tag == 'replay_project_team_add_details' def is_replay_project_team_delete_details(self): """ Check if the union tag is ``replay_project_team_delete_details``. :rtype: bool """ return self._tag == 'replay_project_team_delete_details' def is_sf_add_group_details(self): """ Check if the union tag is ``sf_add_group_details``. :rtype: bool """ return self._tag == 'sf_add_group_details' def is_sf_allow_non_members_to_view_shared_links_details(self): """ Check if the union tag is ``sf_allow_non_members_to_view_shared_links_details``. :rtype: bool """ return self._tag == 'sf_allow_non_members_to_view_shared_links_details' def is_sf_external_invite_warn_details(self): """ Check if the union tag is ``sf_external_invite_warn_details``. :rtype: bool """ return self._tag == 'sf_external_invite_warn_details' def is_sf_fb_invite_details(self): """ Check if the union tag is ``sf_fb_invite_details``. :rtype: bool """ return self._tag == 'sf_fb_invite_details' def is_sf_fb_invite_change_role_details(self): """ Check if the union tag is ``sf_fb_invite_change_role_details``. :rtype: bool """ return self._tag == 'sf_fb_invite_change_role_details' def is_sf_fb_uninvite_details(self): """ Check if the union tag is ``sf_fb_uninvite_details``. :rtype: bool """ return self._tag == 'sf_fb_uninvite_details' def is_sf_invite_group_details(self): """ Check if the union tag is ``sf_invite_group_details``. :rtype: bool """ return self._tag == 'sf_invite_group_details' def is_sf_team_grant_access_details(self): """ Check if the union tag is ``sf_team_grant_access_details``. :rtype: bool """ return self._tag == 'sf_team_grant_access_details' def is_sf_team_invite_details(self): """ Check if the union tag is ``sf_team_invite_details``. :rtype: bool """ return self._tag == 'sf_team_invite_details' def is_sf_team_invite_change_role_details(self): """ Check if the union tag is ``sf_team_invite_change_role_details``. :rtype: bool """ return self._tag == 'sf_team_invite_change_role_details' def is_sf_team_join_details(self): """ Check if the union tag is ``sf_team_join_details``. :rtype: bool """ return self._tag == 'sf_team_join_details' def is_sf_team_join_from_oob_link_details(self): """ Check if the union tag is ``sf_team_join_from_oob_link_details``. :rtype: bool """ return self._tag == 'sf_team_join_from_oob_link_details' def is_sf_team_uninvite_details(self): """ Check if the union tag is ``sf_team_uninvite_details``. :rtype: bool """ return self._tag == 'sf_team_uninvite_details' def is_shared_content_add_invitees_details(self): """ Check if the union tag is ``shared_content_add_invitees_details``. :rtype: bool """ return self._tag == 'shared_content_add_invitees_details' def is_shared_content_add_link_expiry_details(self): """ Check if the union tag is ``shared_content_add_link_expiry_details``. :rtype: bool """ return self._tag == 'shared_content_add_link_expiry_details' def is_shared_content_add_link_password_details(self): """ Check if the union tag is ``shared_content_add_link_password_details``. :rtype: bool """ return self._tag == 'shared_content_add_link_password_details' def is_shared_content_add_member_details(self): """ Check if the union tag is ``shared_content_add_member_details``. :rtype: bool """ return self._tag == 'shared_content_add_member_details' def is_shared_content_change_downloads_policy_details(self): """ Check if the union tag is ``shared_content_change_downloads_policy_details``. :rtype: bool """ return self._tag == 'shared_content_change_downloads_policy_details' def is_shared_content_change_invitee_role_details(self): """ Check if the union tag is ``shared_content_change_invitee_role_details``. :rtype: bool """ return self._tag == 'shared_content_change_invitee_role_details' def is_shared_content_change_link_audience_details(self): """ Check if the union tag is ``shared_content_change_link_audience_details``. :rtype: bool """ return self._tag == 'shared_content_change_link_audience_details' def is_shared_content_change_link_expiry_details(self): """ Check if the union tag is ``shared_content_change_link_expiry_details``. :rtype: bool """ return self._tag == 'shared_content_change_link_expiry_details' def is_shared_content_change_link_password_details(self): """ Check if the union tag is ``shared_content_change_link_password_details``. :rtype: bool """ return self._tag == 'shared_content_change_link_password_details' def is_shared_content_change_member_role_details(self): """ Check if the union tag is ``shared_content_change_member_role_details``. :rtype: bool """ return self._tag == 'shared_content_change_member_role_details' def is_shared_content_change_viewer_info_policy_details(self): """ Check if the union tag is ``shared_content_change_viewer_info_policy_details``. :rtype: bool """ return self._tag == 'shared_content_change_viewer_info_policy_details' def is_shared_content_claim_invitation_details(self): """ Check if the union tag is ``shared_content_claim_invitation_details``. :rtype: bool """ return self._tag == 'shared_content_claim_invitation_details' def is_shared_content_copy_details(self): """ Check if the union tag is ``shared_content_copy_details``. :rtype: bool """ return self._tag == 'shared_content_copy_details' def is_shared_content_download_details(self): """ Check if the union tag is ``shared_content_download_details``. :rtype: bool """ return self._tag == 'shared_content_download_details' def is_shared_content_relinquish_membership_details(self): """ Check if the union tag is ``shared_content_relinquish_membership_details``. :rtype: bool """ return self._tag == 'shared_content_relinquish_membership_details' def is_shared_content_remove_invitees_details(self): """ Check if the union tag is ``shared_content_remove_invitees_details``. :rtype: bool """ return self._tag == 'shared_content_remove_invitees_details' def is_shared_content_remove_link_expiry_details(self): """ Check if the union tag is ``shared_content_remove_link_expiry_details``. :rtype: bool """ return self._tag == 'shared_content_remove_link_expiry_details' def is_shared_content_remove_link_password_details(self): """ Check if the union tag is ``shared_content_remove_link_password_details``. :rtype: bool """ return self._tag == 'shared_content_remove_link_password_details' def is_shared_content_remove_member_details(self): """ Check if the union tag is ``shared_content_remove_member_details``. :rtype: bool """ return self._tag == 'shared_content_remove_member_details' def is_shared_content_request_access_details(self): """ Check if the union tag is ``shared_content_request_access_details``. :rtype: bool """ return self._tag == 'shared_content_request_access_details' def is_shared_content_restore_invitees_details(self): """ Check if the union tag is ``shared_content_restore_invitees_details``. :rtype: bool """ return self._tag == 'shared_content_restore_invitees_details' def is_shared_content_restore_member_details(self): """ Check if the union tag is ``shared_content_restore_member_details``. :rtype: bool """ return self._tag == 'shared_content_restore_member_details' def is_shared_content_unshare_details(self): """ Check if the union tag is ``shared_content_unshare_details``. :rtype: bool """ return self._tag == 'shared_content_unshare_details' def is_shared_content_view_details(self): """ Check if the union tag is ``shared_content_view_details``. :rtype: bool """ return self._tag == 'shared_content_view_details' def is_shared_folder_change_link_policy_details(self): """ Check if the union tag is ``shared_folder_change_link_policy_details``. :rtype: bool """ return self._tag == 'shared_folder_change_link_policy_details' def is_shared_folder_change_members_inheritance_policy_details(self): """ Check if the union tag is ``shared_folder_change_members_inheritance_policy_details``. :rtype: bool """ return self._tag == 'shared_folder_change_members_inheritance_policy_details' def is_shared_folder_change_members_management_policy_details(self): """ Check if the union tag is ``shared_folder_change_members_management_policy_details``. :rtype: bool """ return self._tag == 'shared_folder_change_members_management_policy_details' def is_shared_folder_change_members_policy_details(self): """ Check if the union tag is ``shared_folder_change_members_policy_details``. :rtype: bool """ return self._tag == 'shared_folder_change_members_policy_details' def is_shared_folder_create_details(self): """ Check if the union tag is ``shared_folder_create_details``. :rtype: bool """ return self._tag == 'shared_folder_create_details' def is_shared_folder_decline_invitation_details(self): """ Check if the union tag is ``shared_folder_decline_invitation_details``. :rtype: bool """ return self._tag == 'shared_folder_decline_invitation_details' def is_shared_folder_mount_details(self): """ Check if the union tag is ``shared_folder_mount_details``. :rtype: bool """ return self._tag == 'shared_folder_mount_details' def is_shared_folder_nest_details(self): """ Check if the union tag is ``shared_folder_nest_details``. :rtype: bool """ return self._tag == 'shared_folder_nest_details' def is_shared_folder_transfer_ownership_details(self): """ Check if the union tag is ``shared_folder_transfer_ownership_details``. :rtype: bool """ return self._tag == 'shared_folder_transfer_ownership_details' def is_shared_folder_unmount_details(self): """ Check if the union tag is ``shared_folder_unmount_details``. :rtype: bool """ return self._tag == 'shared_folder_unmount_details' def is_shared_link_add_expiry_details(self): """ Check if the union tag is ``shared_link_add_expiry_details``. :rtype: bool """ return self._tag == 'shared_link_add_expiry_details' def is_shared_link_change_expiry_details(self): """ Check if the union tag is ``shared_link_change_expiry_details``. :rtype: bool """ return self._tag == 'shared_link_change_expiry_details' def is_shared_link_change_visibility_details(self): """ Check if the union tag is ``shared_link_change_visibility_details``. :rtype: bool """ return self._tag == 'shared_link_change_visibility_details' def is_shared_link_copy_details(self): """ Check if the union tag is ``shared_link_copy_details``. :rtype: bool """ return self._tag == 'shared_link_copy_details' def is_shared_link_create_details(self): """ Check if the union tag is ``shared_link_create_details``. :rtype: bool """ return self._tag == 'shared_link_create_details' def is_shared_link_disable_details(self): """ Check if the union tag is ``shared_link_disable_details``. :rtype: bool """ return self._tag == 'shared_link_disable_details' def is_shared_link_download_details(self): """ Check if the union tag is ``shared_link_download_details``. :rtype: bool """ return self._tag == 'shared_link_download_details' def is_shared_link_remove_expiry_details(self): """ Check if the union tag is ``shared_link_remove_expiry_details``. :rtype: bool """ return self._tag == 'shared_link_remove_expiry_details' def is_shared_link_settings_add_expiration_details(self): """ Check if the union tag is ``shared_link_settings_add_expiration_details``. :rtype: bool """ return self._tag == 'shared_link_settings_add_expiration_details' def is_shared_link_settings_add_password_details(self): """ Check if the union tag is ``shared_link_settings_add_password_details``. :rtype: bool """ return self._tag == 'shared_link_settings_add_password_details' def is_shared_link_settings_allow_download_disabled_details(self): """ Check if the union tag is ``shared_link_settings_allow_download_disabled_details``. :rtype: bool """ return self._tag == 'shared_link_settings_allow_download_disabled_details' def is_shared_link_settings_allow_download_enabled_details(self): """ Check if the union tag is ``shared_link_settings_allow_download_enabled_details``. :rtype: bool """ return self._tag == 'shared_link_settings_allow_download_enabled_details' def is_shared_link_settings_change_audience_details(self): """ Check if the union tag is ``shared_link_settings_change_audience_details``. :rtype: bool """ return self._tag == 'shared_link_settings_change_audience_details' def is_shared_link_settings_change_expiration_details(self): """ Check if the union tag is ``shared_link_settings_change_expiration_details``. :rtype: bool """ return self._tag == 'shared_link_settings_change_expiration_details' def is_shared_link_settings_change_password_details(self): """ Check if the union tag is ``shared_link_settings_change_password_details``. :rtype: bool """ return self._tag == 'shared_link_settings_change_password_details' def is_shared_link_settings_remove_expiration_details(self): """ Check if the union tag is ``shared_link_settings_remove_expiration_details``. :rtype: bool """ return self._tag == 'shared_link_settings_remove_expiration_details' def is_shared_link_settings_remove_password_details(self): """ Check if the union tag is ``shared_link_settings_remove_password_details``. :rtype: bool """ return self._tag == 'shared_link_settings_remove_password_details' def is_shared_link_share_details(self): """ Check if the union tag is ``shared_link_share_details``. :rtype: bool """ return self._tag == 'shared_link_share_details' def is_shared_link_view_details(self): """ Check if the union tag is ``shared_link_view_details``. :rtype: bool """ return self._tag == 'shared_link_view_details' def is_shared_note_opened_details(self): """ Check if the union tag is ``shared_note_opened_details``. :rtype: bool """ return self._tag == 'shared_note_opened_details' def is_shmodel_disable_downloads_details(self): """ Check if the union tag is ``shmodel_disable_downloads_details``. :rtype: bool """ return self._tag == 'shmodel_disable_downloads_details' def is_shmodel_enable_downloads_details(self): """ Check if the union tag is ``shmodel_enable_downloads_details``. :rtype: bool """ return self._tag == 'shmodel_enable_downloads_details' def is_shmodel_group_share_details(self): """ Check if the union tag is ``shmodel_group_share_details``. :rtype: bool """ return self._tag == 'shmodel_group_share_details' def is_showcase_access_granted_details(self): """ Check if the union tag is ``showcase_access_granted_details``. :rtype: bool """ return self._tag == 'showcase_access_granted_details' def is_showcase_add_member_details(self): """ Check if the union tag is ``showcase_add_member_details``. :rtype: bool """ return self._tag == 'showcase_add_member_details' def is_showcase_archived_details(self): """ Check if the union tag is ``showcase_archived_details``. :rtype: bool """ return self._tag == 'showcase_archived_details' def is_showcase_created_details(self): """ Check if the union tag is ``showcase_created_details``. :rtype: bool """ return self._tag == 'showcase_created_details' def is_showcase_delete_comment_details(self): """ Check if the union tag is ``showcase_delete_comment_details``. :rtype: bool """ return self._tag == 'showcase_delete_comment_details' def is_showcase_edited_details(self): """ Check if the union tag is ``showcase_edited_details``. :rtype: bool """ return self._tag == 'showcase_edited_details' def is_showcase_edit_comment_details(self): """ Check if the union tag is ``showcase_edit_comment_details``. :rtype: bool """ return self._tag == 'showcase_edit_comment_details' def is_showcase_file_added_details(self): """ Check if the union tag is ``showcase_file_added_details``. :rtype: bool """ return self._tag == 'showcase_file_added_details' def is_showcase_file_download_details(self): """ Check if the union tag is ``showcase_file_download_details``. :rtype: bool """ return self._tag == 'showcase_file_download_details' def is_showcase_file_removed_details(self): """ Check if the union tag is ``showcase_file_removed_details``. :rtype: bool """ return self._tag == 'showcase_file_removed_details' def is_showcase_file_view_details(self): """ Check if the union tag is ``showcase_file_view_details``. :rtype: bool """ return self._tag == 'showcase_file_view_details' def is_showcase_permanently_deleted_details(self): """ Check if the union tag is ``showcase_permanently_deleted_details``. :rtype: bool """ return self._tag == 'showcase_permanently_deleted_details' def is_showcase_post_comment_details(self): """ Check if the union tag is ``showcase_post_comment_details``. :rtype: bool """ return self._tag == 'showcase_post_comment_details' def is_showcase_remove_member_details(self): """ Check if the union tag is ``showcase_remove_member_details``. :rtype: bool """ return self._tag == 'showcase_remove_member_details' def is_showcase_renamed_details(self): """ Check if the union tag is ``showcase_renamed_details``. :rtype: bool """ return self._tag == 'showcase_renamed_details' def is_showcase_request_access_details(self): """ Check if the union tag is ``showcase_request_access_details``. :rtype: bool """ return self._tag == 'showcase_request_access_details' def is_showcase_resolve_comment_details(self): """ Check if the union tag is ``showcase_resolve_comment_details``. :rtype: bool """ return self._tag == 'showcase_resolve_comment_details' def is_showcase_restored_details(self): """ Check if the union tag is ``showcase_restored_details``. :rtype: bool """ return self._tag == 'showcase_restored_details' def is_showcase_trashed_details(self): """ Check if the union tag is ``showcase_trashed_details``. :rtype: bool """ return self._tag == 'showcase_trashed_details' def is_showcase_trashed_deprecated_details(self): """ Check if the union tag is ``showcase_trashed_deprecated_details``. :rtype: bool """ return self._tag == 'showcase_trashed_deprecated_details' def is_showcase_unresolve_comment_details(self): """ Check if the union tag is ``showcase_unresolve_comment_details``. :rtype: bool """ return self._tag == 'showcase_unresolve_comment_details' def is_showcase_untrashed_details(self): """ Check if the union tag is ``showcase_untrashed_details``. :rtype: bool """ return self._tag == 'showcase_untrashed_details' def is_showcase_untrashed_deprecated_details(self): """ Check if the union tag is ``showcase_untrashed_deprecated_details``. :rtype: bool """ return self._tag == 'showcase_untrashed_deprecated_details' def is_showcase_view_details(self): """ Check if the union tag is ``showcase_view_details``. :rtype: bool """ return self._tag == 'showcase_view_details' def is_sso_add_cert_details(self): """ Check if the union tag is ``sso_add_cert_details``. :rtype: bool """ return self._tag == 'sso_add_cert_details' def is_sso_add_login_url_details(self): """ Check if the union tag is ``sso_add_login_url_details``. :rtype: bool """ return self._tag == 'sso_add_login_url_details' def is_sso_add_logout_url_details(self): """ Check if the union tag is ``sso_add_logout_url_details``. :rtype: bool """ return self._tag == 'sso_add_logout_url_details' def is_sso_change_cert_details(self): """ Check if the union tag is ``sso_change_cert_details``. :rtype: bool """ return self._tag == 'sso_change_cert_details' def is_sso_change_login_url_details(self): """ Check if the union tag is ``sso_change_login_url_details``. :rtype: bool """ return self._tag == 'sso_change_login_url_details' def is_sso_change_logout_url_details(self): """ Check if the union tag is ``sso_change_logout_url_details``. :rtype: bool """ return self._tag == 'sso_change_logout_url_details' def is_sso_change_saml_identity_mode_details(self): """ Check if the union tag is ``sso_change_saml_identity_mode_details``. :rtype: bool """ return self._tag == 'sso_change_saml_identity_mode_details' def is_sso_remove_cert_details(self): """ Check if the union tag is ``sso_remove_cert_details``. :rtype: bool """ return self._tag == 'sso_remove_cert_details' def is_sso_remove_login_url_details(self): """ Check if the union tag is ``sso_remove_login_url_details``. :rtype: bool """ return self._tag == 'sso_remove_login_url_details' def is_sso_remove_logout_url_details(self): """ Check if the union tag is ``sso_remove_logout_url_details``. :rtype: bool """ return self._tag == 'sso_remove_logout_url_details' def is_team_folder_change_status_details(self): """ Check if the union tag is ``team_folder_change_status_details``. :rtype: bool """ return self._tag == 'team_folder_change_status_details' def is_team_folder_create_details(self): """ Check if the union tag is ``team_folder_create_details``. :rtype: bool """ return self._tag == 'team_folder_create_details' def is_team_folder_downgrade_details(self): """ Check if the union tag is ``team_folder_downgrade_details``. :rtype: bool """ return self._tag == 'team_folder_downgrade_details' def is_team_folder_permanently_delete_details(self): """ Check if the union tag is ``team_folder_permanently_delete_details``. :rtype: bool """ return self._tag == 'team_folder_permanently_delete_details' def is_team_folder_rename_details(self): """ Check if the union tag is ``team_folder_rename_details``. :rtype: bool """ return self._tag == 'team_folder_rename_details' def is_team_selective_sync_settings_changed_details(self): """ Check if the union tag is ``team_selective_sync_settings_changed_details``. :rtype: bool """ return self._tag == 'team_selective_sync_settings_changed_details' def is_account_capture_change_policy_details(self): """ Check if the union tag is ``account_capture_change_policy_details``. :rtype: bool """ return self._tag == 'account_capture_change_policy_details' def is_admin_email_reminders_changed_details(self): """ Check if the union tag is ``admin_email_reminders_changed_details``. :rtype: bool """ return self._tag == 'admin_email_reminders_changed_details' def is_allow_download_disabled_details(self): """ Check if the union tag is ``allow_download_disabled_details``. :rtype: bool """ return self._tag == 'allow_download_disabled_details' def is_allow_download_enabled_details(self): """ Check if the union tag is ``allow_download_enabled_details``. :rtype: bool """ return self._tag == 'allow_download_enabled_details' def is_app_permissions_changed_details(self): """ Check if the union tag is ``app_permissions_changed_details``. :rtype: bool """ return self._tag == 'app_permissions_changed_details' def is_camera_uploads_policy_changed_details(self): """ Check if the union tag is ``camera_uploads_policy_changed_details``. :rtype: bool """ return self._tag == 'camera_uploads_policy_changed_details' def is_capture_transcript_policy_changed_details(self): """ Check if the union tag is ``capture_transcript_policy_changed_details``. :rtype: bool """ return self._tag == 'capture_transcript_policy_changed_details' def is_classification_change_policy_details(self): """ Check if the union tag is ``classification_change_policy_details``. :rtype: bool """ return self._tag == 'classification_change_policy_details' def is_computer_backup_policy_changed_details(self): """ Check if the union tag is ``computer_backup_policy_changed_details``. :rtype: bool """ return self._tag == 'computer_backup_policy_changed_details' def is_content_administration_policy_changed_details(self): """ Check if the union tag is ``content_administration_policy_changed_details``. :rtype: bool """ return self._tag == 'content_administration_policy_changed_details' def is_data_placement_restriction_change_policy_details(self): """ Check if the union tag is ``data_placement_restriction_change_policy_details``. :rtype: bool """ return self._tag == 'data_placement_restriction_change_policy_details' def is_data_placement_restriction_satisfy_policy_details(self): """ Check if the union tag is ``data_placement_restriction_satisfy_policy_details``. :rtype: bool """ return self._tag == 'data_placement_restriction_satisfy_policy_details' def is_device_approvals_add_exception_details(self): """ Check if the union tag is ``device_approvals_add_exception_details``. :rtype: bool """ return self._tag == 'device_approvals_add_exception_details' def is_device_approvals_change_desktop_policy_details(self): """ Check if the union tag is ``device_approvals_change_desktop_policy_details``. :rtype: bool """ return self._tag == 'device_approvals_change_desktop_policy_details' def is_device_approvals_change_mobile_policy_details(self): """ Check if the union tag is ``device_approvals_change_mobile_policy_details``. :rtype: bool """ return self._tag == 'device_approvals_change_mobile_policy_details' def is_device_approvals_change_overage_action_details(self): """ Check if the union tag is ``device_approvals_change_overage_action_details``. :rtype: bool """ return self._tag == 'device_approvals_change_overage_action_details' def is_device_approvals_change_unlink_action_details(self): """ Check if the union tag is ``device_approvals_change_unlink_action_details``. :rtype: bool """ return self._tag == 'device_approvals_change_unlink_action_details' def is_device_approvals_remove_exception_details(self): """ Check if the union tag is ``device_approvals_remove_exception_details``. :rtype: bool """ return self._tag == 'device_approvals_remove_exception_details' def is_directory_restrictions_add_members_details(self): """ Check if the union tag is ``directory_restrictions_add_members_details``. :rtype: bool """ return self._tag == 'directory_restrictions_add_members_details' def is_directory_restrictions_remove_members_details(self): """ Check if the union tag is ``directory_restrictions_remove_members_details``. :rtype: bool """ return self._tag == 'directory_restrictions_remove_members_details' def is_dropbox_passwords_policy_changed_details(self): """ Check if the union tag is ``dropbox_passwords_policy_changed_details``. :rtype: bool """ return self._tag == 'dropbox_passwords_policy_changed_details' def is_email_ingest_policy_changed_details(self): """ Check if the union tag is ``email_ingest_policy_changed_details``. :rtype: bool """ return self._tag == 'email_ingest_policy_changed_details' def is_emm_add_exception_details(self): """ Check if the union tag is ``emm_add_exception_details``. :rtype: bool """ return self._tag == 'emm_add_exception_details' def is_emm_change_policy_details(self): """ Check if the union tag is ``emm_change_policy_details``. :rtype: bool """ return self._tag == 'emm_change_policy_details' def is_emm_remove_exception_details(self): """ Check if the union tag is ``emm_remove_exception_details``. :rtype: bool """ return self._tag == 'emm_remove_exception_details' def is_extended_version_history_change_policy_details(self): """ Check if the union tag is ``extended_version_history_change_policy_details``. :rtype: bool """ return self._tag == 'extended_version_history_change_policy_details' def is_external_drive_backup_policy_changed_details(self): """ Check if the union tag is ``external_drive_backup_policy_changed_details``. :rtype: bool """ return self._tag == 'external_drive_backup_policy_changed_details' def is_file_comments_change_policy_details(self): """ Check if the union tag is ``file_comments_change_policy_details``. :rtype: bool """ return self._tag == 'file_comments_change_policy_details' def is_file_locking_policy_changed_details(self): """ Check if the union tag is ``file_locking_policy_changed_details``. :rtype: bool """ return self._tag == 'file_locking_policy_changed_details' def is_file_provider_migration_policy_changed_details(self): """ Check if the union tag is ``file_provider_migration_policy_changed_details``. :rtype: bool """ return self._tag == 'file_provider_migration_policy_changed_details' def is_file_requests_change_policy_details(self): """ Check if the union tag is ``file_requests_change_policy_details``. :rtype: bool """ return self._tag == 'file_requests_change_policy_details' def is_file_requests_emails_enabled_details(self): """ Check if the union tag is ``file_requests_emails_enabled_details``. :rtype: bool """ return self._tag == 'file_requests_emails_enabled_details' def is_file_requests_emails_restricted_to_team_only_details(self): """ Check if the union tag is ``file_requests_emails_restricted_to_team_only_details``. :rtype: bool """ return self._tag == 'file_requests_emails_restricted_to_team_only_details' def is_file_transfers_policy_changed_details(self): """ Check if the union tag is ``file_transfers_policy_changed_details``. :rtype: bool """ return self._tag == 'file_transfers_policy_changed_details' def is_folder_link_restriction_policy_changed_details(self): """ Check if the union tag is ``folder_link_restriction_policy_changed_details``. :rtype: bool """ return self._tag == 'folder_link_restriction_policy_changed_details' def is_google_sso_change_policy_details(self): """ Check if the union tag is ``google_sso_change_policy_details``. :rtype: bool """ return self._tag == 'google_sso_change_policy_details' def is_group_user_management_change_policy_details(self): """ Check if the union tag is ``group_user_management_change_policy_details``. :rtype: bool """ return self._tag == 'group_user_management_change_policy_details' def is_integration_policy_changed_details(self): """ Check if the union tag is ``integration_policy_changed_details``. :rtype: bool """ return self._tag == 'integration_policy_changed_details' def is_invite_acceptance_email_policy_changed_details(self): """ Check if the union tag is ``invite_acceptance_email_policy_changed_details``. :rtype: bool """ return self._tag == 'invite_acceptance_email_policy_changed_details' def is_member_requests_change_policy_details(self): """ Check if the union tag is ``member_requests_change_policy_details``. :rtype: bool """ return self._tag == 'member_requests_change_policy_details' def is_member_send_invite_policy_changed_details(self): """ Check if the union tag is ``member_send_invite_policy_changed_details``. :rtype: bool """ return self._tag == 'member_send_invite_policy_changed_details' def is_member_space_limits_add_exception_details(self): """ Check if the union tag is ``member_space_limits_add_exception_details``. :rtype: bool """ return self._tag == 'member_space_limits_add_exception_details' def is_member_space_limits_change_caps_type_policy_details(self): """ Check if the union tag is ``member_space_limits_change_caps_type_policy_details``. :rtype: bool """ return self._tag == 'member_space_limits_change_caps_type_policy_details' def is_member_space_limits_change_policy_details(self): """ Check if the union tag is ``member_space_limits_change_policy_details``. :rtype: bool """ return self._tag == 'member_space_limits_change_policy_details' def is_member_space_limits_remove_exception_details(self): """ Check if the union tag is ``member_space_limits_remove_exception_details``. :rtype: bool """ return self._tag == 'member_space_limits_remove_exception_details' def is_member_suggestions_change_policy_details(self): """ Check if the union tag is ``member_suggestions_change_policy_details``. :rtype: bool """ return self._tag == 'member_suggestions_change_policy_details' def is_microsoft_office_addin_change_policy_details(self): """ Check if the union tag is ``microsoft_office_addin_change_policy_details``. :rtype: bool """ return self._tag == 'microsoft_office_addin_change_policy_details' def is_network_control_change_policy_details(self): """ Check if the union tag is ``network_control_change_policy_details``. :rtype: bool """ return self._tag == 'network_control_change_policy_details' def is_paper_change_deployment_policy_details(self): """ Check if the union tag is ``paper_change_deployment_policy_details``. :rtype: bool """ return self._tag == 'paper_change_deployment_policy_details' def is_paper_change_member_link_policy_details(self): """ Check if the union tag is ``paper_change_member_link_policy_details``. :rtype: bool """ return self._tag == 'paper_change_member_link_policy_details' def is_paper_change_member_policy_details(self): """ Check if the union tag is ``paper_change_member_policy_details``. :rtype: bool """ return self._tag == 'paper_change_member_policy_details' def is_paper_change_policy_details(self): """ Check if the union tag is ``paper_change_policy_details``. :rtype: bool """ return self._tag == 'paper_change_policy_details' def is_paper_default_folder_policy_changed_details(self): """ Check if the union tag is ``paper_default_folder_policy_changed_details``. :rtype: bool """ return self._tag == 'paper_default_folder_policy_changed_details' def is_paper_desktop_policy_changed_details(self): """ Check if the union tag is ``paper_desktop_policy_changed_details``. :rtype: bool """ return self._tag == 'paper_desktop_policy_changed_details' def is_paper_enabled_users_group_addition_details(self): """ Check if the union tag is ``paper_enabled_users_group_addition_details``. :rtype: bool """ return self._tag == 'paper_enabled_users_group_addition_details' def is_paper_enabled_users_group_removal_details(self): """ Check if the union tag is ``paper_enabled_users_group_removal_details``. :rtype: bool """ return self._tag == 'paper_enabled_users_group_removal_details' def is_password_strength_requirements_change_policy_details(self): """ Check if the union tag is ``password_strength_requirements_change_policy_details``. :rtype: bool """ return self._tag == 'password_strength_requirements_change_policy_details' def is_permanent_delete_change_policy_details(self): """ Check if the union tag is ``permanent_delete_change_policy_details``. :rtype: bool """ return self._tag == 'permanent_delete_change_policy_details' def is_reseller_support_change_policy_details(self): """ Check if the union tag is ``reseller_support_change_policy_details``. :rtype: bool """ return self._tag == 'reseller_support_change_policy_details' def is_rewind_policy_changed_details(self): """ Check if the union tag is ``rewind_policy_changed_details``. :rtype: bool """ return self._tag == 'rewind_policy_changed_details' def is_send_for_signature_policy_changed_details(self): """ Check if the union tag is ``send_for_signature_policy_changed_details``. :rtype: bool """ return self._tag == 'send_for_signature_policy_changed_details' def is_sharing_change_folder_join_policy_details(self): """ Check if the union tag is ``sharing_change_folder_join_policy_details``. :rtype: bool """ return self._tag == 'sharing_change_folder_join_policy_details' def is_sharing_change_link_allow_change_expiration_policy_details(self): """ Check if the union tag is ``sharing_change_link_allow_change_expiration_policy_details``. :rtype: bool """ return self._tag == 'sharing_change_link_allow_change_expiration_policy_details' def is_sharing_change_link_default_expiration_policy_details(self): """ Check if the union tag is ``sharing_change_link_default_expiration_policy_details``. :rtype: bool """ return self._tag == 'sharing_change_link_default_expiration_policy_details' def is_sharing_change_link_enforce_password_policy_details(self): """ Check if the union tag is ``sharing_change_link_enforce_password_policy_details``. :rtype: bool """ return self._tag == 'sharing_change_link_enforce_password_policy_details' def is_sharing_change_link_policy_details(self): """ Check if the union tag is ``sharing_change_link_policy_details``. :rtype: bool """ return self._tag == 'sharing_change_link_policy_details' def is_sharing_change_member_policy_details(self): """ Check if the union tag is ``sharing_change_member_policy_details``. :rtype: bool """ return self._tag == 'sharing_change_member_policy_details' def is_showcase_change_download_policy_details(self): """ Check if the union tag is ``showcase_change_download_policy_details``. :rtype: bool """ return self._tag == 'showcase_change_download_policy_details' def is_showcase_change_enabled_policy_details(self): """ Check if the union tag is ``showcase_change_enabled_policy_details``. :rtype: bool """ return self._tag == 'showcase_change_enabled_policy_details' def is_showcase_change_external_sharing_policy_details(self): """ Check if the union tag is ``showcase_change_external_sharing_policy_details``. :rtype: bool """ return self._tag == 'showcase_change_external_sharing_policy_details' def is_smarter_smart_sync_policy_changed_details(self): """ Check if the union tag is ``smarter_smart_sync_policy_changed_details``. :rtype: bool """ return self._tag == 'smarter_smart_sync_policy_changed_details' def is_smart_sync_change_policy_details(self): """ Check if the union tag is ``smart_sync_change_policy_details``. :rtype: bool """ return self._tag == 'smart_sync_change_policy_details' def is_smart_sync_not_opt_out_details(self): """ Check if the union tag is ``smart_sync_not_opt_out_details``. :rtype: bool """ return self._tag == 'smart_sync_not_opt_out_details' def is_smart_sync_opt_out_details(self): """ Check if the union tag is ``smart_sync_opt_out_details``. :rtype: bool """ return self._tag == 'smart_sync_opt_out_details' def is_sso_change_policy_details(self): """ Check if the union tag is ``sso_change_policy_details``. :rtype: bool """ return self._tag == 'sso_change_policy_details' def is_team_branding_policy_changed_details(self): """ Check if the union tag is ``team_branding_policy_changed_details``. :rtype: bool """ return self._tag == 'team_branding_policy_changed_details' def is_team_extensions_policy_changed_details(self): """ Check if the union tag is ``team_extensions_policy_changed_details``. :rtype: bool """ return self._tag == 'team_extensions_policy_changed_details' def is_team_selective_sync_policy_changed_details(self): """ Check if the union tag is ``team_selective_sync_policy_changed_details``. :rtype: bool """ return self._tag == 'team_selective_sync_policy_changed_details' def is_team_sharing_whitelist_subjects_changed_details(self): """ Check if the union tag is ``team_sharing_whitelist_subjects_changed_details``. :rtype: bool """ return self._tag == 'team_sharing_whitelist_subjects_changed_details' def is_tfa_add_exception_details(self): """ Check if the union tag is ``tfa_add_exception_details``. :rtype: bool """ return self._tag == 'tfa_add_exception_details' def is_tfa_change_policy_details(self): """ Check if the union tag is ``tfa_change_policy_details``. :rtype: bool """ return self._tag == 'tfa_change_policy_details' def is_tfa_remove_exception_details(self): """ Check if the union tag is ``tfa_remove_exception_details``. :rtype: bool """ return self._tag == 'tfa_remove_exception_details' def is_two_account_change_policy_details(self): """ Check if the union tag is ``two_account_change_policy_details``. :rtype: bool """ return self._tag == 'two_account_change_policy_details' def is_viewer_info_policy_changed_details(self): """ Check if the union tag is ``viewer_info_policy_changed_details``. :rtype: bool """ return self._tag == 'viewer_info_policy_changed_details' def is_watermarking_policy_changed_details(self): """ Check if the union tag is ``watermarking_policy_changed_details``. :rtype: bool """ return self._tag == 'watermarking_policy_changed_details' def is_web_sessions_change_active_session_limit_details(self): """ Check if the union tag is ``web_sessions_change_active_session_limit_details``. :rtype: bool """ return self._tag == 'web_sessions_change_active_session_limit_details' def is_web_sessions_change_fixed_length_policy_details(self): """ Check if the union tag is ``web_sessions_change_fixed_length_policy_details``. :rtype: bool """ return self._tag == 'web_sessions_change_fixed_length_policy_details' def is_web_sessions_change_idle_length_policy_details(self): """ Check if the union tag is ``web_sessions_change_idle_length_policy_details``. :rtype: bool """ return self._tag == 'web_sessions_change_idle_length_policy_details' def is_data_residency_migration_request_successful_details(self): """ Check if the union tag is ``data_residency_migration_request_successful_details``. :rtype: bool """ return self._tag == 'data_residency_migration_request_successful_details' def is_data_residency_migration_request_unsuccessful_details(self): """ Check if the union tag is ``data_residency_migration_request_unsuccessful_details``. :rtype: bool """ return self._tag == 'data_residency_migration_request_unsuccessful_details' def is_team_merge_from_details(self): """ Check if the union tag is ``team_merge_from_details``. :rtype: bool """ return self._tag == 'team_merge_from_details' def is_team_merge_to_details(self): """ Check if the union tag is ``team_merge_to_details``. :rtype: bool """ return self._tag == 'team_merge_to_details' def is_team_profile_add_background_details(self): """ Check if the union tag is ``team_profile_add_background_details``. :rtype: bool """ return self._tag == 'team_profile_add_background_details' def is_team_profile_add_logo_details(self): """ Check if the union tag is ``team_profile_add_logo_details``. :rtype: bool """ return self._tag == 'team_profile_add_logo_details' def is_team_profile_change_background_details(self): """ Check if the union tag is ``team_profile_change_background_details``. :rtype: bool """ return self._tag == 'team_profile_change_background_details' def is_team_profile_change_default_language_details(self): """ Check if the union tag is ``team_profile_change_default_language_details``. :rtype: bool """ return self._tag == 'team_profile_change_default_language_details' def is_team_profile_change_logo_details(self): """ Check if the union tag is ``team_profile_change_logo_details``. :rtype: bool """ return self._tag == 'team_profile_change_logo_details' def is_team_profile_change_name_details(self): """ Check if the union tag is ``team_profile_change_name_details``. :rtype: bool """ return self._tag == 'team_profile_change_name_details' def is_team_profile_remove_background_details(self): """ Check if the union tag is ``team_profile_remove_background_details``. :rtype: bool """ return self._tag == 'team_profile_remove_background_details' def is_team_profile_remove_logo_details(self): """ Check if the union tag is ``team_profile_remove_logo_details``. :rtype: bool """ return self._tag == 'team_profile_remove_logo_details' def is_tfa_add_backup_phone_details(self): """ Check if the union tag is ``tfa_add_backup_phone_details``. :rtype: bool """ return self._tag == 'tfa_add_backup_phone_details' def is_tfa_add_security_key_details(self): """ Check if the union tag is ``tfa_add_security_key_details``. :rtype: bool """ return self._tag == 'tfa_add_security_key_details' def is_tfa_change_backup_phone_details(self): """ Check if the union tag is ``tfa_change_backup_phone_details``. :rtype: bool """ return self._tag == 'tfa_change_backup_phone_details' def is_tfa_change_status_details(self): """ Check if the union tag is ``tfa_change_status_details``. :rtype: bool """ return self._tag == 'tfa_change_status_details' def is_tfa_remove_backup_phone_details(self): """ Check if the union tag is ``tfa_remove_backup_phone_details``. :rtype: bool """ return self._tag == 'tfa_remove_backup_phone_details' def is_tfa_remove_security_key_details(self): """ Check if the union tag is ``tfa_remove_security_key_details``. :rtype: bool """ return self._tag == 'tfa_remove_security_key_details' def is_tfa_reset_details(self): """ Check if the union tag is ``tfa_reset_details``. :rtype: bool """ return self._tag == 'tfa_reset_details' def is_changed_enterprise_admin_role_details(self): """ Check if the union tag is ``changed_enterprise_admin_role_details``. :rtype: bool """ return self._tag == 'changed_enterprise_admin_role_details' def is_changed_enterprise_connected_team_status_details(self): """ Check if the union tag is ``changed_enterprise_connected_team_status_details``. :rtype: bool """ return self._tag == 'changed_enterprise_connected_team_status_details' def is_ended_enterprise_admin_session_details(self): """ Check if the union tag is ``ended_enterprise_admin_session_details``. :rtype: bool """ return self._tag == 'ended_enterprise_admin_session_details' def is_ended_enterprise_admin_session_deprecated_details(self): """ Check if the union tag is ``ended_enterprise_admin_session_deprecated_details``. :rtype: bool """ return self._tag == 'ended_enterprise_admin_session_deprecated_details' def is_enterprise_settings_locking_details(self): """ Check if the union tag is ``enterprise_settings_locking_details``. :rtype: bool """ return self._tag == 'enterprise_settings_locking_details' def is_guest_admin_change_status_details(self): """ Check if the union tag is ``guest_admin_change_status_details``. :rtype: bool """ return self._tag == 'guest_admin_change_status_details' def is_started_enterprise_admin_session_details(self): """ Check if the union tag is ``started_enterprise_admin_session_details``. :rtype: bool """ return self._tag == 'started_enterprise_admin_session_details' def is_team_merge_request_accepted_details(self): """ Check if the union tag is ``team_merge_request_accepted_details``. :rtype: bool """ return self._tag == 'team_merge_request_accepted_details' def is_team_merge_request_accepted_shown_to_primary_team_details(self): """ Check if the union tag is ``team_merge_request_accepted_shown_to_primary_team_details``. :rtype: bool """ return self._tag == 'team_merge_request_accepted_shown_to_primary_team_details' def is_team_merge_request_accepted_shown_to_secondary_team_details(self): """ Check if the union tag is ``team_merge_request_accepted_shown_to_secondary_team_details``. :rtype: bool """ return self._tag == 'team_merge_request_accepted_shown_to_secondary_team_details' def is_team_merge_request_auto_canceled_details(self): """ Check if the union tag is ``team_merge_request_auto_canceled_details``. :rtype: bool """ return self._tag == 'team_merge_request_auto_canceled_details' def is_team_merge_request_canceled_details(self): """ Check if the union tag is ``team_merge_request_canceled_details``. :rtype: bool """ return self._tag == 'team_merge_request_canceled_details' def is_team_merge_request_canceled_shown_to_primary_team_details(self): """ Check if the union tag is ``team_merge_request_canceled_shown_to_primary_team_details``. :rtype: bool """ return self._tag == 'team_merge_request_canceled_shown_to_primary_team_details' def is_team_merge_request_canceled_shown_to_secondary_team_details(self): """ Check if the union tag is ``team_merge_request_canceled_shown_to_secondary_team_details``. :rtype: bool """ return self._tag == 'team_merge_request_canceled_shown_to_secondary_team_details' def is_team_merge_request_expired_details(self): """ Check if the union tag is ``team_merge_request_expired_details``. :rtype: bool """ return self._tag == 'team_merge_request_expired_details' def is_team_merge_request_expired_shown_to_primary_team_details(self): """ Check if the union tag is ``team_merge_request_expired_shown_to_primary_team_details``. :rtype: bool """ return self._tag == 'team_merge_request_expired_shown_to_primary_team_details' def is_team_merge_request_expired_shown_to_secondary_team_details(self): """ Check if the union tag is ``team_merge_request_expired_shown_to_secondary_team_details``. :rtype: bool """ return self._tag == 'team_merge_request_expired_shown_to_secondary_team_details' def is_team_merge_request_rejected_shown_to_primary_team_details(self): """ Check if the union tag is ``team_merge_request_rejected_shown_to_primary_team_details``. :rtype: bool """ return self._tag == 'team_merge_request_rejected_shown_to_primary_team_details' def is_team_merge_request_rejected_shown_to_secondary_team_details(self): """ Check if the union tag is ``team_merge_request_rejected_shown_to_secondary_team_details``. :rtype: bool """ return self._tag == 'team_merge_request_rejected_shown_to_secondary_team_details' def is_team_merge_request_reminder_details(self): """ Check if the union tag is ``team_merge_request_reminder_details``. :rtype: bool """ return self._tag == 'team_merge_request_reminder_details' def is_team_merge_request_reminder_shown_to_primary_team_details(self): """ Check if the union tag is ``team_merge_request_reminder_shown_to_primary_team_details``. :rtype: bool """ return self._tag == 'team_merge_request_reminder_shown_to_primary_team_details' def is_team_merge_request_reminder_shown_to_secondary_team_details(self): """ Check if the union tag is ``team_merge_request_reminder_shown_to_secondary_team_details``. :rtype: bool """ return self._tag == 'team_merge_request_reminder_shown_to_secondary_team_details' def is_team_merge_request_revoked_details(self): """ Check if the union tag is ``team_merge_request_revoked_details``. :rtype: bool """ return self._tag == 'team_merge_request_revoked_details' def is_team_merge_request_sent_shown_to_primary_team_details(self): """ Check if the union tag is ``team_merge_request_sent_shown_to_primary_team_details``. :rtype: bool """ return self._tag == 'team_merge_request_sent_shown_to_primary_team_details' def is_team_merge_request_sent_shown_to_secondary_team_details(self): """ Check if the union tag is ``team_merge_request_sent_shown_to_secondary_team_details``. :rtype: bool """ return self._tag == 'team_merge_request_sent_shown_to_secondary_team_details' def is_missing_details(self): """ Check if the union tag is ``missing_details``. :rtype: bool """ return self._tag == 'missing_details' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_admin_alerting_alert_state_changed_details(self): """ Only call this if :meth:`is_admin_alerting_alert_state_changed_details` is true. :rtype: AdminAlertingAlertStateChangedDetails """ if not self.is_admin_alerting_alert_state_changed_details(): raise AttributeError("tag 'admin_alerting_alert_state_changed_details' not set") return self._value def get_admin_alerting_changed_alert_config_details(self): """ Only call this if :meth:`is_admin_alerting_changed_alert_config_details` is true. :rtype: AdminAlertingChangedAlertConfigDetails """ if not self.is_admin_alerting_changed_alert_config_details(): raise AttributeError("tag 'admin_alerting_changed_alert_config_details' not set") return self._value def get_admin_alerting_triggered_alert_details(self): """ Only call this if :meth:`is_admin_alerting_triggered_alert_details` is true. :rtype: AdminAlertingTriggeredAlertDetails """ if not self.is_admin_alerting_triggered_alert_details(): raise AttributeError("tag 'admin_alerting_triggered_alert_details' not set") return self._value def get_ransomware_restore_process_completed_details(self): """ Only call this if :meth:`is_ransomware_restore_process_completed_details` is true. :rtype: RansomwareRestoreProcessCompletedDetails """ if not self.is_ransomware_restore_process_completed_details(): raise AttributeError("tag 'ransomware_restore_process_completed_details' not set") return self._value def get_ransomware_restore_process_started_details(self): """ Only call this if :meth:`is_ransomware_restore_process_started_details` is true. :rtype: RansomwareRestoreProcessStartedDetails """ if not self.is_ransomware_restore_process_started_details(): raise AttributeError("tag 'ransomware_restore_process_started_details' not set") return self._value def get_app_blocked_by_permissions_details(self): """ Only call this if :meth:`is_app_blocked_by_permissions_details` is true. :rtype: AppBlockedByPermissionsDetails """ if not self.is_app_blocked_by_permissions_details(): raise AttributeError("tag 'app_blocked_by_permissions_details' not set") return self._value def get_app_link_team_details(self): """ Only call this if :meth:`is_app_link_team_details` is true. :rtype: AppLinkTeamDetails """ if not self.is_app_link_team_details(): raise AttributeError("tag 'app_link_team_details' not set") return self._value def get_app_link_user_details(self): """ Only call this if :meth:`is_app_link_user_details` is true. :rtype: AppLinkUserDetails """ if not self.is_app_link_user_details(): raise AttributeError("tag 'app_link_user_details' not set") return self._value def get_app_unlink_team_details(self): """ Only call this if :meth:`is_app_unlink_team_details` is true. :rtype: AppUnlinkTeamDetails """ if not self.is_app_unlink_team_details(): raise AttributeError("tag 'app_unlink_team_details' not set") return self._value def get_app_unlink_user_details(self): """ Only call this if :meth:`is_app_unlink_user_details` is true. :rtype: AppUnlinkUserDetails """ if not self.is_app_unlink_user_details(): raise AttributeError("tag 'app_unlink_user_details' not set") return self._value def get_integration_connected_details(self): """ Only call this if :meth:`is_integration_connected_details` is true. :rtype: IntegrationConnectedDetails """ if not self.is_integration_connected_details(): raise AttributeError("tag 'integration_connected_details' not set") return self._value def get_integration_disconnected_details(self): """ Only call this if :meth:`is_integration_disconnected_details` is true. :rtype: IntegrationDisconnectedDetails """ if not self.is_integration_disconnected_details(): raise AttributeError("tag 'integration_disconnected_details' not set") return self._value def get_file_add_comment_details(self): """ Only call this if :meth:`is_file_add_comment_details` is true. :rtype: FileAddCommentDetails """ if not self.is_file_add_comment_details(): raise AttributeError("tag 'file_add_comment_details' not set") return self._value def get_file_change_comment_subscription_details(self): """ Only call this if :meth:`is_file_change_comment_subscription_details` is true. :rtype: FileChangeCommentSubscriptionDetails """ if not self.is_file_change_comment_subscription_details(): raise AttributeError("tag 'file_change_comment_subscription_details' not set") return self._value def get_file_delete_comment_details(self): """ Only call this if :meth:`is_file_delete_comment_details` is true. :rtype: FileDeleteCommentDetails """ if not self.is_file_delete_comment_details(): raise AttributeError("tag 'file_delete_comment_details' not set") return self._value def get_file_edit_comment_details(self): """ Only call this if :meth:`is_file_edit_comment_details` is true. :rtype: FileEditCommentDetails """ if not self.is_file_edit_comment_details(): raise AttributeError("tag 'file_edit_comment_details' not set") return self._value def get_file_like_comment_details(self): """ Only call this if :meth:`is_file_like_comment_details` is true. :rtype: FileLikeCommentDetails """ if not self.is_file_like_comment_details(): raise AttributeError("tag 'file_like_comment_details' not set") return self._value def get_file_resolve_comment_details(self): """ Only call this if :meth:`is_file_resolve_comment_details` is true. :rtype: FileResolveCommentDetails """ if not self.is_file_resolve_comment_details(): raise AttributeError("tag 'file_resolve_comment_details' not set") return self._value def get_file_unlike_comment_details(self): """ Only call this if :meth:`is_file_unlike_comment_details` is true. :rtype: FileUnlikeCommentDetails """ if not self.is_file_unlike_comment_details(): raise AttributeError("tag 'file_unlike_comment_details' not set") return self._value def get_file_unresolve_comment_details(self): """ Only call this if :meth:`is_file_unresolve_comment_details` is true. :rtype: FileUnresolveCommentDetails """ if not self.is_file_unresolve_comment_details(): raise AttributeError("tag 'file_unresolve_comment_details' not set") return self._value def get_governance_policy_add_folders_details(self): """ Only call this if :meth:`is_governance_policy_add_folders_details` is true. :rtype: GovernancePolicyAddFoldersDetails """ if not self.is_governance_policy_add_folders_details(): raise AttributeError("tag 'governance_policy_add_folders_details' not set") return self._value def get_governance_policy_add_folder_failed_details(self): """ Only call this if :meth:`is_governance_policy_add_folder_failed_details` is true. :rtype: GovernancePolicyAddFolderFailedDetails """ if not self.is_governance_policy_add_folder_failed_details(): raise AttributeError("tag 'governance_policy_add_folder_failed_details' not set") return self._value def get_governance_policy_content_disposed_details(self): """ Only call this if :meth:`is_governance_policy_content_disposed_details` is true. :rtype: GovernancePolicyContentDisposedDetails """ if not self.is_governance_policy_content_disposed_details(): raise AttributeError("tag 'governance_policy_content_disposed_details' not set") return self._value def get_governance_policy_create_details(self): """ Only call this if :meth:`is_governance_policy_create_details` is true. :rtype: GovernancePolicyCreateDetails """ if not self.is_governance_policy_create_details(): raise AttributeError("tag 'governance_policy_create_details' not set") return self._value def get_governance_policy_delete_details(self): """ Only call this if :meth:`is_governance_policy_delete_details` is true. :rtype: GovernancePolicyDeleteDetails """ if not self.is_governance_policy_delete_details(): raise AttributeError("tag 'governance_policy_delete_details' not set") return self._value def get_governance_policy_edit_details_details(self): """ Only call this if :meth:`is_governance_policy_edit_details_details` is true. :rtype: GovernancePolicyEditDetailsDetails """ if not self.is_governance_policy_edit_details_details(): raise AttributeError("tag 'governance_policy_edit_details_details' not set") return self._value def get_governance_policy_edit_duration_details(self): """ Only call this if :meth:`is_governance_policy_edit_duration_details` is true. :rtype: GovernancePolicyEditDurationDetails """ if not self.is_governance_policy_edit_duration_details(): raise AttributeError("tag 'governance_policy_edit_duration_details' not set") return self._value def get_governance_policy_export_created_details(self): """ Only call this if :meth:`is_governance_policy_export_created_details` is true. :rtype: GovernancePolicyExportCreatedDetails """ if not self.is_governance_policy_export_created_details(): raise AttributeError("tag 'governance_policy_export_created_details' not set") return self._value def get_governance_policy_export_removed_details(self): """ Only call this if :meth:`is_governance_policy_export_removed_details` is true. :rtype: GovernancePolicyExportRemovedDetails """ if not self.is_governance_policy_export_removed_details(): raise AttributeError("tag 'governance_policy_export_removed_details' not set") return self._value def get_governance_policy_remove_folders_details(self): """ Only call this if :meth:`is_governance_policy_remove_folders_details` is true. :rtype: GovernancePolicyRemoveFoldersDetails """ if not self.is_governance_policy_remove_folders_details(): raise AttributeError("tag 'governance_policy_remove_folders_details' not set") return self._value def get_governance_policy_report_created_details(self): """ Only call this if :meth:`is_governance_policy_report_created_details` is true. :rtype: GovernancePolicyReportCreatedDetails """ if not self.is_governance_policy_report_created_details(): raise AttributeError("tag 'governance_policy_report_created_details' not set") return self._value def get_governance_policy_zip_part_downloaded_details(self): """ Only call this if :meth:`is_governance_policy_zip_part_downloaded_details` is true. :rtype: GovernancePolicyZipPartDownloadedDetails """ if not self.is_governance_policy_zip_part_downloaded_details(): raise AttributeError("tag 'governance_policy_zip_part_downloaded_details' not set") return self._value def get_legal_holds_activate_a_hold_details(self): """ Only call this if :meth:`is_legal_holds_activate_a_hold_details` is true. :rtype: LegalHoldsActivateAHoldDetails """ if not self.is_legal_holds_activate_a_hold_details(): raise AttributeError("tag 'legal_holds_activate_a_hold_details' not set") return self._value def get_legal_holds_add_members_details(self): """ Only call this if :meth:`is_legal_holds_add_members_details` is true. :rtype: LegalHoldsAddMembersDetails """ if not self.is_legal_holds_add_members_details(): raise AttributeError("tag 'legal_holds_add_members_details' not set") return self._value def get_legal_holds_change_hold_details_details(self): """ Only call this if :meth:`is_legal_holds_change_hold_details_details` is true. :rtype: LegalHoldsChangeHoldDetailsDetails """ if not self.is_legal_holds_change_hold_details_details(): raise AttributeError("tag 'legal_holds_change_hold_details_details' not set") return self._value def get_legal_holds_change_hold_name_details(self): """ Only call this if :meth:`is_legal_holds_change_hold_name_details` is true. :rtype: LegalHoldsChangeHoldNameDetails """ if not self.is_legal_holds_change_hold_name_details(): raise AttributeError("tag 'legal_holds_change_hold_name_details' not set") return self._value def get_legal_holds_export_a_hold_details(self): """ Only call this if :meth:`is_legal_holds_export_a_hold_details` is true. :rtype: LegalHoldsExportAHoldDetails """ if not self.is_legal_holds_export_a_hold_details(): raise AttributeError("tag 'legal_holds_export_a_hold_details' not set") return self._value def get_legal_holds_export_cancelled_details(self): """ Only call this if :meth:`is_legal_holds_export_cancelled_details` is true. :rtype: LegalHoldsExportCancelledDetails """ if not self.is_legal_holds_export_cancelled_details(): raise AttributeError("tag 'legal_holds_export_cancelled_details' not set") return self._value def get_legal_holds_export_downloaded_details(self): """ Only call this if :meth:`is_legal_holds_export_downloaded_details` is true. :rtype: LegalHoldsExportDownloadedDetails """ if not self.is_legal_holds_export_downloaded_details(): raise AttributeError("tag 'legal_holds_export_downloaded_details' not set") return self._value def get_legal_holds_export_removed_details(self): """ Only call this if :meth:`is_legal_holds_export_removed_details` is true. :rtype: LegalHoldsExportRemovedDetails """ if not self.is_legal_holds_export_removed_details(): raise AttributeError("tag 'legal_holds_export_removed_details' not set") return self._value def get_legal_holds_release_a_hold_details(self): """ Only call this if :meth:`is_legal_holds_release_a_hold_details` is true. :rtype: LegalHoldsReleaseAHoldDetails """ if not self.is_legal_holds_release_a_hold_details(): raise AttributeError("tag 'legal_holds_release_a_hold_details' not set") return self._value def get_legal_holds_remove_members_details(self): """ Only call this if :meth:`is_legal_holds_remove_members_details` is true. :rtype: LegalHoldsRemoveMembersDetails """ if not self.is_legal_holds_remove_members_details(): raise AttributeError("tag 'legal_holds_remove_members_details' not set") return self._value def get_legal_holds_report_a_hold_details(self): """ Only call this if :meth:`is_legal_holds_report_a_hold_details` is true. :rtype: LegalHoldsReportAHoldDetails """ if not self.is_legal_holds_report_a_hold_details(): raise AttributeError("tag 'legal_holds_report_a_hold_details' not set") return self._value def get_device_change_ip_desktop_details(self): """ Only call this if :meth:`is_device_change_ip_desktop_details` is true. :rtype: DeviceChangeIpDesktopDetails """ if not self.is_device_change_ip_desktop_details(): raise AttributeError("tag 'device_change_ip_desktop_details' not set") return self._value def get_device_change_ip_mobile_details(self): """ Only call this if :meth:`is_device_change_ip_mobile_details` is true. :rtype: DeviceChangeIpMobileDetails """ if not self.is_device_change_ip_mobile_details(): raise AttributeError("tag 'device_change_ip_mobile_details' not set") return self._value def get_device_change_ip_web_details(self): """ Only call this if :meth:`is_device_change_ip_web_details` is true. :rtype: DeviceChangeIpWebDetails """ if not self.is_device_change_ip_web_details(): raise AttributeError("tag 'device_change_ip_web_details' not set") return self._value def get_device_delete_on_unlink_fail_details(self): """ Only call this if :meth:`is_device_delete_on_unlink_fail_details` is true. :rtype: DeviceDeleteOnUnlinkFailDetails """ if not self.is_device_delete_on_unlink_fail_details(): raise AttributeError("tag 'device_delete_on_unlink_fail_details' not set") return self._value def get_device_delete_on_unlink_success_details(self): """ Only call this if :meth:`is_device_delete_on_unlink_success_details` is true. :rtype: DeviceDeleteOnUnlinkSuccessDetails """ if not self.is_device_delete_on_unlink_success_details(): raise AttributeError("tag 'device_delete_on_unlink_success_details' not set") return self._value def get_device_link_fail_details(self): """ Only call this if :meth:`is_device_link_fail_details` is true. :rtype: DeviceLinkFailDetails """ if not self.is_device_link_fail_details(): raise AttributeError("tag 'device_link_fail_details' not set") return self._value def get_device_link_success_details(self): """ Only call this if :meth:`is_device_link_success_details` is true. :rtype: DeviceLinkSuccessDetails """ if not self.is_device_link_success_details(): raise AttributeError("tag 'device_link_success_details' not set") return self._value def get_device_management_disabled_details(self): """ Only call this if :meth:`is_device_management_disabled_details` is true. :rtype: DeviceManagementDisabledDetails """ if not self.is_device_management_disabled_details(): raise AttributeError("tag 'device_management_disabled_details' not set") return self._value def get_device_management_enabled_details(self): """ Only call this if :meth:`is_device_management_enabled_details` is true. :rtype: DeviceManagementEnabledDetails """ if not self.is_device_management_enabled_details(): raise AttributeError("tag 'device_management_enabled_details' not set") return self._value def get_device_sync_backup_status_changed_details(self): """ Only call this if :meth:`is_device_sync_backup_status_changed_details` is true. :rtype: DeviceSyncBackupStatusChangedDetails """ if not self.is_device_sync_backup_status_changed_details(): raise AttributeError("tag 'device_sync_backup_status_changed_details' not set") return self._value def get_device_unlink_details(self): """ Only call this if :meth:`is_device_unlink_details` is true. :rtype: DeviceUnlinkDetails """ if not self.is_device_unlink_details(): raise AttributeError("tag 'device_unlink_details' not set") return self._value def get_dropbox_passwords_exported_details(self): """ Only call this if :meth:`is_dropbox_passwords_exported_details` is true. :rtype: DropboxPasswordsExportedDetails """ if not self.is_dropbox_passwords_exported_details(): raise AttributeError("tag 'dropbox_passwords_exported_details' not set") return self._value def get_dropbox_passwords_new_device_enrolled_details(self): """ Only call this if :meth:`is_dropbox_passwords_new_device_enrolled_details` is true. :rtype: DropboxPasswordsNewDeviceEnrolledDetails """ if not self.is_dropbox_passwords_new_device_enrolled_details(): raise AttributeError("tag 'dropbox_passwords_new_device_enrolled_details' not set") return self._value def get_emm_refresh_auth_token_details(self): """ Only call this if :meth:`is_emm_refresh_auth_token_details` is true. :rtype: EmmRefreshAuthTokenDetails """ if not self.is_emm_refresh_auth_token_details(): raise AttributeError("tag 'emm_refresh_auth_token_details' not set") return self._value def get_external_drive_backup_eligibility_status_checked_details(self): """ Only call this if :meth:`is_external_drive_backup_eligibility_status_checked_details` is true. :rtype: ExternalDriveBackupEligibilityStatusCheckedDetails """ if not self.is_external_drive_backup_eligibility_status_checked_details(): raise AttributeError("tag 'external_drive_backup_eligibility_status_checked_details' not set") return self._value def get_external_drive_backup_status_changed_details(self): """ Only call this if :meth:`is_external_drive_backup_status_changed_details` is true. :rtype: ExternalDriveBackupStatusChangedDetails """ if not self.is_external_drive_backup_status_changed_details(): raise AttributeError("tag 'external_drive_backup_status_changed_details' not set") return self._value def get_account_capture_change_availability_details(self): """ Only call this if :meth:`is_account_capture_change_availability_details` is true. :rtype: AccountCaptureChangeAvailabilityDetails """ if not self.is_account_capture_change_availability_details(): raise AttributeError("tag 'account_capture_change_availability_details' not set") return self._value def get_account_capture_migrate_account_details(self): """ Only call this if :meth:`is_account_capture_migrate_account_details` is true. :rtype: AccountCaptureMigrateAccountDetails """ if not self.is_account_capture_migrate_account_details(): raise AttributeError("tag 'account_capture_migrate_account_details' not set") return self._value def get_account_capture_notification_emails_sent_details(self): """ Only call this if :meth:`is_account_capture_notification_emails_sent_details` is true. :rtype: AccountCaptureNotificationEmailsSentDetails """ if not self.is_account_capture_notification_emails_sent_details(): raise AttributeError("tag 'account_capture_notification_emails_sent_details' not set") return self._value def get_account_capture_relinquish_account_details(self): """ Only call this if :meth:`is_account_capture_relinquish_account_details` is true. :rtype: AccountCaptureRelinquishAccountDetails """ if not self.is_account_capture_relinquish_account_details(): raise AttributeError("tag 'account_capture_relinquish_account_details' not set") return self._value def get_disabled_domain_invites_details(self): """ Only call this if :meth:`is_disabled_domain_invites_details` is true. :rtype: DisabledDomainInvitesDetails """ if not self.is_disabled_domain_invites_details(): raise AttributeError("tag 'disabled_domain_invites_details' not set") return self._value def get_domain_invites_approve_request_to_join_team_details(self): """ Only call this if :meth:`is_domain_invites_approve_request_to_join_team_details` is true. :rtype: DomainInvitesApproveRequestToJoinTeamDetails """ if not self.is_domain_invites_approve_request_to_join_team_details(): raise AttributeError("tag 'domain_invites_approve_request_to_join_team_details' not set") return self._value def get_domain_invites_decline_request_to_join_team_details(self): """ Only call this if :meth:`is_domain_invites_decline_request_to_join_team_details` is true. :rtype: DomainInvitesDeclineRequestToJoinTeamDetails """ if not self.is_domain_invites_decline_request_to_join_team_details(): raise AttributeError("tag 'domain_invites_decline_request_to_join_team_details' not set") return self._value def get_domain_invites_email_existing_users_details(self): """ Only call this if :meth:`is_domain_invites_email_existing_users_details` is true. :rtype: DomainInvitesEmailExistingUsersDetails """ if not self.is_domain_invites_email_existing_users_details(): raise AttributeError("tag 'domain_invites_email_existing_users_details' not set") return self._value def get_domain_invites_request_to_join_team_details(self): """ Only call this if :meth:`is_domain_invites_request_to_join_team_details` is true. :rtype: DomainInvitesRequestToJoinTeamDetails """ if not self.is_domain_invites_request_to_join_team_details(): raise AttributeError("tag 'domain_invites_request_to_join_team_details' not set") return self._value def get_domain_invites_set_invite_new_user_pref_to_no_details(self): """ Only call this if :meth:`is_domain_invites_set_invite_new_user_pref_to_no_details` is true. :rtype: DomainInvitesSetInviteNewUserPrefToNoDetails """ if not self.is_domain_invites_set_invite_new_user_pref_to_no_details(): raise AttributeError("tag 'domain_invites_set_invite_new_user_pref_to_no_details' not set") return self._value def get_domain_invites_set_invite_new_user_pref_to_yes_details(self): """ Only call this if :meth:`is_domain_invites_set_invite_new_user_pref_to_yes_details` is true. :rtype: DomainInvitesSetInviteNewUserPrefToYesDetails """ if not self.is_domain_invites_set_invite_new_user_pref_to_yes_details(): raise AttributeError("tag 'domain_invites_set_invite_new_user_pref_to_yes_details' not set") return self._value def get_domain_verification_add_domain_fail_details(self): """ Only call this if :meth:`is_domain_verification_add_domain_fail_details` is true. :rtype: DomainVerificationAddDomainFailDetails """ if not self.is_domain_verification_add_domain_fail_details(): raise AttributeError("tag 'domain_verification_add_domain_fail_details' not set") return self._value def get_domain_verification_add_domain_success_details(self): """ Only call this if :meth:`is_domain_verification_add_domain_success_details` is true. :rtype: DomainVerificationAddDomainSuccessDetails """ if not self.is_domain_verification_add_domain_success_details(): raise AttributeError("tag 'domain_verification_add_domain_success_details' not set") return self._value def get_domain_verification_remove_domain_details(self): """ Only call this if :meth:`is_domain_verification_remove_domain_details` is true. :rtype: DomainVerificationRemoveDomainDetails """ if not self.is_domain_verification_remove_domain_details(): raise AttributeError("tag 'domain_verification_remove_domain_details' not set") return self._value def get_enabled_domain_invites_details(self): """ Only call this if :meth:`is_enabled_domain_invites_details` is true. :rtype: EnabledDomainInvitesDetails """ if not self.is_enabled_domain_invites_details(): raise AttributeError("tag 'enabled_domain_invites_details' not set") return self._value def get_team_encryption_key_cancel_key_deletion_details(self): """ Only call this if :meth:`is_team_encryption_key_cancel_key_deletion_details` is true. :rtype: TeamEncryptionKeyCancelKeyDeletionDetails """ if not self.is_team_encryption_key_cancel_key_deletion_details(): raise AttributeError("tag 'team_encryption_key_cancel_key_deletion_details' not set") return self._value def get_team_encryption_key_create_key_details(self): """ Only call this if :meth:`is_team_encryption_key_create_key_details` is true. :rtype: TeamEncryptionKeyCreateKeyDetails """ if not self.is_team_encryption_key_create_key_details(): raise AttributeError("tag 'team_encryption_key_create_key_details' not set") return self._value def get_team_encryption_key_delete_key_details(self): """ Only call this if :meth:`is_team_encryption_key_delete_key_details` is true. :rtype: TeamEncryptionKeyDeleteKeyDetails """ if not self.is_team_encryption_key_delete_key_details(): raise AttributeError("tag 'team_encryption_key_delete_key_details' not set") return self._value def get_team_encryption_key_disable_key_details(self): """ Only call this if :meth:`is_team_encryption_key_disable_key_details` is true. :rtype: TeamEncryptionKeyDisableKeyDetails """ if not self.is_team_encryption_key_disable_key_details(): raise AttributeError("tag 'team_encryption_key_disable_key_details' not set") return self._value def get_team_encryption_key_enable_key_details(self): """ Only call this if :meth:`is_team_encryption_key_enable_key_details` is true. :rtype: TeamEncryptionKeyEnableKeyDetails """ if not self.is_team_encryption_key_enable_key_details(): raise AttributeError("tag 'team_encryption_key_enable_key_details' not set") return self._value def get_team_encryption_key_rotate_key_details(self): """ Only call this if :meth:`is_team_encryption_key_rotate_key_details` is true. :rtype: TeamEncryptionKeyRotateKeyDetails """ if not self.is_team_encryption_key_rotate_key_details(): raise AttributeError("tag 'team_encryption_key_rotate_key_details' not set") return self._value def get_team_encryption_key_schedule_key_deletion_details(self): """ Only call this if :meth:`is_team_encryption_key_schedule_key_deletion_details` is true. :rtype: TeamEncryptionKeyScheduleKeyDeletionDetails """ if not self.is_team_encryption_key_schedule_key_deletion_details(): raise AttributeError("tag 'team_encryption_key_schedule_key_deletion_details' not set") return self._value def get_apply_naming_convention_details(self): """ Only call this if :meth:`is_apply_naming_convention_details` is true. :rtype: ApplyNamingConventionDetails """ if not self.is_apply_naming_convention_details(): raise AttributeError("tag 'apply_naming_convention_details' not set") return self._value def get_create_folder_details(self): """ Only call this if :meth:`is_create_folder_details` is true. :rtype: CreateFolderDetails """ if not self.is_create_folder_details(): raise AttributeError("tag 'create_folder_details' not set") return self._value def get_file_add_details(self): """ Only call this if :meth:`is_file_add_details` is true. :rtype: FileAddDetails """ if not self.is_file_add_details(): raise AttributeError("tag 'file_add_details' not set") return self._value def get_file_add_from_automation_details(self): """ Only call this if :meth:`is_file_add_from_automation_details` is true. :rtype: FileAddFromAutomationDetails """ if not self.is_file_add_from_automation_details(): raise AttributeError("tag 'file_add_from_automation_details' not set") return self._value def get_file_copy_details(self): """ Only call this if :meth:`is_file_copy_details` is true. :rtype: FileCopyDetails """ if not self.is_file_copy_details(): raise AttributeError("tag 'file_copy_details' not set") return self._value def get_file_delete_details(self): """ Only call this if :meth:`is_file_delete_details` is true. :rtype: FileDeleteDetails """ if not self.is_file_delete_details(): raise AttributeError("tag 'file_delete_details' not set") return self._value def get_file_download_details(self): """ Only call this if :meth:`is_file_download_details` is true. :rtype: FileDownloadDetails """ if not self.is_file_download_details(): raise AttributeError("tag 'file_download_details' not set") return self._value def get_file_edit_details(self): """ Only call this if :meth:`is_file_edit_details` is true. :rtype: FileEditDetails """ if not self.is_file_edit_details(): raise AttributeError("tag 'file_edit_details' not set") return self._value def get_file_get_copy_reference_details(self): """ Only call this if :meth:`is_file_get_copy_reference_details` is true. :rtype: FileGetCopyReferenceDetails """ if not self.is_file_get_copy_reference_details(): raise AttributeError("tag 'file_get_copy_reference_details' not set") return self._value def get_file_locking_lock_status_changed_details(self): """ Only call this if :meth:`is_file_locking_lock_status_changed_details` is true. :rtype: FileLockingLockStatusChangedDetails """ if not self.is_file_locking_lock_status_changed_details(): raise AttributeError("tag 'file_locking_lock_status_changed_details' not set") return self._value def get_file_move_details(self): """ Only call this if :meth:`is_file_move_details` is true. :rtype: FileMoveDetails """ if not self.is_file_move_details(): raise AttributeError("tag 'file_move_details' not set") return self._value def get_file_permanently_delete_details(self): """ Only call this if :meth:`is_file_permanently_delete_details` is true. :rtype: FilePermanentlyDeleteDetails """ if not self.is_file_permanently_delete_details(): raise AttributeError("tag 'file_permanently_delete_details' not set") return self._value def get_file_preview_details(self): """ Only call this if :meth:`is_file_preview_details` is true. :rtype: FilePreviewDetails """ if not self.is_file_preview_details(): raise AttributeError("tag 'file_preview_details' not set") return self._value def get_file_rename_details(self): """ Only call this if :meth:`is_file_rename_details` is true. :rtype: FileRenameDetails """ if not self.is_file_rename_details(): raise AttributeError("tag 'file_rename_details' not set") return self._value def get_file_restore_details(self): """ Only call this if :meth:`is_file_restore_details` is true. :rtype: FileRestoreDetails """ if not self.is_file_restore_details(): raise AttributeError("tag 'file_restore_details' not set") return self._value def get_file_revert_details(self): """ Only call this if :meth:`is_file_revert_details` is true. :rtype: FileRevertDetails """ if not self.is_file_revert_details(): raise AttributeError("tag 'file_revert_details' not set") return self._value def get_file_rollback_changes_details(self): """ Only call this if :meth:`is_file_rollback_changes_details` is true. :rtype: FileRollbackChangesDetails """ if not self.is_file_rollback_changes_details(): raise AttributeError("tag 'file_rollback_changes_details' not set") return self._value def get_file_save_copy_reference_details(self): """ Only call this if :meth:`is_file_save_copy_reference_details` is true. :rtype: FileSaveCopyReferenceDetails """ if not self.is_file_save_copy_reference_details(): raise AttributeError("tag 'file_save_copy_reference_details' not set") return self._value def get_folder_overview_description_changed_details(self): """ Only call this if :meth:`is_folder_overview_description_changed_details` is true. :rtype: FolderOverviewDescriptionChangedDetails """ if not self.is_folder_overview_description_changed_details(): raise AttributeError("tag 'folder_overview_description_changed_details' not set") return self._value def get_folder_overview_item_pinned_details(self): """ Only call this if :meth:`is_folder_overview_item_pinned_details` is true. :rtype: FolderOverviewItemPinnedDetails """ if not self.is_folder_overview_item_pinned_details(): raise AttributeError("tag 'folder_overview_item_pinned_details' not set") return self._value def get_folder_overview_item_unpinned_details(self): """ Only call this if :meth:`is_folder_overview_item_unpinned_details` is true. :rtype: FolderOverviewItemUnpinnedDetails """ if not self.is_folder_overview_item_unpinned_details(): raise AttributeError("tag 'folder_overview_item_unpinned_details' not set") return self._value def get_object_label_added_details(self): """ Only call this if :meth:`is_object_label_added_details` is true. :rtype: ObjectLabelAddedDetails """ if not self.is_object_label_added_details(): raise AttributeError("tag 'object_label_added_details' not set") return self._value def get_object_label_removed_details(self): """ Only call this if :meth:`is_object_label_removed_details` is true. :rtype: ObjectLabelRemovedDetails """ if not self.is_object_label_removed_details(): raise AttributeError("tag 'object_label_removed_details' not set") return self._value def get_object_label_updated_value_details(self): """ Only call this if :meth:`is_object_label_updated_value_details` is true. :rtype: ObjectLabelUpdatedValueDetails """ if not self.is_object_label_updated_value_details(): raise AttributeError("tag 'object_label_updated_value_details' not set") return self._value def get_organize_folder_with_tidy_details(self): """ Only call this if :meth:`is_organize_folder_with_tidy_details` is true. :rtype: OrganizeFolderWithTidyDetails """ if not self.is_organize_folder_with_tidy_details(): raise AttributeError("tag 'organize_folder_with_tidy_details' not set") return self._value def get_replay_file_delete_details(self): """ Only call this if :meth:`is_replay_file_delete_details` is true. :rtype: ReplayFileDeleteDetails """ if not self.is_replay_file_delete_details(): raise AttributeError("tag 'replay_file_delete_details' not set") return self._value def get_rewind_folder_details(self): """ Only call this if :meth:`is_rewind_folder_details` is true. :rtype: RewindFolderDetails """ if not self.is_rewind_folder_details(): raise AttributeError("tag 'rewind_folder_details' not set") return self._value def get_undo_naming_convention_details(self): """ Only call this if :meth:`is_undo_naming_convention_details` is true. :rtype: UndoNamingConventionDetails """ if not self.is_undo_naming_convention_details(): raise AttributeError("tag 'undo_naming_convention_details' not set") return self._value def get_undo_organize_folder_with_tidy_details(self): """ Only call this if :meth:`is_undo_organize_folder_with_tidy_details` is true. :rtype: UndoOrganizeFolderWithTidyDetails """ if not self.is_undo_organize_folder_with_tidy_details(): raise AttributeError("tag 'undo_organize_folder_with_tidy_details' not set") return self._value def get_user_tags_added_details(self): """ Only call this if :meth:`is_user_tags_added_details` is true. :rtype: UserTagsAddedDetails """ if not self.is_user_tags_added_details(): raise AttributeError("tag 'user_tags_added_details' not set") return self._value def get_user_tags_removed_details(self): """ Only call this if :meth:`is_user_tags_removed_details` is true. :rtype: UserTagsRemovedDetails """ if not self.is_user_tags_removed_details(): raise AttributeError("tag 'user_tags_removed_details' not set") return self._value def get_email_ingest_receive_file_details(self): """ Only call this if :meth:`is_email_ingest_receive_file_details` is true. :rtype: EmailIngestReceiveFileDetails """ if not self.is_email_ingest_receive_file_details(): raise AttributeError("tag 'email_ingest_receive_file_details' not set") return self._value def get_file_request_change_details(self): """ Only call this if :meth:`is_file_request_change_details` is true. :rtype: FileRequestChangeDetails """ if not self.is_file_request_change_details(): raise AttributeError("tag 'file_request_change_details' not set") return self._value def get_file_request_close_details(self): """ Only call this if :meth:`is_file_request_close_details` is true. :rtype: FileRequestCloseDetails """ if not self.is_file_request_close_details(): raise AttributeError("tag 'file_request_close_details' not set") return self._value def get_file_request_create_details(self): """ Only call this if :meth:`is_file_request_create_details` is true. :rtype: FileRequestCreateDetails """ if not self.is_file_request_create_details(): raise AttributeError("tag 'file_request_create_details' not set") return self._value def get_file_request_delete_details(self): """ Only call this if :meth:`is_file_request_delete_details` is true. :rtype: FileRequestDeleteDetails """ if not self.is_file_request_delete_details(): raise AttributeError("tag 'file_request_delete_details' not set") return self._value def get_file_request_receive_file_details(self): """ Only call this if :meth:`is_file_request_receive_file_details` is true. :rtype: FileRequestReceiveFileDetails """ if not self.is_file_request_receive_file_details(): raise AttributeError("tag 'file_request_receive_file_details' not set") return self._value def get_group_add_external_id_details(self): """ Only call this if :meth:`is_group_add_external_id_details` is true. :rtype: GroupAddExternalIdDetails """ if not self.is_group_add_external_id_details(): raise AttributeError("tag 'group_add_external_id_details' not set") return self._value def get_group_add_member_details(self): """ Only call this if :meth:`is_group_add_member_details` is true. :rtype: GroupAddMemberDetails """ if not self.is_group_add_member_details(): raise AttributeError("tag 'group_add_member_details' not set") return self._value def get_group_change_external_id_details(self): """ Only call this if :meth:`is_group_change_external_id_details` is true. :rtype: GroupChangeExternalIdDetails """ if not self.is_group_change_external_id_details(): raise AttributeError("tag 'group_change_external_id_details' not set") return self._value def get_group_change_management_type_details(self): """ Only call this if :meth:`is_group_change_management_type_details` is true. :rtype: GroupChangeManagementTypeDetails """ if not self.is_group_change_management_type_details(): raise AttributeError("tag 'group_change_management_type_details' not set") return self._value def get_group_change_member_role_details(self): """ Only call this if :meth:`is_group_change_member_role_details` is true. :rtype: GroupChangeMemberRoleDetails """ if not self.is_group_change_member_role_details(): raise AttributeError("tag 'group_change_member_role_details' not set") return self._value def get_group_create_details(self): """ Only call this if :meth:`is_group_create_details` is true. :rtype: GroupCreateDetails """ if not self.is_group_create_details(): raise AttributeError("tag 'group_create_details' not set") return self._value def get_group_delete_details(self): """ Only call this if :meth:`is_group_delete_details` is true. :rtype: GroupDeleteDetails """ if not self.is_group_delete_details(): raise AttributeError("tag 'group_delete_details' not set") return self._value def get_group_description_updated_details(self): """ Only call this if :meth:`is_group_description_updated_details` is true. :rtype: GroupDescriptionUpdatedDetails """ if not self.is_group_description_updated_details(): raise AttributeError("tag 'group_description_updated_details' not set") return self._value def get_group_join_policy_updated_details(self): """ Only call this if :meth:`is_group_join_policy_updated_details` is true. :rtype: GroupJoinPolicyUpdatedDetails """ if not self.is_group_join_policy_updated_details(): raise AttributeError("tag 'group_join_policy_updated_details' not set") return self._value def get_group_moved_details(self): """ Only call this if :meth:`is_group_moved_details` is true. :rtype: GroupMovedDetails """ if not self.is_group_moved_details(): raise AttributeError("tag 'group_moved_details' not set") return self._value def get_group_remove_external_id_details(self): """ Only call this if :meth:`is_group_remove_external_id_details` is true. :rtype: GroupRemoveExternalIdDetails """ if not self.is_group_remove_external_id_details(): raise AttributeError("tag 'group_remove_external_id_details' not set") return self._value def get_group_remove_member_details(self): """ Only call this if :meth:`is_group_remove_member_details` is true. :rtype: GroupRemoveMemberDetails """ if not self.is_group_remove_member_details(): raise AttributeError("tag 'group_remove_member_details' not set") return self._value def get_group_rename_details(self): """ Only call this if :meth:`is_group_rename_details` is true. :rtype: GroupRenameDetails """ if not self.is_group_rename_details(): raise AttributeError("tag 'group_rename_details' not set") return self._value def get_account_lock_or_unlocked_details(self): """ Only call this if :meth:`is_account_lock_or_unlocked_details` is true. :rtype: AccountLockOrUnlockedDetails """ if not self.is_account_lock_or_unlocked_details(): raise AttributeError("tag 'account_lock_or_unlocked_details' not set") return self._value def get_emm_error_details(self): """ Only call this if :meth:`is_emm_error_details` is true. :rtype: EmmErrorDetails """ if not self.is_emm_error_details(): raise AttributeError("tag 'emm_error_details' not set") return self._value def get_guest_admin_signed_in_via_trusted_teams_details(self): """ Only call this if :meth:`is_guest_admin_signed_in_via_trusted_teams_details` is true. :rtype: GuestAdminSignedInViaTrustedTeamsDetails """ if not self.is_guest_admin_signed_in_via_trusted_teams_details(): raise AttributeError("tag 'guest_admin_signed_in_via_trusted_teams_details' not set") return self._value def get_guest_admin_signed_out_via_trusted_teams_details(self): """ Only call this if :meth:`is_guest_admin_signed_out_via_trusted_teams_details` is true. :rtype: GuestAdminSignedOutViaTrustedTeamsDetails """ if not self.is_guest_admin_signed_out_via_trusted_teams_details(): raise AttributeError("tag 'guest_admin_signed_out_via_trusted_teams_details' not set") return self._value def get_login_fail_details(self): """ Only call this if :meth:`is_login_fail_details` is true. :rtype: LoginFailDetails """ if not self.is_login_fail_details(): raise AttributeError("tag 'login_fail_details' not set") return self._value def get_login_success_details(self): """ Only call this if :meth:`is_login_success_details` is true. :rtype: LoginSuccessDetails """ if not self.is_login_success_details(): raise AttributeError("tag 'login_success_details' not set") return self._value def get_logout_details(self): """ Only call this if :meth:`is_logout_details` is true. :rtype: LogoutDetails """ if not self.is_logout_details(): raise AttributeError("tag 'logout_details' not set") return self._value def get_reseller_support_session_end_details(self): """ Only call this if :meth:`is_reseller_support_session_end_details` is true. :rtype: ResellerSupportSessionEndDetails """ if not self.is_reseller_support_session_end_details(): raise AttributeError("tag 'reseller_support_session_end_details' not set") return self._value def get_reseller_support_session_start_details(self): """ Only call this if :meth:`is_reseller_support_session_start_details` is true. :rtype: ResellerSupportSessionStartDetails """ if not self.is_reseller_support_session_start_details(): raise AttributeError("tag 'reseller_support_session_start_details' not set") return self._value def get_sign_in_as_session_end_details(self): """ Only call this if :meth:`is_sign_in_as_session_end_details` is true. :rtype: SignInAsSessionEndDetails """ if not self.is_sign_in_as_session_end_details(): raise AttributeError("tag 'sign_in_as_session_end_details' not set") return self._value def get_sign_in_as_session_start_details(self): """ Only call this if :meth:`is_sign_in_as_session_start_details` is true. :rtype: SignInAsSessionStartDetails """ if not self.is_sign_in_as_session_start_details(): raise AttributeError("tag 'sign_in_as_session_start_details' not set") return self._value def get_sso_error_details(self): """ Only call this if :meth:`is_sso_error_details` is true. :rtype: SsoErrorDetails """ if not self.is_sso_error_details(): raise AttributeError("tag 'sso_error_details' not set") return self._value def get_backup_admin_invitation_sent_details(self): """ Only call this if :meth:`is_backup_admin_invitation_sent_details` is true. :rtype: BackupAdminInvitationSentDetails """ if not self.is_backup_admin_invitation_sent_details(): raise AttributeError("tag 'backup_admin_invitation_sent_details' not set") return self._value def get_backup_invitation_opened_details(self): """ Only call this if :meth:`is_backup_invitation_opened_details` is true. :rtype: BackupInvitationOpenedDetails """ if not self.is_backup_invitation_opened_details(): raise AttributeError("tag 'backup_invitation_opened_details' not set") return self._value def get_create_team_invite_link_details(self): """ Only call this if :meth:`is_create_team_invite_link_details` is true. :rtype: CreateTeamInviteLinkDetails """ if not self.is_create_team_invite_link_details(): raise AttributeError("tag 'create_team_invite_link_details' not set") return self._value def get_delete_team_invite_link_details(self): """ Only call this if :meth:`is_delete_team_invite_link_details` is true. :rtype: DeleteTeamInviteLinkDetails """ if not self.is_delete_team_invite_link_details(): raise AttributeError("tag 'delete_team_invite_link_details' not set") return self._value def get_member_add_external_id_details(self): """ Only call this if :meth:`is_member_add_external_id_details` is true. :rtype: MemberAddExternalIdDetails """ if not self.is_member_add_external_id_details(): raise AttributeError("tag 'member_add_external_id_details' not set") return self._value def get_member_add_name_details(self): """ Only call this if :meth:`is_member_add_name_details` is true. :rtype: MemberAddNameDetails """ if not self.is_member_add_name_details(): raise AttributeError("tag 'member_add_name_details' not set") return self._value def get_member_change_admin_role_details(self): """ Only call this if :meth:`is_member_change_admin_role_details` is true. :rtype: MemberChangeAdminRoleDetails """ if not self.is_member_change_admin_role_details(): raise AttributeError("tag 'member_change_admin_role_details' not set") return self._value def get_member_change_email_details(self): """ Only call this if :meth:`is_member_change_email_details` is true. :rtype: MemberChangeEmailDetails """ if not self.is_member_change_email_details(): raise AttributeError("tag 'member_change_email_details' not set") return self._value def get_member_change_external_id_details(self): """ Only call this if :meth:`is_member_change_external_id_details` is true. :rtype: MemberChangeExternalIdDetails """ if not self.is_member_change_external_id_details(): raise AttributeError("tag 'member_change_external_id_details' not set") return self._value def get_member_change_membership_type_details(self): """ Only call this if :meth:`is_member_change_membership_type_details` is true. :rtype: MemberChangeMembershipTypeDetails """ if not self.is_member_change_membership_type_details(): raise AttributeError("tag 'member_change_membership_type_details' not set") return self._value def get_member_change_name_details(self): """ Only call this if :meth:`is_member_change_name_details` is true. :rtype: MemberChangeNameDetails """ if not self.is_member_change_name_details(): raise AttributeError("tag 'member_change_name_details' not set") return self._value def get_member_change_reseller_role_details(self): """ Only call this if :meth:`is_member_change_reseller_role_details` is true. :rtype: MemberChangeResellerRoleDetails """ if not self.is_member_change_reseller_role_details(): raise AttributeError("tag 'member_change_reseller_role_details' not set") return self._value def get_member_change_status_details(self): """ Only call this if :meth:`is_member_change_status_details` is true. :rtype: MemberChangeStatusDetails """ if not self.is_member_change_status_details(): raise AttributeError("tag 'member_change_status_details' not set") return self._value def get_member_delete_manual_contacts_details(self): """ Only call this if :meth:`is_member_delete_manual_contacts_details` is true. :rtype: MemberDeleteManualContactsDetails """ if not self.is_member_delete_manual_contacts_details(): raise AttributeError("tag 'member_delete_manual_contacts_details' not set") return self._value def get_member_delete_profile_photo_details(self): """ Only call this if :meth:`is_member_delete_profile_photo_details` is true. :rtype: MemberDeleteProfilePhotoDetails """ if not self.is_member_delete_profile_photo_details(): raise AttributeError("tag 'member_delete_profile_photo_details' not set") return self._value def get_member_permanently_delete_account_contents_details(self): """ Only call this if :meth:`is_member_permanently_delete_account_contents_details` is true. :rtype: MemberPermanentlyDeleteAccountContentsDetails """ if not self.is_member_permanently_delete_account_contents_details(): raise AttributeError("tag 'member_permanently_delete_account_contents_details' not set") return self._value def get_member_remove_external_id_details(self): """ Only call this if :meth:`is_member_remove_external_id_details` is true. :rtype: MemberRemoveExternalIdDetails """ if not self.is_member_remove_external_id_details(): raise AttributeError("tag 'member_remove_external_id_details' not set") return self._value def get_member_set_profile_photo_details(self): """ Only call this if :meth:`is_member_set_profile_photo_details` is true. :rtype: MemberSetProfilePhotoDetails """ if not self.is_member_set_profile_photo_details(): raise AttributeError("tag 'member_set_profile_photo_details' not set") return self._value def get_member_space_limits_add_custom_quota_details(self): """ Only call this if :meth:`is_member_space_limits_add_custom_quota_details` is true. :rtype: MemberSpaceLimitsAddCustomQuotaDetails """ if not self.is_member_space_limits_add_custom_quota_details(): raise AttributeError("tag 'member_space_limits_add_custom_quota_details' not set") return self._value def get_member_space_limits_change_custom_quota_details(self): """ Only call this if :meth:`is_member_space_limits_change_custom_quota_details` is true. :rtype: MemberSpaceLimitsChangeCustomQuotaDetails """ if not self.is_member_space_limits_change_custom_quota_details(): raise AttributeError("tag 'member_space_limits_change_custom_quota_details' not set") return self._value def get_member_space_limits_change_status_details(self): """ Only call this if :meth:`is_member_space_limits_change_status_details` is true. :rtype: MemberSpaceLimitsChangeStatusDetails """ if not self.is_member_space_limits_change_status_details(): raise AttributeError("tag 'member_space_limits_change_status_details' not set") return self._value def get_member_space_limits_remove_custom_quota_details(self): """ Only call this if :meth:`is_member_space_limits_remove_custom_quota_details` is true. :rtype: MemberSpaceLimitsRemoveCustomQuotaDetails """ if not self.is_member_space_limits_remove_custom_quota_details(): raise AttributeError("tag 'member_space_limits_remove_custom_quota_details' not set") return self._value def get_member_suggest_details(self): """ Only call this if :meth:`is_member_suggest_details` is true. :rtype: MemberSuggestDetails """ if not self.is_member_suggest_details(): raise AttributeError("tag 'member_suggest_details' not set") return self._value def get_member_transfer_account_contents_details(self): """ Only call this if :meth:`is_member_transfer_account_contents_details` is true. :rtype: MemberTransferAccountContentsDetails """ if not self.is_member_transfer_account_contents_details(): raise AttributeError("tag 'member_transfer_account_contents_details' not set") return self._value def get_pending_secondary_email_added_details(self): """ Only call this if :meth:`is_pending_secondary_email_added_details` is true. :rtype: PendingSecondaryEmailAddedDetails """ if not self.is_pending_secondary_email_added_details(): raise AttributeError("tag 'pending_secondary_email_added_details' not set") return self._value def get_secondary_email_deleted_details(self): """ Only call this if :meth:`is_secondary_email_deleted_details` is true. :rtype: SecondaryEmailDeletedDetails """ if not self.is_secondary_email_deleted_details(): raise AttributeError("tag 'secondary_email_deleted_details' not set") return self._value def get_secondary_email_verified_details(self): """ Only call this if :meth:`is_secondary_email_verified_details` is true. :rtype: SecondaryEmailVerifiedDetails """ if not self.is_secondary_email_verified_details(): raise AttributeError("tag 'secondary_email_verified_details' not set") return self._value def get_secondary_mails_policy_changed_details(self): """ Only call this if :meth:`is_secondary_mails_policy_changed_details` is true. :rtype: SecondaryMailsPolicyChangedDetails """ if not self.is_secondary_mails_policy_changed_details(): raise AttributeError("tag 'secondary_mails_policy_changed_details' not set") return self._value def get_binder_add_page_details(self): """ Only call this if :meth:`is_binder_add_page_details` is true. :rtype: BinderAddPageDetails """ if not self.is_binder_add_page_details(): raise AttributeError("tag 'binder_add_page_details' not set") return self._value def get_binder_add_section_details(self): """ Only call this if :meth:`is_binder_add_section_details` is true. :rtype: BinderAddSectionDetails """ if not self.is_binder_add_section_details(): raise AttributeError("tag 'binder_add_section_details' not set") return self._value def get_binder_remove_page_details(self): """ Only call this if :meth:`is_binder_remove_page_details` is true. :rtype: BinderRemovePageDetails """ if not self.is_binder_remove_page_details(): raise AttributeError("tag 'binder_remove_page_details' not set") return self._value def get_binder_remove_section_details(self): """ Only call this if :meth:`is_binder_remove_section_details` is true. :rtype: BinderRemoveSectionDetails """ if not self.is_binder_remove_section_details(): raise AttributeError("tag 'binder_remove_section_details' not set") return self._value def get_binder_rename_page_details(self): """ Only call this if :meth:`is_binder_rename_page_details` is true. :rtype: BinderRenamePageDetails """ if not self.is_binder_rename_page_details(): raise AttributeError("tag 'binder_rename_page_details' not set") return self._value def get_binder_rename_section_details(self): """ Only call this if :meth:`is_binder_rename_section_details` is true. :rtype: BinderRenameSectionDetails """ if not self.is_binder_rename_section_details(): raise AttributeError("tag 'binder_rename_section_details' not set") return self._value def get_binder_reorder_page_details(self): """ Only call this if :meth:`is_binder_reorder_page_details` is true. :rtype: BinderReorderPageDetails """ if not self.is_binder_reorder_page_details(): raise AttributeError("tag 'binder_reorder_page_details' not set") return self._value def get_binder_reorder_section_details(self): """ Only call this if :meth:`is_binder_reorder_section_details` is true. :rtype: BinderReorderSectionDetails """ if not self.is_binder_reorder_section_details(): raise AttributeError("tag 'binder_reorder_section_details' not set") return self._value def get_paper_content_add_member_details(self): """ Only call this if :meth:`is_paper_content_add_member_details` is true. :rtype: PaperContentAddMemberDetails """ if not self.is_paper_content_add_member_details(): raise AttributeError("tag 'paper_content_add_member_details' not set") return self._value def get_paper_content_add_to_folder_details(self): """ Only call this if :meth:`is_paper_content_add_to_folder_details` is true. :rtype: PaperContentAddToFolderDetails """ if not self.is_paper_content_add_to_folder_details(): raise AttributeError("tag 'paper_content_add_to_folder_details' not set") return self._value def get_paper_content_archive_details(self): """ Only call this if :meth:`is_paper_content_archive_details` is true. :rtype: PaperContentArchiveDetails """ if not self.is_paper_content_archive_details(): raise AttributeError("tag 'paper_content_archive_details' not set") return self._value def get_paper_content_create_details(self): """ Only call this if :meth:`is_paper_content_create_details` is true. :rtype: PaperContentCreateDetails """ if not self.is_paper_content_create_details(): raise AttributeError("tag 'paper_content_create_details' not set") return self._value def get_paper_content_permanently_delete_details(self): """ Only call this if :meth:`is_paper_content_permanently_delete_details` is true. :rtype: PaperContentPermanentlyDeleteDetails """ if not self.is_paper_content_permanently_delete_details(): raise AttributeError("tag 'paper_content_permanently_delete_details' not set") return self._value def get_paper_content_remove_from_folder_details(self): """ Only call this if :meth:`is_paper_content_remove_from_folder_details` is true. :rtype: PaperContentRemoveFromFolderDetails """ if not self.is_paper_content_remove_from_folder_details(): raise AttributeError("tag 'paper_content_remove_from_folder_details' not set") return self._value def get_paper_content_remove_member_details(self): """ Only call this if :meth:`is_paper_content_remove_member_details` is true. :rtype: PaperContentRemoveMemberDetails """ if not self.is_paper_content_remove_member_details(): raise AttributeError("tag 'paper_content_remove_member_details' not set") return self._value def get_paper_content_rename_details(self): """ Only call this if :meth:`is_paper_content_rename_details` is true. :rtype: PaperContentRenameDetails """ if not self.is_paper_content_rename_details(): raise AttributeError("tag 'paper_content_rename_details' not set") return self._value def get_paper_content_restore_details(self): """ Only call this if :meth:`is_paper_content_restore_details` is true. :rtype: PaperContentRestoreDetails """ if not self.is_paper_content_restore_details(): raise AttributeError("tag 'paper_content_restore_details' not set") return self._value def get_paper_doc_add_comment_details(self): """ Only call this if :meth:`is_paper_doc_add_comment_details` is true. :rtype: PaperDocAddCommentDetails """ if not self.is_paper_doc_add_comment_details(): raise AttributeError("tag 'paper_doc_add_comment_details' not set") return self._value def get_paper_doc_change_member_role_details(self): """ Only call this if :meth:`is_paper_doc_change_member_role_details` is true. :rtype: PaperDocChangeMemberRoleDetails """ if not self.is_paper_doc_change_member_role_details(): raise AttributeError("tag 'paper_doc_change_member_role_details' not set") return self._value def get_paper_doc_change_sharing_policy_details(self): """ Only call this if :meth:`is_paper_doc_change_sharing_policy_details` is true. :rtype: PaperDocChangeSharingPolicyDetails """ if not self.is_paper_doc_change_sharing_policy_details(): raise AttributeError("tag 'paper_doc_change_sharing_policy_details' not set") return self._value def get_paper_doc_change_subscription_details(self): """ Only call this if :meth:`is_paper_doc_change_subscription_details` is true. :rtype: PaperDocChangeSubscriptionDetails """ if not self.is_paper_doc_change_subscription_details(): raise AttributeError("tag 'paper_doc_change_subscription_details' not set") return self._value def get_paper_doc_deleted_details(self): """ Only call this if :meth:`is_paper_doc_deleted_details` is true. :rtype: PaperDocDeletedDetails """ if not self.is_paper_doc_deleted_details(): raise AttributeError("tag 'paper_doc_deleted_details' not set") return self._value def get_paper_doc_delete_comment_details(self): """ Only call this if :meth:`is_paper_doc_delete_comment_details` is true. :rtype: PaperDocDeleteCommentDetails """ if not self.is_paper_doc_delete_comment_details(): raise AttributeError("tag 'paper_doc_delete_comment_details' not set") return self._value def get_paper_doc_download_details(self): """ Only call this if :meth:`is_paper_doc_download_details` is true. :rtype: PaperDocDownloadDetails """ if not self.is_paper_doc_download_details(): raise AttributeError("tag 'paper_doc_download_details' not set") return self._value def get_paper_doc_edit_details(self): """ Only call this if :meth:`is_paper_doc_edit_details` is true. :rtype: PaperDocEditDetails """ if not self.is_paper_doc_edit_details(): raise AttributeError("tag 'paper_doc_edit_details' not set") return self._value def get_paper_doc_edit_comment_details(self): """ Only call this if :meth:`is_paper_doc_edit_comment_details` is true. :rtype: PaperDocEditCommentDetails """ if not self.is_paper_doc_edit_comment_details(): raise AttributeError("tag 'paper_doc_edit_comment_details' not set") return self._value def get_paper_doc_followed_details(self): """ Only call this if :meth:`is_paper_doc_followed_details` is true. :rtype: PaperDocFollowedDetails """ if not self.is_paper_doc_followed_details(): raise AttributeError("tag 'paper_doc_followed_details' not set") return self._value def get_paper_doc_mention_details(self): """ Only call this if :meth:`is_paper_doc_mention_details` is true. :rtype: PaperDocMentionDetails """ if not self.is_paper_doc_mention_details(): raise AttributeError("tag 'paper_doc_mention_details' not set") return self._value def get_paper_doc_ownership_changed_details(self): """ Only call this if :meth:`is_paper_doc_ownership_changed_details` is true. :rtype: PaperDocOwnershipChangedDetails """ if not self.is_paper_doc_ownership_changed_details(): raise AttributeError("tag 'paper_doc_ownership_changed_details' not set") return self._value def get_paper_doc_request_access_details(self): """ Only call this if :meth:`is_paper_doc_request_access_details` is true. :rtype: PaperDocRequestAccessDetails """ if not self.is_paper_doc_request_access_details(): raise AttributeError("tag 'paper_doc_request_access_details' not set") return self._value def get_paper_doc_resolve_comment_details(self): """ Only call this if :meth:`is_paper_doc_resolve_comment_details` is true. :rtype: PaperDocResolveCommentDetails """ if not self.is_paper_doc_resolve_comment_details(): raise AttributeError("tag 'paper_doc_resolve_comment_details' not set") return self._value def get_paper_doc_revert_details(self): """ Only call this if :meth:`is_paper_doc_revert_details` is true. :rtype: PaperDocRevertDetails """ if not self.is_paper_doc_revert_details(): raise AttributeError("tag 'paper_doc_revert_details' not set") return self._value def get_paper_doc_slack_share_details(self): """ Only call this if :meth:`is_paper_doc_slack_share_details` is true. :rtype: PaperDocSlackShareDetails """ if not self.is_paper_doc_slack_share_details(): raise AttributeError("tag 'paper_doc_slack_share_details' not set") return self._value def get_paper_doc_team_invite_details(self): """ Only call this if :meth:`is_paper_doc_team_invite_details` is true. :rtype: PaperDocTeamInviteDetails """ if not self.is_paper_doc_team_invite_details(): raise AttributeError("tag 'paper_doc_team_invite_details' not set") return self._value def get_paper_doc_trashed_details(self): """ Only call this if :meth:`is_paper_doc_trashed_details` is true. :rtype: PaperDocTrashedDetails """ if not self.is_paper_doc_trashed_details(): raise AttributeError("tag 'paper_doc_trashed_details' not set") return self._value def get_paper_doc_unresolve_comment_details(self): """ Only call this if :meth:`is_paper_doc_unresolve_comment_details` is true. :rtype: PaperDocUnresolveCommentDetails """ if not self.is_paper_doc_unresolve_comment_details(): raise AttributeError("tag 'paper_doc_unresolve_comment_details' not set") return self._value def get_paper_doc_untrashed_details(self): """ Only call this if :meth:`is_paper_doc_untrashed_details` is true. :rtype: PaperDocUntrashedDetails """ if not self.is_paper_doc_untrashed_details(): raise AttributeError("tag 'paper_doc_untrashed_details' not set") return self._value def get_paper_doc_view_details(self): """ Only call this if :meth:`is_paper_doc_view_details` is true. :rtype: PaperDocViewDetails """ if not self.is_paper_doc_view_details(): raise AttributeError("tag 'paper_doc_view_details' not set") return self._value def get_paper_external_view_allow_details(self): """ Only call this if :meth:`is_paper_external_view_allow_details` is true. :rtype: PaperExternalViewAllowDetails """ if not self.is_paper_external_view_allow_details(): raise AttributeError("tag 'paper_external_view_allow_details' not set") return self._value def get_paper_external_view_default_team_details(self): """ Only call this if :meth:`is_paper_external_view_default_team_details` is true. :rtype: PaperExternalViewDefaultTeamDetails """ if not self.is_paper_external_view_default_team_details(): raise AttributeError("tag 'paper_external_view_default_team_details' not set") return self._value def get_paper_external_view_forbid_details(self): """ Only call this if :meth:`is_paper_external_view_forbid_details` is true. :rtype: PaperExternalViewForbidDetails """ if not self.is_paper_external_view_forbid_details(): raise AttributeError("tag 'paper_external_view_forbid_details' not set") return self._value def get_paper_folder_change_subscription_details(self): """ Only call this if :meth:`is_paper_folder_change_subscription_details` is true. :rtype: PaperFolderChangeSubscriptionDetails """ if not self.is_paper_folder_change_subscription_details(): raise AttributeError("tag 'paper_folder_change_subscription_details' not set") return self._value def get_paper_folder_deleted_details(self): """ Only call this if :meth:`is_paper_folder_deleted_details` is true. :rtype: PaperFolderDeletedDetails """ if not self.is_paper_folder_deleted_details(): raise AttributeError("tag 'paper_folder_deleted_details' not set") return self._value def get_paper_folder_followed_details(self): """ Only call this if :meth:`is_paper_folder_followed_details` is true. :rtype: PaperFolderFollowedDetails """ if not self.is_paper_folder_followed_details(): raise AttributeError("tag 'paper_folder_followed_details' not set") return self._value def get_paper_folder_team_invite_details(self): """ Only call this if :meth:`is_paper_folder_team_invite_details` is true. :rtype: PaperFolderTeamInviteDetails """ if not self.is_paper_folder_team_invite_details(): raise AttributeError("tag 'paper_folder_team_invite_details' not set") return self._value def get_paper_published_link_change_permission_details(self): """ Only call this if :meth:`is_paper_published_link_change_permission_details` is true. :rtype: PaperPublishedLinkChangePermissionDetails """ if not self.is_paper_published_link_change_permission_details(): raise AttributeError("tag 'paper_published_link_change_permission_details' not set") return self._value def get_paper_published_link_create_details(self): """ Only call this if :meth:`is_paper_published_link_create_details` is true. :rtype: PaperPublishedLinkCreateDetails """ if not self.is_paper_published_link_create_details(): raise AttributeError("tag 'paper_published_link_create_details' not set") return self._value def get_paper_published_link_disabled_details(self): """ Only call this if :meth:`is_paper_published_link_disabled_details` is true. :rtype: PaperPublishedLinkDisabledDetails """ if not self.is_paper_published_link_disabled_details(): raise AttributeError("tag 'paper_published_link_disabled_details' not set") return self._value def get_paper_published_link_view_details(self): """ Only call this if :meth:`is_paper_published_link_view_details` is true. :rtype: PaperPublishedLinkViewDetails """ if not self.is_paper_published_link_view_details(): raise AttributeError("tag 'paper_published_link_view_details' not set") return self._value def get_password_change_details(self): """ Only call this if :meth:`is_password_change_details` is true. :rtype: PasswordChangeDetails """ if not self.is_password_change_details(): raise AttributeError("tag 'password_change_details' not set") return self._value def get_password_reset_details(self): """ Only call this if :meth:`is_password_reset_details` is true. :rtype: PasswordResetDetails """ if not self.is_password_reset_details(): raise AttributeError("tag 'password_reset_details' not set") return self._value def get_password_reset_all_details(self): """ Only call this if :meth:`is_password_reset_all_details` is true. :rtype: PasswordResetAllDetails """ if not self.is_password_reset_all_details(): raise AttributeError("tag 'password_reset_all_details' not set") return self._value def get_classification_create_report_details(self): """ Only call this if :meth:`is_classification_create_report_details` is true. :rtype: ClassificationCreateReportDetails """ if not self.is_classification_create_report_details(): raise AttributeError("tag 'classification_create_report_details' not set") return self._value def get_classification_create_report_fail_details(self): """ Only call this if :meth:`is_classification_create_report_fail_details` is true. :rtype: ClassificationCreateReportFailDetails """ if not self.is_classification_create_report_fail_details(): raise AttributeError("tag 'classification_create_report_fail_details' not set") return self._value def get_emm_create_exceptions_report_details(self): """ Only call this if :meth:`is_emm_create_exceptions_report_details` is true. :rtype: EmmCreateExceptionsReportDetails """ if not self.is_emm_create_exceptions_report_details(): raise AttributeError("tag 'emm_create_exceptions_report_details' not set") return self._value def get_emm_create_usage_report_details(self): """ Only call this if :meth:`is_emm_create_usage_report_details` is true. :rtype: EmmCreateUsageReportDetails """ if not self.is_emm_create_usage_report_details(): raise AttributeError("tag 'emm_create_usage_report_details' not set") return self._value def get_export_members_report_details(self): """ Only call this if :meth:`is_export_members_report_details` is true. :rtype: ExportMembersReportDetails """ if not self.is_export_members_report_details(): raise AttributeError("tag 'export_members_report_details' not set") return self._value def get_export_members_report_fail_details(self): """ Only call this if :meth:`is_export_members_report_fail_details` is true. :rtype: ExportMembersReportFailDetails """ if not self.is_export_members_report_fail_details(): raise AttributeError("tag 'export_members_report_fail_details' not set") return self._value def get_external_sharing_create_report_details(self): """ Only call this if :meth:`is_external_sharing_create_report_details` is true. :rtype: ExternalSharingCreateReportDetails """ if not self.is_external_sharing_create_report_details(): raise AttributeError("tag 'external_sharing_create_report_details' not set") return self._value def get_external_sharing_report_failed_details(self): """ Only call this if :meth:`is_external_sharing_report_failed_details` is true. :rtype: ExternalSharingReportFailedDetails """ if not self.is_external_sharing_report_failed_details(): raise AttributeError("tag 'external_sharing_report_failed_details' not set") return self._value def get_no_expiration_link_gen_create_report_details(self): """ Only call this if :meth:`is_no_expiration_link_gen_create_report_details` is true. :rtype: NoExpirationLinkGenCreateReportDetails """ if not self.is_no_expiration_link_gen_create_report_details(): raise AttributeError("tag 'no_expiration_link_gen_create_report_details' not set") return self._value def get_no_expiration_link_gen_report_failed_details(self): """ Only call this if :meth:`is_no_expiration_link_gen_report_failed_details` is true. :rtype: NoExpirationLinkGenReportFailedDetails """ if not self.is_no_expiration_link_gen_report_failed_details(): raise AttributeError("tag 'no_expiration_link_gen_report_failed_details' not set") return self._value def get_no_password_link_gen_create_report_details(self): """ Only call this if :meth:`is_no_password_link_gen_create_report_details` is true. :rtype: NoPasswordLinkGenCreateReportDetails """ if not self.is_no_password_link_gen_create_report_details(): raise AttributeError("tag 'no_password_link_gen_create_report_details' not set") return self._value def get_no_password_link_gen_report_failed_details(self): """ Only call this if :meth:`is_no_password_link_gen_report_failed_details` is true. :rtype: NoPasswordLinkGenReportFailedDetails """ if not self.is_no_password_link_gen_report_failed_details(): raise AttributeError("tag 'no_password_link_gen_report_failed_details' not set") return self._value def get_no_password_link_view_create_report_details(self): """ Only call this if :meth:`is_no_password_link_view_create_report_details` is true. :rtype: NoPasswordLinkViewCreateReportDetails """ if not self.is_no_password_link_view_create_report_details(): raise AttributeError("tag 'no_password_link_view_create_report_details' not set") return self._value def get_no_password_link_view_report_failed_details(self): """ Only call this if :meth:`is_no_password_link_view_report_failed_details` is true. :rtype: NoPasswordLinkViewReportFailedDetails """ if not self.is_no_password_link_view_report_failed_details(): raise AttributeError("tag 'no_password_link_view_report_failed_details' not set") return self._value def get_outdated_link_view_create_report_details(self): """ Only call this if :meth:`is_outdated_link_view_create_report_details` is true. :rtype: OutdatedLinkViewCreateReportDetails """ if not self.is_outdated_link_view_create_report_details(): raise AttributeError("tag 'outdated_link_view_create_report_details' not set") return self._value def get_outdated_link_view_report_failed_details(self): """ Only call this if :meth:`is_outdated_link_view_report_failed_details` is true. :rtype: OutdatedLinkViewReportFailedDetails """ if not self.is_outdated_link_view_report_failed_details(): raise AttributeError("tag 'outdated_link_view_report_failed_details' not set") return self._value def get_paper_admin_export_start_details(self): """ Only call this if :meth:`is_paper_admin_export_start_details` is true. :rtype: PaperAdminExportStartDetails """ if not self.is_paper_admin_export_start_details(): raise AttributeError("tag 'paper_admin_export_start_details' not set") return self._value def get_ransomware_alert_create_report_details(self): """ Only call this if :meth:`is_ransomware_alert_create_report_details` is true. :rtype: RansomwareAlertCreateReportDetails """ if not self.is_ransomware_alert_create_report_details(): raise AttributeError("tag 'ransomware_alert_create_report_details' not set") return self._value def get_ransomware_alert_create_report_failed_details(self): """ Only call this if :meth:`is_ransomware_alert_create_report_failed_details` is true. :rtype: RansomwareAlertCreateReportFailedDetails """ if not self.is_ransomware_alert_create_report_failed_details(): raise AttributeError("tag 'ransomware_alert_create_report_failed_details' not set") return self._value def get_smart_sync_create_admin_privilege_report_details(self): """ Only call this if :meth:`is_smart_sync_create_admin_privilege_report_details` is true. :rtype: SmartSyncCreateAdminPrivilegeReportDetails """ if not self.is_smart_sync_create_admin_privilege_report_details(): raise AttributeError("tag 'smart_sync_create_admin_privilege_report_details' not set") return self._value def get_team_activity_create_report_details(self): """ Only call this if :meth:`is_team_activity_create_report_details` is true. :rtype: TeamActivityCreateReportDetails """ if not self.is_team_activity_create_report_details(): raise AttributeError("tag 'team_activity_create_report_details' not set") return self._value def get_team_activity_create_report_fail_details(self): """ Only call this if :meth:`is_team_activity_create_report_fail_details` is true. :rtype: TeamActivityCreateReportFailDetails """ if not self.is_team_activity_create_report_fail_details(): raise AttributeError("tag 'team_activity_create_report_fail_details' not set") return self._value def get_collection_share_details(self): """ Only call this if :meth:`is_collection_share_details` is true. :rtype: CollectionShareDetails """ if not self.is_collection_share_details(): raise AttributeError("tag 'collection_share_details' not set") return self._value def get_file_transfers_file_add_details(self): """ Only call this if :meth:`is_file_transfers_file_add_details` is true. :rtype: FileTransfersFileAddDetails """ if not self.is_file_transfers_file_add_details(): raise AttributeError("tag 'file_transfers_file_add_details' not set") return self._value def get_file_transfers_transfer_delete_details(self): """ Only call this if :meth:`is_file_transfers_transfer_delete_details` is true. :rtype: FileTransfersTransferDeleteDetails """ if not self.is_file_transfers_transfer_delete_details(): raise AttributeError("tag 'file_transfers_transfer_delete_details' not set") return self._value def get_file_transfers_transfer_download_details(self): """ Only call this if :meth:`is_file_transfers_transfer_download_details` is true. :rtype: FileTransfersTransferDownloadDetails """ if not self.is_file_transfers_transfer_download_details(): raise AttributeError("tag 'file_transfers_transfer_download_details' not set") return self._value def get_file_transfers_transfer_send_details(self): """ Only call this if :meth:`is_file_transfers_transfer_send_details` is true. :rtype: FileTransfersTransferSendDetails """ if not self.is_file_transfers_transfer_send_details(): raise AttributeError("tag 'file_transfers_transfer_send_details' not set") return self._value def get_file_transfers_transfer_view_details(self): """ Only call this if :meth:`is_file_transfers_transfer_view_details` is true. :rtype: FileTransfersTransferViewDetails """ if not self.is_file_transfers_transfer_view_details(): raise AttributeError("tag 'file_transfers_transfer_view_details' not set") return self._value def get_note_acl_invite_only_details(self): """ Only call this if :meth:`is_note_acl_invite_only_details` is true. :rtype: NoteAclInviteOnlyDetails """ if not self.is_note_acl_invite_only_details(): raise AttributeError("tag 'note_acl_invite_only_details' not set") return self._value def get_note_acl_link_details(self): """ Only call this if :meth:`is_note_acl_link_details` is true. :rtype: NoteAclLinkDetails """ if not self.is_note_acl_link_details(): raise AttributeError("tag 'note_acl_link_details' not set") return self._value def get_note_acl_team_link_details(self): """ Only call this if :meth:`is_note_acl_team_link_details` is true. :rtype: NoteAclTeamLinkDetails """ if not self.is_note_acl_team_link_details(): raise AttributeError("tag 'note_acl_team_link_details' not set") return self._value def get_note_shared_details(self): """ Only call this if :meth:`is_note_shared_details` is true. :rtype: NoteSharedDetails """ if not self.is_note_shared_details(): raise AttributeError("tag 'note_shared_details' not set") return self._value def get_note_share_receive_details(self): """ Only call this if :meth:`is_note_share_receive_details` is true. :rtype: NoteShareReceiveDetails """ if not self.is_note_share_receive_details(): raise AttributeError("tag 'note_share_receive_details' not set") return self._value def get_open_note_shared_details(self): """ Only call this if :meth:`is_open_note_shared_details` is true. :rtype: OpenNoteSharedDetails """ if not self.is_open_note_shared_details(): raise AttributeError("tag 'open_note_shared_details' not set") return self._value def get_replay_file_shared_link_created_details(self): """ Only call this if :meth:`is_replay_file_shared_link_created_details` is true. :rtype: ReplayFileSharedLinkCreatedDetails """ if not self.is_replay_file_shared_link_created_details(): raise AttributeError("tag 'replay_file_shared_link_created_details' not set") return self._value def get_replay_file_shared_link_modified_details(self): """ Only call this if :meth:`is_replay_file_shared_link_modified_details` is true. :rtype: ReplayFileSharedLinkModifiedDetails """ if not self.is_replay_file_shared_link_modified_details(): raise AttributeError("tag 'replay_file_shared_link_modified_details' not set") return self._value def get_replay_project_team_add_details(self): """ Only call this if :meth:`is_replay_project_team_add_details` is true. :rtype: ReplayProjectTeamAddDetails """ if not self.is_replay_project_team_add_details(): raise AttributeError("tag 'replay_project_team_add_details' not set") return self._value def get_replay_project_team_delete_details(self): """ Only call this if :meth:`is_replay_project_team_delete_details` is true. :rtype: ReplayProjectTeamDeleteDetails """ if not self.is_replay_project_team_delete_details(): raise AttributeError("tag 'replay_project_team_delete_details' not set") return self._value def get_sf_add_group_details(self): """ Only call this if :meth:`is_sf_add_group_details` is true. :rtype: SfAddGroupDetails """ if not self.is_sf_add_group_details(): raise AttributeError("tag 'sf_add_group_details' not set") return self._value def get_sf_allow_non_members_to_view_shared_links_details(self): """ Only call this if :meth:`is_sf_allow_non_members_to_view_shared_links_details` is true. :rtype: SfAllowNonMembersToViewSharedLinksDetails """ if not self.is_sf_allow_non_members_to_view_shared_links_details(): raise AttributeError("tag 'sf_allow_non_members_to_view_shared_links_details' not set") return self._value def get_sf_external_invite_warn_details(self): """ Only call this if :meth:`is_sf_external_invite_warn_details` is true. :rtype: SfExternalInviteWarnDetails """ if not self.is_sf_external_invite_warn_details(): raise AttributeError("tag 'sf_external_invite_warn_details' not set") return self._value def get_sf_fb_invite_details(self): """ Only call this if :meth:`is_sf_fb_invite_details` is true. :rtype: SfFbInviteDetails """ if not self.is_sf_fb_invite_details(): raise AttributeError("tag 'sf_fb_invite_details' not set") return self._value def get_sf_fb_invite_change_role_details(self): """ Only call this if :meth:`is_sf_fb_invite_change_role_details` is true. :rtype: SfFbInviteChangeRoleDetails """ if not self.is_sf_fb_invite_change_role_details(): raise AttributeError("tag 'sf_fb_invite_change_role_details' not set") return self._value def get_sf_fb_uninvite_details(self): """ Only call this if :meth:`is_sf_fb_uninvite_details` is true. :rtype: SfFbUninviteDetails """ if not self.is_sf_fb_uninvite_details(): raise AttributeError("tag 'sf_fb_uninvite_details' not set") return self._value def get_sf_invite_group_details(self): """ Only call this if :meth:`is_sf_invite_group_details` is true. :rtype: SfInviteGroupDetails """ if not self.is_sf_invite_group_details(): raise AttributeError("tag 'sf_invite_group_details' not set") return self._value def get_sf_team_grant_access_details(self): """ Only call this if :meth:`is_sf_team_grant_access_details` is true. :rtype: SfTeamGrantAccessDetails """ if not self.is_sf_team_grant_access_details(): raise AttributeError("tag 'sf_team_grant_access_details' not set") return self._value def get_sf_team_invite_details(self): """ Only call this if :meth:`is_sf_team_invite_details` is true. :rtype: SfTeamInviteDetails """ if not self.is_sf_team_invite_details(): raise AttributeError("tag 'sf_team_invite_details' not set") return self._value def get_sf_team_invite_change_role_details(self): """ Only call this if :meth:`is_sf_team_invite_change_role_details` is true. :rtype: SfTeamInviteChangeRoleDetails """ if not self.is_sf_team_invite_change_role_details(): raise AttributeError("tag 'sf_team_invite_change_role_details' not set") return self._value def get_sf_team_join_details(self): """ Only call this if :meth:`is_sf_team_join_details` is true. :rtype: SfTeamJoinDetails """ if not self.is_sf_team_join_details(): raise AttributeError("tag 'sf_team_join_details' not set") return self._value def get_sf_team_join_from_oob_link_details(self): """ Only call this if :meth:`is_sf_team_join_from_oob_link_details` is true. :rtype: SfTeamJoinFromOobLinkDetails """ if not self.is_sf_team_join_from_oob_link_details(): raise AttributeError("tag 'sf_team_join_from_oob_link_details' not set") return self._value def get_sf_team_uninvite_details(self): """ Only call this if :meth:`is_sf_team_uninvite_details` is true. :rtype: SfTeamUninviteDetails """ if not self.is_sf_team_uninvite_details(): raise AttributeError("tag 'sf_team_uninvite_details' not set") return self._value def get_shared_content_add_invitees_details(self): """ Only call this if :meth:`is_shared_content_add_invitees_details` is true. :rtype: SharedContentAddInviteesDetails """ if not self.is_shared_content_add_invitees_details(): raise AttributeError("tag 'shared_content_add_invitees_details' not set") return self._value def get_shared_content_add_link_expiry_details(self): """ Only call this if :meth:`is_shared_content_add_link_expiry_details` is true. :rtype: SharedContentAddLinkExpiryDetails """ if not self.is_shared_content_add_link_expiry_details(): raise AttributeError("tag 'shared_content_add_link_expiry_details' not set") return self._value def get_shared_content_add_link_password_details(self): """ Only call this if :meth:`is_shared_content_add_link_password_details` is true. :rtype: SharedContentAddLinkPasswordDetails """ if not self.is_shared_content_add_link_password_details(): raise AttributeError("tag 'shared_content_add_link_password_details' not set") return self._value def get_shared_content_add_member_details(self): """ Only call this if :meth:`is_shared_content_add_member_details` is true. :rtype: SharedContentAddMemberDetails """ if not self.is_shared_content_add_member_details(): raise AttributeError("tag 'shared_content_add_member_details' not set") return self._value def get_shared_content_change_downloads_policy_details(self): """ Only call this if :meth:`is_shared_content_change_downloads_policy_details` is true. :rtype: SharedContentChangeDownloadsPolicyDetails """ if not self.is_shared_content_change_downloads_policy_details(): raise AttributeError("tag 'shared_content_change_downloads_policy_details' not set") return self._value def get_shared_content_change_invitee_role_details(self): """ Only call this if :meth:`is_shared_content_change_invitee_role_details` is true. :rtype: SharedContentChangeInviteeRoleDetails """ if not self.is_shared_content_change_invitee_role_details(): raise AttributeError("tag 'shared_content_change_invitee_role_details' not set") return self._value def get_shared_content_change_link_audience_details(self): """ Only call this if :meth:`is_shared_content_change_link_audience_details` is true. :rtype: SharedContentChangeLinkAudienceDetails """ if not self.is_shared_content_change_link_audience_details(): raise AttributeError("tag 'shared_content_change_link_audience_details' not set") return self._value def get_shared_content_change_link_expiry_details(self): """ Only call this if :meth:`is_shared_content_change_link_expiry_details` is true. :rtype: SharedContentChangeLinkExpiryDetails """ if not self.is_shared_content_change_link_expiry_details(): raise AttributeError("tag 'shared_content_change_link_expiry_details' not set") return self._value def get_shared_content_change_link_password_details(self): """ Only call this if :meth:`is_shared_content_change_link_password_details` is true. :rtype: SharedContentChangeLinkPasswordDetails """ if not self.is_shared_content_change_link_password_details(): raise AttributeError("tag 'shared_content_change_link_password_details' not set") return self._value def get_shared_content_change_member_role_details(self): """ Only call this if :meth:`is_shared_content_change_member_role_details` is true. :rtype: SharedContentChangeMemberRoleDetails """ if not self.is_shared_content_change_member_role_details(): raise AttributeError("tag 'shared_content_change_member_role_details' not set") return self._value def get_shared_content_change_viewer_info_policy_details(self): """ Only call this if :meth:`is_shared_content_change_viewer_info_policy_details` is true. :rtype: SharedContentChangeViewerInfoPolicyDetails """ if not self.is_shared_content_change_viewer_info_policy_details(): raise AttributeError("tag 'shared_content_change_viewer_info_policy_details' not set") return self._value def get_shared_content_claim_invitation_details(self): """ Only call this if :meth:`is_shared_content_claim_invitation_details` is true. :rtype: SharedContentClaimInvitationDetails """ if not self.is_shared_content_claim_invitation_details(): raise AttributeError("tag 'shared_content_claim_invitation_details' not set") return self._value def get_shared_content_copy_details(self): """ Only call this if :meth:`is_shared_content_copy_details` is true. :rtype: SharedContentCopyDetails """ if not self.is_shared_content_copy_details(): raise AttributeError("tag 'shared_content_copy_details' not set") return self._value def get_shared_content_download_details(self): """ Only call this if :meth:`is_shared_content_download_details` is true. :rtype: SharedContentDownloadDetails """ if not self.is_shared_content_download_details(): raise AttributeError("tag 'shared_content_download_details' not set") return self._value def get_shared_content_relinquish_membership_details(self): """ Only call this if :meth:`is_shared_content_relinquish_membership_details` is true. :rtype: SharedContentRelinquishMembershipDetails """ if not self.is_shared_content_relinquish_membership_details(): raise AttributeError("tag 'shared_content_relinquish_membership_details' not set") return self._value def get_shared_content_remove_invitees_details(self): """ Only call this if :meth:`is_shared_content_remove_invitees_details` is true. :rtype: SharedContentRemoveInviteesDetails """ if not self.is_shared_content_remove_invitees_details(): raise AttributeError("tag 'shared_content_remove_invitees_details' not set") return self._value def get_shared_content_remove_link_expiry_details(self): """ Only call this if :meth:`is_shared_content_remove_link_expiry_details` is true. :rtype: SharedContentRemoveLinkExpiryDetails """ if not self.is_shared_content_remove_link_expiry_details(): raise AttributeError("tag 'shared_content_remove_link_expiry_details' not set") return self._value def get_shared_content_remove_link_password_details(self): """ Only call this if :meth:`is_shared_content_remove_link_password_details` is true. :rtype: SharedContentRemoveLinkPasswordDetails """ if not self.is_shared_content_remove_link_password_details(): raise AttributeError("tag 'shared_content_remove_link_password_details' not set") return self._value def get_shared_content_remove_member_details(self): """ Only call this if :meth:`is_shared_content_remove_member_details` is true. :rtype: SharedContentRemoveMemberDetails """ if not self.is_shared_content_remove_member_details(): raise AttributeError("tag 'shared_content_remove_member_details' not set") return self._value def get_shared_content_request_access_details(self): """ Only call this if :meth:`is_shared_content_request_access_details` is true. :rtype: SharedContentRequestAccessDetails """ if not self.is_shared_content_request_access_details(): raise AttributeError("tag 'shared_content_request_access_details' not set") return self._value def get_shared_content_restore_invitees_details(self): """ Only call this if :meth:`is_shared_content_restore_invitees_details` is true. :rtype: SharedContentRestoreInviteesDetails """ if not self.is_shared_content_restore_invitees_details(): raise AttributeError("tag 'shared_content_restore_invitees_details' not set") return self._value def get_shared_content_restore_member_details(self): """ Only call this if :meth:`is_shared_content_restore_member_details` is true. :rtype: SharedContentRestoreMemberDetails """ if not self.is_shared_content_restore_member_details(): raise AttributeError("tag 'shared_content_restore_member_details' not set") return self._value def get_shared_content_unshare_details(self): """ Only call this if :meth:`is_shared_content_unshare_details` is true. :rtype: SharedContentUnshareDetails """ if not self.is_shared_content_unshare_details(): raise AttributeError("tag 'shared_content_unshare_details' not set") return self._value def get_shared_content_view_details(self): """ Only call this if :meth:`is_shared_content_view_details` is true. :rtype: SharedContentViewDetails """ if not self.is_shared_content_view_details(): raise AttributeError("tag 'shared_content_view_details' not set") return self._value def get_shared_folder_change_link_policy_details(self): """ Only call this if :meth:`is_shared_folder_change_link_policy_details` is true. :rtype: SharedFolderChangeLinkPolicyDetails """ if not self.is_shared_folder_change_link_policy_details(): raise AttributeError("tag 'shared_folder_change_link_policy_details' not set") return self._value def get_shared_folder_change_members_inheritance_policy_details(self): """ Only call this if :meth:`is_shared_folder_change_members_inheritance_policy_details` is true. :rtype: SharedFolderChangeMembersInheritancePolicyDetails """ if not self.is_shared_folder_change_members_inheritance_policy_details(): raise AttributeError("tag 'shared_folder_change_members_inheritance_policy_details' not set") return self._value def get_shared_folder_change_members_management_policy_details(self): """ Only call this if :meth:`is_shared_folder_change_members_management_policy_details` is true. :rtype: SharedFolderChangeMembersManagementPolicyDetails """ if not self.is_shared_folder_change_members_management_policy_details(): raise AttributeError("tag 'shared_folder_change_members_management_policy_details' not set") return self._value def get_shared_folder_change_members_policy_details(self): """ Only call this if :meth:`is_shared_folder_change_members_policy_details` is true. :rtype: SharedFolderChangeMembersPolicyDetails """ if not self.is_shared_folder_change_members_policy_details(): raise AttributeError("tag 'shared_folder_change_members_policy_details' not set") return self._value def get_shared_folder_create_details(self): """ Only call this if :meth:`is_shared_folder_create_details` is true. :rtype: SharedFolderCreateDetails """ if not self.is_shared_folder_create_details(): raise AttributeError("tag 'shared_folder_create_details' not set") return self._value def get_shared_folder_decline_invitation_details(self): """ Only call this if :meth:`is_shared_folder_decline_invitation_details` is true. :rtype: SharedFolderDeclineInvitationDetails """ if not self.is_shared_folder_decline_invitation_details(): raise AttributeError("tag 'shared_folder_decline_invitation_details' not set") return self._value def get_shared_folder_mount_details(self): """ Only call this if :meth:`is_shared_folder_mount_details` is true. :rtype: SharedFolderMountDetails """ if not self.is_shared_folder_mount_details(): raise AttributeError("tag 'shared_folder_mount_details' not set") return self._value def get_shared_folder_nest_details(self): """ Only call this if :meth:`is_shared_folder_nest_details` is true. :rtype: SharedFolderNestDetails """ if not self.is_shared_folder_nest_details(): raise AttributeError("tag 'shared_folder_nest_details' not set") return self._value def get_shared_folder_transfer_ownership_details(self): """ Only call this if :meth:`is_shared_folder_transfer_ownership_details` is true. :rtype: SharedFolderTransferOwnershipDetails """ if not self.is_shared_folder_transfer_ownership_details(): raise AttributeError("tag 'shared_folder_transfer_ownership_details' not set") return self._value def get_shared_folder_unmount_details(self): """ Only call this if :meth:`is_shared_folder_unmount_details` is true. :rtype: SharedFolderUnmountDetails """ if not self.is_shared_folder_unmount_details(): raise AttributeError("tag 'shared_folder_unmount_details' not set") return self._value def get_shared_link_add_expiry_details(self): """ Only call this if :meth:`is_shared_link_add_expiry_details` is true. :rtype: SharedLinkAddExpiryDetails """ if not self.is_shared_link_add_expiry_details(): raise AttributeError("tag 'shared_link_add_expiry_details' not set") return self._value def get_shared_link_change_expiry_details(self): """ Only call this if :meth:`is_shared_link_change_expiry_details` is true. :rtype: SharedLinkChangeExpiryDetails """ if not self.is_shared_link_change_expiry_details(): raise AttributeError("tag 'shared_link_change_expiry_details' not set") return self._value def get_shared_link_change_visibility_details(self): """ Only call this if :meth:`is_shared_link_change_visibility_details` is true. :rtype: SharedLinkChangeVisibilityDetails """ if not self.is_shared_link_change_visibility_details(): raise AttributeError("tag 'shared_link_change_visibility_details' not set") return self._value def get_shared_link_copy_details(self): """ Only call this if :meth:`is_shared_link_copy_details` is true. :rtype: SharedLinkCopyDetails """ if not self.is_shared_link_copy_details(): raise AttributeError("tag 'shared_link_copy_details' not set") return self._value def get_shared_link_create_details(self): """ Only call this if :meth:`is_shared_link_create_details` is true. :rtype: SharedLinkCreateDetails """ if not self.is_shared_link_create_details(): raise AttributeError("tag 'shared_link_create_details' not set") return self._value def get_shared_link_disable_details(self): """ Only call this if :meth:`is_shared_link_disable_details` is true. :rtype: SharedLinkDisableDetails """ if not self.is_shared_link_disable_details(): raise AttributeError("tag 'shared_link_disable_details' not set") return self._value def get_shared_link_download_details(self): """ Only call this if :meth:`is_shared_link_download_details` is true. :rtype: SharedLinkDownloadDetails """ if not self.is_shared_link_download_details(): raise AttributeError("tag 'shared_link_download_details' not set") return self._value def get_shared_link_remove_expiry_details(self): """ Only call this if :meth:`is_shared_link_remove_expiry_details` is true. :rtype: SharedLinkRemoveExpiryDetails """ if not self.is_shared_link_remove_expiry_details(): raise AttributeError("tag 'shared_link_remove_expiry_details' not set") return self._value def get_shared_link_settings_add_expiration_details(self): """ Only call this if :meth:`is_shared_link_settings_add_expiration_details` is true. :rtype: SharedLinkSettingsAddExpirationDetails """ if not self.is_shared_link_settings_add_expiration_details(): raise AttributeError("tag 'shared_link_settings_add_expiration_details' not set") return self._value def get_shared_link_settings_add_password_details(self): """ Only call this if :meth:`is_shared_link_settings_add_password_details` is true. :rtype: SharedLinkSettingsAddPasswordDetails """ if not self.is_shared_link_settings_add_password_details(): raise AttributeError("tag 'shared_link_settings_add_password_details' not set") return self._value def get_shared_link_settings_allow_download_disabled_details(self): """ Only call this if :meth:`is_shared_link_settings_allow_download_disabled_details` is true. :rtype: SharedLinkSettingsAllowDownloadDisabledDetails """ if not self.is_shared_link_settings_allow_download_disabled_details(): raise AttributeError("tag 'shared_link_settings_allow_download_disabled_details' not set") return self._value def get_shared_link_settings_allow_download_enabled_details(self): """ Only call this if :meth:`is_shared_link_settings_allow_download_enabled_details` is true. :rtype: SharedLinkSettingsAllowDownloadEnabledDetails """ if not self.is_shared_link_settings_allow_download_enabled_details(): raise AttributeError("tag 'shared_link_settings_allow_download_enabled_details' not set") return self._value def get_shared_link_settings_change_audience_details(self): """ Only call this if :meth:`is_shared_link_settings_change_audience_details` is true. :rtype: SharedLinkSettingsChangeAudienceDetails """ if not self.is_shared_link_settings_change_audience_details(): raise AttributeError("tag 'shared_link_settings_change_audience_details' not set") return self._value def get_shared_link_settings_change_expiration_details(self): """ Only call this if :meth:`is_shared_link_settings_change_expiration_details` is true. :rtype: SharedLinkSettingsChangeExpirationDetails """ if not self.is_shared_link_settings_change_expiration_details(): raise AttributeError("tag 'shared_link_settings_change_expiration_details' not set") return self._value def get_shared_link_settings_change_password_details(self): """ Only call this if :meth:`is_shared_link_settings_change_password_details` is true. :rtype: SharedLinkSettingsChangePasswordDetails """ if not self.is_shared_link_settings_change_password_details(): raise AttributeError("tag 'shared_link_settings_change_password_details' not set") return self._value def get_shared_link_settings_remove_expiration_details(self): """ Only call this if :meth:`is_shared_link_settings_remove_expiration_details` is true. :rtype: SharedLinkSettingsRemoveExpirationDetails """ if not self.is_shared_link_settings_remove_expiration_details(): raise AttributeError("tag 'shared_link_settings_remove_expiration_details' not set") return self._value def get_shared_link_settings_remove_password_details(self): """ Only call this if :meth:`is_shared_link_settings_remove_password_details` is true. :rtype: SharedLinkSettingsRemovePasswordDetails """ if not self.is_shared_link_settings_remove_password_details(): raise AttributeError("tag 'shared_link_settings_remove_password_details' not set") return self._value def get_shared_link_share_details(self): """ Only call this if :meth:`is_shared_link_share_details` is true. :rtype: SharedLinkShareDetails """ if not self.is_shared_link_share_details(): raise AttributeError("tag 'shared_link_share_details' not set") return self._value def get_shared_link_view_details(self): """ Only call this if :meth:`is_shared_link_view_details` is true. :rtype: SharedLinkViewDetails """ if not self.is_shared_link_view_details(): raise AttributeError("tag 'shared_link_view_details' not set") return self._value def get_shared_note_opened_details(self): """ Only call this if :meth:`is_shared_note_opened_details` is true. :rtype: SharedNoteOpenedDetails """ if not self.is_shared_note_opened_details(): raise AttributeError("tag 'shared_note_opened_details' not set") return self._value def get_shmodel_disable_downloads_details(self): """ Only call this if :meth:`is_shmodel_disable_downloads_details` is true. :rtype: ShmodelDisableDownloadsDetails """ if not self.is_shmodel_disable_downloads_details(): raise AttributeError("tag 'shmodel_disable_downloads_details' not set") return self._value def get_shmodel_enable_downloads_details(self): """ Only call this if :meth:`is_shmodel_enable_downloads_details` is true. :rtype: ShmodelEnableDownloadsDetails """ if not self.is_shmodel_enable_downloads_details(): raise AttributeError("tag 'shmodel_enable_downloads_details' not set") return self._value def get_shmodel_group_share_details(self): """ Only call this if :meth:`is_shmodel_group_share_details` is true. :rtype: ShmodelGroupShareDetails """ if not self.is_shmodel_group_share_details(): raise AttributeError("tag 'shmodel_group_share_details' not set") return self._value def get_showcase_access_granted_details(self): """ Only call this if :meth:`is_showcase_access_granted_details` is true. :rtype: ShowcaseAccessGrantedDetails """ if not self.is_showcase_access_granted_details(): raise AttributeError("tag 'showcase_access_granted_details' not set") return self._value def get_showcase_add_member_details(self): """ Only call this if :meth:`is_showcase_add_member_details` is true. :rtype: ShowcaseAddMemberDetails """ if not self.is_showcase_add_member_details(): raise AttributeError("tag 'showcase_add_member_details' not set") return self._value def get_showcase_archived_details(self): """ Only call this if :meth:`is_showcase_archived_details` is true. :rtype: ShowcaseArchivedDetails """ if not self.is_showcase_archived_details(): raise AttributeError("tag 'showcase_archived_details' not set") return self._value def get_showcase_created_details(self): """ Only call this if :meth:`is_showcase_created_details` is true. :rtype: ShowcaseCreatedDetails """ if not self.is_showcase_created_details(): raise AttributeError("tag 'showcase_created_details' not set") return self._value def get_showcase_delete_comment_details(self): """ Only call this if :meth:`is_showcase_delete_comment_details` is true. :rtype: ShowcaseDeleteCommentDetails """ if not self.is_showcase_delete_comment_details(): raise AttributeError("tag 'showcase_delete_comment_details' not set") return self._value def get_showcase_edited_details(self): """ Only call this if :meth:`is_showcase_edited_details` is true. :rtype: ShowcaseEditedDetails """ if not self.is_showcase_edited_details(): raise AttributeError("tag 'showcase_edited_details' not set") return self._value def get_showcase_edit_comment_details(self): """ Only call this if :meth:`is_showcase_edit_comment_details` is true. :rtype: ShowcaseEditCommentDetails """ if not self.is_showcase_edit_comment_details(): raise AttributeError("tag 'showcase_edit_comment_details' not set") return self._value def get_showcase_file_added_details(self): """ Only call this if :meth:`is_showcase_file_added_details` is true. :rtype: ShowcaseFileAddedDetails """ if not self.is_showcase_file_added_details(): raise AttributeError("tag 'showcase_file_added_details' not set") return self._value def get_showcase_file_download_details(self): """ Only call this if :meth:`is_showcase_file_download_details` is true. :rtype: ShowcaseFileDownloadDetails """ if not self.is_showcase_file_download_details(): raise AttributeError("tag 'showcase_file_download_details' not set") return self._value def get_showcase_file_removed_details(self): """ Only call this if :meth:`is_showcase_file_removed_details` is true. :rtype: ShowcaseFileRemovedDetails """ if not self.is_showcase_file_removed_details(): raise AttributeError("tag 'showcase_file_removed_details' not set") return self._value def get_showcase_file_view_details(self): """ Only call this if :meth:`is_showcase_file_view_details` is true. :rtype: ShowcaseFileViewDetails """ if not self.is_showcase_file_view_details(): raise AttributeError("tag 'showcase_file_view_details' not set") return self._value def get_showcase_permanently_deleted_details(self): """ Only call this if :meth:`is_showcase_permanently_deleted_details` is true. :rtype: ShowcasePermanentlyDeletedDetails """ if not self.is_showcase_permanently_deleted_details(): raise AttributeError("tag 'showcase_permanently_deleted_details' not set") return self._value def get_showcase_post_comment_details(self): """ Only call this if :meth:`is_showcase_post_comment_details` is true. :rtype: ShowcasePostCommentDetails """ if not self.is_showcase_post_comment_details(): raise AttributeError("tag 'showcase_post_comment_details' not set") return self._value def get_showcase_remove_member_details(self): """ Only call this if :meth:`is_showcase_remove_member_details` is true. :rtype: ShowcaseRemoveMemberDetails """ if not self.is_showcase_remove_member_details(): raise AttributeError("tag 'showcase_remove_member_details' not set") return self._value def get_showcase_renamed_details(self): """ Only call this if :meth:`is_showcase_renamed_details` is true. :rtype: ShowcaseRenamedDetails """ if not self.is_showcase_renamed_details(): raise AttributeError("tag 'showcase_renamed_details' not set") return self._value def get_showcase_request_access_details(self): """ Only call this if :meth:`is_showcase_request_access_details` is true. :rtype: ShowcaseRequestAccessDetails """ if not self.is_showcase_request_access_details(): raise AttributeError("tag 'showcase_request_access_details' not set") return self._value def get_showcase_resolve_comment_details(self): """ Only call this if :meth:`is_showcase_resolve_comment_details` is true. :rtype: ShowcaseResolveCommentDetails """ if not self.is_showcase_resolve_comment_details(): raise AttributeError("tag 'showcase_resolve_comment_details' not set") return self._value def get_showcase_restored_details(self): """ Only call this if :meth:`is_showcase_restored_details` is true. :rtype: ShowcaseRestoredDetails """ if not self.is_showcase_restored_details(): raise AttributeError("tag 'showcase_restored_details' not set") return self._value def get_showcase_trashed_details(self): """ Only call this if :meth:`is_showcase_trashed_details` is true. :rtype: ShowcaseTrashedDetails """ if not self.is_showcase_trashed_details(): raise AttributeError("tag 'showcase_trashed_details' not set") return self._value def get_showcase_trashed_deprecated_details(self): """ Only call this if :meth:`is_showcase_trashed_deprecated_details` is true. :rtype: ShowcaseTrashedDeprecatedDetails """ if not self.is_showcase_trashed_deprecated_details(): raise AttributeError("tag 'showcase_trashed_deprecated_details' not set") return self._value def get_showcase_unresolve_comment_details(self): """ Only call this if :meth:`is_showcase_unresolve_comment_details` is true. :rtype: ShowcaseUnresolveCommentDetails """ if not self.is_showcase_unresolve_comment_details(): raise AttributeError("tag 'showcase_unresolve_comment_details' not set") return self._value def get_showcase_untrashed_details(self): """ Only call this if :meth:`is_showcase_untrashed_details` is true. :rtype: ShowcaseUntrashedDetails """ if not self.is_showcase_untrashed_details(): raise AttributeError("tag 'showcase_untrashed_details' not set") return self._value def get_showcase_untrashed_deprecated_details(self): """ Only call this if :meth:`is_showcase_untrashed_deprecated_details` is true. :rtype: ShowcaseUntrashedDeprecatedDetails """ if not self.is_showcase_untrashed_deprecated_details(): raise AttributeError("tag 'showcase_untrashed_deprecated_details' not set") return self._value def get_showcase_view_details(self): """ Only call this if :meth:`is_showcase_view_details` is true. :rtype: ShowcaseViewDetails """ if not self.is_showcase_view_details(): raise AttributeError("tag 'showcase_view_details' not set") return self._value def get_sso_add_cert_details(self): """ Only call this if :meth:`is_sso_add_cert_details` is true. :rtype: SsoAddCertDetails """ if not self.is_sso_add_cert_details(): raise AttributeError("tag 'sso_add_cert_details' not set") return self._value def get_sso_add_login_url_details(self): """ Only call this if :meth:`is_sso_add_login_url_details` is true. :rtype: SsoAddLoginUrlDetails """ if not self.is_sso_add_login_url_details(): raise AttributeError("tag 'sso_add_login_url_details' not set") return self._value def get_sso_add_logout_url_details(self): """ Only call this if :meth:`is_sso_add_logout_url_details` is true. :rtype: SsoAddLogoutUrlDetails """ if not self.is_sso_add_logout_url_details(): raise AttributeError("tag 'sso_add_logout_url_details' not set") return self._value def get_sso_change_cert_details(self): """ Only call this if :meth:`is_sso_change_cert_details` is true. :rtype: SsoChangeCertDetails """ if not self.is_sso_change_cert_details(): raise AttributeError("tag 'sso_change_cert_details' not set") return self._value def get_sso_change_login_url_details(self): """ Only call this if :meth:`is_sso_change_login_url_details` is true. :rtype: SsoChangeLoginUrlDetails """ if not self.is_sso_change_login_url_details(): raise AttributeError("tag 'sso_change_login_url_details' not set") return self._value def get_sso_change_logout_url_details(self): """ Only call this if :meth:`is_sso_change_logout_url_details` is true. :rtype: SsoChangeLogoutUrlDetails """ if not self.is_sso_change_logout_url_details(): raise AttributeError("tag 'sso_change_logout_url_details' not set") return self._value def get_sso_change_saml_identity_mode_details(self): """ Only call this if :meth:`is_sso_change_saml_identity_mode_details` is true. :rtype: SsoChangeSamlIdentityModeDetails """ if not self.is_sso_change_saml_identity_mode_details(): raise AttributeError("tag 'sso_change_saml_identity_mode_details' not set") return self._value def get_sso_remove_cert_details(self): """ Only call this if :meth:`is_sso_remove_cert_details` is true. :rtype: SsoRemoveCertDetails """ if not self.is_sso_remove_cert_details(): raise AttributeError("tag 'sso_remove_cert_details' not set") return self._value def get_sso_remove_login_url_details(self): """ Only call this if :meth:`is_sso_remove_login_url_details` is true. :rtype: SsoRemoveLoginUrlDetails """ if not self.is_sso_remove_login_url_details(): raise AttributeError("tag 'sso_remove_login_url_details' not set") return self._value def get_sso_remove_logout_url_details(self): """ Only call this if :meth:`is_sso_remove_logout_url_details` is true. :rtype: SsoRemoveLogoutUrlDetails """ if not self.is_sso_remove_logout_url_details(): raise AttributeError("tag 'sso_remove_logout_url_details' not set") return self._value def get_team_folder_change_status_details(self): """ Only call this if :meth:`is_team_folder_change_status_details` is true. :rtype: TeamFolderChangeStatusDetails """ if not self.is_team_folder_change_status_details(): raise AttributeError("tag 'team_folder_change_status_details' not set") return self._value def get_team_folder_create_details(self): """ Only call this if :meth:`is_team_folder_create_details` is true. :rtype: TeamFolderCreateDetails """ if not self.is_team_folder_create_details(): raise AttributeError("tag 'team_folder_create_details' not set") return self._value def get_team_folder_downgrade_details(self): """ Only call this if :meth:`is_team_folder_downgrade_details` is true. :rtype: TeamFolderDowngradeDetails """ if not self.is_team_folder_downgrade_details(): raise AttributeError("tag 'team_folder_downgrade_details' not set") return self._value def get_team_folder_permanently_delete_details(self): """ Only call this if :meth:`is_team_folder_permanently_delete_details` is true. :rtype: TeamFolderPermanentlyDeleteDetails """ if not self.is_team_folder_permanently_delete_details(): raise AttributeError("tag 'team_folder_permanently_delete_details' not set") return self._value def get_team_folder_rename_details(self): """ Only call this if :meth:`is_team_folder_rename_details` is true. :rtype: TeamFolderRenameDetails """ if not self.is_team_folder_rename_details(): raise AttributeError("tag 'team_folder_rename_details' not set") return self._value def get_team_selective_sync_settings_changed_details(self): """ Only call this if :meth:`is_team_selective_sync_settings_changed_details` is true. :rtype: TeamSelectiveSyncSettingsChangedDetails """ if not self.is_team_selective_sync_settings_changed_details(): raise AttributeError("tag 'team_selective_sync_settings_changed_details' not set") return self._value def get_account_capture_change_policy_details(self): """ Only call this if :meth:`is_account_capture_change_policy_details` is true. :rtype: AccountCaptureChangePolicyDetails """ if not self.is_account_capture_change_policy_details(): raise AttributeError("tag 'account_capture_change_policy_details' not set") return self._value def get_admin_email_reminders_changed_details(self): """ Only call this if :meth:`is_admin_email_reminders_changed_details` is true. :rtype: AdminEmailRemindersChangedDetails """ if not self.is_admin_email_reminders_changed_details(): raise AttributeError("tag 'admin_email_reminders_changed_details' not set") return self._value def get_allow_download_disabled_details(self): """ Only call this if :meth:`is_allow_download_disabled_details` is true. :rtype: AllowDownloadDisabledDetails """ if not self.is_allow_download_disabled_details(): raise AttributeError("tag 'allow_download_disabled_details' not set") return self._value def get_allow_download_enabled_details(self): """ Only call this if :meth:`is_allow_download_enabled_details` is true. :rtype: AllowDownloadEnabledDetails """ if not self.is_allow_download_enabled_details(): raise AttributeError("tag 'allow_download_enabled_details' not set") return self._value def get_app_permissions_changed_details(self): """ Only call this if :meth:`is_app_permissions_changed_details` is true. :rtype: AppPermissionsChangedDetails """ if not self.is_app_permissions_changed_details(): raise AttributeError("tag 'app_permissions_changed_details' not set") return self._value def get_camera_uploads_policy_changed_details(self): """ Only call this if :meth:`is_camera_uploads_policy_changed_details` is true. :rtype: CameraUploadsPolicyChangedDetails """ if not self.is_camera_uploads_policy_changed_details(): raise AttributeError("tag 'camera_uploads_policy_changed_details' not set") return self._value def get_capture_transcript_policy_changed_details(self): """ Only call this if :meth:`is_capture_transcript_policy_changed_details` is true. :rtype: CaptureTranscriptPolicyChangedDetails """ if not self.is_capture_transcript_policy_changed_details(): raise AttributeError("tag 'capture_transcript_policy_changed_details' not set") return self._value def get_classification_change_policy_details(self): """ Only call this if :meth:`is_classification_change_policy_details` is true. :rtype: ClassificationChangePolicyDetails """ if not self.is_classification_change_policy_details(): raise AttributeError("tag 'classification_change_policy_details' not set") return self._value def get_computer_backup_policy_changed_details(self): """ Only call this if :meth:`is_computer_backup_policy_changed_details` is true. :rtype: ComputerBackupPolicyChangedDetails """ if not self.is_computer_backup_policy_changed_details(): raise AttributeError("tag 'computer_backup_policy_changed_details' not set") return self._value def get_content_administration_policy_changed_details(self): """ Only call this if :meth:`is_content_administration_policy_changed_details` is true. :rtype: ContentAdministrationPolicyChangedDetails """ if not self.is_content_administration_policy_changed_details(): raise AttributeError("tag 'content_administration_policy_changed_details' not set") return self._value def get_data_placement_restriction_change_policy_details(self): """ Only call this if :meth:`is_data_placement_restriction_change_policy_details` is true. :rtype: DataPlacementRestrictionChangePolicyDetails """ if not self.is_data_placement_restriction_change_policy_details(): raise AttributeError("tag 'data_placement_restriction_change_policy_details' not set") return self._value def get_data_placement_restriction_satisfy_policy_details(self): """ Only call this if :meth:`is_data_placement_restriction_satisfy_policy_details` is true. :rtype: DataPlacementRestrictionSatisfyPolicyDetails """ if not self.is_data_placement_restriction_satisfy_policy_details(): raise AttributeError("tag 'data_placement_restriction_satisfy_policy_details' not set") return self._value def get_device_approvals_add_exception_details(self): """ Only call this if :meth:`is_device_approvals_add_exception_details` is true. :rtype: DeviceApprovalsAddExceptionDetails """ if not self.is_device_approvals_add_exception_details(): raise AttributeError("tag 'device_approvals_add_exception_details' not set") return self._value def get_device_approvals_change_desktop_policy_details(self): """ Only call this if :meth:`is_device_approvals_change_desktop_policy_details` is true. :rtype: DeviceApprovalsChangeDesktopPolicyDetails """ if not self.is_device_approvals_change_desktop_policy_details(): raise AttributeError("tag 'device_approvals_change_desktop_policy_details' not set") return self._value def get_device_approvals_change_mobile_policy_details(self): """ Only call this if :meth:`is_device_approvals_change_mobile_policy_details` is true. :rtype: DeviceApprovalsChangeMobilePolicyDetails """ if not self.is_device_approvals_change_mobile_policy_details(): raise AttributeError("tag 'device_approvals_change_mobile_policy_details' not set") return self._value def get_device_approvals_change_overage_action_details(self): """ Only call this if :meth:`is_device_approvals_change_overage_action_details` is true. :rtype: DeviceApprovalsChangeOverageActionDetails """ if not self.is_device_approvals_change_overage_action_details(): raise AttributeError("tag 'device_approvals_change_overage_action_details' not set") return self._value def get_device_approvals_change_unlink_action_details(self): """ Only call this if :meth:`is_device_approvals_change_unlink_action_details` is true. :rtype: DeviceApprovalsChangeUnlinkActionDetails """ if not self.is_device_approvals_change_unlink_action_details(): raise AttributeError("tag 'device_approvals_change_unlink_action_details' not set") return self._value def get_device_approvals_remove_exception_details(self): """ Only call this if :meth:`is_device_approvals_remove_exception_details` is true. :rtype: DeviceApprovalsRemoveExceptionDetails """ if not self.is_device_approvals_remove_exception_details(): raise AttributeError("tag 'device_approvals_remove_exception_details' not set") return self._value def get_directory_restrictions_add_members_details(self): """ Only call this if :meth:`is_directory_restrictions_add_members_details` is true. :rtype: DirectoryRestrictionsAddMembersDetails """ if not self.is_directory_restrictions_add_members_details(): raise AttributeError("tag 'directory_restrictions_add_members_details' not set") return self._value def get_directory_restrictions_remove_members_details(self): """ Only call this if :meth:`is_directory_restrictions_remove_members_details` is true. :rtype: DirectoryRestrictionsRemoveMembersDetails """ if not self.is_directory_restrictions_remove_members_details(): raise AttributeError("tag 'directory_restrictions_remove_members_details' not set") return self._value def get_dropbox_passwords_policy_changed_details(self): """ Only call this if :meth:`is_dropbox_passwords_policy_changed_details` is true. :rtype: DropboxPasswordsPolicyChangedDetails """ if not self.is_dropbox_passwords_policy_changed_details(): raise AttributeError("tag 'dropbox_passwords_policy_changed_details' not set") return self._value def get_email_ingest_policy_changed_details(self): """ Only call this if :meth:`is_email_ingest_policy_changed_details` is true. :rtype: EmailIngestPolicyChangedDetails """ if not self.is_email_ingest_policy_changed_details(): raise AttributeError("tag 'email_ingest_policy_changed_details' not set") return self._value def get_emm_add_exception_details(self): """ Only call this if :meth:`is_emm_add_exception_details` is true. :rtype: EmmAddExceptionDetails """ if not self.is_emm_add_exception_details(): raise AttributeError("tag 'emm_add_exception_details' not set") return self._value def get_emm_change_policy_details(self): """ Only call this if :meth:`is_emm_change_policy_details` is true. :rtype: EmmChangePolicyDetails """ if not self.is_emm_change_policy_details(): raise AttributeError("tag 'emm_change_policy_details' not set") return self._value def get_emm_remove_exception_details(self): """ Only call this if :meth:`is_emm_remove_exception_details` is true. :rtype: EmmRemoveExceptionDetails """ if not self.is_emm_remove_exception_details(): raise AttributeError("tag 'emm_remove_exception_details' not set") return self._value def get_extended_version_history_change_policy_details(self): """ Only call this if :meth:`is_extended_version_history_change_policy_details` is true. :rtype: ExtendedVersionHistoryChangePolicyDetails """ if not self.is_extended_version_history_change_policy_details(): raise AttributeError("tag 'extended_version_history_change_policy_details' not set") return self._value def get_external_drive_backup_policy_changed_details(self): """ Only call this if :meth:`is_external_drive_backup_policy_changed_details` is true. :rtype: ExternalDriveBackupPolicyChangedDetails """ if not self.is_external_drive_backup_policy_changed_details(): raise AttributeError("tag 'external_drive_backup_policy_changed_details' not set") return self._value def get_file_comments_change_policy_details(self): """ Only call this if :meth:`is_file_comments_change_policy_details` is true. :rtype: FileCommentsChangePolicyDetails """ if not self.is_file_comments_change_policy_details(): raise AttributeError("tag 'file_comments_change_policy_details' not set") return self._value def get_file_locking_policy_changed_details(self): """ Only call this if :meth:`is_file_locking_policy_changed_details` is true. :rtype: FileLockingPolicyChangedDetails """ if not self.is_file_locking_policy_changed_details(): raise AttributeError("tag 'file_locking_policy_changed_details' not set") return self._value def get_file_provider_migration_policy_changed_details(self): """ Only call this if :meth:`is_file_provider_migration_policy_changed_details` is true. :rtype: FileProviderMigrationPolicyChangedDetails """ if not self.is_file_provider_migration_policy_changed_details(): raise AttributeError("tag 'file_provider_migration_policy_changed_details' not set") return self._value def get_file_requests_change_policy_details(self): """ Only call this if :meth:`is_file_requests_change_policy_details` is true. :rtype: FileRequestsChangePolicyDetails """ if not self.is_file_requests_change_policy_details(): raise AttributeError("tag 'file_requests_change_policy_details' not set") return self._value def get_file_requests_emails_enabled_details(self): """ Only call this if :meth:`is_file_requests_emails_enabled_details` is true. :rtype: FileRequestsEmailsEnabledDetails """ if not self.is_file_requests_emails_enabled_details(): raise AttributeError("tag 'file_requests_emails_enabled_details' not set") return self._value def get_file_requests_emails_restricted_to_team_only_details(self): """ Only call this if :meth:`is_file_requests_emails_restricted_to_team_only_details` is true. :rtype: FileRequestsEmailsRestrictedToTeamOnlyDetails """ if not self.is_file_requests_emails_restricted_to_team_only_details(): raise AttributeError("tag 'file_requests_emails_restricted_to_team_only_details' not set") return self._value def get_file_transfers_policy_changed_details(self): """ Only call this if :meth:`is_file_transfers_policy_changed_details` is true. :rtype: FileTransfersPolicyChangedDetails """ if not self.is_file_transfers_policy_changed_details(): raise AttributeError("tag 'file_transfers_policy_changed_details' not set") return self._value def get_folder_link_restriction_policy_changed_details(self): """ Only call this if :meth:`is_folder_link_restriction_policy_changed_details` is true. :rtype: FolderLinkRestrictionPolicyChangedDetails """ if not self.is_folder_link_restriction_policy_changed_details(): raise AttributeError("tag 'folder_link_restriction_policy_changed_details' not set") return self._value def get_google_sso_change_policy_details(self): """ Only call this if :meth:`is_google_sso_change_policy_details` is true. :rtype: GoogleSsoChangePolicyDetails """ if not self.is_google_sso_change_policy_details(): raise AttributeError("tag 'google_sso_change_policy_details' not set") return self._value def get_group_user_management_change_policy_details(self): """ Only call this if :meth:`is_group_user_management_change_policy_details` is true. :rtype: GroupUserManagementChangePolicyDetails """ if not self.is_group_user_management_change_policy_details(): raise AttributeError("tag 'group_user_management_change_policy_details' not set") return self._value def get_integration_policy_changed_details(self): """ Only call this if :meth:`is_integration_policy_changed_details` is true. :rtype: IntegrationPolicyChangedDetails """ if not self.is_integration_policy_changed_details(): raise AttributeError("tag 'integration_policy_changed_details' not set") return self._value def get_invite_acceptance_email_policy_changed_details(self): """ Only call this if :meth:`is_invite_acceptance_email_policy_changed_details` is true. :rtype: InviteAcceptanceEmailPolicyChangedDetails """ if not self.is_invite_acceptance_email_policy_changed_details(): raise AttributeError("tag 'invite_acceptance_email_policy_changed_details' not set") return self._value def get_member_requests_change_policy_details(self): """ Only call this if :meth:`is_member_requests_change_policy_details` is true. :rtype: MemberRequestsChangePolicyDetails """ if not self.is_member_requests_change_policy_details(): raise AttributeError("tag 'member_requests_change_policy_details' not set") return self._value def get_member_send_invite_policy_changed_details(self): """ Only call this if :meth:`is_member_send_invite_policy_changed_details` is true. :rtype: MemberSendInvitePolicyChangedDetails """ if not self.is_member_send_invite_policy_changed_details(): raise AttributeError("tag 'member_send_invite_policy_changed_details' not set") return self._value def get_member_space_limits_add_exception_details(self): """ Only call this if :meth:`is_member_space_limits_add_exception_details` is true. :rtype: MemberSpaceLimitsAddExceptionDetails """ if not self.is_member_space_limits_add_exception_details(): raise AttributeError("tag 'member_space_limits_add_exception_details' not set") return self._value def get_member_space_limits_change_caps_type_policy_details(self): """ Only call this if :meth:`is_member_space_limits_change_caps_type_policy_details` is true. :rtype: MemberSpaceLimitsChangeCapsTypePolicyDetails """ if not self.is_member_space_limits_change_caps_type_policy_details(): raise AttributeError("tag 'member_space_limits_change_caps_type_policy_details' not set") return self._value def get_member_space_limits_change_policy_details(self): """ Only call this if :meth:`is_member_space_limits_change_policy_details` is true. :rtype: MemberSpaceLimitsChangePolicyDetails """ if not self.is_member_space_limits_change_policy_details(): raise AttributeError("tag 'member_space_limits_change_policy_details' not set") return self._value def get_member_space_limits_remove_exception_details(self): """ Only call this if :meth:`is_member_space_limits_remove_exception_details` is true. :rtype: MemberSpaceLimitsRemoveExceptionDetails """ if not self.is_member_space_limits_remove_exception_details(): raise AttributeError("tag 'member_space_limits_remove_exception_details' not set") return self._value def get_member_suggestions_change_policy_details(self): """ Only call this if :meth:`is_member_suggestions_change_policy_details` is true. :rtype: MemberSuggestionsChangePolicyDetails """ if not self.is_member_suggestions_change_policy_details(): raise AttributeError("tag 'member_suggestions_change_policy_details' not set") return self._value def get_microsoft_office_addin_change_policy_details(self): """ Only call this if :meth:`is_microsoft_office_addin_change_policy_details` is true. :rtype: MicrosoftOfficeAddinChangePolicyDetails """ if not self.is_microsoft_office_addin_change_policy_details(): raise AttributeError("tag 'microsoft_office_addin_change_policy_details' not set") return self._value def get_network_control_change_policy_details(self): """ Only call this if :meth:`is_network_control_change_policy_details` is true. :rtype: NetworkControlChangePolicyDetails """ if not self.is_network_control_change_policy_details(): raise AttributeError("tag 'network_control_change_policy_details' not set") return self._value def get_paper_change_deployment_policy_details(self): """ Only call this if :meth:`is_paper_change_deployment_policy_details` is true. :rtype: PaperChangeDeploymentPolicyDetails """ if not self.is_paper_change_deployment_policy_details(): raise AttributeError("tag 'paper_change_deployment_policy_details' not set") return self._value def get_paper_change_member_link_policy_details(self): """ Only call this if :meth:`is_paper_change_member_link_policy_details` is true. :rtype: PaperChangeMemberLinkPolicyDetails """ if not self.is_paper_change_member_link_policy_details(): raise AttributeError("tag 'paper_change_member_link_policy_details' not set") return self._value def get_paper_change_member_policy_details(self): """ Only call this if :meth:`is_paper_change_member_policy_details` is true. :rtype: PaperChangeMemberPolicyDetails """ if not self.is_paper_change_member_policy_details(): raise AttributeError("tag 'paper_change_member_policy_details' not set") return self._value def get_paper_change_policy_details(self): """ Only call this if :meth:`is_paper_change_policy_details` is true. :rtype: PaperChangePolicyDetails """ if not self.is_paper_change_policy_details(): raise AttributeError("tag 'paper_change_policy_details' not set") return self._value def get_paper_default_folder_policy_changed_details(self): """ Only call this if :meth:`is_paper_default_folder_policy_changed_details` is true. :rtype: PaperDefaultFolderPolicyChangedDetails """ if not self.is_paper_default_folder_policy_changed_details(): raise AttributeError("tag 'paper_default_folder_policy_changed_details' not set") return self._value def get_paper_desktop_policy_changed_details(self): """ Only call this if :meth:`is_paper_desktop_policy_changed_details` is true. :rtype: PaperDesktopPolicyChangedDetails """ if not self.is_paper_desktop_policy_changed_details(): raise AttributeError("tag 'paper_desktop_policy_changed_details' not set") return self._value def get_paper_enabled_users_group_addition_details(self): """ Only call this if :meth:`is_paper_enabled_users_group_addition_details` is true. :rtype: PaperEnabledUsersGroupAdditionDetails """ if not self.is_paper_enabled_users_group_addition_details(): raise AttributeError("tag 'paper_enabled_users_group_addition_details' not set") return self._value def get_paper_enabled_users_group_removal_details(self): """ Only call this if :meth:`is_paper_enabled_users_group_removal_details` is true. :rtype: PaperEnabledUsersGroupRemovalDetails """ if not self.is_paper_enabled_users_group_removal_details(): raise AttributeError("tag 'paper_enabled_users_group_removal_details' not set") return self._value def get_password_strength_requirements_change_policy_details(self): """ Only call this if :meth:`is_password_strength_requirements_change_policy_details` is true. :rtype: PasswordStrengthRequirementsChangePolicyDetails """ if not self.is_password_strength_requirements_change_policy_details(): raise AttributeError("tag 'password_strength_requirements_change_policy_details' not set") return self._value def get_permanent_delete_change_policy_details(self): """ Only call this if :meth:`is_permanent_delete_change_policy_details` is true. :rtype: PermanentDeleteChangePolicyDetails """ if not self.is_permanent_delete_change_policy_details(): raise AttributeError("tag 'permanent_delete_change_policy_details' not set") return self._value def get_reseller_support_change_policy_details(self): """ Only call this if :meth:`is_reseller_support_change_policy_details` is true. :rtype: ResellerSupportChangePolicyDetails """ if not self.is_reseller_support_change_policy_details(): raise AttributeError("tag 'reseller_support_change_policy_details' not set") return self._value def get_rewind_policy_changed_details(self): """ Only call this if :meth:`is_rewind_policy_changed_details` is true. :rtype: RewindPolicyChangedDetails """ if not self.is_rewind_policy_changed_details(): raise AttributeError("tag 'rewind_policy_changed_details' not set") return self._value def get_send_for_signature_policy_changed_details(self): """ Only call this if :meth:`is_send_for_signature_policy_changed_details` is true. :rtype: SendForSignaturePolicyChangedDetails """ if not self.is_send_for_signature_policy_changed_details(): raise AttributeError("tag 'send_for_signature_policy_changed_details' not set") return self._value def get_sharing_change_folder_join_policy_details(self): """ Only call this if :meth:`is_sharing_change_folder_join_policy_details` is true. :rtype: SharingChangeFolderJoinPolicyDetails """ if not self.is_sharing_change_folder_join_policy_details(): raise AttributeError("tag 'sharing_change_folder_join_policy_details' not set") return self._value def get_sharing_change_link_allow_change_expiration_policy_details(self): """ Only call this if :meth:`is_sharing_change_link_allow_change_expiration_policy_details` is true. :rtype: SharingChangeLinkAllowChangeExpirationPolicyDetails """ if not self.is_sharing_change_link_allow_change_expiration_policy_details(): raise AttributeError("tag 'sharing_change_link_allow_change_expiration_policy_details' not set") return self._value def get_sharing_change_link_default_expiration_policy_details(self): """ Only call this if :meth:`is_sharing_change_link_default_expiration_policy_details` is true. :rtype: SharingChangeLinkDefaultExpirationPolicyDetails """ if not self.is_sharing_change_link_default_expiration_policy_details(): raise AttributeError("tag 'sharing_change_link_default_expiration_policy_details' not set") return self._value def get_sharing_change_link_enforce_password_policy_details(self): """ Only call this if :meth:`is_sharing_change_link_enforce_password_policy_details` is true. :rtype: SharingChangeLinkEnforcePasswordPolicyDetails """ if not self.is_sharing_change_link_enforce_password_policy_details(): raise AttributeError("tag 'sharing_change_link_enforce_password_policy_details' not set") return self._value def get_sharing_change_link_policy_details(self): """ Only call this if :meth:`is_sharing_change_link_policy_details` is true. :rtype: SharingChangeLinkPolicyDetails """ if not self.is_sharing_change_link_policy_details(): raise AttributeError("tag 'sharing_change_link_policy_details' not set") return self._value def get_sharing_change_member_policy_details(self): """ Only call this if :meth:`is_sharing_change_member_policy_details` is true. :rtype: SharingChangeMemberPolicyDetails """ if not self.is_sharing_change_member_policy_details(): raise AttributeError("tag 'sharing_change_member_policy_details' not set") return self._value def get_showcase_change_download_policy_details(self): """ Only call this if :meth:`is_showcase_change_download_policy_details` is true. :rtype: ShowcaseChangeDownloadPolicyDetails """ if not self.is_showcase_change_download_policy_details(): raise AttributeError("tag 'showcase_change_download_policy_details' not set") return self._value def get_showcase_change_enabled_policy_details(self): """ Only call this if :meth:`is_showcase_change_enabled_policy_details` is true. :rtype: ShowcaseChangeEnabledPolicyDetails """ if not self.is_showcase_change_enabled_policy_details(): raise AttributeError("tag 'showcase_change_enabled_policy_details' not set") return self._value def get_showcase_change_external_sharing_policy_details(self): """ Only call this if :meth:`is_showcase_change_external_sharing_policy_details` is true. :rtype: ShowcaseChangeExternalSharingPolicyDetails """ if not self.is_showcase_change_external_sharing_policy_details(): raise AttributeError("tag 'showcase_change_external_sharing_policy_details' not set") return self._value def get_smarter_smart_sync_policy_changed_details(self): """ Only call this if :meth:`is_smarter_smart_sync_policy_changed_details` is true. :rtype: SmarterSmartSyncPolicyChangedDetails """ if not self.is_smarter_smart_sync_policy_changed_details(): raise AttributeError("tag 'smarter_smart_sync_policy_changed_details' not set") return self._value def get_smart_sync_change_policy_details(self): """ Only call this if :meth:`is_smart_sync_change_policy_details` is true. :rtype: SmartSyncChangePolicyDetails """ if not self.is_smart_sync_change_policy_details(): raise AttributeError("tag 'smart_sync_change_policy_details' not set") return self._value def get_smart_sync_not_opt_out_details(self): """ Only call this if :meth:`is_smart_sync_not_opt_out_details` is true. :rtype: SmartSyncNotOptOutDetails """ if not self.is_smart_sync_not_opt_out_details(): raise AttributeError("tag 'smart_sync_not_opt_out_details' not set") return self._value def get_smart_sync_opt_out_details(self): """ Only call this if :meth:`is_smart_sync_opt_out_details` is true. :rtype: SmartSyncOptOutDetails """ if not self.is_smart_sync_opt_out_details(): raise AttributeError("tag 'smart_sync_opt_out_details' not set") return self._value def get_sso_change_policy_details(self): """ Only call this if :meth:`is_sso_change_policy_details` is true. :rtype: SsoChangePolicyDetails """ if not self.is_sso_change_policy_details(): raise AttributeError("tag 'sso_change_policy_details' not set") return self._value def get_team_branding_policy_changed_details(self): """ Only call this if :meth:`is_team_branding_policy_changed_details` is true. :rtype: TeamBrandingPolicyChangedDetails """ if not self.is_team_branding_policy_changed_details(): raise AttributeError("tag 'team_branding_policy_changed_details' not set") return self._value def get_team_extensions_policy_changed_details(self): """ Only call this if :meth:`is_team_extensions_policy_changed_details` is true. :rtype: TeamExtensionsPolicyChangedDetails """ if not self.is_team_extensions_policy_changed_details(): raise AttributeError("tag 'team_extensions_policy_changed_details' not set") return self._value def get_team_selective_sync_policy_changed_details(self): """ Only call this if :meth:`is_team_selective_sync_policy_changed_details` is true. :rtype: TeamSelectiveSyncPolicyChangedDetails """ if not self.is_team_selective_sync_policy_changed_details(): raise AttributeError("tag 'team_selective_sync_policy_changed_details' not set") return self._value def get_team_sharing_whitelist_subjects_changed_details(self): """ Only call this if :meth:`is_team_sharing_whitelist_subjects_changed_details` is true. :rtype: TeamSharingWhitelistSubjectsChangedDetails """ if not self.is_team_sharing_whitelist_subjects_changed_details(): raise AttributeError("tag 'team_sharing_whitelist_subjects_changed_details' not set") return self._value def get_tfa_add_exception_details(self): """ Only call this if :meth:`is_tfa_add_exception_details` is true. :rtype: TfaAddExceptionDetails """ if not self.is_tfa_add_exception_details(): raise AttributeError("tag 'tfa_add_exception_details' not set") return self._value def get_tfa_change_policy_details(self): """ Only call this if :meth:`is_tfa_change_policy_details` is true. :rtype: TfaChangePolicyDetails """ if not self.is_tfa_change_policy_details(): raise AttributeError("tag 'tfa_change_policy_details' not set") return self._value def get_tfa_remove_exception_details(self): """ Only call this if :meth:`is_tfa_remove_exception_details` is true. :rtype: TfaRemoveExceptionDetails """ if not self.is_tfa_remove_exception_details(): raise AttributeError("tag 'tfa_remove_exception_details' not set") return self._value def get_two_account_change_policy_details(self): """ Only call this if :meth:`is_two_account_change_policy_details` is true. :rtype: TwoAccountChangePolicyDetails """ if not self.is_two_account_change_policy_details(): raise AttributeError("tag 'two_account_change_policy_details' not set") return self._value def get_viewer_info_policy_changed_details(self): """ Only call this if :meth:`is_viewer_info_policy_changed_details` is true. :rtype: ViewerInfoPolicyChangedDetails """ if not self.is_viewer_info_policy_changed_details(): raise AttributeError("tag 'viewer_info_policy_changed_details' not set") return self._value def get_watermarking_policy_changed_details(self): """ Only call this if :meth:`is_watermarking_policy_changed_details` is true. :rtype: WatermarkingPolicyChangedDetails """ if not self.is_watermarking_policy_changed_details(): raise AttributeError("tag 'watermarking_policy_changed_details' not set") return self._value def get_web_sessions_change_active_session_limit_details(self): """ Only call this if :meth:`is_web_sessions_change_active_session_limit_details` is true. :rtype: WebSessionsChangeActiveSessionLimitDetails """ if not self.is_web_sessions_change_active_session_limit_details(): raise AttributeError("tag 'web_sessions_change_active_session_limit_details' not set") return self._value def get_web_sessions_change_fixed_length_policy_details(self): """ Only call this if :meth:`is_web_sessions_change_fixed_length_policy_details` is true. :rtype: WebSessionsChangeFixedLengthPolicyDetails """ if not self.is_web_sessions_change_fixed_length_policy_details(): raise AttributeError("tag 'web_sessions_change_fixed_length_policy_details' not set") return self._value def get_web_sessions_change_idle_length_policy_details(self): """ Only call this if :meth:`is_web_sessions_change_idle_length_policy_details` is true. :rtype: WebSessionsChangeIdleLengthPolicyDetails """ if not self.is_web_sessions_change_idle_length_policy_details(): raise AttributeError("tag 'web_sessions_change_idle_length_policy_details' not set") return self._value def get_data_residency_migration_request_successful_details(self): """ Only call this if :meth:`is_data_residency_migration_request_successful_details` is true. :rtype: DataResidencyMigrationRequestSuccessfulDetails """ if not self.is_data_residency_migration_request_successful_details(): raise AttributeError("tag 'data_residency_migration_request_successful_details' not set") return self._value def get_data_residency_migration_request_unsuccessful_details(self): """ Only call this if :meth:`is_data_residency_migration_request_unsuccessful_details` is true. :rtype: DataResidencyMigrationRequestUnsuccessfulDetails """ if not self.is_data_residency_migration_request_unsuccessful_details(): raise AttributeError("tag 'data_residency_migration_request_unsuccessful_details' not set") return self._value def get_team_merge_from_details(self): """ Only call this if :meth:`is_team_merge_from_details` is true. :rtype: TeamMergeFromDetails """ if not self.is_team_merge_from_details(): raise AttributeError("tag 'team_merge_from_details' not set") return self._value def get_team_merge_to_details(self): """ Only call this if :meth:`is_team_merge_to_details` is true. :rtype: TeamMergeToDetails """ if not self.is_team_merge_to_details(): raise AttributeError("tag 'team_merge_to_details' not set") return self._value def get_team_profile_add_background_details(self): """ Only call this if :meth:`is_team_profile_add_background_details` is true. :rtype: TeamProfileAddBackgroundDetails """ if not self.is_team_profile_add_background_details(): raise AttributeError("tag 'team_profile_add_background_details' not set") return self._value def get_team_profile_add_logo_details(self): """ Only call this if :meth:`is_team_profile_add_logo_details` is true. :rtype: TeamProfileAddLogoDetails """ if not self.is_team_profile_add_logo_details(): raise AttributeError("tag 'team_profile_add_logo_details' not set") return self._value def get_team_profile_change_background_details(self): """ Only call this if :meth:`is_team_profile_change_background_details` is true. :rtype: TeamProfileChangeBackgroundDetails """ if not self.is_team_profile_change_background_details(): raise AttributeError("tag 'team_profile_change_background_details' not set") return self._value def get_team_profile_change_default_language_details(self): """ Only call this if :meth:`is_team_profile_change_default_language_details` is true. :rtype: TeamProfileChangeDefaultLanguageDetails """ if not self.is_team_profile_change_default_language_details(): raise AttributeError("tag 'team_profile_change_default_language_details' not set") return self._value def get_team_profile_change_logo_details(self): """ Only call this if :meth:`is_team_profile_change_logo_details` is true. :rtype: TeamProfileChangeLogoDetails """ if not self.is_team_profile_change_logo_details(): raise AttributeError("tag 'team_profile_change_logo_details' not set") return self._value def get_team_profile_change_name_details(self): """ Only call this if :meth:`is_team_profile_change_name_details` is true. :rtype: TeamProfileChangeNameDetails """ if not self.is_team_profile_change_name_details(): raise AttributeError("tag 'team_profile_change_name_details' not set") return self._value def get_team_profile_remove_background_details(self): """ Only call this if :meth:`is_team_profile_remove_background_details` is true. :rtype: TeamProfileRemoveBackgroundDetails """ if not self.is_team_profile_remove_background_details(): raise AttributeError("tag 'team_profile_remove_background_details' not set") return self._value def get_team_profile_remove_logo_details(self): """ Only call this if :meth:`is_team_profile_remove_logo_details` is true. :rtype: TeamProfileRemoveLogoDetails """ if not self.is_team_profile_remove_logo_details(): raise AttributeError("tag 'team_profile_remove_logo_details' not set") return self._value def get_tfa_add_backup_phone_details(self): """ Only call this if :meth:`is_tfa_add_backup_phone_details` is true. :rtype: TfaAddBackupPhoneDetails """ if not self.is_tfa_add_backup_phone_details(): raise AttributeError("tag 'tfa_add_backup_phone_details' not set") return self._value def get_tfa_add_security_key_details(self): """ Only call this if :meth:`is_tfa_add_security_key_details` is true. :rtype: TfaAddSecurityKeyDetails """ if not self.is_tfa_add_security_key_details(): raise AttributeError("tag 'tfa_add_security_key_details' not set") return self._value def get_tfa_change_backup_phone_details(self): """ Only call this if :meth:`is_tfa_change_backup_phone_details` is true. :rtype: TfaChangeBackupPhoneDetails """ if not self.is_tfa_change_backup_phone_details(): raise AttributeError("tag 'tfa_change_backup_phone_details' not set") return self._value def get_tfa_change_status_details(self): """ Only call this if :meth:`is_tfa_change_status_details` is true. :rtype: TfaChangeStatusDetails """ if not self.is_tfa_change_status_details(): raise AttributeError("tag 'tfa_change_status_details' not set") return self._value def get_tfa_remove_backup_phone_details(self): """ Only call this if :meth:`is_tfa_remove_backup_phone_details` is true. :rtype: TfaRemoveBackupPhoneDetails """ if not self.is_tfa_remove_backup_phone_details(): raise AttributeError("tag 'tfa_remove_backup_phone_details' not set") return self._value def get_tfa_remove_security_key_details(self): """ Only call this if :meth:`is_tfa_remove_security_key_details` is true. :rtype: TfaRemoveSecurityKeyDetails """ if not self.is_tfa_remove_security_key_details(): raise AttributeError("tag 'tfa_remove_security_key_details' not set") return self._value def get_tfa_reset_details(self): """ Only call this if :meth:`is_tfa_reset_details` is true. :rtype: TfaResetDetails """ if not self.is_tfa_reset_details(): raise AttributeError("tag 'tfa_reset_details' not set") return self._value def get_changed_enterprise_admin_role_details(self): """ Only call this if :meth:`is_changed_enterprise_admin_role_details` is true. :rtype: ChangedEnterpriseAdminRoleDetails """ if not self.is_changed_enterprise_admin_role_details(): raise AttributeError("tag 'changed_enterprise_admin_role_details' not set") return self._value def get_changed_enterprise_connected_team_status_details(self): """ Only call this if :meth:`is_changed_enterprise_connected_team_status_details` is true. :rtype: ChangedEnterpriseConnectedTeamStatusDetails """ if not self.is_changed_enterprise_connected_team_status_details(): raise AttributeError("tag 'changed_enterprise_connected_team_status_details' not set") return self._value def get_ended_enterprise_admin_session_details(self): """ Only call this if :meth:`is_ended_enterprise_admin_session_details` is true. :rtype: EndedEnterpriseAdminSessionDetails """ if not self.is_ended_enterprise_admin_session_details(): raise AttributeError("tag 'ended_enterprise_admin_session_details' not set") return self._value def get_ended_enterprise_admin_session_deprecated_details(self): """ Only call this if :meth:`is_ended_enterprise_admin_session_deprecated_details` is true. :rtype: EndedEnterpriseAdminSessionDeprecatedDetails """ if not self.is_ended_enterprise_admin_session_deprecated_details(): raise AttributeError("tag 'ended_enterprise_admin_session_deprecated_details' not set") return self._value def get_enterprise_settings_locking_details(self): """ Only call this if :meth:`is_enterprise_settings_locking_details` is true. :rtype: EnterpriseSettingsLockingDetails """ if not self.is_enterprise_settings_locking_details(): raise AttributeError("tag 'enterprise_settings_locking_details' not set") return self._value def get_guest_admin_change_status_details(self): """ Only call this if :meth:`is_guest_admin_change_status_details` is true. :rtype: GuestAdminChangeStatusDetails """ if not self.is_guest_admin_change_status_details(): raise AttributeError("tag 'guest_admin_change_status_details' not set") return self._value def get_started_enterprise_admin_session_details(self): """ Only call this if :meth:`is_started_enterprise_admin_session_details` is true. :rtype: StartedEnterpriseAdminSessionDetails """ if not self.is_started_enterprise_admin_session_details(): raise AttributeError("tag 'started_enterprise_admin_session_details' not set") return self._value def get_team_merge_request_accepted_details(self): """ Only call this if :meth:`is_team_merge_request_accepted_details` is true. :rtype: TeamMergeRequestAcceptedDetails """ if not self.is_team_merge_request_accepted_details(): raise AttributeError("tag 'team_merge_request_accepted_details' not set") return self._value def get_team_merge_request_accepted_shown_to_primary_team_details(self): """ Only call this if :meth:`is_team_merge_request_accepted_shown_to_primary_team_details` is true. :rtype: TeamMergeRequestAcceptedShownToPrimaryTeamDetails """ if not self.is_team_merge_request_accepted_shown_to_primary_team_details(): raise AttributeError("tag 'team_merge_request_accepted_shown_to_primary_team_details' not set") return self._value def get_team_merge_request_accepted_shown_to_secondary_team_details(self): """ Only call this if :meth:`is_team_merge_request_accepted_shown_to_secondary_team_details` is true. :rtype: TeamMergeRequestAcceptedShownToSecondaryTeamDetails """ if not self.is_team_merge_request_accepted_shown_to_secondary_team_details(): raise AttributeError("tag 'team_merge_request_accepted_shown_to_secondary_team_details' not set") return self._value def get_team_merge_request_auto_canceled_details(self): """ Only call this if :meth:`is_team_merge_request_auto_canceled_details` is true. :rtype: TeamMergeRequestAutoCanceledDetails """ if not self.is_team_merge_request_auto_canceled_details(): raise AttributeError("tag 'team_merge_request_auto_canceled_details' not set") return self._value def get_team_merge_request_canceled_details(self): """ Only call this if :meth:`is_team_merge_request_canceled_details` is true. :rtype: TeamMergeRequestCanceledDetails """ if not self.is_team_merge_request_canceled_details(): raise AttributeError("tag 'team_merge_request_canceled_details' not set") return self._value def get_team_merge_request_canceled_shown_to_primary_team_details(self): """ Only call this if :meth:`is_team_merge_request_canceled_shown_to_primary_team_details` is true. :rtype: TeamMergeRequestCanceledShownToPrimaryTeamDetails """ if not self.is_team_merge_request_canceled_shown_to_primary_team_details(): raise AttributeError("tag 'team_merge_request_canceled_shown_to_primary_team_details' not set") return self._value def get_team_merge_request_canceled_shown_to_secondary_team_details(self): """ Only call this if :meth:`is_team_merge_request_canceled_shown_to_secondary_team_details` is true. :rtype: TeamMergeRequestCanceledShownToSecondaryTeamDetails """ if not self.is_team_merge_request_canceled_shown_to_secondary_team_details(): raise AttributeError("tag 'team_merge_request_canceled_shown_to_secondary_team_details' not set") return self._value def get_team_merge_request_expired_details(self): """ Only call this if :meth:`is_team_merge_request_expired_details` is true. :rtype: TeamMergeRequestExpiredDetails """ if not self.is_team_merge_request_expired_details(): raise AttributeError("tag 'team_merge_request_expired_details' not set") return self._value def get_team_merge_request_expired_shown_to_primary_team_details(self): """ Only call this if :meth:`is_team_merge_request_expired_shown_to_primary_team_details` is true. :rtype: TeamMergeRequestExpiredShownToPrimaryTeamDetails """ if not self.is_team_merge_request_expired_shown_to_primary_team_details(): raise AttributeError("tag 'team_merge_request_expired_shown_to_primary_team_details' not set") return self._value def get_team_merge_request_expired_shown_to_secondary_team_details(self): """ Only call this if :meth:`is_team_merge_request_expired_shown_to_secondary_team_details` is true. :rtype: TeamMergeRequestExpiredShownToSecondaryTeamDetails """ if not self.is_team_merge_request_expired_shown_to_secondary_team_details(): raise AttributeError("tag 'team_merge_request_expired_shown_to_secondary_team_details' not set") return self._value def get_team_merge_request_rejected_shown_to_primary_team_details(self): """ Only call this if :meth:`is_team_merge_request_rejected_shown_to_primary_team_details` is true. :rtype: TeamMergeRequestRejectedShownToPrimaryTeamDetails """ if not self.is_team_merge_request_rejected_shown_to_primary_team_details(): raise AttributeError("tag 'team_merge_request_rejected_shown_to_primary_team_details' not set") return self._value def get_team_merge_request_rejected_shown_to_secondary_team_details(self): """ Only call this if :meth:`is_team_merge_request_rejected_shown_to_secondary_team_details` is true. :rtype: TeamMergeRequestRejectedShownToSecondaryTeamDetails """ if not self.is_team_merge_request_rejected_shown_to_secondary_team_details(): raise AttributeError("tag 'team_merge_request_rejected_shown_to_secondary_team_details' not set") return self._value def get_team_merge_request_reminder_details(self): """ Only call this if :meth:`is_team_merge_request_reminder_details` is true. :rtype: TeamMergeRequestReminderDetails """ if not self.is_team_merge_request_reminder_details(): raise AttributeError("tag 'team_merge_request_reminder_details' not set") return self._value def get_team_merge_request_reminder_shown_to_primary_team_details(self): """ Only call this if :meth:`is_team_merge_request_reminder_shown_to_primary_team_details` is true. :rtype: TeamMergeRequestReminderShownToPrimaryTeamDetails """ if not self.is_team_merge_request_reminder_shown_to_primary_team_details(): raise AttributeError("tag 'team_merge_request_reminder_shown_to_primary_team_details' not set") return self._value def get_team_merge_request_reminder_shown_to_secondary_team_details(self): """ Only call this if :meth:`is_team_merge_request_reminder_shown_to_secondary_team_details` is true. :rtype: TeamMergeRequestReminderShownToSecondaryTeamDetails """ if not self.is_team_merge_request_reminder_shown_to_secondary_team_details(): raise AttributeError("tag 'team_merge_request_reminder_shown_to_secondary_team_details' not set") return self._value def get_team_merge_request_revoked_details(self): """ Only call this if :meth:`is_team_merge_request_revoked_details` is true. :rtype: TeamMergeRequestRevokedDetails """ if not self.is_team_merge_request_revoked_details(): raise AttributeError("tag 'team_merge_request_revoked_details' not set") return self._value def get_team_merge_request_sent_shown_to_primary_team_details(self): """ Only call this if :meth:`is_team_merge_request_sent_shown_to_primary_team_details` is true. :rtype: TeamMergeRequestSentShownToPrimaryTeamDetails """ if not self.is_team_merge_request_sent_shown_to_primary_team_details(): raise AttributeError("tag 'team_merge_request_sent_shown_to_primary_team_details' not set") return self._value def get_team_merge_request_sent_shown_to_secondary_team_details(self): """ Only call this if :meth:`is_team_merge_request_sent_shown_to_secondary_team_details` is true. :rtype: TeamMergeRequestSentShownToSecondaryTeamDetails """ if not self.is_team_merge_request_sent_shown_to_secondary_team_details(): raise AttributeError("tag 'team_merge_request_sent_shown_to_secondary_team_details' not set") return self._value def get_missing_details(self): """ Hints that this event was returned with missing details due to an internal error. Only call this if :meth:`is_missing_details` is true. :rtype: MissingDetails """ if not self.is_missing_details(): raise AttributeError("tag 'missing_details' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(EventDetails, self)._process_custom_annotations(annotation_type, field_path, processor) EventDetails_validator = bv.Union(EventDetails) class EventType(bb.Union): """ The type of the event with description. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar AdminAlertingAlertStateChangedType EventType.admin_alerting_alert_state_changed: (admin_alerting) Changed an alert state :ivar AdminAlertingChangedAlertConfigType EventType.admin_alerting_changed_alert_config: (admin_alerting) Changed an alert setting :ivar AdminAlertingTriggeredAlertType EventType.admin_alerting_triggered_alert: (admin_alerting) Triggered security alert :ivar RansomwareRestoreProcessCompletedType EventType.ransomware_restore_process_completed: (admin_alerting) Completed ransomware restore process :ivar RansomwareRestoreProcessStartedType EventType.ransomware_restore_process_started: (admin_alerting) Started ransomware restore process :ivar AppBlockedByPermissionsType EventType.app_blocked_by_permissions: (apps) Failed to connect app for member :ivar AppLinkTeamType EventType.app_link_team: (apps) Linked app for team :ivar AppLinkUserType EventType.app_link_user: (apps) Linked app for member :ivar AppUnlinkTeamType EventType.app_unlink_team: (apps) Unlinked app for team :ivar AppUnlinkUserType EventType.app_unlink_user: (apps) Unlinked app for member :ivar IntegrationConnectedType EventType.integration_connected: (apps) Connected integration for member :ivar IntegrationDisconnectedType EventType.integration_disconnected: (apps) Disconnected integration for member :ivar FileAddCommentType EventType.file_add_comment: (comments) Added file comment :ivar FileChangeCommentSubscriptionType EventType.file_change_comment_subscription: (comments) Subscribed to or unsubscribed from comment notifications for file :ivar FileDeleteCommentType EventType.file_delete_comment: (comments) Deleted file comment :ivar FileEditCommentType EventType.file_edit_comment: (comments) Edited file comment :ivar FileLikeCommentType EventType.file_like_comment: (comments) Liked file comment (deprecated, no longer logged) :ivar FileResolveCommentType EventType.file_resolve_comment: (comments) Resolved file comment :ivar FileUnlikeCommentType EventType.file_unlike_comment: (comments) Unliked file comment (deprecated, no longer logged) :ivar FileUnresolveCommentType EventType.file_unresolve_comment: (comments) Unresolved file comment :ivar GovernancePolicyAddFoldersType EventType.governance_policy_add_folders: (data_governance) Added folders to policy :ivar GovernancePolicyAddFolderFailedType EventType.governance_policy_add_folder_failed: (data_governance) Couldn't add a folder to a policy :ivar GovernancePolicyContentDisposedType EventType.governance_policy_content_disposed: (data_governance) Content disposed :ivar GovernancePolicyCreateType EventType.governance_policy_create: (data_governance) Activated a new policy :ivar GovernancePolicyDeleteType EventType.governance_policy_delete: (data_governance) Deleted a policy :ivar GovernancePolicyEditDetailsType EventType.governance_policy_edit_details: (data_governance) Edited policy :ivar GovernancePolicyEditDurationType EventType.governance_policy_edit_duration: (data_governance) Changed policy duration :ivar GovernancePolicyExportCreatedType EventType.governance_policy_export_created: (data_governance) Created a policy download :ivar GovernancePolicyExportRemovedType EventType.governance_policy_export_removed: (data_governance) Removed a policy download :ivar GovernancePolicyRemoveFoldersType EventType.governance_policy_remove_folders: (data_governance) Removed folders from policy :ivar GovernancePolicyReportCreatedType EventType.governance_policy_report_created: (data_governance) Created a summary report for a policy :ivar GovernancePolicyZipPartDownloadedType EventType.governance_policy_zip_part_downloaded: (data_governance) Downloaded content from a policy :ivar LegalHoldsActivateAHoldType EventType.legal_holds_activate_a_hold: (data_governance) Activated a hold :ivar LegalHoldsAddMembersType EventType.legal_holds_add_members: (data_governance) Added members to a hold :ivar LegalHoldsChangeHoldDetailsType EventType.legal_holds_change_hold_details: (data_governance) Edited details for a hold :ivar LegalHoldsChangeHoldNameType EventType.legal_holds_change_hold_name: (data_governance) Renamed a hold :ivar LegalHoldsExportAHoldType EventType.legal_holds_export_a_hold: (data_governance) Exported hold :ivar LegalHoldsExportCancelledType EventType.legal_holds_export_cancelled: (data_governance) Canceled export for a hold :ivar LegalHoldsExportDownloadedType EventType.legal_holds_export_downloaded: (data_governance) Downloaded export for a hold :ivar LegalHoldsExportRemovedType EventType.legal_holds_export_removed: (data_governance) Removed export for a hold :ivar LegalHoldsReleaseAHoldType EventType.legal_holds_release_a_hold: (data_governance) Released a hold :ivar LegalHoldsRemoveMembersType EventType.legal_holds_remove_members: (data_governance) Removed members from a hold :ivar LegalHoldsReportAHoldType EventType.legal_holds_report_a_hold: (data_governance) Created a summary report for a hold :ivar DeviceChangeIpDesktopType EventType.device_change_ip_desktop: (devices) Changed IP address associated with active desktop session :ivar DeviceChangeIpMobileType EventType.device_change_ip_mobile: (devices) Changed IP address associated with active mobile session :ivar DeviceChangeIpWebType EventType.device_change_ip_web: (devices) Changed IP address associated with active web session :ivar DeviceDeleteOnUnlinkFailType EventType.device_delete_on_unlink_fail: (devices) Failed to delete all files from unlinked device :ivar DeviceDeleteOnUnlinkSuccessType EventType.device_delete_on_unlink_success: (devices) Deleted all files from unlinked device :ivar DeviceLinkFailType EventType.device_link_fail: (devices) Failed to link device :ivar DeviceLinkSuccessType EventType.device_link_success: (devices) Linked device :ivar DeviceManagementDisabledType EventType.device_management_disabled: (devices) Disabled device management (deprecated, no longer logged) :ivar DeviceManagementEnabledType EventType.device_management_enabled: (devices) Enabled device management (deprecated, no longer logged) :ivar DeviceSyncBackupStatusChangedType EventType.device_sync_backup_status_changed: (devices) Enabled/disabled backup for computer :ivar DeviceUnlinkType EventType.device_unlink: (devices) Disconnected device :ivar DropboxPasswordsExportedType EventType.dropbox_passwords_exported: (devices) Exported passwords :ivar DropboxPasswordsNewDeviceEnrolledType EventType.dropbox_passwords_new_device_enrolled: (devices) Enrolled new Dropbox Passwords device :ivar EmmRefreshAuthTokenType EventType.emm_refresh_auth_token: (devices) Refreshed auth token used for setting up EMM :ivar ExternalDriveBackupEligibilityStatusCheckedType EventType.external_drive_backup_eligibility_status_checked: (devices) Checked external drive backup eligibility status :ivar ExternalDriveBackupStatusChangedType EventType.external_drive_backup_status_changed: (devices) Modified external drive backup :ivar AccountCaptureChangeAvailabilityType EventType.account_capture_change_availability: (domains) Granted/revoked option to enable account capture on team domains :ivar AccountCaptureMigrateAccountType EventType.account_capture_migrate_account: (domains) Account-captured user migrated account to team :ivar AccountCaptureNotificationEmailsSentType EventType.account_capture_notification_emails_sent: (domains) Sent account capture email to all unmanaged members :ivar AccountCaptureRelinquishAccountType EventType.account_capture_relinquish_account: (domains) Account-captured user changed account email to personal email :ivar DisabledDomainInvitesType EventType.disabled_domain_invites: (domains) Disabled domain invites (deprecated, no longer logged) :ivar DomainInvitesApproveRequestToJoinTeamType EventType.domain_invites_approve_request_to_join_team: (domains) Approved user's request to join team :ivar DomainInvitesDeclineRequestToJoinTeamType EventType.domain_invites_decline_request_to_join_team: (domains) Declined user's request to join team :ivar DomainInvitesEmailExistingUsersType EventType.domain_invites_email_existing_users: (domains) Sent domain invites to existing domain accounts (deprecated, no longer logged) :ivar DomainInvitesRequestToJoinTeamType EventType.domain_invites_request_to_join_team: (domains) Requested to join team :ivar DomainInvitesSetInviteNewUserPrefToNoType EventType.domain_invites_set_invite_new_user_pref_to_no: (domains) Disabled "Automatically invite new users" (deprecated, no longer logged) :ivar DomainInvitesSetInviteNewUserPrefToYesType EventType.domain_invites_set_invite_new_user_pref_to_yes: (domains) Enabled "Automatically invite new users" (deprecated, no longer logged) :ivar DomainVerificationAddDomainFailType EventType.domain_verification_add_domain_fail: (domains) Failed to verify team domain :ivar DomainVerificationAddDomainSuccessType EventType.domain_verification_add_domain_success: (domains) Verified team domain :ivar DomainVerificationRemoveDomainType EventType.domain_verification_remove_domain: (domains) Removed domain from list of verified team domains :ivar EnabledDomainInvitesType EventType.enabled_domain_invites: (domains) Enabled domain invites (deprecated, no longer logged) :ivar TeamEncryptionKeyCancelKeyDeletionType EventType.team_encryption_key_cancel_key_deletion: (encryption) Canceled team encryption key deletion :ivar TeamEncryptionKeyCreateKeyType EventType.team_encryption_key_create_key: (encryption) Created team encryption key :ivar TeamEncryptionKeyDeleteKeyType EventType.team_encryption_key_delete_key: (encryption) Deleted team encryption key :ivar TeamEncryptionKeyDisableKeyType EventType.team_encryption_key_disable_key: (encryption) Disabled team encryption key :ivar TeamEncryptionKeyEnableKeyType EventType.team_encryption_key_enable_key: (encryption) Enabled team encryption key :ivar TeamEncryptionKeyRotateKeyType EventType.team_encryption_key_rotate_key: (encryption) Rotated team encryption key (deprecated, no longer logged) :ivar TeamEncryptionKeyScheduleKeyDeletionType EventType.team_encryption_key_schedule_key_deletion: (encryption) Scheduled encryption key deletion :ivar ApplyNamingConventionType EventType.apply_naming_convention: (file_operations) Applied naming convention :ivar CreateFolderType EventType.create_folder: (file_operations) Created folders (deprecated, no longer logged) :ivar FileAddType EventType.file_add: (file_operations) Added files and/or folders :ivar FileAddFromAutomationType EventType.file_add_from_automation: (file_operations) Added files and/or folders from automation :ivar FileCopyType EventType.file_copy: (file_operations) Copied files and/or folders :ivar FileDeleteType EventType.file_delete: (file_operations) Deleted files and/or folders :ivar FileDownloadType EventType.file_download: (file_operations) Downloaded files and/or folders :ivar FileEditType EventType.file_edit: (file_operations) Edited files :ivar FileGetCopyReferenceType EventType.file_get_copy_reference: (file_operations) Created copy reference to file/folder :ivar FileLockingLockStatusChangedType EventType.file_locking_lock_status_changed: (file_operations) Locked/unlocked editing for a file :ivar FileMoveType EventType.file_move: (file_operations) Moved files and/or folders :ivar FilePermanentlyDeleteType EventType.file_permanently_delete: (file_operations) Permanently deleted files and/or folders :ivar FilePreviewType EventType.file_preview: (file_operations) Previewed files and/or folders :ivar FileRenameType EventType.file_rename: (file_operations) Renamed files and/or folders :ivar FileRestoreType EventType.file_restore: (file_operations) Restored deleted files and/or folders :ivar FileRevertType EventType.file_revert: (file_operations) Reverted files to previous version :ivar FileRollbackChangesType EventType.file_rollback_changes: (file_operations) Rolled back file actions :ivar FileSaveCopyReferenceType EventType.file_save_copy_reference: (file_operations) Saved file/folder using copy reference :ivar FolderOverviewDescriptionChangedType EventType.folder_overview_description_changed: (file_operations) Updated folder overview :ivar FolderOverviewItemPinnedType EventType.folder_overview_item_pinned: (file_operations) Pinned item to folder overview :ivar FolderOverviewItemUnpinnedType EventType.folder_overview_item_unpinned: (file_operations) Unpinned item from folder overview :ivar ObjectLabelAddedType EventType.object_label_added: (file_operations) Added a label :ivar ObjectLabelRemovedType EventType.object_label_removed: (file_operations) Removed a label :ivar ObjectLabelUpdatedValueType EventType.object_label_updated_value: (file_operations) Updated a label's value :ivar OrganizeFolderWithTidyType EventType.organize_folder_with_tidy: (file_operations) Organized a folder with multi-file organize :ivar ReplayFileDeleteType EventType.replay_file_delete: (file_operations) Deleted files in Replay :ivar RewindFolderType EventType.rewind_folder: (file_operations) Rewound a folder :ivar UndoNamingConventionType EventType.undo_naming_convention: (file_operations) Reverted naming convention :ivar UndoOrganizeFolderWithTidyType EventType.undo_organize_folder_with_tidy: (file_operations) Removed multi-file organize :ivar UserTagsAddedType EventType.user_tags_added: (file_operations) Tagged a file :ivar UserTagsRemovedType EventType.user_tags_removed: (file_operations) Removed tags :ivar EmailIngestReceiveFileType EventType.email_ingest_receive_file: (file_requests) Received files via Email to Dropbox :ivar FileRequestChangeType EventType.file_request_change: (file_requests) Changed file request :ivar FileRequestCloseType EventType.file_request_close: (file_requests) Closed file request :ivar FileRequestCreateType EventType.file_request_create: (file_requests) Created file request :ivar FileRequestDeleteType EventType.file_request_delete: (file_requests) Delete file request :ivar FileRequestReceiveFileType EventType.file_request_receive_file: (file_requests) Received files for file request :ivar GroupAddExternalIdType EventType.group_add_external_id: (groups) Added external ID for group :ivar GroupAddMemberType EventType.group_add_member: (groups) Added team members to group :ivar GroupChangeExternalIdType EventType.group_change_external_id: (groups) Changed external ID for group :ivar GroupChangeManagementTypeType EventType.group_change_management_type: (groups) Changed group management type :ivar GroupChangeMemberRoleType EventType.group_change_member_role: (groups) Changed manager permissions of group member :ivar GroupCreateType EventType.group_create: (groups) Created group :ivar GroupDeleteType EventType.group_delete: (groups) Deleted group :ivar GroupDescriptionUpdatedType EventType.group_description_updated: (groups) Updated group (deprecated, no longer logged) :ivar GroupJoinPolicyUpdatedType EventType.group_join_policy_updated: (groups) Updated group join policy (deprecated, no longer logged) :ivar GroupMovedType EventType.group_moved: (groups) Moved group (deprecated, no longer logged) :ivar GroupRemoveExternalIdType EventType.group_remove_external_id: (groups) Removed external ID for group :ivar GroupRemoveMemberType EventType.group_remove_member: (groups) Removed team members from group :ivar GroupRenameType EventType.group_rename: (groups) Renamed group :ivar AccountLockOrUnlockedType EventType.account_lock_or_unlocked: (logins) Unlocked/locked account after failed sign in attempts :ivar EmmErrorType EventType.emm_error: (logins) Failed to sign in via EMM (deprecated, replaced by 'Failed to sign in') :ivar GuestAdminSignedInViaTrustedTeamsType EventType.guest_admin_signed_in_via_trusted_teams: (logins) Started trusted team admin session :ivar GuestAdminSignedOutViaTrustedTeamsType EventType.guest_admin_signed_out_via_trusted_teams: (logins) Ended trusted team admin session :ivar LoginFailType EventType.login_fail: (logins) Failed to sign in :ivar LoginSuccessType EventType.login_success: (logins) Signed in :ivar LogoutType EventType.logout: (logins) Signed out :ivar ResellerSupportSessionEndType EventType.reseller_support_session_end: (logins) Ended reseller support session :ivar ResellerSupportSessionStartType EventType.reseller_support_session_start: (logins) Started reseller support session :ivar SignInAsSessionEndType EventType.sign_in_as_session_end: (logins) Ended admin sign-in-as session :ivar SignInAsSessionStartType EventType.sign_in_as_session_start: (logins) Started admin sign-in-as session :ivar SsoErrorType EventType.sso_error: (logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in') :ivar BackupAdminInvitationSentType EventType.backup_admin_invitation_sent: (members) Invited members to activate Backup :ivar BackupInvitationOpenedType EventType.backup_invitation_opened: (members) Opened Backup invite :ivar CreateTeamInviteLinkType EventType.create_team_invite_link: (members) Created team invite link :ivar DeleteTeamInviteLinkType EventType.delete_team_invite_link: (members) Deleted team invite link :ivar MemberAddExternalIdType EventType.member_add_external_id: (members) Added an external ID for team member :ivar MemberAddNameType EventType.member_add_name: (members) Added team member name :ivar MemberChangeAdminRoleType EventType.member_change_admin_role: (members) Changed team member admin role :ivar MemberChangeEmailType EventType.member_change_email: (members) Changed team member email :ivar MemberChangeExternalIdType EventType.member_change_external_id: (members) Changed the external ID for team member :ivar MemberChangeMembershipTypeType EventType.member_change_membership_type: (members) Changed membership type (limited/full) of member (deprecated, no longer logged) :ivar MemberChangeNameType EventType.member_change_name: (members) Changed team member name :ivar MemberChangeResellerRoleType EventType.member_change_reseller_role: (members) Changed team member reseller role :ivar MemberChangeStatusType EventType.member_change_status: (members) Changed member status (invited, joined, suspended, etc.) :ivar MemberDeleteManualContactsType EventType.member_delete_manual_contacts: (members) Cleared manually added contacts :ivar MemberDeleteProfilePhotoType EventType.member_delete_profile_photo: (members) Deleted team member profile photo :ivar MemberPermanentlyDeleteAccountContentsType EventType.member_permanently_delete_account_contents: (members) Permanently deleted contents of deleted team member account :ivar MemberRemoveExternalIdType EventType.member_remove_external_id: (members) Removed the external ID for team member :ivar MemberSetProfilePhotoType EventType.member_set_profile_photo: (members) Set team member profile photo :ivar MemberSpaceLimitsAddCustomQuotaType EventType.member_space_limits_add_custom_quota: (members) Set custom member space limit :ivar MemberSpaceLimitsChangeCustomQuotaType EventType.member_space_limits_change_custom_quota: (members) Changed custom member space limit :ivar MemberSpaceLimitsChangeStatusType EventType.member_space_limits_change_status: (members) Changed space limit status :ivar MemberSpaceLimitsRemoveCustomQuotaType EventType.member_space_limits_remove_custom_quota: (members) Removed custom member space limit :ivar MemberSuggestType EventType.member_suggest: (members) Suggested person to add to team :ivar MemberTransferAccountContentsType EventType.member_transfer_account_contents: (members) Transferred contents of deleted member account to another member :ivar PendingSecondaryEmailAddedType EventType.pending_secondary_email_added: (members) Added pending secondary email :ivar SecondaryEmailDeletedType EventType.secondary_email_deleted: (members) Deleted secondary email :ivar SecondaryEmailVerifiedType EventType.secondary_email_verified: (members) Verified secondary email :ivar SecondaryMailsPolicyChangedType EventType.secondary_mails_policy_changed: (members) Secondary mails policy changed :ivar BinderAddPageType EventType.binder_add_page: (paper) Added Binder page (deprecated, replaced by 'Edited files') :ivar BinderAddSectionType EventType.binder_add_section: (paper) Added Binder section (deprecated, replaced by 'Edited files') :ivar BinderRemovePageType EventType.binder_remove_page: (paper) Removed Binder page (deprecated, replaced by 'Edited files') :ivar BinderRemoveSectionType EventType.binder_remove_section: (paper) Removed Binder section (deprecated, replaced by 'Edited files') :ivar BinderRenamePageType EventType.binder_rename_page: (paper) Renamed Binder page (deprecated, replaced by 'Edited files') :ivar BinderRenameSectionType EventType.binder_rename_section: (paper) Renamed Binder section (deprecated, replaced by 'Edited files') :ivar BinderReorderPageType EventType.binder_reorder_page: (paper) Reordered Binder page (deprecated, replaced by 'Edited files') :ivar BinderReorderSectionType EventType.binder_reorder_section: (paper) Reordered Binder section (deprecated, replaced by 'Edited files') :ivar PaperContentAddMemberType EventType.paper_content_add_member: (paper) Added users and/or groups to Paper doc/folder :ivar PaperContentAddToFolderType EventType.paper_content_add_to_folder: (paper) Added Paper doc/folder to folder :ivar PaperContentArchiveType EventType.paper_content_archive: (paper) Archived Paper doc/folder :ivar PaperContentCreateType EventType.paper_content_create: (paper) Created Paper doc/folder :ivar PaperContentPermanentlyDeleteType EventType.paper_content_permanently_delete: (paper) Permanently deleted Paper doc/folder :ivar PaperContentRemoveFromFolderType EventType.paper_content_remove_from_folder: (paper) Removed Paper doc/folder from folder :ivar PaperContentRemoveMemberType EventType.paper_content_remove_member: (paper) Removed users and/or groups from Paper doc/folder :ivar PaperContentRenameType EventType.paper_content_rename: (paper) Renamed Paper doc/folder :ivar PaperContentRestoreType EventType.paper_content_restore: (paper) Restored archived Paper doc/folder :ivar PaperDocAddCommentType EventType.paper_doc_add_comment: (paper) Added Paper doc comment :ivar PaperDocChangeMemberRoleType EventType.paper_doc_change_member_role: (paper) Changed member permissions for Paper doc :ivar PaperDocChangeSharingPolicyType EventType.paper_doc_change_sharing_policy: (paper) Changed sharing setting for Paper doc :ivar PaperDocChangeSubscriptionType EventType.paper_doc_change_subscription: (paper) Followed/unfollowed Paper doc :ivar PaperDocDeletedType EventType.paper_doc_deleted: (paper) Archived Paper doc (deprecated, no longer logged) :ivar PaperDocDeleteCommentType EventType.paper_doc_delete_comment: (paper) Deleted Paper doc comment :ivar PaperDocDownloadType EventType.paper_doc_download: (paper) Downloaded Paper doc in specific format :ivar PaperDocEditType EventType.paper_doc_edit: (paper) Edited Paper doc :ivar PaperDocEditCommentType EventType.paper_doc_edit_comment: (paper) Edited Paper doc comment :ivar PaperDocFollowedType EventType.paper_doc_followed: (paper) Followed Paper doc (deprecated, replaced by 'Followed/unfollowed Paper doc') :ivar PaperDocMentionType EventType.paper_doc_mention: (paper) Mentioned user in Paper doc :ivar PaperDocOwnershipChangedType EventType.paper_doc_ownership_changed: (paper) Transferred ownership of Paper doc :ivar PaperDocRequestAccessType EventType.paper_doc_request_access: (paper) Requested access to Paper doc :ivar PaperDocResolveCommentType EventType.paper_doc_resolve_comment: (paper) Resolved Paper doc comment :ivar PaperDocRevertType EventType.paper_doc_revert: (paper) Restored Paper doc to previous version :ivar PaperDocSlackShareType EventType.paper_doc_slack_share: (paper) Shared Paper doc via Slack :ivar PaperDocTeamInviteType EventType.paper_doc_team_invite: (paper) Shared Paper doc with users and/or groups (deprecated, no longer logged) :ivar PaperDocTrashedType EventType.paper_doc_trashed: (paper) Deleted Paper doc :ivar PaperDocUnresolveCommentType EventType.paper_doc_unresolve_comment: (paper) Unresolved Paper doc comment :ivar PaperDocUntrashedType EventType.paper_doc_untrashed: (paper) Restored Paper doc :ivar PaperDocViewType EventType.paper_doc_view: (paper) Viewed Paper doc :ivar PaperExternalViewAllowType EventType.paper_external_view_allow: (paper) Changed Paper external sharing setting to anyone (deprecated, no longer logged) :ivar PaperExternalViewDefaultTeamType EventType.paper_external_view_default_team: (paper) Changed Paper external sharing setting to default team (deprecated, no longer logged) :ivar PaperExternalViewForbidType EventType.paper_external_view_forbid: (paper) Changed Paper external sharing setting to team-only (deprecated, no longer logged) :ivar PaperFolderChangeSubscriptionType EventType.paper_folder_change_subscription: (paper) Followed/unfollowed Paper folder :ivar PaperFolderDeletedType EventType.paper_folder_deleted: (paper) Archived Paper folder (deprecated, no longer logged) :ivar PaperFolderFollowedType EventType.paper_folder_followed: (paper) Followed Paper folder (deprecated, replaced by 'Followed/unfollowed Paper folder') :ivar PaperFolderTeamInviteType EventType.paper_folder_team_invite: (paper) Shared Paper folder with users and/or groups (deprecated, no longer logged) :ivar PaperPublishedLinkChangePermissionType EventType.paper_published_link_change_permission: (paper) Changed permissions for published doc :ivar PaperPublishedLinkCreateType EventType.paper_published_link_create: (paper) Published doc :ivar PaperPublishedLinkDisabledType EventType.paper_published_link_disabled: (paper) Unpublished doc :ivar PaperPublishedLinkViewType EventType.paper_published_link_view: (paper) Viewed published doc :ivar PasswordChangeType EventType.password_change: (passwords) Changed password :ivar PasswordResetType EventType.password_reset: (passwords) Reset password :ivar PasswordResetAllType EventType.password_reset_all: (passwords) Reset all team member passwords :ivar ClassificationCreateReportType EventType.classification_create_report: (reports) Created Classification report :ivar ClassificationCreateReportFailType EventType.classification_create_report_fail: (reports) Couldn't create Classification report :ivar EmmCreateExceptionsReportType EventType.emm_create_exceptions_report: (reports) Created EMM-excluded users report :ivar EmmCreateUsageReportType EventType.emm_create_usage_report: (reports) Created EMM mobile app usage report :ivar ExportMembersReportType EventType.export_members_report: (reports) Created member data report :ivar ExportMembersReportFailType EventType.export_members_report_fail: (reports) Failed to create members data report :ivar ExternalSharingCreateReportType EventType.external_sharing_create_report: (reports) Created External sharing report :ivar ExternalSharingReportFailedType EventType.external_sharing_report_failed: (reports) Couldn't create External sharing report :ivar NoExpirationLinkGenCreateReportType EventType.no_expiration_link_gen_create_report: (reports) Report created: Links created with no expiration :ivar NoExpirationLinkGenReportFailedType EventType.no_expiration_link_gen_report_failed: (reports) Couldn't create report: Links created with no expiration :ivar NoPasswordLinkGenCreateReportType EventType.no_password_link_gen_create_report: (reports) Report created: Links created without passwords :ivar NoPasswordLinkGenReportFailedType EventType.no_password_link_gen_report_failed: (reports) Couldn't create report: Links created without passwords :ivar NoPasswordLinkViewCreateReportType EventType.no_password_link_view_create_report: (reports) Report created: Views of links without passwords :ivar NoPasswordLinkViewReportFailedType EventType.no_password_link_view_report_failed: (reports) Couldn't create report: Views of links without passwords :ivar OutdatedLinkViewCreateReportType EventType.outdated_link_view_create_report: (reports) Report created: Views of old links :ivar OutdatedLinkViewReportFailedType EventType.outdated_link_view_report_failed: (reports) Couldn't create report: Views of old links :ivar PaperAdminExportStartType EventType.paper_admin_export_start: (reports) Exported all team Paper docs :ivar RansomwareAlertCreateReportType EventType.ransomware_alert_create_report: (reports) Created ransomware report :ivar RansomwareAlertCreateReportFailedType EventType.ransomware_alert_create_report_failed: (reports) Couldn't generate ransomware report :ivar SmartSyncCreateAdminPrivilegeReportType EventType.smart_sync_create_admin_privilege_report: (reports) Created Smart Sync non-admin devices report :ivar TeamActivityCreateReportType EventType.team_activity_create_report: (reports) Created team activity report :ivar TeamActivityCreateReportFailType EventType.team_activity_create_report_fail: (reports) Couldn't generate team activity report :ivar CollectionShareType EventType.collection_share: (sharing) Shared album :ivar FileTransfersFileAddType EventType.file_transfers_file_add: (sharing) Transfer files added :ivar FileTransfersTransferDeleteType EventType.file_transfers_transfer_delete: (sharing) Deleted transfer :ivar FileTransfersTransferDownloadType EventType.file_transfers_transfer_download: (sharing) Transfer downloaded :ivar FileTransfersTransferSendType EventType.file_transfers_transfer_send: (sharing) Sent transfer :ivar FileTransfersTransferViewType EventType.file_transfers_transfer_view: (sharing) Viewed transfer :ivar NoteAclInviteOnlyType EventType.note_acl_invite_only: (sharing) Changed Paper doc to invite-only (deprecated, no longer logged) :ivar NoteAclLinkType EventType.note_acl_link: (sharing) Changed Paper doc to link-accessible (deprecated, no longer logged) :ivar NoteAclTeamLinkType EventType.note_acl_team_link: (sharing) Changed Paper doc to link-accessible for team (deprecated, no longer logged) :ivar NoteSharedType EventType.note_shared: (sharing) Shared Paper doc (deprecated, no longer logged) :ivar NoteShareReceiveType EventType.note_share_receive: (sharing) Shared received Paper doc (deprecated, no longer logged) :ivar OpenNoteSharedType EventType.open_note_shared: (sharing) Opened shared Paper doc (deprecated, no longer logged) :ivar ReplayFileSharedLinkCreatedType EventType.replay_file_shared_link_created: (sharing) Created shared link in Replay :ivar ReplayFileSharedLinkModifiedType EventType.replay_file_shared_link_modified: (sharing) Modified shared link in Replay :ivar ReplayProjectTeamAddType EventType.replay_project_team_add: (sharing) Added member to Replay Project :ivar ReplayProjectTeamDeleteType EventType.replay_project_team_delete: (sharing) Removed member from Replay Project :ivar SfAddGroupType EventType.sf_add_group: (sharing) Added team to shared folder (deprecated, no longer logged) :ivar SfAllowNonMembersToViewSharedLinksType EventType.sf_allow_non_members_to_view_shared_links: (sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged) :ivar SfExternalInviteWarnType EventType.sf_external_invite_warn: (sharing) Set team members to see warning before sharing folders outside team (deprecated, no longer logged) :ivar SfFbInviteType EventType.sf_fb_invite: (sharing) Invited Facebook users to shared folder (deprecated, no longer logged) :ivar SfFbInviteChangeRoleType EventType.sf_fb_invite_change_role: (sharing) Changed Facebook user's role in shared folder (deprecated, no longer logged) :ivar SfFbUninviteType EventType.sf_fb_uninvite: (sharing) Uninvited Facebook user from shared folder (deprecated, no longer logged) :ivar SfInviteGroupType EventType.sf_invite_group: (sharing) Invited group to shared folder (deprecated, no longer logged) :ivar SfTeamGrantAccessType EventType.sf_team_grant_access: (sharing) Granted access to shared folder (deprecated, no longer logged) :ivar SfTeamInviteType EventType.sf_team_invite: (sharing) Invited team members to shared folder (deprecated, replaced by 'Invited user to Dropbox and added them to shared file/folder') :ivar SfTeamInviteChangeRoleType EventType.sf_team_invite_change_role: (sharing) Changed team member's role in shared folder (deprecated, no longer logged) :ivar SfTeamJoinType EventType.sf_team_join: (sharing) Joined team member's shared folder (deprecated, no longer logged) :ivar SfTeamJoinFromOobLinkType EventType.sf_team_join_from_oob_link: (sharing) Joined team member's shared folder from link (deprecated, no longer logged) :ivar SfTeamUninviteType EventType.sf_team_uninvite: (sharing) Unshared folder with team member (deprecated, replaced by 'Removed invitee from shared file/folder before invite was accepted') :ivar SharedContentAddInviteesType EventType.shared_content_add_invitees: (sharing) Invited user to Dropbox and added them to shared file/folder :ivar SharedContentAddLinkExpiryType EventType.shared_content_add_link_expiry: (sharing) Added expiration date to link for shared file/folder (deprecated, no longer logged) :ivar SharedContentAddLinkPasswordType EventType.shared_content_add_link_password: (sharing) Added password to link for shared file/folder (deprecated, no longer logged) :ivar SharedContentAddMemberType EventType.shared_content_add_member: (sharing) Added users and/or groups to shared file/folder :ivar SharedContentChangeDownloadsPolicyType EventType.shared_content_change_downloads_policy: (sharing) Changed whether members can download shared file/folder (deprecated, no longer logged) :ivar SharedContentChangeInviteeRoleType EventType.shared_content_change_invitee_role: (sharing) Changed access type of invitee to shared file/folder before invite was accepted :ivar SharedContentChangeLinkAudienceType EventType.shared_content_change_link_audience: (sharing) Changed link audience of shared file/folder (deprecated, no longer logged) :ivar SharedContentChangeLinkExpiryType EventType.shared_content_change_link_expiry: (sharing) Changed link expiration of shared file/folder (deprecated, no longer logged) :ivar SharedContentChangeLinkPasswordType EventType.shared_content_change_link_password: (sharing) Changed link password of shared file/folder (deprecated, no longer logged) :ivar SharedContentChangeMemberRoleType EventType.shared_content_change_member_role: (sharing) Changed access type of shared file/folder member :ivar SharedContentChangeViewerInfoPolicyType EventType.shared_content_change_viewer_info_policy: (sharing) Changed whether members can see who viewed shared file/folder :ivar SharedContentClaimInvitationType EventType.shared_content_claim_invitation: (sharing) Acquired membership of shared file/folder by accepting invite :ivar SharedContentCopyType EventType.shared_content_copy: (sharing) Copied shared file/folder to own Dropbox :ivar SharedContentDownloadType EventType.shared_content_download: (sharing) Downloaded shared file/folder :ivar SharedContentRelinquishMembershipType EventType.shared_content_relinquish_membership: (sharing) Left shared file/folder :ivar SharedContentRemoveInviteesType EventType.shared_content_remove_invitees: (sharing) Removed invitee from shared file/folder before invite was accepted :ivar SharedContentRemoveLinkExpiryType EventType.shared_content_remove_link_expiry: (sharing) Removed link expiration date of shared file/folder (deprecated, no longer logged) :ivar SharedContentRemoveLinkPasswordType EventType.shared_content_remove_link_password: (sharing) Removed link password of shared file/folder (deprecated, no longer logged) :ivar SharedContentRemoveMemberType EventType.shared_content_remove_member: (sharing) Removed user/group from shared file/folder :ivar SharedContentRequestAccessType EventType.shared_content_request_access: (sharing) Requested access to shared file/folder :ivar SharedContentRestoreInviteesType EventType.shared_content_restore_invitees: (sharing) Restored shared file/folder invitees :ivar SharedContentRestoreMemberType EventType.shared_content_restore_member: (sharing) Restored users and/or groups to membership of shared file/folder :ivar SharedContentUnshareType EventType.shared_content_unshare: (sharing) Unshared file/folder by clearing membership :ivar SharedContentViewType EventType.shared_content_view: (sharing) Previewed shared file/folder :ivar SharedFolderChangeLinkPolicyType EventType.shared_folder_change_link_policy: (sharing) Changed who can access shared folder via link :ivar SharedFolderChangeMembersInheritancePolicyType EventType.shared_folder_change_members_inheritance_policy: (sharing) Changed whether shared folder inherits members from parent folder :ivar SharedFolderChangeMembersManagementPolicyType EventType.shared_folder_change_members_management_policy: (sharing) Changed who can add/remove members of shared folder :ivar SharedFolderChangeMembersPolicyType EventType.shared_folder_change_members_policy: (sharing) Changed who can become member of shared folder :ivar SharedFolderCreateType EventType.shared_folder_create: (sharing) Created shared folder :ivar SharedFolderDeclineInvitationType EventType.shared_folder_decline_invitation: (sharing) Declined team member's invite to shared folder :ivar SharedFolderMountType EventType.shared_folder_mount: (sharing) Added shared folder to own Dropbox :ivar SharedFolderNestType EventType.shared_folder_nest: (sharing) Changed parent of shared folder :ivar SharedFolderTransferOwnershipType EventType.shared_folder_transfer_ownership: (sharing) Transferred ownership of shared folder to another member :ivar SharedFolderUnmountType EventType.shared_folder_unmount: (sharing) Deleted shared folder from Dropbox :ivar SharedLinkAddExpiryType EventType.shared_link_add_expiry: (sharing) Added shared link expiration date :ivar SharedLinkChangeExpiryType EventType.shared_link_change_expiry: (sharing) Changed shared link expiration date :ivar SharedLinkChangeVisibilityType EventType.shared_link_change_visibility: (sharing) Changed visibility of shared link :ivar SharedLinkCopyType EventType.shared_link_copy: (sharing) Added file/folder to Dropbox from shared link :ivar SharedLinkCreateType EventType.shared_link_create: (sharing) Created shared link :ivar SharedLinkDisableType EventType.shared_link_disable: (sharing) Removed shared link :ivar SharedLinkDownloadType EventType.shared_link_download: (sharing) Downloaded file/folder from shared link :ivar SharedLinkRemoveExpiryType EventType.shared_link_remove_expiry: (sharing) Removed shared link expiration date :ivar SharedLinkSettingsAddExpirationType EventType.shared_link_settings_add_expiration: (sharing) Added an expiration date to the shared link :ivar SharedLinkSettingsAddPasswordType EventType.shared_link_settings_add_password: (sharing) Added a password to the shared link :ivar SharedLinkSettingsAllowDownloadDisabledType EventType.shared_link_settings_allow_download_disabled: (sharing) Disabled downloads :ivar SharedLinkSettingsAllowDownloadEnabledType EventType.shared_link_settings_allow_download_enabled: (sharing) Enabled downloads :ivar SharedLinkSettingsChangeAudienceType EventType.shared_link_settings_change_audience: (sharing) Changed the audience of the shared link :ivar SharedLinkSettingsChangeExpirationType EventType.shared_link_settings_change_expiration: (sharing) Changed the expiration date of the shared link :ivar SharedLinkSettingsChangePasswordType EventType.shared_link_settings_change_password: (sharing) Changed the password of the shared link :ivar SharedLinkSettingsRemoveExpirationType EventType.shared_link_settings_remove_expiration: (sharing) Removed the expiration date from the shared link :ivar SharedLinkSettingsRemovePasswordType EventType.shared_link_settings_remove_password: (sharing) Removed the password from the shared link :ivar SharedLinkShareType EventType.shared_link_share: (sharing) Added members as audience of shared link :ivar SharedLinkViewType EventType.shared_link_view: (sharing) Opened shared link :ivar SharedNoteOpenedType EventType.shared_note_opened: (sharing) Opened shared Paper doc (deprecated, no longer logged) :ivar ShmodelDisableDownloadsType EventType.shmodel_disable_downloads: (sharing) Disabled downloads for link (deprecated, no longer logged) :ivar ShmodelEnableDownloadsType EventType.shmodel_enable_downloads: (sharing) Enabled downloads for link (deprecated, no longer logged) :ivar ShmodelGroupShareType EventType.shmodel_group_share: (sharing) Shared link with group (deprecated, no longer logged) :ivar ShowcaseAccessGrantedType EventType.showcase_access_granted: (showcase) Granted access to showcase :ivar ShowcaseAddMemberType EventType.showcase_add_member: (showcase) Added member to showcase :ivar ShowcaseArchivedType EventType.showcase_archived: (showcase) Archived showcase :ivar ShowcaseCreatedType EventType.showcase_created: (showcase) Created showcase :ivar ShowcaseDeleteCommentType EventType.showcase_delete_comment: (showcase) Deleted showcase comment :ivar ShowcaseEditedType EventType.showcase_edited: (showcase) Edited showcase :ivar ShowcaseEditCommentType EventType.showcase_edit_comment: (showcase) Edited showcase comment :ivar ShowcaseFileAddedType EventType.showcase_file_added: (showcase) Added file to showcase :ivar ShowcaseFileDownloadType EventType.showcase_file_download: (showcase) Downloaded file from showcase :ivar ShowcaseFileRemovedType EventType.showcase_file_removed: (showcase) Removed file from showcase :ivar ShowcaseFileViewType EventType.showcase_file_view: (showcase) Viewed file in showcase :ivar ShowcasePermanentlyDeletedType EventType.showcase_permanently_deleted: (showcase) Permanently deleted showcase :ivar ShowcasePostCommentType EventType.showcase_post_comment: (showcase) Added showcase comment :ivar ShowcaseRemoveMemberType EventType.showcase_remove_member: (showcase) Removed member from showcase :ivar ShowcaseRenamedType EventType.showcase_renamed: (showcase) Renamed showcase :ivar ShowcaseRequestAccessType EventType.showcase_request_access: (showcase) Requested access to showcase :ivar ShowcaseResolveCommentType EventType.showcase_resolve_comment: (showcase) Resolved showcase comment :ivar ShowcaseRestoredType EventType.showcase_restored: (showcase) Unarchived showcase :ivar ShowcaseTrashedType EventType.showcase_trashed: (showcase) Deleted showcase :ivar ShowcaseTrashedDeprecatedType EventType.showcase_trashed_deprecated: (showcase) Deleted showcase (old version) (deprecated, replaced by 'Deleted showcase') :ivar ShowcaseUnresolveCommentType EventType.showcase_unresolve_comment: (showcase) Unresolved showcase comment :ivar ShowcaseUntrashedType EventType.showcase_untrashed: (showcase) Restored showcase :ivar ShowcaseUntrashedDeprecatedType EventType.showcase_untrashed_deprecated: (showcase) Restored showcase (old version) (deprecated, replaced by 'Restored showcase') :ivar ShowcaseViewType EventType.showcase_view: (showcase) Viewed showcase :ivar SsoAddCertType EventType.sso_add_cert: (sso) Added X.509 certificate for SSO :ivar SsoAddLoginUrlType EventType.sso_add_login_url: (sso) Added sign-in URL for SSO :ivar SsoAddLogoutUrlType EventType.sso_add_logout_url: (sso) Added sign-out URL for SSO :ivar SsoChangeCertType EventType.sso_change_cert: (sso) Changed X.509 certificate for SSO :ivar SsoChangeLoginUrlType EventType.sso_change_login_url: (sso) Changed sign-in URL for SSO :ivar SsoChangeLogoutUrlType EventType.sso_change_logout_url: (sso) Changed sign-out URL for SSO :ivar SsoChangeSamlIdentityModeType EventType.sso_change_saml_identity_mode: (sso) Changed SAML identity mode for SSO :ivar SsoRemoveCertType EventType.sso_remove_cert: (sso) Removed X.509 certificate for SSO :ivar SsoRemoveLoginUrlType EventType.sso_remove_login_url: (sso) Removed sign-in URL for SSO :ivar SsoRemoveLogoutUrlType EventType.sso_remove_logout_url: (sso) Removed sign-out URL for SSO :ivar TeamFolderChangeStatusType EventType.team_folder_change_status: (team_folders) Changed archival status of team folder :ivar TeamFolderCreateType EventType.team_folder_create: (team_folders) Created team folder in active status :ivar TeamFolderDowngradeType EventType.team_folder_downgrade: (team_folders) Downgraded team folder to regular shared folder :ivar TeamFolderPermanentlyDeleteType EventType.team_folder_permanently_delete: (team_folders) Permanently deleted archived team folder :ivar TeamFolderRenameType EventType.team_folder_rename: (team_folders) Renamed active/archived team folder :ivar TeamSelectiveSyncSettingsChangedType EventType.team_selective_sync_settings_changed: (team_folders) Changed sync default :ivar AccountCaptureChangePolicyType EventType.account_capture_change_policy: (team_policies) Changed account capture setting on team domain :ivar AdminEmailRemindersChangedType EventType.admin_email_reminders_changed: (team_policies) Changed admin reminder settings for requests to join the team :ivar AllowDownloadDisabledType EventType.allow_download_disabled: (team_policies) Disabled downloads (deprecated, no longer logged) :ivar AllowDownloadEnabledType EventType.allow_download_enabled: (team_policies) Enabled downloads (deprecated, no longer logged) :ivar AppPermissionsChangedType EventType.app_permissions_changed: (team_policies) Changed app permissions :ivar CameraUploadsPolicyChangedType EventType.camera_uploads_policy_changed: (team_policies) Changed camera uploads setting for team :ivar CaptureTranscriptPolicyChangedType EventType.capture_transcript_policy_changed: (team_policies) Changed Capture transcription policy for team :ivar ClassificationChangePolicyType EventType.classification_change_policy: (team_policies) Changed classification policy for team :ivar ComputerBackupPolicyChangedType EventType.computer_backup_policy_changed: (team_policies) Changed computer backup policy for team :ivar ContentAdministrationPolicyChangedType EventType.content_administration_policy_changed: (team_policies) Changed content management setting :ivar DataPlacementRestrictionChangePolicyType EventType.data_placement_restriction_change_policy: (team_policies) Set restrictions on data center locations where team data resides :ivar DataPlacementRestrictionSatisfyPolicyType EventType.data_placement_restriction_satisfy_policy: (team_policies) Completed restrictions on data center locations where team data resides :ivar DeviceApprovalsAddExceptionType EventType.device_approvals_add_exception: (team_policies) Added members to device approvals exception list :ivar DeviceApprovalsChangeDesktopPolicyType EventType.device_approvals_change_desktop_policy: (team_policies) Set/removed limit on number of computers member can link to team Dropbox account :ivar DeviceApprovalsChangeMobilePolicyType EventType.device_approvals_change_mobile_policy: (team_policies) Set/removed limit on number of mobile devices member can link to team Dropbox account :ivar DeviceApprovalsChangeOverageActionType EventType.device_approvals_change_overage_action: (team_policies) Changed device approvals setting when member is over limit :ivar DeviceApprovalsChangeUnlinkActionType EventType.device_approvals_change_unlink_action: (team_policies) Changed device approvals setting when member unlinks approved device :ivar DeviceApprovalsRemoveExceptionType EventType.device_approvals_remove_exception: (team_policies) Removed members from device approvals exception list :ivar DirectoryRestrictionsAddMembersType EventType.directory_restrictions_add_members: (team_policies) Added members to directory restrictions list :ivar DirectoryRestrictionsRemoveMembersType EventType.directory_restrictions_remove_members: (team_policies) Removed members from directory restrictions list :ivar DropboxPasswordsPolicyChangedType EventType.dropbox_passwords_policy_changed: (team_policies) Changed Dropbox Passwords policy for team :ivar EmailIngestPolicyChangedType EventType.email_ingest_policy_changed: (team_policies) Changed email to Dropbox policy for team :ivar EmmAddExceptionType EventType.emm_add_exception: (team_policies) Added members to EMM exception list :ivar EmmChangePolicyType EventType.emm_change_policy: (team_policies) Enabled/disabled enterprise mobility management for members :ivar EmmRemoveExceptionType EventType.emm_remove_exception: (team_policies) Removed members from EMM exception list :ivar ExtendedVersionHistoryChangePolicyType EventType.extended_version_history_change_policy: (team_policies) Accepted/opted out of extended version history :ivar ExternalDriveBackupPolicyChangedType EventType.external_drive_backup_policy_changed: (team_policies) Changed external drive backup policy for team :ivar FileCommentsChangePolicyType EventType.file_comments_change_policy: (team_policies) Enabled/disabled commenting on team files :ivar FileLockingPolicyChangedType EventType.file_locking_policy_changed: (team_policies) Changed file locking policy for team :ivar FileProviderMigrationPolicyChangedType EventType.file_provider_migration_policy_changed: (team_policies) Changed File Provider Migration policy for team :ivar FileRequestsChangePolicyType EventType.file_requests_change_policy: (team_policies) Enabled/disabled file requests :ivar FileRequestsEmailsEnabledType EventType.file_requests_emails_enabled: (team_policies) Enabled file request emails for everyone (deprecated, no longer logged) :ivar FileRequestsEmailsRestrictedToTeamOnlyType EventType.file_requests_emails_restricted_to_team_only: (team_policies) Enabled file request emails for team (deprecated, no longer logged) :ivar FileTransfersPolicyChangedType EventType.file_transfers_policy_changed: (team_policies) Changed file transfers policy for team :ivar FolderLinkRestrictionPolicyChangedType EventType.folder_link_restriction_policy_changed: (team_policies) Changed folder link restrictions policy for team :ivar GoogleSsoChangePolicyType EventType.google_sso_change_policy: (team_policies) Enabled/disabled Google single sign-on for team :ivar GroupUserManagementChangePolicyType EventType.group_user_management_change_policy: (team_policies) Changed who can create groups :ivar IntegrationPolicyChangedType EventType.integration_policy_changed: (team_policies) Changed integration policy for team :ivar InviteAcceptanceEmailPolicyChangedType EventType.invite_acceptance_email_policy_changed: (team_policies) Changed invite accept email policy for team :ivar MemberRequestsChangePolicyType EventType.member_requests_change_policy: (team_policies) Changed whether users can find team when not invited :ivar MemberSendInvitePolicyChangedType EventType.member_send_invite_policy_changed: (team_policies) Changed member send invite policy for team :ivar MemberSpaceLimitsAddExceptionType EventType.member_space_limits_add_exception: (team_policies) Added members to member space limit exception list :ivar MemberSpaceLimitsChangeCapsTypePolicyType EventType.member_space_limits_change_caps_type_policy: (team_policies) Changed member space limit type for team :ivar MemberSpaceLimitsChangePolicyType EventType.member_space_limits_change_policy: (team_policies) Changed team default member space limit :ivar MemberSpaceLimitsRemoveExceptionType EventType.member_space_limits_remove_exception: (team_policies) Removed members from member space limit exception list :ivar MemberSuggestionsChangePolicyType EventType.member_suggestions_change_policy: (team_policies) Enabled/disabled option for team members to suggest people to add to team :ivar MicrosoftOfficeAddinChangePolicyType EventType.microsoft_office_addin_change_policy: (team_policies) Enabled/disabled Microsoft Office add-in :ivar NetworkControlChangePolicyType EventType.network_control_change_policy: (team_policies) Enabled/disabled network control :ivar PaperChangeDeploymentPolicyType EventType.paper_change_deployment_policy: (team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members :ivar PaperChangeMemberLinkPolicyType EventType.paper_change_member_link_policy: (team_policies) Changed whether non-members can view Paper docs with link (deprecated, no longer logged) :ivar PaperChangeMemberPolicyType EventType.paper_change_member_policy: (team_policies) Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or anyone by default :ivar PaperChangePolicyType EventType.paper_change_policy: (team_policies) Enabled/disabled Dropbox Paper for team :ivar PaperDefaultFolderPolicyChangedType EventType.paper_default_folder_policy_changed: (team_policies) Changed Paper Default Folder Policy setting for team :ivar PaperDesktopPolicyChangedType EventType.paper_desktop_policy_changed: (team_policies) Enabled/disabled Paper Desktop for team :ivar PaperEnabledUsersGroupAdditionType EventType.paper_enabled_users_group_addition: (team_policies) Added users to Paper-enabled users list :ivar PaperEnabledUsersGroupRemovalType EventType.paper_enabled_users_group_removal: (team_policies) Removed users from Paper-enabled users list :ivar PasswordStrengthRequirementsChangePolicyType EventType.password_strength_requirements_change_policy: (team_policies) Changed team password strength requirements :ivar PermanentDeleteChangePolicyType EventType.permanent_delete_change_policy: (team_policies) Enabled/disabled ability of team members to permanently delete content :ivar ResellerSupportChangePolicyType EventType.reseller_support_change_policy: (team_policies) Enabled/disabled reseller support :ivar RewindPolicyChangedType EventType.rewind_policy_changed: (team_policies) Changed Rewind policy for team :ivar SendForSignaturePolicyChangedType EventType.send_for_signature_policy_changed: (team_policies) Changed send for signature policy for team :ivar SharingChangeFolderJoinPolicyType EventType.sharing_change_folder_join_policy: (team_policies) Changed whether team members can join shared folders owned outside team :ivar SharingChangeLinkAllowChangeExpirationPolicyType EventType.sharing_change_link_allow_change_expiration_policy: (team_policies) Changed the allow remove or change expiration policy for the links shared outside of the team :ivar SharingChangeLinkDefaultExpirationPolicyType EventType.sharing_change_link_default_expiration_policy: (team_policies) Changed the default expiration for the links shared outside of the team :ivar SharingChangeLinkEnforcePasswordPolicyType EventType.sharing_change_link_enforce_password_policy: (team_policies) Changed the password requirement for the links shared outside of the team :ivar SharingChangeLinkPolicyType EventType.sharing_change_link_policy: (team_policies) Changed whether members can share links outside team, and if links are accessible only by team members or anyone by default :ivar SharingChangeMemberPolicyType EventType.sharing_change_member_policy: (team_policies) Changed whether members can share files/folders outside team :ivar ShowcaseChangeDownloadPolicyType EventType.showcase_change_download_policy: (team_policies) Enabled/disabled downloading files from Dropbox Showcase for team :ivar ShowcaseChangeEnabledPolicyType EventType.showcase_change_enabled_policy: (team_policies) Enabled/disabled Dropbox Showcase for team :ivar ShowcaseChangeExternalSharingPolicyType EventType.showcase_change_external_sharing_policy: (team_policies) Enabled/disabled sharing Dropbox Showcase externally for team :ivar SmarterSmartSyncPolicyChangedType EventType.smarter_smart_sync_policy_changed: (team_policies) Changed automatic Smart Sync setting for team :ivar SmartSyncChangePolicyType EventType.smart_sync_change_policy: (team_policies) Changed default Smart Sync setting for team members :ivar SmartSyncNotOptOutType EventType.smart_sync_not_opt_out: (team_policies) Opted team into Smart Sync :ivar SmartSyncOptOutType EventType.smart_sync_opt_out: (team_policies) Opted team out of Smart Sync :ivar SsoChangePolicyType EventType.sso_change_policy: (team_policies) Changed single sign-on setting for team :ivar TeamBrandingPolicyChangedType EventType.team_branding_policy_changed: (team_policies) Changed team branding policy for team :ivar TeamExtensionsPolicyChangedType EventType.team_extensions_policy_changed: (team_policies) Changed App Integrations setting for team :ivar TeamSelectiveSyncPolicyChangedType EventType.team_selective_sync_policy_changed: (team_policies) Enabled/disabled Team Selective Sync for team :ivar TeamSharingWhitelistSubjectsChangedType EventType.team_sharing_whitelist_subjects_changed: (team_policies) Edited the approved list for sharing externally :ivar TfaAddExceptionType EventType.tfa_add_exception: (team_policies) Added members to two factor authentication exception list :ivar TfaChangePolicyType EventType.tfa_change_policy: (team_policies) Changed two-step verification setting for team :ivar TfaRemoveExceptionType EventType.tfa_remove_exception: (team_policies) Removed members from two factor authentication exception list :ivar TwoAccountChangePolicyType EventType.two_account_change_policy: (team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to same computer :ivar ViewerInfoPolicyChangedType EventType.viewer_info_policy_changed: (team_policies) Changed team policy for viewer info :ivar WatermarkingPolicyChangedType EventType.watermarking_policy_changed: (team_policies) Changed watermarking policy for team :ivar WebSessionsChangeActiveSessionLimitType EventType.web_sessions_change_active_session_limit: (team_policies) Changed limit on active sessions per member :ivar WebSessionsChangeFixedLengthPolicyType EventType.web_sessions_change_fixed_length_policy: (team_policies) Changed how long members can stay signed in to Dropbox.com :ivar WebSessionsChangeIdleLengthPolicyType EventType.web_sessions_change_idle_length_policy: (team_policies) Changed how long team members can be idle while signed in to Dropbox.com :ivar DataResidencyMigrationRequestSuccessfulType EventType.data_residency_migration_request_successful: (team_profile) Requested data residency migration for team data :ivar DataResidencyMigrationRequestUnsuccessfulType EventType.data_residency_migration_request_unsuccessful: (team_profile) Request for data residency migration for team data has failed :ivar TeamMergeFromType EventType.team_merge_from: (team_profile) Merged another team into this team :ivar TeamMergeToType EventType.team_merge_to: (team_profile) Merged this team into another team :ivar TeamProfileAddBackgroundType EventType.team_profile_add_background: (team_profile) Added team background to display on shared link headers :ivar TeamProfileAddLogoType EventType.team_profile_add_logo: (team_profile) Added team logo to display on shared link headers :ivar TeamProfileChangeBackgroundType EventType.team_profile_change_background: (team_profile) Changed team background displayed on shared link headers :ivar TeamProfileChangeDefaultLanguageType EventType.team_profile_change_default_language: (team_profile) Changed default language for team :ivar TeamProfileChangeLogoType EventType.team_profile_change_logo: (team_profile) Changed team logo displayed on shared link headers :ivar TeamProfileChangeNameType EventType.team_profile_change_name: (team_profile) Changed team name :ivar TeamProfileRemoveBackgroundType EventType.team_profile_remove_background: (team_profile) Removed team background displayed on shared link headers :ivar TeamProfileRemoveLogoType EventType.team_profile_remove_logo: (team_profile) Removed team logo displayed on shared link headers :ivar TfaAddBackupPhoneType EventType.tfa_add_backup_phone: (tfa) Added backup phone for two-step verification :ivar TfaAddSecurityKeyType EventType.tfa_add_security_key: (tfa) Added security key for two-step verification :ivar TfaChangeBackupPhoneType EventType.tfa_change_backup_phone: (tfa) Changed backup phone for two-step verification :ivar TfaChangeStatusType EventType.tfa_change_status: (tfa) Enabled/disabled/changed two-step verification setting :ivar TfaRemoveBackupPhoneType EventType.tfa_remove_backup_phone: (tfa) Removed backup phone for two-step verification :ivar TfaRemoveSecurityKeyType EventType.tfa_remove_security_key: (tfa) Removed security key for two-step verification :ivar TfaResetType EventType.tfa_reset: (tfa) Reset two-step verification for team member :ivar ChangedEnterpriseAdminRoleType EventType.changed_enterprise_admin_role: (trusted_teams) Changed enterprise admin role :ivar ChangedEnterpriseConnectedTeamStatusType EventType.changed_enterprise_connected_team_status: (trusted_teams) Changed enterprise-connected team status :ivar EndedEnterpriseAdminSessionType EventType.ended_enterprise_admin_session: (trusted_teams) Ended enterprise admin session :ivar EndedEnterpriseAdminSessionDeprecatedType EventType.ended_enterprise_admin_session_deprecated: (trusted_teams) Ended enterprise admin session (deprecated, replaced by 'Ended enterprise admin session') :ivar EnterpriseSettingsLockingType EventType.enterprise_settings_locking: (trusted_teams) Changed who can update a setting :ivar GuestAdminChangeStatusType EventType.guest_admin_change_status: (trusted_teams) Changed guest team admin status :ivar StartedEnterpriseAdminSessionType EventType.started_enterprise_admin_session: (trusted_teams) Started enterprise admin session :ivar TeamMergeRequestAcceptedType EventType.team_merge_request_accepted: (trusted_teams) Accepted a team merge request :ivar TeamMergeRequestAcceptedShownToPrimaryTeamType EventType.team_merge_request_accepted_shown_to_primary_team: (trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request') :ivar TeamMergeRequestAcceptedShownToSecondaryTeamType EventType.team_merge_request_accepted_shown_to_secondary_team: (trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request') :ivar TeamMergeRequestAutoCanceledType EventType.team_merge_request_auto_canceled: (trusted_teams) Automatically canceled team merge request :ivar TeamMergeRequestCanceledType EventType.team_merge_request_canceled: (trusted_teams) Canceled a team merge request :ivar TeamMergeRequestCanceledShownToPrimaryTeamType EventType.team_merge_request_canceled_shown_to_primary_team: (trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request') :ivar TeamMergeRequestCanceledShownToSecondaryTeamType EventType.team_merge_request_canceled_shown_to_secondary_team: (trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request') :ivar TeamMergeRequestExpiredType EventType.team_merge_request_expired: (trusted_teams) Team merge request expired :ivar TeamMergeRequestExpiredShownToPrimaryTeamType EventType.team_merge_request_expired_shown_to_primary_team: (trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired') :ivar TeamMergeRequestExpiredShownToSecondaryTeamType EventType.team_merge_request_expired_shown_to_secondary_team: (trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired') :ivar TeamMergeRequestRejectedShownToPrimaryTeamType EventType.team_merge_request_rejected_shown_to_primary_team: (trusted_teams) Rejected a team merge request (deprecated, no longer logged) :ivar TeamMergeRequestRejectedShownToSecondaryTeamType EventType.team_merge_request_rejected_shown_to_secondary_team: (trusted_teams) Rejected a team merge request (deprecated, no longer logged) :ivar TeamMergeRequestReminderType EventType.team_merge_request_reminder: (trusted_teams) Sent a team merge request reminder :ivar TeamMergeRequestReminderShownToPrimaryTeamType EventType.team_merge_request_reminder_shown_to_primary_team: (trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder') :ivar TeamMergeRequestReminderShownToSecondaryTeamType EventType.team_merge_request_reminder_shown_to_secondary_team: (trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder') :ivar TeamMergeRequestRevokedType EventType.team_merge_request_revoked: (trusted_teams) Canceled the team merge :ivar TeamMergeRequestSentShownToPrimaryTeamType EventType.team_merge_request_sent_shown_to_primary_team: (trusted_teams) Requested to merge their Dropbox team into yours :ivar TeamMergeRequestSentShownToSecondaryTeamType EventType.team_merge_request_sent_shown_to_secondary_team: (trusted_teams) Requested to merge your team into another Dropbox team """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def admin_alerting_alert_state_changed(cls, val): """ Create an instance of this class set to the ``admin_alerting_alert_state_changed`` tag with value ``val``. :param AdminAlertingAlertStateChangedType val: :rtype: EventType """ return cls('admin_alerting_alert_state_changed', val) @classmethod def admin_alerting_changed_alert_config(cls, val): """ Create an instance of this class set to the ``admin_alerting_changed_alert_config`` tag with value ``val``. :param AdminAlertingChangedAlertConfigType val: :rtype: EventType """ return cls('admin_alerting_changed_alert_config', val) @classmethod def admin_alerting_triggered_alert(cls, val): """ Create an instance of this class set to the ``admin_alerting_triggered_alert`` tag with value ``val``. :param AdminAlertingTriggeredAlertType val: :rtype: EventType """ return cls('admin_alerting_triggered_alert', val) @classmethod def ransomware_restore_process_completed(cls, val): """ Create an instance of this class set to the ``ransomware_restore_process_completed`` tag with value ``val``. :param RansomwareRestoreProcessCompletedType val: :rtype: EventType """ return cls('ransomware_restore_process_completed', val) @classmethod def ransomware_restore_process_started(cls, val): """ Create an instance of this class set to the ``ransomware_restore_process_started`` tag with value ``val``. :param RansomwareRestoreProcessStartedType val: :rtype: EventType """ return cls('ransomware_restore_process_started', val) @classmethod def app_blocked_by_permissions(cls, val): """ Create an instance of this class set to the ``app_blocked_by_permissions`` tag with value ``val``. :param AppBlockedByPermissionsType val: :rtype: EventType """ return cls('app_blocked_by_permissions', val) @classmethod def app_link_team(cls, val): """ Create an instance of this class set to the ``app_link_team`` tag with value ``val``. :param AppLinkTeamType val: :rtype: EventType """ return cls('app_link_team', val) @classmethod def app_link_user(cls, val): """ Create an instance of this class set to the ``app_link_user`` tag with value ``val``. :param AppLinkUserType val: :rtype: EventType """ return cls('app_link_user', val) @classmethod def app_unlink_team(cls, val): """ Create an instance of this class set to the ``app_unlink_team`` tag with value ``val``. :param AppUnlinkTeamType val: :rtype: EventType """ return cls('app_unlink_team', val) @classmethod def app_unlink_user(cls, val): """ Create an instance of this class set to the ``app_unlink_user`` tag with value ``val``. :param AppUnlinkUserType val: :rtype: EventType """ return cls('app_unlink_user', val) @classmethod def integration_connected(cls, val): """ Create an instance of this class set to the ``integration_connected`` tag with value ``val``. :param IntegrationConnectedType val: :rtype: EventType """ return cls('integration_connected', val) @classmethod def integration_disconnected(cls, val): """ Create an instance of this class set to the ``integration_disconnected`` tag with value ``val``. :param IntegrationDisconnectedType val: :rtype: EventType """ return cls('integration_disconnected', val) @classmethod def file_add_comment(cls, val): """ Create an instance of this class set to the ``file_add_comment`` tag with value ``val``. :param FileAddCommentType val: :rtype: EventType """ return cls('file_add_comment', val) @classmethod def file_change_comment_subscription(cls, val): """ Create an instance of this class set to the ``file_change_comment_subscription`` tag with value ``val``. :param FileChangeCommentSubscriptionType val: :rtype: EventType """ return cls('file_change_comment_subscription', val) @classmethod def file_delete_comment(cls, val): """ Create an instance of this class set to the ``file_delete_comment`` tag with value ``val``. :param FileDeleteCommentType val: :rtype: EventType """ return cls('file_delete_comment', val) @classmethod def file_edit_comment(cls, val): """ Create an instance of this class set to the ``file_edit_comment`` tag with value ``val``. :param FileEditCommentType val: :rtype: EventType """ return cls('file_edit_comment', val) @classmethod def file_like_comment(cls, val): """ Create an instance of this class set to the ``file_like_comment`` tag with value ``val``. :param FileLikeCommentType val: :rtype: EventType """ return cls('file_like_comment', val) @classmethod def file_resolve_comment(cls, val): """ Create an instance of this class set to the ``file_resolve_comment`` tag with value ``val``. :param FileResolveCommentType val: :rtype: EventType """ return cls('file_resolve_comment', val) @classmethod def file_unlike_comment(cls, val): """ Create an instance of this class set to the ``file_unlike_comment`` tag with value ``val``. :param FileUnlikeCommentType val: :rtype: EventType """ return cls('file_unlike_comment', val) @classmethod def file_unresolve_comment(cls, val): """ Create an instance of this class set to the ``file_unresolve_comment`` tag with value ``val``. :param FileUnresolveCommentType val: :rtype: EventType """ return cls('file_unresolve_comment', val) @classmethod def governance_policy_add_folders(cls, val): """ Create an instance of this class set to the ``governance_policy_add_folders`` tag with value ``val``. :param GovernancePolicyAddFoldersType val: :rtype: EventType """ return cls('governance_policy_add_folders', val) @classmethod def governance_policy_add_folder_failed(cls, val): """ Create an instance of this class set to the ``governance_policy_add_folder_failed`` tag with value ``val``. :param GovernancePolicyAddFolderFailedType val: :rtype: EventType """ return cls('governance_policy_add_folder_failed', val) @classmethod def governance_policy_content_disposed(cls, val): """ Create an instance of this class set to the ``governance_policy_content_disposed`` tag with value ``val``. :param GovernancePolicyContentDisposedType val: :rtype: EventType """ return cls('governance_policy_content_disposed', val) @classmethod def governance_policy_create(cls, val): """ Create an instance of this class set to the ``governance_policy_create`` tag with value ``val``. :param GovernancePolicyCreateType val: :rtype: EventType """ return cls('governance_policy_create', val) @classmethod def governance_policy_delete(cls, val): """ Create an instance of this class set to the ``governance_policy_delete`` tag with value ``val``. :param GovernancePolicyDeleteType val: :rtype: EventType """ return cls('governance_policy_delete', val) @classmethod def governance_policy_edit_details(cls, val): """ Create an instance of this class set to the ``governance_policy_edit_details`` tag with value ``val``. :param GovernancePolicyEditDetailsType val: :rtype: EventType """ return cls('governance_policy_edit_details', val) @classmethod def governance_policy_edit_duration(cls, val): """ Create an instance of this class set to the ``governance_policy_edit_duration`` tag with value ``val``. :param GovernancePolicyEditDurationType val: :rtype: EventType """ return cls('governance_policy_edit_duration', val) @classmethod def governance_policy_export_created(cls, val): """ Create an instance of this class set to the ``governance_policy_export_created`` tag with value ``val``. :param GovernancePolicyExportCreatedType val: :rtype: EventType """ return cls('governance_policy_export_created', val) @classmethod def governance_policy_export_removed(cls, val): """ Create an instance of this class set to the ``governance_policy_export_removed`` tag with value ``val``. :param GovernancePolicyExportRemovedType val: :rtype: EventType """ return cls('governance_policy_export_removed', val) @classmethod def governance_policy_remove_folders(cls, val): """ Create an instance of this class set to the ``governance_policy_remove_folders`` tag with value ``val``. :param GovernancePolicyRemoveFoldersType val: :rtype: EventType """ return cls('governance_policy_remove_folders', val) @classmethod def governance_policy_report_created(cls, val): """ Create an instance of this class set to the ``governance_policy_report_created`` tag with value ``val``. :param GovernancePolicyReportCreatedType val: :rtype: EventType """ return cls('governance_policy_report_created', val) @classmethod def governance_policy_zip_part_downloaded(cls, val): """ Create an instance of this class set to the ``governance_policy_zip_part_downloaded`` tag with value ``val``. :param GovernancePolicyZipPartDownloadedType val: :rtype: EventType """ return cls('governance_policy_zip_part_downloaded', val) @classmethod def legal_holds_activate_a_hold(cls, val): """ Create an instance of this class set to the ``legal_holds_activate_a_hold`` tag with value ``val``. :param LegalHoldsActivateAHoldType val: :rtype: EventType """ return cls('legal_holds_activate_a_hold', val) @classmethod def legal_holds_add_members(cls, val): """ Create an instance of this class set to the ``legal_holds_add_members`` tag with value ``val``. :param LegalHoldsAddMembersType val: :rtype: EventType """ return cls('legal_holds_add_members', val) @classmethod def legal_holds_change_hold_details(cls, val): """ Create an instance of this class set to the ``legal_holds_change_hold_details`` tag with value ``val``. :param LegalHoldsChangeHoldDetailsType val: :rtype: EventType """ return cls('legal_holds_change_hold_details', val) @classmethod def legal_holds_change_hold_name(cls, val): """ Create an instance of this class set to the ``legal_holds_change_hold_name`` tag with value ``val``. :param LegalHoldsChangeHoldNameType val: :rtype: EventType """ return cls('legal_holds_change_hold_name', val) @classmethod def legal_holds_export_a_hold(cls, val): """ Create an instance of this class set to the ``legal_holds_export_a_hold`` tag with value ``val``. :param LegalHoldsExportAHoldType val: :rtype: EventType """ return cls('legal_holds_export_a_hold', val) @classmethod def legal_holds_export_cancelled(cls, val): """ Create an instance of this class set to the ``legal_holds_export_cancelled`` tag with value ``val``. :param LegalHoldsExportCancelledType val: :rtype: EventType """ return cls('legal_holds_export_cancelled', val) @classmethod def legal_holds_export_downloaded(cls, val): """ Create an instance of this class set to the ``legal_holds_export_downloaded`` tag with value ``val``. :param LegalHoldsExportDownloadedType val: :rtype: EventType """ return cls('legal_holds_export_downloaded', val) @classmethod def legal_holds_export_removed(cls, val): """ Create an instance of this class set to the ``legal_holds_export_removed`` tag with value ``val``. :param LegalHoldsExportRemovedType val: :rtype: EventType """ return cls('legal_holds_export_removed', val) @classmethod def legal_holds_release_a_hold(cls, val): """ Create an instance of this class set to the ``legal_holds_release_a_hold`` tag with value ``val``. :param LegalHoldsReleaseAHoldType val: :rtype: EventType """ return cls('legal_holds_release_a_hold', val) @classmethod def legal_holds_remove_members(cls, val): """ Create an instance of this class set to the ``legal_holds_remove_members`` tag with value ``val``. :param LegalHoldsRemoveMembersType val: :rtype: EventType """ return cls('legal_holds_remove_members', val) @classmethod def legal_holds_report_a_hold(cls, val): """ Create an instance of this class set to the ``legal_holds_report_a_hold`` tag with value ``val``. :param LegalHoldsReportAHoldType val: :rtype: EventType """ return cls('legal_holds_report_a_hold', val) @classmethod def device_change_ip_desktop(cls, val): """ Create an instance of this class set to the ``device_change_ip_desktop`` tag with value ``val``. :param DeviceChangeIpDesktopType val: :rtype: EventType """ return cls('device_change_ip_desktop', val) @classmethod def device_change_ip_mobile(cls, val): """ Create an instance of this class set to the ``device_change_ip_mobile`` tag with value ``val``. :param DeviceChangeIpMobileType val: :rtype: EventType """ return cls('device_change_ip_mobile', val) @classmethod def device_change_ip_web(cls, val): """ Create an instance of this class set to the ``device_change_ip_web`` tag with value ``val``. :param DeviceChangeIpWebType val: :rtype: EventType """ return cls('device_change_ip_web', val) @classmethod def device_delete_on_unlink_fail(cls, val): """ Create an instance of this class set to the ``device_delete_on_unlink_fail`` tag with value ``val``. :param DeviceDeleteOnUnlinkFailType val: :rtype: EventType """ return cls('device_delete_on_unlink_fail', val) @classmethod def device_delete_on_unlink_success(cls, val): """ Create an instance of this class set to the ``device_delete_on_unlink_success`` tag with value ``val``. :param DeviceDeleteOnUnlinkSuccessType val: :rtype: EventType """ return cls('device_delete_on_unlink_success', val) @classmethod def device_link_fail(cls, val): """ Create an instance of this class set to the ``device_link_fail`` tag with value ``val``. :param DeviceLinkFailType val: :rtype: EventType """ return cls('device_link_fail', val) @classmethod def device_link_success(cls, val): """ Create an instance of this class set to the ``device_link_success`` tag with value ``val``. :param DeviceLinkSuccessType val: :rtype: EventType """ return cls('device_link_success', val) @classmethod def device_management_disabled(cls, val): """ Create an instance of this class set to the ``device_management_disabled`` tag with value ``val``. :param DeviceManagementDisabledType val: :rtype: EventType """ return cls('device_management_disabled', val) @classmethod def device_management_enabled(cls, val): """ Create an instance of this class set to the ``device_management_enabled`` tag with value ``val``. :param DeviceManagementEnabledType val: :rtype: EventType """ return cls('device_management_enabled', val) @classmethod def device_sync_backup_status_changed(cls, val): """ Create an instance of this class set to the ``device_sync_backup_status_changed`` tag with value ``val``. :param DeviceSyncBackupStatusChangedType val: :rtype: EventType """ return cls('device_sync_backup_status_changed', val) @classmethod def device_unlink(cls, val): """ Create an instance of this class set to the ``device_unlink`` tag with value ``val``. :param DeviceUnlinkType val: :rtype: EventType """ return cls('device_unlink', val) @classmethod def dropbox_passwords_exported(cls, val): """ Create an instance of this class set to the ``dropbox_passwords_exported`` tag with value ``val``. :param DropboxPasswordsExportedType val: :rtype: EventType """ return cls('dropbox_passwords_exported', val) @classmethod def dropbox_passwords_new_device_enrolled(cls, val): """ Create an instance of this class set to the ``dropbox_passwords_new_device_enrolled`` tag with value ``val``. :param DropboxPasswordsNewDeviceEnrolledType val: :rtype: EventType """ return cls('dropbox_passwords_new_device_enrolled', val) @classmethod def emm_refresh_auth_token(cls, val): """ Create an instance of this class set to the ``emm_refresh_auth_token`` tag with value ``val``. :param EmmRefreshAuthTokenType val: :rtype: EventType """ return cls('emm_refresh_auth_token', val) @classmethod def external_drive_backup_eligibility_status_checked(cls, val): """ Create an instance of this class set to the ``external_drive_backup_eligibility_status_checked`` tag with value ``val``. :param ExternalDriveBackupEligibilityStatusCheckedType val: :rtype: EventType """ return cls('external_drive_backup_eligibility_status_checked', val) @classmethod def external_drive_backup_status_changed(cls, val): """ Create an instance of this class set to the ``external_drive_backup_status_changed`` tag with value ``val``. :param ExternalDriveBackupStatusChangedType val: :rtype: EventType """ return cls('external_drive_backup_status_changed', val) @classmethod def account_capture_change_availability(cls, val): """ Create an instance of this class set to the ``account_capture_change_availability`` tag with value ``val``. :param AccountCaptureChangeAvailabilityType val: :rtype: EventType """ return cls('account_capture_change_availability', val) @classmethod def account_capture_migrate_account(cls, val): """ Create an instance of this class set to the ``account_capture_migrate_account`` tag with value ``val``. :param AccountCaptureMigrateAccountType val: :rtype: EventType """ return cls('account_capture_migrate_account', val) @classmethod def account_capture_notification_emails_sent(cls, val): """ Create an instance of this class set to the ``account_capture_notification_emails_sent`` tag with value ``val``. :param AccountCaptureNotificationEmailsSentType val: :rtype: EventType """ return cls('account_capture_notification_emails_sent', val) @classmethod def account_capture_relinquish_account(cls, val): """ Create an instance of this class set to the ``account_capture_relinquish_account`` tag with value ``val``. :param AccountCaptureRelinquishAccountType val: :rtype: EventType """ return cls('account_capture_relinquish_account', val) @classmethod def disabled_domain_invites(cls, val): """ Create an instance of this class set to the ``disabled_domain_invites`` tag with value ``val``. :param DisabledDomainInvitesType val: :rtype: EventType """ return cls('disabled_domain_invites', val) @classmethod def domain_invites_approve_request_to_join_team(cls, val): """ Create an instance of this class set to the ``domain_invites_approve_request_to_join_team`` tag with value ``val``. :param DomainInvitesApproveRequestToJoinTeamType val: :rtype: EventType """ return cls('domain_invites_approve_request_to_join_team', val) @classmethod def domain_invites_decline_request_to_join_team(cls, val): """ Create an instance of this class set to the ``domain_invites_decline_request_to_join_team`` tag with value ``val``. :param DomainInvitesDeclineRequestToJoinTeamType val: :rtype: EventType """ return cls('domain_invites_decline_request_to_join_team', val) @classmethod def domain_invites_email_existing_users(cls, val): """ Create an instance of this class set to the ``domain_invites_email_existing_users`` tag with value ``val``. :param DomainInvitesEmailExistingUsersType val: :rtype: EventType """ return cls('domain_invites_email_existing_users', val) @classmethod def domain_invites_request_to_join_team(cls, val): """ Create an instance of this class set to the ``domain_invites_request_to_join_team`` tag with value ``val``. :param DomainInvitesRequestToJoinTeamType val: :rtype: EventType """ return cls('domain_invites_request_to_join_team', val) @classmethod def domain_invites_set_invite_new_user_pref_to_no(cls, val): """ Create an instance of this class set to the ``domain_invites_set_invite_new_user_pref_to_no`` tag with value ``val``. :param DomainInvitesSetInviteNewUserPrefToNoType val: :rtype: EventType """ return cls('domain_invites_set_invite_new_user_pref_to_no', val) @classmethod def domain_invites_set_invite_new_user_pref_to_yes(cls, val): """ Create an instance of this class set to the ``domain_invites_set_invite_new_user_pref_to_yes`` tag with value ``val``. :param DomainInvitesSetInviteNewUserPrefToYesType val: :rtype: EventType """ return cls('domain_invites_set_invite_new_user_pref_to_yes', val) @classmethod def domain_verification_add_domain_fail(cls, val): """ Create an instance of this class set to the ``domain_verification_add_domain_fail`` tag with value ``val``. :param DomainVerificationAddDomainFailType val: :rtype: EventType """ return cls('domain_verification_add_domain_fail', val) @classmethod def domain_verification_add_domain_success(cls, val): """ Create an instance of this class set to the ``domain_verification_add_domain_success`` tag with value ``val``. :param DomainVerificationAddDomainSuccessType val: :rtype: EventType """ return cls('domain_verification_add_domain_success', val) @classmethod def domain_verification_remove_domain(cls, val): """ Create an instance of this class set to the ``domain_verification_remove_domain`` tag with value ``val``. :param DomainVerificationRemoveDomainType val: :rtype: EventType """ return cls('domain_verification_remove_domain', val) @classmethod def enabled_domain_invites(cls, val): """ Create an instance of this class set to the ``enabled_domain_invites`` tag with value ``val``. :param EnabledDomainInvitesType val: :rtype: EventType """ return cls('enabled_domain_invites', val) @classmethod def team_encryption_key_cancel_key_deletion(cls, val): """ Create an instance of this class set to the ``team_encryption_key_cancel_key_deletion`` tag with value ``val``. :param TeamEncryptionKeyCancelKeyDeletionType val: :rtype: EventType """ return cls('team_encryption_key_cancel_key_deletion', val) @classmethod def team_encryption_key_create_key(cls, val): """ Create an instance of this class set to the ``team_encryption_key_create_key`` tag with value ``val``. :param TeamEncryptionKeyCreateKeyType val: :rtype: EventType """ return cls('team_encryption_key_create_key', val) @classmethod def team_encryption_key_delete_key(cls, val): """ Create an instance of this class set to the ``team_encryption_key_delete_key`` tag with value ``val``. :param TeamEncryptionKeyDeleteKeyType val: :rtype: EventType """ return cls('team_encryption_key_delete_key', val) @classmethod def team_encryption_key_disable_key(cls, val): """ Create an instance of this class set to the ``team_encryption_key_disable_key`` tag with value ``val``. :param TeamEncryptionKeyDisableKeyType val: :rtype: EventType """ return cls('team_encryption_key_disable_key', val) @classmethod def team_encryption_key_enable_key(cls, val): """ Create an instance of this class set to the ``team_encryption_key_enable_key`` tag with value ``val``. :param TeamEncryptionKeyEnableKeyType val: :rtype: EventType """ return cls('team_encryption_key_enable_key', val) @classmethod def team_encryption_key_rotate_key(cls, val): """ Create an instance of this class set to the ``team_encryption_key_rotate_key`` tag with value ``val``. :param TeamEncryptionKeyRotateKeyType val: :rtype: EventType """ return cls('team_encryption_key_rotate_key', val) @classmethod def team_encryption_key_schedule_key_deletion(cls, val): """ Create an instance of this class set to the ``team_encryption_key_schedule_key_deletion`` tag with value ``val``. :param TeamEncryptionKeyScheduleKeyDeletionType val: :rtype: EventType """ return cls('team_encryption_key_schedule_key_deletion', val) @classmethod def apply_naming_convention(cls, val): """ Create an instance of this class set to the ``apply_naming_convention`` tag with value ``val``. :param ApplyNamingConventionType val: :rtype: EventType """ return cls('apply_naming_convention', val) @classmethod def create_folder(cls, val): """ Create an instance of this class set to the ``create_folder`` tag with value ``val``. :param CreateFolderType val: :rtype: EventType """ return cls('create_folder', val) @classmethod def file_add(cls, val): """ Create an instance of this class set to the ``file_add`` tag with value ``val``. :param FileAddType val: :rtype: EventType """ return cls('file_add', val) @classmethod def file_add_from_automation(cls, val): """ Create an instance of this class set to the ``file_add_from_automation`` tag with value ``val``. :param FileAddFromAutomationType val: :rtype: EventType """ return cls('file_add_from_automation', val) @classmethod def file_copy(cls, val): """ Create an instance of this class set to the ``file_copy`` tag with value ``val``. :param FileCopyType val: :rtype: EventType """ return cls('file_copy', val) @classmethod def file_delete(cls, val): """ Create an instance of this class set to the ``file_delete`` tag with value ``val``. :param FileDeleteType val: :rtype: EventType """ return cls('file_delete', val) @classmethod def file_download(cls, val): """ Create an instance of this class set to the ``file_download`` tag with value ``val``. :param FileDownloadType val: :rtype: EventType """ return cls('file_download', val) @classmethod def file_edit(cls, val): """ Create an instance of this class set to the ``file_edit`` tag with value ``val``. :param FileEditType val: :rtype: EventType """ return cls('file_edit', val) @classmethod def file_get_copy_reference(cls, val): """ Create an instance of this class set to the ``file_get_copy_reference`` tag with value ``val``. :param FileGetCopyReferenceType val: :rtype: EventType """ return cls('file_get_copy_reference', val) @classmethod def file_locking_lock_status_changed(cls, val): """ Create an instance of this class set to the ``file_locking_lock_status_changed`` tag with value ``val``. :param FileLockingLockStatusChangedType val: :rtype: EventType """ return cls('file_locking_lock_status_changed', val) @classmethod def file_move(cls, val): """ Create an instance of this class set to the ``file_move`` tag with value ``val``. :param FileMoveType val: :rtype: EventType """ return cls('file_move', val) @classmethod def file_permanently_delete(cls, val): """ Create an instance of this class set to the ``file_permanently_delete`` tag with value ``val``. :param FilePermanentlyDeleteType val: :rtype: EventType """ return cls('file_permanently_delete', val) @classmethod def file_preview(cls, val): """ Create an instance of this class set to the ``file_preview`` tag with value ``val``. :param FilePreviewType val: :rtype: EventType """ return cls('file_preview', val) @classmethod def file_rename(cls, val): """ Create an instance of this class set to the ``file_rename`` tag with value ``val``. :param FileRenameType val: :rtype: EventType """ return cls('file_rename', val) @classmethod def file_restore(cls, val): """ Create an instance of this class set to the ``file_restore`` tag with value ``val``. :param FileRestoreType val: :rtype: EventType """ return cls('file_restore', val) @classmethod def file_revert(cls, val): """ Create an instance of this class set to the ``file_revert`` tag with value ``val``. :param FileRevertType val: :rtype: EventType """ return cls('file_revert', val) @classmethod def file_rollback_changes(cls, val): """ Create an instance of this class set to the ``file_rollback_changes`` tag with value ``val``. :param FileRollbackChangesType val: :rtype: EventType """ return cls('file_rollback_changes', val) @classmethod def file_save_copy_reference(cls, val): """ Create an instance of this class set to the ``file_save_copy_reference`` tag with value ``val``. :param FileSaveCopyReferenceType val: :rtype: EventType """ return cls('file_save_copy_reference', val) @classmethod def folder_overview_description_changed(cls, val): """ Create an instance of this class set to the ``folder_overview_description_changed`` tag with value ``val``. :param FolderOverviewDescriptionChangedType val: :rtype: EventType """ return cls('folder_overview_description_changed', val) @classmethod def folder_overview_item_pinned(cls, val): """ Create an instance of this class set to the ``folder_overview_item_pinned`` tag with value ``val``. :param FolderOverviewItemPinnedType val: :rtype: EventType """ return cls('folder_overview_item_pinned', val) @classmethod def folder_overview_item_unpinned(cls, val): """ Create an instance of this class set to the ``folder_overview_item_unpinned`` tag with value ``val``. :param FolderOverviewItemUnpinnedType val: :rtype: EventType """ return cls('folder_overview_item_unpinned', val) @classmethod def object_label_added(cls, val): """ Create an instance of this class set to the ``object_label_added`` tag with value ``val``. :param ObjectLabelAddedType val: :rtype: EventType """ return cls('object_label_added', val) @classmethod def object_label_removed(cls, val): """ Create an instance of this class set to the ``object_label_removed`` tag with value ``val``. :param ObjectLabelRemovedType val: :rtype: EventType """ return cls('object_label_removed', val) @classmethod def object_label_updated_value(cls, val): """ Create an instance of this class set to the ``object_label_updated_value`` tag with value ``val``. :param ObjectLabelUpdatedValueType val: :rtype: EventType """ return cls('object_label_updated_value', val) @classmethod def organize_folder_with_tidy(cls, val): """ Create an instance of this class set to the ``organize_folder_with_tidy`` tag with value ``val``. :param OrganizeFolderWithTidyType val: :rtype: EventType """ return cls('organize_folder_with_tidy', val) @classmethod def replay_file_delete(cls, val): """ Create an instance of this class set to the ``replay_file_delete`` tag with value ``val``. :param ReplayFileDeleteType val: :rtype: EventType """ return cls('replay_file_delete', val) @classmethod def rewind_folder(cls, val): """ Create an instance of this class set to the ``rewind_folder`` tag with value ``val``. :param RewindFolderType val: :rtype: EventType """ return cls('rewind_folder', val) @classmethod def undo_naming_convention(cls, val): """ Create an instance of this class set to the ``undo_naming_convention`` tag with value ``val``. :param UndoNamingConventionType val: :rtype: EventType """ return cls('undo_naming_convention', val) @classmethod def undo_organize_folder_with_tidy(cls, val): """ Create an instance of this class set to the ``undo_organize_folder_with_tidy`` tag with value ``val``. :param UndoOrganizeFolderWithTidyType val: :rtype: EventType """ return cls('undo_organize_folder_with_tidy', val) @classmethod def user_tags_added(cls, val): """ Create an instance of this class set to the ``user_tags_added`` tag with value ``val``. :param UserTagsAddedType val: :rtype: EventType """ return cls('user_tags_added', val) @classmethod def user_tags_removed(cls, val): """ Create an instance of this class set to the ``user_tags_removed`` tag with value ``val``. :param UserTagsRemovedType val: :rtype: EventType """ return cls('user_tags_removed', val) @classmethod def email_ingest_receive_file(cls, val): """ Create an instance of this class set to the ``email_ingest_receive_file`` tag with value ``val``. :param EmailIngestReceiveFileType val: :rtype: EventType """ return cls('email_ingest_receive_file', val) @classmethod def file_request_change(cls, val): """ Create an instance of this class set to the ``file_request_change`` tag with value ``val``. :param FileRequestChangeType val: :rtype: EventType """ return cls('file_request_change', val) @classmethod def file_request_close(cls, val): """ Create an instance of this class set to the ``file_request_close`` tag with value ``val``. :param FileRequestCloseType val: :rtype: EventType """ return cls('file_request_close', val) @classmethod def file_request_create(cls, val): """ Create an instance of this class set to the ``file_request_create`` tag with value ``val``. :param FileRequestCreateType val: :rtype: EventType """ return cls('file_request_create', val) @classmethod def file_request_delete(cls, val): """ Create an instance of this class set to the ``file_request_delete`` tag with value ``val``. :param FileRequestDeleteType val: :rtype: EventType """ return cls('file_request_delete', val) @classmethod def file_request_receive_file(cls, val): """ Create an instance of this class set to the ``file_request_receive_file`` tag with value ``val``. :param FileRequestReceiveFileType val: :rtype: EventType """ return cls('file_request_receive_file', val) @classmethod def group_add_external_id(cls, val): """ Create an instance of this class set to the ``group_add_external_id`` tag with value ``val``. :param GroupAddExternalIdType val: :rtype: EventType """ return cls('group_add_external_id', val) @classmethod def group_add_member(cls, val): """ Create an instance of this class set to the ``group_add_member`` tag with value ``val``. :param GroupAddMemberType val: :rtype: EventType """ return cls('group_add_member', val) @classmethod def group_change_external_id(cls, val): """ Create an instance of this class set to the ``group_change_external_id`` tag with value ``val``. :param GroupChangeExternalIdType val: :rtype: EventType """ return cls('group_change_external_id', val) @classmethod def group_change_management_type(cls, val): """ Create an instance of this class set to the ``group_change_management_type`` tag with value ``val``. :param GroupChangeManagementTypeType val: :rtype: EventType """ return cls('group_change_management_type', val) @classmethod def group_change_member_role(cls, val): """ Create an instance of this class set to the ``group_change_member_role`` tag with value ``val``. :param GroupChangeMemberRoleType val: :rtype: EventType """ return cls('group_change_member_role', val) @classmethod def group_create(cls, val): """ Create an instance of this class set to the ``group_create`` tag with value ``val``. :param GroupCreateType val: :rtype: EventType """ return cls('group_create', val) @classmethod def group_delete(cls, val): """ Create an instance of this class set to the ``group_delete`` tag with value ``val``. :param GroupDeleteType val: :rtype: EventType """ return cls('group_delete', val) @classmethod def group_description_updated(cls, val): """ Create an instance of this class set to the ``group_description_updated`` tag with value ``val``. :param GroupDescriptionUpdatedType val: :rtype: EventType """ return cls('group_description_updated', val) @classmethod def group_join_policy_updated(cls, val): """ Create an instance of this class set to the ``group_join_policy_updated`` tag with value ``val``. :param GroupJoinPolicyUpdatedType val: :rtype: EventType """ return cls('group_join_policy_updated', val) @classmethod def group_moved(cls, val): """ Create an instance of this class set to the ``group_moved`` tag with value ``val``. :param GroupMovedType val: :rtype: EventType """ return cls('group_moved', val) @classmethod def group_remove_external_id(cls, val): """ Create an instance of this class set to the ``group_remove_external_id`` tag with value ``val``. :param GroupRemoveExternalIdType val: :rtype: EventType """ return cls('group_remove_external_id', val) @classmethod def group_remove_member(cls, val): """ Create an instance of this class set to the ``group_remove_member`` tag with value ``val``. :param GroupRemoveMemberType val: :rtype: EventType """ return cls('group_remove_member', val) @classmethod def group_rename(cls, val): """ Create an instance of this class set to the ``group_rename`` tag with value ``val``. :param GroupRenameType val: :rtype: EventType """ return cls('group_rename', val) @classmethod def account_lock_or_unlocked(cls, val): """ Create an instance of this class set to the ``account_lock_or_unlocked`` tag with value ``val``. :param AccountLockOrUnlockedType val: :rtype: EventType """ return cls('account_lock_or_unlocked', val) @classmethod def emm_error(cls, val): """ Create an instance of this class set to the ``emm_error`` tag with value ``val``. :param EmmErrorType val: :rtype: EventType """ return cls('emm_error', val) @classmethod def guest_admin_signed_in_via_trusted_teams(cls, val): """ Create an instance of this class set to the ``guest_admin_signed_in_via_trusted_teams`` tag with value ``val``. :param GuestAdminSignedInViaTrustedTeamsType val: :rtype: EventType """ return cls('guest_admin_signed_in_via_trusted_teams', val) @classmethod def guest_admin_signed_out_via_trusted_teams(cls, val): """ Create an instance of this class set to the ``guest_admin_signed_out_via_trusted_teams`` tag with value ``val``. :param GuestAdminSignedOutViaTrustedTeamsType val: :rtype: EventType """ return cls('guest_admin_signed_out_via_trusted_teams', val) @classmethod def login_fail(cls, val): """ Create an instance of this class set to the ``login_fail`` tag with value ``val``. :param LoginFailType val: :rtype: EventType """ return cls('login_fail', val) @classmethod def login_success(cls, val): """ Create an instance of this class set to the ``login_success`` tag with value ``val``. :param LoginSuccessType val: :rtype: EventType """ return cls('login_success', val) @classmethod def logout(cls, val): """ Create an instance of this class set to the ``logout`` tag with value ``val``. :param LogoutType val: :rtype: EventType """ return cls('logout', val) @classmethod def reseller_support_session_end(cls, val): """ Create an instance of this class set to the ``reseller_support_session_end`` tag with value ``val``. :param ResellerSupportSessionEndType val: :rtype: EventType """ return cls('reseller_support_session_end', val) @classmethod def reseller_support_session_start(cls, val): """ Create an instance of this class set to the ``reseller_support_session_start`` tag with value ``val``. :param ResellerSupportSessionStartType val: :rtype: EventType """ return cls('reseller_support_session_start', val) @classmethod def sign_in_as_session_end(cls, val): """ Create an instance of this class set to the ``sign_in_as_session_end`` tag with value ``val``. :param SignInAsSessionEndType val: :rtype: EventType """ return cls('sign_in_as_session_end', val) @classmethod def sign_in_as_session_start(cls, val): """ Create an instance of this class set to the ``sign_in_as_session_start`` tag with value ``val``. :param SignInAsSessionStartType val: :rtype: EventType """ return cls('sign_in_as_session_start', val) @classmethod def sso_error(cls, val): """ Create an instance of this class set to the ``sso_error`` tag with value ``val``. :param SsoErrorType val: :rtype: EventType """ return cls('sso_error', val) @classmethod def backup_admin_invitation_sent(cls, val): """ Create an instance of this class set to the ``backup_admin_invitation_sent`` tag with value ``val``. :param BackupAdminInvitationSentType val: :rtype: EventType """ return cls('backup_admin_invitation_sent', val) @classmethod def backup_invitation_opened(cls, val): """ Create an instance of this class set to the ``backup_invitation_opened`` tag with value ``val``. :param BackupInvitationOpenedType val: :rtype: EventType """ return cls('backup_invitation_opened', val) @classmethod def create_team_invite_link(cls, val): """ Create an instance of this class set to the ``create_team_invite_link`` tag with value ``val``. :param CreateTeamInviteLinkType val: :rtype: EventType """ return cls('create_team_invite_link', val) @classmethod def delete_team_invite_link(cls, val): """ Create an instance of this class set to the ``delete_team_invite_link`` tag with value ``val``. :param DeleteTeamInviteLinkType val: :rtype: EventType """ return cls('delete_team_invite_link', val) @classmethod def member_add_external_id(cls, val): """ Create an instance of this class set to the ``member_add_external_id`` tag with value ``val``. :param MemberAddExternalIdType val: :rtype: EventType """ return cls('member_add_external_id', val) @classmethod def member_add_name(cls, val): """ Create an instance of this class set to the ``member_add_name`` tag with value ``val``. :param MemberAddNameType val: :rtype: EventType """ return cls('member_add_name', val) @classmethod def member_change_admin_role(cls, val): """ Create an instance of this class set to the ``member_change_admin_role`` tag with value ``val``. :param MemberChangeAdminRoleType val: :rtype: EventType """ return cls('member_change_admin_role', val) @classmethod def member_change_email(cls, val): """ Create an instance of this class set to the ``member_change_email`` tag with value ``val``. :param MemberChangeEmailType val: :rtype: EventType """ return cls('member_change_email', val) @classmethod def member_change_external_id(cls, val): """ Create an instance of this class set to the ``member_change_external_id`` tag with value ``val``. :param MemberChangeExternalIdType val: :rtype: EventType """ return cls('member_change_external_id', val) @classmethod def member_change_membership_type(cls, val): """ Create an instance of this class set to the ``member_change_membership_type`` tag with value ``val``. :param MemberChangeMembershipTypeType val: :rtype: EventType """ return cls('member_change_membership_type', val) @classmethod def member_change_name(cls, val): """ Create an instance of this class set to the ``member_change_name`` tag with value ``val``. :param MemberChangeNameType val: :rtype: EventType """ return cls('member_change_name', val) @classmethod def member_change_reseller_role(cls, val): """ Create an instance of this class set to the ``member_change_reseller_role`` tag with value ``val``. :param MemberChangeResellerRoleType val: :rtype: EventType """ return cls('member_change_reseller_role', val) @classmethod def member_change_status(cls, val): """ Create an instance of this class set to the ``member_change_status`` tag with value ``val``. :param MemberChangeStatusType val: :rtype: EventType """ return cls('member_change_status', val) @classmethod def member_delete_manual_contacts(cls, val): """ Create an instance of this class set to the ``member_delete_manual_contacts`` tag with value ``val``. :param MemberDeleteManualContactsType val: :rtype: EventType """ return cls('member_delete_manual_contacts', val) @classmethod def member_delete_profile_photo(cls, val): """ Create an instance of this class set to the ``member_delete_profile_photo`` tag with value ``val``. :param MemberDeleteProfilePhotoType val: :rtype: EventType """ return cls('member_delete_profile_photo', val) @classmethod def member_permanently_delete_account_contents(cls, val): """ Create an instance of this class set to the ``member_permanently_delete_account_contents`` tag with value ``val``. :param MemberPermanentlyDeleteAccountContentsType val: :rtype: EventType """ return cls('member_permanently_delete_account_contents', val) @classmethod def member_remove_external_id(cls, val): """ Create an instance of this class set to the ``member_remove_external_id`` tag with value ``val``. :param MemberRemoveExternalIdType val: :rtype: EventType """ return cls('member_remove_external_id', val) @classmethod def member_set_profile_photo(cls, val): """ Create an instance of this class set to the ``member_set_profile_photo`` tag with value ``val``. :param MemberSetProfilePhotoType val: :rtype: EventType """ return cls('member_set_profile_photo', val) @classmethod def member_space_limits_add_custom_quota(cls, val): """ Create an instance of this class set to the ``member_space_limits_add_custom_quota`` tag with value ``val``. :param MemberSpaceLimitsAddCustomQuotaType val: :rtype: EventType """ return cls('member_space_limits_add_custom_quota', val) @classmethod def member_space_limits_change_custom_quota(cls, val): """ Create an instance of this class set to the ``member_space_limits_change_custom_quota`` tag with value ``val``. :param MemberSpaceLimitsChangeCustomQuotaType val: :rtype: EventType """ return cls('member_space_limits_change_custom_quota', val) @classmethod def member_space_limits_change_status(cls, val): """ Create an instance of this class set to the ``member_space_limits_change_status`` tag with value ``val``. :param MemberSpaceLimitsChangeStatusType val: :rtype: EventType """ return cls('member_space_limits_change_status', val) @classmethod def member_space_limits_remove_custom_quota(cls, val): """ Create an instance of this class set to the ``member_space_limits_remove_custom_quota`` tag with value ``val``. :param MemberSpaceLimitsRemoveCustomQuotaType val: :rtype: EventType """ return cls('member_space_limits_remove_custom_quota', val) @classmethod def member_suggest(cls, val): """ Create an instance of this class set to the ``member_suggest`` tag with value ``val``. :param MemberSuggestType val: :rtype: EventType """ return cls('member_suggest', val) @classmethod def member_transfer_account_contents(cls, val): """ Create an instance of this class set to the ``member_transfer_account_contents`` tag with value ``val``. :param MemberTransferAccountContentsType val: :rtype: EventType """ return cls('member_transfer_account_contents', val) @classmethod def pending_secondary_email_added(cls, val): """ Create an instance of this class set to the ``pending_secondary_email_added`` tag with value ``val``. :param PendingSecondaryEmailAddedType val: :rtype: EventType """ return cls('pending_secondary_email_added', val) @classmethod def secondary_email_deleted(cls, val): """ Create an instance of this class set to the ``secondary_email_deleted`` tag with value ``val``. :param SecondaryEmailDeletedType val: :rtype: EventType """ return cls('secondary_email_deleted', val) @classmethod def secondary_email_verified(cls, val): """ Create an instance of this class set to the ``secondary_email_verified`` tag with value ``val``. :param SecondaryEmailVerifiedType val: :rtype: EventType """ return cls('secondary_email_verified', val) @classmethod def secondary_mails_policy_changed(cls, val): """ Create an instance of this class set to the ``secondary_mails_policy_changed`` tag with value ``val``. :param SecondaryMailsPolicyChangedType val: :rtype: EventType """ return cls('secondary_mails_policy_changed', val) @classmethod def binder_add_page(cls, val): """ Create an instance of this class set to the ``binder_add_page`` tag with value ``val``. :param BinderAddPageType val: :rtype: EventType """ return cls('binder_add_page', val) @classmethod def binder_add_section(cls, val): """ Create an instance of this class set to the ``binder_add_section`` tag with value ``val``. :param BinderAddSectionType val: :rtype: EventType """ return cls('binder_add_section', val) @classmethod def binder_remove_page(cls, val): """ Create an instance of this class set to the ``binder_remove_page`` tag with value ``val``. :param BinderRemovePageType val: :rtype: EventType """ return cls('binder_remove_page', val) @classmethod def binder_remove_section(cls, val): """ Create an instance of this class set to the ``binder_remove_section`` tag with value ``val``. :param BinderRemoveSectionType val: :rtype: EventType """ return cls('binder_remove_section', val) @classmethod def binder_rename_page(cls, val): """ Create an instance of this class set to the ``binder_rename_page`` tag with value ``val``. :param BinderRenamePageType val: :rtype: EventType """ return cls('binder_rename_page', val) @classmethod def binder_rename_section(cls, val): """ Create an instance of this class set to the ``binder_rename_section`` tag with value ``val``. :param BinderRenameSectionType val: :rtype: EventType """ return cls('binder_rename_section', val) @classmethod def binder_reorder_page(cls, val): """ Create an instance of this class set to the ``binder_reorder_page`` tag with value ``val``. :param BinderReorderPageType val: :rtype: EventType """ return cls('binder_reorder_page', val) @classmethod def binder_reorder_section(cls, val): """ Create an instance of this class set to the ``binder_reorder_section`` tag with value ``val``. :param BinderReorderSectionType val: :rtype: EventType """ return cls('binder_reorder_section', val) @classmethod def paper_content_add_member(cls, val): """ Create an instance of this class set to the ``paper_content_add_member`` tag with value ``val``. :param PaperContentAddMemberType val: :rtype: EventType """ return cls('paper_content_add_member', val) @classmethod def paper_content_add_to_folder(cls, val): """ Create an instance of this class set to the ``paper_content_add_to_folder`` tag with value ``val``. :param PaperContentAddToFolderType val: :rtype: EventType """ return cls('paper_content_add_to_folder', val) @classmethod def paper_content_archive(cls, val): """ Create an instance of this class set to the ``paper_content_archive`` tag with value ``val``. :param PaperContentArchiveType val: :rtype: EventType """ return cls('paper_content_archive', val) @classmethod def paper_content_create(cls, val): """ Create an instance of this class set to the ``paper_content_create`` tag with value ``val``. :param PaperContentCreateType val: :rtype: EventType """ return cls('paper_content_create', val) @classmethod def paper_content_permanently_delete(cls, val): """ Create an instance of this class set to the ``paper_content_permanently_delete`` tag with value ``val``. :param PaperContentPermanentlyDeleteType val: :rtype: EventType """ return cls('paper_content_permanently_delete', val) @classmethod def paper_content_remove_from_folder(cls, val): """ Create an instance of this class set to the ``paper_content_remove_from_folder`` tag with value ``val``. :param PaperContentRemoveFromFolderType val: :rtype: EventType """ return cls('paper_content_remove_from_folder', val) @classmethod def paper_content_remove_member(cls, val): """ Create an instance of this class set to the ``paper_content_remove_member`` tag with value ``val``. :param PaperContentRemoveMemberType val: :rtype: EventType """ return cls('paper_content_remove_member', val) @classmethod def paper_content_rename(cls, val): """ Create an instance of this class set to the ``paper_content_rename`` tag with value ``val``. :param PaperContentRenameType val: :rtype: EventType """ return cls('paper_content_rename', val) @classmethod def paper_content_restore(cls, val): """ Create an instance of this class set to the ``paper_content_restore`` tag with value ``val``. :param PaperContentRestoreType val: :rtype: EventType """ return cls('paper_content_restore', val) @classmethod def paper_doc_add_comment(cls, val): """ Create an instance of this class set to the ``paper_doc_add_comment`` tag with value ``val``. :param PaperDocAddCommentType val: :rtype: EventType """ return cls('paper_doc_add_comment', val) @classmethod def paper_doc_change_member_role(cls, val): """ Create an instance of this class set to the ``paper_doc_change_member_role`` tag with value ``val``. :param PaperDocChangeMemberRoleType val: :rtype: EventType """ return cls('paper_doc_change_member_role', val) @classmethod def paper_doc_change_sharing_policy(cls, val): """ Create an instance of this class set to the ``paper_doc_change_sharing_policy`` tag with value ``val``. :param PaperDocChangeSharingPolicyType val: :rtype: EventType """ return cls('paper_doc_change_sharing_policy', val) @classmethod def paper_doc_change_subscription(cls, val): """ Create an instance of this class set to the ``paper_doc_change_subscription`` tag with value ``val``. :param PaperDocChangeSubscriptionType val: :rtype: EventType """ return cls('paper_doc_change_subscription', val) @classmethod def paper_doc_deleted(cls, val): """ Create an instance of this class set to the ``paper_doc_deleted`` tag with value ``val``. :param PaperDocDeletedType val: :rtype: EventType """ return cls('paper_doc_deleted', val) @classmethod def paper_doc_delete_comment(cls, val): """ Create an instance of this class set to the ``paper_doc_delete_comment`` tag with value ``val``. :param PaperDocDeleteCommentType val: :rtype: EventType """ return cls('paper_doc_delete_comment', val) @classmethod def paper_doc_download(cls, val): """ Create an instance of this class set to the ``paper_doc_download`` tag with value ``val``. :param PaperDocDownloadType val: :rtype: EventType """ return cls('paper_doc_download', val) @classmethod def paper_doc_edit(cls, val): """ Create an instance of this class set to the ``paper_doc_edit`` tag with value ``val``. :param PaperDocEditType val: :rtype: EventType """ return cls('paper_doc_edit', val) @classmethod def paper_doc_edit_comment(cls, val): """ Create an instance of this class set to the ``paper_doc_edit_comment`` tag with value ``val``. :param PaperDocEditCommentType val: :rtype: EventType """ return cls('paper_doc_edit_comment', val) @classmethod def paper_doc_followed(cls, val): """ Create an instance of this class set to the ``paper_doc_followed`` tag with value ``val``. :param PaperDocFollowedType val: :rtype: EventType """ return cls('paper_doc_followed', val) @classmethod def paper_doc_mention(cls, val): """ Create an instance of this class set to the ``paper_doc_mention`` tag with value ``val``. :param PaperDocMentionType val: :rtype: EventType """ return cls('paper_doc_mention', val) @classmethod def paper_doc_ownership_changed(cls, val): """ Create an instance of this class set to the ``paper_doc_ownership_changed`` tag with value ``val``. :param PaperDocOwnershipChangedType val: :rtype: EventType """ return cls('paper_doc_ownership_changed', val) @classmethod def paper_doc_request_access(cls, val): """ Create an instance of this class set to the ``paper_doc_request_access`` tag with value ``val``. :param PaperDocRequestAccessType val: :rtype: EventType """ return cls('paper_doc_request_access', val) @classmethod def paper_doc_resolve_comment(cls, val): """ Create an instance of this class set to the ``paper_doc_resolve_comment`` tag with value ``val``. :param PaperDocResolveCommentType val: :rtype: EventType """ return cls('paper_doc_resolve_comment', val) @classmethod def paper_doc_revert(cls, val): """ Create an instance of this class set to the ``paper_doc_revert`` tag with value ``val``. :param PaperDocRevertType val: :rtype: EventType """ return cls('paper_doc_revert', val) @classmethod def paper_doc_slack_share(cls, val): """ Create an instance of this class set to the ``paper_doc_slack_share`` tag with value ``val``. :param PaperDocSlackShareType val: :rtype: EventType """ return cls('paper_doc_slack_share', val) @classmethod def paper_doc_team_invite(cls, val): """ Create an instance of this class set to the ``paper_doc_team_invite`` tag with value ``val``. :param PaperDocTeamInviteType val: :rtype: EventType """ return cls('paper_doc_team_invite', val) @classmethod def paper_doc_trashed(cls, val): """ Create an instance of this class set to the ``paper_doc_trashed`` tag with value ``val``. :param PaperDocTrashedType val: :rtype: EventType """ return cls('paper_doc_trashed', val) @classmethod def paper_doc_unresolve_comment(cls, val): """ Create an instance of this class set to the ``paper_doc_unresolve_comment`` tag with value ``val``. :param PaperDocUnresolveCommentType val: :rtype: EventType """ return cls('paper_doc_unresolve_comment', val) @classmethod def paper_doc_untrashed(cls, val): """ Create an instance of this class set to the ``paper_doc_untrashed`` tag with value ``val``. :param PaperDocUntrashedType val: :rtype: EventType """ return cls('paper_doc_untrashed', val) @classmethod def paper_doc_view(cls, val): """ Create an instance of this class set to the ``paper_doc_view`` tag with value ``val``. :param PaperDocViewType val: :rtype: EventType """ return cls('paper_doc_view', val) @classmethod def paper_external_view_allow(cls, val): """ Create an instance of this class set to the ``paper_external_view_allow`` tag with value ``val``. :param PaperExternalViewAllowType val: :rtype: EventType """ return cls('paper_external_view_allow', val) @classmethod def paper_external_view_default_team(cls, val): """ Create an instance of this class set to the ``paper_external_view_default_team`` tag with value ``val``. :param PaperExternalViewDefaultTeamType val: :rtype: EventType """ return cls('paper_external_view_default_team', val) @classmethod def paper_external_view_forbid(cls, val): """ Create an instance of this class set to the ``paper_external_view_forbid`` tag with value ``val``. :param PaperExternalViewForbidType val: :rtype: EventType """ return cls('paper_external_view_forbid', val) @classmethod def paper_folder_change_subscription(cls, val): """ Create an instance of this class set to the ``paper_folder_change_subscription`` tag with value ``val``. :param PaperFolderChangeSubscriptionType val: :rtype: EventType """ return cls('paper_folder_change_subscription', val) @classmethod def paper_folder_deleted(cls, val): """ Create an instance of this class set to the ``paper_folder_deleted`` tag with value ``val``. :param PaperFolderDeletedType val: :rtype: EventType """ return cls('paper_folder_deleted', val) @classmethod def paper_folder_followed(cls, val): """ Create an instance of this class set to the ``paper_folder_followed`` tag with value ``val``. :param PaperFolderFollowedType val: :rtype: EventType """ return cls('paper_folder_followed', val) @classmethod def paper_folder_team_invite(cls, val): """ Create an instance of this class set to the ``paper_folder_team_invite`` tag with value ``val``. :param PaperFolderTeamInviteType val: :rtype: EventType """ return cls('paper_folder_team_invite', val) @classmethod def paper_published_link_change_permission(cls, val): """ Create an instance of this class set to the ``paper_published_link_change_permission`` tag with value ``val``. :param PaperPublishedLinkChangePermissionType val: :rtype: EventType """ return cls('paper_published_link_change_permission', val) @classmethod def paper_published_link_create(cls, val): """ Create an instance of this class set to the ``paper_published_link_create`` tag with value ``val``. :param PaperPublishedLinkCreateType val: :rtype: EventType """ return cls('paper_published_link_create', val) @classmethod def paper_published_link_disabled(cls, val): """ Create an instance of this class set to the ``paper_published_link_disabled`` tag with value ``val``. :param PaperPublishedLinkDisabledType val: :rtype: EventType """ return cls('paper_published_link_disabled', val) @classmethod def paper_published_link_view(cls, val): """ Create an instance of this class set to the ``paper_published_link_view`` tag with value ``val``. :param PaperPublishedLinkViewType val: :rtype: EventType """ return cls('paper_published_link_view', val) @classmethod def password_change(cls, val): """ Create an instance of this class set to the ``password_change`` tag with value ``val``. :param PasswordChangeType val: :rtype: EventType """ return cls('password_change', val) @classmethod def password_reset(cls, val): """ Create an instance of this class set to the ``password_reset`` tag with value ``val``. :param PasswordResetType val: :rtype: EventType """ return cls('password_reset', val) @classmethod def password_reset_all(cls, val): """ Create an instance of this class set to the ``password_reset_all`` tag with value ``val``. :param PasswordResetAllType val: :rtype: EventType """ return cls('password_reset_all', val) @classmethod def classification_create_report(cls, val): """ Create an instance of this class set to the ``classification_create_report`` tag with value ``val``. :param ClassificationCreateReportType val: :rtype: EventType """ return cls('classification_create_report', val) @classmethod def classification_create_report_fail(cls, val): """ Create an instance of this class set to the ``classification_create_report_fail`` tag with value ``val``. :param ClassificationCreateReportFailType val: :rtype: EventType """ return cls('classification_create_report_fail', val) @classmethod def emm_create_exceptions_report(cls, val): """ Create an instance of this class set to the ``emm_create_exceptions_report`` tag with value ``val``. :param EmmCreateExceptionsReportType val: :rtype: EventType """ return cls('emm_create_exceptions_report', val) @classmethod def emm_create_usage_report(cls, val): """ Create an instance of this class set to the ``emm_create_usage_report`` tag with value ``val``. :param EmmCreateUsageReportType val: :rtype: EventType """ return cls('emm_create_usage_report', val) @classmethod def export_members_report(cls, val): """ Create an instance of this class set to the ``export_members_report`` tag with value ``val``. :param ExportMembersReportType val: :rtype: EventType """ return cls('export_members_report', val) @classmethod def export_members_report_fail(cls, val): """ Create an instance of this class set to the ``export_members_report_fail`` tag with value ``val``. :param ExportMembersReportFailType val: :rtype: EventType """ return cls('export_members_report_fail', val) @classmethod def external_sharing_create_report(cls, val): """ Create an instance of this class set to the ``external_sharing_create_report`` tag with value ``val``. :param ExternalSharingCreateReportType val: :rtype: EventType """ return cls('external_sharing_create_report', val) @classmethod def external_sharing_report_failed(cls, val): """ Create an instance of this class set to the ``external_sharing_report_failed`` tag with value ``val``. :param ExternalSharingReportFailedType val: :rtype: EventType """ return cls('external_sharing_report_failed', val) @classmethod def no_expiration_link_gen_create_report(cls, val): """ Create an instance of this class set to the ``no_expiration_link_gen_create_report`` tag with value ``val``. :param NoExpirationLinkGenCreateReportType val: :rtype: EventType """ return cls('no_expiration_link_gen_create_report', val) @classmethod def no_expiration_link_gen_report_failed(cls, val): """ Create an instance of this class set to the ``no_expiration_link_gen_report_failed`` tag with value ``val``. :param NoExpirationLinkGenReportFailedType val: :rtype: EventType """ return cls('no_expiration_link_gen_report_failed', val) @classmethod def no_password_link_gen_create_report(cls, val): """ Create an instance of this class set to the ``no_password_link_gen_create_report`` tag with value ``val``. :param NoPasswordLinkGenCreateReportType val: :rtype: EventType """ return cls('no_password_link_gen_create_report', val) @classmethod def no_password_link_gen_report_failed(cls, val): """ Create an instance of this class set to the ``no_password_link_gen_report_failed`` tag with value ``val``. :param NoPasswordLinkGenReportFailedType val: :rtype: EventType """ return cls('no_password_link_gen_report_failed', val) @classmethod def no_password_link_view_create_report(cls, val): """ Create an instance of this class set to the ``no_password_link_view_create_report`` tag with value ``val``. :param NoPasswordLinkViewCreateReportType val: :rtype: EventType """ return cls('no_password_link_view_create_report', val) @classmethod def no_password_link_view_report_failed(cls, val): """ Create an instance of this class set to the ``no_password_link_view_report_failed`` tag with value ``val``. :param NoPasswordLinkViewReportFailedType val: :rtype: EventType """ return cls('no_password_link_view_report_failed', val) @classmethod def outdated_link_view_create_report(cls, val): """ Create an instance of this class set to the ``outdated_link_view_create_report`` tag with value ``val``. :param OutdatedLinkViewCreateReportType val: :rtype: EventType """ return cls('outdated_link_view_create_report', val) @classmethod def outdated_link_view_report_failed(cls, val): """ Create an instance of this class set to the ``outdated_link_view_report_failed`` tag with value ``val``. :param OutdatedLinkViewReportFailedType val: :rtype: EventType """ return cls('outdated_link_view_report_failed', val) @classmethod def paper_admin_export_start(cls, val): """ Create an instance of this class set to the ``paper_admin_export_start`` tag with value ``val``. :param PaperAdminExportStartType val: :rtype: EventType """ return cls('paper_admin_export_start', val) @classmethod def ransomware_alert_create_report(cls, val): """ Create an instance of this class set to the ``ransomware_alert_create_report`` tag with value ``val``. :param RansomwareAlertCreateReportType val: :rtype: EventType """ return cls('ransomware_alert_create_report', val) @classmethod def ransomware_alert_create_report_failed(cls, val): """ Create an instance of this class set to the ``ransomware_alert_create_report_failed`` tag with value ``val``. :param RansomwareAlertCreateReportFailedType val: :rtype: EventType """ return cls('ransomware_alert_create_report_failed', val) @classmethod def smart_sync_create_admin_privilege_report(cls, val): """ Create an instance of this class set to the ``smart_sync_create_admin_privilege_report`` tag with value ``val``. :param SmartSyncCreateAdminPrivilegeReportType val: :rtype: EventType """ return cls('smart_sync_create_admin_privilege_report', val) @classmethod def team_activity_create_report(cls, val): """ Create an instance of this class set to the ``team_activity_create_report`` tag with value ``val``. :param TeamActivityCreateReportType val: :rtype: EventType """ return cls('team_activity_create_report', val) @classmethod def team_activity_create_report_fail(cls, val): """ Create an instance of this class set to the ``team_activity_create_report_fail`` tag with value ``val``. :param TeamActivityCreateReportFailType val: :rtype: EventType """ return cls('team_activity_create_report_fail', val) @classmethod def collection_share(cls, val): """ Create an instance of this class set to the ``collection_share`` tag with value ``val``. :param CollectionShareType val: :rtype: EventType """ return cls('collection_share', val) @classmethod def file_transfers_file_add(cls, val): """ Create an instance of this class set to the ``file_transfers_file_add`` tag with value ``val``. :param FileTransfersFileAddType val: :rtype: EventType """ return cls('file_transfers_file_add', val) @classmethod def file_transfers_transfer_delete(cls, val): """ Create an instance of this class set to the ``file_transfers_transfer_delete`` tag with value ``val``. :param FileTransfersTransferDeleteType val: :rtype: EventType """ return cls('file_transfers_transfer_delete', val) @classmethod def file_transfers_transfer_download(cls, val): """ Create an instance of this class set to the ``file_transfers_transfer_download`` tag with value ``val``. :param FileTransfersTransferDownloadType val: :rtype: EventType """ return cls('file_transfers_transfer_download', val) @classmethod def file_transfers_transfer_send(cls, val): """ Create an instance of this class set to the ``file_transfers_transfer_send`` tag with value ``val``. :param FileTransfersTransferSendType val: :rtype: EventType """ return cls('file_transfers_transfer_send', val) @classmethod def file_transfers_transfer_view(cls, val): """ Create an instance of this class set to the ``file_transfers_transfer_view`` tag with value ``val``. :param FileTransfersTransferViewType val: :rtype: EventType """ return cls('file_transfers_transfer_view', val) @classmethod def note_acl_invite_only(cls, val): """ Create an instance of this class set to the ``note_acl_invite_only`` tag with value ``val``. :param NoteAclInviteOnlyType val: :rtype: EventType """ return cls('note_acl_invite_only', val) @classmethod def note_acl_link(cls, val): """ Create an instance of this class set to the ``note_acl_link`` tag with value ``val``. :param NoteAclLinkType val: :rtype: EventType """ return cls('note_acl_link', val) @classmethod def note_acl_team_link(cls, val): """ Create an instance of this class set to the ``note_acl_team_link`` tag with value ``val``. :param NoteAclTeamLinkType val: :rtype: EventType """ return cls('note_acl_team_link', val) @classmethod def note_shared(cls, val): """ Create an instance of this class set to the ``note_shared`` tag with value ``val``. :param NoteSharedType val: :rtype: EventType """ return cls('note_shared', val) @classmethod def note_share_receive(cls, val): """ Create an instance of this class set to the ``note_share_receive`` tag with value ``val``. :param NoteShareReceiveType val: :rtype: EventType """ return cls('note_share_receive', val) @classmethod def open_note_shared(cls, val): """ Create an instance of this class set to the ``open_note_shared`` tag with value ``val``. :param OpenNoteSharedType val: :rtype: EventType """ return cls('open_note_shared', val) @classmethod def replay_file_shared_link_created(cls, val): """ Create an instance of this class set to the ``replay_file_shared_link_created`` tag with value ``val``. :param ReplayFileSharedLinkCreatedType val: :rtype: EventType """ return cls('replay_file_shared_link_created', val) @classmethod def replay_file_shared_link_modified(cls, val): """ Create an instance of this class set to the ``replay_file_shared_link_modified`` tag with value ``val``. :param ReplayFileSharedLinkModifiedType val: :rtype: EventType """ return cls('replay_file_shared_link_modified', val) @classmethod def replay_project_team_add(cls, val): """ Create an instance of this class set to the ``replay_project_team_add`` tag with value ``val``. :param ReplayProjectTeamAddType val: :rtype: EventType """ return cls('replay_project_team_add', val) @classmethod def replay_project_team_delete(cls, val): """ Create an instance of this class set to the ``replay_project_team_delete`` tag with value ``val``. :param ReplayProjectTeamDeleteType val: :rtype: EventType """ return cls('replay_project_team_delete', val) @classmethod def sf_add_group(cls, val): """ Create an instance of this class set to the ``sf_add_group`` tag with value ``val``. :param SfAddGroupType val: :rtype: EventType """ return cls('sf_add_group', val) @classmethod def sf_allow_non_members_to_view_shared_links(cls, val): """ Create an instance of this class set to the ``sf_allow_non_members_to_view_shared_links`` tag with value ``val``. :param SfAllowNonMembersToViewSharedLinksType val: :rtype: EventType """ return cls('sf_allow_non_members_to_view_shared_links', val) @classmethod def sf_external_invite_warn(cls, val): """ Create an instance of this class set to the ``sf_external_invite_warn`` tag with value ``val``. :param SfExternalInviteWarnType val: :rtype: EventType """ return cls('sf_external_invite_warn', val) @classmethod def sf_fb_invite(cls, val): """ Create an instance of this class set to the ``sf_fb_invite`` tag with value ``val``. :param SfFbInviteType val: :rtype: EventType """ return cls('sf_fb_invite', val) @classmethod def sf_fb_invite_change_role(cls, val): """ Create an instance of this class set to the ``sf_fb_invite_change_role`` tag with value ``val``. :param SfFbInviteChangeRoleType val: :rtype: EventType """ return cls('sf_fb_invite_change_role', val) @classmethod def sf_fb_uninvite(cls, val): """ Create an instance of this class set to the ``sf_fb_uninvite`` tag with value ``val``. :param SfFbUninviteType val: :rtype: EventType """ return cls('sf_fb_uninvite', val) @classmethod def sf_invite_group(cls, val): """ Create an instance of this class set to the ``sf_invite_group`` tag with value ``val``. :param SfInviteGroupType val: :rtype: EventType """ return cls('sf_invite_group', val) @classmethod def sf_team_grant_access(cls, val): """ Create an instance of this class set to the ``sf_team_grant_access`` tag with value ``val``. :param SfTeamGrantAccessType val: :rtype: EventType """ return cls('sf_team_grant_access', val) @classmethod def sf_team_invite(cls, val): """ Create an instance of this class set to the ``sf_team_invite`` tag with value ``val``. :param SfTeamInviteType val: :rtype: EventType """ return cls('sf_team_invite', val) @classmethod def sf_team_invite_change_role(cls, val): """ Create an instance of this class set to the ``sf_team_invite_change_role`` tag with value ``val``. :param SfTeamInviteChangeRoleType val: :rtype: EventType """ return cls('sf_team_invite_change_role', val) @classmethod def sf_team_join(cls, val): """ Create an instance of this class set to the ``sf_team_join`` tag with value ``val``. :param SfTeamJoinType val: :rtype: EventType """ return cls('sf_team_join', val) @classmethod def sf_team_join_from_oob_link(cls, val): """ Create an instance of this class set to the ``sf_team_join_from_oob_link`` tag with value ``val``. :param SfTeamJoinFromOobLinkType val: :rtype: EventType """ return cls('sf_team_join_from_oob_link', val) @classmethod def sf_team_uninvite(cls, val): """ Create an instance of this class set to the ``sf_team_uninvite`` tag with value ``val``. :param SfTeamUninviteType val: :rtype: EventType """ return cls('sf_team_uninvite', val) @classmethod def shared_content_add_invitees(cls, val): """ Create an instance of this class set to the ``shared_content_add_invitees`` tag with value ``val``. :param SharedContentAddInviteesType val: :rtype: EventType """ return cls('shared_content_add_invitees', val) @classmethod def shared_content_add_link_expiry(cls, val): """ Create an instance of this class set to the ``shared_content_add_link_expiry`` tag with value ``val``. :param SharedContentAddLinkExpiryType val: :rtype: EventType """ return cls('shared_content_add_link_expiry', val) @classmethod def shared_content_add_link_password(cls, val): """ Create an instance of this class set to the ``shared_content_add_link_password`` tag with value ``val``. :param SharedContentAddLinkPasswordType val: :rtype: EventType """ return cls('shared_content_add_link_password', val) @classmethod def shared_content_add_member(cls, val): """ Create an instance of this class set to the ``shared_content_add_member`` tag with value ``val``. :param SharedContentAddMemberType val: :rtype: EventType """ return cls('shared_content_add_member', val) @classmethod def shared_content_change_downloads_policy(cls, val): """ Create an instance of this class set to the ``shared_content_change_downloads_policy`` tag with value ``val``. :param SharedContentChangeDownloadsPolicyType val: :rtype: EventType """ return cls('shared_content_change_downloads_policy', val) @classmethod def shared_content_change_invitee_role(cls, val): """ Create an instance of this class set to the ``shared_content_change_invitee_role`` tag with value ``val``. :param SharedContentChangeInviteeRoleType val: :rtype: EventType """ return cls('shared_content_change_invitee_role', val) @classmethod def shared_content_change_link_audience(cls, val): """ Create an instance of this class set to the ``shared_content_change_link_audience`` tag with value ``val``. :param SharedContentChangeLinkAudienceType val: :rtype: EventType """ return cls('shared_content_change_link_audience', val) @classmethod def shared_content_change_link_expiry(cls, val): """ Create an instance of this class set to the ``shared_content_change_link_expiry`` tag with value ``val``. :param SharedContentChangeLinkExpiryType val: :rtype: EventType """ return cls('shared_content_change_link_expiry', val) @classmethod def shared_content_change_link_password(cls, val): """ Create an instance of this class set to the ``shared_content_change_link_password`` tag with value ``val``. :param SharedContentChangeLinkPasswordType val: :rtype: EventType """ return cls('shared_content_change_link_password', val) @classmethod def shared_content_change_member_role(cls, val): """ Create an instance of this class set to the ``shared_content_change_member_role`` tag with value ``val``. :param SharedContentChangeMemberRoleType val: :rtype: EventType """ return cls('shared_content_change_member_role', val) @classmethod def shared_content_change_viewer_info_policy(cls, val): """ Create an instance of this class set to the ``shared_content_change_viewer_info_policy`` tag with value ``val``. :param SharedContentChangeViewerInfoPolicyType val: :rtype: EventType """ return cls('shared_content_change_viewer_info_policy', val) @classmethod def shared_content_claim_invitation(cls, val): """ Create an instance of this class set to the ``shared_content_claim_invitation`` tag with value ``val``. :param SharedContentClaimInvitationType val: :rtype: EventType """ return cls('shared_content_claim_invitation', val) @classmethod def shared_content_copy(cls, val): """ Create an instance of this class set to the ``shared_content_copy`` tag with value ``val``. :param SharedContentCopyType val: :rtype: EventType """ return cls('shared_content_copy', val) @classmethod def shared_content_download(cls, val): """ Create an instance of this class set to the ``shared_content_download`` tag with value ``val``. :param SharedContentDownloadType val: :rtype: EventType """ return cls('shared_content_download', val) @classmethod def shared_content_relinquish_membership(cls, val): """ Create an instance of this class set to the ``shared_content_relinquish_membership`` tag with value ``val``. :param SharedContentRelinquishMembershipType val: :rtype: EventType """ return cls('shared_content_relinquish_membership', val) @classmethod def shared_content_remove_invitees(cls, val): """ Create an instance of this class set to the ``shared_content_remove_invitees`` tag with value ``val``. :param SharedContentRemoveInviteesType val: :rtype: EventType """ return cls('shared_content_remove_invitees', val) @classmethod def shared_content_remove_link_expiry(cls, val): """ Create an instance of this class set to the ``shared_content_remove_link_expiry`` tag with value ``val``. :param SharedContentRemoveLinkExpiryType val: :rtype: EventType """ return cls('shared_content_remove_link_expiry', val) @classmethod def shared_content_remove_link_password(cls, val): """ Create an instance of this class set to the ``shared_content_remove_link_password`` tag with value ``val``. :param SharedContentRemoveLinkPasswordType val: :rtype: EventType """ return cls('shared_content_remove_link_password', val) @classmethod def shared_content_remove_member(cls, val): """ Create an instance of this class set to the ``shared_content_remove_member`` tag with value ``val``. :param SharedContentRemoveMemberType val: :rtype: EventType """ return cls('shared_content_remove_member', val) @classmethod def shared_content_request_access(cls, val): """ Create an instance of this class set to the ``shared_content_request_access`` tag with value ``val``. :param SharedContentRequestAccessType val: :rtype: EventType """ return cls('shared_content_request_access', val) @classmethod def shared_content_restore_invitees(cls, val): """ Create an instance of this class set to the ``shared_content_restore_invitees`` tag with value ``val``. :param SharedContentRestoreInviteesType val: :rtype: EventType """ return cls('shared_content_restore_invitees', val) @classmethod def shared_content_restore_member(cls, val): """ Create an instance of this class set to the ``shared_content_restore_member`` tag with value ``val``. :param SharedContentRestoreMemberType val: :rtype: EventType """ return cls('shared_content_restore_member', val) @classmethod def shared_content_unshare(cls, val): """ Create an instance of this class set to the ``shared_content_unshare`` tag with value ``val``. :param SharedContentUnshareType val: :rtype: EventType """ return cls('shared_content_unshare', val) @classmethod def shared_content_view(cls, val): """ Create an instance of this class set to the ``shared_content_view`` tag with value ``val``. :param SharedContentViewType val: :rtype: EventType """ return cls('shared_content_view', val) @classmethod def shared_folder_change_link_policy(cls, val): """ Create an instance of this class set to the ``shared_folder_change_link_policy`` tag with value ``val``. :param SharedFolderChangeLinkPolicyType val: :rtype: EventType """ return cls('shared_folder_change_link_policy', val) @classmethod def shared_folder_change_members_inheritance_policy(cls, val): """ Create an instance of this class set to the ``shared_folder_change_members_inheritance_policy`` tag with value ``val``. :param SharedFolderChangeMembersInheritancePolicyType val: :rtype: EventType """ return cls('shared_folder_change_members_inheritance_policy', val) @classmethod def shared_folder_change_members_management_policy(cls, val): """ Create an instance of this class set to the ``shared_folder_change_members_management_policy`` tag with value ``val``. :param SharedFolderChangeMembersManagementPolicyType val: :rtype: EventType """ return cls('shared_folder_change_members_management_policy', val) @classmethod def shared_folder_change_members_policy(cls, val): """ Create an instance of this class set to the ``shared_folder_change_members_policy`` tag with value ``val``. :param SharedFolderChangeMembersPolicyType val: :rtype: EventType """ return cls('shared_folder_change_members_policy', val) @classmethod def shared_folder_create(cls, val): """ Create an instance of this class set to the ``shared_folder_create`` tag with value ``val``. :param SharedFolderCreateType val: :rtype: EventType """ return cls('shared_folder_create', val) @classmethod def shared_folder_decline_invitation(cls, val): """ Create an instance of this class set to the ``shared_folder_decline_invitation`` tag with value ``val``. :param SharedFolderDeclineInvitationType val: :rtype: EventType """ return cls('shared_folder_decline_invitation', val) @classmethod def shared_folder_mount(cls, val): """ Create an instance of this class set to the ``shared_folder_mount`` tag with value ``val``. :param SharedFolderMountType val: :rtype: EventType """ return cls('shared_folder_mount', val) @classmethod def shared_folder_nest(cls, val): """ Create an instance of this class set to the ``shared_folder_nest`` tag with value ``val``. :param SharedFolderNestType val: :rtype: EventType """ return cls('shared_folder_nest', val) @classmethod def shared_folder_transfer_ownership(cls, val): """ Create an instance of this class set to the ``shared_folder_transfer_ownership`` tag with value ``val``. :param SharedFolderTransferOwnershipType val: :rtype: EventType """ return cls('shared_folder_transfer_ownership', val) @classmethod def shared_folder_unmount(cls, val): """ Create an instance of this class set to the ``shared_folder_unmount`` tag with value ``val``. :param SharedFolderUnmountType val: :rtype: EventType """ return cls('shared_folder_unmount', val) @classmethod def shared_link_add_expiry(cls, val): """ Create an instance of this class set to the ``shared_link_add_expiry`` tag with value ``val``. :param SharedLinkAddExpiryType val: :rtype: EventType """ return cls('shared_link_add_expiry', val) @classmethod def shared_link_change_expiry(cls, val): """ Create an instance of this class set to the ``shared_link_change_expiry`` tag with value ``val``. :param SharedLinkChangeExpiryType val: :rtype: EventType """ return cls('shared_link_change_expiry', val) @classmethod def shared_link_change_visibility(cls, val): """ Create an instance of this class set to the ``shared_link_change_visibility`` tag with value ``val``. :param SharedLinkChangeVisibilityType val: :rtype: EventType """ return cls('shared_link_change_visibility', val) @classmethod def shared_link_copy(cls, val): """ Create an instance of this class set to the ``shared_link_copy`` tag with value ``val``. :param SharedLinkCopyType val: :rtype: EventType """ return cls('shared_link_copy', val) @classmethod def shared_link_create(cls, val): """ Create an instance of this class set to the ``shared_link_create`` tag with value ``val``. :param SharedLinkCreateType val: :rtype: EventType """ return cls('shared_link_create', val) @classmethod def shared_link_disable(cls, val): """ Create an instance of this class set to the ``shared_link_disable`` tag with value ``val``. :param SharedLinkDisableType val: :rtype: EventType """ return cls('shared_link_disable', val) @classmethod def shared_link_download(cls, val): """ Create an instance of this class set to the ``shared_link_download`` tag with value ``val``. :param SharedLinkDownloadType val: :rtype: EventType """ return cls('shared_link_download', val) @classmethod def shared_link_remove_expiry(cls, val): """ Create an instance of this class set to the ``shared_link_remove_expiry`` tag with value ``val``. :param SharedLinkRemoveExpiryType val: :rtype: EventType """ return cls('shared_link_remove_expiry', val) @classmethod def shared_link_settings_add_expiration(cls, val): """ Create an instance of this class set to the ``shared_link_settings_add_expiration`` tag with value ``val``. :param SharedLinkSettingsAddExpirationType val: :rtype: EventType """ return cls('shared_link_settings_add_expiration', val) @classmethod def shared_link_settings_add_password(cls, val): """ Create an instance of this class set to the ``shared_link_settings_add_password`` tag with value ``val``. :param SharedLinkSettingsAddPasswordType val: :rtype: EventType """ return cls('shared_link_settings_add_password', val) @classmethod def shared_link_settings_allow_download_disabled(cls, val): """ Create an instance of this class set to the ``shared_link_settings_allow_download_disabled`` tag with value ``val``. :param SharedLinkSettingsAllowDownloadDisabledType val: :rtype: EventType """ return cls('shared_link_settings_allow_download_disabled', val) @classmethod def shared_link_settings_allow_download_enabled(cls, val): """ Create an instance of this class set to the ``shared_link_settings_allow_download_enabled`` tag with value ``val``. :param SharedLinkSettingsAllowDownloadEnabledType val: :rtype: EventType """ return cls('shared_link_settings_allow_download_enabled', val) @classmethod def shared_link_settings_change_audience(cls, val): """ Create an instance of this class set to the ``shared_link_settings_change_audience`` tag with value ``val``. :param SharedLinkSettingsChangeAudienceType val: :rtype: EventType """ return cls('shared_link_settings_change_audience', val) @classmethod def shared_link_settings_change_expiration(cls, val): """ Create an instance of this class set to the ``shared_link_settings_change_expiration`` tag with value ``val``. :param SharedLinkSettingsChangeExpirationType val: :rtype: EventType """ return cls('shared_link_settings_change_expiration', val) @classmethod def shared_link_settings_change_password(cls, val): """ Create an instance of this class set to the ``shared_link_settings_change_password`` tag with value ``val``. :param SharedLinkSettingsChangePasswordType val: :rtype: EventType """ return cls('shared_link_settings_change_password', val) @classmethod def shared_link_settings_remove_expiration(cls, val): """ Create an instance of this class set to the ``shared_link_settings_remove_expiration`` tag with value ``val``. :param SharedLinkSettingsRemoveExpirationType val: :rtype: EventType """ return cls('shared_link_settings_remove_expiration', val) @classmethod def shared_link_settings_remove_password(cls, val): """ Create an instance of this class set to the ``shared_link_settings_remove_password`` tag with value ``val``. :param SharedLinkSettingsRemovePasswordType val: :rtype: EventType """ return cls('shared_link_settings_remove_password', val) @classmethod def shared_link_share(cls, val): """ Create an instance of this class set to the ``shared_link_share`` tag with value ``val``. :param SharedLinkShareType val: :rtype: EventType """ return cls('shared_link_share', val) @classmethod def shared_link_view(cls, val): """ Create an instance of this class set to the ``shared_link_view`` tag with value ``val``. :param SharedLinkViewType val: :rtype: EventType """ return cls('shared_link_view', val) @classmethod def shared_note_opened(cls, val): """ Create an instance of this class set to the ``shared_note_opened`` tag with value ``val``. :param SharedNoteOpenedType val: :rtype: EventType """ return cls('shared_note_opened', val) @classmethod def shmodel_disable_downloads(cls, val): """ Create an instance of this class set to the ``shmodel_disable_downloads`` tag with value ``val``. :param ShmodelDisableDownloadsType val: :rtype: EventType """ return cls('shmodel_disable_downloads', val) @classmethod def shmodel_enable_downloads(cls, val): """ Create an instance of this class set to the ``shmodel_enable_downloads`` tag with value ``val``. :param ShmodelEnableDownloadsType val: :rtype: EventType """ return cls('shmodel_enable_downloads', val) @classmethod def shmodel_group_share(cls, val): """ Create an instance of this class set to the ``shmodel_group_share`` tag with value ``val``. :param ShmodelGroupShareType val: :rtype: EventType """ return cls('shmodel_group_share', val) @classmethod def showcase_access_granted(cls, val): """ Create an instance of this class set to the ``showcase_access_granted`` tag with value ``val``. :param ShowcaseAccessGrantedType val: :rtype: EventType """ return cls('showcase_access_granted', val) @classmethod def showcase_add_member(cls, val): """ Create an instance of this class set to the ``showcase_add_member`` tag with value ``val``. :param ShowcaseAddMemberType val: :rtype: EventType """ return cls('showcase_add_member', val) @classmethod def showcase_archived(cls, val): """ Create an instance of this class set to the ``showcase_archived`` tag with value ``val``. :param ShowcaseArchivedType val: :rtype: EventType """ return cls('showcase_archived', val) @classmethod def showcase_created(cls, val): """ Create an instance of this class set to the ``showcase_created`` tag with value ``val``. :param ShowcaseCreatedType val: :rtype: EventType """ return cls('showcase_created', val) @classmethod def showcase_delete_comment(cls, val): """ Create an instance of this class set to the ``showcase_delete_comment`` tag with value ``val``. :param ShowcaseDeleteCommentType val: :rtype: EventType """ return cls('showcase_delete_comment', val) @classmethod def showcase_edited(cls, val): """ Create an instance of this class set to the ``showcase_edited`` tag with value ``val``. :param ShowcaseEditedType val: :rtype: EventType """ return cls('showcase_edited', val) @classmethod def showcase_edit_comment(cls, val): """ Create an instance of this class set to the ``showcase_edit_comment`` tag with value ``val``. :param ShowcaseEditCommentType val: :rtype: EventType """ return cls('showcase_edit_comment', val) @classmethod def showcase_file_added(cls, val): """ Create an instance of this class set to the ``showcase_file_added`` tag with value ``val``. :param ShowcaseFileAddedType val: :rtype: EventType """ return cls('showcase_file_added', val) @classmethod def showcase_file_download(cls, val): """ Create an instance of this class set to the ``showcase_file_download`` tag with value ``val``. :param ShowcaseFileDownloadType val: :rtype: EventType """ return cls('showcase_file_download', val) @classmethod def showcase_file_removed(cls, val): """ Create an instance of this class set to the ``showcase_file_removed`` tag with value ``val``. :param ShowcaseFileRemovedType val: :rtype: EventType """ return cls('showcase_file_removed', val) @classmethod def showcase_file_view(cls, val): """ Create an instance of this class set to the ``showcase_file_view`` tag with value ``val``. :param ShowcaseFileViewType val: :rtype: EventType """ return cls('showcase_file_view', val) @classmethod def showcase_permanently_deleted(cls, val): """ Create an instance of this class set to the ``showcase_permanently_deleted`` tag with value ``val``. :param ShowcasePermanentlyDeletedType val: :rtype: EventType """ return cls('showcase_permanently_deleted', val) @classmethod def showcase_post_comment(cls, val): """ Create an instance of this class set to the ``showcase_post_comment`` tag with value ``val``. :param ShowcasePostCommentType val: :rtype: EventType """ return cls('showcase_post_comment', val) @classmethod def showcase_remove_member(cls, val): """ Create an instance of this class set to the ``showcase_remove_member`` tag with value ``val``. :param ShowcaseRemoveMemberType val: :rtype: EventType """ return cls('showcase_remove_member', val) @classmethod def showcase_renamed(cls, val): """ Create an instance of this class set to the ``showcase_renamed`` tag with value ``val``. :param ShowcaseRenamedType val: :rtype: EventType """ return cls('showcase_renamed', val) @classmethod def showcase_request_access(cls, val): """ Create an instance of this class set to the ``showcase_request_access`` tag with value ``val``. :param ShowcaseRequestAccessType val: :rtype: EventType """ return cls('showcase_request_access', val) @classmethod def showcase_resolve_comment(cls, val): """ Create an instance of this class set to the ``showcase_resolve_comment`` tag with value ``val``. :param ShowcaseResolveCommentType val: :rtype: EventType """ return cls('showcase_resolve_comment', val) @classmethod def showcase_restored(cls, val): """ Create an instance of this class set to the ``showcase_restored`` tag with value ``val``. :param ShowcaseRestoredType val: :rtype: EventType """ return cls('showcase_restored', val) @classmethod def showcase_trashed(cls, val): """ Create an instance of this class set to the ``showcase_trashed`` tag with value ``val``. :param ShowcaseTrashedType val: :rtype: EventType """ return cls('showcase_trashed', val) @classmethod def showcase_trashed_deprecated(cls, val): """ Create an instance of this class set to the ``showcase_trashed_deprecated`` tag with value ``val``. :param ShowcaseTrashedDeprecatedType val: :rtype: EventType """ return cls('showcase_trashed_deprecated', val) @classmethod def showcase_unresolve_comment(cls, val): """ Create an instance of this class set to the ``showcase_unresolve_comment`` tag with value ``val``. :param ShowcaseUnresolveCommentType val: :rtype: EventType """ return cls('showcase_unresolve_comment', val) @classmethod def showcase_untrashed(cls, val): """ Create an instance of this class set to the ``showcase_untrashed`` tag with value ``val``. :param ShowcaseUntrashedType val: :rtype: EventType """ return cls('showcase_untrashed', val) @classmethod def showcase_untrashed_deprecated(cls, val): """ Create an instance of this class set to the ``showcase_untrashed_deprecated`` tag with value ``val``. :param ShowcaseUntrashedDeprecatedType val: :rtype: EventType """ return cls('showcase_untrashed_deprecated', val) @classmethod def showcase_view(cls, val): """ Create an instance of this class set to the ``showcase_view`` tag with value ``val``. :param ShowcaseViewType val: :rtype: EventType """ return cls('showcase_view', val) @classmethod def sso_add_cert(cls, val): """ Create an instance of this class set to the ``sso_add_cert`` tag with value ``val``. :param SsoAddCertType val: :rtype: EventType """ return cls('sso_add_cert', val) @classmethod def sso_add_login_url(cls, val): """ Create an instance of this class set to the ``sso_add_login_url`` tag with value ``val``. :param SsoAddLoginUrlType val: :rtype: EventType """ return cls('sso_add_login_url', val) @classmethod def sso_add_logout_url(cls, val): """ Create an instance of this class set to the ``sso_add_logout_url`` tag with value ``val``. :param SsoAddLogoutUrlType val: :rtype: EventType """ return cls('sso_add_logout_url', val) @classmethod def sso_change_cert(cls, val): """ Create an instance of this class set to the ``sso_change_cert`` tag with value ``val``. :param SsoChangeCertType val: :rtype: EventType """ return cls('sso_change_cert', val) @classmethod def sso_change_login_url(cls, val): """ Create an instance of this class set to the ``sso_change_login_url`` tag with value ``val``. :param SsoChangeLoginUrlType val: :rtype: EventType """ return cls('sso_change_login_url', val) @classmethod def sso_change_logout_url(cls, val): """ Create an instance of this class set to the ``sso_change_logout_url`` tag with value ``val``. :param SsoChangeLogoutUrlType val: :rtype: EventType """ return cls('sso_change_logout_url', val) @classmethod def sso_change_saml_identity_mode(cls, val): """ Create an instance of this class set to the ``sso_change_saml_identity_mode`` tag with value ``val``. :param SsoChangeSamlIdentityModeType val: :rtype: EventType """ return cls('sso_change_saml_identity_mode', val) @classmethod def sso_remove_cert(cls, val): """ Create an instance of this class set to the ``sso_remove_cert`` tag with value ``val``. :param SsoRemoveCertType val: :rtype: EventType """ return cls('sso_remove_cert', val) @classmethod def sso_remove_login_url(cls, val): """ Create an instance of this class set to the ``sso_remove_login_url`` tag with value ``val``. :param SsoRemoveLoginUrlType val: :rtype: EventType """ return cls('sso_remove_login_url', val) @classmethod def sso_remove_logout_url(cls, val): """ Create an instance of this class set to the ``sso_remove_logout_url`` tag with value ``val``. :param SsoRemoveLogoutUrlType val: :rtype: EventType """ return cls('sso_remove_logout_url', val) @classmethod def team_folder_change_status(cls, val): """ Create an instance of this class set to the ``team_folder_change_status`` tag with value ``val``. :param TeamFolderChangeStatusType val: :rtype: EventType """ return cls('team_folder_change_status', val) @classmethod def team_folder_create(cls, val): """ Create an instance of this class set to the ``team_folder_create`` tag with value ``val``. :param TeamFolderCreateType val: :rtype: EventType """ return cls('team_folder_create', val) @classmethod def team_folder_downgrade(cls, val): """ Create an instance of this class set to the ``team_folder_downgrade`` tag with value ``val``. :param TeamFolderDowngradeType val: :rtype: EventType """ return cls('team_folder_downgrade', val) @classmethod def team_folder_permanently_delete(cls, val): """ Create an instance of this class set to the ``team_folder_permanently_delete`` tag with value ``val``. :param TeamFolderPermanentlyDeleteType val: :rtype: EventType """ return cls('team_folder_permanently_delete', val) @classmethod def team_folder_rename(cls, val): """ Create an instance of this class set to the ``team_folder_rename`` tag with value ``val``. :param TeamFolderRenameType val: :rtype: EventType """ return cls('team_folder_rename', val) @classmethod def team_selective_sync_settings_changed(cls, val): """ Create an instance of this class set to the ``team_selective_sync_settings_changed`` tag with value ``val``. :param TeamSelectiveSyncSettingsChangedType val: :rtype: EventType """ return cls('team_selective_sync_settings_changed', val) @classmethod def account_capture_change_policy(cls, val): """ Create an instance of this class set to the ``account_capture_change_policy`` tag with value ``val``. :param AccountCaptureChangePolicyType val: :rtype: EventType """ return cls('account_capture_change_policy', val) @classmethod def admin_email_reminders_changed(cls, val): """ Create an instance of this class set to the ``admin_email_reminders_changed`` tag with value ``val``. :param AdminEmailRemindersChangedType val: :rtype: EventType """ return cls('admin_email_reminders_changed', val) @classmethod def allow_download_disabled(cls, val): """ Create an instance of this class set to the ``allow_download_disabled`` tag with value ``val``. :param AllowDownloadDisabledType val: :rtype: EventType """ return cls('allow_download_disabled', val) @classmethod def allow_download_enabled(cls, val): """ Create an instance of this class set to the ``allow_download_enabled`` tag with value ``val``. :param AllowDownloadEnabledType val: :rtype: EventType """ return cls('allow_download_enabled', val) @classmethod def app_permissions_changed(cls, val): """ Create an instance of this class set to the ``app_permissions_changed`` tag with value ``val``. :param AppPermissionsChangedType val: :rtype: EventType """ return cls('app_permissions_changed', val) @classmethod def camera_uploads_policy_changed(cls, val): """ Create an instance of this class set to the ``camera_uploads_policy_changed`` tag with value ``val``. :param CameraUploadsPolicyChangedType val: :rtype: EventType """ return cls('camera_uploads_policy_changed', val) @classmethod def capture_transcript_policy_changed(cls, val): """ Create an instance of this class set to the ``capture_transcript_policy_changed`` tag with value ``val``. :param CaptureTranscriptPolicyChangedType val: :rtype: EventType """ return cls('capture_transcript_policy_changed', val) @classmethod def classification_change_policy(cls, val): """ Create an instance of this class set to the ``classification_change_policy`` tag with value ``val``. :param ClassificationChangePolicyType val: :rtype: EventType """ return cls('classification_change_policy', val) @classmethod def computer_backup_policy_changed(cls, val): """ Create an instance of this class set to the ``computer_backup_policy_changed`` tag with value ``val``. :param ComputerBackupPolicyChangedType val: :rtype: EventType """ return cls('computer_backup_policy_changed', val) @classmethod def content_administration_policy_changed(cls, val): """ Create an instance of this class set to the ``content_administration_policy_changed`` tag with value ``val``. :param ContentAdministrationPolicyChangedType val: :rtype: EventType """ return cls('content_administration_policy_changed', val) @classmethod def data_placement_restriction_change_policy(cls, val): """ Create an instance of this class set to the ``data_placement_restriction_change_policy`` tag with value ``val``. :param DataPlacementRestrictionChangePolicyType val: :rtype: EventType """ return cls('data_placement_restriction_change_policy', val) @classmethod def data_placement_restriction_satisfy_policy(cls, val): """ Create an instance of this class set to the ``data_placement_restriction_satisfy_policy`` tag with value ``val``. :param DataPlacementRestrictionSatisfyPolicyType val: :rtype: EventType """ return cls('data_placement_restriction_satisfy_policy', val) @classmethod def device_approvals_add_exception(cls, val): """ Create an instance of this class set to the ``device_approvals_add_exception`` tag with value ``val``. :param DeviceApprovalsAddExceptionType val: :rtype: EventType """ return cls('device_approvals_add_exception', val) @classmethod def device_approvals_change_desktop_policy(cls, val): """ Create an instance of this class set to the ``device_approvals_change_desktop_policy`` tag with value ``val``. :param DeviceApprovalsChangeDesktopPolicyType val: :rtype: EventType """ return cls('device_approvals_change_desktop_policy', val) @classmethod def device_approvals_change_mobile_policy(cls, val): """ Create an instance of this class set to the ``device_approvals_change_mobile_policy`` tag with value ``val``. :param DeviceApprovalsChangeMobilePolicyType val: :rtype: EventType """ return cls('device_approvals_change_mobile_policy', val) @classmethod def device_approvals_change_overage_action(cls, val): """ Create an instance of this class set to the ``device_approvals_change_overage_action`` tag with value ``val``. :param DeviceApprovalsChangeOverageActionType val: :rtype: EventType """ return cls('device_approvals_change_overage_action', val) @classmethod def device_approvals_change_unlink_action(cls, val): """ Create an instance of this class set to the ``device_approvals_change_unlink_action`` tag with value ``val``. :param DeviceApprovalsChangeUnlinkActionType val: :rtype: EventType """ return cls('device_approvals_change_unlink_action', val) @classmethod def device_approvals_remove_exception(cls, val): """ Create an instance of this class set to the ``device_approvals_remove_exception`` tag with value ``val``. :param DeviceApprovalsRemoveExceptionType val: :rtype: EventType """ return cls('device_approvals_remove_exception', val) @classmethod def directory_restrictions_add_members(cls, val): """ Create an instance of this class set to the ``directory_restrictions_add_members`` tag with value ``val``. :param DirectoryRestrictionsAddMembersType val: :rtype: EventType """ return cls('directory_restrictions_add_members', val) @classmethod def directory_restrictions_remove_members(cls, val): """ Create an instance of this class set to the ``directory_restrictions_remove_members`` tag with value ``val``. :param DirectoryRestrictionsRemoveMembersType val: :rtype: EventType """ return cls('directory_restrictions_remove_members', val) @classmethod def dropbox_passwords_policy_changed(cls, val): """ Create an instance of this class set to the ``dropbox_passwords_policy_changed`` tag with value ``val``. :param DropboxPasswordsPolicyChangedType val: :rtype: EventType """ return cls('dropbox_passwords_policy_changed', val) @classmethod def email_ingest_policy_changed(cls, val): """ Create an instance of this class set to the ``email_ingest_policy_changed`` tag with value ``val``. :param EmailIngestPolicyChangedType val: :rtype: EventType """ return cls('email_ingest_policy_changed', val) @classmethod def emm_add_exception(cls, val): """ Create an instance of this class set to the ``emm_add_exception`` tag with value ``val``. :param EmmAddExceptionType val: :rtype: EventType """ return cls('emm_add_exception', val) @classmethod def emm_change_policy(cls, val): """ Create an instance of this class set to the ``emm_change_policy`` tag with value ``val``. :param EmmChangePolicyType val: :rtype: EventType """ return cls('emm_change_policy', val) @classmethod def emm_remove_exception(cls, val): """ Create an instance of this class set to the ``emm_remove_exception`` tag with value ``val``. :param EmmRemoveExceptionType val: :rtype: EventType """ return cls('emm_remove_exception', val) @classmethod def extended_version_history_change_policy(cls, val): """ Create an instance of this class set to the ``extended_version_history_change_policy`` tag with value ``val``. :param ExtendedVersionHistoryChangePolicyType val: :rtype: EventType """ return cls('extended_version_history_change_policy', val) @classmethod def external_drive_backup_policy_changed(cls, val): """ Create an instance of this class set to the ``external_drive_backup_policy_changed`` tag with value ``val``. :param ExternalDriveBackupPolicyChangedType val: :rtype: EventType """ return cls('external_drive_backup_policy_changed', val) @classmethod def file_comments_change_policy(cls, val): """ Create an instance of this class set to the ``file_comments_change_policy`` tag with value ``val``. :param FileCommentsChangePolicyType val: :rtype: EventType """ return cls('file_comments_change_policy', val) @classmethod def file_locking_policy_changed(cls, val): """ Create an instance of this class set to the ``file_locking_policy_changed`` tag with value ``val``. :param FileLockingPolicyChangedType val: :rtype: EventType """ return cls('file_locking_policy_changed', val) @classmethod def file_provider_migration_policy_changed(cls, val): """ Create an instance of this class set to the ``file_provider_migration_policy_changed`` tag with value ``val``. :param FileProviderMigrationPolicyChangedType val: :rtype: EventType """ return cls('file_provider_migration_policy_changed', val) @classmethod def file_requests_change_policy(cls, val): """ Create an instance of this class set to the ``file_requests_change_policy`` tag with value ``val``. :param FileRequestsChangePolicyType val: :rtype: EventType """ return cls('file_requests_change_policy', val) @classmethod def file_requests_emails_enabled(cls, val): """ Create an instance of this class set to the ``file_requests_emails_enabled`` tag with value ``val``. :param FileRequestsEmailsEnabledType val: :rtype: EventType """ return cls('file_requests_emails_enabled', val) @classmethod def file_requests_emails_restricted_to_team_only(cls, val): """ Create an instance of this class set to the ``file_requests_emails_restricted_to_team_only`` tag with value ``val``. :param FileRequestsEmailsRestrictedToTeamOnlyType val: :rtype: EventType """ return cls('file_requests_emails_restricted_to_team_only', val) @classmethod def file_transfers_policy_changed(cls, val): """ Create an instance of this class set to the ``file_transfers_policy_changed`` tag with value ``val``. :param FileTransfersPolicyChangedType val: :rtype: EventType """ return cls('file_transfers_policy_changed', val) @classmethod def folder_link_restriction_policy_changed(cls, val): """ Create an instance of this class set to the ``folder_link_restriction_policy_changed`` tag with value ``val``. :param FolderLinkRestrictionPolicyChangedType val: :rtype: EventType """ return cls('folder_link_restriction_policy_changed', val) @classmethod def google_sso_change_policy(cls, val): """ Create an instance of this class set to the ``google_sso_change_policy`` tag with value ``val``. :param GoogleSsoChangePolicyType val: :rtype: EventType """ return cls('google_sso_change_policy', val) @classmethod def group_user_management_change_policy(cls, val): """ Create an instance of this class set to the ``group_user_management_change_policy`` tag with value ``val``. :param GroupUserManagementChangePolicyType val: :rtype: EventType """ return cls('group_user_management_change_policy', val) @classmethod def integration_policy_changed(cls, val): """ Create an instance of this class set to the ``integration_policy_changed`` tag with value ``val``. :param IntegrationPolicyChangedType val: :rtype: EventType """ return cls('integration_policy_changed', val) @classmethod def invite_acceptance_email_policy_changed(cls, val): """ Create an instance of this class set to the ``invite_acceptance_email_policy_changed`` tag with value ``val``. :param InviteAcceptanceEmailPolicyChangedType val: :rtype: EventType """ return cls('invite_acceptance_email_policy_changed', val) @classmethod def member_requests_change_policy(cls, val): """ Create an instance of this class set to the ``member_requests_change_policy`` tag with value ``val``. :param MemberRequestsChangePolicyType val: :rtype: EventType """ return cls('member_requests_change_policy', val) @classmethod def member_send_invite_policy_changed(cls, val): """ Create an instance of this class set to the ``member_send_invite_policy_changed`` tag with value ``val``. :param MemberSendInvitePolicyChangedType val: :rtype: EventType """ return cls('member_send_invite_policy_changed', val) @classmethod def member_space_limits_add_exception(cls, val): """ Create an instance of this class set to the ``member_space_limits_add_exception`` tag with value ``val``. :param MemberSpaceLimitsAddExceptionType val: :rtype: EventType """ return cls('member_space_limits_add_exception', val) @classmethod def member_space_limits_change_caps_type_policy(cls, val): """ Create an instance of this class set to the ``member_space_limits_change_caps_type_policy`` tag with value ``val``. :param MemberSpaceLimitsChangeCapsTypePolicyType val: :rtype: EventType """ return cls('member_space_limits_change_caps_type_policy', val) @classmethod def member_space_limits_change_policy(cls, val): """ Create an instance of this class set to the ``member_space_limits_change_policy`` tag with value ``val``. :param MemberSpaceLimitsChangePolicyType val: :rtype: EventType """ return cls('member_space_limits_change_policy', val) @classmethod def member_space_limits_remove_exception(cls, val): """ Create an instance of this class set to the ``member_space_limits_remove_exception`` tag with value ``val``. :param MemberSpaceLimitsRemoveExceptionType val: :rtype: EventType """ return cls('member_space_limits_remove_exception', val) @classmethod def member_suggestions_change_policy(cls, val): """ Create an instance of this class set to the ``member_suggestions_change_policy`` tag with value ``val``. :param MemberSuggestionsChangePolicyType val: :rtype: EventType """ return cls('member_suggestions_change_policy', val) @classmethod def microsoft_office_addin_change_policy(cls, val): """ Create an instance of this class set to the ``microsoft_office_addin_change_policy`` tag with value ``val``. :param MicrosoftOfficeAddinChangePolicyType val: :rtype: EventType """ return cls('microsoft_office_addin_change_policy', val) @classmethod def network_control_change_policy(cls, val): """ Create an instance of this class set to the ``network_control_change_policy`` tag with value ``val``. :param NetworkControlChangePolicyType val: :rtype: EventType """ return cls('network_control_change_policy', val) @classmethod def paper_change_deployment_policy(cls, val): """ Create an instance of this class set to the ``paper_change_deployment_policy`` tag with value ``val``. :param PaperChangeDeploymentPolicyType val: :rtype: EventType """ return cls('paper_change_deployment_policy', val) @classmethod def paper_change_member_link_policy(cls, val): """ Create an instance of this class set to the ``paper_change_member_link_policy`` tag with value ``val``. :param PaperChangeMemberLinkPolicyType val: :rtype: EventType """ return cls('paper_change_member_link_policy', val) @classmethod def paper_change_member_policy(cls, val): """ Create an instance of this class set to the ``paper_change_member_policy`` tag with value ``val``. :param PaperChangeMemberPolicyType val: :rtype: EventType """ return cls('paper_change_member_policy', val) @classmethod def paper_change_policy(cls, val): """ Create an instance of this class set to the ``paper_change_policy`` tag with value ``val``. :param PaperChangePolicyType val: :rtype: EventType """ return cls('paper_change_policy', val) @classmethod def paper_default_folder_policy_changed(cls, val): """ Create an instance of this class set to the ``paper_default_folder_policy_changed`` tag with value ``val``. :param PaperDefaultFolderPolicyChangedType val: :rtype: EventType """ return cls('paper_default_folder_policy_changed', val) @classmethod def paper_desktop_policy_changed(cls, val): """ Create an instance of this class set to the ``paper_desktop_policy_changed`` tag with value ``val``. :param PaperDesktopPolicyChangedType val: :rtype: EventType """ return cls('paper_desktop_policy_changed', val) @classmethod def paper_enabled_users_group_addition(cls, val): """ Create an instance of this class set to the ``paper_enabled_users_group_addition`` tag with value ``val``. :param PaperEnabledUsersGroupAdditionType val: :rtype: EventType """ return cls('paper_enabled_users_group_addition', val) @classmethod def paper_enabled_users_group_removal(cls, val): """ Create an instance of this class set to the ``paper_enabled_users_group_removal`` tag with value ``val``. :param PaperEnabledUsersGroupRemovalType val: :rtype: EventType """ return cls('paper_enabled_users_group_removal', val) @classmethod def password_strength_requirements_change_policy(cls, val): """ Create an instance of this class set to the ``password_strength_requirements_change_policy`` tag with value ``val``. :param PasswordStrengthRequirementsChangePolicyType val: :rtype: EventType """ return cls('password_strength_requirements_change_policy', val) @classmethod def permanent_delete_change_policy(cls, val): """ Create an instance of this class set to the ``permanent_delete_change_policy`` tag with value ``val``. :param PermanentDeleteChangePolicyType val: :rtype: EventType """ return cls('permanent_delete_change_policy', val) @classmethod def reseller_support_change_policy(cls, val): """ Create an instance of this class set to the ``reseller_support_change_policy`` tag with value ``val``. :param ResellerSupportChangePolicyType val: :rtype: EventType """ return cls('reseller_support_change_policy', val) @classmethod def rewind_policy_changed(cls, val): """ Create an instance of this class set to the ``rewind_policy_changed`` tag with value ``val``. :param RewindPolicyChangedType val: :rtype: EventType """ return cls('rewind_policy_changed', val) @classmethod def send_for_signature_policy_changed(cls, val): """ Create an instance of this class set to the ``send_for_signature_policy_changed`` tag with value ``val``. :param SendForSignaturePolicyChangedType val: :rtype: EventType """ return cls('send_for_signature_policy_changed', val) @classmethod def sharing_change_folder_join_policy(cls, val): """ Create an instance of this class set to the ``sharing_change_folder_join_policy`` tag with value ``val``. :param SharingChangeFolderJoinPolicyType val: :rtype: EventType """ return cls('sharing_change_folder_join_policy', val) @classmethod def sharing_change_link_allow_change_expiration_policy(cls, val): """ Create an instance of this class set to the ``sharing_change_link_allow_change_expiration_policy`` tag with value ``val``. :param SharingChangeLinkAllowChangeExpirationPolicyType val: :rtype: EventType """ return cls('sharing_change_link_allow_change_expiration_policy', val) @classmethod def sharing_change_link_default_expiration_policy(cls, val): """ Create an instance of this class set to the ``sharing_change_link_default_expiration_policy`` tag with value ``val``. :param SharingChangeLinkDefaultExpirationPolicyType val: :rtype: EventType """ return cls('sharing_change_link_default_expiration_policy', val) @classmethod def sharing_change_link_enforce_password_policy(cls, val): """ Create an instance of this class set to the ``sharing_change_link_enforce_password_policy`` tag with value ``val``. :param SharingChangeLinkEnforcePasswordPolicyType val: :rtype: EventType """ return cls('sharing_change_link_enforce_password_policy', val) @classmethod def sharing_change_link_policy(cls, val): """ Create an instance of this class set to the ``sharing_change_link_policy`` tag with value ``val``. :param SharingChangeLinkPolicyType val: :rtype: EventType """ return cls('sharing_change_link_policy', val) @classmethod def sharing_change_member_policy(cls, val): """ Create an instance of this class set to the ``sharing_change_member_policy`` tag with value ``val``. :param SharingChangeMemberPolicyType val: :rtype: EventType """ return cls('sharing_change_member_policy', val) @classmethod def showcase_change_download_policy(cls, val): """ Create an instance of this class set to the ``showcase_change_download_policy`` tag with value ``val``. :param ShowcaseChangeDownloadPolicyType val: :rtype: EventType """ return cls('showcase_change_download_policy', val) @classmethod def showcase_change_enabled_policy(cls, val): """ Create an instance of this class set to the ``showcase_change_enabled_policy`` tag with value ``val``. :param ShowcaseChangeEnabledPolicyType val: :rtype: EventType """ return cls('showcase_change_enabled_policy', val) @classmethod def showcase_change_external_sharing_policy(cls, val): """ Create an instance of this class set to the ``showcase_change_external_sharing_policy`` tag with value ``val``. :param ShowcaseChangeExternalSharingPolicyType val: :rtype: EventType """ return cls('showcase_change_external_sharing_policy', val) @classmethod def smarter_smart_sync_policy_changed(cls, val): """ Create an instance of this class set to the ``smarter_smart_sync_policy_changed`` tag with value ``val``. :param SmarterSmartSyncPolicyChangedType val: :rtype: EventType """ return cls('smarter_smart_sync_policy_changed', val) @classmethod def smart_sync_change_policy(cls, val): """ Create an instance of this class set to the ``smart_sync_change_policy`` tag with value ``val``. :param SmartSyncChangePolicyType val: :rtype: EventType """ return cls('smart_sync_change_policy', val) @classmethod def smart_sync_not_opt_out(cls, val): """ Create an instance of this class set to the ``smart_sync_not_opt_out`` tag with value ``val``. :param SmartSyncNotOptOutType val: :rtype: EventType """ return cls('smart_sync_not_opt_out', val) @classmethod def smart_sync_opt_out(cls, val): """ Create an instance of this class set to the ``smart_sync_opt_out`` tag with value ``val``. :param SmartSyncOptOutType val: :rtype: EventType """ return cls('smart_sync_opt_out', val) @classmethod def sso_change_policy(cls, val): """ Create an instance of this class set to the ``sso_change_policy`` tag with value ``val``. :param SsoChangePolicyType val: :rtype: EventType """ return cls('sso_change_policy', val) @classmethod def team_branding_policy_changed(cls, val): """ Create an instance of this class set to the ``team_branding_policy_changed`` tag with value ``val``. :param TeamBrandingPolicyChangedType val: :rtype: EventType """ return cls('team_branding_policy_changed', val) @classmethod def team_extensions_policy_changed(cls, val): """ Create an instance of this class set to the ``team_extensions_policy_changed`` tag with value ``val``. :param TeamExtensionsPolicyChangedType val: :rtype: EventType """ return cls('team_extensions_policy_changed', val) @classmethod def team_selective_sync_policy_changed(cls, val): """ Create an instance of this class set to the ``team_selective_sync_policy_changed`` tag with value ``val``. :param TeamSelectiveSyncPolicyChangedType val: :rtype: EventType """ return cls('team_selective_sync_policy_changed', val) @classmethod def team_sharing_whitelist_subjects_changed(cls, val): """ Create an instance of this class set to the ``team_sharing_whitelist_subjects_changed`` tag with value ``val``. :param TeamSharingWhitelistSubjectsChangedType val: :rtype: EventType """ return cls('team_sharing_whitelist_subjects_changed', val) @classmethod def tfa_add_exception(cls, val): """ Create an instance of this class set to the ``tfa_add_exception`` tag with value ``val``. :param TfaAddExceptionType val: :rtype: EventType """ return cls('tfa_add_exception', val) @classmethod def tfa_change_policy(cls, val): """ Create an instance of this class set to the ``tfa_change_policy`` tag with value ``val``. :param TfaChangePolicyType val: :rtype: EventType """ return cls('tfa_change_policy', val) @classmethod def tfa_remove_exception(cls, val): """ Create an instance of this class set to the ``tfa_remove_exception`` tag with value ``val``. :param TfaRemoveExceptionType val: :rtype: EventType """ return cls('tfa_remove_exception', val) @classmethod def two_account_change_policy(cls, val): """ Create an instance of this class set to the ``two_account_change_policy`` tag with value ``val``. :param TwoAccountChangePolicyType val: :rtype: EventType """ return cls('two_account_change_policy', val) @classmethod def viewer_info_policy_changed(cls, val): """ Create an instance of this class set to the ``viewer_info_policy_changed`` tag with value ``val``. :param ViewerInfoPolicyChangedType val: :rtype: EventType """ return cls('viewer_info_policy_changed', val) @classmethod def watermarking_policy_changed(cls, val): """ Create an instance of this class set to the ``watermarking_policy_changed`` tag with value ``val``. :param WatermarkingPolicyChangedType val: :rtype: EventType """ return cls('watermarking_policy_changed', val) @classmethod def web_sessions_change_active_session_limit(cls, val): """ Create an instance of this class set to the ``web_sessions_change_active_session_limit`` tag with value ``val``. :param WebSessionsChangeActiveSessionLimitType val: :rtype: EventType """ return cls('web_sessions_change_active_session_limit', val) @classmethod def web_sessions_change_fixed_length_policy(cls, val): """ Create an instance of this class set to the ``web_sessions_change_fixed_length_policy`` tag with value ``val``. :param WebSessionsChangeFixedLengthPolicyType val: :rtype: EventType """ return cls('web_sessions_change_fixed_length_policy', val) @classmethod def web_sessions_change_idle_length_policy(cls, val): """ Create an instance of this class set to the ``web_sessions_change_idle_length_policy`` tag with value ``val``. :param WebSessionsChangeIdleLengthPolicyType val: :rtype: EventType """ return cls('web_sessions_change_idle_length_policy', val) @classmethod def data_residency_migration_request_successful(cls, val): """ Create an instance of this class set to the ``data_residency_migration_request_successful`` tag with value ``val``. :param DataResidencyMigrationRequestSuccessfulType val: :rtype: EventType """ return cls('data_residency_migration_request_successful', val) @classmethod def data_residency_migration_request_unsuccessful(cls, val): """ Create an instance of this class set to the ``data_residency_migration_request_unsuccessful`` tag with value ``val``. :param DataResidencyMigrationRequestUnsuccessfulType val: :rtype: EventType """ return cls('data_residency_migration_request_unsuccessful', val) @classmethod def team_merge_from(cls, val): """ Create an instance of this class set to the ``team_merge_from`` tag with value ``val``. :param TeamMergeFromType val: :rtype: EventType """ return cls('team_merge_from', val) @classmethod def team_merge_to(cls, val): """ Create an instance of this class set to the ``team_merge_to`` tag with value ``val``. :param TeamMergeToType val: :rtype: EventType """ return cls('team_merge_to', val) @classmethod def team_profile_add_background(cls, val): """ Create an instance of this class set to the ``team_profile_add_background`` tag with value ``val``. :param TeamProfileAddBackgroundType val: :rtype: EventType """ return cls('team_profile_add_background', val) @classmethod def team_profile_add_logo(cls, val): """ Create an instance of this class set to the ``team_profile_add_logo`` tag with value ``val``. :param TeamProfileAddLogoType val: :rtype: EventType """ return cls('team_profile_add_logo', val) @classmethod def team_profile_change_background(cls, val): """ Create an instance of this class set to the ``team_profile_change_background`` tag with value ``val``. :param TeamProfileChangeBackgroundType val: :rtype: EventType """ return cls('team_profile_change_background', val) @classmethod def team_profile_change_default_language(cls, val): """ Create an instance of this class set to the ``team_profile_change_default_language`` tag with value ``val``. :param TeamProfileChangeDefaultLanguageType val: :rtype: EventType """ return cls('team_profile_change_default_language', val) @classmethod def team_profile_change_logo(cls, val): """ Create an instance of this class set to the ``team_profile_change_logo`` tag with value ``val``. :param TeamProfileChangeLogoType val: :rtype: EventType """ return cls('team_profile_change_logo', val) @classmethod def team_profile_change_name(cls, val): """ Create an instance of this class set to the ``team_profile_change_name`` tag with value ``val``. :param TeamProfileChangeNameType val: :rtype: EventType """ return cls('team_profile_change_name', val) @classmethod def team_profile_remove_background(cls, val): """ Create an instance of this class set to the ``team_profile_remove_background`` tag with value ``val``. :param TeamProfileRemoveBackgroundType val: :rtype: EventType """ return cls('team_profile_remove_background', val) @classmethod def team_profile_remove_logo(cls, val): """ Create an instance of this class set to the ``team_profile_remove_logo`` tag with value ``val``. :param TeamProfileRemoveLogoType val: :rtype: EventType """ return cls('team_profile_remove_logo', val) @classmethod def tfa_add_backup_phone(cls, val): """ Create an instance of this class set to the ``tfa_add_backup_phone`` tag with value ``val``. :param TfaAddBackupPhoneType val: :rtype: EventType """ return cls('tfa_add_backup_phone', val) @classmethod def tfa_add_security_key(cls, val): """ Create an instance of this class set to the ``tfa_add_security_key`` tag with value ``val``. :param TfaAddSecurityKeyType val: :rtype: EventType """ return cls('tfa_add_security_key', val) @classmethod def tfa_change_backup_phone(cls, val): """ Create an instance of this class set to the ``tfa_change_backup_phone`` tag with value ``val``. :param TfaChangeBackupPhoneType val: :rtype: EventType """ return cls('tfa_change_backup_phone', val) @classmethod def tfa_change_status(cls, val): """ Create an instance of this class set to the ``tfa_change_status`` tag with value ``val``. :param TfaChangeStatusType val: :rtype: EventType """ return cls('tfa_change_status', val) @classmethod def tfa_remove_backup_phone(cls, val): """ Create an instance of this class set to the ``tfa_remove_backup_phone`` tag with value ``val``. :param TfaRemoveBackupPhoneType val: :rtype: EventType """ return cls('tfa_remove_backup_phone', val) @classmethod def tfa_remove_security_key(cls, val): """ Create an instance of this class set to the ``tfa_remove_security_key`` tag with value ``val``. :param TfaRemoveSecurityKeyType val: :rtype: EventType """ return cls('tfa_remove_security_key', val) @classmethod def tfa_reset(cls, val): """ Create an instance of this class set to the ``tfa_reset`` tag with value ``val``. :param TfaResetType val: :rtype: EventType """ return cls('tfa_reset', val) @classmethod def changed_enterprise_admin_role(cls, val): """ Create an instance of this class set to the ``changed_enterprise_admin_role`` tag with value ``val``. :param ChangedEnterpriseAdminRoleType val: :rtype: EventType """ return cls('changed_enterprise_admin_role', val) @classmethod def changed_enterprise_connected_team_status(cls, val): """ Create an instance of this class set to the ``changed_enterprise_connected_team_status`` tag with value ``val``. :param ChangedEnterpriseConnectedTeamStatusType val: :rtype: EventType """ return cls('changed_enterprise_connected_team_status', val) @classmethod def ended_enterprise_admin_session(cls, val): """ Create an instance of this class set to the ``ended_enterprise_admin_session`` tag with value ``val``. :param EndedEnterpriseAdminSessionType val: :rtype: EventType """ return cls('ended_enterprise_admin_session', val) @classmethod def ended_enterprise_admin_session_deprecated(cls, val): """ Create an instance of this class set to the ``ended_enterprise_admin_session_deprecated`` tag with value ``val``. :param EndedEnterpriseAdminSessionDeprecatedType val: :rtype: EventType """ return cls('ended_enterprise_admin_session_deprecated', val) @classmethod def enterprise_settings_locking(cls, val): """ Create an instance of this class set to the ``enterprise_settings_locking`` tag with value ``val``. :param EnterpriseSettingsLockingType val: :rtype: EventType """ return cls('enterprise_settings_locking', val) @classmethod def guest_admin_change_status(cls, val): """ Create an instance of this class set to the ``guest_admin_change_status`` tag with value ``val``. :param GuestAdminChangeStatusType val: :rtype: EventType """ return cls('guest_admin_change_status', val) @classmethod def started_enterprise_admin_session(cls, val): """ Create an instance of this class set to the ``started_enterprise_admin_session`` tag with value ``val``. :param StartedEnterpriseAdminSessionType val: :rtype: EventType """ return cls('started_enterprise_admin_session', val) @classmethod def team_merge_request_accepted(cls, val): """ Create an instance of this class set to the ``team_merge_request_accepted`` tag with value ``val``. :param TeamMergeRequestAcceptedType val: :rtype: EventType """ return cls('team_merge_request_accepted', val) @classmethod def team_merge_request_accepted_shown_to_primary_team(cls, val): """ Create an instance of this class set to the ``team_merge_request_accepted_shown_to_primary_team`` tag with value ``val``. :param TeamMergeRequestAcceptedShownToPrimaryTeamType val: :rtype: EventType """ return cls('team_merge_request_accepted_shown_to_primary_team', val) @classmethod def team_merge_request_accepted_shown_to_secondary_team(cls, val): """ Create an instance of this class set to the ``team_merge_request_accepted_shown_to_secondary_team`` tag with value ``val``. :param TeamMergeRequestAcceptedShownToSecondaryTeamType val: :rtype: EventType """ return cls('team_merge_request_accepted_shown_to_secondary_team', val) @classmethod def team_merge_request_auto_canceled(cls, val): """ Create an instance of this class set to the ``team_merge_request_auto_canceled`` tag with value ``val``. :param TeamMergeRequestAutoCanceledType val: :rtype: EventType """ return cls('team_merge_request_auto_canceled', val) @classmethod def team_merge_request_canceled(cls, val): """ Create an instance of this class set to the ``team_merge_request_canceled`` tag with value ``val``. :param TeamMergeRequestCanceledType val: :rtype: EventType """ return cls('team_merge_request_canceled', val) @classmethod def team_merge_request_canceled_shown_to_primary_team(cls, val): """ Create an instance of this class set to the ``team_merge_request_canceled_shown_to_primary_team`` tag with value ``val``. :param TeamMergeRequestCanceledShownToPrimaryTeamType val: :rtype: EventType """ return cls('team_merge_request_canceled_shown_to_primary_team', val) @classmethod def team_merge_request_canceled_shown_to_secondary_team(cls, val): """ Create an instance of this class set to the ``team_merge_request_canceled_shown_to_secondary_team`` tag with value ``val``. :param TeamMergeRequestCanceledShownToSecondaryTeamType val: :rtype: EventType """ return cls('team_merge_request_canceled_shown_to_secondary_team', val) @classmethod def team_merge_request_expired(cls, val): """ Create an instance of this class set to the ``team_merge_request_expired`` tag with value ``val``. :param TeamMergeRequestExpiredType val: :rtype: EventType """ return cls('team_merge_request_expired', val) @classmethod def team_merge_request_expired_shown_to_primary_team(cls, val): """ Create an instance of this class set to the ``team_merge_request_expired_shown_to_primary_team`` tag with value ``val``. :param TeamMergeRequestExpiredShownToPrimaryTeamType val: :rtype: EventType """ return cls('team_merge_request_expired_shown_to_primary_team', val) @classmethod def team_merge_request_expired_shown_to_secondary_team(cls, val): """ Create an instance of this class set to the ``team_merge_request_expired_shown_to_secondary_team`` tag with value ``val``. :param TeamMergeRequestExpiredShownToSecondaryTeamType val: :rtype: EventType """ return cls('team_merge_request_expired_shown_to_secondary_team', val) @classmethod def team_merge_request_rejected_shown_to_primary_team(cls, val): """ Create an instance of this class set to the ``team_merge_request_rejected_shown_to_primary_team`` tag with value ``val``. :param TeamMergeRequestRejectedShownToPrimaryTeamType val: :rtype: EventType """ return cls('team_merge_request_rejected_shown_to_primary_team', val) @classmethod def team_merge_request_rejected_shown_to_secondary_team(cls, val): """ Create an instance of this class set to the ``team_merge_request_rejected_shown_to_secondary_team`` tag with value ``val``. :param TeamMergeRequestRejectedShownToSecondaryTeamType val: :rtype: EventType """ return cls('team_merge_request_rejected_shown_to_secondary_team', val) @classmethod def team_merge_request_reminder(cls, val): """ Create an instance of this class set to the ``team_merge_request_reminder`` tag with value ``val``. :param TeamMergeRequestReminderType val: :rtype: EventType """ return cls('team_merge_request_reminder', val) @classmethod def team_merge_request_reminder_shown_to_primary_team(cls, val): """ Create an instance of this class set to the ``team_merge_request_reminder_shown_to_primary_team`` tag with value ``val``. :param TeamMergeRequestReminderShownToPrimaryTeamType val: :rtype: EventType """ return cls('team_merge_request_reminder_shown_to_primary_team', val) @classmethod def team_merge_request_reminder_shown_to_secondary_team(cls, val): """ Create an instance of this class set to the ``team_merge_request_reminder_shown_to_secondary_team`` tag with value ``val``. :param TeamMergeRequestReminderShownToSecondaryTeamType val: :rtype: EventType """ return cls('team_merge_request_reminder_shown_to_secondary_team', val) @classmethod def team_merge_request_revoked(cls, val): """ Create an instance of this class set to the ``team_merge_request_revoked`` tag with value ``val``. :param TeamMergeRequestRevokedType val: :rtype: EventType """ return cls('team_merge_request_revoked', val) @classmethod def team_merge_request_sent_shown_to_primary_team(cls, val): """ Create an instance of this class set to the ``team_merge_request_sent_shown_to_primary_team`` tag with value ``val``. :param TeamMergeRequestSentShownToPrimaryTeamType val: :rtype: EventType """ return cls('team_merge_request_sent_shown_to_primary_team', val) @classmethod def team_merge_request_sent_shown_to_secondary_team(cls, val): """ Create an instance of this class set to the ``team_merge_request_sent_shown_to_secondary_team`` tag with value ``val``. :param TeamMergeRequestSentShownToSecondaryTeamType val: :rtype: EventType """ return cls('team_merge_request_sent_shown_to_secondary_team', val) def is_admin_alerting_alert_state_changed(self): """ Check if the union tag is ``admin_alerting_alert_state_changed``. :rtype: bool """ return self._tag == 'admin_alerting_alert_state_changed' def is_admin_alerting_changed_alert_config(self): """ Check if the union tag is ``admin_alerting_changed_alert_config``. :rtype: bool """ return self._tag == 'admin_alerting_changed_alert_config' def is_admin_alerting_triggered_alert(self): """ Check if the union tag is ``admin_alerting_triggered_alert``. :rtype: bool """ return self._tag == 'admin_alerting_triggered_alert' def is_ransomware_restore_process_completed(self): """ Check if the union tag is ``ransomware_restore_process_completed``. :rtype: bool """ return self._tag == 'ransomware_restore_process_completed' def is_ransomware_restore_process_started(self): """ Check if the union tag is ``ransomware_restore_process_started``. :rtype: bool """ return self._tag == 'ransomware_restore_process_started' def is_app_blocked_by_permissions(self): """ Check if the union tag is ``app_blocked_by_permissions``. :rtype: bool """ return self._tag == 'app_blocked_by_permissions' def is_app_link_team(self): """ Check if the union tag is ``app_link_team``. :rtype: bool """ return self._tag == 'app_link_team' def is_app_link_user(self): """ Check if the union tag is ``app_link_user``. :rtype: bool """ return self._tag == 'app_link_user' def is_app_unlink_team(self): """ Check if the union tag is ``app_unlink_team``. :rtype: bool """ return self._tag == 'app_unlink_team' def is_app_unlink_user(self): """ Check if the union tag is ``app_unlink_user``. :rtype: bool """ return self._tag == 'app_unlink_user' def is_integration_connected(self): """ Check if the union tag is ``integration_connected``. :rtype: bool """ return self._tag == 'integration_connected' def is_integration_disconnected(self): """ Check if the union tag is ``integration_disconnected``. :rtype: bool """ return self._tag == 'integration_disconnected' def is_file_add_comment(self): """ Check if the union tag is ``file_add_comment``. :rtype: bool """ return self._tag == 'file_add_comment' def is_file_change_comment_subscription(self): """ Check if the union tag is ``file_change_comment_subscription``. :rtype: bool """ return self._tag == 'file_change_comment_subscription' def is_file_delete_comment(self): """ Check if the union tag is ``file_delete_comment``. :rtype: bool """ return self._tag == 'file_delete_comment' def is_file_edit_comment(self): """ Check if the union tag is ``file_edit_comment``. :rtype: bool """ return self._tag == 'file_edit_comment' def is_file_like_comment(self): """ Check if the union tag is ``file_like_comment``. :rtype: bool """ return self._tag == 'file_like_comment' def is_file_resolve_comment(self): """ Check if the union tag is ``file_resolve_comment``. :rtype: bool """ return self._tag == 'file_resolve_comment' def is_file_unlike_comment(self): """ Check if the union tag is ``file_unlike_comment``. :rtype: bool """ return self._tag == 'file_unlike_comment' def is_file_unresolve_comment(self): """ Check if the union tag is ``file_unresolve_comment``. :rtype: bool """ return self._tag == 'file_unresolve_comment' def is_governance_policy_add_folders(self): """ Check if the union tag is ``governance_policy_add_folders``. :rtype: bool """ return self._tag == 'governance_policy_add_folders' def is_governance_policy_add_folder_failed(self): """ Check if the union tag is ``governance_policy_add_folder_failed``. :rtype: bool """ return self._tag == 'governance_policy_add_folder_failed' def is_governance_policy_content_disposed(self): """ Check if the union tag is ``governance_policy_content_disposed``. :rtype: bool """ return self._tag == 'governance_policy_content_disposed' def is_governance_policy_create(self): """ Check if the union tag is ``governance_policy_create``. :rtype: bool """ return self._tag == 'governance_policy_create' def is_governance_policy_delete(self): """ Check if the union tag is ``governance_policy_delete``. :rtype: bool """ return self._tag == 'governance_policy_delete' def is_governance_policy_edit_details(self): """ Check if the union tag is ``governance_policy_edit_details``. :rtype: bool """ return self._tag == 'governance_policy_edit_details' def is_governance_policy_edit_duration(self): """ Check if the union tag is ``governance_policy_edit_duration``. :rtype: bool """ return self._tag == 'governance_policy_edit_duration' def is_governance_policy_export_created(self): """ Check if the union tag is ``governance_policy_export_created``. :rtype: bool """ return self._tag == 'governance_policy_export_created' def is_governance_policy_export_removed(self): """ Check if the union tag is ``governance_policy_export_removed``. :rtype: bool """ return self._tag == 'governance_policy_export_removed' def is_governance_policy_remove_folders(self): """ Check if the union tag is ``governance_policy_remove_folders``. :rtype: bool """ return self._tag == 'governance_policy_remove_folders' def is_governance_policy_report_created(self): """ Check if the union tag is ``governance_policy_report_created``. :rtype: bool """ return self._tag == 'governance_policy_report_created' def is_governance_policy_zip_part_downloaded(self): """ Check if the union tag is ``governance_policy_zip_part_downloaded``. :rtype: bool """ return self._tag == 'governance_policy_zip_part_downloaded' def is_legal_holds_activate_a_hold(self): """ Check if the union tag is ``legal_holds_activate_a_hold``. :rtype: bool """ return self._tag == 'legal_holds_activate_a_hold' def is_legal_holds_add_members(self): """ Check if the union tag is ``legal_holds_add_members``. :rtype: bool """ return self._tag == 'legal_holds_add_members' def is_legal_holds_change_hold_details(self): """ Check if the union tag is ``legal_holds_change_hold_details``. :rtype: bool """ return self._tag == 'legal_holds_change_hold_details' def is_legal_holds_change_hold_name(self): """ Check if the union tag is ``legal_holds_change_hold_name``. :rtype: bool """ return self._tag == 'legal_holds_change_hold_name' def is_legal_holds_export_a_hold(self): """ Check if the union tag is ``legal_holds_export_a_hold``. :rtype: bool """ return self._tag == 'legal_holds_export_a_hold' def is_legal_holds_export_cancelled(self): """ Check if the union tag is ``legal_holds_export_cancelled``. :rtype: bool """ return self._tag == 'legal_holds_export_cancelled' def is_legal_holds_export_downloaded(self): """ Check if the union tag is ``legal_holds_export_downloaded``. :rtype: bool """ return self._tag == 'legal_holds_export_downloaded' def is_legal_holds_export_removed(self): """ Check if the union tag is ``legal_holds_export_removed``. :rtype: bool """ return self._tag == 'legal_holds_export_removed' def is_legal_holds_release_a_hold(self): """ Check if the union tag is ``legal_holds_release_a_hold``. :rtype: bool """ return self._tag == 'legal_holds_release_a_hold' def is_legal_holds_remove_members(self): """ Check if the union tag is ``legal_holds_remove_members``. :rtype: bool """ return self._tag == 'legal_holds_remove_members' def is_legal_holds_report_a_hold(self): """ Check if the union tag is ``legal_holds_report_a_hold``. :rtype: bool """ return self._tag == 'legal_holds_report_a_hold' def is_device_change_ip_desktop(self): """ Check if the union tag is ``device_change_ip_desktop``. :rtype: bool """ return self._tag == 'device_change_ip_desktop' def is_device_change_ip_mobile(self): """ Check if the union tag is ``device_change_ip_mobile``. :rtype: bool """ return self._tag == 'device_change_ip_mobile' def is_device_change_ip_web(self): """ Check if the union tag is ``device_change_ip_web``. :rtype: bool """ return self._tag == 'device_change_ip_web' def is_device_delete_on_unlink_fail(self): """ Check if the union tag is ``device_delete_on_unlink_fail``. :rtype: bool """ return self._tag == 'device_delete_on_unlink_fail' def is_device_delete_on_unlink_success(self): """ Check if the union tag is ``device_delete_on_unlink_success``. :rtype: bool """ return self._tag == 'device_delete_on_unlink_success' def is_device_link_fail(self): """ Check if the union tag is ``device_link_fail``. :rtype: bool """ return self._tag == 'device_link_fail' def is_device_link_success(self): """ Check if the union tag is ``device_link_success``. :rtype: bool """ return self._tag == 'device_link_success' def is_device_management_disabled(self): """ Check if the union tag is ``device_management_disabled``. :rtype: bool """ return self._tag == 'device_management_disabled' def is_device_management_enabled(self): """ Check if the union tag is ``device_management_enabled``. :rtype: bool """ return self._tag == 'device_management_enabled' def is_device_sync_backup_status_changed(self): """ Check if the union tag is ``device_sync_backup_status_changed``. :rtype: bool """ return self._tag == 'device_sync_backup_status_changed' def is_device_unlink(self): """ Check if the union tag is ``device_unlink``. :rtype: bool """ return self._tag == 'device_unlink' def is_dropbox_passwords_exported(self): """ Check if the union tag is ``dropbox_passwords_exported``. :rtype: bool """ return self._tag == 'dropbox_passwords_exported' def is_dropbox_passwords_new_device_enrolled(self): """ Check if the union tag is ``dropbox_passwords_new_device_enrolled``. :rtype: bool """ return self._tag == 'dropbox_passwords_new_device_enrolled' def is_emm_refresh_auth_token(self): """ Check if the union tag is ``emm_refresh_auth_token``. :rtype: bool """ return self._tag == 'emm_refresh_auth_token' def is_external_drive_backup_eligibility_status_checked(self): """ Check if the union tag is ``external_drive_backup_eligibility_status_checked``. :rtype: bool """ return self._tag == 'external_drive_backup_eligibility_status_checked' def is_external_drive_backup_status_changed(self): """ Check if the union tag is ``external_drive_backup_status_changed``. :rtype: bool """ return self._tag == 'external_drive_backup_status_changed' def is_account_capture_change_availability(self): """ Check if the union tag is ``account_capture_change_availability``. :rtype: bool """ return self._tag == 'account_capture_change_availability' def is_account_capture_migrate_account(self): """ Check if the union tag is ``account_capture_migrate_account``. :rtype: bool """ return self._tag == 'account_capture_migrate_account' def is_account_capture_notification_emails_sent(self): """ Check if the union tag is ``account_capture_notification_emails_sent``. :rtype: bool """ return self._tag == 'account_capture_notification_emails_sent' def is_account_capture_relinquish_account(self): """ Check if the union tag is ``account_capture_relinquish_account``. :rtype: bool """ return self._tag == 'account_capture_relinquish_account' def is_disabled_domain_invites(self): """ Check if the union tag is ``disabled_domain_invites``. :rtype: bool """ return self._tag == 'disabled_domain_invites' def is_domain_invites_approve_request_to_join_team(self): """ Check if the union tag is ``domain_invites_approve_request_to_join_team``. :rtype: bool """ return self._tag == 'domain_invites_approve_request_to_join_team' def is_domain_invites_decline_request_to_join_team(self): """ Check if the union tag is ``domain_invites_decline_request_to_join_team``. :rtype: bool """ return self._tag == 'domain_invites_decline_request_to_join_team' def is_domain_invites_email_existing_users(self): """ Check if the union tag is ``domain_invites_email_existing_users``. :rtype: bool """ return self._tag == 'domain_invites_email_existing_users' def is_domain_invites_request_to_join_team(self): """ Check if the union tag is ``domain_invites_request_to_join_team``. :rtype: bool """ return self._tag == 'domain_invites_request_to_join_team' def is_domain_invites_set_invite_new_user_pref_to_no(self): """ Check if the union tag is ``domain_invites_set_invite_new_user_pref_to_no``. :rtype: bool """ return self._tag == 'domain_invites_set_invite_new_user_pref_to_no' def is_domain_invites_set_invite_new_user_pref_to_yes(self): """ Check if the union tag is ``domain_invites_set_invite_new_user_pref_to_yes``. :rtype: bool """ return self._tag == 'domain_invites_set_invite_new_user_pref_to_yes' def is_domain_verification_add_domain_fail(self): """ Check if the union tag is ``domain_verification_add_domain_fail``. :rtype: bool """ return self._tag == 'domain_verification_add_domain_fail' def is_domain_verification_add_domain_success(self): """ Check if the union tag is ``domain_verification_add_domain_success``. :rtype: bool """ return self._tag == 'domain_verification_add_domain_success' def is_domain_verification_remove_domain(self): """ Check if the union tag is ``domain_verification_remove_domain``. :rtype: bool """ return self._tag == 'domain_verification_remove_domain' def is_enabled_domain_invites(self): """ Check if the union tag is ``enabled_domain_invites``. :rtype: bool """ return self._tag == 'enabled_domain_invites' def is_team_encryption_key_cancel_key_deletion(self): """ Check if the union tag is ``team_encryption_key_cancel_key_deletion``. :rtype: bool """ return self._tag == 'team_encryption_key_cancel_key_deletion' def is_team_encryption_key_create_key(self): """ Check if the union tag is ``team_encryption_key_create_key``. :rtype: bool """ return self._tag == 'team_encryption_key_create_key' def is_team_encryption_key_delete_key(self): """ Check if the union tag is ``team_encryption_key_delete_key``. :rtype: bool """ return self._tag == 'team_encryption_key_delete_key' def is_team_encryption_key_disable_key(self): """ Check if the union tag is ``team_encryption_key_disable_key``. :rtype: bool """ return self._tag == 'team_encryption_key_disable_key' def is_team_encryption_key_enable_key(self): """ Check if the union tag is ``team_encryption_key_enable_key``. :rtype: bool """ return self._tag == 'team_encryption_key_enable_key' def is_team_encryption_key_rotate_key(self): """ Check if the union tag is ``team_encryption_key_rotate_key``. :rtype: bool """ return self._tag == 'team_encryption_key_rotate_key' def is_team_encryption_key_schedule_key_deletion(self): """ Check if the union tag is ``team_encryption_key_schedule_key_deletion``. :rtype: bool """ return self._tag == 'team_encryption_key_schedule_key_deletion' def is_apply_naming_convention(self): """ Check if the union tag is ``apply_naming_convention``. :rtype: bool """ return self._tag == 'apply_naming_convention' def is_create_folder(self): """ Check if the union tag is ``create_folder``. :rtype: bool """ return self._tag == 'create_folder' def is_file_add(self): """ Check if the union tag is ``file_add``. :rtype: bool """ return self._tag == 'file_add' def is_file_add_from_automation(self): """ Check if the union tag is ``file_add_from_automation``. :rtype: bool """ return self._tag == 'file_add_from_automation' def is_file_copy(self): """ Check if the union tag is ``file_copy``. :rtype: bool """ return self._tag == 'file_copy' def is_file_delete(self): """ Check if the union tag is ``file_delete``. :rtype: bool """ return self._tag == 'file_delete' def is_file_download(self): """ Check if the union tag is ``file_download``. :rtype: bool """ return self._tag == 'file_download' def is_file_edit(self): """ Check if the union tag is ``file_edit``. :rtype: bool """ return self._tag == 'file_edit' def is_file_get_copy_reference(self): """ Check if the union tag is ``file_get_copy_reference``. :rtype: bool """ return self._tag == 'file_get_copy_reference' def is_file_locking_lock_status_changed(self): """ Check if the union tag is ``file_locking_lock_status_changed``. :rtype: bool """ return self._tag == 'file_locking_lock_status_changed' def is_file_move(self): """ Check if the union tag is ``file_move``. :rtype: bool """ return self._tag == 'file_move' def is_file_permanently_delete(self): """ Check if the union tag is ``file_permanently_delete``. :rtype: bool """ return self._tag == 'file_permanently_delete' def is_file_preview(self): """ Check if the union tag is ``file_preview``. :rtype: bool """ return self._tag == 'file_preview' def is_file_rename(self): """ Check if the union tag is ``file_rename``. :rtype: bool """ return self._tag == 'file_rename' def is_file_restore(self): """ Check if the union tag is ``file_restore``. :rtype: bool """ return self._tag == 'file_restore' def is_file_revert(self): """ Check if the union tag is ``file_revert``. :rtype: bool """ return self._tag == 'file_revert' def is_file_rollback_changes(self): """ Check if the union tag is ``file_rollback_changes``. :rtype: bool """ return self._tag == 'file_rollback_changes' def is_file_save_copy_reference(self): """ Check if the union tag is ``file_save_copy_reference``. :rtype: bool """ return self._tag == 'file_save_copy_reference' def is_folder_overview_description_changed(self): """ Check if the union tag is ``folder_overview_description_changed``. :rtype: bool """ return self._tag == 'folder_overview_description_changed' def is_folder_overview_item_pinned(self): """ Check if the union tag is ``folder_overview_item_pinned``. :rtype: bool """ return self._tag == 'folder_overview_item_pinned' def is_folder_overview_item_unpinned(self): """ Check if the union tag is ``folder_overview_item_unpinned``. :rtype: bool """ return self._tag == 'folder_overview_item_unpinned' def is_object_label_added(self): """ Check if the union tag is ``object_label_added``. :rtype: bool """ return self._tag == 'object_label_added' def is_object_label_removed(self): """ Check if the union tag is ``object_label_removed``. :rtype: bool """ return self._tag == 'object_label_removed' def is_object_label_updated_value(self): """ Check if the union tag is ``object_label_updated_value``. :rtype: bool """ return self._tag == 'object_label_updated_value' def is_organize_folder_with_tidy(self): """ Check if the union tag is ``organize_folder_with_tidy``. :rtype: bool """ return self._tag == 'organize_folder_with_tidy' def is_replay_file_delete(self): """ Check if the union tag is ``replay_file_delete``. :rtype: bool """ return self._tag == 'replay_file_delete' def is_rewind_folder(self): """ Check if the union tag is ``rewind_folder``. :rtype: bool """ return self._tag == 'rewind_folder' def is_undo_naming_convention(self): """ Check if the union tag is ``undo_naming_convention``. :rtype: bool """ return self._tag == 'undo_naming_convention' def is_undo_organize_folder_with_tidy(self): """ Check if the union tag is ``undo_organize_folder_with_tidy``. :rtype: bool """ return self._tag == 'undo_organize_folder_with_tidy' def is_user_tags_added(self): """ Check if the union tag is ``user_tags_added``. :rtype: bool """ return self._tag == 'user_tags_added' def is_user_tags_removed(self): """ Check if the union tag is ``user_tags_removed``. :rtype: bool """ return self._tag == 'user_tags_removed' def is_email_ingest_receive_file(self): """ Check if the union tag is ``email_ingest_receive_file``. :rtype: bool """ return self._tag == 'email_ingest_receive_file' def is_file_request_change(self): """ Check if the union tag is ``file_request_change``. :rtype: bool """ return self._tag == 'file_request_change' def is_file_request_close(self): """ Check if the union tag is ``file_request_close``. :rtype: bool """ return self._tag == 'file_request_close' def is_file_request_create(self): """ Check if the union tag is ``file_request_create``. :rtype: bool """ return self._tag == 'file_request_create' def is_file_request_delete(self): """ Check if the union tag is ``file_request_delete``. :rtype: bool """ return self._tag == 'file_request_delete' def is_file_request_receive_file(self): """ Check if the union tag is ``file_request_receive_file``. :rtype: bool """ return self._tag == 'file_request_receive_file' def is_group_add_external_id(self): """ Check if the union tag is ``group_add_external_id``. :rtype: bool """ return self._tag == 'group_add_external_id' def is_group_add_member(self): """ Check if the union tag is ``group_add_member``. :rtype: bool """ return self._tag == 'group_add_member' def is_group_change_external_id(self): """ Check if the union tag is ``group_change_external_id``. :rtype: bool """ return self._tag == 'group_change_external_id' def is_group_change_management_type(self): """ Check if the union tag is ``group_change_management_type``. :rtype: bool """ return self._tag == 'group_change_management_type' def is_group_change_member_role(self): """ Check if the union tag is ``group_change_member_role``. :rtype: bool """ return self._tag == 'group_change_member_role' def is_group_create(self): """ Check if the union tag is ``group_create``. :rtype: bool """ return self._tag == 'group_create' def is_group_delete(self): """ Check if the union tag is ``group_delete``. :rtype: bool """ return self._tag == 'group_delete' def is_group_description_updated(self): """ Check if the union tag is ``group_description_updated``. :rtype: bool """ return self._tag == 'group_description_updated' def is_group_join_policy_updated(self): """ Check if the union tag is ``group_join_policy_updated``. :rtype: bool """ return self._tag == 'group_join_policy_updated' def is_group_moved(self): """ Check if the union tag is ``group_moved``. :rtype: bool """ return self._tag == 'group_moved' def is_group_remove_external_id(self): """ Check if the union tag is ``group_remove_external_id``. :rtype: bool """ return self._tag == 'group_remove_external_id' def is_group_remove_member(self): """ Check if the union tag is ``group_remove_member``. :rtype: bool """ return self._tag == 'group_remove_member' def is_group_rename(self): """ Check if the union tag is ``group_rename``. :rtype: bool """ return self._tag == 'group_rename' def is_account_lock_or_unlocked(self): """ Check if the union tag is ``account_lock_or_unlocked``. :rtype: bool """ return self._tag == 'account_lock_or_unlocked' def is_emm_error(self): """ Check if the union tag is ``emm_error``. :rtype: bool """ return self._tag == 'emm_error' def is_guest_admin_signed_in_via_trusted_teams(self): """ Check if the union tag is ``guest_admin_signed_in_via_trusted_teams``. :rtype: bool """ return self._tag == 'guest_admin_signed_in_via_trusted_teams' def is_guest_admin_signed_out_via_trusted_teams(self): """ Check if the union tag is ``guest_admin_signed_out_via_trusted_teams``. :rtype: bool """ return self._tag == 'guest_admin_signed_out_via_trusted_teams' def is_login_fail(self): """ Check if the union tag is ``login_fail``. :rtype: bool """ return self._tag == 'login_fail' def is_login_success(self): """ Check if the union tag is ``login_success``. :rtype: bool """ return self._tag == 'login_success' def is_logout(self): """ Check if the union tag is ``logout``. :rtype: bool """ return self._tag == 'logout' def is_reseller_support_session_end(self): """ Check if the union tag is ``reseller_support_session_end``. :rtype: bool """ return self._tag == 'reseller_support_session_end' def is_reseller_support_session_start(self): """ Check if the union tag is ``reseller_support_session_start``. :rtype: bool """ return self._tag == 'reseller_support_session_start' def is_sign_in_as_session_end(self): """ Check if the union tag is ``sign_in_as_session_end``. :rtype: bool """ return self._tag == 'sign_in_as_session_end' def is_sign_in_as_session_start(self): """ Check if the union tag is ``sign_in_as_session_start``. :rtype: bool """ return self._tag == 'sign_in_as_session_start' def is_sso_error(self): """ Check if the union tag is ``sso_error``. :rtype: bool """ return self._tag == 'sso_error' def is_backup_admin_invitation_sent(self): """ Check if the union tag is ``backup_admin_invitation_sent``. :rtype: bool """ return self._tag == 'backup_admin_invitation_sent' def is_backup_invitation_opened(self): """ Check if the union tag is ``backup_invitation_opened``. :rtype: bool """ return self._tag == 'backup_invitation_opened' def is_create_team_invite_link(self): """ Check if the union tag is ``create_team_invite_link``. :rtype: bool """ return self._tag == 'create_team_invite_link' def is_delete_team_invite_link(self): """ Check if the union tag is ``delete_team_invite_link``. :rtype: bool """ return self._tag == 'delete_team_invite_link' def is_member_add_external_id(self): """ Check if the union tag is ``member_add_external_id``. :rtype: bool """ return self._tag == 'member_add_external_id' def is_member_add_name(self): """ Check if the union tag is ``member_add_name``. :rtype: bool """ return self._tag == 'member_add_name' def is_member_change_admin_role(self): """ Check if the union tag is ``member_change_admin_role``. :rtype: bool """ return self._tag == 'member_change_admin_role' def is_member_change_email(self): """ Check if the union tag is ``member_change_email``. :rtype: bool """ return self._tag == 'member_change_email' def is_member_change_external_id(self): """ Check if the union tag is ``member_change_external_id``. :rtype: bool """ return self._tag == 'member_change_external_id' def is_member_change_membership_type(self): """ Check if the union tag is ``member_change_membership_type``. :rtype: bool """ return self._tag == 'member_change_membership_type' def is_member_change_name(self): """ Check if the union tag is ``member_change_name``. :rtype: bool """ return self._tag == 'member_change_name' def is_member_change_reseller_role(self): """ Check if the union tag is ``member_change_reseller_role``. :rtype: bool """ return self._tag == 'member_change_reseller_role' def is_member_change_status(self): """ Check if the union tag is ``member_change_status``. :rtype: bool """ return self._tag == 'member_change_status' def is_member_delete_manual_contacts(self): """ Check if the union tag is ``member_delete_manual_contacts``. :rtype: bool """ return self._tag == 'member_delete_manual_contacts' def is_member_delete_profile_photo(self): """ Check if the union tag is ``member_delete_profile_photo``. :rtype: bool """ return self._tag == 'member_delete_profile_photo' def is_member_permanently_delete_account_contents(self): """ Check if the union tag is ``member_permanently_delete_account_contents``. :rtype: bool """ return self._tag == 'member_permanently_delete_account_contents' def is_member_remove_external_id(self): """ Check if the union tag is ``member_remove_external_id``. :rtype: bool """ return self._tag == 'member_remove_external_id' def is_member_set_profile_photo(self): """ Check if the union tag is ``member_set_profile_photo``. :rtype: bool """ return self._tag == 'member_set_profile_photo' def is_member_space_limits_add_custom_quota(self): """ Check if the union tag is ``member_space_limits_add_custom_quota``. :rtype: bool """ return self._tag == 'member_space_limits_add_custom_quota' def is_member_space_limits_change_custom_quota(self): """ Check if the union tag is ``member_space_limits_change_custom_quota``. :rtype: bool """ return self._tag == 'member_space_limits_change_custom_quota' def is_member_space_limits_change_status(self): """ Check if the union tag is ``member_space_limits_change_status``. :rtype: bool """ return self._tag == 'member_space_limits_change_status' def is_member_space_limits_remove_custom_quota(self): """ Check if the union tag is ``member_space_limits_remove_custom_quota``. :rtype: bool """ return self._tag == 'member_space_limits_remove_custom_quota' def is_member_suggest(self): """ Check if the union tag is ``member_suggest``. :rtype: bool """ return self._tag == 'member_suggest' def is_member_transfer_account_contents(self): """ Check if the union tag is ``member_transfer_account_contents``. :rtype: bool """ return self._tag == 'member_transfer_account_contents' def is_pending_secondary_email_added(self): """ Check if the union tag is ``pending_secondary_email_added``. :rtype: bool """ return self._tag == 'pending_secondary_email_added' def is_secondary_email_deleted(self): """ Check if the union tag is ``secondary_email_deleted``. :rtype: bool """ return self._tag == 'secondary_email_deleted' def is_secondary_email_verified(self): """ Check if the union tag is ``secondary_email_verified``. :rtype: bool """ return self._tag == 'secondary_email_verified' def is_secondary_mails_policy_changed(self): """ Check if the union tag is ``secondary_mails_policy_changed``. :rtype: bool """ return self._tag == 'secondary_mails_policy_changed' def is_binder_add_page(self): """ Check if the union tag is ``binder_add_page``. :rtype: bool """ return self._tag == 'binder_add_page' def is_binder_add_section(self): """ Check if the union tag is ``binder_add_section``. :rtype: bool """ return self._tag == 'binder_add_section' def is_binder_remove_page(self): """ Check if the union tag is ``binder_remove_page``. :rtype: bool """ return self._tag == 'binder_remove_page' def is_binder_remove_section(self): """ Check if the union tag is ``binder_remove_section``. :rtype: bool """ return self._tag == 'binder_remove_section' def is_binder_rename_page(self): """ Check if the union tag is ``binder_rename_page``. :rtype: bool """ return self._tag == 'binder_rename_page' def is_binder_rename_section(self): """ Check if the union tag is ``binder_rename_section``. :rtype: bool """ return self._tag == 'binder_rename_section' def is_binder_reorder_page(self): """ Check if the union tag is ``binder_reorder_page``. :rtype: bool """ return self._tag == 'binder_reorder_page' def is_binder_reorder_section(self): """ Check if the union tag is ``binder_reorder_section``. :rtype: bool """ return self._tag == 'binder_reorder_section' def is_paper_content_add_member(self): """ Check if the union tag is ``paper_content_add_member``. :rtype: bool """ return self._tag == 'paper_content_add_member' def is_paper_content_add_to_folder(self): """ Check if the union tag is ``paper_content_add_to_folder``. :rtype: bool """ return self._tag == 'paper_content_add_to_folder' def is_paper_content_archive(self): """ Check if the union tag is ``paper_content_archive``. :rtype: bool """ return self._tag == 'paper_content_archive' def is_paper_content_create(self): """ Check if the union tag is ``paper_content_create``. :rtype: bool """ return self._tag == 'paper_content_create' def is_paper_content_permanently_delete(self): """ Check if the union tag is ``paper_content_permanently_delete``. :rtype: bool """ return self._tag == 'paper_content_permanently_delete' def is_paper_content_remove_from_folder(self): """ Check if the union tag is ``paper_content_remove_from_folder``. :rtype: bool """ return self._tag == 'paper_content_remove_from_folder' def is_paper_content_remove_member(self): """ Check if the union tag is ``paper_content_remove_member``. :rtype: bool """ return self._tag == 'paper_content_remove_member' def is_paper_content_rename(self): """ Check if the union tag is ``paper_content_rename``. :rtype: bool """ return self._tag == 'paper_content_rename' def is_paper_content_restore(self): """ Check if the union tag is ``paper_content_restore``. :rtype: bool """ return self._tag == 'paper_content_restore' def is_paper_doc_add_comment(self): """ Check if the union tag is ``paper_doc_add_comment``. :rtype: bool """ return self._tag == 'paper_doc_add_comment' def is_paper_doc_change_member_role(self): """ Check if the union tag is ``paper_doc_change_member_role``. :rtype: bool """ return self._tag == 'paper_doc_change_member_role' def is_paper_doc_change_sharing_policy(self): """ Check if the union tag is ``paper_doc_change_sharing_policy``. :rtype: bool """ return self._tag == 'paper_doc_change_sharing_policy' def is_paper_doc_change_subscription(self): """ Check if the union tag is ``paper_doc_change_subscription``. :rtype: bool """ return self._tag == 'paper_doc_change_subscription' def is_paper_doc_deleted(self): """ Check if the union tag is ``paper_doc_deleted``. :rtype: bool """ return self._tag == 'paper_doc_deleted' def is_paper_doc_delete_comment(self): """ Check if the union tag is ``paper_doc_delete_comment``. :rtype: bool """ return self._tag == 'paper_doc_delete_comment' def is_paper_doc_download(self): """ Check if the union tag is ``paper_doc_download``. :rtype: bool """ return self._tag == 'paper_doc_download' def is_paper_doc_edit(self): """ Check if the union tag is ``paper_doc_edit``. :rtype: bool """ return self._tag == 'paper_doc_edit' def is_paper_doc_edit_comment(self): """ Check if the union tag is ``paper_doc_edit_comment``. :rtype: bool """ return self._tag == 'paper_doc_edit_comment' def is_paper_doc_followed(self): """ Check if the union tag is ``paper_doc_followed``. :rtype: bool """ return self._tag == 'paper_doc_followed' def is_paper_doc_mention(self): """ Check if the union tag is ``paper_doc_mention``. :rtype: bool """ return self._tag == 'paper_doc_mention' def is_paper_doc_ownership_changed(self): """ Check if the union tag is ``paper_doc_ownership_changed``. :rtype: bool """ return self._tag == 'paper_doc_ownership_changed' def is_paper_doc_request_access(self): """ Check if the union tag is ``paper_doc_request_access``. :rtype: bool """ return self._tag == 'paper_doc_request_access' def is_paper_doc_resolve_comment(self): """ Check if the union tag is ``paper_doc_resolve_comment``. :rtype: bool """ return self._tag == 'paper_doc_resolve_comment' def is_paper_doc_revert(self): """ Check if the union tag is ``paper_doc_revert``. :rtype: bool """ return self._tag == 'paper_doc_revert' def is_paper_doc_slack_share(self): """ Check if the union tag is ``paper_doc_slack_share``. :rtype: bool """ return self._tag == 'paper_doc_slack_share' def is_paper_doc_team_invite(self): """ Check if the union tag is ``paper_doc_team_invite``. :rtype: bool """ return self._tag == 'paper_doc_team_invite' def is_paper_doc_trashed(self): """ Check if the union tag is ``paper_doc_trashed``. :rtype: bool """ return self._tag == 'paper_doc_trashed' def is_paper_doc_unresolve_comment(self): """ Check if the union tag is ``paper_doc_unresolve_comment``. :rtype: bool """ return self._tag == 'paper_doc_unresolve_comment' def is_paper_doc_untrashed(self): """ Check if the union tag is ``paper_doc_untrashed``. :rtype: bool """ return self._tag == 'paper_doc_untrashed' def is_paper_doc_view(self): """ Check if the union tag is ``paper_doc_view``. :rtype: bool """ return self._tag == 'paper_doc_view' def is_paper_external_view_allow(self): """ Check if the union tag is ``paper_external_view_allow``. :rtype: bool """ return self._tag == 'paper_external_view_allow' def is_paper_external_view_default_team(self): """ Check if the union tag is ``paper_external_view_default_team``. :rtype: bool """ return self._tag == 'paper_external_view_default_team' def is_paper_external_view_forbid(self): """ Check if the union tag is ``paper_external_view_forbid``. :rtype: bool """ return self._tag == 'paper_external_view_forbid' def is_paper_folder_change_subscription(self): """ Check if the union tag is ``paper_folder_change_subscription``. :rtype: bool """ return self._tag == 'paper_folder_change_subscription' def is_paper_folder_deleted(self): """ Check if the union tag is ``paper_folder_deleted``. :rtype: bool """ return self._tag == 'paper_folder_deleted' def is_paper_folder_followed(self): """ Check if the union tag is ``paper_folder_followed``. :rtype: bool """ return self._tag == 'paper_folder_followed' def is_paper_folder_team_invite(self): """ Check if the union tag is ``paper_folder_team_invite``. :rtype: bool """ return self._tag == 'paper_folder_team_invite' def is_paper_published_link_change_permission(self): """ Check if the union tag is ``paper_published_link_change_permission``. :rtype: bool """ return self._tag == 'paper_published_link_change_permission' def is_paper_published_link_create(self): """ Check if the union tag is ``paper_published_link_create``. :rtype: bool """ return self._tag == 'paper_published_link_create' def is_paper_published_link_disabled(self): """ Check if the union tag is ``paper_published_link_disabled``. :rtype: bool """ return self._tag == 'paper_published_link_disabled' def is_paper_published_link_view(self): """ Check if the union tag is ``paper_published_link_view``. :rtype: bool """ return self._tag == 'paper_published_link_view' def is_password_change(self): """ Check if the union tag is ``password_change``. :rtype: bool """ return self._tag == 'password_change' def is_password_reset(self): """ Check if the union tag is ``password_reset``. :rtype: bool """ return self._tag == 'password_reset' def is_password_reset_all(self): """ Check if the union tag is ``password_reset_all``. :rtype: bool """ return self._tag == 'password_reset_all' def is_classification_create_report(self): """ Check if the union tag is ``classification_create_report``. :rtype: bool """ return self._tag == 'classification_create_report' def is_classification_create_report_fail(self): """ Check if the union tag is ``classification_create_report_fail``. :rtype: bool """ return self._tag == 'classification_create_report_fail' def is_emm_create_exceptions_report(self): """ Check if the union tag is ``emm_create_exceptions_report``. :rtype: bool """ return self._tag == 'emm_create_exceptions_report' def is_emm_create_usage_report(self): """ Check if the union tag is ``emm_create_usage_report``. :rtype: bool """ return self._tag == 'emm_create_usage_report' def is_export_members_report(self): """ Check if the union tag is ``export_members_report``. :rtype: bool """ return self._tag == 'export_members_report' def is_export_members_report_fail(self): """ Check if the union tag is ``export_members_report_fail``. :rtype: bool """ return self._tag == 'export_members_report_fail' def is_external_sharing_create_report(self): """ Check if the union tag is ``external_sharing_create_report``. :rtype: bool """ return self._tag == 'external_sharing_create_report' def is_external_sharing_report_failed(self): """ Check if the union tag is ``external_sharing_report_failed``. :rtype: bool """ return self._tag == 'external_sharing_report_failed' def is_no_expiration_link_gen_create_report(self): """ Check if the union tag is ``no_expiration_link_gen_create_report``. :rtype: bool """ return self._tag == 'no_expiration_link_gen_create_report' def is_no_expiration_link_gen_report_failed(self): """ Check if the union tag is ``no_expiration_link_gen_report_failed``. :rtype: bool """ return self._tag == 'no_expiration_link_gen_report_failed' def is_no_password_link_gen_create_report(self): """ Check if the union tag is ``no_password_link_gen_create_report``. :rtype: bool """ return self._tag == 'no_password_link_gen_create_report' def is_no_password_link_gen_report_failed(self): """ Check if the union tag is ``no_password_link_gen_report_failed``. :rtype: bool """ return self._tag == 'no_password_link_gen_report_failed' def is_no_password_link_view_create_report(self): """ Check if the union tag is ``no_password_link_view_create_report``. :rtype: bool """ return self._tag == 'no_password_link_view_create_report' def is_no_password_link_view_report_failed(self): """ Check if the union tag is ``no_password_link_view_report_failed``. :rtype: bool """ return self._tag == 'no_password_link_view_report_failed' def is_outdated_link_view_create_report(self): """ Check if the union tag is ``outdated_link_view_create_report``. :rtype: bool """ return self._tag == 'outdated_link_view_create_report' def is_outdated_link_view_report_failed(self): """ Check if the union tag is ``outdated_link_view_report_failed``. :rtype: bool """ return self._tag == 'outdated_link_view_report_failed' def is_paper_admin_export_start(self): """ Check if the union tag is ``paper_admin_export_start``. :rtype: bool """ return self._tag == 'paper_admin_export_start' def is_ransomware_alert_create_report(self): """ Check if the union tag is ``ransomware_alert_create_report``. :rtype: bool """ return self._tag == 'ransomware_alert_create_report' def is_ransomware_alert_create_report_failed(self): """ Check if the union tag is ``ransomware_alert_create_report_failed``. :rtype: bool """ return self._tag == 'ransomware_alert_create_report_failed' def is_smart_sync_create_admin_privilege_report(self): """ Check if the union tag is ``smart_sync_create_admin_privilege_report``. :rtype: bool """ return self._tag == 'smart_sync_create_admin_privilege_report' def is_team_activity_create_report(self): """ Check if the union tag is ``team_activity_create_report``. :rtype: bool """ return self._tag == 'team_activity_create_report' def is_team_activity_create_report_fail(self): """ Check if the union tag is ``team_activity_create_report_fail``. :rtype: bool """ return self._tag == 'team_activity_create_report_fail' def is_collection_share(self): """ Check if the union tag is ``collection_share``. :rtype: bool """ return self._tag == 'collection_share' def is_file_transfers_file_add(self): """ Check if the union tag is ``file_transfers_file_add``. :rtype: bool """ return self._tag == 'file_transfers_file_add' def is_file_transfers_transfer_delete(self): """ Check if the union tag is ``file_transfers_transfer_delete``. :rtype: bool """ return self._tag == 'file_transfers_transfer_delete' def is_file_transfers_transfer_download(self): """ Check if the union tag is ``file_transfers_transfer_download``. :rtype: bool """ return self._tag == 'file_transfers_transfer_download' def is_file_transfers_transfer_send(self): """ Check if the union tag is ``file_transfers_transfer_send``. :rtype: bool """ return self._tag == 'file_transfers_transfer_send' def is_file_transfers_transfer_view(self): """ Check if the union tag is ``file_transfers_transfer_view``. :rtype: bool """ return self._tag == 'file_transfers_transfer_view' def is_note_acl_invite_only(self): """ Check if the union tag is ``note_acl_invite_only``. :rtype: bool """ return self._tag == 'note_acl_invite_only' def is_note_acl_link(self): """ Check if the union tag is ``note_acl_link``. :rtype: bool """ return self._tag == 'note_acl_link' def is_note_acl_team_link(self): """ Check if the union tag is ``note_acl_team_link``. :rtype: bool """ return self._tag == 'note_acl_team_link' def is_note_shared(self): """ Check if the union tag is ``note_shared``. :rtype: bool """ return self._tag == 'note_shared' def is_note_share_receive(self): """ Check if the union tag is ``note_share_receive``. :rtype: bool """ return self._tag == 'note_share_receive' def is_open_note_shared(self): """ Check if the union tag is ``open_note_shared``. :rtype: bool """ return self._tag == 'open_note_shared' def is_replay_file_shared_link_created(self): """ Check if the union tag is ``replay_file_shared_link_created``. :rtype: bool """ return self._tag == 'replay_file_shared_link_created' def is_replay_file_shared_link_modified(self): """ Check if the union tag is ``replay_file_shared_link_modified``. :rtype: bool """ return self._tag == 'replay_file_shared_link_modified' def is_replay_project_team_add(self): """ Check if the union tag is ``replay_project_team_add``. :rtype: bool """ return self._tag == 'replay_project_team_add' def is_replay_project_team_delete(self): """ Check if the union tag is ``replay_project_team_delete``. :rtype: bool """ return self._tag == 'replay_project_team_delete' def is_sf_add_group(self): """ Check if the union tag is ``sf_add_group``. :rtype: bool """ return self._tag == 'sf_add_group' def is_sf_allow_non_members_to_view_shared_links(self): """ Check if the union tag is ``sf_allow_non_members_to_view_shared_links``. :rtype: bool """ return self._tag == 'sf_allow_non_members_to_view_shared_links' def is_sf_external_invite_warn(self): """ Check if the union tag is ``sf_external_invite_warn``. :rtype: bool """ return self._tag == 'sf_external_invite_warn' def is_sf_fb_invite(self): """ Check if the union tag is ``sf_fb_invite``. :rtype: bool """ return self._tag == 'sf_fb_invite' def is_sf_fb_invite_change_role(self): """ Check if the union tag is ``sf_fb_invite_change_role``. :rtype: bool """ return self._tag == 'sf_fb_invite_change_role' def is_sf_fb_uninvite(self): """ Check if the union tag is ``sf_fb_uninvite``. :rtype: bool """ return self._tag == 'sf_fb_uninvite' def is_sf_invite_group(self): """ Check if the union tag is ``sf_invite_group``. :rtype: bool """ return self._tag == 'sf_invite_group' def is_sf_team_grant_access(self): """ Check if the union tag is ``sf_team_grant_access``. :rtype: bool """ return self._tag == 'sf_team_grant_access' def is_sf_team_invite(self): """ Check if the union tag is ``sf_team_invite``. :rtype: bool """ return self._tag == 'sf_team_invite' def is_sf_team_invite_change_role(self): """ Check if the union tag is ``sf_team_invite_change_role``. :rtype: bool """ return self._tag == 'sf_team_invite_change_role' def is_sf_team_join(self): """ Check if the union tag is ``sf_team_join``. :rtype: bool """ return self._tag == 'sf_team_join' def is_sf_team_join_from_oob_link(self): """ Check if the union tag is ``sf_team_join_from_oob_link``. :rtype: bool """ return self._tag == 'sf_team_join_from_oob_link' def is_sf_team_uninvite(self): """ Check if the union tag is ``sf_team_uninvite``. :rtype: bool """ return self._tag == 'sf_team_uninvite' def is_shared_content_add_invitees(self): """ Check if the union tag is ``shared_content_add_invitees``. :rtype: bool """ return self._tag == 'shared_content_add_invitees' def is_shared_content_add_link_expiry(self): """ Check if the union tag is ``shared_content_add_link_expiry``. :rtype: bool """ return self._tag == 'shared_content_add_link_expiry' def is_shared_content_add_link_password(self): """ Check if the union tag is ``shared_content_add_link_password``. :rtype: bool """ return self._tag == 'shared_content_add_link_password' def is_shared_content_add_member(self): """ Check if the union tag is ``shared_content_add_member``. :rtype: bool """ return self._tag == 'shared_content_add_member' def is_shared_content_change_downloads_policy(self): """ Check if the union tag is ``shared_content_change_downloads_policy``. :rtype: bool """ return self._tag == 'shared_content_change_downloads_policy' def is_shared_content_change_invitee_role(self): """ Check if the union tag is ``shared_content_change_invitee_role``. :rtype: bool """ return self._tag == 'shared_content_change_invitee_role' def is_shared_content_change_link_audience(self): """ Check if the union tag is ``shared_content_change_link_audience``. :rtype: bool """ return self._tag == 'shared_content_change_link_audience' def is_shared_content_change_link_expiry(self): """ Check if the union tag is ``shared_content_change_link_expiry``. :rtype: bool """ return self._tag == 'shared_content_change_link_expiry' def is_shared_content_change_link_password(self): """ Check if the union tag is ``shared_content_change_link_password``. :rtype: bool """ return self._tag == 'shared_content_change_link_password' def is_shared_content_change_member_role(self): """ Check if the union tag is ``shared_content_change_member_role``. :rtype: bool """ return self._tag == 'shared_content_change_member_role' def is_shared_content_change_viewer_info_policy(self): """ Check if the union tag is ``shared_content_change_viewer_info_policy``. :rtype: bool """ return self._tag == 'shared_content_change_viewer_info_policy' def is_shared_content_claim_invitation(self): """ Check if the union tag is ``shared_content_claim_invitation``. :rtype: bool """ return self._tag == 'shared_content_claim_invitation' def is_shared_content_copy(self): """ Check if the union tag is ``shared_content_copy``. :rtype: bool """ return self._tag == 'shared_content_copy' def is_shared_content_download(self): """ Check if the union tag is ``shared_content_download``. :rtype: bool """ return self._tag == 'shared_content_download' def is_shared_content_relinquish_membership(self): """ Check if the union tag is ``shared_content_relinquish_membership``. :rtype: bool """ return self._tag == 'shared_content_relinquish_membership' def is_shared_content_remove_invitees(self): """ Check if the union tag is ``shared_content_remove_invitees``. :rtype: bool """ return self._tag == 'shared_content_remove_invitees' def is_shared_content_remove_link_expiry(self): """ Check if the union tag is ``shared_content_remove_link_expiry``. :rtype: bool """ return self._tag == 'shared_content_remove_link_expiry' def is_shared_content_remove_link_password(self): """ Check if the union tag is ``shared_content_remove_link_password``. :rtype: bool """ return self._tag == 'shared_content_remove_link_password' def is_shared_content_remove_member(self): """ Check if the union tag is ``shared_content_remove_member``. :rtype: bool """ return self._tag == 'shared_content_remove_member' def is_shared_content_request_access(self): """ Check if the union tag is ``shared_content_request_access``. :rtype: bool """ return self._tag == 'shared_content_request_access' def is_shared_content_restore_invitees(self): """ Check if the union tag is ``shared_content_restore_invitees``. :rtype: bool """ return self._tag == 'shared_content_restore_invitees' def is_shared_content_restore_member(self): """ Check if the union tag is ``shared_content_restore_member``. :rtype: bool """ return self._tag == 'shared_content_restore_member' def is_shared_content_unshare(self): """ Check if the union tag is ``shared_content_unshare``. :rtype: bool """ return self._tag == 'shared_content_unshare' def is_shared_content_view(self): """ Check if the union tag is ``shared_content_view``. :rtype: bool """ return self._tag == 'shared_content_view' def is_shared_folder_change_link_policy(self): """ Check if the union tag is ``shared_folder_change_link_policy``. :rtype: bool """ return self._tag == 'shared_folder_change_link_policy' def is_shared_folder_change_members_inheritance_policy(self): """ Check if the union tag is ``shared_folder_change_members_inheritance_policy``. :rtype: bool """ return self._tag == 'shared_folder_change_members_inheritance_policy' def is_shared_folder_change_members_management_policy(self): """ Check if the union tag is ``shared_folder_change_members_management_policy``. :rtype: bool """ return self._tag == 'shared_folder_change_members_management_policy' def is_shared_folder_change_members_policy(self): """ Check if the union tag is ``shared_folder_change_members_policy``. :rtype: bool """ return self._tag == 'shared_folder_change_members_policy' def is_shared_folder_create(self): """ Check if the union tag is ``shared_folder_create``. :rtype: bool """ return self._tag == 'shared_folder_create' def is_shared_folder_decline_invitation(self): """ Check if the union tag is ``shared_folder_decline_invitation``. :rtype: bool """ return self._tag == 'shared_folder_decline_invitation' def is_shared_folder_mount(self): """ Check if the union tag is ``shared_folder_mount``. :rtype: bool """ return self._tag == 'shared_folder_mount' def is_shared_folder_nest(self): """ Check if the union tag is ``shared_folder_nest``. :rtype: bool """ return self._tag == 'shared_folder_nest' def is_shared_folder_transfer_ownership(self): """ Check if the union tag is ``shared_folder_transfer_ownership``. :rtype: bool """ return self._tag == 'shared_folder_transfer_ownership' def is_shared_folder_unmount(self): """ Check if the union tag is ``shared_folder_unmount``. :rtype: bool """ return self._tag == 'shared_folder_unmount' def is_shared_link_add_expiry(self): """ Check if the union tag is ``shared_link_add_expiry``. :rtype: bool """ return self._tag == 'shared_link_add_expiry' def is_shared_link_change_expiry(self): """ Check if the union tag is ``shared_link_change_expiry``. :rtype: bool """ return self._tag == 'shared_link_change_expiry' def is_shared_link_change_visibility(self): """ Check if the union tag is ``shared_link_change_visibility``. :rtype: bool """ return self._tag == 'shared_link_change_visibility' def is_shared_link_copy(self): """ Check if the union tag is ``shared_link_copy``. :rtype: bool """ return self._tag == 'shared_link_copy' def is_shared_link_create(self): """ Check if the union tag is ``shared_link_create``. :rtype: bool """ return self._tag == 'shared_link_create' def is_shared_link_disable(self): """ Check if the union tag is ``shared_link_disable``. :rtype: bool """ return self._tag == 'shared_link_disable' def is_shared_link_download(self): """ Check if the union tag is ``shared_link_download``. :rtype: bool """ return self._tag == 'shared_link_download' def is_shared_link_remove_expiry(self): """ Check if the union tag is ``shared_link_remove_expiry``. :rtype: bool """ return self._tag == 'shared_link_remove_expiry' def is_shared_link_settings_add_expiration(self): """ Check if the union tag is ``shared_link_settings_add_expiration``. :rtype: bool """ return self._tag == 'shared_link_settings_add_expiration' def is_shared_link_settings_add_password(self): """ Check if the union tag is ``shared_link_settings_add_password``. :rtype: bool """ return self._tag == 'shared_link_settings_add_password' def is_shared_link_settings_allow_download_disabled(self): """ Check if the union tag is ``shared_link_settings_allow_download_disabled``. :rtype: bool """ return self._tag == 'shared_link_settings_allow_download_disabled' def is_shared_link_settings_allow_download_enabled(self): """ Check if the union tag is ``shared_link_settings_allow_download_enabled``. :rtype: bool """ return self._tag == 'shared_link_settings_allow_download_enabled' def is_shared_link_settings_change_audience(self): """ Check if the union tag is ``shared_link_settings_change_audience``. :rtype: bool """ return self._tag == 'shared_link_settings_change_audience' def is_shared_link_settings_change_expiration(self): """ Check if the union tag is ``shared_link_settings_change_expiration``. :rtype: bool """ return self._tag == 'shared_link_settings_change_expiration' def is_shared_link_settings_change_password(self): """ Check if the union tag is ``shared_link_settings_change_password``. :rtype: bool """ return self._tag == 'shared_link_settings_change_password' def is_shared_link_settings_remove_expiration(self): """ Check if the union tag is ``shared_link_settings_remove_expiration``. :rtype: bool """ return self._tag == 'shared_link_settings_remove_expiration' def is_shared_link_settings_remove_password(self): """ Check if the union tag is ``shared_link_settings_remove_password``. :rtype: bool """ return self._tag == 'shared_link_settings_remove_password' def is_shared_link_share(self): """ Check if the union tag is ``shared_link_share``. :rtype: bool """ return self._tag == 'shared_link_share' def is_shared_link_view(self): """ Check if the union tag is ``shared_link_view``. :rtype: bool """ return self._tag == 'shared_link_view' def is_shared_note_opened(self): """ Check if the union tag is ``shared_note_opened``. :rtype: bool """ return self._tag == 'shared_note_opened' def is_shmodel_disable_downloads(self): """ Check if the union tag is ``shmodel_disable_downloads``. :rtype: bool """ return self._tag == 'shmodel_disable_downloads' def is_shmodel_enable_downloads(self): """ Check if the union tag is ``shmodel_enable_downloads``. :rtype: bool """ return self._tag == 'shmodel_enable_downloads' def is_shmodel_group_share(self): """ Check if the union tag is ``shmodel_group_share``. :rtype: bool """ return self._tag == 'shmodel_group_share' def is_showcase_access_granted(self): """ Check if the union tag is ``showcase_access_granted``. :rtype: bool """ return self._tag == 'showcase_access_granted' def is_showcase_add_member(self): """ Check if the union tag is ``showcase_add_member``. :rtype: bool """ return self._tag == 'showcase_add_member' def is_showcase_archived(self): """ Check if the union tag is ``showcase_archived``. :rtype: bool """ return self._tag == 'showcase_archived' def is_showcase_created(self): """ Check if the union tag is ``showcase_created``. :rtype: bool """ return self._tag == 'showcase_created' def is_showcase_delete_comment(self): """ Check if the union tag is ``showcase_delete_comment``. :rtype: bool """ return self._tag == 'showcase_delete_comment' def is_showcase_edited(self): """ Check if the union tag is ``showcase_edited``. :rtype: bool """ return self._tag == 'showcase_edited' def is_showcase_edit_comment(self): """ Check if the union tag is ``showcase_edit_comment``. :rtype: bool """ return self._tag == 'showcase_edit_comment' def is_showcase_file_added(self): """ Check if the union tag is ``showcase_file_added``. :rtype: bool """ return self._tag == 'showcase_file_added' def is_showcase_file_download(self): """ Check if the union tag is ``showcase_file_download``. :rtype: bool """ return self._tag == 'showcase_file_download' def is_showcase_file_removed(self): """ Check if the union tag is ``showcase_file_removed``. :rtype: bool """ return self._tag == 'showcase_file_removed' def is_showcase_file_view(self): """ Check if the union tag is ``showcase_file_view``. :rtype: bool """ return self._tag == 'showcase_file_view' def is_showcase_permanently_deleted(self): """ Check if the union tag is ``showcase_permanently_deleted``. :rtype: bool """ return self._tag == 'showcase_permanently_deleted' def is_showcase_post_comment(self): """ Check if the union tag is ``showcase_post_comment``. :rtype: bool """ return self._tag == 'showcase_post_comment' def is_showcase_remove_member(self): """ Check if the union tag is ``showcase_remove_member``. :rtype: bool """ return self._tag == 'showcase_remove_member' def is_showcase_renamed(self): """ Check if the union tag is ``showcase_renamed``. :rtype: bool """ return self._tag == 'showcase_renamed' def is_showcase_request_access(self): """ Check if the union tag is ``showcase_request_access``. :rtype: bool """ return self._tag == 'showcase_request_access' def is_showcase_resolve_comment(self): """ Check if the union tag is ``showcase_resolve_comment``. :rtype: bool """ return self._tag == 'showcase_resolve_comment' def is_showcase_restored(self): """ Check if the union tag is ``showcase_restored``. :rtype: bool """ return self._tag == 'showcase_restored' def is_showcase_trashed(self): """ Check if the union tag is ``showcase_trashed``. :rtype: bool """ return self._tag == 'showcase_trashed' def is_showcase_trashed_deprecated(self): """ Check if the union tag is ``showcase_trashed_deprecated``. :rtype: bool """ return self._tag == 'showcase_trashed_deprecated' def is_showcase_unresolve_comment(self): """ Check if the union tag is ``showcase_unresolve_comment``. :rtype: bool """ return self._tag == 'showcase_unresolve_comment' def is_showcase_untrashed(self): """ Check if the union tag is ``showcase_untrashed``. :rtype: bool """ return self._tag == 'showcase_untrashed' def is_showcase_untrashed_deprecated(self): """ Check if the union tag is ``showcase_untrashed_deprecated``. :rtype: bool """ return self._tag == 'showcase_untrashed_deprecated' def is_showcase_view(self): """ Check if the union tag is ``showcase_view``. :rtype: bool """ return self._tag == 'showcase_view' def is_sso_add_cert(self): """ Check if the union tag is ``sso_add_cert``. :rtype: bool """ return self._tag == 'sso_add_cert' def is_sso_add_login_url(self): """ Check if the union tag is ``sso_add_login_url``. :rtype: bool """ return self._tag == 'sso_add_login_url' def is_sso_add_logout_url(self): """ Check if the union tag is ``sso_add_logout_url``. :rtype: bool """ return self._tag == 'sso_add_logout_url' def is_sso_change_cert(self): """ Check if the union tag is ``sso_change_cert``. :rtype: bool """ return self._tag == 'sso_change_cert' def is_sso_change_login_url(self): """ Check if the union tag is ``sso_change_login_url``. :rtype: bool """ return self._tag == 'sso_change_login_url' def is_sso_change_logout_url(self): """ Check if the union tag is ``sso_change_logout_url``. :rtype: bool """ return self._tag == 'sso_change_logout_url' def is_sso_change_saml_identity_mode(self): """ Check if the union tag is ``sso_change_saml_identity_mode``. :rtype: bool """ return self._tag == 'sso_change_saml_identity_mode' def is_sso_remove_cert(self): """ Check if the union tag is ``sso_remove_cert``. :rtype: bool """ return self._tag == 'sso_remove_cert' def is_sso_remove_login_url(self): """ Check if the union tag is ``sso_remove_login_url``. :rtype: bool """ return self._tag == 'sso_remove_login_url' def is_sso_remove_logout_url(self): """ Check if the union tag is ``sso_remove_logout_url``. :rtype: bool """ return self._tag == 'sso_remove_logout_url' def is_team_folder_change_status(self): """ Check if the union tag is ``team_folder_change_status``. :rtype: bool """ return self._tag == 'team_folder_change_status' def is_team_folder_create(self): """ Check if the union tag is ``team_folder_create``. :rtype: bool """ return self._tag == 'team_folder_create' def is_team_folder_downgrade(self): """ Check if the union tag is ``team_folder_downgrade``. :rtype: bool """ return self._tag == 'team_folder_downgrade' def is_team_folder_permanently_delete(self): """ Check if the union tag is ``team_folder_permanently_delete``. :rtype: bool """ return self._tag == 'team_folder_permanently_delete' def is_team_folder_rename(self): """ Check if the union tag is ``team_folder_rename``. :rtype: bool """ return self._tag == 'team_folder_rename' def is_team_selective_sync_settings_changed(self): """ Check if the union tag is ``team_selective_sync_settings_changed``. :rtype: bool """ return self._tag == 'team_selective_sync_settings_changed' def is_account_capture_change_policy(self): """ Check if the union tag is ``account_capture_change_policy``. :rtype: bool """ return self._tag == 'account_capture_change_policy' def is_admin_email_reminders_changed(self): """ Check if the union tag is ``admin_email_reminders_changed``. :rtype: bool """ return self._tag == 'admin_email_reminders_changed' def is_allow_download_disabled(self): """ Check if the union tag is ``allow_download_disabled``. :rtype: bool """ return self._tag == 'allow_download_disabled' def is_allow_download_enabled(self): """ Check if the union tag is ``allow_download_enabled``. :rtype: bool """ return self._tag == 'allow_download_enabled' def is_app_permissions_changed(self): """ Check if the union tag is ``app_permissions_changed``. :rtype: bool """ return self._tag == 'app_permissions_changed' def is_camera_uploads_policy_changed(self): """ Check if the union tag is ``camera_uploads_policy_changed``. :rtype: bool """ return self._tag == 'camera_uploads_policy_changed' def is_capture_transcript_policy_changed(self): """ Check if the union tag is ``capture_transcript_policy_changed``. :rtype: bool """ return self._tag == 'capture_transcript_policy_changed' def is_classification_change_policy(self): """ Check if the union tag is ``classification_change_policy``. :rtype: bool """ return self._tag == 'classification_change_policy' def is_computer_backup_policy_changed(self): """ Check if the union tag is ``computer_backup_policy_changed``. :rtype: bool """ return self._tag == 'computer_backup_policy_changed' def is_content_administration_policy_changed(self): """ Check if the union tag is ``content_administration_policy_changed``. :rtype: bool """ return self._tag == 'content_administration_policy_changed' def is_data_placement_restriction_change_policy(self): """ Check if the union tag is ``data_placement_restriction_change_policy``. :rtype: bool """ return self._tag == 'data_placement_restriction_change_policy' def is_data_placement_restriction_satisfy_policy(self): """ Check if the union tag is ``data_placement_restriction_satisfy_policy``. :rtype: bool """ return self._tag == 'data_placement_restriction_satisfy_policy' def is_device_approvals_add_exception(self): """ Check if the union tag is ``device_approvals_add_exception``. :rtype: bool """ return self._tag == 'device_approvals_add_exception' def is_device_approvals_change_desktop_policy(self): """ Check if the union tag is ``device_approvals_change_desktop_policy``. :rtype: bool """ return self._tag == 'device_approvals_change_desktop_policy' def is_device_approvals_change_mobile_policy(self): """ Check if the union tag is ``device_approvals_change_mobile_policy``. :rtype: bool """ return self._tag == 'device_approvals_change_mobile_policy' def is_device_approvals_change_overage_action(self): """ Check if the union tag is ``device_approvals_change_overage_action``. :rtype: bool """ return self._tag == 'device_approvals_change_overage_action' def is_device_approvals_change_unlink_action(self): """ Check if the union tag is ``device_approvals_change_unlink_action``. :rtype: bool """ return self._tag == 'device_approvals_change_unlink_action' def is_device_approvals_remove_exception(self): """ Check if the union tag is ``device_approvals_remove_exception``. :rtype: bool """ return self._tag == 'device_approvals_remove_exception' def is_directory_restrictions_add_members(self): """ Check if the union tag is ``directory_restrictions_add_members``. :rtype: bool """ return self._tag == 'directory_restrictions_add_members' def is_directory_restrictions_remove_members(self): """ Check if the union tag is ``directory_restrictions_remove_members``. :rtype: bool """ return self._tag == 'directory_restrictions_remove_members' def is_dropbox_passwords_policy_changed(self): """ Check if the union tag is ``dropbox_passwords_policy_changed``. :rtype: bool """ return self._tag == 'dropbox_passwords_policy_changed' def is_email_ingest_policy_changed(self): """ Check if the union tag is ``email_ingest_policy_changed``. :rtype: bool """ return self._tag == 'email_ingest_policy_changed' def is_emm_add_exception(self): """ Check if the union tag is ``emm_add_exception``. :rtype: bool """ return self._tag == 'emm_add_exception' def is_emm_change_policy(self): """ Check if the union tag is ``emm_change_policy``. :rtype: bool """ return self._tag == 'emm_change_policy' def is_emm_remove_exception(self): """ Check if the union tag is ``emm_remove_exception``. :rtype: bool """ return self._tag == 'emm_remove_exception' def is_extended_version_history_change_policy(self): """ Check if the union tag is ``extended_version_history_change_policy``. :rtype: bool """ return self._tag == 'extended_version_history_change_policy' def is_external_drive_backup_policy_changed(self): """ Check if the union tag is ``external_drive_backup_policy_changed``. :rtype: bool """ return self._tag == 'external_drive_backup_policy_changed' def is_file_comments_change_policy(self): """ Check if the union tag is ``file_comments_change_policy``. :rtype: bool """ return self._tag == 'file_comments_change_policy' def is_file_locking_policy_changed(self): """ Check if the union tag is ``file_locking_policy_changed``. :rtype: bool """ return self._tag == 'file_locking_policy_changed' def is_file_provider_migration_policy_changed(self): """ Check if the union tag is ``file_provider_migration_policy_changed``. :rtype: bool """ return self._tag == 'file_provider_migration_policy_changed' def is_file_requests_change_policy(self): """ Check if the union tag is ``file_requests_change_policy``. :rtype: bool """ return self._tag == 'file_requests_change_policy' def is_file_requests_emails_enabled(self): """ Check if the union tag is ``file_requests_emails_enabled``. :rtype: bool """ return self._tag == 'file_requests_emails_enabled' def is_file_requests_emails_restricted_to_team_only(self): """ Check if the union tag is ``file_requests_emails_restricted_to_team_only``. :rtype: bool """ return self._tag == 'file_requests_emails_restricted_to_team_only' def is_file_transfers_policy_changed(self): """ Check if the union tag is ``file_transfers_policy_changed``. :rtype: bool """ return self._tag == 'file_transfers_policy_changed' def is_folder_link_restriction_policy_changed(self): """ Check if the union tag is ``folder_link_restriction_policy_changed``. :rtype: bool """ return self._tag == 'folder_link_restriction_policy_changed' def is_google_sso_change_policy(self): """ Check if the union tag is ``google_sso_change_policy``. :rtype: bool """ return self._tag == 'google_sso_change_policy' def is_group_user_management_change_policy(self): """ Check if the union tag is ``group_user_management_change_policy``. :rtype: bool """ return self._tag == 'group_user_management_change_policy' def is_integration_policy_changed(self): """ Check if the union tag is ``integration_policy_changed``. :rtype: bool """ return self._tag == 'integration_policy_changed' def is_invite_acceptance_email_policy_changed(self): """ Check if the union tag is ``invite_acceptance_email_policy_changed``. :rtype: bool """ return self._tag == 'invite_acceptance_email_policy_changed' def is_member_requests_change_policy(self): """ Check if the union tag is ``member_requests_change_policy``. :rtype: bool """ return self._tag == 'member_requests_change_policy' def is_member_send_invite_policy_changed(self): """ Check if the union tag is ``member_send_invite_policy_changed``. :rtype: bool """ return self._tag == 'member_send_invite_policy_changed' def is_member_space_limits_add_exception(self): """ Check if the union tag is ``member_space_limits_add_exception``. :rtype: bool """ return self._tag == 'member_space_limits_add_exception' def is_member_space_limits_change_caps_type_policy(self): """ Check if the union tag is ``member_space_limits_change_caps_type_policy``. :rtype: bool """ return self._tag == 'member_space_limits_change_caps_type_policy' def is_member_space_limits_change_policy(self): """ Check if the union tag is ``member_space_limits_change_policy``. :rtype: bool """ return self._tag == 'member_space_limits_change_policy' def is_member_space_limits_remove_exception(self): """ Check if the union tag is ``member_space_limits_remove_exception``. :rtype: bool """ return self._tag == 'member_space_limits_remove_exception' def is_member_suggestions_change_policy(self): """ Check if the union tag is ``member_suggestions_change_policy``. :rtype: bool """ return self._tag == 'member_suggestions_change_policy' def is_microsoft_office_addin_change_policy(self): """ Check if the union tag is ``microsoft_office_addin_change_policy``. :rtype: bool """ return self._tag == 'microsoft_office_addin_change_policy' def is_network_control_change_policy(self): """ Check if the union tag is ``network_control_change_policy``. :rtype: bool """ return self._tag == 'network_control_change_policy' def is_paper_change_deployment_policy(self): """ Check if the union tag is ``paper_change_deployment_policy``. :rtype: bool """ return self._tag == 'paper_change_deployment_policy' def is_paper_change_member_link_policy(self): """ Check if the union tag is ``paper_change_member_link_policy``. :rtype: bool """ return self._tag == 'paper_change_member_link_policy' def is_paper_change_member_policy(self): """ Check if the union tag is ``paper_change_member_policy``. :rtype: bool """ return self._tag == 'paper_change_member_policy' def is_paper_change_policy(self): """ Check if the union tag is ``paper_change_policy``. :rtype: bool """ return self._tag == 'paper_change_policy' def is_paper_default_folder_policy_changed(self): """ Check if the union tag is ``paper_default_folder_policy_changed``. :rtype: bool """ return self._tag == 'paper_default_folder_policy_changed' def is_paper_desktop_policy_changed(self): """ Check if the union tag is ``paper_desktop_policy_changed``. :rtype: bool """ return self._tag == 'paper_desktop_policy_changed' def is_paper_enabled_users_group_addition(self): """ Check if the union tag is ``paper_enabled_users_group_addition``. :rtype: bool """ return self._tag == 'paper_enabled_users_group_addition' def is_paper_enabled_users_group_removal(self): """ Check if the union tag is ``paper_enabled_users_group_removal``. :rtype: bool """ return self._tag == 'paper_enabled_users_group_removal' def is_password_strength_requirements_change_policy(self): """ Check if the union tag is ``password_strength_requirements_change_policy``. :rtype: bool """ return self._tag == 'password_strength_requirements_change_policy' def is_permanent_delete_change_policy(self): """ Check if the union tag is ``permanent_delete_change_policy``. :rtype: bool """ return self._tag == 'permanent_delete_change_policy' def is_reseller_support_change_policy(self): """ Check if the union tag is ``reseller_support_change_policy``. :rtype: bool """ return self._tag == 'reseller_support_change_policy' def is_rewind_policy_changed(self): """ Check if the union tag is ``rewind_policy_changed``. :rtype: bool """ return self._tag == 'rewind_policy_changed' def is_send_for_signature_policy_changed(self): """ Check if the union tag is ``send_for_signature_policy_changed``. :rtype: bool """ return self._tag == 'send_for_signature_policy_changed' def is_sharing_change_folder_join_policy(self): """ Check if the union tag is ``sharing_change_folder_join_policy``. :rtype: bool """ return self._tag == 'sharing_change_folder_join_policy' def is_sharing_change_link_allow_change_expiration_policy(self): """ Check if the union tag is ``sharing_change_link_allow_change_expiration_policy``. :rtype: bool """ return self._tag == 'sharing_change_link_allow_change_expiration_policy' def is_sharing_change_link_default_expiration_policy(self): """ Check if the union tag is ``sharing_change_link_default_expiration_policy``. :rtype: bool """ return self._tag == 'sharing_change_link_default_expiration_policy' def is_sharing_change_link_enforce_password_policy(self): """ Check if the union tag is ``sharing_change_link_enforce_password_policy``. :rtype: bool """ return self._tag == 'sharing_change_link_enforce_password_policy' def is_sharing_change_link_policy(self): """ Check if the union tag is ``sharing_change_link_policy``. :rtype: bool """ return self._tag == 'sharing_change_link_policy' def is_sharing_change_member_policy(self): """ Check if the union tag is ``sharing_change_member_policy``. :rtype: bool """ return self._tag == 'sharing_change_member_policy' def is_showcase_change_download_policy(self): """ Check if the union tag is ``showcase_change_download_policy``. :rtype: bool """ return self._tag == 'showcase_change_download_policy' def is_showcase_change_enabled_policy(self): """ Check if the union tag is ``showcase_change_enabled_policy``. :rtype: bool """ return self._tag == 'showcase_change_enabled_policy' def is_showcase_change_external_sharing_policy(self): """ Check if the union tag is ``showcase_change_external_sharing_policy``. :rtype: bool """ return self._tag == 'showcase_change_external_sharing_policy' def is_smarter_smart_sync_policy_changed(self): """ Check if the union tag is ``smarter_smart_sync_policy_changed``. :rtype: bool """ return self._tag == 'smarter_smart_sync_policy_changed' def is_smart_sync_change_policy(self): """ Check if the union tag is ``smart_sync_change_policy``. :rtype: bool """ return self._tag == 'smart_sync_change_policy' def is_smart_sync_not_opt_out(self): """ Check if the union tag is ``smart_sync_not_opt_out``. :rtype: bool """ return self._tag == 'smart_sync_not_opt_out' def is_smart_sync_opt_out(self): """ Check if the union tag is ``smart_sync_opt_out``. :rtype: bool """ return self._tag == 'smart_sync_opt_out' def is_sso_change_policy(self): """ Check if the union tag is ``sso_change_policy``. :rtype: bool """ return self._tag == 'sso_change_policy' def is_team_branding_policy_changed(self): """ Check if the union tag is ``team_branding_policy_changed``. :rtype: bool """ return self._tag == 'team_branding_policy_changed' def is_team_extensions_policy_changed(self): """ Check if the union tag is ``team_extensions_policy_changed``. :rtype: bool """ return self._tag == 'team_extensions_policy_changed' def is_team_selective_sync_policy_changed(self): """ Check if the union tag is ``team_selective_sync_policy_changed``. :rtype: bool """ return self._tag == 'team_selective_sync_policy_changed' def is_team_sharing_whitelist_subjects_changed(self): """ Check if the union tag is ``team_sharing_whitelist_subjects_changed``. :rtype: bool """ return self._tag == 'team_sharing_whitelist_subjects_changed' def is_tfa_add_exception(self): """ Check if the union tag is ``tfa_add_exception``. :rtype: bool """ return self._tag == 'tfa_add_exception' def is_tfa_change_policy(self): """ Check if the union tag is ``tfa_change_policy``. :rtype: bool """ return self._tag == 'tfa_change_policy' def is_tfa_remove_exception(self): """ Check if the union tag is ``tfa_remove_exception``. :rtype: bool """ return self._tag == 'tfa_remove_exception' def is_two_account_change_policy(self): """ Check if the union tag is ``two_account_change_policy``. :rtype: bool """ return self._tag == 'two_account_change_policy' def is_viewer_info_policy_changed(self): """ Check if the union tag is ``viewer_info_policy_changed``. :rtype: bool """ return self._tag == 'viewer_info_policy_changed' def is_watermarking_policy_changed(self): """ Check if the union tag is ``watermarking_policy_changed``. :rtype: bool """ return self._tag == 'watermarking_policy_changed' def is_web_sessions_change_active_session_limit(self): """ Check if the union tag is ``web_sessions_change_active_session_limit``. :rtype: bool """ return self._tag == 'web_sessions_change_active_session_limit' def is_web_sessions_change_fixed_length_policy(self): """ Check if the union tag is ``web_sessions_change_fixed_length_policy``. :rtype: bool """ return self._tag == 'web_sessions_change_fixed_length_policy' def is_web_sessions_change_idle_length_policy(self): """ Check if the union tag is ``web_sessions_change_idle_length_policy``. :rtype: bool """ return self._tag == 'web_sessions_change_idle_length_policy' def is_data_residency_migration_request_successful(self): """ Check if the union tag is ``data_residency_migration_request_successful``. :rtype: bool """ return self._tag == 'data_residency_migration_request_successful' def is_data_residency_migration_request_unsuccessful(self): """ Check if the union tag is ``data_residency_migration_request_unsuccessful``. :rtype: bool """ return self._tag == 'data_residency_migration_request_unsuccessful' def is_team_merge_from(self): """ Check if the union tag is ``team_merge_from``. :rtype: bool """ return self._tag == 'team_merge_from' def is_team_merge_to(self): """ Check if the union tag is ``team_merge_to``. :rtype: bool """ return self._tag == 'team_merge_to' def is_team_profile_add_background(self): """ Check if the union tag is ``team_profile_add_background``. :rtype: bool """ return self._tag == 'team_profile_add_background' def is_team_profile_add_logo(self): """ Check if the union tag is ``team_profile_add_logo``. :rtype: bool """ return self._tag == 'team_profile_add_logo' def is_team_profile_change_background(self): """ Check if the union tag is ``team_profile_change_background``. :rtype: bool """ return self._tag == 'team_profile_change_background' def is_team_profile_change_default_language(self): """ Check if the union tag is ``team_profile_change_default_language``. :rtype: bool """ return self._tag == 'team_profile_change_default_language' def is_team_profile_change_logo(self): """ Check if the union tag is ``team_profile_change_logo``. :rtype: bool """ return self._tag == 'team_profile_change_logo' def is_team_profile_change_name(self): """ Check if the union tag is ``team_profile_change_name``. :rtype: bool """ return self._tag == 'team_profile_change_name' def is_team_profile_remove_background(self): """ Check if the union tag is ``team_profile_remove_background``. :rtype: bool """ return self._tag == 'team_profile_remove_background' def is_team_profile_remove_logo(self): """ Check if the union tag is ``team_profile_remove_logo``. :rtype: bool """ return self._tag == 'team_profile_remove_logo' def is_tfa_add_backup_phone(self): """ Check if the union tag is ``tfa_add_backup_phone``. :rtype: bool """ return self._tag == 'tfa_add_backup_phone' def is_tfa_add_security_key(self): """ Check if the union tag is ``tfa_add_security_key``. :rtype: bool """ return self._tag == 'tfa_add_security_key' def is_tfa_change_backup_phone(self): """ Check if the union tag is ``tfa_change_backup_phone``. :rtype: bool """ return self._tag == 'tfa_change_backup_phone' def is_tfa_change_status(self): """ Check if the union tag is ``tfa_change_status``. :rtype: bool """ return self._tag == 'tfa_change_status' def is_tfa_remove_backup_phone(self): """ Check if the union tag is ``tfa_remove_backup_phone``. :rtype: bool """ return self._tag == 'tfa_remove_backup_phone' def is_tfa_remove_security_key(self): """ Check if the union tag is ``tfa_remove_security_key``. :rtype: bool """ return self._tag == 'tfa_remove_security_key' def is_tfa_reset(self): """ Check if the union tag is ``tfa_reset``. :rtype: bool """ return self._tag == 'tfa_reset' def is_changed_enterprise_admin_role(self): """ Check if the union tag is ``changed_enterprise_admin_role``. :rtype: bool """ return self._tag == 'changed_enterprise_admin_role' def is_changed_enterprise_connected_team_status(self): """ Check if the union tag is ``changed_enterprise_connected_team_status``. :rtype: bool """ return self._tag == 'changed_enterprise_connected_team_status' def is_ended_enterprise_admin_session(self): """ Check if the union tag is ``ended_enterprise_admin_session``. :rtype: bool """ return self._tag == 'ended_enterprise_admin_session' def is_ended_enterprise_admin_session_deprecated(self): """ Check if the union tag is ``ended_enterprise_admin_session_deprecated``. :rtype: bool """ return self._tag == 'ended_enterprise_admin_session_deprecated' def is_enterprise_settings_locking(self): """ Check if the union tag is ``enterprise_settings_locking``. :rtype: bool """ return self._tag == 'enterprise_settings_locking' def is_guest_admin_change_status(self): """ Check if the union tag is ``guest_admin_change_status``. :rtype: bool """ return self._tag == 'guest_admin_change_status' def is_started_enterprise_admin_session(self): """ Check if the union tag is ``started_enterprise_admin_session``. :rtype: bool """ return self._tag == 'started_enterprise_admin_session' def is_team_merge_request_accepted(self): """ Check if the union tag is ``team_merge_request_accepted``. :rtype: bool """ return self._tag == 'team_merge_request_accepted' def is_team_merge_request_accepted_shown_to_primary_team(self): """ Check if the union tag is ``team_merge_request_accepted_shown_to_primary_team``. :rtype: bool """ return self._tag == 'team_merge_request_accepted_shown_to_primary_team' def is_team_merge_request_accepted_shown_to_secondary_team(self): """ Check if the union tag is ``team_merge_request_accepted_shown_to_secondary_team``. :rtype: bool """ return self._tag == 'team_merge_request_accepted_shown_to_secondary_team' def is_team_merge_request_auto_canceled(self): """ Check if the union tag is ``team_merge_request_auto_canceled``. :rtype: bool """ return self._tag == 'team_merge_request_auto_canceled' def is_team_merge_request_canceled(self): """ Check if the union tag is ``team_merge_request_canceled``. :rtype: bool """ return self._tag == 'team_merge_request_canceled' def is_team_merge_request_canceled_shown_to_primary_team(self): """ Check if the union tag is ``team_merge_request_canceled_shown_to_primary_team``. :rtype: bool """ return self._tag == 'team_merge_request_canceled_shown_to_primary_team' def is_team_merge_request_canceled_shown_to_secondary_team(self): """ Check if the union tag is ``team_merge_request_canceled_shown_to_secondary_team``. :rtype: bool """ return self._tag == 'team_merge_request_canceled_shown_to_secondary_team' def is_team_merge_request_expired(self): """ Check if the union tag is ``team_merge_request_expired``. :rtype: bool """ return self._tag == 'team_merge_request_expired' def is_team_merge_request_expired_shown_to_primary_team(self): """ Check if the union tag is ``team_merge_request_expired_shown_to_primary_team``. :rtype: bool """ return self._tag == 'team_merge_request_expired_shown_to_primary_team' def is_team_merge_request_expired_shown_to_secondary_team(self): """ Check if the union tag is ``team_merge_request_expired_shown_to_secondary_team``. :rtype: bool """ return self._tag == 'team_merge_request_expired_shown_to_secondary_team' def is_team_merge_request_rejected_shown_to_primary_team(self): """ Check if the union tag is ``team_merge_request_rejected_shown_to_primary_team``. :rtype: bool """ return self._tag == 'team_merge_request_rejected_shown_to_primary_team' def is_team_merge_request_rejected_shown_to_secondary_team(self): """ Check if the union tag is ``team_merge_request_rejected_shown_to_secondary_team``. :rtype: bool """ return self._tag == 'team_merge_request_rejected_shown_to_secondary_team' def is_team_merge_request_reminder(self): """ Check if the union tag is ``team_merge_request_reminder``. :rtype: bool """ return self._tag == 'team_merge_request_reminder' def is_team_merge_request_reminder_shown_to_primary_team(self): """ Check if the union tag is ``team_merge_request_reminder_shown_to_primary_team``. :rtype: bool """ return self._tag == 'team_merge_request_reminder_shown_to_primary_team' def is_team_merge_request_reminder_shown_to_secondary_team(self): """ Check if the union tag is ``team_merge_request_reminder_shown_to_secondary_team``. :rtype: bool """ return self._tag == 'team_merge_request_reminder_shown_to_secondary_team' def is_team_merge_request_revoked(self): """ Check if the union tag is ``team_merge_request_revoked``. :rtype: bool """ return self._tag == 'team_merge_request_revoked' def is_team_merge_request_sent_shown_to_primary_team(self): """ Check if the union tag is ``team_merge_request_sent_shown_to_primary_team``. :rtype: bool """ return self._tag == 'team_merge_request_sent_shown_to_primary_team' def is_team_merge_request_sent_shown_to_secondary_team(self): """ Check if the union tag is ``team_merge_request_sent_shown_to_secondary_team``. :rtype: bool """ return self._tag == 'team_merge_request_sent_shown_to_secondary_team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_admin_alerting_alert_state_changed(self): """ (admin_alerting) Changed an alert state Only call this if :meth:`is_admin_alerting_alert_state_changed` is true. :rtype: AdminAlertingAlertStateChangedType """ if not self.is_admin_alerting_alert_state_changed(): raise AttributeError("tag 'admin_alerting_alert_state_changed' not set") return self._value def get_admin_alerting_changed_alert_config(self): """ (admin_alerting) Changed an alert setting Only call this if :meth:`is_admin_alerting_changed_alert_config` is true. :rtype: AdminAlertingChangedAlertConfigType """ if not self.is_admin_alerting_changed_alert_config(): raise AttributeError("tag 'admin_alerting_changed_alert_config' not set") return self._value def get_admin_alerting_triggered_alert(self): """ (admin_alerting) Triggered security alert Only call this if :meth:`is_admin_alerting_triggered_alert` is true. :rtype: AdminAlertingTriggeredAlertType """ if not self.is_admin_alerting_triggered_alert(): raise AttributeError("tag 'admin_alerting_triggered_alert' not set") return self._value def get_ransomware_restore_process_completed(self): """ (admin_alerting) Completed ransomware restore process Only call this if :meth:`is_ransomware_restore_process_completed` is true. :rtype: RansomwareRestoreProcessCompletedType """ if not self.is_ransomware_restore_process_completed(): raise AttributeError("tag 'ransomware_restore_process_completed' not set") return self._value def get_ransomware_restore_process_started(self): """ (admin_alerting) Started ransomware restore process Only call this if :meth:`is_ransomware_restore_process_started` is true. :rtype: RansomwareRestoreProcessStartedType """ if not self.is_ransomware_restore_process_started(): raise AttributeError("tag 'ransomware_restore_process_started' not set") return self._value def get_app_blocked_by_permissions(self): """ (apps) Failed to connect app for member Only call this if :meth:`is_app_blocked_by_permissions` is true. :rtype: AppBlockedByPermissionsType """ if not self.is_app_blocked_by_permissions(): raise AttributeError("tag 'app_blocked_by_permissions' not set") return self._value def get_app_link_team(self): """ (apps) Linked app for team Only call this if :meth:`is_app_link_team` is true. :rtype: AppLinkTeamType """ if not self.is_app_link_team(): raise AttributeError("tag 'app_link_team' not set") return self._value def get_app_link_user(self): """ (apps) Linked app for member Only call this if :meth:`is_app_link_user` is true. :rtype: AppLinkUserType """ if not self.is_app_link_user(): raise AttributeError("tag 'app_link_user' not set") return self._value def get_app_unlink_team(self): """ (apps) Unlinked app for team Only call this if :meth:`is_app_unlink_team` is true. :rtype: AppUnlinkTeamType """ if not self.is_app_unlink_team(): raise AttributeError("tag 'app_unlink_team' not set") return self._value def get_app_unlink_user(self): """ (apps) Unlinked app for member Only call this if :meth:`is_app_unlink_user` is true. :rtype: AppUnlinkUserType """ if not self.is_app_unlink_user(): raise AttributeError("tag 'app_unlink_user' not set") return self._value def get_integration_connected(self): """ (apps) Connected integration for member Only call this if :meth:`is_integration_connected` is true. :rtype: IntegrationConnectedType """ if not self.is_integration_connected(): raise AttributeError("tag 'integration_connected' not set") return self._value def get_integration_disconnected(self): """ (apps) Disconnected integration for member Only call this if :meth:`is_integration_disconnected` is true. :rtype: IntegrationDisconnectedType """ if not self.is_integration_disconnected(): raise AttributeError("tag 'integration_disconnected' not set") return self._value def get_file_add_comment(self): """ (comments) Added file comment Only call this if :meth:`is_file_add_comment` is true. :rtype: FileAddCommentType """ if not self.is_file_add_comment(): raise AttributeError("tag 'file_add_comment' not set") return self._value def get_file_change_comment_subscription(self): """ (comments) Subscribed to or unsubscribed from comment notifications for file Only call this if :meth:`is_file_change_comment_subscription` is true. :rtype: FileChangeCommentSubscriptionType """ if not self.is_file_change_comment_subscription(): raise AttributeError("tag 'file_change_comment_subscription' not set") return self._value def get_file_delete_comment(self): """ (comments) Deleted file comment Only call this if :meth:`is_file_delete_comment` is true. :rtype: FileDeleteCommentType """ if not self.is_file_delete_comment(): raise AttributeError("tag 'file_delete_comment' not set") return self._value def get_file_edit_comment(self): """ (comments) Edited file comment Only call this if :meth:`is_file_edit_comment` is true. :rtype: FileEditCommentType """ if not self.is_file_edit_comment(): raise AttributeError("tag 'file_edit_comment' not set") return self._value def get_file_like_comment(self): """ (comments) Liked file comment (deprecated, no longer logged) Only call this if :meth:`is_file_like_comment` is true. :rtype: FileLikeCommentType """ if not self.is_file_like_comment(): raise AttributeError("tag 'file_like_comment' not set") return self._value def get_file_resolve_comment(self): """ (comments) Resolved file comment Only call this if :meth:`is_file_resolve_comment` is true. :rtype: FileResolveCommentType """ if not self.is_file_resolve_comment(): raise AttributeError("tag 'file_resolve_comment' not set") return self._value def get_file_unlike_comment(self): """ (comments) Unliked file comment (deprecated, no longer logged) Only call this if :meth:`is_file_unlike_comment` is true. :rtype: FileUnlikeCommentType """ if not self.is_file_unlike_comment(): raise AttributeError("tag 'file_unlike_comment' not set") return self._value def get_file_unresolve_comment(self): """ (comments) Unresolved file comment Only call this if :meth:`is_file_unresolve_comment` is true. :rtype: FileUnresolveCommentType """ if not self.is_file_unresolve_comment(): raise AttributeError("tag 'file_unresolve_comment' not set") return self._value def get_governance_policy_add_folders(self): """ (data_governance) Added folders to policy Only call this if :meth:`is_governance_policy_add_folders` is true. :rtype: GovernancePolicyAddFoldersType """ if not self.is_governance_policy_add_folders(): raise AttributeError("tag 'governance_policy_add_folders' not set") return self._value def get_governance_policy_add_folder_failed(self): """ (data_governance) Couldn't add a folder to a policy Only call this if :meth:`is_governance_policy_add_folder_failed` is true. :rtype: GovernancePolicyAddFolderFailedType """ if not self.is_governance_policy_add_folder_failed(): raise AttributeError("tag 'governance_policy_add_folder_failed' not set") return self._value def get_governance_policy_content_disposed(self): """ (data_governance) Content disposed Only call this if :meth:`is_governance_policy_content_disposed` is true. :rtype: GovernancePolicyContentDisposedType """ if not self.is_governance_policy_content_disposed(): raise AttributeError("tag 'governance_policy_content_disposed' not set") return self._value def get_governance_policy_create(self): """ (data_governance) Activated a new policy Only call this if :meth:`is_governance_policy_create` is true. :rtype: GovernancePolicyCreateType """ if not self.is_governance_policy_create(): raise AttributeError("tag 'governance_policy_create' not set") return self._value def get_governance_policy_delete(self): """ (data_governance) Deleted a policy Only call this if :meth:`is_governance_policy_delete` is true. :rtype: GovernancePolicyDeleteType """ if not self.is_governance_policy_delete(): raise AttributeError("tag 'governance_policy_delete' not set") return self._value def get_governance_policy_edit_details(self): """ (data_governance) Edited policy Only call this if :meth:`is_governance_policy_edit_details` is true. :rtype: GovernancePolicyEditDetailsType """ if not self.is_governance_policy_edit_details(): raise AttributeError("tag 'governance_policy_edit_details' not set") return self._value def get_governance_policy_edit_duration(self): """ (data_governance) Changed policy duration Only call this if :meth:`is_governance_policy_edit_duration` is true. :rtype: GovernancePolicyEditDurationType """ if not self.is_governance_policy_edit_duration(): raise AttributeError("tag 'governance_policy_edit_duration' not set") return self._value def get_governance_policy_export_created(self): """ (data_governance) Created a policy download Only call this if :meth:`is_governance_policy_export_created` is true. :rtype: GovernancePolicyExportCreatedType """ if not self.is_governance_policy_export_created(): raise AttributeError("tag 'governance_policy_export_created' not set") return self._value def get_governance_policy_export_removed(self): """ (data_governance) Removed a policy download Only call this if :meth:`is_governance_policy_export_removed` is true. :rtype: GovernancePolicyExportRemovedType """ if not self.is_governance_policy_export_removed(): raise AttributeError("tag 'governance_policy_export_removed' not set") return self._value def get_governance_policy_remove_folders(self): """ (data_governance) Removed folders from policy Only call this if :meth:`is_governance_policy_remove_folders` is true. :rtype: GovernancePolicyRemoveFoldersType """ if not self.is_governance_policy_remove_folders(): raise AttributeError("tag 'governance_policy_remove_folders' not set") return self._value def get_governance_policy_report_created(self): """ (data_governance) Created a summary report for a policy Only call this if :meth:`is_governance_policy_report_created` is true. :rtype: GovernancePolicyReportCreatedType """ if not self.is_governance_policy_report_created(): raise AttributeError("tag 'governance_policy_report_created' not set") return self._value def get_governance_policy_zip_part_downloaded(self): """ (data_governance) Downloaded content from a policy Only call this if :meth:`is_governance_policy_zip_part_downloaded` is true. :rtype: GovernancePolicyZipPartDownloadedType """ if not self.is_governance_policy_zip_part_downloaded(): raise AttributeError("tag 'governance_policy_zip_part_downloaded' not set") return self._value def get_legal_holds_activate_a_hold(self): """ (data_governance) Activated a hold Only call this if :meth:`is_legal_holds_activate_a_hold` is true. :rtype: LegalHoldsActivateAHoldType """ if not self.is_legal_holds_activate_a_hold(): raise AttributeError("tag 'legal_holds_activate_a_hold' not set") return self._value def get_legal_holds_add_members(self): """ (data_governance) Added members to a hold Only call this if :meth:`is_legal_holds_add_members` is true. :rtype: LegalHoldsAddMembersType """ if not self.is_legal_holds_add_members(): raise AttributeError("tag 'legal_holds_add_members' not set") return self._value def get_legal_holds_change_hold_details(self): """ (data_governance) Edited details for a hold Only call this if :meth:`is_legal_holds_change_hold_details` is true. :rtype: LegalHoldsChangeHoldDetailsType """ if not self.is_legal_holds_change_hold_details(): raise AttributeError("tag 'legal_holds_change_hold_details' not set") return self._value def get_legal_holds_change_hold_name(self): """ (data_governance) Renamed a hold Only call this if :meth:`is_legal_holds_change_hold_name` is true. :rtype: LegalHoldsChangeHoldNameType """ if not self.is_legal_holds_change_hold_name(): raise AttributeError("tag 'legal_holds_change_hold_name' not set") return self._value def get_legal_holds_export_a_hold(self): """ (data_governance) Exported hold Only call this if :meth:`is_legal_holds_export_a_hold` is true. :rtype: LegalHoldsExportAHoldType """ if not self.is_legal_holds_export_a_hold(): raise AttributeError("tag 'legal_holds_export_a_hold' not set") return self._value def get_legal_holds_export_cancelled(self): """ (data_governance) Canceled export for a hold Only call this if :meth:`is_legal_holds_export_cancelled` is true. :rtype: LegalHoldsExportCancelledType """ if not self.is_legal_holds_export_cancelled(): raise AttributeError("tag 'legal_holds_export_cancelled' not set") return self._value def get_legal_holds_export_downloaded(self): """ (data_governance) Downloaded export for a hold Only call this if :meth:`is_legal_holds_export_downloaded` is true. :rtype: LegalHoldsExportDownloadedType """ if not self.is_legal_holds_export_downloaded(): raise AttributeError("tag 'legal_holds_export_downloaded' not set") return self._value def get_legal_holds_export_removed(self): """ (data_governance) Removed export for a hold Only call this if :meth:`is_legal_holds_export_removed` is true. :rtype: LegalHoldsExportRemovedType """ if not self.is_legal_holds_export_removed(): raise AttributeError("tag 'legal_holds_export_removed' not set") return self._value def get_legal_holds_release_a_hold(self): """ (data_governance) Released a hold Only call this if :meth:`is_legal_holds_release_a_hold` is true. :rtype: LegalHoldsReleaseAHoldType """ if not self.is_legal_holds_release_a_hold(): raise AttributeError("tag 'legal_holds_release_a_hold' not set") return self._value def get_legal_holds_remove_members(self): """ (data_governance) Removed members from a hold Only call this if :meth:`is_legal_holds_remove_members` is true. :rtype: LegalHoldsRemoveMembersType """ if not self.is_legal_holds_remove_members(): raise AttributeError("tag 'legal_holds_remove_members' not set") return self._value def get_legal_holds_report_a_hold(self): """ (data_governance) Created a summary report for a hold Only call this if :meth:`is_legal_holds_report_a_hold` is true. :rtype: LegalHoldsReportAHoldType """ if not self.is_legal_holds_report_a_hold(): raise AttributeError("tag 'legal_holds_report_a_hold' not set") return self._value def get_device_change_ip_desktop(self): """ (devices) Changed IP address associated with active desktop session Only call this if :meth:`is_device_change_ip_desktop` is true. :rtype: DeviceChangeIpDesktopType """ if not self.is_device_change_ip_desktop(): raise AttributeError("tag 'device_change_ip_desktop' not set") return self._value def get_device_change_ip_mobile(self): """ (devices) Changed IP address associated with active mobile session Only call this if :meth:`is_device_change_ip_mobile` is true. :rtype: DeviceChangeIpMobileType """ if not self.is_device_change_ip_mobile(): raise AttributeError("tag 'device_change_ip_mobile' not set") return self._value def get_device_change_ip_web(self): """ (devices) Changed IP address associated with active web session Only call this if :meth:`is_device_change_ip_web` is true. :rtype: DeviceChangeIpWebType """ if not self.is_device_change_ip_web(): raise AttributeError("tag 'device_change_ip_web' not set") return self._value def get_device_delete_on_unlink_fail(self): """ (devices) Failed to delete all files from unlinked device Only call this if :meth:`is_device_delete_on_unlink_fail` is true. :rtype: DeviceDeleteOnUnlinkFailType """ if not self.is_device_delete_on_unlink_fail(): raise AttributeError("tag 'device_delete_on_unlink_fail' not set") return self._value def get_device_delete_on_unlink_success(self): """ (devices) Deleted all files from unlinked device Only call this if :meth:`is_device_delete_on_unlink_success` is true. :rtype: DeviceDeleteOnUnlinkSuccessType """ if not self.is_device_delete_on_unlink_success(): raise AttributeError("tag 'device_delete_on_unlink_success' not set") return self._value def get_device_link_fail(self): """ (devices) Failed to link device Only call this if :meth:`is_device_link_fail` is true. :rtype: DeviceLinkFailType """ if not self.is_device_link_fail(): raise AttributeError("tag 'device_link_fail' not set") return self._value def get_device_link_success(self): """ (devices) Linked device Only call this if :meth:`is_device_link_success` is true. :rtype: DeviceLinkSuccessType """ if not self.is_device_link_success(): raise AttributeError("tag 'device_link_success' not set") return self._value def get_device_management_disabled(self): """ (devices) Disabled device management (deprecated, no longer logged) Only call this if :meth:`is_device_management_disabled` is true. :rtype: DeviceManagementDisabledType """ if not self.is_device_management_disabled(): raise AttributeError("tag 'device_management_disabled' not set") return self._value def get_device_management_enabled(self): """ (devices) Enabled device management (deprecated, no longer logged) Only call this if :meth:`is_device_management_enabled` is true. :rtype: DeviceManagementEnabledType """ if not self.is_device_management_enabled(): raise AttributeError("tag 'device_management_enabled' not set") return self._value def get_device_sync_backup_status_changed(self): """ (devices) Enabled/disabled backup for computer Only call this if :meth:`is_device_sync_backup_status_changed` is true. :rtype: DeviceSyncBackupStatusChangedType """ if not self.is_device_sync_backup_status_changed(): raise AttributeError("tag 'device_sync_backup_status_changed' not set") return self._value def get_device_unlink(self): """ (devices) Disconnected device Only call this if :meth:`is_device_unlink` is true. :rtype: DeviceUnlinkType """ if not self.is_device_unlink(): raise AttributeError("tag 'device_unlink' not set") return self._value def get_dropbox_passwords_exported(self): """ (devices) Exported passwords Only call this if :meth:`is_dropbox_passwords_exported` is true. :rtype: DropboxPasswordsExportedType """ if not self.is_dropbox_passwords_exported(): raise AttributeError("tag 'dropbox_passwords_exported' not set") return self._value def get_dropbox_passwords_new_device_enrolled(self): """ (devices) Enrolled new Dropbox Passwords device Only call this if :meth:`is_dropbox_passwords_new_device_enrolled` is true. :rtype: DropboxPasswordsNewDeviceEnrolledType """ if not self.is_dropbox_passwords_new_device_enrolled(): raise AttributeError("tag 'dropbox_passwords_new_device_enrolled' not set") return self._value def get_emm_refresh_auth_token(self): """ (devices) Refreshed auth token used for setting up EMM Only call this if :meth:`is_emm_refresh_auth_token` is true. :rtype: EmmRefreshAuthTokenType """ if not self.is_emm_refresh_auth_token(): raise AttributeError("tag 'emm_refresh_auth_token' not set") return self._value def get_external_drive_backup_eligibility_status_checked(self): """ (devices) Checked external drive backup eligibility status Only call this if :meth:`is_external_drive_backup_eligibility_status_checked` is true. :rtype: ExternalDriveBackupEligibilityStatusCheckedType """ if not self.is_external_drive_backup_eligibility_status_checked(): raise AttributeError("tag 'external_drive_backup_eligibility_status_checked' not set") return self._value def get_external_drive_backup_status_changed(self): """ (devices) Modified external drive backup Only call this if :meth:`is_external_drive_backup_status_changed` is true. :rtype: ExternalDriveBackupStatusChangedType """ if not self.is_external_drive_backup_status_changed(): raise AttributeError("tag 'external_drive_backup_status_changed' not set") return self._value def get_account_capture_change_availability(self): """ (domains) Granted/revoked option to enable account capture on team domains Only call this if :meth:`is_account_capture_change_availability` is true. :rtype: AccountCaptureChangeAvailabilityType """ if not self.is_account_capture_change_availability(): raise AttributeError("tag 'account_capture_change_availability' not set") return self._value def get_account_capture_migrate_account(self): """ (domains) Account-captured user migrated account to team Only call this if :meth:`is_account_capture_migrate_account` is true. :rtype: AccountCaptureMigrateAccountType """ if not self.is_account_capture_migrate_account(): raise AttributeError("tag 'account_capture_migrate_account' not set") return self._value def get_account_capture_notification_emails_sent(self): """ (domains) Sent account capture email to all unmanaged members Only call this if :meth:`is_account_capture_notification_emails_sent` is true. :rtype: AccountCaptureNotificationEmailsSentType """ if not self.is_account_capture_notification_emails_sent(): raise AttributeError("tag 'account_capture_notification_emails_sent' not set") return self._value def get_account_capture_relinquish_account(self): """ (domains) Account-captured user changed account email to personal email Only call this if :meth:`is_account_capture_relinquish_account` is true. :rtype: AccountCaptureRelinquishAccountType """ if not self.is_account_capture_relinquish_account(): raise AttributeError("tag 'account_capture_relinquish_account' not set") return self._value def get_disabled_domain_invites(self): """ (domains) Disabled domain invites (deprecated, no longer logged) Only call this if :meth:`is_disabled_domain_invites` is true. :rtype: DisabledDomainInvitesType """ if not self.is_disabled_domain_invites(): raise AttributeError("tag 'disabled_domain_invites' not set") return self._value def get_domain_invites_approve_request_to_join_team(self): """ (domains) Approved user's request to join team Only call this if :meth:`is_domain_invites_approve_request_to_join_team` is true. :rtype: DomainInvitesApproveRequestToJoinTeamType """ if not self.is_domain_invites_approve_request_to_join_team(): raise AttributeError("tag 'domain_invites_approve_request_to_join_team' not set") return self._value def get_domain_invites_decline_request_to_join_team(self): """ (domains) Declined user's request to join team Only call this if :meth:`is_domain_invites_decline_request_to_join_team` is true. :rtype: DomainInvitesDeclineRequestToJoinTeamType """ if not self.is_domain_invites_decline_request_to_join_team(): raise AttributeError("tag 'domain_invites_decline_request_to_join_team' not set") return self._value def get_domain_invites_email_existing_users(self): """ (domains) Sent domain invites to existing domain accounts (deprecated, no longer logged) Only call this if :meth:`is_domain_invites_email_existing_users` is true. :rtype: DomainInvitesEmailExistingUsersType """ if not self.is_domain_invites_email_existing_users(): raise AttributeError("tag 'domain_invites_email_existing_users' not set") return self._value def get_domain_invites_request_to_join_team(self): """ (domains) Requested to join team Only call this if :meth:`is_domain_invites_request_to_join_team` is true. :rtype: DomainInvitesRequestToJoinTeamType """ if not self.is_domain_invites_request_to_join_team(): raise AttributeError("tag 'domain_invites_request_to_join_team' not set") return self._value def get_domain_invites_set_invite_new_user_pref_to_no(self): """ (domains) Disabled "Automatically invite new users" (deprecated, no longer logged) Only call this if :meth:`is_domain_invites_set_invite_new_user_pref_to_no` is true. :rtype: DomainInvitesSetInviteNewUserPrefToNoType """ if not self.is_domain_invites_set_invite_new_user_pref_to_no(): raise AttributeError("tag 'domain_invites_set_invite_new_user_pref_to_no' not set") return self._value def get_domain_invites_set_invite_new_user_pref_to_yes(self): """ (domains) Enabled "Automatically invite new users" (deprecated, no longer logged) Only call this if :meth:`is_domain_invites_set_invite_new_user_pref_to_yes` is true. :rtype: DomainInvitesSetInviteNewUserPrefToYesType """ if not self.is_domain_invites_set_invite_new_user_pref_to_yes(): raise AttributeError("tag 'domain_invites_set_invite_new_user_pref_to_yes' not set") return self._value def get_domain_verification_add_domain_fail(self): """ (domains) Failed to verify team domain Only call this if :meth:`is_domain_verification_add_domain_fail` is true. :rtype: DomainVerificationAddDomainFailType """ if not self.is_domain_verification_add_domain_fail(): raise AttributeError("tag 'domain_verification_add_domain_fail' not set") return self._value def get_domain_verification_add_domain_success(self): """ (domains) Verified team domain Only call this if :meth:`is_domain_verification_add_domain_success` is true. :rtype: DomainVerificationAddDomainSuccessType """ if not self.is_domain_verification_add_domain_success(): raise AttributeError("tag 'domain_verification_add_domain_success' not set") return self._value def get_domain_verification_remove_domain(self): """ (domains) Removed domain from list of verified team domains Only call this if :meth:`is_domain_verification_remove_domain` is true. :rtype: DomainVerificationRemoveDomainType """ if not self.is_domain_verification_remove_domain(): raise AttributeError("tag 'domain_verification_remove_domain' not set") return self._value def get_enabled_domain_invites(self): """ (domains) Enabled domain invites (deprecated, no longer logged) Only call this if :meth:`is_enabled_domain_invites` is true. :rtype: EnabledDomainInvitesType """ if not self.is_enabled_domain_invites(): raise AttributeError("tag 'enabled_domain_invites' not set") return self._value def get_team_encryption_key_cancel_key_deletion(self): """ (encryption) Canceled team encryption key deletion Only call this if :meth:`is_team_encryption_key_cancel_key_deletion` is true. :rtype: TeamEncryptionKeyCancelKeyDeletionType """ if not self.is_team_encryption_key_cancel_key_deletion(): raise AttributeError("tag 'team_encryption_key_cancel_key_deletion' not set") return self._value def get_team_encryption_key_create_key(self): """ (encryption) Created team encryption key Only call this if :meth:`is_team_encryption_key_create_key` is true. :rtype: TeamEncryptionKeyCreateKeyType """ if not self.is_team_encryption_key_create_key(): raise AttributeError("tag 'team_encryption_key_create_key' not set") return self._value def get_team_encryption_key_delete_key(self): """ (encryption) Deleted team encryption key Only call this if :meth:`is_team_encryption_key_delete_key` is true. :rtype: TeamEncryptionKeyDeleteKeyType """ if not self.is_team_encryption_key_delete_key(): raise AttributeError("tag 'team_encryption_key_delete_key' not set") return self._value def get_team_encryption_key_disable_key(self): """ (encryption) Disabled team encryption key Only call this if :meth:`is_team_encryption_key_disable_key` is true. :rtype: TeamEncryptionKeyDisableKeyType """ if not self.is_team_encryption_key_disable_key(): raise AttributeError("tag 'team_encryption_key_disable_key' not set") return self._value def get_team_encryption_key_enable_key(self): """ (encryption) Enabled team encryption key Only call this if :meth:`is_team_encryption_key_enable_key` is true. :rtype: TeamEncryptionKeyEnableKeyType """ if not self.is_team_encryption_key_enable_key(): raise AttributeError("tag 'team_encryption_key_enable_key' not set") return self._value def get_team_encryption_key_rotate_key(self): """ (encryption) Rotated team encryption key (deprecated, no longer logged) Only call this if :meth:`is_team_encryption_key_rotate_key` is true. :rtype: TeamEncryptionKeyRotateKeyType """ if not self.is_team_encryption_key_rotate_key(): raise AttributeError("tag 'team_encryption_key_rotate_key' not set") return self._value def get_team_encryption_key_schedule_key_deletion(self): """ (encryption) Scheduled encryption key deletion Only call this if :meth:`is_team_encryption_key_schedule_key_deletion` is true. :rtype: TeamEncryptionKeyScheduleKeyDeletionType """ if not self.is_team_encryption_key_schedule_key_deletion(): raise AttributeError("tag 'team_encryption_key_schedule_key_deletion' not set") return self._value def get_apply_naming_convention(self): """ (file_operations) Applied naming convention Only call this if :meth:`is_apply_naming_convention` is true. :rtype: ApplyNamingConventionType """ if not self.is_apply_naming_convention(): raise AttributeError("tag 'apply_naming_convention' not set") return self._value def get_create_folder(self): """ (file_operations) Created folders (deprecated, no longer logged) Only call this if :meth:`is_create_folder` is true. :rtype: CreateFolderType """ if not self.is_create_folder(): raise AttributeError("tag 'create_folder' not set") return self._value def get_file_add(self): """ (file_operations) Added files and/or folders Only call this if :meth:`is_file_add` is true. :rtype: FileAddType """ if not self.is_file_add(): raise AttributeError("tag 'file_add' not set") return self._value def get_file_add_from_automation(self): """ (file_operations) Added files and/or folders from automation Only call this if :meth:`is_file_add_from_automation` is true. :rtype: FileAddFromAutomationType """ if not self.is_file_add_from_automation(): raise AttributeError("tag 'file_add_from_automation' not set") return self._value def get_file_copy(self): """ (file_operations) Copied files and/or folders Only call this if :meth:`is_file_copy` is true. :rtype: FileCopyType """ if not self.is_file_copy(): raise AttributeError("tag 'file_copy' not set") return self._value def get_file_delete(self): """ (file_operations) Deleted files and/or folders Only call this if :meth:`is_file_delete` is true. :rtype: FileDeleteType """ if not self.is_file_delete(): raise AttributeError("tag 'file_delete' not set") return self._value def get_file_download(self): """ (file_operations) Downloaded files and/or folders Only call this if :meth:`is_file_download` is true. :rtype: FileDownloadType """ if not self.is_file_download(): raise AttributeError("tag 'file_download' not set") return self._value def get_file_edit(self): """ (file_operations) Edited files Only call this if :meth:`is_file_edit` is true. :rtype: FileEditType """ if not self.is_file_edit(): raise AttributeError("tag 'file_edit' not set") return self._value def get_file_get_copy_reference(self): """ (file_operations) Created copy reference to file/folder Only call this if :meth:`is_file_get_copy_reference` is true. :rtype: FileGetCopyReferenceType """ if not self.is_file_get_copy_reference(): raise AttributeError("tag 'file_get_copy_reference' not set") return self._value def get_file_locking_lock_status_changed(self): """ (file_operations) Locked/unlocked editing for a file Only call this if :meth:`is_file_locking_lock_status_changed` is true. :rtype: FileLockingLockStatusChangedType """ if not self.is_file_locking_lock_status_changed(): raise AttributeError("tag 'file_locking_lock_status_changed' not set") return self._value def get_file_move(self): """ (file_operations) Moved files and/or folders Only call this if :meth:`is_file_move` is true. :rtype: FileMoveType """ if not self.is_file_move(): raise AttributeError("tag 'file_move' not set") return self._value def get_file_permanently_delete(self): """ (file_operations) Permanently deleted files and/or folders Only call this if :meth:`is_file_permanently_delete` is true. :rtype: FilePermanentlyDeleteType """ if not self.is_file_permanently_delete(): raise AttributeError("tag 'file_permanently_delete' not set") return self._value def get_file_preview(self): """ (file_operations) Previewed files and/or folders Only call this if :meth:`is_file_preview` is true. :rtype: FilePreviewType """ if not self.is_file_preview(): raise AttributeError("tag 'file_preview' not set") return self._value def get_file_rename(self): """ (file_operations) Renamed files and/or folders Only call this if :meth:`is_file_rename` is true. :rtype: FileRenameType """ if not self.is_file_rename(): raise AttributeError("tag 'file_rename' not set") return self._value def get_file_restore(self): """ (file_operations) Restored deleted files and/or folders Only call this if :meth:`is_file_restore` is true. :rtype: FileRestoreType """ if not self.is_file_restore(): raise AttributeError("tag 'file_restore' not set") return self._value def get_file_revert(self): """ (file_operations) Reverted files to previous version Only call this if :meth:`is_file_revert` is true. :rtype: FileRevertType """ if not self.is_file_revert(): raise AttributeError("tag 'file_revert' not set") return self._value def get_file_rollback_changes(self): """ (file_operations) Rolled back file actions Only call this if :meth:`is_file_rollback_changes` is true. :rtype: FileRollbackChangesType """ if not self.is_file_rollback_changes(): raise AttributeError("tag 'file_rollback_changes' not set") return self._value def get_file_save_copy_reference(self): """ (file_operations) Saved file/folder using copy reference Only call this if :meth:`is_file_save_copy_reference` is true. :rtype: FileSaveCopyReferenceType """ if not self.is_file_save_copy_reference(): raise AttributeError("tag 'file_save_copy_reference' not set") return self._value def get_folder_overview_description_changed(self): """ (file_operations) Updated folder overview Only call this if :meth:`is_folder_overview_description_changed` is true. :rtype: FolderOverviewDescriptionChangedType """ if not self.is_folder_overview_description_changed(): raise AttributeError("tag 'folder_overview_description_changed' not set") return self._value def get_folder_overview_item_pinned(self): """ (file_operations) Pinned item to folder overview Only call this if :meth:`is_folder_overview_item_pinned` is true. :rtype: FolderOverviewItemPinnedType """ if not self.is_folder_overview_item_pinned(): raise AttributeError("tag 'folder_overview_item_pinned' not set") return self._value def get_folder_overview_item_unpinned(self): """ (file_operations) Unpinned item from folder overview Only call this if :meth:`is_folder_overview_item_unpinned` is true. :rtype: FolderOverviewItemUnpinnedType """ if not self.is_folder_overview_item_unpinned(): raise AttributeError("tag 'folder_overview_item_unpinned' not set") return self._value def get_object_label_added(self): """ (file_operations) Added a label Only call this if :meth:`is_object_label_added` is true. :rtype: ObjectLabelAddedType """ if not self.is_object_label_added(): raise AttributeError("tag 'object_label_added' not set") return self._value def get_object_label_removed(self): """ (file_operations) Removed a label Only call this if :meth:`is_object_label_removed` is true. :rtype: ObjectLabelRemovedType """ if not self.is_object_label_removed(): raise AttributeError("tag 'object_label_removed' not set") return self._value def get_object_label_updated_value(self): """ (file_operations) Updated a label's value Only call this if :meth:`is_object_label_updated_value` is true. :rtype: ObjectLabelUpdatedValueType """ if not self.is_object_label_updated_value(): raise AttributeError("tag 'object_label_updated_value' not set") return self._value def get_organize_folder_with_tidy(self): """ (file_operations) Organized a folder with multi-file organize Only call this if :meth:`is_organize_folder_with_tidy` is true. :rtype: OrganizeFolderWithTidyType """ if not self.is_organize_folder_with_tidy(): raise AttributeError("tag 'organize_folder_with_tidy' not set") return self._value def get_replay_file_delete(self): """ (file_operations) Deleted files in Replay Only call this if :meth:`is_replay_file_delete` is true. :rtype: ReplayFileDeleteType """ if not self.is_replay_file_delete(): raise AttributeError("tag 'replay_file_delete' not set") return self._value def get_rewind_folder(self): """ (file_operations) Rewound a folder Only call this if :meth:`is_rewind_folder` is true. :rtype: RewindFolderType """ if not self.is_rewind_folder(): raise AttributeError("tag 'rewind_folder' not set") return self._value def get_undo_naming_convention(self): """ (file_operations) Reverted naming convention Only call this if :meth:`is_undo_naming_convention` is true. :rtype: UndoNamingConventionType """ if not self.is_undo_naming_convention(): raise AttributeError("tag 'undo_naming_convention' not set") return self._value def get_undo_organize_folder_with_tidy(self): """ (file_operations) Removed multi-file organize Only call this if :meth:`is_undo_organize_folder_with_tidy` is true. :rtype: UndoOrganizeFolderWithTidyType """ if not self.is_undo_organize_folder_with_tidy(): raise AttributeError("tag 'undo_organize_folder_with_tidy' not set") return self._value def get_user_tags_added(self): """ (file_operations) Tagged a file Only call this if :meth:`is_user_tags_added` is true. :rtype: UserTagsAddedType """ if not self.is_user_tags_added(): raise AttributeError("tag 'user_tags_added' not set") return self._value def get_user_tags_removed(self): """ (file_operations) Removed tags Only call this if :meth:`is_user_tags_removed` is true. :rtype: UserTagsRemovedType """ if not self.is_user_tags_removed(): raise AttributeError("tag 'user_tags_removed' not set") return self._value def get_email_ingest_receive_file(self): """ (file_requests) Received files via Email to Dropbox Only call this if :meth:`is_email_ingest_receive_file` is true. :rtype: EmailIngestReceiveFileType """ if not self.is_email_ingest_receive_file(): raise AttributeError("tag 'email_ingest_receive_file' not set") return self._value def get_file_request_change(self): """ (file_requests) Changed file request Only call this if :meth:`is_file_request_change` is true. :rtype: FileRequestChangeType """ if not self.is_file_request_change(): raise AttributeError("tag 'file_request_change' not set") return self._value def get_file_request_close(self): """ (file_requests) Closed file request Only call this if :meth:`is_file_request_close` is true. :rtype: FileRequestCloseType """ if not self.is_file_request_close(): raise AttributeError("tag 'file_request_close' not set") return self._value def get_file_request_create(self): """ (file_requests) Created file request Only call this if :meth:`is_file_request_create` is true. :rtype: FileRequestCreateType """ if not self.is_file_request_create(): raise AttributeError("tag 'file_request_create' not set") return self._value def get_file_request_delete(self): """ (file_requests) Delete file request Only call this if :meth:`is_file_request_delete` is true. :rtype: FileRequestDeleteType """ if not self.is_file_request_delete(): raise AttributeError("tag 'file_request_delete' not set") return self._value def get_file_request_receive_file(self): """ (file_requests) Received files for file request Only call this if :meth:`is_file_request_receive_file` is true. :rtype: FileRequestReceiveFileType """ if not self.is_file_request_receive_file(): raise AttributeError("tag 'file_request_receive_file' not set") return self._value def get_group_add_external_id(self): """ (groups) Added external ID for group Only call this if :meth:`is_group_add_external_id` is true. :rtype: GroupAddExternalIdType """ if not self.is_group_add_external_id(): raise AttributeError("tag 'group_add_external_id' not set") return self._value def get_group_add_member(self): """ (groups) Added team members to group Only call this if :meth:`is_group_add_member` is true. :rtype: GroupAddMemberType """ if not self.is_group_add_member(): raise AttributeError("tag 'group_add_member' not set") return self._value def get_group_change_external_id(self): """ (groups) Changed external ID for group Only call this if :meth:`is_group_change_external_id` is true. :rtype: GroupChangeExternalIdType """ if not self.is_group_change_external_id(): raise AttributeError("tag 'group_change_external_id' not set") return self._value def get_group_change_management_type(self): """ (groups) Changed group management type Only call this if :meth:`is_group_change_management_type` is true. :rtype: GroupChangeManagementTypeType """ if not self.is_group_change_management_type(): raise AttributeError("tag 'group_change_management_type' not set") return self._value def get_group_change_member_role(self): """ (groups) Changed manager permissions of group member Only call this if :meth:`is_group_change_member_role` is true. :rtype: GroupChangeMemberRoleType """ if not self.is_group_change_member_role(): raise AttributeError("tag 'group_change_member_role' not set") return self._value def get_group_create(self): """ (groups) Created group Only call this if :meth:`is_group_create` is true. :rtype: GroupCreateType """ if not self.is_group_create(): raise AttributeError("tag 'group_create' not set") return self._value def get_group_delete(self): """ (groups) Deleted group Only call this if :meth:`is_group_delete` is true. :rtype: GroupDeleteType """ if not self.is_group_delete(): raise AttributeError("tag 'group_delete' not set") return self._value def get_group_description_updated(self): """ (groups) Updated group (deprecated, no longer logged) Only call this if :meth:`is_group_description_updated` is true. :rtype: GroupDescriptionUpdatedType """ if not self.is_group_description_updated(): raise AttributeError("tag 'group_description_updated' not set") return self._value def get_group_join_policy_updated(self): """ (groups) Updated group join policy (deprecated, no longer logged) Only call this if :meth:`is_group_join_policy_updated` is true. :rtype: GroupJoinPolicyUpdatedType """ if not self.is_group_join_policy_updated(): raise AttributeError("tag 'group_join_policy_updated' not set") return self._value def get_group_moved(self): """ (groups) Moved group (deprecated, no longer logged) Only call this if :meth:`is_group_moved` is true. :rtype: GroupMovedType """ if not self.is_group_moved(): raise AttributeError("tag 'group_moved' not set") return self._value def get_group_remove_external_id(self): """ (groups) Removed external ID for group Only call this if :meth:`is_group_remove_external_id` is true. :rtype: GroupRemoveExternalIdType """ if not self.is_group_remove_external_id(): raise AttributeError("tag 'group_remove_external_id' not set") return self._value def get_group_remove_member(self): """ (groups) Removed team members from group Only call this if :meth:`is_group_remove_member` is true. :rtype: GroupRemoveMemberType """ if not self.is_group_remove_member(): raise AttributeError("tag 'group_remove_member' not set") return self._value def get_group_rename(self): """ (groups) Renamed group Only call this if :meth:`is_group_rename` is true. :rtype: GroupRenameType """ if not self.is_group_rename(): raise AttributeError("tag 'group_rename' not set") return self._value def get_account_lock_or_unlocked(self): """ (logins) Unlocked/locked account after failed sign in attempts Only call this if :meth:`is_account_lock_or_unlocked` is true. :rtype: AccountLockOrUnlockedType """ if not self.is_account_lock_or_unlocked(): raise AttributeError("tag 'account_lock_or_unlocked' not set") return self._value def get_emm_error(self): """ (logins) Failed to sign in via EMM (deprecated, replaced by 'Failed to sign in') Only call this if :meth:`is_emm_error` is true. :rtype: EmmErrorType """ if not self.is_emm_error(): raise AttributeError("tag 'emm_error' not set") return self._value def get_guest_admin_signed_in_via_trusted_teams(self): """ (logins) Started trusted team admin session Only call this if :meth:`is_guest_admin_signed_in_via_trusted_teams` is true. :rtype: GuestAdminSignedInViaTrustedTeamsType """ if not self.is_guest_admin_signed_in_via_trusted_teams(): raise AttributeError("tag 'guest_admin_signed_in_via_trusted_teams' not set") return self._value def get_guest_admin_signed_out_via_trusted_teams(self): """ (logins) Ended trusted team admin session Only call this if :meth:`is_guest_admin_signed_out_via_trusted_teams` is true. :rtype: GuestAdminSignedOutViaTrustedTeamsType """ if not self.is_guest_admin_signed_out_via_trusted_teams(): raise AttributeError("tag 'guest_admin_signed_out_via_trusted_teams' not set") return self._value def get_login_fail(self): """ (logins) Failed to sign in Only call this if :meth:`is_login_fail` is true. :rtype: LoginFailType """ if not self.is_login_fail(): raise AttributeError("tag 'login_fail' not set") return self._value def get_login_success(self): """ (logins) Signed in Only call this if :meth:`is_login_success` is true. :rtype: LoginSuccessType """ if not self.is_login_success(): raise AttributeError("tag 'login_success' not set") return self._value def get_logout(self): """ (logins) Signed out Only call this if :meth:`is_logout` is true. :rtype: LogoutType """ if not self.is_logout(): raise AttributeError("tag 'logout' not set") return self._value def get_reseller_support_session_end(self): """ (logins) Ended reseller support session Only call this if :meth:`is_reseller_support_session_end` is true. :rtype: ResellerSupportSessionEndType """ if not self.is_reseller_support_session_end(): raise AttributeError("tag 'reseller_support_session_end' not set") return self._value def get_reseller_support_session_start(self): """ (logins) Started reseller support session Only call this if :meth:`is_reseller_support_session_start` is true. :rtype: ResellerSupportSessionStartType """ if not self.is_reseller_support_session_start(): raise AttributeError("tag 'reseller_support_session_start' not set") return self._value def get_sign_in_as_session_end(self): """ (logins) Ended admin sign-in-as session Only call this if :meth:`is_sign_in_as_session_end` is true. :rtype: SignInAsSessionEndType """ if not self.is_sign_in_as_session_end(): raise AttributeError("tag 'sign_in_as_session_end' not set") return self._value def get_sign_in_as_session_start(self): """ (logins) Started admin sign-in-as session Only call this if :meth:`is_sign_in_as_session_start` is true. :rtype: SignInAsSessionStartType """ if not self.is_sign_in_as_session_start(): raise AttributeError("tag 'sign_in_as_session_start' not set") return self._value def get_sso_error(self): """ (logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in') Only call this if :meth:`is_sso_error` is true. :rtype: SsoErrorType """ if not self.is_sso_error(): raise AttributeError("tag 'sso_error' not set") return self._value def get_backup_admin_invitation_sent(self): """ (members) Invited members to activate Backup Only call this if :meth:`is_backup_admin_invitation_sent` is true. :rtype: BackupAdminInvitationSentType """ if not self.is_backup_admin_invitation_sent(): raise AttributeError("tag 'backup_admin_invitation_sent' not set") return self._value def get_backup_invitation_opened(self): """ (members) Opened Backup invite Only call this if :meth:`is_backup_invitation_opened` is true. :rtype: BackupInvitationOpenedType """ if not self.is_backup_invitation_opened(): raise AttributeError("tag 'backup_invitation_opened' not set") return self._value def get_create_team_invite_link(self): """ (members) Created team invite link Only call this if :meth:`is_create_team_invite_link` is true. :rtype: CreateTeamInviteLinkType """ if not self.is_create_team_invite_link(): raise AttributeError("tag 'create_team_invite_link' not set") return self._value def get_delete_team_invite_link(self): """ (members) Deleted team invite link Only call this if :meth:`is_delete_team_invite_link` is true. :rtype: DeleteTeamInviteLinkType """ if not self.is_delete_team_invite_link(): raise AttributeError("tag 'delete_team_invite_link' not set") return self._value def get_member_add_external_id(self): """ (members) Added an external ID for team member Only call this if :meth:`is_member_add_external_id` is true. :rtype: MemberAddExternalIdType """ if not self.is_member_add_external_id(): raise AttributeError("tag 'member_add_external_id' not set") return self._value def get_member_add_name(self): """ (members) Added team member name Only call this if :meth:`is_member_add_name` is true. :rtype: MemberAddNameType """ if not self.is_member_add_name(): raise AttributeError("tag 'member_add_name' not set") return self._value def get_member_change_admin_role(self): """ (members) Changed team member admin role Only call this if :meth:`is_member_change_admin_role` is true. :rtype: MemberChangeAdminRoleType """ if not self.is_member_change_admin_role(): raise AttributeError("tag 'member_change_admin_role' not set") return self._value def get_member_change_email(self): """ (members) Changed team member email Only call this if :meth:`is_member_change_email` is true. :rtype: MemberChangeEmailType """ if not self.is_member_change_email(): raise AttributeError("tag 'member_change_email' not set") return self._value def get_member_change_external_id(self): """ (members) Changed the external ID for team member Only call this if :meth:`is_member_change_external_id` is true. :rtype: MemberChangeExternalIdType """ if not self.is_member_change_external_id(): raise AttributeError("tag 'member_change_external_id' not set") return self._value def get_member_change_membership_type(self): """ (members) Changed membership type (limited/full) of member (deprecated, no longer logged) Only call this if :meth:`is_member_change_membership_type` is true. :rtype: MemberChangeMembershipTypeType """ if not self.is_member_change_membership_type(): raise AttributeError("tag 'member_change_membership_type' not set") return self._value def get_member_change_name(self): """ (members) Changed team member name Only call this if :meth:`is_member_change_name` is true. :rtype: MemberChangeNameType """ if not self.is_member_change_name(): raise AttributeError("tag 'member_change_name' not set") return self._value def get_member_change_reseller_role(self): """ (members) Changed team member reseller role Only call this if :meth:`is_member_change_reseller_role` is true. :rtype: MemberChangeResellerRoleType """ if not self.is_member_change_reseller_role(): raise AttributeError("tag 'member_change_reseller_role' not set") return self._value def get_member_change_status(self): """ (members) Changed member status (invited, joined, suspended, etc.) Only call this if :meth:`is_member_change_status` is true. :rtype: MemberChangeStatusType """ if not self.is_member_change_status(): raise AttributeError("tag 'member_change_status' not set") return self._value def get_member_delete_manual_contacts(self): """ (members) Cleared manually added contacts Only call this if :meth:`is_member_delete_manual_contacts` is true. :rtype: MemberDeleteManualContactsType """ if not self.is_member_delete_manual_contacts(): raise AttributeError("tag 'member_delete_manual_contacts' not set") return self._value def get_member_delete_profile_photo(self): """ (members) Deleted team member profile photo Only call this if :meth:`is_member_delete_profile_photo` is true. :rtype: MemberDeleteProfilePhotoType """ if not self.is_member_delete_profile_photo(): raise AttributeError("tag 'member_delete_profile_photo' not set") return self._value def get_member_permanently_delete_account_contents(self): """ (members) Permanently deleted contents of deleted team member account Only call this if :meth:`is_member_permanently_delete_account_contents` is true. :rtype: MemberPermanentlyDeleteAccountContentsType """ if not self.is_member_permanently_delete_account_contents(): raise AttributeError("tag 'member_permanently_delete_account_contents' not set") return self._value def get_member_remove_external_id(self): """ (members) Removed the external ID for team member Only call this if :meth:`is_member_remove_external_id` is true. :rtype: MemberRemoveExternalIdType """ if not self.is_member_remove_external_id(): raise AttributeError("tag 'member_remove_external_id' not set") return self._value def get_member_set_profile_photo(self): """ (members) Set team member profile photo Only call this if :meth:`is_member_set_profile_photo` is true. :rtype: MemberSetProfilePhotoType """ if not self.is_member_set_profile_photo(): raise AttributeError("tag 'member_set_profile_photo' not set") return self._value def get_member_space_limits_add_custom_quota(self): """ (members) Set custom member space limit Only call this if :meth:`is_member_space_limits_add_custom_quota` is true. :rtype: MemberSpaceLimitsAddCustomQuotaType """ if not self.is_member_space_limits_add_custom_quota(): raise AttributeError("tag 'member_space_limits_add_custom_quota' not set") return self._value def get_member_space_limits_change_custom_quota(self): """ (members) Changed custom member space limit Only call this if :meth:`is_member_space_limits_change_custom_quota` is true. :rtype: MemberSpaceLimitsChangeCustomQuotaType """ if not self.is_member_space_limits_change_custom_quota(): raise AttributeError("tag 'member_space_limits_change_custom_quota' not set") return self._value def get_member_space_limits_change_status(self): """ (members) Changed space limit status Only call this if :meth:`is_member_space_limits_change_status` is true. :rtype: MemberSpaceLimitsChangeStatusType """ if not self.is_member_space_limits_change_status(): raise AttributeError("tag 'member_space_limits_change_status' not set") return self._value def get_member_space_limits_remove_custom_quota(self): """ (members) Removed custom member space limit Only call this if :meth:`is_member_space_limits_remove_custom_quota` is true. :rtype: MemberSpaceLimitsRemoveCustomQuotaType """ if not self.is_member_space_limits_remove_custom_quota(): raise AttributeError("tag 'member_space_limits_remove_custom_quota' not set") return self._value def get_member_suggest(self): """ (members) Suggested person to add to team Only call this if :meth:`is_member_suggest` is true. :rtype: MemberSuggestType """ if not self.is_member_suggest(): raise AttributeError("tag 'member_suggest' not set") return self._value def get_member_transfer_account_contents(self): """ (members) Transferred contents of deleted member account to another member Only call this if :meth:`is_member_transfer_account_contents` is true. :rtype: MemberTransferAccountContentsType """ if not self.is_member_transfer_account_contents(): raise AttributeError("tag 'member_transfer_account_contents' not set") return self._value def get_pending_secondary_email_added(self): """ (members) Added pending secondary email Only call this if :meth:`is_pending_secondary_email_added` is true. :rtype: PendingSecondaryEmailAddedType """ if not self.is_pending_secondary_email_added(): raise AttributeError("tag 'pending_secondary_email_added' not set") return self._value def get_secondary_email_deleted(self): """ (members) Deleted secondary email Only call this if :meth:`is_secondary_email_deleted` is true. :rtype: SecondaryEmailDeletedType """ if not self.is_secondary_email_deleted(): raise AttributeError("tag 'secondary_email_deleted' not set") return self._value def get_secondary_email_verified(self): """ (members) Verified secondary email Only call this if :meth:`is_secondary_email_verified` is true. :rtype: SecondaryEmailVerifiedType """ if not self.is_secondary_email_verified(): raise AttributeError("tag 'secondary_email_verified' not set") return self._value def get_secondary_mails_policy_changed(self): """ (members) Secondary mails policy changed Only call this if :meth:`is_secondary_mails_policy_changed` is true. :rtype: SecondaryMailsPolicyChangedType """ if not self.is_secondary_mails_policy_changed(): raise AttributeError("tag 'secondary_mails_policy_changed' not set") return self._value def get_binder_add_page(self): """ (paper) Added Binder page (deprecated, replaced by 'Edited files') Only call this if :meth:`is_binder_add_page` is true. :rtype: BinderAddPageType """ if not self.is_binder_add_page(): raise AttributeError("tag 'binder_add_page' not set") return self._value def get_binder_add_section(self): """ (paper) Added Binder section (deprecated, replaced by 'Edited files') Only call this if :meth:`is_binder_add_section` is true. :rtype: BinderAddSectionType """ if not self.is_binder_add_section(): raise AttributeError("tag 'binder_add_section' not set") return self._value def get_binder_remove_page(self): """ (paper) Removed Binder page (deprecated, replaced by 'Edited files') Only call this if :meth:`is_binder_remove_page` is true. :rtype: BinderRemovePageType """ if not self.is_binder_remove_page(): raise AttributeError("tag 'binder_remove_page' not set") return self._value def get_binder_remove_section(self): """ (paper) Removed Binder section (deprecated, replaced by 'Edited files') Only call this if :meth:`is_binder_remove_section` is true. :rtype: BinderRemoveSectionType """ if not self.is_binder_remove_section(): raise AttributeError("tag 'binder_remove_section' not set") return self._value def get_binder_rename_page(self): """ (paper) Renamed Binder page (deprecated, replaced by 'Edited files') Only call this if :meth:`is_binder_rename_page` is true. :rtype: BinderRenamePageType """ if not self.is_binder_rename_page(): raise AttributeError("tag 'binder_rename_page' not set") return self._value def get_binder_rename_section(self): """ (paper) Renamed Binder section (deprecated, replaced by 'Edited files') Only call this if :meth:`is_binder_rename_section` is true. :rtype: BinderRenameSectionType """ if not self.is_binder_rename_section(): raise AttributeError("tag 'binder_rename_section' not set") return self._value def get_binder_reorder_page(self): """ (paper) Reordered Binder page (deprecated, replaced by 'Edited files') Only call this if :meth:`is_binder_reorder_page` is true. :rtype: BinderReorderPageType """ if not self.is_binder_reorder_page(): raise AttributeError("tag 'binder_reorder_page' not set") return self._value def get_binder_reorder_section(self): """ (paper) Reordered Binder section (deprecated, replaced by 'Edited files') Only call this if :meth:`is_binder_reorder_section` is true. :rtype: BinderReorderSectionType """ if not self.is_binder_reorder_section(): raise AttributeError("tag 'binder_reorder_section' not set") return self._value def get_paper_content_add_member(self): """ (paper) Added users and/or groups to Paper doc/folder Only call this if :meth:`is_paper_content_add_member` is true. :rtype: PaperContentAddMemberType """ if not self.is_paper_content_add_member(): raise AttributeError("tag 'paper_content_add_member' not set") return self._value def get_paper_content_add_to_folder(self): """ (paper) Added Paper doc/folder to folder Only call this if :meth:`is_paper_content_add_to_folder` is true. :rtype: PaperContentAddToFolderType """ if not self.is_paper_content_add_to_folder(): raise AttributeError("tag 'paper_content_add_to_folder' not set") return self._value def get_paper_content_archive(self): """ (paper) Archived Paper doc/folder Only call this if :meth:`is_paper_content_archive` is true. :rtype: PaperContentArchiveType """ if not self.is_paper_content_archive(): raise AttributeError("tag 'paper_content_archive' not set") return self._value def get_paper_content_create(self): """ (paper) Created Paper doc/folder Only call this if :meth:`is_paper_content_create` is true. :rtype: PaperContentCreateType """ if not self.is_paper_content_create(): raise AttributeError("tag 'paper_content_create' not set") return self._value def get_paper_content_permanently_delete(self): """ (paper) Permanently deleted Paper doc/folder Only call this if :meth:`is_paper_content_permanently_delete` is true. :rtype: PaperContentPermanentlyDeleteType """ if not self.is_paper_content_permanently_delete(): raise AttributeError("tag 'paper_content_permanently_delete' not set") return self._value def get_paper_content_remove_from_folder(self): """ (paper) Removed Paper doc/folder from folder Only call this if :meth:`is_paper_content_remove_from_folder` is true. :rtype: PaperContentRemoveFromFolderType """ if not self.is_paper_content_remove_from_folder(): raise AttributeError("tag 'paper_content_remove_from_folder' not set") return self._value def get_paper_content_remove_member(self): """ (paper) Removed users and/or groups from Paper doc/folder Only call this if :meth:`is_paper_content_remove_member` is true. :rtype: PaperContentRemoveMemberType """ if not self.is_paper_content_remove_member(): raise AttributeError("tag 'paper_content_remove_member' not set") return self._value def get_paper_content_rename(self): """ (paper) Renamed Paper doc/folder Only call this if :meth:`is_paper_content_rename` is true. :rtype: PaperContentRenameType """ if not self.is_paper_content_rename(): raise AttributeError("tag 'paper_content_rename' not set") return self._value def get_paper_content_restore(self): """ (paper) Restored archived Paper doc/folder Only call this if :meth:`is_paper_content_restore` is true. :rtype: PaperContentRestoreType """ if not self.is_paper_content_restore(): raise AttributeError("tag 'paper_content_restore' not set") return self._value def get_paper_doc_add_comment(self): """ (paper) Added Paper doc comment Only call this if :meth:`is_paper_doc_add_comment` is true. :rtype: PaperDocAddCommentType """ if not self.is_paper_doc_add_comment(): raise AttributeError("tag 'paper_doc_add_comment' not set") return self._value def get_paper_doc_change_member_role(self): """ (paper) Changed member permissions for Paper doc Only call this if :meth:`is_paper_doc_change_member_role` is true. :rtype: PaperDocChangeMemberRoleType """ if not self.is_paper_doc_change_member_role(): raise AttributeError("tag 'paper_doc_change_member_role' not set") return self._value def get_paper_doc_change_sharing_policy(self): """ (paper) Changed sharing setting for Paper doc Only call this if :meth:`is_paper_doc_change_sharing_policy` is true. :rtype: PaperDocChangeSharingPolicyType """ if not self.is_paper_doc_change_sharing_policy(): raise AttributeError("tag 'paper_doc_change_sharing_policy' not set") return self._value def get_paper_doc_change_subscription(self): """ (paper) Followed/unfollowed Paper doc Only call this if :meth:`is_paper_doc_change_subscription` is true. :rtype: PaperDocChangeSubscriptionType """ if not self.is_paper_doc_change_subscription(): raise AttributeError("tag 'paper_doc_change_subscription' not set") return self._value def get_paper_doc_deleted(self): """ (paper) Archived Paper doc (deprecated, no longer logged) Only call this if :meth:`is_paper_doc_deleted` is true. :rtype: PaperDocDeletedType """ if not self.is_paper_doc_deleted(): raise AttributeError("tag 'paper_doc_deleted' not set") return self._value def get_paper_doc_delete_comment(self): """ (paper) Deleted Paper doc comment Only call this if :meth:`is_paper_doc_delete_comment` is true. :rtype: PaperDocDeleteCommentType """ if not self.is_paper_doc_delete_comment(): raise AttributeError("tag 'paper_doc_delete_comment' not set") return self._value def get_paper_doc_download(self): """ (paper) Downloaded Paper doc in specific format Only call this if :meth:`is_paper_doc_download` is true. :rtype: PaperDocDownloadType """ if not self.is_paper_doc_download(): raise AttributeError("tag 'paper_doc_download' not set") return self._value def get_paper_doc_edit(self): """ (paper) Edited Paper doc Only call this if :meth:`is_paper_doc_edit` is true. :rtype: PaperDocEditType """ if not self.is_paper_doc_edit(): raise AttributeError("tag 'paper_doc_edit' not set") return self._value def get_paper_doc_edit_comment(self): """ (paper) Edited Paper doc comment Only call this if :meth:`is_paper_doc_edit_comment` is true. :rtype: PaperDocEditCommentType """ if not self.is_paper_doc_edit_comment(): raise AttributeError("tag 'paper_doc_edit_comment' not set") return self._value def get_paper_doc_followed(self): """ (paper) Followed Paper doc (deprecated, replaced by 'Followed/unfollowed Paper doc') Only call this if :meth:`is_paper_doc_followed` is true. :rtype: PaperDocFollowedType """ if not self.is_paper_doc_followed(): raise AttributeError("tag 'paper_doc_followed' not set") return self._value def get_paper_doc_mention(self): """ (paper) Mentioned user in Paper doc Only call this if :meth:`is_paper_doc_mention` is true. :rtype: PaperDocMentionType """ if not self.is_paper_doc_mention(): raise AttributeError("tag 'paper_doc_mention' not set") return self._value def get_paper_doc_ownership_changed(self): """ (paper) Transferred ownership of Paper doc Only call this if :meth:`is_paper_doc_ownership_changed` is true. :rtype: PaperDocOwnershipChangedType """ if not self.is_paper_doc_ownership_changed(): raise AttributeError("tag 'paper_doc_ownership_changed' not set") return self._value def get_paper_doc_request_access(self): """ (paper) Requested access to Paper doc Only call this if :meth:`is_paper_doc_request_access` is true. :rtype: PaperDocRequestAccessType """ if not self.is_paper_doc_request_access(): raise AttributeError("tag 'paper_doc_request_access' not set") return self._value def get_paper_doc_resolve_comment(self): """ (paper) Resolved Paper doc comment Only call this if :meth:`is_paper_doc_resolve_comment` is true. :rtype: PaperDocResolveCommentType """ if not self.is_paper_doc_resolve_comment(): raise AttributeError("tag 'paper_doc_resolve_comment' not set") return self._value def get_paper_doc_revert(self): """ (paper) Restored Paper doc to previous version Only call this if :meth:`is_paper_doc_revert` is true. :rtype: PaperDocRevertType """ if not self.is_paper_doc_revert(): raise AttributeError("tag 'paper_doc_revert' not set") return self._value def get_paper_doc_slack_share(self): """ (paper) Shared Paper doc via Slack Only call this if :meth:`is_paper_doc_slack_share` is true. :rtype: PaperDocSlackShareType """ if not self.is_paper_doc_slack_share(): raise AttributeError("tag 'paper_doc_slack_share' not set") return self._value def get_paper_doc_team_invite(self): """ (paper) Shared Paper doc with users and/or groups (deprecated, no longer logged) Only call this if :meth:`is_paper_doc_team_invite` is true. :rtype: PaperDocTeamInviteType """ if not self.is_paper_doc_team_invite(): raise AttributeError("tag 'paper_doc_team_invite' not set") return self._value def get_paper_doc_trashed(self): """ (paper) Deleted Paper doc Only call this if :meth:`is_paper_doc_trashed` is true. :rtype: PaperDocTrashedType """ if not self.is_paper_doc_trashed(): raise AttributeError("tag 'paper_doc_trashed' not set") return self._value def get_paper_doc_unresolve_comment(self): """ (paper) Unresolved Paper doc comment Only call this if :meth:`is_paper_doc_unresolve_comment` is true. :rtype: PaperDocUnresolveCommentType """ if not self.is_paper_doc_unresolve_comment(): raise AttributeError("tag 'paper_doc_unresolve_comment' not set") return self._value def get_paper_doc_untrashed(self): """ (paper) Restored Paper doc Only call this if :meth:`is_paper_doc_untrashed` is true. :rtype: PaperDocUntrashedType """ if not self.is_paper_doc_untrashed(): raise AttributeError("tag 'paper_doc_untrashed' not set") return self._value def get_paper_doc_view(self): """ (paper) Viewed Paper doc Only call this if :meth:`is_paper_doc_view` is true. :rtype: PaperDocViewType """ if not self.is_paper_doc_view(): raise AttributeError("tag 'paper_doc_view' not set") return self._value def get_paper_external_view_allow(self): """ (paper) Changed Paper external sharing setting to anyone (deprecated, no longer logged) Only call this if :meth:`is_paper_external_view_allow` is true. :rtype: PaperExternalViewAllowType """ if not self.is_paper_external_view_allow(): raise AttributeError("tag 'paper_external_view_allow' not set") return self._value def get_paper_external_view_default_team(self): """ (paper) Changed Paper external sharing setting to default team (deprecated, no longer logged) Only call this if :meth:`is_paper_external_view_default_team` is true. :rtype: PaperExternalViewDefaultTeamType """ if not self.is_paper_external_view_default_team(): raise AttributeError("tag 'paper_external_view_default_team' not set") return self._value def get_paper_external_view_forbid(self): """ (paper) Changed Paper external sharing setting to team-only (deprecated, no longer logged) Only call this if :meth:`is_paper_external_view_forbid` is true. :rtype: PaperExternalViewForbidType """ if not self.is_paper_external_view_forbid(): raise AttributeError("tag 'paper_external_view_forbid' not set") return self._value def get_paper_folder_change_subscription(self): """ (paper) Followed/unfollowed Paper folder Only call this if :meth:`is_paper_folder_change_subscription` is true. :rtype: PaperFolderChangeSubscriptionType """ if not self.is_paper_folder_change_subscription(): raise AttributeError("tag 'paper_folder_change_subscription' not set") return self._value def get_paper_folder_deleted(self): """ (paper) Archived Paper folder (deprecated, no longer logged) Only call this if :meth:`is_paper_folder_deleted` is true. :rtype: PaperFolderDeletedType """ if not self.is_paper_folder_deleted(): raise AttributeError("tag 'paper_folder_deleted' not set") return self._value def get_paper_folder_followed(self): """ (paper) Followed Paper folder (deprecated, replaced by 'Followed/unfollowed Paper folder') Only call this if :meth:`is_paper_folder_followed` is true. :rtype: PaperFolderFollowedType """ if not self.is_paper_folder_followed(): raise AttributeError("tag 'paper_folder_followed' not set") return self._value def get_paper_folder_team_invite(self): """ (paper) Shared Paper folder with users and/or groups (deprecated, no longer logged) Only call this if :meth:`is_paper_folder_team_invite` is true. :rtype: PaperFolderTeamInviteType """ if not self.is_paper_folder_team_invite(): raise AttributeError("tag 'paper_folder_team_invite' not set") return self._value def get_paper_published_link_change_permission(self): """ (paper) Changed permissions for published doc Only call this if :meth:`is_paper_published_link_change_permission` is true. :rtype: PaperPublishedLinkChangePermissionType """ if not self.is_paper_published_link_change_permission(): raise AttributeError("tag 'paper_published_link_change_permission' not set") return self._value def get_paper_published_link_create(self): """ (paper) Published doc Only call this if :meth:`is_paper_published_link_create` is true. :rtype: PaperPublishedLinkCreateType """ if not self.is_paper_published_link_create(): raise AttributeError("tag 'paper_published_link_create' not set") return self._value def get_paper_published_link_disabled(self): """ (paper) Unpublished doc Only call this if :meth:`is_paper_published_link_disabled` is true. :rtype: PaperPublishedLinkDisabledType """ if not self.is_paper_published_link_disabled(): raise AttributeError("tag 'paper_published_link_disabled' not set") return self._value def get_paper_published_link_view(self): """ (paper) Viewed published doc Only call this if :meth:`is_paper_published_link_view` is true. :rtype: PaperPublishedLinkViewType """ if not self.is_paper_published_link_view(): raise AttributeError("tag 'paper_published_link_view' not set") return self._value def get_password_change(self): """ (passwords) Changed password Only call this if :meth:`is_password_change` is true. :rtype: PasswordChangeType """ if not self.is_password_change(): raise AttributeError("tag 'password_change' not set") return self._value def get_password_reset(self): """ (passwords) Reset password Only call this if :meth:`is_password_reset` is true. :rtype: PasswordResetType """ if not self.is_password_reset(): raise AttributeError("tag 'password_reset' not set") return self._value def get_password_reset_all(self): """ (passwords) Reset all team member passwords Only call this if :meth:`is_password_reset_all` is true. :rtype: PasswordResetAllType """ if not self.is_password_reset_all(): raise AttributeError("tag 'password_reset_all' not set") return self._value def get_classification_create_report(self): """ (reports) Created Classification report Only call this if :meth:`is_classification_create_report` is true. :rtype: ClassificationCreateReportType """ if not self.is_classification_create_report(): raise AttributeError("tag 'classification_create_report' not set") return self._value def get_classification_create_report_fail(self): """ (reports) Couldn't create Classification report Only call this if :meth:`is_classification_create_report_fail` is true. :rtype: ClassificationCreateReportFailType """ if not self.is_classification_create_report_fail(): raise AttributeError("tag 'classification_create_report_fail' not set") return self._value def get_emm_create_exceptions_report(self): """ (reports) Created EMM-excluded users report Only call this if :meth:`is_emm_create_exceptions_report` is true. :rtype: EmmCreateExceptionsReportType """ if not self.is_emm_create_exceptions_report(): raise AttributeError("tag 'emm_create_exceptions_report' not set") return self._value def get_emm_create_usage_report(self): """ (reports) Created EMM mobile app usage report Only call this if :meth:`is_emm_create_usage_report` is true. :rtype: EmmCreateUsageReportType """ if not self.is_emm_create_usage_report(): raise AttributeError("tag 'emm_create_usage_report' not set") return self._value def get_export_members_report(self): """ (reports) Created member data report Only call this if :meth:`is_export_members_report` is true. :rtype: ExportMembersReportType """ if not self.is_export_members_report(): raise AttributeError("tag 'export_members_report' not set") return self._value def get_export_members_report_fail(self): """ (reports) Failed to create members data report Only call this if :meth:`is_export_members_report_fail` is true. :rtype: ExportMembersReportFailType """ if not self.is_export_members_report_fail(): raise AttributeError("tag 'export_members_report_fail' not set") return self._value def get_external_sharing_create_report(self): """ (reports) Created External sharing report Only call this if :meth:`is_external_sharing_create_report` is true. :rtype: ExternalSharingCreateReportType """ if not self.is_external_sharing_create_report(): raise AttributeError("tag 'external_sharing_create_report' not set") return self._value def get_external_sharing_report_failed(self): """ (reports) Couldn't create External sharing report Only call this if :meth:`is_external_sharing_report_failed` is true. :rtype: ExternalSharingReportFailedType """ if not self.is_external_sharing_report_failed(): raise AttributeError("tag 'external_sharing_report_failed' not set") return self._value def get_no_expiration_link_gen_create_report(self): """ (reports) Report created: Links created with no expiration Only call this if :meth:`is_no_expiration_link_gen_create_report` is true. :rtype: NoExpirationLinkGenCreateReportType """ if not self.is_no_expiration_link_gen_create_report(): raise AttributeError("tag 'no_expiration_link_gen_create_report' not set") return self._value def get_no_expiration_link_gen_report_failed(self): """ (reports) Couldn't create report: Links created with no expiration Only call this if :meth:`is_no_expiration_link_gen_report_failed` is true. :rtype: NoExpirationLinkGenReportFailedType """ if not self.is_no_expiration_link_gen_report_failed(): raise AttributeError("tag 'no_expiration_link_gen_report_failed' not set") return self._value def get_no_password_link_gen_create_report(self): """ (reports) Report created: Links created without passwords Only call this if :meth:`is_no_password_link_gen_create_report` is true. :rtype: NoPasswordLinkGenCreateReportType """ if not self.is_no_password_link_gen_create_report(): raise AttributeError("tag 'no_password_link_gen_create_report' not set") return self._value def get_no_password_link_gen_report_failed(self): """ (reports) Couldn't create report: Links created without passwords Only call this if :meth:`is_no_password_link_gen_report_failed` is true. :rtype: NoPasswordLinkGenReportFailedType """ if not self.is_no_password_link_gen_report_failed(): raise AttributeError("tag 'no_password_link_gen_report_failed' not set") return self._value def get_no_password_link_view_create_report(self): """ (reports) Report created: Views of links without passwords Only call this if :meth:`is_no_password_link_view_create_report` is true. :rtype: NoPasswordLinkViewCreateReportType """ if not self.is_no_password_link_view_create_report(): raise AttributeError("tag 'no_password_link_view_create_report' not set") return self._value def get_no_password_link_view_report_failed(self): """ (reports) Couldn't create report: Views of links without passwords Only call this if :meth:`is_no_password_link_view_report_failed` is true. :rtype: NoPasswordLinkViewReportFailedType """ if not self.is_no_password_link_view_report_failed(): raise AttributeError("tag 'no_password_link_view_report_failed' not set") return self._value def get_outdated_link_view_create_report(self): """ (reports) Report created: Views of old links Only call this if :meth:`is_outdated_link_view_create_report` is true. :rtype: OutdatedLinkViewCreateReportType """ if not self.is_outdated_link_view_create_report(): raise AttributeError("tag 'outdated_link_view_create_report' not set") return self._value def get_outdated_link_view_report_failed(self): """ (reports) Couldn't create report: Views of old links Only call this if :meth:`is_outdated_link_view_report_failed` is true. :rtype: OutdatedLinkViewReportFailedType """ if not self.is_outdated_link_view_report_failed(): raise AttributeError("tag 'outdated_link_view_report_failed' not set") return self._value def get_paper_admin_export_start(self): """ (reports) Exported all team Paper docs Only call this if :meth:`is_paper_admin_export_start` is true. :rtype: PaperAdminExportStartType """ if not self.is_paper_admin_export_start(): raise AttributeError("tag 'paper_admin_export_start' not set") return self._value def get_ransomware_alert_create_report(self): """ (reports) Created ransomware report Only call this if :meth:`is_ransomware_alert_create_report` is true. :rtype: RansomwareAlertCreateReportType """ if not self.is_ransomware_alert_create_report(): raise AttributeError("tag 'ransomware_alert_create_report' not set") return self._value def get_ransomware_alert_create_report_failed(self): """ (reports) Couldn't generate ransomware report Only call this if :meth:`is_ransomware_alert_create_report_failed` is true. :rtype: RansomwareAlertCreateReportFailedType """ if not self.is_ransomware_alert_create_report_failed(): raise AttributeError("tag 'ransomware_alert_create_report_failed' not set") return self._value def get_smart_sync_create_admin_privilege_report(self): """ (reports) Created Smart Sync non-admin devices report Only call this if :meth:`is_smart_sync_create_admin_privilege_report` is true. :rtype: SmartSyncCreateAdminPrivilegeReportType """ if not self.is_smart_sync_create_admin_privilege_report(): raise AttributeError("tag 'smart_sync_create_admin_privilege_report' not set") return self._value def get_team_activity_create_report(self): """ (reports) Created team activity report Only call this if :meth:`is_team_activity_create_report` is true. :rtype: TeamActivityCreateReportType """ if not self.is_team_activity_create_report(): raise AttributeError("tag 'team_activity_create_report' not set") return self._value def get_team_activity_create_report_fail(self): """ (reports) Couldn't generate team activity report Only call this if :meth:`is_team_activity_create_report_fail` is true. :rtype: TeamActivityCreateReportFailType """ if not self.is_team_activity_create_report_fail(): raise AttributeError("tag 'team_activity_create_report_fail' not set") return self._value def get_collection_share(self): """ (sharing) Shared album Only call this if :meth:`is_collection_share` is true. :rtype: CollectionShareType """ if not self.is_collection_share(): raise AttributeError("tag 'collection_share' not set") return self._value def get_file_transfers_file_add(self): """ (sharing) Transfer files added Only call this if :meth:`is_file_transfers_file_add` is true. :rtype: FileTransfersFileAddType """ if not self.is_file_transfers_file_add(): raise AttributeError("tag 'file_transfers_file_add' not set") return self._value def get_file_transfers_transfer_delete(self): """ (sharing) Deleted transfer Only call this if :meth:`is_file_transfers_transfer_delete` is true. :rtype: FileTransfersTransferDeleteType """ if not self.is_file_transfers_transfer_delete(): raise AttributeError("tag 'file_transfers_transfer_delete' not set") return self._value def get_file_transfers_transfer_download(self): """ (sharing) Transfer downloaded Only call this if :meth:`is_file_transfers_transfer_download` is true. :rtype: FileTransfersTransferDownloadType """ if not self.is_file_transfers_transfer_download(): raise AttributeError("tag 'file_transfers_transfer_download' not set") return self._value def get_file_transfers_transfer_send(self): """ (sharing) Sent transfer Only call this if :meth:`is_file_transfers_transfer_send` is true. :rtype: FileTransfersTransferSendType """ if not self.is_file_transfers_transfer_send(): raise AttributeError("tag 'file_transfers_transfer_send' not set") return self._value def get_file_transfers_transfer_view(self): """ (sharing) Viewed transfer Only call this if :meth:`is_file_transfers_transfer_view` is true. :rtype: FileTransfersTransferViewType """ if not self.is_file_transfers_transfer_view(): raise AttributeError("tag 'file_transfers_transfer_view' not set") return self._value def get_note_acl_invite_only(self): """ (sharing) Changed Paper doc to invite-only (deprecated, no longer logged) Only call this if :meth:`is_note_acl_invite_only` is true. :rtype: NoteAclInviteOnlyType """ if not self.is_note_acl_invite_only(): raise AttributeError("tag 'note_acl_invite_only' not set") return self._value def get_note_acl_link(self): """ (sharing) Changed Paper doc to link-accessible (deprecated, no longer logged) Only call this if :meth:`is_note_acl_link` is true. :rtype: NoteAclLinkType """ if not self.is_note_acl_link(): raise AttributeError("tag 'note_acl_link' not set") return self._value def get_note_acl_team_link(self): """ (sharing) Changed Paper doc to link-accessible for team (deprecated, no longer logged) Only call this if :meth:`is_note_acl_team_link` is true. :rtype: NoteAclTeamLinkType """ if not self.is_note_acl_team_link(): raise AttributeError("tag 'note_acl_team_link' not set") return self._value def get_note_shared(self): """ (sharing) Shared Paper doc (deprecated, no longer logged) Only call this if :meth:`is_note_shared` is true. :rtype: NoteSharedType """ if not self.is_note_shared(): raise AttributeError("tag 'note_shared' not set") return self._value def get_note_share_receive(self): """ (sharing) Shared received Paper doc (deprecated, no longer logged) Only call this if :meth:`is_note_share_receive` is true. :rtype: NoteShareReceiveType """ if not self.is_note_share_receive(): raise AttributeError("tag 'note_share_receive' not set") return self._value def get_open_note_shared(self): """ (sharing) Opened shared Paper doc (deprecated, no longer logged) Only call this if :meth:`is_open_note_shared` is true. :rtype: OpenNoteSharedType """ if not self.is_open_note_shared(): raise AttributeError("tag 'open_note_shared' not set") return self._value def get_replay_file_shared_link_created(self): """ (sharing) Created shared link in Replay Only call this if :meth:`is_replay_file_shared_link_created` is true. :rtype: ReplayFileSharedLinkCreatedType """ if not self.is_replay_file_shared_link_created(): raise AttributeError("tag 'replay_file_shared_link_created' not set") return self._value def get_replay_file_shared_link_modified(self): """ (sharing) Modified shared link in Replay Only call this if :meth:`is_replay_file_shared_link_modified` is true. :rtype: ReplayFileSharedLinkModifiedType """ if not self.is_replay_file_shared_link_modified(): raise AttributeError("tag 'replay_file_shared_link_modified' not set") return self._value def get_replay_project_team_add(self): """ (sharing) Added member to Replay Project Only call this if :meth:`is_replay_project_team_add` is true. :rtype: ReplayProjectTeamAddType """ if not self.is_replay_project_team_add(): raise AttributeError("tag 'replay_project_team_add' not set") return self._value def get_replay_project_team_delete(self): """ (sharing) Removed member from Replay Project Only call this if :meth:`is_replay_project_team_delete` is true. :rtype: ReplayProjectTeamDeleteType """ if not self.is_replay_project_team_delete(): raise AttributeError("tag 'replay_project_team_delete' not set") return self._value def get_sf_add_group(self): """ (sharing) Added team to shared folder (deprecated, no longer logged) Only call this if :meth:`is_sf_add_group` is true. :rtype: SfAddGroupType """ if not self.is_sf_add_group(): raise AttributeError("tag 'sf_add_group' not set") return self._value def get_sf_allow_non_members_to_view_shared_links(self): """ (sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged) Only call this if :meth:`is_sf_allow_non_members_to_view_shared_links` is true. :rtype: SfAllowNonMembersToViewSharedLinksType """ if not self.is_sf_allow_non_members_to_view_shared_links(): raise AttributeError("tag 'sf_allow_non_members_to_view_shared_links' not set") return self._value def get_sf_external_invite_warn(self): """ (sharing) Set team members to see warning before sharing folders outside team (deprecated, no longer logged) Only call this if :meth:`is_sf_external_invite_warn` is true. :rtype: SfExternalInviteWarnType """ if not self.is_sf_external_invite_warn(): raise AttributeError("tag 'sf_external_invite_warn' not set") return self._value def get_sf_fb_invite(self): """ (sharing) Invited Facebook users to shared folder (deprecated, no longer logged) Only call this if :meth:`is_sf_fb_invite` is true. :rtype: SfFbInviteType """ if not self.is_sf_fb_invite(): raise AttributeError("tag 'sf_fb_invite' not set") return self._value def get_sf_fb_invite_change_role(self): """ (sharing) Changed Facebook user's role in shared folder (deprecated, no longer logged) Only call this if :meth:`is_sf_fb_invite_change_role` is true. :rtype: SfFbInviteChangeRoleType """ if not self.is_sf_fb_invite_change_role(): raise AttributeError("tag 'sf_fb_invite_change_role' not set") return self._value def get_sf_fb_uninvite(self): """ (sharing) Uninvited Facebook user from shared folder (deprecated, no longer logged) Only call this if :meth:`is_sf_fb_uninvite` is true. :rtype: SfFbUninviteType """ if not self.is_sf_fb_uninvite(): raise AttributeError("tag 'sf_fb_uninvite' not set") return self._value def get_sf_invite_group(self): """ (sharing) Invited group to shared folder (deprecated, no longer logged) Only call this if :meth:`is_sf_invite_group` is true. :rtype: SfInviteGroupType """ if not self.is_sf_invite_group(): raise AttributeError("tag 'sf_invite_group' not set") return self._value def get_sf_team_grant_access(self): """ (sharing) Granted access to shared folder (deprecated, no longer logged) Only call this if :meth:`is_sf_team_grant_access` is true. :rtype: SfTeamGrantAccessType """ if not self.is_sf_team_grant_access(): raise AttributeError("tag 'sf_team_grant_access' not set") return self._value def get_sf_team_invite(self): """ (sharing) Invited team members to shared folder (deprecated, replaced by 'Invited user to Dropbox and added them to shared file/folder') Only call this if :meth:`is_sf_team_invite` is true. :rtype: SfTeamInviteType """ if not self.is_sf_team_invite(): raise AttributeError("tag 'sf_team_invite' not set") return self._value def get_sf_team_invite_change_role(self): """ (sharing) Changed team member's role in shared folder (deprecated, no longer logged) Only call this if :meth:`is_sf_team_invite_change_role` is true. :rtype: SfTeamInviteChangeRoleType """ if not self.is_sf_team_invite_change_role(): raise AttributeError("tag 'sf_team_invite_change_role' not set") return self._value def get_sf_team_join(self): """ (sharing) Joined team member's shared folder (deprecated, no longer logged) Only call this if :meth:`is_sf_team_join` is true. :rtype: SfTeamJoinType """ if not self.is_sf_team_join(): raise AttributeError("tag 'sf_team_join' not set") return self._value def get_sf_team_join_from_oob_link(self): """ (sharing) Joined team member's shared folder from link (deprecated, no longer logged) Only call this if :meth:`is_sf_team_join_from_oob_link` is true. :rtype: SfTeamJoinFromOobLinkType """ if not self.is_sf_team_join_from_oob_link(): raise AttributeError("tag 'sf_team_join_from_oob_link' not set") return self._value def get_sf_team_uninvite(self): """ (sharing) Unshared folder with team member (deprecated, replaced by 'Removed invitee from shared file/folder before invite was accepted') Only call this if :meth:`is_sf_team_uninvite` is true. :rtype: SfTeamUninviteType """ if not self.is_sf_team_uninvite(): raise AttributeError("tag 'sf_team_uninvite' not set") return self._value def get_shared_content_add_invitees(self): """ (sharing) Invited user to Dropbox and added them to shared file/folder Only call this if :meth:`is_shared_content_add_invitees` is true. :rtype: SharedContentAddInviteesType """ if not self.is_shared_content_add_invitees(): raise AttributeError("tag 'shared_content_add_invitees' not set") return self._value def get_shared_content_add_link_expiry(self): """ (sharing) Added expiration date to link for shared file/folder (deprecated, no longer logged) Only call this if :meth:`is_shared_content_add_link_expiry` is true. :rtype: SharedContentAddLinkExpiryType """ if not self.is_shared_content_add_link_expiry(): raise AttributeError("tag 'shared_content_add_link_expiry' not set") return self._value def get_shared_content_add_link_password(self): """ (sharing) Added password to link for shared file/folder (deprecated, no longer logged) Only call this if :meth:`is_shared_content_add_link_password` is true. :rtype: SharedContentAddLinkPasswordType """ if not self.is_shared_content_add_link_password(): raise AttributeError("tag 'shared_content_add_link_password' not set") return self._value def get_shared_content_add_member(self): """ (sharing) Added users and/or groups to shared file/folder Only call this if :meth:`is_shared_content_add_member` is true. :rtype: SharedContentAddMemberType """ if not self.is_shared_content_add_member(): raise AttributeError("tag 'shared_content_add_member' not set") return self._value def get_shared_content_change_downloads_policy(self): """ (sharing) Changed whether members can download shared file/folder (deprecated, no longer logged) Only call this if :meth:`is_shared_content_change_downloads_policy` is true. :rtype: SharedContentChangeDownloadsPolicyType """ if not self.is_shared_content_change_downloads_policy(): raise AttributeError("tag 'shared_content_change_downloads_policy' not set") return self._value def get_shared_content_change_invitee_role(self): """ (sharing) Changed access type of invitee to shared file/folder before invite was accepted Only call this if :meth:`is_shared_content_change_invitee_role` is true. :rtype: SharedContentChangeInviteeRoleType """ if not self.is_shared_content_change_invitee_role(): raise AttributeError("tag 'shared_content_change_invitee_role' not set") return self._value def get_shared_content_change_link_audience(self): """ (sharing) Changed link audience of shared file/folder (deprecated, no longer logged) Only call this if :meth:`is_shared_content_change_link_audience` is true. :rtype: SharedContentChangeLinkAudienceType """ if not self.is_shared_content_change_link_audience(): raise AttributeError("tag 'shared_content_change_link_audience' not set") return self._value def get_shared_content_change_link_expiry(self): """ (sharing) Changed link expiration of shared file/folder (deprecated, no longer logged) Only call this if :meth:`is_shared_content_change_link_expiry` is true. :rtype: SharedContentChangeLinkExpiryType """ if not self.is_shared_content_change_link_expiry(): raise AttributeError("tag 'shared_content_change_link_expiry' not set") return self._value def get_shared_content_change_link_password(self): """ (sharing) Changed link password of shared file/folder (deprecated, no longer logged) Only call this if :meth:`is_shared_content_change_link_password` is true. :rtype: SharedContentChangeLinkPasswordType """ if not self.is_shared_content_change_link_password(): raise AttributeError("tag 'shared_content_change_link_password' not set") return self._value def get_shared_content_change_member_role(self): """ (sharing) Changed access type of shared file/folder member Only call this if :meth:`is_shared_content_change_member_role` is true. :rtype: SharedContentChangeMemberRoleType """ if not self.is_shared_content_change_member_role(): raise AttributeError("tag 'shared_content_change_member_role' not set") return self._value def get_shared_content_change_viewer_info_policy(self): """ (sharing) Changed whether members can see who viewed shared file/folder Only call this if :meth:`is_shared_content_change_viewer_info_policy` is true. :rtype: SharedContentChangeViewerInfoPolicyType """ if not self.is_shared_content_change_viewer_info_policy(): raise AttributeError("tag 'shared_content_change_viewer_info_policy' not set") return self._value def get_shared_content_claim_invitation(self): """ (sharing) Acquired membership of shared file/folder by accepting invite Only call this if :meth:`is_shared_content_claim_invitation` is true. :rtype: SharedContentClaimInvitationType """ if not self.is_shared_content_claim_invitation(): raise AttributeError("tag 'shared_content_claim_invitation' not set") return self._value def get_shared_content_copy(self): """ (sharing) Copied shared file/folder to own Dropbox Only call this if :meth:`is_shared_content_copy` is true. :rtype: SharedContentCopyType """ if not self.is_shared_content_copy(): raise AttributeError("tag 'shared_content_copy' not set") return self._value def get_shared_content_download(self): """ (sharing) Downloaded shared file/folder Only call this if :meth:`is_shared_content_download` is true. :rtype: SharedContentDownloadType """ if not self.is_shared_content_download(): raise AttributeError("tag 'shared_content_download' not set") return self._value def get_shared_content_relinquish_membership(self): """ (sharing) Left shared file/folder Only call this if :meth:`is_shared_content_relinquish_membership` is true. :rtype: SharedContentRelinquishMembershipType """ if not self.is_shared_content_relinquish_membership(): raise AttributeError("tag 'shared_content_relinquish_membership' not set") return self._value def get_shared_content_remove_invitees(self): """ (sharing) Removed invitee from shared file/folder before invite was accepted Only call this if :meth:`is_shared_content_remove_invitees` is true. :rtype: SharedContentRemoveInviteesType """ if not self.is_shared_content_remove_invitees(): raise AttributeError("tag 'shared_content_remove_invitees' not set") return self._value def get_shared_content_remove_link_expiry(self): """ (sharing) Removed link expiration date of shared file/folder (deprecated, no longer logged) Only call this if :meth:`is_shared_content_remove_link_expiry` is true. :rtype: SharedContentRemoveLinkExpiryType """ if not self.is_shared_content_remove_link_expiry(): raise AttributeError("tag 'shared_content_remove_link_expiry' not set") return self._value def get_shared_content_remove_link_password(self): """ (sharing) Removed link password of shared file/folder (deprecated, no longer logged) Only call this if :meth:`is_shared_content_remove_link_password` is true. :rtype: SharedContentRemoveLinkPasswordType """ if not self.is_shared_content_remove_link_password(): raise AttributeError("tag 'shared_content_remove_link_password' not set") return self._value def get_shared_content_remove_member(self): """ (sharing) Removed user/group from shared file/folder Only call this if :meth:`is_shared_content_remove_member` is true. :rtype: SharedContentRemoveMemberType """ if not self.is_shared_content_remove_member(): raise AttributeError("tag 'shared_content_remove_member' not set") return self._value def get_shared_content_request_access(self): """ (sharing) Requested access to shared file/folder Only call this if :meth:`is_shared_content_request_access` is true. :rtype: SharedContentRequestAccessType """ if not self.is_shared_content_request_access(): raise AttributeError("tag 'shared_content_request_access' not set") return self._value def get_shared_content_restore_invitees(self): """ (sharing) Restored shared file/folder invitees Only call this if :meth:`is_shared_content_restore_invitees` is true. :rtype: SharedContentRestoreInviteesType """ if not self.is_shared_content_restore_invitees(): raise AttributeError("tag 'shared_content_restore_invitees' not set") return self._value def get_shared_content_restore_member(self): """ (sharing) Restored users and/or groups to membership of shared file/folder Only call this if :meth:`is_shared_content_restore_member` is true. :rtype: SharedContentRestoreMemberType """ if not self.is_shared_content_restore_member(): raise AttributeError("tag 'shared_content_restore_member' not set") return self._value def get_shared_content_unshare(self): """ (sharing) Unshared file/folder by clearing membership Only call this if :meth:`is_shared_content_unshare` is true. :rtype: SharedContentUnshareType """ if not self.is_shared_content_unshare(): raise AttributeError("tag 'shared_content_unshare' not set") return self._value def get_shared_content_view(self): """ (sharing) Previewed shared file/folder Only call this if :meth:`is_shared_content_view` is true. :rtype: SharedContentViewType """ if not self.is_shared_content_view(): raise AttributeError("tag 'shared_content_view' not set") return self._value def get_shared_folder_change_link_policy(self): """ (sharing) Changed who can access shared folder via link Only call this if :meth:`is_shared_folder_change_link_policy` is true. :rtype: SharedFolderChangeLinkPolicyType """ if not self.is_shared_folder_change_link_policy(): raise AttributeError("tag 'shared_folder_change_link_policy' not set") return self._value def get_shared_folder_change_members_inheritance_policy(self): """ (sharing) Changed whether shared folder inherits members from parent folder Only call this if :meth:`is_shared_folder_change_members_inheritance_policy` is true. :rtype: SharedFolderChangeMembersInheritancePolicyType """ if not self.is_shared_folder_change_members_inheritance_policy(): raise AttributeError("tag 'shared_folder_change_members_inheritance_policy' not set") return self._value def get_shared_folder_change_members_management_policy(self): """ (sharing) Changed who can add/remove members of shared folder Only call this if :meth:`is_shared_folder_change_members_management_policy` is true. :rtype: SharedFolderChangeMembersManagementPolicyType """ if not self.is_shared_folder_change_members_management_policy(): raise AttributeError("tag 'shared_folder_change_members_management_policy' not set") return self._value def get_shared_folder_change_members_policy(self): """ (sharing) Changed who can become member of shared folder Only call this if :meth:`is_shared_folder_change_members_policy` is true. :rtype: SharedFolderChangeMembersPolicyType """ if not self.is_shared_folder_change_members_policy(): raise AttributeError("tag 'shared_folder_change_members_policy' not set") return self._value def get_shared_folder_create(self): """ (sharing) Created shared folder Only call this if :meth:`is_shared_folder_create` is true. :rtype: SharedFolderCreateType """ if not self.is_shared_folder_create(): raise AttributeError("tag 'shared_folder_create' not set") return self._value def get_shared_folder_decline_invitation(self): """ (sharing) Declined team member's invite to shared folder Only call this if :meth:`is_shared_folder_decline_invitation` is true. :rtype: SharedFolderDeclineInvitationType """ if not self.is_shared_folder_decline_invitation(): raise AttributeError("tag 'shared_folder_decline_invitation' not set") return self._value def get_shared_folder_mount(self): """ (sharing) Added shared folder to own Dropbox Only call this if :meth:`is_shared_folder_mount` is true. :rtype: SharedFolderMountType """ if not self.is_shared_folder_mount(): raise AttributeError("tag 'shared_folder_mount' not set") return self._value def get_shared_folder_nest(self): """ (sharing) Changed parent of shared folder Only call this if :meth:`is_shared_folder_nest` is true. :rtype: SharedFolderNestType """ if not self.is_shared_folder_nest(): raise AttributeError("tag 'shared_folder_nest' not set") return self._value def get_shared_folder_transfer_ownership(self): """ (sharing) Transferred ownership of shared folder to another member Only call this if :meth:`is_shared_folder_transfer_ownership` is true. :rtype: SharedFolderTransferOwnershipType """ if not self.is_shared_folder_transfer_ownership(): raise AttributeError("tag 'shared_folder_transfer_ownership' not set") return self._value def get_shared_folder_unmount(self): """ (sharing) Deleted shared folder from Dropbox Only call this if :meth:`is_shared_folder_unmount` is true. :rtype: SharedFolderUnmountType """ if not self.is_shared_folder_unmount(): raise AttributeError("tag 'shared_folder_unmount' not set") return self._value def get_shared_link_add_expiry(self): """ (sharing) Added shared link expiration date Only call this if :meth:`is_shared_link_add_expiry` is true. :rtype: SharedLinkAddExpiryType """ if not self.is_shared_link_add_expiry(): raise AttributeError("tag 'shared_link_add_expiry' not set") return self._value def get_shared_link_change_expiry(self): """ (sharing) Changed shared link expiration date Only call this if :meth:`is_shared_link_change_expiry` is true. :rtype: SharedLinkChangeExpiryType """ if not self.is_shared_link_change_expiry(): raise AttributeError("tag 'shared_link_change_expiry' not set") return self._value def get_shared_link_change_visibility(self): """ (sharing) Changed visibility of shared link Only call this if :meth:`is_shared_link_change_visibility` is true. :rtype: SharedLinkChangeVisibilityType """ if not self.is_shared_link_change_visibility(): raise AttributeError("tag 'shared_link_change_visibility' not set") return self._value def get_shared_link_copy(self): """ (sharing) Added file/folder to Dropbox from shared link Only call this if :meth:`is_shared_link_copy` is true. :rtype: SharedLinkCopyType """ if not self.is_shared_link_copy(): raise AttributeError("tag 'shared_link_copy' not set") return self._value def get_shared_link_create(self): """ (sharing) Created shared link Only call this if :meth:`is_shared_link_create` is true. :rtype: SharedLinkCreateType """ if not self.is_shared_link_create(): raise AttributeError("tag 'shared_link_create' not set") return self._value def get_shared_link_disable(self): """ (sharing) Removed shared link Only call this if :meth:`is_shared_link_disable` is true. :rtype: SharedLinkDisableType """ if not self.is_shared_link_disable(): raise AttributeError("tag 'shared_link_disable' not set") return self._value def get_shared_link_download(self): """ (sharing) Downloaded file/folder from shared link Only call this if :meth:`is_shared_link_download` is true. :rtype: SharedLinkDownloadType """ if not self.is_shared_link_download(): raise AttributeError("tag 'shared_link_download' not set") return self._value def get_shared_link_remove_expiry(self): """ (sharing) Removed shared link expiration date Only call this if :meth:`is_shared_link_remove_expiry` is true. :rtype: SharedLinkRemoveExpiryType """ if not self.is_shared_link_remove_expiry(): raise AttributeError("tag 'shared_link_remove_expiry' not set") return self._value def get_shared_link_settings_add_expiration(self): """ (sharing) Added an expiration date to the shared link Only call this if :meth:`is_shared_link_settings_add_expiration` is true. :rtype: SharedLinkSettingsAddExpirationType """ if not self.is_shared_link_settings_add_expiration(): raise AttributeError("tag 'shared_link_settings_add_expiration' not set") return self._value def get_shared_link_settings_add_password(self): """ (sharing) Added a password to the shared link Only call this if :meth:`is_shared_link_settings_add_password` is true. :rtype: SharedLinkSettingsAddPasswordType """ if not self.is_shared_link_settings_add_password(): raise AttributeError("tag 'shared_link_settings_add_password' not set") return self._value def get_shared_link_settings_allow_download_disabled(self): """ (sharing) Disabled downloads Only call this if :meth:`is_shared_link_settings_allow_download_disabled` is true. :rtype: SharedLinkSettingsAllowDownloadDisabledType """ if not self.is_shared_link_settings_allow_download_disabled(): raise AttributeError("tag 'shared_link_settings_allow_download_disabled' not set") return self._value def get_shared_link_settings_allow_download_enabled(self): """ (sharing) Enabled downloads Only call this if :meth:`is_shared_link_settings_allow_download_enabled` is true. :rtype: SharedLinkSettingsAllowDownloadEnabledType """ if not self.is_shared_link_settings_allow_download_enabled(): raise AttributeError("tag 'shared_link_settings_allow_download_enabled' not set") return self._value def get_shared_link_settings_change_audience(self): """ (sharing) Changed the audience of the shared link Only call this if :meth:`is_shared_link_settings_change_audience` is true. :rtype: SharedLinkSettingsChangeAudienceType """ if not self.is_shared_link_settings_change_audience(): raise AttributeError("tag 'shared_link_settings_change_audience' not set") return self._value def get_shared_link_settings_change_expiration(self): """ (sharing) Changed the expiration date of the shared link Only call this if :meth:`is_shared_link_settings_change_expiration` is true. :rtype: SharedLinkSettingsChangeExpirationType """ if not self.is_shared_link_settings_change_expiration(): raise AttributeError("tag 'shared_link_settings_change_expiration' not set") return self._value def get_shared_link_settings_change_password(self): """ (sharing) Changed the password of the shared link Only call this if :meth:`is_shared_link_settings_change_password` is true. :rtype: SharedLinkSettingsChangePasswordType """ if not self.is_shared_link_settings_change_password(): raise AttributeError("tag 'shared_link_settings_change_password' not set") return self._value def get_shared_link_settings_remove_expiration(self): """ (sharing) Removed the expiration date from the shared link Only call this if :meth:`is_shared_link_settings_remove_expiration` is true. :rtype: SharedLinkSettingsRemoveExpirationType """ if not self.is_shared_link_settings_remove_expiration(): raise AttributeError("tag 'shared_link_settings_remove_expiration' not set") return self._value def get_shared_link_settings_remove_password(self): """ (sharing) Removed the password from the shared link Only call this if :meth:`is_shared_link_settings_remove_password` is true. :rtype: SharedLinkSettingsRemovePasswordType """ if not self.is_shared_link_settings_remove_password(): raise AttributeError("tag 'shared_link_settings_remove_password' not set") return self._value def get_shared_link_share(self): """ (sharing) Added members as audience of shared link Only call this if :meth:`is_shared_link_share` is true. :rtype: SharedLinkShareType """ if not self.is_shared_link_share(): raise AttributeError("tag 'shared_link_share' not set") return self._value def get_shared_link_view(self): """ (sharing) Opened shared link Only call this if :meth:`is_shared_link_view` is true. :rtype: SharedLinkViewType """ if not self.is_shared_link_view(): raise AttributeError("tag 'shared_link_view' not set") return self._value def get_shared_note_opened(self): """ (sharing) Opened shared Paper doc (deprecated, no longer logged) Only call this if :meth:`is_shared_note_opened` is true. :rtype: SharedNoteOpenedType """ if not self.is_shared_note_opened(): raise AttributeError("tag 'shared_note_opened' not set") return self._value def get_shmodel_disable_downloads(self): """ (sharing) Disabled downloads for link (deprecated, no longer logged) Only call this if :meth:`is_shmodel_disable_downloads` is true. :rtype: ShmodelDisableDownloadsType """ if not self.is_shmodel_disable_downloads(): raise AttributeError("tag 'shmodel_disable_downloads' not set") return self._value def get_shmodel_enable_downloads(self): """ (sharing) Enabled downloads for link (deprecated, no longer logged) Only call this if :meth:`is_shmodel_enable_downloads` is true. :rtype: ShmodelEnableDownloadsType """ if not self.is_shmodel_enable_downloads(): raise AttributeError("tag 'shmodel_enable_downloads' not set") return self._value def get_shmodel_group_share(self): """ (sharing) Shared link with group (deprecated, no longer logged) Only call this if :meth:`is_shmodel_group_share` is true. :rtype: ShmodelGroupShareType """ if not self.is_shmodel_group_share(): raise AttributeError("tag 'shmodel_group_share' not set") return self._value def get_showcase_access_granted(self): """ (showcase) Granted access to showcase Only call this if :meth:`is_showcase_access_granted` is true. :rtype: ShowcaseAccessGrantedType """ if not self.is_showcase_access_granted(): raise AttributeError("tag 'showcase_access_granted' not set") return self._value def get_showcase_add_member(self): """ (showcase) Added member to showcase Only call this if :meth:`is_showcase_add_member` is true. :rtype: ShowcaseAddMemberType """ if not self.is_showcase_add_member(): raise AttributeError("tag 'showcase_add_member' not set") return self._value def get_showcase_archived(self): """ (showcase) Archived showcase Only call this if :meth:`is_showcase_archived` is true. :rtype: ShowcaseArchivedType """ if not self.is_showcase_archived(): raise AttributeError("tag 'showcase_archived' not set") return self._value def get_showcase_created(self): """ (showcase) Created showcase Only call this if :meth:`is_showcase_created` is true. :rtype: ShowcaseCreatedType """ if not self.is_showcase_created(): raise AttributeError("tag 'showcase_created' not set") return self._value def get_showcase_delete_comment(self): """ (showcase) Deleted showcase comment Only call this if :meth:`is_showcase_delete_comment` is true. :rtype: ShowcaseDeleteCommentType """ if not self.is_showcase_delete_comment(): raise AttributeError("tag 'showcase_delete_comment' not set") return self._value def get_showcase_edited(self): """ (showcase) Edited showcase Only call this if :meth:`is_showcase_edited` is true. :rtype: ShowcaseEditedType """ if not self.is_showcase_edited(): raise AttributeError("tag 'showcase_edited' not set") return self._value def get_showcase_edit_comment(self): """ (showcase) Edited showcase comment Only call this if :meth:`is_showcase_edit_comment` is true. :rtype: ShowcaseEditCommentType """ if not self.is_showcase_edit_comment(): raise AttributeError("tag 'showcase_edit_comment' not set") return self._value def get_showcase_file_added(self): """ (showcase) Added file to showcase Only call this if :meth:`is_showcase_file_added` is true. :rtype: ShowcaseFileAddedType """ if not self.is_showcase_file_added(): raise AttributeError("tag 'showcase_file_added' not set") return self._value def get_showcase_file_download(self): """ (showcase) Downloaded file from showcase Only call this if :meth:`is_showcase_file_download` is true. :rtype: ShowcaseFileDownloadType """ if not self.is_showcase_file_download(): raise AttributeError("tag 'showcase_file_download' not set") return self._value def get_showcase_file_removed(self): """ (showcase) Removed file from showcase Only call this if :meth:`is_showcase_file_removed` is true. :rtype: ShowcaseFileRemovedType """ if not self.is_showcase_file_removed(): raise AttributeError("tag 'showcase_file_removed' not set") return self._value def get_showcase_file_view(self): """ (showcase) Viewed file in showcase Only call this if :meth:`is_showcase_file_view` is true. :rtype: ShowcaseFileViewType """ if not self.is_showcase_file_view(): raise AttributeError("tag 'showcase_file_view' not set") return self._value def get_showcase_permanently_deleted(self): """ (showcase) Permanently deleted showcase Only call this if :meth:`is_showcase_permanently_deleted` is true. :rtype: ShowcasePermanentlyDeletedType """ if not self.is_showcase_permanently_deleted(): raise AttributeError("tag 'showcase_permanently_deleted' not set") return self._value def get_showcase_post_comment(self): """ (showcase) Added showcase comment Only call this if :meth:`is_showcase_post_comment` is true. :rtype: ShowcasePostCommentType """ if not self.is_showcase_post_comment(): raise AttributeError("tag 'showcase_post_comment' not set") return self._value def get_showcase_remove_member(self): """ (showcase) Removed member from showcase Only call this if :meth:`is_showcase_remove_member` is true. :rtype: ShowcaseRemoveMemberType """ if not self.is_showcase_remove_member(): raise AttributeError("tag 'showcase_remove_member' not set") return self._value def get_showcase_renamed(self): """ (showcase) Renamed showcase Only call this if :meth:`is_showcase_renamed` is true. :rtype: ShowcaseRenamedType """ if not self.is_showcase_renamed(): raise AttributeError("tag 'showcase_renamed' not set") return self._value def get_showcase_request_access(self): """ (showcase) Requested access to showcase Only call this if :meth:`is_showcase_request_access` is true. :rtype: ShowcaseRequestAccessType """ if not self.is_showcase_request_access(): raise AttributeError("tag 'showcase_request_access' not set") return self._value def get_showcase_resolve_comment(self): """ (showcase) Resolved showcase comment Only call this if :meth:`is_showcase_resolve_comment` is true. :rtype: ShowcaseResolveCommentType """ if not self.is_showcase_resolve_comment(): raise AttributeError("tag 'showcase_resolve_comment' not set") return self._value def get_showcase_restored(self): """ (showcase) Unarchived showcase Only call this if :meth:`is_showcase_restored` is true. :rtype: ShowcaseRestoredType """ if not self.is_showcase_restored(): raise AttributeError("tag 'showcase_restored' not set") return self._value def get_showcase_trashed(self): """ (showcase) Deleted showcase Only call this if :meth:`is_showcase_trashed` is true. :rtype: ShowcaseTrashedType """ if not self.is_showcase_trashed(): raise AttributeError("tag 'showcase_trashed' not set") return self._value def get_showcase_trashed_deprecated(self): """ (showcase) Deleted showcase (old version) (deprecated, replaced by 'Deleted showcase') Only call this if :meth:`is_showcase_trashed_deprecated` is true. :rtype: ShowcaseTrashedDeprecatedType """ if not self.is_showcase_trashed_deprecated(): raise AttributeError("tag 'showcase_trashed_deprecated' not set") return self._value def get_showcase_unresolve_comment(self): """ (showcase) Unresolved showcase comment Only call this if :meth:`is_showcase_unresolve_comment` is true. :rtype: ShowcaseUnresolveCommentType """ if not self.is_showcase_unresolve_comment(): raise AttributeError("tag 'showcase_unresolve_comment' not set") return self._value def get_showcase_untrashed(self): """ (showcase) Restored showcase Only call this if :meth:`is_showcase_untrashed` is true. :rtype: ShowcaseUntrashedType """ if not self.is_showcase_untrashed(): raise AttributeError("tag 'showcase_untrashed' not set") return self._value def get_showcase_untrashed_deprecated(self): """ (showcase) Restored showcase (old version) (deprecated, replaced by 'Restored showcase') Only call this if :meth:`is_showcase_untrashed_deprecated` is true. :rtype: ShowcaseUntrashedDeprecatedType """ if not self.is_showcase_untrashed_deprecated(): raise AttributeError("tag 'showcase_untrashed_deprecated' not set") return self._value def get_showcase_view(self): """ (showcase) Viewed showcase Only call this if :meth:`is_showcase_view` is true. :rtype: ShowcaseViewType """ if not self.is_showcase_view(): raise AttributeError("tag 'showcase_view' not set") return self._value def get_sso_add_cert(self): """ (sso) Added X.509 certificate for SSO Only call this if :meth:`is_sso_add_cert` is true. :rtype: SsoAddCertType """ if not self.is_sso_add_cert(): raise AttributeError("tag 'sso_add_cert' not set") return self._value def get_sso_add_login_url(self): """ (sso) Added sign-in URL for SSO Only call this if :meth:`is_sso_add_login_url` is true. :rtype: SsoAddLoginUrlType """ if not self.is_sso_add_login_url(): raise AttributeError("tag 'sso_add_login_url' not set") return self._value def get_sso_add_logout_url(self): """ (sso) Added sign-out URL for SSO Only call this if :meth:`is_sso_add_logout_url` is true. :rtype: SsoAddLogoutUrlType """ if not self.is_sso_add_logout_url(): raise AttributeError("tag 'sso_add_logout_url' not set") return self._value def get_sso_change_cert(self): """ (sso) Changed X.509 certificate for SSO Only call this if :meth:`is_sso_change_cert` is true. :rtype: SsoChangeCertType """ if not self.is_sso_change_cert(): raise AttributeError("tag 'sso_change_cert' not set") return self._value def get_sso_change_login_url(self): """ (sso) Changed sign-in URL for SSO Only call this if :meth:`is_sso_change_login_url` is true. :rtype: SsoChangeLoginUrlType """ if not self.is_sso_change_login_url(): raise AttributeError("tag 'sso_change_login_url' not set") return self._value def get_sso_change_logout_url(self): """ (sso) Changed sign-out URL for SSO Only call this if :meth:`is_sso_change_logout_url` is true. :rtype: SsoChangeLogoutUrlType """ if not self.is_sso_change_logout_url(): raise AttributeError("tag 'sso_change_logout_url' not set") return self._value def get_sso_change_saml_identity_mode(self): """ (sso) Changed SAML identity mode for SSO Only call this if :meth:`is_sso_change_saml_identity_mode` is true. :rtype: SsoChangeSamlIdentityModeType """ if not self.is_sso_change_saml_identity_mode(): raise AttributeError("tag 'sso_change_saml_identity_mode' not set") return self._value def get_sso_remove_cert(self): """ (sso) Removed X.509 certificate for SSO Only call this if :meth:`is_sso_remove_cert` is true. :rtype: SsoRemoveCertType """ if not self.is_sso_remove_cert(): raise AttributeError("tag 'sso_remove_cert' not set") return self._value def get_sso_remove_login_url(self): """ (sso) Removed sign-in URL for SSO Only call this if :meth:`is_sso_remove_login_url` is true. :rtype: SsoRemoveLoginUrlType """ if not self.is_sso_remove_login_url(): raise AttributeError("tag 'sso_remove_login_url' not set") return self._value def get_sso_remove_logout_url(self): """ (sso) Removed sign-out URL for SSO Only call this if :meth:`is_sso_remove_logout_url` is true. :rtype: SsoRemoveLogoutUrlType """ if not self.is_sso_remove_logout_url(): raise AttributeError("tag 'sso_remove_logout_url' not set") return self._value def get_team_folder_change_status(self): """ (team_folders) Changed archival status of team folder Only call this if :meth:`is_team_folder_change_status` is true. :rtype: TeamFolderChangeStatusType """ if not self.is_team_folder_change_status(): raise AttributeError("tag 'team_folder_change_status' not set") return self._value def get_team_folder_create(self): """ (team_folders) Created team folder in active status Only call this if :meth:`is_team_folder_create` is true. :rtype: TeamFolderCreateType """ if not self.is_team_folder_create(): raise AttributeError("tag 'team_folder_create' not set") return self._value def get_team_folder_downgrade(self): """ (team_folders) Downgraded team folder to regular shared folder Only call this if :meth:`is_team_folder_downgrade` is true. :rtype: TeamFolderDowngradeType """ if not self.is_team_folder_downgrade(): raise AttributeError("tag 'team_folder_downgrade' not set") return self._value def get_team_folder_permanently_delete(self): """ (team_folders) Permanently deleted archived team folder Only call this if :meth:`is_team_folder_permanently_delete` is true. :rtype: TeamFolderPermanentlyDeleteType """ if not self.is_team_folder_permanently_delete(): raise AttributeError("tag 'team_folder_permanently_delete' not set") return self._value def get_team_folder_rename(self): """ (team_folders) Renamed active/archived team folder Only call this if :meth:`is_team_folder_rename` is true. :rtype: TeamFolderRenameType """ if not self.is_team_folder_rename(): raise AttributeError("tag 'team_folder_rename' not set") return self._value def get_team_selective_sync_settings_changed(self): """ (team_folders) Changed sync default Only call this if :meth:`is_team_selective_sync_settings_changed` is true. :rtype: TeamSelectiveSyncSettingsChangedType """ if not self.is_team_selective_sync_settings_changed(): raise AttributeError("tag 'team_selective_sync_settings_changed' not set") return self._value def get_account_capture_change_policy(self): """ (team_policies) Changed account capture setting on team domain Only call this if :meth:`is_account_capture_change_policy` is true. :rtype: AccountCaptureChangePolicyType """ if not self.is_account_capture_change_policy(): raise AttributeError("tag 'account_capture_change_policy' not set") return self._value def get_admin_email_reminders_changed(self): """ (team_policies) Changed admin reminder settings for requests to join the team Only call this if :meth:`is_admin_email_reminders_changed` is true. :rtype: AdminEmailRemindersChangedType """ if not self.is_admin_email_reminders_changed(): raise AttributeError("tag 'admin_email_reminders_changed' not set") return self._value def get_allow_download_disabled(self): """ (team_policies) Disabled downloads (deprecated, no longer logged) Only call this if :meth:`is_allow_download_disabled` is true. :rtype: AllowDownloadDisabledType """ if not self.is_allow_download_disabled(): raise AttributeError("tag 'allow_download_disabled' not set") return self._value def get_allow_download_enabled(self): """ (team_policies) Enabled downloads (deprecated, no longer logged) Only call this if :meth:`is_allow_download_enabled` is true. :rtype: AllowDownloadEnabledType """ if not self.is_allow_download_enabled(): raise AttributeError("tag 'allow_download_enabled' not set") return self._value def get_app_permissions_changed(self): """ (team_policies) Changed app permissions Only call this if :meth:`is_app_permissions_changed` is true. :rtype: AppPermissionsChangedType """ if not self.is_app_permissions_changed(): raise AttributeError("tag 'app_permissions_changed' not set") return self._value def get_camera_uploads_policy_changed(self): """ (team_policies) Changed camera uploads setting for team Only call this if :meth:`is_camera_uploads_policy_changed` is true. :rtype: CameraUploadsPolicyChangedType """ if not self.is_camera_uploads_policy_changed(): raise AttributeError("tag 'camera_uploads_policy_changed' not set") return self._value def get_capture_transcript_policy_changed(self): """ (team_policies) Changed Capture transcription policy for team Only call this if :meth:`is_capture_transcript_policy_changed` is true. :rtype: CaptureTranscriptPolicyChangedType """ if not self.is_capture_transcript_policy_changed(): raise AttributeError("tag 'capture_transcript_policy_changed' not set") return self._value def get_classification_change_policy(self): """ (team_policies) Changed classification policy for team Only call this if :meth:`is_classification_change_policy` is true. :rtype: ClassificationChangePolicyType """ if not self.is_classification_change_policy(): raise AttributeError("tag 'classification_change_policy' not set") return self._value def get_computer_backup_policy_changed(self): """ (team_policies) Changed computer backup policy for team Only call this if :meth:`is_computer_backup_policy_changed` is true. :rtype: ComputerBackupPolicyChangedType """ if not self.is_computer_backup_policy_changed(): raise AttributeError("tag 'computer_backup_policy_changed' not set") return self._value def get_content_administration_policy_changed(self): """ (team_policies) Changed content management setting Only call this if :meth:`is_content_administration_policy_changed` is true. :rtype: ContentAdministrationPolicyChangedType """ if not self.is_content_administration_policy_changed(): raise AttributeError("tag 'content_administration_policy_changed' not set") return self._value def get_data_placement_restriction_change_policy(self): """ (team_policies) Set restrictions on data center locations where team data resides Only call this if :meth:`is_data_placement_restriction_change_policy` is true. :rtype: DataPlacementRestrictionChangePolicyType """ if not self.is_data_placement_restriction_change_policy(): raise AttributeError("tag 'data_placement_restriction_change_policy' not set") return self._value def get_data_placement_restriction_satisfy_policy(self): """ (team_policies) Completed restrictions on data center locations where team data resides Only call this if :meth:`is_data_placement_restriction_satisfy_policy` is true. :rtype: DataPlacementRestrictionSatisfyPolicyType """ if not self.is_data_placement_restriction_satisfy_policy(): raise AttributeError("tag 'data_placement_restriction_satisfy_policy' not set") return self._value def get_device_approvals_add_exception(self): """ (team_policies) Added members to device approvals exception list Only call this if :meth:`is_device_approvals_add_exception` is true. :rtype: DeviceApprovalsAddExceptionType """ if not self.is_device_approvals_add_exception(): raise AttributeError("tag 'device_approvals_add_exception' not set") return self._value def get_device_approvals_change_desktop_policy(self): """ (team_policies) Set/removed limit on number of computers member can link to team Dropbox account Only call this if :meth:`is_device_approvals_change_desktop_policy` is true. :rtype: DeviceApprovalsChangeDesktopPolicyType """ if not self.is_device_approvals_change_desktop_policy(): raise AttributeError("tag 'device_approvals_change_desktop_policy' not set") return self._value def get_device_approvals_change_mobile_policy(self): """ (team_policies) Set/removed limit on number of mobile devices member can link to team Dropbox account Only call this if :meth:`is_device_approvals_change_mobile_policy` is true. :rtype: DeviceApprovalsChangeMobilePolicyType """ if not self.is_device_approvals_change_mobile_policy(): raise AttributeError("tag 'device_approvals_change_mobile_policy' not set") return self._value def get_device_approvals_change_overage_action(self): """ (team_policies) Changed device approvals setting when member is over limit Only call this if :meth:`is_device_approvals_change_overage_action` is true. :rtype: DeviceApprovalsChangeOverageActionType """ if not self.is_device_approvals_change_overage_action(): raise AttributeError("tag 'device_approvals_change_overage_action' not set") return self._value def get_device_approvals_change_unlink_action(self): """ (team_policies) Changed device approvals setting when member unlinks approved device Only call this if :meth:`is_device_approvals_change_unlink_action` is true. :rtype: DeviceApprovalsChangeUnlinkActionType """ if not self.is_device_approvals_change_unlink_action(): raise AttributeError("tag 'device_approvals_change_unlink_action' not set") return self._value def get_device_approvals_remove_exception(self): """ (team_policies) Removed members from device approvals exception list Only call this if :meth:`is_device_approvals_remove_exception` is true. :rtype: DeviceApprovalsRemoveExceptionType """ if not self.is_device_approvals_remove_exception(): raise AttributeError("tag 'device_approvals_remove_exception' not set") return self._value def get_directory_restrictions_add_members(self): """ (team_policies) Added members to directory restrictions list Only call this if :meth:`is_directory_restrictions_add_members` is true. :rtype: DirectoryRestrictionsAddMembersType """ if not self.is_directory_restrictions_add_members(): raise AttributeError("tag 'directory_restrictions_add_members' not set") return self._value def get_directory_restrictions_remove_members(self): """ (team_policies) Removed members from directory restrictions list Only call this if :meth:`is_directory_restrictions_remove_members` is true. :rtype: DirectoryRestrictionsRemoveMembersType """ if not self.is_directory_restrictions_remove_members(): raise AttributeError("tag 'directory_restrictions_remove_members' not set") return self._value def get_dropbox_passwords_policy_changed(self): """ (team_policies) Changed Dropbox Passwords policy for team Only call this if :meth:`is_dropbox_passwords_policy_changed` is true. :rtype: DropboxPasswordsPolicyChangedType """ if not self.is_dropbox_passwords_policy_changed(): raise AttributeError("tag 'dropbox_passwords_policy_changed' not set") return self._value def get_email_ingest_policy_changed(self): """ (team_policies) Changed email to Dropbox policy for team Only call this if :meth:`is_email_ingest_policy_changed` is true. :rtype: EmailIngestPolicyChangedType """ if not self.is_email_ingest_policy_changed(): raise AttributeError("tag 'email_ingest_policy_changed' not set") return self._value def get_emm_add_exception(self): """ (team_policies) Added members to EMM exception list Only call this if :meth:`is_emm_add_exception` is true. :rtype: EmmAddExceptionType """ if not self.is_emm_add_exception(): raise AttributeError("tag 'emm_add_exception' not set") return self._value def get_emm_change_policy(self): """ (team_policies) Enabled/disabled enterprise mobility management for members Only call this if :meth:`is_emm_change_policy` is true. :rtype: EmmChangePolicyType """ if not self.is_emm_change_policy(): raise AttributeError("tag 'emm_change_policy' not set") return self._value def get_emm_remove_exception(self): """ (team_policies) Removed members from EMM exception list Only call this if :meth:`is_emm_remove_exception` is true. :rtype: EmmRemoveExceptionType """ if not self.is_emm_remove_exception(): raise AttributeError("tag 'emm_remove_exception' not set") return self._value def get_extended_version_history_change_policy(self): """ (team_policies) Accepted/opted out of extended version history Only call this if :meth:`is_extended_version_history_change_policy` is true. :rtype: ExtendedVersionHistoryChangePolicyType """ if not self.is_extended_version_history_change_policy(): raise AttributeError("tag 'extended_version_history_change_policy' not set") return self._value def get_external_drive_backup_policy_changed(self): """ (team_policies) Changed external drive backup policy for team Only call this if :meth:`is_external_drive_backup_policy_changed` is true. :rtype: ExternalDriveBackupPolicyChangedType """ if not self.is_external_drive_backup_policy_changed(): raise AttributeError("tag 'external_drive_backup_policy_changed' not set") return self._value def get_file_comments_change_policy(self): """ (team_policies) Enabled/disabled commenting on team files Only call this if :meth:`is_file_comments_change_policy` is true. :rtype: FileCommentsChangePolicyType """ if not self.is_file_comments_change_policy(): raise AttributeError("tag 'file_comments_change_policy' not set") return self._value def get_file_locking_policy_changed(self): """ (team_policies) Changed file locking policy for team Only call this if :meth:`is_file_locking_policy_changed` is true. :rtype: FileLockingPolicyChangedType """ if not self.is_file_locking_policy_changed(): raise AttributeError("tag 'file_locking_policy_changed' not set") return self._value def get_file_provider_migration_policy_changed(self): """ (team_policies) Changed File Provider Migration policy for team Only call this if :meth:`is_file_provider_migration_policy_changed` is true. :rtype: FileProviderMigrationPolicyChangedType """ if not self.is_file_provider_migration_policy_changed(): raise AttributeError("tag 'file_provider_migration_policy_changed' not set") return self._value def get_file_requests_change_policy(self): """ (team_policies) Enabled/disabled file requests Only call this if :meth:`is_file_requests_change_policy` is true. :rtype: FileRequestsChangePolicyType """ if not self.is_file_requests_change_policy(): raise AttributeError("tag 'file_requests_change_policy' not set") return self._value def get_file_requests_emails_enabled(self): """ (team_policies) Enabled file request emails for everyone (deprecated, no longer logged) Only call this if :meth:`is_file_requests_emails_enabled` is true. :rtype: FileRequestsEmailsEnabledType """ if not self.is_file_requests_emails_enabled(): raise AttributeError("tag 'file_requests_emails_enabled' not set") return self._value def get_file_requests_emails_restricted_to_team_only(self): """ (team_policies) Enabled file request emails for team (deprecated, no longer logged) Only call this if :meth:`is_file_requests_emails_restricted_to_team_only` is true. :rtype: FileRequestsEmailsRestrictedToTeamOnlyType """ if not self.is_file_requests_emails_restricted_to_team_only(): raise AttributeError("tag 'file_requests_emails_restricted_to_team_only' not set") return self._value def get_file_transfers_policy_changed(self): """ (team_policies) Changed file transfers policy for team Only call this if :meth:`is_file_transfers_policy_changed` is true. :rtype: FileTransfersPolicyChangedType """ if not self.is_file_transfers_policy_changed(): raise AttributeError("tag 'file_transfers_policy_changed' not set") return self._value def get_folder_link_restriction_policy_changed(self): """ (team_policies) Changed folder link restrictions policy for team Only call this if :meth:`is_folder_link_restriction_policy_changed` is true. :rtype: FolderLinkRestrictionPolicyChangedType """ if not self.is_folder_link_restriction_policy_changed(): raise AttributeError("tag 'folder_link_restriction_policy_changed' not set") return self._value def get_google_sso_change_policy(self): """ (team_policies) Enabled/disabled Google single sign-on for team Only call this if :meth:`is_google_sso_change_policy` is true. :rtype: GoogleSsoChangePolicyType """ if not self.is_google_sso_change_policy(): raise AttributeError("tag 'google_sso_change_policy' not set") return self._value def get_group_user_management_change_policy(self): """ (team_policies) Changed who can create groups Only call this if :meth:`is_group_user_management_change_policy` is true. :rtype: GroupUserManagementChangePolicyType """ if not self.is_group_user_management_change_policy(): raise AttributeError("tag 'group_user_management_change_policy' not set") return self._value def get_integration_policy_changed(self): """ (team_policies) Changed integration policy for team Only call this if :meth:`is_integration_policy_changed` is true. :rtype: IntegrationPolicyChangedType """ if not self.is_integration_policy_changed(): raise AttributeError("tag 'integration_policy_changed' not set") return self._value def get_invite_acceptance_email_policy_changed(self): """ (team_policies) Changed invite accept email policy for team Only call this if :meth:`is_invite_acceptance_email_policy_changed` is true. :rtype: InviteAcceptanceEmailPolicyChangedType """ if not self.is_invite_acceptance_email_policy_changed(): raise AttributeError("tag 'invite_acceptance_email_policy_changed' not set") return self._value def get_member_requests_change_policy(self): """ (team_policies) Changed whether users can find team when not invited Only call this if :meth:`is_member_requests_change_policy` is true. :rtype: MemberRequestsChangePolicyType """ if not self.is_member_requests_change_policy(): raise AttributeError("tag 'member_requests_change_policy' not set") return self._value def get_member_send_invite_policy_changed(self): """ (team_policies) Changed member send invite policy for team Only call this if :meth:`is_member_send_invite_policy_changed` is true. :rtype: MemberSendInvitePolicyChangedType """ if not self.is_member_send_invite_policy_changed(): raise AttributeError("tag 'member_send_invite_policy_changed' not set") return self._value def get_member_space_limits_add_exception(self): """ (team_policies) Added members to member space limit exception list Only call this if :meth:`is_member_space_limits_add_exception` is true. :rtype: MemberSpaceLimitsAddExceptionType """ if not self.is_member_space_limits_add_exception(): raise AttributeError("tag 'member_space_limits_add_exception' not set") return self._value def get_member_space_limits_change_caps_type_policy(self): """ (team_policies) Changed member space limit type for team Only call this if :meth:`is_member_space_limits_change_caps_type_policy` is true. :rtype: MemberSpaceLimitsChangeCapsTypePolicyType """ if not self.is_member_space_limits_change_caps_type_policy(): raise AttributeError("tag 'member_space_limits_change_caps_type_policy' not set") return self._value def get_member_space_limits_change_policy(self): """ (team_policies) Changed team default member space limit Only call this if :meth:`is_member_space_limits_change_policy` is true. :rtype: MemberSpaceLimitsChangePolicyType """ if not self.is_member_space_limits_change_policy(): raise AttributeError("tag 'member_space_limits_change_policy' not set") return self._value def get_member_space_limits_remove_exception(self): """ (team_policies) Removed members from member space limit exception list Only call this if :meth:`is_member_space_limits_remove_exception` is true. :rtype: MemberSpaceLimitsRemoveExceptionType """ if not self.is_member_space_limits_remove_exception(): raise AttributeError("tag 'member_space_limits_remove_exception' not set") return self._value def get_member_suggestions_change_policy(self): """ (team_policies) Enabled/disabled option for team members to suggest people to add to team Only call this if :meth:`is_member_suggestions_change_policy` is true. :rtype: MemberSuggestionsChangePolicyType """ if not self.is_member_suggestions_change_policy(): raise AttributeError("tag 'member_suggestions_change_policy' not set") return self._value def get_microsoft_office_addin_change_policy(self): """ (team_policies) Enabled/disabled Microsoft Office add-in Only call this if :meth:`is_microsoft_office_addin_change_policy` is true. :rtype: MicrosoftOfficeAddinChangePolicyType """ if not self.is_microsoft_office_addin_change_policy(): raise AttributeError("tag 'microsoft_office_addin_change_policy' not set") return self._value def get_network_control_change_policy(self): """ (team_policies) Enabled/disabled network control Only call this if :meth:`is_network_control_change_policy` is true. :rtype: NetworkControlChangePolicyType """ if not self.is_network_control_change_policy(): raise AttributeError("tag 'network_control_change_policy' not set") return self._value def get_paper_change_deployment_policy(self): """ (team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members Only call this if :meth:`is_paper_change_deployment_policy` is true. :rtype: PaperChangeDeploymentPolicyType """ if not self.is_paper_change_deployment_policy(): raise AttributeError("tag 'paper_change_deployment_policy' not set") return self._value def get_paper_change_member_link_policy(self): """ (team_policies) Changed whether non-members can view Paper docs with link (deprecated, no longer logged) Only call this if :meth:`is_paper_change_member_link_policy` is true. :rtype: PaperChangeMemberLinkPolicyType """ if not self.is_paper_change_member_link_policy(): raise AttributeError("tag 'paper_change_member_link_policy' not set") return self._value def get_paper_change_member_policy(self): """ (team_policies) Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or anyone by default Only call this if :meth:`is_paper_change_member_policy` is true. :rtype: PaperChangeMemberPolicyType """ if not self.is_paper_change_member_policy(): raise AttributeError("tag 'paper_change_member_policy' not set") return self._value def get_paper_change_policy(self): """ (team_policies) Enabled/disabled Dropbox Paper for team Only call this if :meth:`is_paper_change_policy` is true. :rtype: PaperChangePolicyType """ if not self.is_paper_change_policy(): raise AttributeError("tag 'paper_change_policy' not set") return self._value def get_paper_default_folder_policy_changed(self): """ (team_policies) Changed Paper Default Folder Policy setting for team Only call this if :meth:`is_paper_default_folder_policy_changed` is true. :rtype: PaperDefaultFolderPolicyChangedType """ if not self.is_paper_default_folder_policy_changed(): raise AttributeError("tag 'paper_default_folder_policy_changed' not set") return self._value def get_paper_desktop_policy_changed(self): """ (team_policies) Enabled/disabled Paper Desktop for team Only call this if :meth:`is_paper_desktop_policy_changed` is true. :rtype: PaperDesktopPolicyChangedType """ if not self.is_paper_desktop_policy_changed(): raise AttributeError("tag 'paper_desktop_policy_changed' not set") return self._value def get_paper_enabled_users_group_addition(self): """ (team_policies) Added users to Paper-enabled users list Only call this if :meth:`is_paper_enabled_users_group_addition` is true. :rtype: PaperEnabledUsersGroupAdditionType """ if not self.is_paper_enabled_users_group_addition(): raise AttributeError("tag 'paper_enabled_users_group_addition' not set") return self._value def get_paper_enabled_users_group_removal(self): """ (team_policies) Removed users from Paper-enabled users list Only call this if :meth:`is_paper_enabled_users_group_removal` is true. :rtype: PaperEnabledUsersGroupRemovalType """ if not self.is_paper_enabled_users_group_removal(): raise AttributeError("tag 'paper_enabled_users_group_removal' not set") return self._value def get_password_strength_requirements_change_policy(self): """ (team_policies) Changed team password strength requirements Only call this if :meth:`is_password_strength_requirements_change_policy` is true. :rtype: PasswordStrengthRequirementsChangePolicyType """ if not self.is_password_strength_requirements_change_policy(): raise AttributeError("tag 'password_strength_requirements_change_policy' not set") return self._value def get_permanent_delete_change_policy(self): """ (team_policies) Enabled/disabled ability of team members to permanently delete content Only call this if :meth:`is_permanent_delete_change_policy` is true. :rtype: PermanentDeleteChangePolicyType """ if not self.is_permanent_delete_change_policy(): raise AttributeError("tag 'permanent_delete_change_policy' not set") return self._value def get_reseller_support_change_policy(self): """ (team_policies) Enabled/disabled reseller support Only call this if :meth:`is_reseller_support_change_policy` is true. :rtype: ResellerSupportChangePolicyType """ if not self.is_reseller_support_change_policy(): raise AttributeError("tag 'reseller_support_change_policy' not set") return self._value def get_rewind_policy_changed(self): """ (team_policies) Changed Rewind policy for team Only call this if :meth:`is_rewind_policy_changed` is true. :rtype: RewindPolicyChangedType """ if not self.is_rewind_policy_changed(): raise AttributeError("tag 'rewind_policy_changed' not set") return self._value def get_send_for_signature_policy_changed(self): """ (team_policies) Changed send for signature policy for team Only call this if :meth:`is_send_for_signature_policy_changed` is true. :rtype: SendForSignaturePolicyChangedType """ if not self.is_send_for_signature_policy_changed(): raise AttributeError("tag 'send_for_signature_policy_changed' not set") return self._value def get_sharing_change_folder_join_policy(self): """ (team_policies) Changed whether team members can join shared folders owned outside team Only call this if :meth:`is_sharing_change_folder_join_policy` is true. :rtype: SharingChangeFolderJoinPolicyType """ if not self.is_sharing_change_folder_join_policy(): raise AttributeError("tag 'sharing_change_folder_join_policy' not set") return self._value def get_sharing_change_link_allow_change_expiration_policy(self): """ (team_policies) Changed the allow remove or change expiration policy for the links shared outside of the team Only call this if :meth:`is_sharing_change_link_allow_change_expiration_policy` is true. :rtype: SharingChangeLinkAllowChangeExpirationPolicyType """ if not self.is_sharing_change_link_allow_change_expiration_policy(): raise AttributeError("tag 'sharing_change_link_allow_change_expiration_policy' not set") return self._value def get_sharing_change_link_default_expiration_policy(self): """ (team_policies) Changed the default expiration for the links shared outside of the team Only call this if :meth:`is_sharing_change_link_default_expiration_policy` is true. :rtype: SharingChangeLinkDefaultExpirationPolicyType """ if not self.is_sharing_change_link_default_expiration_policy(): raise AttributeError("tag 'sharing_change_link_default_expiration_policy' not set") return self._value def get_sharing_change_link_enforce_password_policy(self): """ (team_policies) Changed the password requirement for the links shared outside of the team Only call this if :meth:`is_sharing_change_link_enforce_password_policy` is true. :rtype: SharingChangeLinkEnforcePasswordPolicyType """ if not self.is_sharing_change_link_enforce_password_policy(): raise AttributeError("tag 'sharing_change_link_enforce_password_policy' not set") return self._value def get_sharing_change_link_policy(self): """ (team_policies) Changed whether members can share links outside team, and if links are accessible only by team members or anyone by default Only call this if :meth:`is_sharing_change_link_policy` is true. :rtype: SharingChangeLinkPolicyType """ if not self.is_sharing_change_link_policy(): raise AttributeError("tag 'sharing_change_link_policy' not set") return self._value def get_sharing_change_member_policy(self): """ (team_policies) Changed whether members can share files/folders outside team Only call this if :meth:`is_sharing_change_member_policy` is true. :rtype: SharingChangeMemberPolicyType """ if not self.is_sharing_change_member_policy(): raise AttributeError("tag 'sharing_change_member_policy' not set") return self._value def get_showcase_change_download_policy(self): """ (team_policies) Enabled/disabled downloading files from Dropbox Showcase for team Only call this if :meth:`is_showcase_change_download_policy` is true. :rtype: ShowcaseChangeDownloadPolicyType """ if not self.is_showcase_change_download_policy(): raise AttributeError("tag 'showcase_change_download_policy' not set") return self._value def get_showcase_change_enabled_policy(self): """ (team_policies) Enabled/disabled Dropbox Showcase for team Only call this if :meth:`is_showcase_change_enabled_policy` is true. :rtype: ShowcaseChangeEnabledPolicyType """ if not self.is_showcase_change_enabled_policy(): raise AttributeError("tag 'showcase_change_enabled_policy' not set") return self._value def get_showcase_change_external_sharing_policy(self): """ (team_policies) Enabled/disabled sharing Dropbox Showcase externally for team Only call this if :meth:`is_showcase_change_external_sharing_policy` is true. :rtype: ShowcaseChangeExternalSharingPolicyType """ if not self.is_showcase_change_external_sharing_policy(): raise AttributeError("tag 'showcase_change_external_sharing_policy' not set") return self._value def get_smarter_smart_sync_policy_changed(self): """ (team_policies) Changed automatic Smart Sync setting for team Only call this if :meth:`is_smarter_smart_sync_policy_changed` is true. :rtype: SmarterSmartSyncPolicyChangedType """ if not self.is_smarter_smart_sync_policy_changed(): raise AttributeError("tag 'smarter_smart_sync_policy_changed' not set") return self._value def get_smart_sync_change_policy(self): """ (team_policies) Changed default Smart Sync setting for team members Only call this if :meth:`is_smart_sync_change_policy` is true. :rtype: SmartSyncChangePolicyType """ if not self.is_smart_sync_change_policy(): raise AttributeError("tag 'smart_sync_change_policy' not set") return self._value def get_smart_sync_not_opt_out(self): """ (team_policies) Opted team into Smart Sync Only call this if :meth:`is_smart_sync_not_opt_out` is true. :rtype: SmartSyncNotOptOutType """ if not self.is_smart_sync_not_opt_out(): raise AttributeError("tag 'smart_sync_not_opt_out' not set") return self._value def get_smart_sync_opt_out(self): """ (team_policies) Opted team out of Smart Sync Only call this if :meth:`is_smart_sync_opt_out` is true. :rtype: SmartSyncOptOutType """ if not self.is_smart_sync_opt_out(): raise AttributeError("tag 'smart_sync_opt_out' not set") return self._value def get_sso_change_policy(self): """ (team_policies) Changed single sign-on setting for team Only call this if :meth:`is_sso_change_policy` is true. :rtype: SsoChangePolicyType """ if not self.is_sso_change_policy(): raise AttributeError("tag 'sso_change_policy' not set") return self._value def get_team_branding_policy_changed(self): """ (team_policies) Changed team branding policy for team Only call this if :meth:`is_team_branding_policy_changed` is true. :rtype: TeamBrandingPolicyChangedType """ if not self.is_team_branding_policy_changed(): raise AttributeError("tag 'team_branding_policy_changed' not set") return self._value def get_team_extensions_policy_changed(self): """ (team_policies) Changed App Integrations setting for team Only call this if :meth:`is_team_extensions_policy_changed` is true. :rtype: TeamExtensionsPolicyChangedType """ if not self.is_team_extensions_policy_changed(): raise AttributeError("tag 'team_extensions_policy_changed' not set") return self._value def get_team_selective_sync_policy_changed(self): """ (team_policies) Enabled/disabled Team Selective Sync for team Only call this if :meth:`is_team_selective_sync_policy_changed` is true. :rtype: TeamSelectiveSyncPolicyChangedType """ if not self.is_team_selective_sync_policy_changed(): raise AttributeError("tag 'team_selective_sync_policy_changed' not set") return self._value def get_team_sharing_whitelist_subjects_changed(self): """ (team_policies) Edited the approved list for sharing externally Only call this if :meth:`is_team_sharing_whitelist_subjects_changed` is true. :rtype: TeamSharingWhitelistSubjectsChangedType """ if not self.is_team_sharing_whitelist_subjects_changed(): raise AttributeError("tag 'team_sharing_whitelist_subjects_changed' not set") return self._value def get_tfa_add_exception(self): """ (team_policies) Added members to two factor authentication exception list Only call this if :meth:`is_tfa_add_exception` is true. :rtype: TfaAddExceptionType """ if not self.is_tfa_add_exception(): raise AttributeError("tag 'tfa_add_exception' not set") return self._value def get_tfa_change_policy(self): """ (team_policies) Changed two-step verification setting for team Only call this if :meth:`is_tfa_change_policy` is true. :rtype: TfaChangePolicyType """ if not self.is_tfa_change_policy(): raise AttributeError("tag 'tfa_change_policy' not set") return self._value def get_tfa_remove_exception(self): """ (team_policies) Removed members from two factor authentication exception list Only call this if :meth:`is_tfa_remove_exception` is true. :rtype: TfaRemoveExceptionType """ if not self.is_tfa_remove_exception(): raise AttributeError("tag 'tfa_remove_exception' not set") return self._value def get_two_account_change_policy(self): """ (team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to same computer Only call this if :meth:`is_two_account_change_policy` is true. :rtype: TwoAccountChangePolicyType """ if not self.is_two_account_change_policy(): raise AttributeError("tag 'two_account_change_policy' not set") return self._value def get_viewer_info_policy_changed(self): """ (team_policies) Changed team policy for viewer info Only call this if :meth:`is_viewer_info_policy_changed` is true. :rtype: ViewerInfoPolicyChangedType """ if not self.is_viewer_info_policy_changed(): raise AttributeError("tag 'viewer_info_policy_changed' not set") return self._value def get_watermarking_policy_changed(self): """ (team_policies) Changed watermarking policy for team Only call this if :meth:`is_watermarking_policy_changed` is true. :rtype: WatermarkingPolicyChangedType """ if not self.is_watermarking_policy_changed(): raise AttributeError("tag 'watermarking_policy_changed' not set") return self._value def get_web_sessions_change_active_session_limit(self): """ (team_policies) Changed limit on active sessions per member Only call this if :meth:`is_web_sessions_change_active_session_limit` is true. :rtype: WebSessionsChangeActiveSessionLimitType """ if not self.is_web_sessions_change_active_session_limit(): raise AttributeError("tag 'web_sessions_change_active_session_limit' not set") return self._value def get_web_sessions_change_fixed_length_policy(self): """ (team_policies) Changed how long members can stay signed in to Dropbox.com Only call this if :meth:`is_web_sessions_change_fixed_length_policy` is true. :rtype: WebSessionsChangeFixedLengthPolicyType """ if not self.is_web_sessions_change_fixed_length_policy(): raise AttributeError("tag 'web_sessions_change_fixed_length_policy' not set") return self._value def get_web_sessions_change_idle_length_policy(self): """ (team_policies) Changed how long team members can be idle while signed in to Dropbox.com Only call this if :meth:`is_web_sessions_change_idle_length_policy` is true. :rtype: WebSessionsChangeIdleLengthPolicyType """ if not self.is_web_sessions_change_idle_length_policy(): raise AttributeError("tag 'web_sessions_change_idle_length_policy' not set") return self._value def get_data_residency_migration_request_successful(self): """ (team_profile) Requested data residency migration for team data Only call this if :meth:`is_data_residency_migration_request_successful` is true. :rtype: DataResidencyMigrationRequestSuccessfulType """ if not self.is_data_residency_migration_request_successful(): raise AttributeError("tag 'data_residency_migration_request_successful' not set") return self._value def get_data_residency_migration_request_unsuccessful(self): """ (team_profile) Request for data residency migration for team data has failed Only call this if :meth:`is_data_residency_migration_request_unsuccessful` is true. :rtype: DataResidencyMigrationRequestUnsuccessfulType """ if not self.is_data_residency_migration_request_unsuccessful(): raise AttributeError("tag 'data_residency_migration_request_unsuccessful' not set") return self._value def get_team_merge_from(self): """ (team_profile) Merged another team into this team Only call this if :meth:`is_team_merge_from` is true. :rtype: TeamMergeFromType """ if not self.is_team_merge_from(): raise AttributeError("tag 'team_merge_from' not set") return self._value def get_team_merge_to(self): """ (team_profile) Merged this team into another team Only call this if :meth:`is_team_merge_to` is true. :rtype: TeamMergeToType """ if not self.is_team_merge_to(): raise AttributeError("tag 'team_merge_to' not set") return self._value def get_team_profile_add_background(self): """ (team_profile) Added team background to display on shared link headers Only call this if :meth:`is_team_profile_add_background` is true. :rtype: TeamProfileAddBackgroundType """ if not self.is_team_profile_add_background(): raise AttributeError("tag 'team_profile_add_background' not set") return self._value def get_team_profile_add_logo(self): """ (team_profile) Added team logo to display on shared link headers Only call this if :meth:`is_team_profile_add_logo` is true. :rtype: TeamProfileAddLogoType """ if not self.is_team_profile_add_logo(): raise AttributeError("tag 'team_profile_add_logo' not set") return self._value def get_team_profile_change_background(self): """ (team_profile) Changed team background displayed on shared link headers Only call this if :meth:`is_team_profile_change_background` is true. :rtype: TeamProfileChangeBackgroundType """ if not self.is_team_profile_change_background(): raise AttributeError("tag 'team_profile_change_background' not set") return self._value def get_team_profile_change_default_language(self): """ (team_profile) Changed default language for team Only call this if :meth:`is_team_profile_change_default_language` is true. :rtype: TeamProfileChangeDefaultLanguageType """ if not self.is_team_profile_change_default_language(): raise AttributeError("tag 'team_profile_change_default_language' not set") return self._value def get_team_profile_change_logo(self): """ (team_profile) Changed team logo displayed on shared link headers Only call this if :meth:`is_team_profile_change_logo` is true. :rtype: TeamProfileChangeLogoType """ if not self.is_team_profile_change_logo(): raise AttributeError("tag 'team_profile_change_logo' not set") return self._value def get_team_profile_change_name(self): """ (team_profile) Changed team name Only call this if :meth:`is_team_profile_change_name` is true. :rtype: TeamProfileChangeNameType """ if not self.is_team_profile_change_name(): raise AttributeError("tag 'team_profile_change_name' not set") return self._value def get_team_profile_remove_background(self): """ (team_profile) Removed team background displayed on shared link headers Only call this if :meth:`is_team_profile_remove_background` is true. :rtype: TeamProfileRemoveBackgroundType """ if not self.is_team_profile_remove_background(): raise AttributeError("tag 'team_profile_remove_background' not set") return self._value def get_team_profile_remove_logo(self): """ (team_profile) Removed team logo displayed on shared link headers Only call this if :meth:`is_team_profile_remove_logo` is true. :rtype: TeamProfileRemoveLogoType """ if not self.is_team_profile_remove_logo(): raise AttributeError("tag 'team_profile_remove_logo' not set") return self._value def get_tfa_add_backup_phone(self): """ (tfa) Added backup phone for two-step verification Only call this if :meth:`is_tfa_add_backup_phone` is true. :rtype: TfaAddBackupPhoneType """ if not self.is_tfa_add_backup_phone(): raise AttributeError("tag 'tfa_add_backup_phone' not set") return self._value def get_tfa_add_security_key(self): """ (tfa) Added security key for two-step verification Only call this if :meth:`is_tfa_add_security_key` is true. :rtype: TfaAddSecurityKeyType """ if not self.is_tfa_add_security_key(): raise AttributeError("tag 'tfa_add_security_key' not set") return self._value def get_tfa_change_backup_phone(self): """ (tfa) Changed backup phone for two-step verification Only call this if :meth:`is_tfa_change_backup_phone` is true. :rtype: TfaChangeBackupPhoneType """ if not self.is_tfa_change_backup_phone(): raise AttributeError("tag 'tfa_change_backup_phone' not set") return self._value def get_tfa_change_status(self): """ (tfa) Enabled/disabled/changed two-step verification setting Only call this if :meth:`is_tfa_change_status` is true. :rtype: TfaChangeStatusType """ if not self.is_tfa_change_status(): raise AttributeError("tag 'tfa_change_status' not set") return self._value def get_tfa_remove_backup_phone(self): """ (tfa) Removed backup phone for two-step verification Only call this if :meth:`is_tfa_remove_backup_phone` is true. :rtype: TfaRemoveBackupPhoneType """ if not self.is_tfa_remove_backup_phone(): raise AttributeError("tag 'tfa_remove_backup_phone' not set") return self._value def get_tfa_remove_security_key(self): """ (tfa) Removed security key for two-step verification Only call this if :meth:`is_tfa_remove_security_key` is true. :rtype: TfaRemoveSecurityKeyType """ if not self.is_tfa_remove_security_key(): raise AttributeError("tag 'tfa_remove_security_key' not set") return self._value def get_tfa_reset(self): """ (tfa) Reset two-step verification for team member Only call this if :meth:`is_tfa_reset` is true. :rtype: TfaResetType """ if not self.is_tfa_reset(): raise AttributeError("tag 'tfa_reset' not set") return self._value def get_changed_enterprise_admin_role(self): """ (trusted_teams) Changed enterprise admin role Only call this if :meth:`is_changed_enterprise_admin_role` is true. :rtype: ChangedEnterpriseAdminRoleType """ if not self.is_changed_enterprise_admin_role(): raise AttributeError("tag 'changed_enterprise_admin_role' not set") return self._value def get_changed_enterprise_connected_team_status(self): """ (trusted_teams) Changed enterprise-connected team status Only call this if :meth:`is_changed_enterprise_connected_team_status` is true. :rtype: ChangedEnterpriseConnectedTeamStatusType """ if not self.is_changed_enterprise_connected_team_status(): raise AttributeError("tag 'changed_enterprise_connected_team_status' not set") return self._value def get_ended_enterprise_admin_session(self): """ (trusted_teams) Ended enterprise admin session Only call this if :meth:`is_ended_enterprise_admin_session` is true. :rtype: EndedEnterpriseAdminSessionType """ if not self.is_ended_enterprise_admin_session(): raise AttributeError("tag 'ended_enterprise_admin_session' not set") return self._value def get_ended_enterprise_admin_session_deprecated(self): """ (trusted_teams) Ended enterprise admin session (deprecated, replaced by 'Ended enterprise admin session') Only call this if :meth:`is_ended_enterprise_admin_session_deprecated` is true. :rtype: EndedEnterpriseAdminSessionDeprecatedType """ if not self.is_ended_enterprise_admin_session_deprecated(): raise AttributeError("tag 'ended_enterprise_admin_session_deprecated' not set") return self._value def get_enterprise_settings_locking(self): """ (trusted_teams) Changed who can update a setting Only call this if :meth:`is_enterprise_settings_locking` is true. :rtype: EnterpriseSettingsLockingType """ if not self.is_enterprise_settings_locking(): raise AttributeError("tag 'enterprise_settings_locking' not set") return self._value def get_guest_admin_change_status(self): """ (trusted_teams) Changed guest team admin status Only call this if :meth:`is_guest_admin_change_status` is true. :rtype: GuestAdminChangeStatusType """ if not self.is_guest_admin_change_status(): raise AttributeError("tag 'guest_admin_change_status' not set") return self._value def get_started_enterprise_admin_session(self): """ (trusted_teams) Started enterprise admin session Only call this if :meth:`is_started_enterprise_admin_session` is true. :rtype: StartedEnterpriseAdminSessionType """ if not self.is_started_enterprise_admin_session(): raise AttributeError("tag 'started_enterprise_admin_session' not set") return self._value def get_team_merge_request_accepted(self): """ (trusted_teams) Accepted a team merge request Only call this if :meth:`is_team_merge_request_accepted` is true. :rtype: TeamMergeRequestAcceptedType """ if not self.is_team_merge_request_accepted(): raise AttributeError("tag 'team_merge_request_accepted' not set") return self._value def get_team_merge_request_accepted_shown_to_primary_team(self): """ (trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request') Only call this if :meth:`is_team_merge_request_accepted_shown_to_primary_team` is true. :rtype: TeamMergeRequestAcceptedShownToPrimaryTeamType """ if not self.is_team_merge_request_accepted_shown_to_primary_team(): raise AttributeError("tag 'team_merge_request_accepted_shown_to_primary_team' not set") return self._value def get_team_merge_request_accepted_shown_to_secondary_team(self): """ (trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request') Only call this if :meth:`is_team_merge_request_accepted_shown_to_secondary_team` is true. :rtype: TeamMergeRequestAcceptedShownToSecondaryTeamType """ if not self.is_team_merge_request_accepted_shown_to_secondary_team(): raise AttributeError("tag 'team_merge_request_accepted_shown_to_secondary_team' not set") return self._value def get_team_merge_request_auto_canceled(self): """ (trusted_teams) Automatically canceled team merge request Only call this if :meth:`is_team_merge_request_auto_canceled` is true. :rtype: TeamMergeRequestAutoCanceledType """ if not self.is_team_merge_request_auto_canceled(): raise AttributeError("tag 'team_merge_request_auto_canceled' not set") return self._value def get_team_merge_request_canceled(self): """ (trusted_teams) Canceled a team merge request Only call this if :meth:`is_team_merge_request_canceled` is true. :rtype: TeamMergeRequestCanceledType """ if not self.is_team_merge_request_canceled(): raise AttributeError("tag 'team_merge_request_canceled' not set") return self._value def get_team_merge_request_canceled_shown_to_primary_team(self): """ (trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request') Only call this if :meth:`is_team_merge_request_canceled_shown_to_primary_team` is true. :rtype: TeamMergeRequestCanceledShownToPrimaryTeamType """ if not self.is_team_merge_request_canceled_shown_to_primary_team(): raise AttributeError("tag 'team_merge_request_canceled_shown_to_primary_team' not set") return self._value def get_team_merge_request_canceled_shown_to_secondary_team(self): """ (trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request') Only call this if :meth:`is_team_merge_request_canceled_shown_to_secondary_team` is true. :rtype: TeamMergeRequestCanceledShownToSecondaryTeamType """ if not self.is_team_merge_request_canceled_shown_to_secondary_team(): raise AttributeError("tag 'team_merge_request_canceled_shown_to_secondary_team' not set") return self._value def get_team_merge_request_expired(self): """ (trusted_teams) Team merge request expired Only call this if :meth:`is_team_merge_request_expired` is true. :rtype: TeamMergeRequestExpiredType """ if not self.is_team_merge_request_expired(): raise AttributeError("tag 'team_merge_request_expired' not set") return self._value def get_team_merge_request_expired_shown_to_primary_team(self): """ (trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired') Only call this if :meth:`is_team_merge_request_expired_shown_to_primary_team` is true. :rtype: TeamMergeRequestExpiredShownToPrimaryTeamType """ if not self.is_team_merge_request_expired_shown_to_primary_team(): raise AttributeError("tag 'team_merge_request_expired_shown_to_primary_team' not set") return self._value def get_team_merge_request_expired_shown_to_secondary_team(self): """ (trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired') Only call this if :meth:`is_team_merge_request_expired_shown_to_secondary_team` is true. :rtype: TeamMergeRequestExpiredShownToSecondaryTeamType """ if not self.is_team_merge_request_expired_shown_to_secondary_team(): raise AttributeError("tag 'team_merge_request_expired_shown_to_secondary_team' not set") return self._value def get_team_merge_request_rejected_shown_to_primary_team(self): """ (trusted_teams) Rejected a team merge request (deprecated, no longer logged) Only call this if :meth:`is_team_merge_request_rejected_shown_to_primary_team` is true. :rtype: TeamMergeRequestRejectedShownToPrimaryTeamType """ if not self.is_team_merge_request_rejected_shown_to_primary_team(): raise AttributeError("tag 'team_merge_request_rejected_shown_to_primary_team' not set") return self._value def get_team_merge_request_rejected_shown_to_secondary_team(self): """ (trusted_teams) Rejected a team merge request (deprecated, no longer logged) Only call this if :meth:`is_team_merge_request_rejected_shown_to_secondary_team` is true. :rtype: TeamMergeRequestRejectedShownToSecondaryTeamType """ if not self.is_team_merge_request_rejected_shown_to_secondary_team(): raise AttributeError("tag 'team_merge_request_rejected_shown_to_secondary_team' not set") return self._value def get_team_merge_request_reminder(self): """ (trusted_teams) Sent a team merge request reminder Only call this if :meth:`is_team_merge_request_reminder` is true. :rtype: TeamMergeRequestReminderType """ if not self.is_team_merge_request_reminder(): raise AttributeError("tag 'team_merge_request_reminder' not set") return self._value def get_team_merge_request_reminder_shown_to_primary_team(self): """ (trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder') Only call this if :meth:`is_team_merge_request_reminder_shown_to_primary_team` is true. :rtype: TeamMergeRequestReminderShownToPrimaryTeamType """ if not self.is_team_merge_request_reminder_shown_to_primary_team(): raise AttributeError("tag 'team_merge_request_reminder_shown_to_primary_team' not set") return self._value def get_team_merge_request_reminder_shown_to_secondary_team(self): """ (trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder') Only call this if :meth:`is_team_merge_request_reminder_shown_to_secondary_team` is true. :rtype: TeamMergeRequestReminderShownToSecondaryTeamType """ if not self.is_team_merge_request_reminder_shown_to_secondary_team(): raise AttributeError("tag 'team_merge_request_reminder_shown_to_secondary_team' not set") return self._value def get_team_merge_request_revoked(self): """ (trusted_teams) Canceled the team merge Only call this if :meth:`is_team_merge_request_revoked` is true. :rtype: TeamMergeRequestRevokedType """ if not self.is_team_merge_request_revoked(): raise AttributeError("tag 'team_merge_request_revoked' not set") return self._value def get_team_merge_request_sent_shown_to_primary_team(self): """ (trusted_teams) Requested to merge their Dropbox team into yours Only call this if :meth:`is_team_merge_request_sent_shown_to_primary_team` is true. :rtype: TeamMergeRequestSentShownToPrimaryTeamType """ if not self.is_team_merge_request_sent_shown_to_primary_team(): raise AttributeError("tag 'team_merge_request_sent_shown_to_primary_team' not set") return self._value def get_team_merge_request_sent_shown_to_secondary_team(self): """ (trusted_teams) Requested to merge your team into another Dropbox team Only call this if :meth:`is_team_merge_request_sent_shown_to_secondary_team` is true. :rtype: TeamMergeRequestSentShownToSecondaryTeamType """ if not self.is_team_merge_request_sent_shown_to_secondary_team(): raise AttributeError("tag 'team_merge_request_sent_shown_to_secondary_team' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(EventType, self)._process_custom_annotations(annotation_type, field_path, processor) EventType_validator = bv.Union(EventType) class EventTypeArg(bb.Union): """ The type of the event. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_log.EventTypeArg.admin_alerting_alert_state_changed: (admin_alerting) Changed an alert state :ivar team_log.EventTypeArg.admin_alerting_changed_alert_config: (admin_alerting) Changed an alert setting :ivar team_log.EventTypeArg.admin_alerting_triggered_alert: (admin_alerting) Triggered security alert :ivar team_log.EventTypeArg.ransomware_restore_process_completed: (admin_alerting) Completed ransomware restore process :ivar team_log.EventTypeArg.ransomware_restore_process_started: (admin_alerting) Started ransomware restore process :ivar team_log.EventTypeArg.app_blocked_by_permissions: (apps) Failed to connect app for member :ivar team_log.EventTypeArg.app_link_team: (apps) Linked app for team :ivar team_log.EventTypeArg.app_link_user: (apps) Linked app for member :ivar team_log.EventTypeArg.app_unlink_team: (apps) Unlinked app for team :ivar team_log.EventTypeArg.app_unlink_user: (apps) Unlinked app for member :ivar team_log.EventTypeArg.integration_connected: (apps) Connected integration for member :ivar team_log.EventTypeArg.integration_disconnected: (apps) Disconnected integration for member :ivar team_log.EventTypeArg.file_add_comment: (comments) Added file comment :ivar team_log.EventTypeArg.file_change_comment_subscription: (comments) Subscribed to or unsubscribed from comment notifications for file :ivar team_log.EventTypeArg.file_delete_comment: (comments) Deleted file comment :ivar team_log.EventTypeArg.file_edit_comment: (comments) Edited file comment :ivar team_log.EventTypeArg.file_like_comment: (comments) Liked file comment (deprecated, no longer logged) :ivar team_log.EventTypeArg.file_resolve_comment: (comments) Resolved file comment :ivar team_log.EventTypeArg.file_unlike_comment: (comments) Unliked file comment (deprecated, no longer logged) :ivar team_log.EventTypeArg.file_unresolve_comment: (comments) Unresolved file comment :ivar team_log.EventTypeArg.governance_policy_add_folders: (data_governance) Added folders to policy :ivar team_log.EventTypeArg.governance_policy_add_folder_failed: (data_governance) Couldn't add a folder to a policy :ivar team_log.EventTypeArg.governance_policy_content_disposed: (data_governance) Content disposed :ivar team_log.EventTypeArg.governance_policy_create: (data_governance) Activated a new policy :ivar team_log.EventTypeArg.governance_policy_delete: (data_governance) Deleted a policy :ivar team_log.EventTypeArg.governance_policy_edit_details: (data_governance) Edited policy :ivar team_log.EventTypeArg.governance_policy_edit_duration: (data_governance) Changed policy duration :ivar team_log.EventTypeArg.governance_policy_export_created: (data_governance) Created a policy download :ivar team_log.EventTypeArg.governance_policy_export_removed: (data_governance) Removed a policy download :ivar team_log.EventTypeArg.governance_policy_remove_folders: (data_governance) Removed folders from policy :ivar team_log.EventTypeArg.governance_policy_report_created: (data_governance) Created a summary report for a policy :ivar team_log.EventTypeArg.governance_policy_zip_part_downloaded: (data_governance) Downloaded content from a policy :ivar team_log.EventTypeArg.legal_holds_activate_a_hold: (data_governance) Activated a hold :ivar team_log.EventTypeArg.legal_holds_add_members: (data_governance) Added members to a hold :ivar team_log.EventTypeArg.legal_holds_change_hold_details: (data_governance) Edited details for a hold :ivar team_log.EventTypeArg.legal_holds_change_hold_name: (data_governance) Renamed a hold :ivar team_log.EventTypeArg.legal_holds_export_a_hold: (data_governance) Exported hold :ivar team_log.EventTypeArg.legal_holds_export_cancelled: (data_governance) Canceled export for a hold :ivar team_log.EventTypeArg.legal_holds_export_downloaded: (data_governance) Downloaded export for a hold :ivar team_log.EventTypeArg.legal_holds_export_removed: (data_governance) Removed export for a hold :ivar team_log.EventTypeArg.legal_holds_release_a_hold: (data_governance) Released a hold :ivar team_log.EventTypeArg.legal_holds_remove_members: (data_governance) Removed members from a hold :ivar team_log.EventTypeArg.legal_holds_report_a_hold: (data_governance) Created a summary report for a hold :ivar team_log.EventTypeArg.device_change_ip_desktop: (devices) Changed IP address associated with active desktop session :ivar team_log.EventTypeArg.device_change_ip_mobile: (devices) Changed IP address associated with active mobile session :ivar team_log.EventTypeArg.device_change_ip_web: (devices) Changed IP address associated with active web session :ivar team_log.EventTypeArg.device_delete_on_unlink_fail: (devices) Failed to delete all files from unlinked device :ivar team_log.EventTypeArg.device_delete_on_unlink_success: (devices) Deleted all files from unlinked device :ivar team_log.EventTypeArg.device_link_fail: (devices) Failed to link device :ivar team_log.EventTypeArg.device_link_success: (devices) Linked device :ivar team_log.EventTypeArg.device_management_disabled: (devices) Disabled device management (deprecated, no longer logged) :ivar team_log.EventTypeArg.device_management_enabled: (devices) Enabled device management (deprecated, no longer logged) :ivar team_log.EventTypeArg.device_sync_backup_status_changed: (devices) Enabled/disabled backup for computer :ivar team_log.EventTypeArg.device_unlink: (devices) Disconnected device :ivar team_log.EventTypeArg.dropbox_passwords_exported: (devices) Exported passwords :ivar team_log.EventTypeArg.dropbox_passwords_new_device_enrolled: (devices) Enrolled new Dropbox Passwords device :ivar team_log.EventTypeArg.emm_refresh_auth_token: (devices) Refreshed auth token used for setting up EMM :ivar team_log.EventTypeArg.external_drive_backup_eligibility_status_checked: (devices) Checked external drive backup eligibility status :ivar team_log.EventTypeArg.external_drive_backup_status_changed: (devices) Modified external drive backup :ivar team_log.EventTypeArg.account_capture_change_availability: (domains) Granted/revoked option to enable account capture on team domains :ivar team_log.EventTypeArg.account_capture_migrate_account: (domains) Account-captured user migrated account to team :ivar team_log.EventTypeArg.account_capture_notification_emails_sent: (domains) Sent account capture email to all unmanaged members :ivar team_log.EventTypeArg.account_capture_relinquish_account: (domains) Account-captured user changed account email to personal email :ivar team_log.EventTypeArg.disabled_domain_invites: (domains) Disabled domain invites (deprecated, no longer logged) :ivar team_log.EventTypeArg.domain_invites_approve_request_to_join_team: (domains) Approved user's request to join team :ivar team_log.EventTypeArg.domain_invites_decline_request_to_join_team: (domains) Declined user's request to join team :ivar team_log.EventTypeArg.domain_invites_email_existing_users: (domains) Sent domain invites to existing domain accounts (deprecated, no longer logged) :ivar team_log.EventTypeArg.domain_invites_request_to_join_team: (domains) Requested to join team :ivar team_log.EventTypeArg.domain_invites_set_invite_new_user_pref_to_no: (domains) Disabled "Automatically invite new users" (deprecated, no longer logged) :ivar team_log.EventTypeArg.domain_invites_set_invite_new_user_pref_to_yes: (domains) Enabled "Automatically invite new users" (deprecated, no longer logged) :ivar team_log.EventTypeArg.domain_verification_add_domain_fail: (domains) Failed to verify team domain :ivar team_log.EventTypeArg.domain_verification_add_domain_success: (domains) Verified team domain :ivar team_log.EventTypeArg.domain_verification_remove_domain: (domains) Removed domain from list of verified team domains :ivar team_log.EventTypeArg.enabled_domain_invites: (domains) Enabled domain invites (deprecated, no longer logged) :ivar team_log.EventTypeArg.team_encryption_key_cancel_key_deletion: (encryption) Canceled team encryption key deletion :ivar team_log.EventTypeArg.team_encryption_key_create_key: (encryption) Created team encryption key :ivar team_log.EventTypeArg.team_encryption_key_delete_key: (encryption) Deleted team encryption key :ivar team_log.EventTypeArg.team_encryption_key_disable_key: (encryption) Disabled team encryption key :ivar team_log.EventTypeArg.team_encryption_key_enable_key: (encryption) Enabled team encryption key :ivar team_log.EventTypeArg.team_encryption_key_rotate_key: (encryption) Rotated team encryption key (deprecated, no longer logged) :ivar team_log.EventTypeArg.team_encryption_key_schedule_key_deletion: (encryption) Scheduled encryption key deletion :ivar team_log.EventTypeArg.apply_naming_convention: (file_operations) Applied naming convention :ivar team_log.EventTypeArg.create_folder: (file_operations) Created folders (deprecated, no longer logged) :ivar team_log.EventTypeArg.file_add: (file_operations) Added files and/or folders :ivar team_log.EventTypeArg.file_add_from_automation: (file_operations) Added files and/or folders from automation :ivar team_log.EventTypeArg.file_copy: (file_operations) Copied files and/or folders :ivar team_log.EventTypeArg.file_delete: (file_operations) Deleted files and/or folders :ivar team_log.EventTypeArg.file_download: (file_operations) Downloaded files and/or folders :ivar team_log.EventTypeArg.file_edit: (file_operations) Edited files :ivar team_log.EventTypeArg.file_get_copy_reference: (file_operations) Created copy reference to file/folder :ivar team_log.EventTypeArg.file_locking_lock_status_changed: (file_operations) Locked/unlocked editing for a file :ivar team_log.EventTypeArg.file_move: (file_operations) Moved files and/or folders :ivar team_log.EventTypeArg.file_permanently_delete: (file_operations) Permanently deleted files and/or folders :ivar team_log.EventTypeArg.file_preview: (file_operations) Previewed files and/or folders :ivar team_log.EventTypeArg.file_rename: (file_operations) Renamed files and/or folders :ivar team_log.EventTypeArg.file_restore: (file_operations) Restored deleted files and/or folders :ivar team_log.EventTypeArg.file_revert: (file_operations) Reverted files to previous version :ivar team_log.EventTypeArg.file_rollback_changes: (file_operations) Rolled back file actions :ivar team_log.EventTypeArg.file_save_copy_reference: (file_operations) Saved file/folder using copy reference :ivar team_log.EventTypeArg.folder_overview_description_changed: (file_operations) Updated folder overview :ivar team_log.EventTypeArg.folder_overview_item_pinned: (file_operations) Pinned item to folder overview :ivar team_log.EventTypeArg.folder_overview_item_unpinned: (file_operations) Unpinned item from folder overview :ivar team_log.EventTypeArg.object_label_added: (file_operations) Added a label :ivar team_log.EventTypeArg.object_label_removed: (file_operations) Removed a label :ivar team_log.EventTypeArg.object_label_updated_value: (file_operations) Updated a label's value :ivar team_log.EventTypeArg.organize_folder_with_tidy: (file_operations) Organized a folder with multi-file organize :ivar team_log.EventTypeArg.replay_file_delete: (file_operations) Deleted files in Replay :ivar team_log.EventTypeArg.rewind_folder: (file_operations) Rewound a folder :ivar team_log.EventTypeArg.undo_naming_convention: (file_operations) Reverted naming convention :ivar team_log.EventTypeArg.undo_organize_folder_with_tidy: (file_operations) Removed multi-file organize :ivar team_log.EventTypeArg.user_tags_added: (file_operations) Tagged a file :ivar team_log.EventTypeArg.user_tags_removed: (file_operations) Removed tags :ivar team_log.EventTypeArg.email_ingest_receive_file: (file_requests) Received files via Email to Dropbox :ivar team_log.EventTypeArg.file_request_change: (file_requests) Changed file request :ivar team_log.EventTypeArg.file_request_close: (file_requests) Closed file request :ivar team_log.EventTypeArg.file_request_create: (file_requests) Created file request :ivar team_log.EventTypeArg.file_request_delete: (file_requests) Delete file request :ivar team_log.EventTypeArg.file_request_receive_file: (file_requests) Received files for file request :ivar team_log.EventTypeArg.group_add_external_id: (groups) Added external ID for group :ivar team_log.EventTypeArg.group_add_member: (groups) Added team members to group :ivar team_log.EventTypeArg.group_change_external_id: (groups) Changed external ID for group :ivar team_log.EventTypeArg.group_change_management_type: (groups) Changed group management type :ivar team_log.EventTypeArg.group_change_member_role: (groups) Changed manager permissions of group member :ivar team_log.EventTypeArg.group_create: (groups) Created group :ivar team_log.EventTypeArg.group_delete: (groups) Deleted group :ivar team_log.EventTypeArg.group_description_updated: (groups) Updated group (deprecated, no longer logged) :ivar team_log.EventTypeArg.group_join_policy_updated: (groups) Updated group join policy (deprecated, no longer logged) :ivar team_log.EventTypeArg.group_moved: (groups) Moved group (deprecated, no longer logged) :ivar team_log.EventTypeArg.group_remove_external_id: (groups) Removed external ID for group :ivar team_log.EventTypeArg.group_remove_member: (groups) Removed team members from group :ivar team_log.EventTypeArg.group_rename: (groups) Renamed group :ivar team_log.EventTypeArg.account_lock_or_unlocked: (logins) Unlocked/locked account after failed sign in attempts :ivar team_log.EventTypeArg.emm_error: (logins) Failed to sign in via EMM (deprecated, replaced by 'Failed to sign in') :ivar team_log.EventTypeArg.guest_admin_signed_in_via_trusted_teams: (logins) Started trusted team admin session :ivar team_log.EventTypeArg.guest_admin_signed_out_via_trusted_teams: (logins) Ended trusted team admin session :ivar team_log.EventTypeArg.login_fail: (logins) Failed to sign in :ivar team_log.EventTypeArg.login_success: (logins) Signed in :ivar team_log.EventTypeArg.logout: (logins) Signed out :ivar team_log.EventTypeArg.reseller_support_session_end: (logins) Ended reseller support session :ivar team_log.EventTypeArg.reseller_support_session_start: (logins) Started reseller support session :ivar team_log.EventTypeArg.sign_in_as_session_end: (logins) Ended admin sign-in-as session :ivar team_log.EventTypeArg.sign_in_as_session_start: (logins) Started admin sign-in-as session :ivar team_log.EventTypeArg.sso_error: (logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in') :ivar team_log.EventTypeArg.backup_admin_invitation_sent: (members) Invited members to activate Backup :ivar team_log.EventTypeArg.backup_invitation_opened: (members) Opened Backup invite :ivar team_log.EventTypeArg.create_team_invite_link: (members) Created team invite link :ivar team_log.EventTypeArg.delete_team_invite_link: (members) Deleted team invite link :ivar team_log.EventTypeArg.member_add_external_id: (members) Added an external ID for team member :ivar team_log.EventTypeArg.member_add_name: (members) Added team member name :ivar team_log.EventTypeArg.member_change_admin_role: (members) Changed team member admin role :ivar team_log.EventTypeArg.member_change_email: (members) Changed team member email :ivar team_log.EventTypeArg.member_change_external_id: (members) Changed the external ID for team member :ivar team_log.EventTypeArg.member_change_membership_type: (members) Changed membership type (limited/full) of member (deprecated, no longer logged) :ivar team_log.EventTypeArg.member_change_name: (members) Changed team member name :ivar team_log.EventTypeArg.member_change_reseller_role: (members) Changed team member reseller role :ivar team_log.EventTypeArg.member_change_status: (members) Changed member status (invited, joined, suspended, etc.) :ivar team_log.EventTypeArg.member_delete_manual_contacts: (members) Cleared manually added contacts :ivar team_log.EventTypeArg.member_delete_profile_photo: (members) Deleted team member profile photo :ivar team_log.EventTypeArg.member_permanently_delete_account_contents: (members) Permanently deleted contents of deleted team member account :ivar team_log.EventTypeArg.member_remove_external_id: (members) Removed the external ID for team member :ivar team_log.EventTypeArg.member_set_profile_photo: (members) Set team member profile photo :ivar team_log.EventTypeArg.member_space_limits_add_custom_quota: (members) Set custom member space limit :ivar team_log.EventTypeArg.member_space_limits_change_custom_quota: (members) Changed custom member space limit :ivar team_log.EventTypeArg.member_space_limits_change_status: (members) Changed space limit status :ivar team_log.EventTypeArg.member_space_limits_remove_custom_quota: (members) Removed custom member space limit :ivar team_log.EventTypeArg.member_suggest: (members) Suggested person to add to team :ivar team_log.EventTypeArg.member_transfer_account_contents: (members) Transferred contents of deleted member account to another member :ivar team_log.EventTypeArg.pending_secondary_email_added: (members) Added pending secondary email :ivar team_log.EventTypeArg.secondary_email_deleted: (members) Deleted secondary email :ivar team_log.EventTypeArg.secondary_email_verified: (members) Verified secondary email :ivar team_log.EventTypeArg.secondary_mails_policy_changed: (members) Secondary mails policy changed :ivar team_log.EventTypeArg.binder_add_page: (paper) Added Binder page (deprecated, replaced by 'Edited files') :ivar team_log.EventTypeArg.binder_add_section: (paper) Added Binder section (deprecated, replaced by 'Edited files') :ivar team_log.EventTypeArg.binder_remove_page: (paper) Removed Binder page (deprecated, replaced by 'Edited files') :ivar team_log.EventTypeArg.binder_remove_section: (paper) Removed Binder section (deprecated, replaced by 'Edited files') :ivar team_log.EventTypeArg.binder_rename_page: (paper) Renamed Binder page (deprecated, replaced by 'Edited files') :ivar team_log.EventTypeArg.binder_rename_section: (paper) Renamed Binder section (deprecated, replaced by 'Edited files') :ivar team_log.EventTypeArg.binder_reorder_page: (paper) Reordered Binder page (deprecated, replaced by 'Edited files') :ivar team_log.EventTypeArg.binder_reorder_section: (paper) Reordered Binder section (deprecated, replaced by 'Edited files') :ivar team_log.EventTypeArg.paper_content_add_member: (paper) Added users and/or groups to Paper doc/folder :ivar team_log.EventTypeArg.paper_content_add_to_folder: (paper) Added Paper doc/folder to folder :ivar team_log.EventTypeArg.paper_content_archive: (paper) Archived Paper doc/folder :ivar team_log.EventTypeArg.paper_content_create: (paper) Created Paper doc/folder :ivar team_log.EventTypeArg.paper_content_permanently_delete: (paper) Permanently deleted Paper doc/folder :ivar team_log.EventTypeArg.paper_content_remove_from_folder: (paper) Removed Paper doc/folder from folder :ivar team_log.EventTypeArg.paper_content_remove_member: (paper) Removed users and/or groups from Paper doc/folder :ivar team_log.EventTypeArg.paper_content_rename: (paper) Renamed Paper doc/folder :ivar team_log.EventTypeArg.paper_content_restore: (paper) Restored archived Paper doc/folder :ivar team_log.EventTypeArg.paper_doc_add_comment: (paper) Added Paper doc comment :ivar team_log.EventTypeArg.paper_doc_change_member_role: (paper) Changed member permissions for Paper doc :ivar team_log.EventTypeArg.paper_doc_change_sharing_policy: (paper) Changed sharing setting for Paper doc :ivar team_log.EventTypeArg.paper_doc_change_subscription: (paper) Followed/unfollowed Paper doc :ivar team_log.EventTypeArg.paper_doc_deleted: (paper) Archived Paper doc (deprecated, no longer logged) :ivar team_log.EventTypeArg.paper_doc_delete_comment: (paper) Deleted Paper doc comment :ivar team_log.EventTypeArg.paper_doc_download: (paper) Downloaded Paper doc in specific format :ivar team_log.EventTypeArg.paper_doc_edit: (paper) Edited Paper doc :ivar team_log.EventTypeArg.paper_doc_edit_comment: (paper) Edited Paper doc comment :ivar team_log.EventTypeArg.paper_doc_followed: (paper) Followed Paper doc (deprecated, replaced by 'Followed/unfollowed Paper doc') :ivar team_log.EventTypeArg.paper_doc_mention: (paper) Mentioned user in Paper doc :ivar team_log.EventTypeArg.paper_doc_ownership_changed: (paper) Transferred ownership of Paper doc :ivar team_log.EventTypeArg.paper_doc_request_access: (paper) Requested access to Paper doc :ivar team_log.EventTypeArg.paper_doc_resolve_comment: (paper) Resolved Paper doc comment :ivar team_log.EventTypeArg.paper_doc_revert: (paper) Restored Paper doc to previous version :ivar team_log.EventTypeArg.paper_doc_slack_share: (paper) Shared Paper doc via Slack :ivar team_log.EventTypeArg.paper_doc_team_invite: (paper) Shared Paper doc with users and/or groups (deprecated, no longer logged) :ivar team_log.EventTypeArg.paper_doc_trashed: (paper) Deleted Paper doc :ivar team_log.EventTypeArg.paper_doc_unresolve_comment: (paper) Unresolved Paper doc comment :ivar team_log.EventTypeArg.paper_doc_untrashed: (paper) Restored Paper doc :ivar team_log.EventTypeArg.paper_doc_view: (paper) Viewed Paper doc :ivar team_log.EventTypeArg.paper_external_view_allow: (paper) Changed Paper external sharing setting to anyone (deprecated, no longer logged) :ivar team_log.EventTypeArg.paper_external_view_default_team: (paper) Changed Paper external sharing setting to default team (deprecated, no longer logged) :ivar team_log.EventTypeArg.paper_external_view_forbid: (paper) Changed Paper external sharing setting to team-only (deprecated, no longer logged) :ivar team_log.EventTypeArg.paper_folder_change_subscription: (paper) Followed/unfollowed Paper folder :ivar team_log.EventTypeArg.paper_folder_deleted: (paper) Archived Paper folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.paper_folder_followed: (paper) Followed Paper folder (deprecated, replaced by 'Followed/unfollowed Paper folder') :ivar team_log.EventTypeArg.paper_folder_team_invite: (paper) Shared Paper folder with users and/or groups (deprecated, no longer logged) :ivar team_log.EventTypeArg.paper_published_link_change_permission: (paper) Changed permissions for published doc :ivar team_log.EventTypeArg.paper_published_link_create: (paper) Published doc :ivar team_log.EventTypeArg.paper_published_link_disabled: (paper) Unpublished doc :ivar team_log.EventTypeArg.paper_published_link_view: (paper) Viewed published doc :ivar team_log.EventTypeArg.password_change: (passwords) Changed password :ivar team_log.EventTypeArg.password_reset: (passwords) Reset password :ivar team_log.EventTypeArg.password_reset_all: (passwords) Reset all team member passwords :ivar team_log.EventTypeArg.classification_create_report: (reports) Created Classification report :ivar team_log.EventTypeArg.classification_create_report_fail: (reports) Couldn't create Classification report :ivar team_log.EventTypeArg.emm_create_exceptions_report: (reports) Created EMM-excluded users report :ivar team_log.EventTypeArg.emm_create_usage_report: (reports) Created EMM mobile app usage report :ivar team_log.EventTypeArg.export_members_report: (reports) Created member data report :ivar team_log.EventTypeArg.export_members_report_fail: (reports) Failed to create members data report :ivar team_log.EventTypeArg.external_sharing_create_report: (reports) Created External sharing report :ivar team_log.EventTypeArg.external_sharing_report_failed: (reports) Couldn't create External sharing report :ivar team_log.EventTypeArg.no_expiration_link_gen_create_report: (reports) Report created: Links created with no expiration :ivar team_log.EventTypeArg.no_expiration_link_gen_report_failed: (reports) Couldn't create report: Links created with no expiration :ivar team_log.EventTypeArg.no_password_link_gen_create_report: (reports) Report created: Links created without passwords :ivar team_log.EventTypeArg.no_password_link_gen_report_failed: (reports) Couldn't create report: Links created without passwords :ivar team_log.EventTypeArg.no_password_link_view_create_report: (reports) Report created: Views of links without passwords :ivar team_log.EventTypeArg.no_password_link_view_report_failed: (reports) Couldn't create report: Views of links without passwords :ivar team_log.EventTypeArg.outdated_link_view_create_report: (reports) Report created: Views of old links :ivar team_log.EventTypeArg.outdated_link_view_report_failed: (reports) Couldn't create report: Views of old links :ivar team_log.EventTypeArg.paper_admin_export_start: (reports) Exported all team Paper docs :ivar team_log.EventTypeArg.ransomware_alert_create_report: (reports) Created ransomware report :ivar team_log.EventTypeArg.ransomware_alert_create_report_failed: (reports) Couldn't generate ransomware report :ivar team_log.EventTypeArg.smart_sync_create_admin_privilege_report: (reports) Created Smart Sync non-admin devices report :ivar team_log.EventTypeArg.team_activity_create_report: (reports) Created team activity report :ivar team_log.EventTypeArg.team_activity_create_report_fail: (reports) Couldn't generate team activity report :ivar team_log.EventTypeArg.collection_share: (sharing) Shared album :ivar team_log.EventTypeArg.file_transfers_file_add: (sharing) Transfer files added :ivar team_log.EventTypeArg.file_transfers_transfer_delete: (sharing) Deleted transfer :ivar team_log.EventTypeArg.file_transfers_transfer_download: (sharing) Transfer downloaded :ivar team_log.EventTypeArg.file_transfers_transfer_send: (sharing) Sent transfer :ivar team_log.EventTypeArg.file_transfers_transfer_view: (sharing) Viewed transfer :ivar team_log.EventTypeArg.note_acl_invite_only: (sharing) Changed Paper doc to invite-only (deprecated, no longer logged) :ivar team_log.EventTypeArg.note_acl_link: (sharing) Changed Paper doc to link-accessible (deprecated, no longer logged) :ivar team_log.EventTypeArg.note_acl_team_link: (sharing) Changed Paper doc to link-accessible for team (deprecated, no longer logged) :ivar team_log.EventTypeArg.note_shared: (sharing) Shared Paper doc (deprecated, no longer logged) :ivar team_log.EventTypeArg.note_share_receive: (sharing) Shared received Paper doc (deprecated, no longer logged) :ivar team_log.EventTypeArg.open_note_shared: (sharing) Opened shared Paper doc (deprecated, no longer logged) :ivar team_log.EventTypeArg.replay_file_shared_link_created: (sharing) Created shared link in Replay :ivar team_log.EventTypeArg.replay_file_shared_link_modified: (sharing) Modified shared link in Replay :ivar team_log.EventTypeArg.replay_project_team_add: (sharing) Added member to Replay Project :ivar team_log.EventTypeArg.replay_project_team_delete: (sharing) Removed member from Replay Project :ivar team_log.EventTypeArg.sf_add_group: (sharing) Added team to shared folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.sf_allow_non_members_to_view_shared_links: (sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.sf_external_invite_warn: (sharing) Set team members to see warning before sharing folders outside team (deprecated, no longer logged) :ivar team_log.EventTypeArg.sf_fb_invite: (sharing) Invited Facebook users to shared folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.sf_fb_invite_change_role: (sharing) Changed Facebook user's role in shared folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.sf_fb_uninvite: (sharing) Uninvited Facebook user from shared folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.sf_invite_group: (sharing) Invited group to shared folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.sf_team_grant_access: (sharing) Granted access to shared folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.sf_team_invite: (sharing) Invited team members to shared folder (deprecated, replaced by 'Invited user to Dropbox and added them to shared file/folder') :ivar team_log.EventTypeArg.sf_team_invite_change_role: (sharing) Changed team member's role in shared folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.sf_team_join: (sharing) Joined team member's shared folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.sf_team_join_from_oob_link: (sharing) Joined team member's shared folder from link (deprecated, no longer logged) :ivar team_log.EventTypeArg.sf_team_uninvite: (sharing) Unshared folder with team member (deprecated, replaced by 'Removed invitee from shared file/folder before invite was accepted') :ivar team_log.EventTypeArg.shared_content_add_invitees: (sharing) Invited user to Dropbox and added them to shared file/folder :ivar team_log.EventTypeArg.shared_content_add_link_expiry: (sharing) Added expiration date to link for shared file/folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.shared_content_add_link_password: (sharing) Added password to link for shared file/folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.shared_content_add_member: (sharing) Added users and/or groups to shared file/folder :ivar team_log.EventTypeArg.shared_content_change_downloads_policy: (sharing) Changed whether members can download shared file/folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.shared_content_change_invitee_role: (sharing) Changed access type of invitee to shared file/folder before invite was accepted :ivar team_log.EventTypeArg.shared_content_change_link_audience: (sharing) Changed link audience of shared file/folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.shared_content_change_link_expiry: (sharing) Changed link expiration of shared file/folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.shared_content_change_link_password: (sharing) Changed link password of shared file/folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.shared_content_change_member_role: (sharing) Changed access type of shared file/folder member :ivar team_log.EventTypeArg.shared_content_change_viewer_info_policy: (sharing) Changed whether members can see who viewed shared file/folder :ivar team_log.EventTypeArg.shared_content_claim_invitation: (sharing) Acquired membership of shared file/folder by accepting invite :ivar team_log.EventTypeArg.shared_content_copy: (sharing) Copied shared file/folder to own Dropbox :ivar team_log.EventTypeArg.shared_content_download: (sharing) Downloaded shared file/folder :ivar team_log.EventTypeArg.shared_content_relinquish_membership: (sharing) Left shared file/folder :ivar team_log.EventTypeArg.shared_content_remove_invitees: (sharing) Removed invitee from shared file/folder before invite was accepted :ivar team_log.EventTypeArg.shared_content_remove_link_expiry: (sharing) Removed link expiration date of shared file/folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.shared_content_remove_link_password: (sharing) Removed link password of shared file/folder (deprecated, no longer logged) :ivar team_log.EventTypeArg.shared_content_remove_member: (sharing) Removed user/group from shared file/folder :ivar team_log.EventTypeArg.shared_content_request_access: (sharing) Requested access to shared file/folder :ivar team_log.EventTypeArg.shared_content_restore_invitees: (sharing) Restored shared file/folder invitees :ivar team_log.EventTypeArg.shared_content_restore_member: (sharing) Restored users and/or groups to membership of shared file/folder :ivar team_log.EventTypeArg.shared_content_unshare: (sharing) Unshared file/folder by clearing membership :ivar team_log.EventTypeArg.shared_content_view: (sharing) Previewed shared file/folder :ivar team_log.EventTypeArg.shared_folder_change_link_policy: (sharing) Changed who can access shared folder via link :ivar team_log.EventTypeArg.shared_folder_change_members_inheritance_policy: (sharing) Changed whether shared folder inherits members from parent folder :ivar team_log.EventTypeArg.shared_folder_change_members_management_policy: (sharing) Changed who can add/remove members of shared folder :ivar team_log.EventTypeArg.shared_folder_change_members_policy: (sharing) Changed who can become member of shared folder :ivar team_log.EventTypeArg.shared_folder_create: (sharing) Created shared folder :ivar team_log.EventTypeArg.shared_folder_decline_invitation: (sharing) Declined team member's invite to shared folder :ivar team_log.EventTypeArg.shared_folder_mount: (sharing) Added shared folder to own Dropbox :ivar team_log.EventTypeArg.shared_folder_nest: (sharing) Changed parent of shared folder :ivar team_log.EventTypeArg.shared_folder_transfer_ownership: (sharing) Transferred ownership of shared folder to another member :ivar team_log.EventTypeArg.shared_folder_unmount: (sharing) Deleted shared folder from Dropbox :ivar team_log.EventTypeArg.shared_link_add_expiry: (sharing) Added shared link expiration date :ivar team_log.EventTypeArg.shared_link_change_expiry: (sharing) Changed shared link expiration date :ivar team_log.EventTypeArg.shared_link_change_visibility: (sharing) Changed visibility of shared link :ivar team_log.EventTypeArg.shared_link_copy: (sharing) Added file/folder to Dropbox from shared link :ivar team_log.EventTypeArg.shared_link_create: (sharing) Created shared link :ivar team_log.EventTypeArg.shared_link_disable: (sharing) Removed shared link :ivar team_log.EventTypeArg.shared_link_download: (sharing) Downloaded file/folder from shared link :ivar team_log.EventTypeArg.shared_link_remove_expiry: (sharing) Removed shared link expiration date :ivar team_log.EventTypeArg.shared_link_settings_add_expiration: (sharing) Added an expiration date to the shared link :ivar team_log.EventTypeArg.shared_link_settings_add_password: (sharing) Added a password to the shared link :ivar team_log.EventTypeArg.shared_link_settings_allow_download_disabled: (sharing) Disabled downloads :ivar team_log.EventTypeArg.shared_link_settings_allow_download_enabled: (sharing) Enabled downloads :ivar team_log.EventTypeArg.shared_link_settings_change_audience: (sharing) Changed the audience of the shared link :ivar team_log.EventTypeArg.shared_link_settings_change_expiration: (sharing) Changed the expiration date of the shared link :ivar team_log.EventTypeArg.shared_link_settings_change_password: (sharing) Changed the password of the shared link :ivar team_log.EventTypeArg.shared_link_settings_remove_expiration: (sharing) Removed the expiration date from the shared link :ivar team_log.EventTypeArg.shared_link_settings_remove_password: (sharing) Removed the password from the shared link :ivar team_log.EventTypeArg.shared_link_share: (sharing) Added members as audience of shared link :ivar team_log.EventTypeArg.shared_link_view: (sharing) Opened shared link :ivar team_log.EventTypeArg.shared_note_opened: (sharing) Opened shared Paper doc (deprecated, no longer logged) :ivar team_log.EventTypeArg.shmodel_disable_downloads: (sharing) Disabled downloads for link (deprecated, no longer logged) :ivar team_log.EventTypeArg.shmodel_enable_downloads: (sharing) Enabled downloads for link (deprecated, no longer logged) :ivar team_log.EventTypeArg.shmodel_group_share: (sharing) Shared link with group (deprecated, no longer logged) :ivar team_log.EventTypeArg.showcase_access_granted: (showcase) Granted access to showcase :ivar team_log.EventTypeArg.showcase_add_member: (showcase) Added member to showcase :ivar team_log.EventTypeArg.showcase_archived: (showcase) Archived showcase :ivar team_log.EventTypeArg.showcase_created: (showcase) Created showcase :ivar team_log.EventTypeArg.showcase_delete_comment: (showcase) Deleted showcase comment :ivar team_log.EventTypeArg.showcase_edited: (showcase) Edited showcase :ivar team_log.EventTypeArg.showcase_edit_comment: (showcase) Edited showcase comment :ivar team_log.EventTypeArg.showcase_file_added: (showcase) Added file to showcase :ivar team_log.EventTypeArg.showcase_file_download: (showcase) Downloaded file from showcase :ivar team_log.EventTypeArg.showcase_file_removed: (showcase) Removed file from showcase :ivar team_log.EventTypeArg.showcase_file_view: (showcase) Viewed file in showcase :ivar team_log.EventTypeArg.showcase_permanently_deleted: (showcase) Permanently deleted showcase :ivar team_log.EventTypeArg.showcase_post_comment: (showcase) Added showcase comment :ivar team_log.EventTypeArg.showcase_remove_member: (showcase) Removed member from showcase :ivar team_log.EventTypeArg.showcase_renamed: (showcase) Renamed showcase :ivar team_log.EventTypeArg.showcase_request_access: (showcase) Requested access to showcase :ivar team_log.EventTypeArg.showcase_resolve_comment: (showcase) Resolved showcase comment :ivar team_log.EventTypeArg.showcase_restored: (showcase) Unarchived showcase :ivar team_log.EventTypeArg.showcase_trashed: (showcase) Deleted showcase :ivar team_log.EventTypeArg.showcase_trashed_deprecated: (showcase) Deleted showcase (old version) (deprecated, replaced by 'Deleted showcase') :ivar team_log.EventTypeArg.showcase_unresolve_comment: (showcase) Unresolved showcase comment :ivar team_log.EventTypeArg.showcase_untrashed: (showcase) Restored showcase :ivar team_log.EventTypeArg.showcase_untrashed_deprecated: (showcase) Restored showcase (old version) (deprecated, replaced by 'Restored showcase') :ivar team_log.EventTypeArg.showcase_view: (showcase) Viewed showcase :ivar team_log.EventTypeArg.sso_add_cert: (sso) Added X.509 certificate for SSO :ivar team_log.EventTypeArg.sso_add_login_url: (sso) Added sign-in URL for SSO :ivar team_log.EventTypeArg.sso_add_logout_url: (sso) Added sign-out URL for SSO :ivar team_log.EventTypeArg.sso_change_cert: (sso) Changed X.509 certificate for SSO :ivar team_log.EventTypeArg.sso_change_login_url: (sso) Changed sign-in URL for SSO :ivar team_log.EventTypeArg.sso_change_logout_url: (sso) Changed sign-out URL for SSO :ivar team_log.EventTypeArg.sso_change_saml_identity_mode: (sso) Changed SAML identity mode for SSO :ivar team_log.EventTypeArg.sso_remove_cert: (sso) Removed X.509 certificate for SSO :ivar team_log.EventTypeArg.sso_remove_login_url: (sso) Removed sign-in URL for SSO :ivar team_log.EventTypeArg.sso_remove_logout_url: (sso) Removed sign-out URL for SSO :ivar team_log.EventTypeArg.team_folder_change_status: (team_folders) Changed archival status of team folder :ivar team_log.EventTypeArg.team_folder_create: (team_folders) Created team folder in active status :ivar team_log.EventTypeArg.team_folder_downgrade: (team_folders) Downgraded team folder to regular shared folder :ivar team_log.EventTypeArg.team_folder_permanently_delete: (team_folders) Permanently deleted archived team folder :ivar team_log.EventTypeArg.team_folder_rename: (team_folders) Renamed active/archived team folder :ivar team_log.EventTypeArg.team_selective_sync_settings_changed: (team_folders) Changed sync default :ivar team_log.EventTypeArg.account_capture_change_policy: (team_policies) Changed account capture setting on team domain :ivar team_log.EventTypeArg.admin_email_reminders_changed: (team_policies) Changed admin reminder settings for requests to join the team :ivar team_log.EventTypeArg.allow_download_disabled: (team_policies) Disabled downloads (deprecated, no longer logged) :ivar team_log.EventTypeArg.allow_download_enabled: (team_policies) Enabled downloads (deprecated, no longer logged) :ivar team_log.EventTypeArg.app_permissions_changed: (team_policies) Changed app permissions :ivar team_log.EventTypeArg.camera_uploads_policy_changed: (team_policies) Changed camera uploads setting for team :ivar team_log.EventTypeArg.capture_transcript_policy_changed: (team_policies) Changed Capture transcription policy for team :ivar team_log.EventTypeArg.classification_change_policy: (team_policies) Changed classification policy for team :ivar team_log.EventTypeArg.computer_backup_policy_changed: (team_policies) Changed computer backup policy for team :ivar team_log.EventTypeArg.content_administration_policy_changed: (team_policies) Changed content management setting :ivar team_log.EventTypeArg.data_placement_restriction_change_policy: (team_policies) Set restrictions on data center locations where team data resides :ivar team_log.EventTypeArg.data_placement_restriction_satisfy_policy: (team_policies) Completed restrictions on data center locations where team data resides :ivar team_log.EventTypeArg.device_approvals_add_exception: (team_policies) Added members to device approvals exception list :ivar team_log.EventTypeArg.device_approvals_change_desktop_policy: (team_policies) Set/removed limit on number of computers member can link to team Dropbox account :ivar team_log.EventTypeArg.device_approvals_change_mobile_policy: (team_policies) Set/removed limit on number of mobile devices member can link to team Dropbox account :ivar team_log.EventTypeArg.device_approvals_change_overage_action: (team_policies) Changed device approvals setting when member is over limit :ivar team_log.EventTypeArg.device_approvals_change_unlink_action: (team_policies) Changed device approvals setting when member unlinks approved device :ivar team_log.EventTypeArg.device_approvals_remove_exception: (team_policies) Removed members from device approvals exception list :ivar team_log.EventTypeArg.directory_restrictions_add_members: (team_policies) Added members to directory restrictions list :ivar team_log.EventTypeArg.directory_restrictions_remove_members: (team_policies) Removed members from directory restrictions list :ivar team_log.EventTypeArg.dropbox_passwords_policy_changed: (team_policies) Changed Dropbox Passwords policy for team :ivar team_log.EventTypeArg.email_ingest_policy_changed: (team_policies) Changed email to Dropbox policy for team :ivar team_log.EventTypeArg.emm_add_exception: (team_policies) Added members to EMM exception list :ivar team_log.EventTypeArg.emm_change_policy: (team_policies) Enabled/disabled enterprise mobility management for members :ivar team_log.EventTypeArg.emm_remove_exception: (team_policies) Removed members from EMM exception list :ivar team_log.EventTypeArg.extended_version_history_change_policy: (team_policies) Accepted/opted out of extended version history :ivar team_log.EventTypeArg.external_drive_backup_policy_changed: (team_policies) Changed external drive backup policy for team :ivar team_log.EventTypeArg.file_comments_change_policy: (team_policies) Enabled/disabled commenting on team files :ivar team_log.EventTypeArg.file_locking_policy_changed: (team_policies) Changed file locking policy for team :ivar team_log.EventTypeArg.file_provider_migration_policy_changed: (team_policies) Changed File Provider Migration policy for team :ivar team_log.EventTypeArg.file_requests_change_policy: (team_policies) Enabled/disabled file requests :ivar team_log.EventTypeArg.file_requests_emails_enabled: (team_policies) Enabled file request emails for everyone (deprecated, no longer logged) :ivar team_log.EventTypeArg.file_requests_emails_restricted_to_team_only: (team_policies) Enabled file request emails for team (deprecated, no longer logged) :ivar team_log.EventTypeArg.file_transfers_policy_changed: (team_policies) Changed file transfers policy for team :ivar team_log.EventTypeArg.folder_link_restriction_policy_changed: (team_policies) Changed folder link restrictions policy for team :ivar team_log.EventTypeArg.google_sso_change_policy: (team_policies) Enabled/disabled Google single sign-on for team :ivar team_log.EventTypeArg.group_user_management_change_policy: (team_policies) Changed who can create groups :ivar team_log.EventTypeArg.integration_policy_changed: (team_policies) Changed integration policy for team :ivar team_log.EventTypeArg.invite_acceptance_email_policy_changed: (team_policies) Changed invite accept email policy for team :ivar team_log.EventTypeArg.member_requests_change_policy: (team_policies) Changed whether users can find team when not invited :ivar team_log.EventTypeArg.member_send_invite_policy_changed: (team_policies) Changed member send invite policy for team :ivar team_log.EventTypeArg.member_space_limits_add_exception: (team_policies) Added members to member space limit exception list :ivar team_log.EventTypeArg.member_space_limits_change_caps_type_policy: (team_policies) Changed member space limit type for team :ivar team_log.EventTypeArg.member_space_limits_change_policy: (team_policies) Changed team default member space limit :ivar team_log.EventTypeArg.member_space_limits_remove_exception: (team_policies) Removed members from member space limit exception list :ivar team_log.EventTypeArg.member_suggestions_change_policy: (team_policies) Enabled/disabled option for team members to suggest people to add to team :ivar team_log.EventTypeArg.microsoft_office_addin_change_policy: (team_policies) Enabled/disabled Microsoft Office add-in :ivar team_log.EventTypeArg.network_control_change_policy: (team_policies) Enabled/disabled network control :ivar team_log.EventTypeArg.paper_change_deployment_policy: (team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members :ivar team_log.EventTypeArg.paper_change_member_link_policy: (team_policies) Changed whether non-members can view Paper docs with link (deprecated, no longer logged) :ivar team_log.EventTypeArg.paper_change_member_policy: (team_policies) Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or anyone by default :ivar team_log.EventTypeArg.paper_change_policy: (team_policies) Enabled/disabled Dropbox Paper for team :ivar team_log.EventTypeArg.paper_default_folder_policy_changed: (team_policies) Changed Paper Default Folder Policy setting for team :ivar team_log.EventTypeArg.paper_desktop_policy_changed: (team_policies) Enabled/disabled Paper Desktop for team :ivar team_log.EventTypeArg.paper_enabled_users_group_addition: (team_policies) Added users to Paper-enabled users list :ivar team_log.EventTypeArg.paper_enabled_users_group_removal: (team_policies) Removed users from Paper-enabled users list :ivar team_log.EventTypeArg.password_strength_requirements_change_policy: (team_policies) Changed team password strength requirements :ivar team_log.EventTypeArg.permanent_delete_change_policy: (team_policies) Enabled/disabled ability of team members to permanently delete content :ivar team_log.EventTypeArg.reseller_support_change_policy: (team_policies) Enabled/disabled reseller support :ivar team_log.EventTypeArg.rewind_policy_changed: (team_policies) Changed Rewind policy for team :ivar team_log.EventTypeArg.send_for_signature_policy_changed: (team_policies) Changed send for signature policy for team :ivar team_log.EventTypeArg.sharing_change_folder_join_policy: (team_policies) Changed whether team members can join shared folders owned outside team :ivar team_log.EventTypeArg.sharing_change_link_allow_change_expiration_policy: (team_policies) Changed the allow remove or change expiration policy for the links shared outside of the team :ivar team_log.EventTypeArg.sharing_change_link_default_expiration_policy: (team_policies) Changed the default expiration for the links shared outside of the team :ivar team_log.EventTypeArg.sharing_change_link_enforce_password_policy: (team_policies) Changed the password requirement for the links shared outside of the team :ivar team_log.EventTypeArg.sharing_change_link_policy: (team_policies) Changed whether members can share links outside team, and if links are accessible only by team members or anyone by default :ivar team_log.EventTypeArg.sharing_change_member_policy: (team_policies) Changed whether members can share files/folders outside team :ivar team_log.EventTypeArg.showcase_change_download_policy: (team_policies) Enabled/disabled downloading files from Dropbox Showcase for team :ivar team_log.EventTypeArg.showcase_change_enabled_policy: (team_policies) Enabled/disabled Dropbox Showcase for team :ivar team_log.EventTypeArg.showcase_change_external_sharing_policy: (team_policies) Enabled/disabled sharing Dropbox Showcase externally for team :ivar team_log.EventTypeArg.smarter_smart_sync_policy_changed: (team_policies) Changed automatic Smart Sync setting for team :ivar team_log.EventTypeArg.smart_sync_change_policy: (team_policies) Changed default Smart Sync setting for team members :ivar team_log.EventTypeArg.smart_sync_not_opt_out: (team_policies) Opted team into Smart Sync :ivar team_log.EventTypeArg.smart_sync_opt_out: (team_policies) Opted team out of Smart Sync :ivar team_log.EventTypeArg.sso_change_policy: (team_policies) Changed single sign-on setting for team :ivar team_log.EventTypeArg.team_branding_policy_changed: (team_policies) Changed team branding policy for team :ivar team_log.EventTypeArg.team_extensions_policy_changed: (team_policies) Changed App Integrations setting for team :ivar team_log.EventTypeArg.team_selective_sync_policy_changed: (team_policies) Enabled/disabled Team Selective Sync for team :ivar team_log.EventTypeArg.team_sharing_whitelist_subjects_changed: (team_policies) Edited the approved list for sharing externally :ivar team_log.EventTypeArg.tfa_add_exception: (team_policies) Added members to two factor authentication exception list :ivar team_log.EventTypeArg.tfa_change_policy: (team_policies) Changed two-step verification setting for team :ivar team_log.EventTypeArg.tfa_remove_exception: (team_policies) Removed members from two factor authentication exception list :ivar team_log.EventTypeArg.two_account_change_policy: (team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to same computer :ivar team_log.EventTypeArg.viewer_info_policy_changed: (team_policies) Changed team policy for viewer info :ivar team_log.EventTypeArg.watermarking_policy_changed: (team_policies) Changed watermarking policy for team :ivar team_log.EventTypeArg.web_sessions_change_active_session_limit: (team_policies) Changed limit on active sessions per member :ivar team_log.EventTypeArg.web_sessions_change_fixed_length_policy: (team_policies) Changed how long members can stay signed in to Dropbox.com :ivar team_log.EventTypeArg.web_sessions_change_idle_length_policy: (team_policies) Changed how long team members can be idle while signed in to Dropbox.com :ivar team_log.EventTypeArg.data_residency_migration_request_successful: (team_profile) Requested data residency migration for team data :ivar team_log.EventTypeArg.data_residency_migration_request_unsuccessful: (team_profile) Request for data residency migration for team data has failed :ivar team_log.EventTypeArg.team_merge_from: (team_profile) Merged another team into this team :ivar team_log.EventTypeArg.team_merge_to: (team_profile) Merged this team into another team :ivar team_log.EventTypeArg.team_profile_add_background: (team_profile) Added team background to display on shared link headers :ivar team_log.EventTypeArg.team_profile_add_logo: (team_profile) Added team logo to display on shared link headers :ivar team_log.EventTypeArg.team_profile_change_background: (team_profile) Changed team background displayed on shared link headers :ivar team_log.EventTypeArg.team_profile_change_default_language: (team_profile) Changed default language for team :ivar team_log.EventTypeArg.team_profile_change_logo: (team_profile) Changed team logo displayed on shared link headers :ivar team_log.EventTypeArg.team_profile_change_name: (team_profile) Changed team name :ivar team_log.EventTypeArg.team_profile_remove_background: (team_profile) Removed team background displayed on shared link headers :ivar team_log.EventTypeArg.team_profile_remove_logo: (team_profile) Removed team logo displayed on shared link headers :ivar team_log.EventTypeArg.tfa_add_backup_phone: (tfa) Added backup phone for two-step verification :ivar team_log.EventTypeArg.tfa_add_security_key: (tfa) Added security key for two-step verification :ivar team_log.EventTypeArg.tfa_change_backup_phone: (tfa) Changed backup phone for two-step verification :ivar team_log.EventTypeArg.tfa_change_status: (tfa) Enabled/disabled/changed two-step verification setting :ivar team_log.EventTypeArg.tfa_remove_backup_phone: (tfa) Removed backup phone for two-step verification :ivar team_log.EventTypeArg.tfa_remove_security_key: (tfa) Removed security key for two-step verification :ivar team_log.EventTypeArg.tfa_reset: (tfa) Reset two-step verification for team member :ivar team_log.EventTypeArg.changed_enterprise_admin_role: (trusted_teams) Changed enterprise admin role :ivar team_log.EventTypeArg.changed_enterprise_connected_team_status: (trusted_teams) Changed enterprise-connected team status :ivar team_log.EventTypeArg.ended_enterprise_admin_session: (trusted_teams) Ended enterprise admin session :ivar team_log.EventTypeArg.ended_enterprise_admin_session_deprecated: (trusted_teams) Ended enterprise admin session (deprecated, replaced by 'Ended enterprise admin session') :ivar team_log.EventTypeArg.enterprise_settings_locking: (trusted_teams) Changed who can update a setting :ivar team_log.EventTypeArg.guest_admin_change_status: (trusted_teams) Changed guest team admin status :ivar team_log.EventTypeArg.started_enterprise_admin_session: (trusted_teams) Started enterprise admin session :ivar team_log.EventTypeArg.team_merge_request_accepted: (trusted_teams) Accepted a team merge request :ivar team_log.EventTypeArg.team_merge_request_accepted_shown_to_primary_team: (trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request') :ivar team_log.EventTypeArg.team_merge_request_accepted_shown_to_secondary_team: (trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request') :ivar team_log.EventTypeArg.team_merge_request_auto_canceled: (trusted_teams) Automatically canceled team merge request :ivar team_log.EventTypeArg.team_merge_request_canceled: (trusted_teams) Canceled a team merge request :ivar team_log.EventTypeArg.team_merge_request_canceled_shown_to_primary_team: (trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request') :ivar team_log.EventTypeArg.team_merge_request_canceled_shown_to_secondary_team: (trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request') :ivar team_log.EventTypeArg.team_merge_request_expired: (trusted_teams) Team merge request expired :ivar team_log.EventTypeArg.team_merge_request_expired_shown_to_primary_team: (trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired') :ivar team_log.EventTypeArg.team_merge_request_expired_shown_to_secondary_team: (trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired') :ivar team_log.EventTypeArg.team_merge_request_rejected_shown_to_primary_team: (trusted_teams) Rejected a team merge request (deprecated, no longer logged) :ivar team_log.EventTypeArg.team_merge_request_rejected_shown_to_secondary_team: (trusted_teams) Rejected a team merge request (deprecated, no longer logged) :ivar team_log.EventTypeArg.team_merge_request_reminder: (trusted_teams) Sent a team merge request reminder :ivar team_log.EventTypeArg.team_merge_request_reminder_shown_to_primary_team: (trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder') :ivar team_log.EventTypeArg.team_merge_request_reminder_shown_to_secondary_team: (trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder') :ivar team_log.EventTypeArg.team_merge_request_revoked: (trusted_teams) Canceled the team merge :ivar team_log.EventTypeArg.team_merge_request_sent_shown_to_primary_team: (trusted_teams) Requested to merge their Dropbox team into yours :ivar team_log.EventTypeArg.team_merge_request_sent_shown_to_secondary_team: (trusted_teams) Requested to merge your team into another Dropbox team """ _catch_all = 'other' # Attribute is overwritten below the class definition admin_alerting_alert_state_changed = None # Attribute is overwritten below the class definition admin_alerting_changed_alert_config = None # Attribute is overwritten below the class definition admin_alerting_triggered_alert = None # Attribute is overwritten below the class definition ransomware_restore_process_completed = None # Attribute is overwritten below the class definition ransomware_restore_process_started = None # Attribute is overwritten below the class definition app_blocked_by_permissions = None # Attribute is overwritten below the class definition app_link_team = None # Attribute is overwritten below the class definition app_link_user = None # Attribute is overwritten below the class definition app_unlink_team = None # Attribute is overwritten below the class definition app_unlink_user = None # Attribute is overwritten below the class definition integration_connected = None # Attribute is overwritten below the class definition integration_disconnected = None # Attribute is overwritten below the class definition file_add_comment = None # Attribute is overwritten below the class definition file_change_comment_subscription = None # Attribute is overwritten below the class definition file_delete_comment = None # Attribute is overwritten below the class definition file_edit_comment = None # Attribute is overwritten below the class definition file_like_comment = None # Attribute is overwritten below the class definition file_resolve_comment = None # Attribute is overwritten below the class definition file_unlike_comment = None # Attribute is overwritten below the class definition file_unresolve_comment = None # Attribute is overwritten below the class definition governance_policy_add_folders = None # Attribute is overwritten below the class definition governance_policy_add_folder_failed = None # Attribute is overwritten below the class definition governance_policy_content_disposed = None # Attribute is overwritten below the class definition governance_policy_create = None # Attribute is overwritten below the class definition governance_policy_delete = None # Attribute is overwritten below the class definition governance_policy_edit_details = None # Attribute is overwritten below the class definition governance_policy_edit_duration = None # Attribute is overwritten below the class definition governance_policy_export_created = None # Attribute is overwritten below the class definition governance_policy_export_removed = None # Attribute is overwritten below the class definition governance_policy_remove_folders = None # Attribute is overwritten below the class definition governance_policy_report_created = None # Attribute is overwritten below the class definition governance_policy_zip_part_downloaded = None # Attribute is overwritten below the class definition legal_holds_activate_a_hold = None # Attribute is overwritten below the class definition legal_holds_add_members = None # Attribute is overwritten below the class definition legal_holds_change_hold_details = None # Attribute is overwritten below the class definition legal_holds_change_hold_name = None # Attribute is overwritten below the class definition legal_holds_export_a_hold = None # Attribute is overwritten below the class definition legal_holds_export_cancelled = None # Attribute is overwritten below the class definition legal_holds_export_downloaded = None # Attribute is overwritten below the class definition legal_holds_export_removed = None # Attribute is overwritten below the class definition legal_holds_release_a_hold = None # Attribute is overwritten below the class definition legal_holds_remove_members = None # Attribute is overwritten below the class definition legal_holds_report_a_hold = None # Attribute is overwritten below the class definition device_change_ip_desktop = None # Attribute is overwritten below the class definition device_change_ip_mobile = None # Attribute is overwritten below the class definition device_change_ip_web = None # Attribute is overwritten below the class definition device_delete_on_unlink_fail = None # Attribute is overwritten below the class definition device_delete_on_unlink_success = None # Attribute is overwritten below the class definition device_link_fail = None # Attribute is overwritten below the class definition device_link_success = None # Attribute is overwritten below the class definition device_management_disabled = None # Attribute is overwritten below the class definition device_management_enabled = None # Attribute is overwritten below the class definition device_sync_backup_status_changed = None # Attribute is overwritten below the class definition device_unlink = None # Attribute is overwritten below the class definition dropbox_passwords_exported = None # Attribute is overwritten below the class definition dropbox_passwords_new_device_enrolled = None # Attribute is overwritten below the class definition emm_refresh_auth_token = None # Attribute is overwritten below the class definition external_drive_backup_eligibility_status_checked = None # Attribute is overwritten below the class definition external_drive_backup_status_changed = None # Attribute is overwritten below the class definition account_capture_change_availability = None # Attribute is overwritten below the class definition account_capture_migrate_account = None # Attribute is overwritten below the class definition account_capture_notification_emails_sent = None # Attribute is overwritten below the class definition account_capture_relinquish_account = None # Attribute is overwritten below the class definition disabled_domain_invites = None # Attribute is overwritten below the class definition domain_invites_approve_request_to_join_team = None # Attribute is overwritten below the class definition domain_invites_decline_request_to_join_team = None # Attribute is overwritten below the class definition domain_invites_email_existing_users = None # Attribute is overwritten below the class definition domain_invites_request_to_join_team = None # Attribute is overwritten below the class definition domain_invites_set_invite_new_user_pref_to_no = None # Attribute is overwritten below the class definition domain_invites_set_invite_new_user_pref_to_yes = None # Attribute is overwritten below the class definition domain_verification_add_domain_fail = None # Attribute is overwritten below the class definition domain_verification_add_domain_success = None # Attribute is overwritten below the class definition domain_verification_remove_domain = None # Attribute is overwritten below the class definition enabled_domain_invites = None # Attribute is overwritten below the class definition team_encryption_key_cancel_key_deletion = None # Attribute is overwritten below the class definition team_encryption_key_create_key = None # Attribute is overwritten below the class definition team_encryption_key_delete_key = None # Attribute is overwritten below the class definition team_encryption_key_disable_key = None # Attribute is overwritten below the class definition team_encryption_key_enable_key = None # Attribute is overwritten below the class definition team_encryption_key_rotate_key = None # Attribute is overwritten below the class definition team_encryption_key_schedule_key_deletion = None # Attribute is overwritten below the class definition apply_naming_convention = None # Attribute is overwritten below the class definition create_folder = None # Attribute is overwritten below the class definition file_add = None # Attribute is overwritten below the class definition file_add_from_automation = None # Attribute is overwritten below the class definition file_copy = None # Attribute is overwritten below the class definition file_delete = None # Attribute is overwritten below the class definition file_download = None # Attribute is overwritten below the class definition file_edit = None # Attribute is overwritten below the class definition file_get_copy_reference = None # Attribute is overwritten below the class definition file_locking_lock_status_changed = None # Attribute is overwritten below the class definition file_move = None # Attribute is overwritten below the class definition file_permanently_delete = None # Attribute is overwritten below the class definition file_preview = None # Attribute is overwritten below the class definition file_rename = None # Attribute is overwritten below the class definition file_restore = None # Attribute is overwritten below the class definition file_revert = None # Attribute is overwritten below the class definition file_rollback_changes = None # Attribute is overwritten below the class definition file_save_copy_reference = None # Attribute is overwritten below the class definition folder_overview_description_changed = None # Attribute is overwritten below the class definition folder_overview_item_pinned = None # Attribute is overwritten below the class definition folder_overview_item_unpinned = None # Attribute is overwritten below the class definition object_label_added = None # Attribute is overwritten below the class definition object_label_removed = None # Attribute is overwritten below the class definition object_label_updated_value = None # Attribute is overwritten below the class definition organize_folder_with_tidy = None # Attribute is overwritten below the class definition replay_file_delete = None # Attribute is overwritten below the class definition rewind_folder = None # Attribute is overwritten below the class definition undo_naming_convention = None # Attribute is overwritten below the class definition undo_organize_folder_with_tidy = None # Attribute is overwritten below the class definition user_tags_added = None # Attribute is overwritten below the class definition user_tags_removed = None # Attribute is overwritten below the class definition email_ingest_receive_file = None # Attribute is overwritten below the class definition file_request_change = None # Attribute is overwritten below the class definition file_request_close = None # Attribute is overwritten below the class definition file_request_create = None # Attribute is overwritten below the class definition file_request_delete = None # Attribute is overwritten below the class definition file_request_receive_file = None # Attribute is overwritten below the class definition group_add_external_id = None # Attribute is overwritten below the class definition group_add_member = None # Attribute is overwritten below the class definition group_change_external_id = None # Attribute is overwritten below the class definition group_change_management_type = None # Attribute is overwritten below the class definition group_change_member_role = None # Attribute is overwritten below the class definition group_create = None # Attribute is overwritten below the class definition group_delete = None # Attribute is overwritten below the class definition group_description_updated = None # Attribute is overwritten below the class definition group_join_policy_updated = None # Attribute is overwritten below the class definition group_moved = None # Attribute is overwritten below the class definition group_remove_external_id = None # Attribute is overwritten below the class definition group_remove_member = None # Attribute is overwritten below the class definition group_rename = None # Attribute is overwritten below the class definition account_lock_or_unlocked = None # Attribute is overwritten below the class definition emm_error = None # Attribute is overwritten below the class definition guest_admin_signed_in_via_trusted_teams = None # Attribute is overwritten below the class definition guest_admin_signed_out_via_trusted_teams = None # Attribute is overwritten below the class definition login_fail = None # Attribute is overwritten below the class definition login_success = None # Attribute is overwritten below the class definition logout = None # Attribute is overwritten below the class definition reseller_support_session_end = None # Attribute is overwritten below the class definition reseller_support_session_start = None # Attribute is overwritten below the class definition sign_in_as_session_end = None # Attribute is overwritten below the class definition sign_in_as_session_start = None # Attribute is overwritten below the class definition sso_error = None # Attribute is overwritten below the class definition backup_admin_invitation_sent = None # Attribute is overwritten below the class definition backup_invitation_opened = None # Attribute is overwritten below the class definition create_team_invite_link = None # Attribute is overwritten below the class definition delete_team_invite_link = None # Attribute is overwritten below the class definition member_add_external_id = None # Attribute is overwritten below the class definition member_add_name = None # Attribute is overwritten below the class definition member_change_admin_role = None # Attribute is overwritten below the class definition member_change_email = None # Attribute is overwritten below the class definition member_change_external_id = None # Attribute is overwritten below the class definition member_change_membership_type = None # Attribute is overwritten below the class definition member_change_name = None # Attribute is overwritten below the class definition member_change_reseller_role = None # Attribute is overwritten below the class definition member_change_status = None # Attribute is overwritten below the class definition member_delete_manual_contacts = None # Attribute is overwritten below the class definition member_delete_profile_photo = None # Attribute is overwritten below the class definition member_permanently_delete_account_contents = None # Attribute is overwritten below the class definition member_remove_external_id = None # Attribute is overwritten below the class definition member_set_profile_photo = None # Attribute is overwritten below the class definition member_space_limits_add_custom_quota = None # Attribute is overwritten below the class definition member_space_limits_change_custom_quota = None # Attribute is overwritten below the class definition member_space_limits_change_status = None # Attribute is overwritten below the class definition member_space_limits_remove_custom_quota = None # Attribute is overwritten below the class definition member_suggest = None # Attribute is overwritten below the class definition member_transfer_account_contents = None # Attribute is overwritten below the class definition pending_secondary_email_added = None # Attribute is overwritten below the class definition secondary_email_deleted = None # Attribute is overwritten below the class definition secondary_email_verified = None # Attribute is overwritten below the class definition secondary_mails_policy_changed = None # Attribute is overwritten below the class definition binder_add_page = None # Attribute is overwritten below the class definition binder_add_section = None # Attribute is overwritten below the class definition binder_remove_page = None # Attribute is overwritten below the class definition binder_remove_section = None # Attribute is overwritten below the class definition binder_rename_page = None # Attribute is overwritten below the class definition binder_rename_section = None # Attribute is overwritten below the class definition binder_reorder_page = None # Attribute is overwritten below the class definition binder_reorder_section = None # Attribute is overwritten below the class definition paper_content_add_member = None # Attribute is overwritten below the class definition paper_content_add_to_folder = None # Attribute is overwritten below the class definition paper_content_archive = None # Attribute is overwritten below the class definition paper_content_create = None # Attribute is overwritten below the class definition paper_content_permanently_delete = None # Attribute is overwritten below the class definition paper_content_remove_from_folder = None # Attribute is overwritten below the class definition paper_content_remove_member = None # Attribute is overwritten below the class definition paper_content_rename = None # Attribute is overwritten below the class definition paper_content_restore = None # Attribute is overwritten below the class definition paper_doc_add_comment = None # Attribute is overwritten below the class definition paper_doc_change_member_role = None # Attribute is overwritten below the class definition paper_doc_change_sharing_policy = None # Attribute is overwritten below the class definition paper_doc_change_subscription = None # Attribute is overwritten below the class definition paper_doc_deleted = None # Attribute is overwritten below the class definition paper_doc_delete_comment = None # Attribute is overwritten below the class definition paper_doc_download = None # Attribute is overwritten below the class definition paper_doc_edit = None # Attribute is overwritten below the class definition paper_doc_edit_comment = None # Attribute is overwritten below the class definition paper_doc_followed = None # Attribute is overwritten below the class definition paper_doc_mention = None # Attribute is overwritten below the class definition paper_doc_ownership_changed = None # Attribute is overwritten below the class definition paper_doc_request_access = None # Attribute is overwritten below the class definition paper_doc_resolve_comment = None # Attribute is overwritten below the class definition paper_doc_revert = None # Attribute is overwritten below the class definition paper_doc_slack_share = None # Attribute is overwritten below the class definition paper_doc_team_invite = None # Attribute is overwritten below the class definition paper_doc_trashed = None # Attribute is overwritten below the class definition paper_doc_unresolve_comment = None # Attribute is overwritten below the class definition paper_doc_untrashed = None # Attribute is overwritten below the class definition paper_doc_view = None # Attribute is overwritten below the class definition paper_external_view_allow = None # Attribute is overwritten below the class definition paper_external_view_default_team = None # Attribute is overwritten below the class definition paper_external_view_forbid = None # Attribute is overwritten below the class definition paper_folder_change_subscription = None # Attribute is overwritten below the class definition paper_folder_deleted = None # Attribute is overwritten below the class definition paper_folder_followed = None # Attribute is overwritten below the class definition paper_folder_team_invite = None # Attribute is overwritten below the class definition paper_published_link_change_permission = None # Attribute is overwritten below the class definition paper_published_link_create = None # Attribute is overwritten below the class definition paper_published_link_disabled = None # Attribute is overwritten below the class definition paper_published_link_view = None # Attribute is overwritten below the class definition password_change = None # Attribute is overwritten below the class definition password_reset = None # Attribute is overwritten below the class definition password_reset_all = None # Attribute is overwritten below the class definition classification_create_report = None # Attribute is overwritten below the class definition classification_create_report_fail = None # Attribute is overwritten below the class definition emm_create_exceptions_report = None # Attribute is overwritten below the class definition emm_create_usage_report = None # Attribute is overwritten below the class definition export_members_report = None # Attribute is overwritten below the class definition export_members_report_fail = None # Attribute is overwritten below the class definition external_sharing_create_report = None # Attribute is overwritten below the class definition external_sharing_report_failed = None # Attribute is overwritten below the class definition no_expiration_link_gen_create_report = None # Attribute is overwritten below the class definition no_expiration_link_gen_report_failed = None # Attribute is overwritten below the class definition no_password_link_gen_create_report = None # Attribute is overwritten below the class definition no_password_link_gen_report_failed = None # Attribute is overwritten below the class definition no_password_link_view_create_report = None # Attribute is overwritten below the class definition no_password_link_view_report_failed = None # Attribute is overwritten below the class definition outdated_link_view_create_report = None # Attribute is overwritten below the class definition outdated_link_view_report_failed = None # Attribute is overwritten below the class definition paper_admin_export_start = None # Attribute is overwritten below the class definition ransomware_alert_create_report = None # Attribute is overwritten below the class definition ransomware_alert_create_report_failed = None # Attribute is overwritten below the class definition smart_sync_create_admin_privilege_report = None # Attribute is overwritten below the class definition team_activity_create_report = None # Attribute is overwritten below the class definition team_activity_create_report_fail = None # Attribute is overwritten below the class definition collection_share = None # Attribute is overwritten below the class definition file_transfers_file_add = None # Attribute is overwritten below the class definition file_transfers_transfer_delete = None # Attribute is overwritten below the class definition file_transfers_transfer_download = None # Attribute is overwritten below the class definition file_transfers_transfer_send = None # Attribute is overwritten below the class definition file_transfers_transfer_view = None # Attribute is overwritten below the class definition note_acl_invite_only = None # Attribute is overwritten below the class definition note_acl_link = None # Attribute is overwritten below the class definition note_acl_team_link = None # Attribute is overwritten below the class definition note_shared = None # Attribute is overwritten below the class definition note_share_receive = None # Attribute is overwritten below the class definition open_note_shared = None # Attribute is overwritten below the class definition replay_file_shared_link_created = None # Attribute is overwritten below the class definition replay_file_shared_link_modified = None # Attribute is overwritten below the class definition replay_project_team_add = None # Attribute is overwritten below the class definition replay_project_team_delete = None # Attribute is overwritten below the class definition sf_add_group = None # Attribute is overwritten below the class definition sf_allow_non_members_to_view_shared_links = None # Attribute is overwritten below the class definition sf_external_invite_warn = None # Attribute is overwritten below the class definition sf_fb_invite = None # Attribute is overwritten below the class definition sf_fb_invite_change_role = None # Attribute is overwritten below the class definition sf_fb_uninvite = None # Attribute is overwritten below the class definition sf_invite_group = None # Attribute is overwritten below the class definition sf_team_grant_access = None # Attribute is overwritten below the class definition sf_team_invite = None # Attribute is overwritten below the class definition sf_team_invite_change_role = None # Attribute is overwritten below the class definition sf_team_join = None # Attribute is overwritten below the class definition sf_team_join_from_oob_link = None # Attribute is overwritten below the class definition sf_team_uninvite = None # Attribute is overwritten below the class definition shared_content_add_invitees = None # Attribute is overwritten below the class definition shared_content_add_link_expiry = None # Attribute is overwritten below the class definition shared_content_add_link_password = None # Attribute is overwritten below the class definition shared_content_add_member = None # Attribute is overwritten below the class definition shared_content_change_downloads_policy = None # Attribute is overwritten below the class definition shared_content_change_invitee_role = None # Attribute is overwritten below the class definition shared_content_change_link_audience = None # Attribute is overwritten below the class definition shared_content_change_link_expiry = None # Attribute is overwritten below the class definition shared_content_change_link_password = None # Attribute is overwritten below the class definition shared_content_change_member_role = None # Attribute is overwritten below the class definition shared_content_change_viewer_info_policy = None # Attribute is overwritten below the class definition shared_content_claim_invitation = None # Attribute is overwritten below the class definition shared_content_copy = None # Attribute is overwritten below the class definition shared_content_download = None # Attribute is overwritten below the class definition shared_content_relinquish_membership = None # Attribute is overwritten below the class definition shared_content_remove_invitees = None # Attribute is overwritten below the class definition shared_content_remove_link_expiry = None # Attribute is overwritten below the class definition shared_content_remove_link_password = None # Attribute is overwritten below the class definition shared_content_remove_member = None # Attribute is overwritten below the class definition shared_content_request_access = None # Attribute is overwritten below the class definition shared_content_restore_invitees = None # Attribute is overwritten below the class definition shared_content_restore_member = None # Attribute is overwritten below the class definition shared_content_unshare = None # Attribute is overwritten below the class definition shared_content_view = None # Attribute is overwritten below the class definition shared_folder_change_link_policy = None # Attribute is overwritten below the class definition shared_folder_change_members_inheritance_policy = None # Attribute is overwritten below the class definition shared_folder_change_members_management_policy = None # Attribute is overwritten below the class definition shared_folder_change_members_policy = None # Attribute is overwritten below the class definition shared_folder_create = None # Attribute is overwritten below the class definition shared_folder_decline_invitation = None # Attribute is overwritten below the class definition shared_folder_mount = None # Attribute is overwritten below the class definition shared_folder_nest = None # Attribute is overwritten below the class definition shared_folder_transfer_ownership = None # Attribute is overwritten below the class definition shared_folder_unmount = None # Attribute is overwritten below the class definition shared_link_add_expiry = None # Attribute is overwritten below the class definition shared_link_change_expiry = None # Attribute is overwritten below the class definition shared_link_change_visibility = None # Attribute is overwritten below the class definition shared_link_copy = None # Attribute is overwritten below the class definition shared_link_create = None # Attribute is overwritten below the class definition shared_link_disable = None # Attribute is overwritten below the class definition shared_link_download = None # Attribute is overwritten below the class definition shared_link_remove_expiry = None # Attribute is overwritten below the class definition shared_link_settings_add_expiration = None # Attribute is overwritten below the class definition shared_link_settings_add_password = None # Attribute is overwritten below the class definition shared_link_settings_allow_download_disabled = None # Attribute is overwritten below the class definition shared_link_settings_allow_download_enabled = None # Attribute is overwritten below the class definition shared_link_settings_change_audience = None # Attribute is overwritten below the class definition shared_link_settings_change_expiration = None # Attribute is overwritten below the class definition shared_link_settings_change_password = None # Attribute is overwritten below the class definition shared_link_settings_remove_expiration = None # Attribute is overwritten below the class definition shared_link_settings_remove_password = None # Attribute is overwritten below the class definition shared_link_share = None # Attribute is overwritten below the class definition shared_link_view = None # Attribute is overwritten below the class definition shared_note_opened = None # Attribute is overwritten below the class definition shmodel_disable_downloads = None # Attribute is overwritten below the class definition shmodel_enable_downloads = None # Attribute is overwritten below the class definition shmodel_group_share = None # Attribute is overwritten below the class definition showcase_access_granted = None # Attribute is overwritten below the class definition showcase_add_member = None # Attribute is overwritten below the class definition showcase_archived = None # Attribute is overwritten below the class definition showcase_created = None # Attribute is overwritten below the class definition showcase_delete_comment = None # Attribute is overwritten below the class definition showcase_edited = None # Attribute is overwritten below the class definition showcase_edit_comment = None # Attribute is overwritten below the class definition showcase_file_added = None # Attribute is overwritten below the class definition showcase_file_download = None # Attribute is overwritten below the class definition showcase_file_removed = None # Attribute is overwritten below the class definition showcase_file_view = None # Attribute is overwritten below the class definition showcase_permanently_deleted = None # Attribute is overwritten below the class definition showcase_post_comment = None # Attribute is overwritten below the class definition showcase_remove_member = None # Attribute is overwritten below the class definition showcase_renamed = None # Attribute is overwritten below the class definition showcase_request_access = None # Attribute is overwritten below the class definition showcase_resolve_comment = None # Attribute is overwritten below the class definition showcase_restored = None # Attribute is overwritten below the class definition showcase_trashed = None # Attribute is overwritten below the class definition showcase_trashed_deprecated = None # Attribute is overwritten below the class definition showcase_unresolve_comment = None # Attribute is overwritten below the class definition showcase_untrashed = None # Attribute is overwritten below the class definition showcase_untrashed_deprecated = None # Attribute is overwritten below the class definition showcase_view = None # Attribute is overwritten below the class definition sso_add_cert = None # Attribute is overwritten below the class definition sso_add_login_url = None # Attribute is overwritten below the class definition sso_add_logout_url = None # Attribute is overwritten below the class definition sso_change_cert = None # Attribute is overwritten below the class definition sso_change_login_url = None # Attribute is overwritten below the class definition sso_change_logout_url = None # Attribute is overwritten below the class definition sso_change_saml_identity_mode = None # Attribute is overwritten below the class definition sso_remove_cert = None # Attribute is overwritten below the class definition sso_remove_login_url = None # Attribute is overwritten below the class definition sso_remove_logout_url = None # Attribute is overwritten below the class definition team_folder_change_status = None # Attribute is overwritten below the class definition team_folder_create = None # Attribute is overwritten below the class definition team_folder_downgrade = None # Attribute is overwritten below the class definition team_folder_permanently_delete = None # Attribute is overwritten below the class definition team_folder_rename = None # Attribute is overwritten below the class definition team_selective_sync_settings_changed = None # Attribute is overwritten below the class definition account_capture_change_policy = None # Attribute is overwritten below the class definition admin_email_reminders_changed = None # Attribute is overwritten below the class definition allow_download_disabled = None # Attribute is overwritten below the class definition allow_download_enabled = None # Attribute is overwritten below the class definition app_permissions_changed = None # Attribute is overwritten below the class definition camera_uploads_policy_changed = None # Attribute is overwritten below the class definition capture_transcript_policy_changed = None # Attribute is overwritten below the class definition classification_change_policy = None # Attribute is overwritten below the class definition computer_backup_policy_changed = None # Attribute is overwritten below the class definition content_administration_policy_changed = None # Attribute is overwritten below the class definition data_placement_restriction_change_policy = None # Attribute is overwritten below the class definition data_placement_restriction_satisfy_policy = None # Attribute is overwritten below the class definition device_approvals_add_exception = None # Attribute is overwritten below the class definition device_approvals_change_desktop_policy = None # Attribute is overwritten below the class definition device_approvals_change_mobile_policy = None # Attribute is overwritten below the class definition device_approvals_change_overage_action = None # Attribute is overwritten below the class definition device_approvals_change_unlink_action = None # Attribute is overwritten below the class definition device_approvals_remove_exception = None # Attribute is overwritten below the class definition directory_restrictions_add_members = None # Attribute is overwritten below the class definition directory_restrictions_remove_members = None # Attribute is overwritten below the class definition dropbox_passwords_policy_changed = None # Attribute is overwritten below the class definition email_ingest_policy_changed = None # Attribute is overwritten below the class definition emm_add_exception = None # Attribute is overwritten below the class definition emm_change_policy = None # Attribute is overwritten below the class definition emm_remove_exception = None # Attribute is overwritten below the class definition extended_version_history_change_policy = None # Attribute is overwritten below the class definition external_drive_backup_policy_changed = None # Attribute is overwritten below the class definition file_comments_change_policy = None # Attribute is overwritten below the class definition file_locking_policy_changed = None # Attribute is overwritten below the class definition file_provider_migration_policy_changed = None # Attribute is overwritten below the class definition file_requests_change_policy = None # Attribute is overwritten below the class definition file_requests_emails_enabled = None # Attribute is overwritten below the class definition file_requests_emails_restricted_to_team_only = None # Attribute is overwritten below the class definition file_transfers_policy_changed = None # Attribute is overwritten below the class definition folder_link_restriction_policy_changed = None # Attribute is overwritten below the class definition google_sso_change_policy = None # Attribute is overwritten below the class definition group_user_management_change_policy = None # Attribute is overwritten below the class definition integration_policy_changed = None # Attribute is overwritten below the class definition invite_acceptance_email_policy_changed = None # Attribute is overwritten below the class definition member_requests_change_policy = None # Attribute is overwritten below the class definition member_send_invite_policy_changed = None # Attribute is overwritten below the class definition member_space_limits_add_exception = None # Attribute is overwritten below the class definition member_space_limits_change_caps_type_policy = None # Attribute is overwritten below the class definition member_space_limits_change_policy = None # Attribute is overwritten below the class definition member_space_limits_remove_exception = None # Attribute is overwritten below the class definition member_suggestions_change_policy = None # Attribute is overwritten below the class definition microsoft_office_addin_change_policy = None # Attribute is overwritten below the class definition network_control_change_policy = None # Attribute is overwritten below the class definition paper_change_deployment_policy = None # Attribute is overwritten below the class definition paper_change_member_link_policy = None # Attribute is overwritten below the class definition paper_change_member_policy = None # Attribute is overwritten below the class definition paper_change_policy = None # Attribute is overwritten below the class definition paper_default_folder_policy_changed = None # Attribute is overwritten below the class definition paper_desktop_policy_changed = None # Attribute is overwritten below the class definition paper_enabled_users_group_addition = None # Attribute is overwritten below the class definition paper_enabled_users_group_removal = None # Attribute is overwritten below the class definition password_strength_requirements_change_policy = None # Attribute is overwritten below the class definition permanent_delete_change_policy = None # Attribute is overwritten below the class definition reseller_support_change_policy = None # Attribute is overwritten below the class definition rewind_policy_changed = None # Attribute is overwritten below the class definition send_for_signature_policy_changed = None # Attribute is overwritten below the class definition sharing_change_folder_join_policy = None # Attribute is overwritten below the class definition sharing_change_link_allow_change_expiration_policy = None # Attribute is overwritten below the class definition sharing_change_link_default_expiration_policy = None # Attribute is overwritten below the class definition sharing_change_link_enforce_password_policy = None # Attribute is overwritten below the class definition sharing_change_link_policy = None # Attribute is overwritten below the class definition sharing_change_member_policy = None # Attribute is overwritten below the class definition showcase_change_download_policy = None # Attribute is overwritten below the class definition showcase_change_enabled_policy = None # Attribute is overwritten below the class definition showcase_change_external_sharing_policy = None # Attribute is overwritten below the class definition smarter_smart_sync_policy_changed = None # Attribute is overwritten below the class definition smart_sync_change_policy = None # Attribute is overwritten below the class definition smart_sync_not_opt_out = None # Attribute is overwritten below the class definition smart_sync_opt_out = None # Attribute is overwritten below the class definition sso_change_policy = None # Attribute is overwritten below the class definition team_branding_policy_changed = None # Attribute is overwritten below the class definition team_extensions_policy_changed = None # Attribute is overwritten below the class definition team_selective_sync_policy_changed = None # Attribute is overwritten below the class definition team_sharing_whitelist_subjects_changed = None # Attribute is overwritten below the class definition tfa_add_exception = None # Attribute is overwritten below the class definition tfa_change_policy = None # Attribute is overwritten below the class definition tfa_remove_exception = None # Attribute is overwritten below the class definition two_account_change_policy = None # Attribute is overwritten below the class definition viewer_info_policy_changed = None # Attribute is overwritten below the class definition watermarking_policy_changed = None # Attribute is overwritten below the class definition web_sessions_change_active_session_limit = None # Attribute is overwritten below the class definition web_sessions_change_fixed_length_policy = None # Attribute is overwritten below the class definition web_sessions_change_idle_length_policy = None # Attribute is overwritten below the class definition data_residency_migration_request_successful = None # Attribute is overwritten below the class definition data_residency_migration_request_unsuccessful = None # Attribute is overwritten below the class definition team_merge_from = None # Attribute is overwritten below the class definition team_merge_to = None # Attribute is overwritten below the class definition team_profile_add_background = None # Attribute is overwritten below the class definition team_profile_add_logo = None # Attribute is overwritten below the class definition team_profile_change_background = None # Attribute is overwritten below the class definition team_profile_change_default_language = None # Attribute is overwritten below the class definition team_profile_change_logo = None # Attribute is overwritten below the class definition team_profile_change_name = None # Attribute is overwritten below the class definition team_profile_remove_background = None # Attribute is overwritten below the class definition team_profile_remove_logo = None # Attribute is overwritten below the class definition tfa_add_backup_phone = None # Attribute is overwritten below the class definition tfa_add_security_key = None # Attribute is overwritten below the class definition tfa_change_backup_phone = None # Attribute is overwritten below the class definition tfa_change_status = None # Attribute is overwritten below the class definition tfa_remove_backup_phone = None # Attribute is overwritten below the class definition tfa_remove_security_key = None # Attribute is overwritten below the class definition tfa_reset = None # Attribute is overwritten below the class definition changed_enterprise_admin_role = None # Attribute is overwritten below the class definition changed_enterprise_connected_team_status = None # Attribute is overwritten below the class definition ended_enterprise_admin_session = None # Attribute is overwritten below the class definition ended_enterprise_admin_session_deprecated = None # Attribute is overwritten below the class definition enterprise_settings_locking = None # Attribute is overwritten below the class definition guest_admin_change_status = None # Attribute is overwritten below the class definition started_enterprise_admin_session = None # Attribute is overwritten below the class definition team_merge_request_accepted = None # Attribute is overwritten below the class definition team_merge_request_accepted_shown_to_primary_team = None # Attribute is overwritten below the class definition team_merge_request_accepted_shown_to_secondary_team = None # Attribute is overwritten below the class definition team_merge_request_auto_canceled = None # Attribute is overwritten below the class definition team_merge_request_canceled = None # Attribute is overwritten below the class definition team_merge_request_canceled_shown_to_primary_team = None # Attribute is overwritten below the class definition team_merge_request_canceled_shown_to_secondary_team = None # Attribute is overwritten below the class definition team_merge_request_expired = None # Attribute is overwritten below the class definition team_merge_request_expired_shown_to_primary_team = None # Attribute is overwritten below the class definition team_merge_request_expired_shown_to_secondary_team = None # Attribute is overwritten below the class definition team_merge_request_rejected_shown_to_primary_team = None # Attribute is overwritten below the class definition team_merge_request_rejected_shown_to_secondary_team = None # Attribute is overwritten below the class definition team_merge_request_reminder = None # Attribute is overwritten below the class definition team_merge_request_reminder_shown_to_primary_team = None # Attribute is overwritten below the class definition team_merge_request_reminder_shown_to_secondary_team = None # Attribute is overwritten below the class definition team_merge_request_revoked = None # Attribute is overwritten below the class definition team_merge_request_sent_shown_to_primary_team = None # Attribute is overwritten below the class definition team_merge_request_sent_shown_to_secondary_team = None # Attribute is overwritten below the class definition other = None def is_admin_alerting_alert_state_changed(self): """ Check if the union tag is ``admin_alerting_alert_state_changed``. :rtype: bool """ return self._tag == 'admin_alerting_alert_state_changed' def is_admin_alerting_changed_alert_config(self): """ Check if the union tag is ``admin_alerting_changed_alert_config``. :rtype: bool """ return self._tag == 'admin_alerting_changed_alert_config' def is_admin_alerting_triggered_alert(self): """ Check if the union tag is ``admin_alerting_triggered_alert``. :rtype: bool """ return self._tag == 'admin_alerting_triggered_alert' def is_ransomware_restore_process_completed(self): """ Check if the union tag is ``ransomware_restore_process_completed``. :rtype: bool """ return self._tag == 'ransomware_restore_process_completed' def is_ransomware_restore_process_started(self): """ Check if the union tag is ``ransomware_restore_process_started``. :rtype: bool """ return self._tag == 'ransomware_restore_process_started' def is_app_blocked_by_permissions(self): """ Check if the union tag is ``app_blocked_by_permissions``. :rtype: bool """ return self._tag == 'app_blocked_by_permissions' def is_app_link_team(self): """ Check if the union tag is ``app_link_team``. :rtype: bool """ return self._tag == 'app_link_team' def is_app_link_user(self): """ Check if the union tag is ``app_link_user``. :rtype: bool """ return self._tag == 'app_link_user' def is_app_unlink_team(self): """ Check if the union tag is ``app_unlink_team``. :rtype: bool """ return self._tag == 'app_unlink_team' def is_app_unlink_user(self): """ Check if the union tag is ``app_unlink_user``. :rtype: bool """ return self._tag == 'app_unlink_user' def is_integration_connected(self): """ Check if the union tag is ``integration_connected``. :rtype: bool """ return self._tag == 'integration_connected' def is_integration_disconnected(self): """ Check if the union tag is ``integration_disconnected``. :rtype: bool """ return self._tag == 'integration_disconnected' def is_file_add_comment(self): """ Check if the union tag is ``file_add_comment``. :rtype: bool """ return self._tag == 'file_add_comment' def is_file_change_comment_subscription(self): """ Check if the union tag is ``file_change_comment_subscription``. :rtype: bool """ return self._tag == 'file_change_comment_subscription' def is_file_delete_comment(self): """ Check if the union tag is ``file_delete_comment``. :rtype: bool """ return self._tag == 'file_delete_comment' def is_file_edit_comment(self): """ Check if the union tag is ``file_edit_comment``. :rtype: bool """ return self._tag == 'file_edit_comment' def is_file_like_comment(self): """ Check if the union tag is ``file_like_comment``. :rtype: bool """ return self._tag == 'file_like_comment' def is_file_resolve_comment(self): """ Check if the union tag is ``file_resolve_comment``. :rtype: bool """ return self._tag == 'file_resolve_comment' def is_file_unlike_comment(self): """ Check if the union tag is ``file_unlike_comment``. :rtype: bool """ return self._tag == 'file_unlike_comment' def is_file_unresolve_comment(self): """ Check if the union tag is ``file_unresolve_comment``. :rtype: bool """ return self._tag == 'file_unresolve_comment' def is_governance_policy_add_folders(self): """ Check if the union tag is ``governance_policy_add_folders``. :rtype: bool """ return self._tag == 'governance_policy_add_folders' def is_governance_policy_add_folder_failed(self): """ Check if the union tag is ``governance_policy_add_folder_failed``. :rtype: bool """ return self._tag == 'governance_policy_add_folder_failed' def is_governance_policy_content_disposed(self): """ Check if the union tag is ``governance_policy_content_disposed``. :rtype: bool """ return self._tag == 'governance_policy_content_disposed' def is_governance_policy_create(self): """ Check if the union tag is ``governance_policy_create``. :rtype: bool """ return self._tag == 'governance_policy_create' def is_governance_policy_delete(self): """ Check if the union tag is ``governance_policy_delete``. :rtype: bool """ return self._tag == 'governance_policy_delete' def is_governance_policy_edit_details(self): """ Check if the union tag is ``governance_policy_edit_details``. :rtype: bool """ return self._tag == 'governance_policy_edit_details' def is_governance_policy_edit_duration(self): """ Check if the union tag is ``governance_policy_edit_duration``. :rtype: bool """ return self._tag == 'governance_policy_edit_duration' def is_governance_policy_export_created(self): """ Check if the union tag is ``governance_policy_export_created``. :rtype: bool """ return self._tag == 'governance_policy_export_created' def is_governance_policy_export_removed(self): """ Check if the union tag is ``governance_policy_export_removed``. :rtype: bool """ return self._tag == 'governance_policy_export_removed' def is_governance_policy_remove_folders(self): """ Check if the union tag is ``governance_policy_remove_folders``. :rtype: bool """ return self._tag == 'governance_policy_remove_folders' def is_governance_policy_report_created(self): """ Check if the union tag is ``governance_policy_report_created``. :rtype: bool """ return self._tag == 'governance_policy_report_created' def is_governance_policy_zip_part_downloaded(self): """ Check if the union tag is ``governance_policy_zip_part_downloaded``. :rtype: bool """ return self._tag == 'governance_policy_zip_part_downloaded' def is_legal_holds_activate_a_hold(self): """ Check if the union tag is ``legal_holds_activate_a_hold``. :rtype: bool """ return self._tag == 'legal_holds_activate_a_hold' def is_legal_holds_add_members(self): """ Check if the union tag is ``legal_holds_add_members``. :rtype: bool """ return self._tag == 'legal_holds_add_members' def is_legal_holds_change_hold_details(self): """ Check if the union tag is ``legal_holds_change_hold_details``. :rtype: bool """ return self._tag == 'legal_holds_change_hold_details' def is_legal_holds_change_hold_name(self): """ Check if the union tag is ``legal_holds_change_hold_name``. :rtype: bool """ return self._tag == 'legal_holds_change_hold_name' def is_legal_holds_export_a_hold(self): """ Check if the union tag is ``legal_holds_export_a_hold``. :rtype: bool """ return self._tag == 'legal_holds_export_a_hold' def is_legal_holds_export_cancelled(self): """ Check if the union tag is ``legal_holds_export_cancelled``. :rtype: bool """ return self._tag == 'legal_holds_export_cancelled' def is_legal_holds_export_downloaded(self): """ Check if the union tag is ``legal_holds_export_downloaded``. :rtype: bool """ return self._tag == 'legal_holds_export_downloaded' def is_legal_holds_export_removed(self): """ Check if the union tag is ``legal_holds_export_removed``. :rtype: bool """ return self._tag == 'legal_holds_export_removed' def is_legal_holds_release_a_hold(self): """ Check if the union tag is ``legal_holds_release_a_hold``. :rtype: bool """ return self._tag == 'legal_holds_release_a_hold' def is_legal_holds_remove_members(self): """ Check if the union tag is ``legal_holds_remove_members``. :rtype: bool """ return self._tag == 'legal_holds_remove_members' def is_legal_holds_report_a_hold(self): """ Check if the union tag is ``legal_holds_report_a_hold``. :rtype: bool """ return self._tag == 'legal_holds_report_a_hold' def is_device_change_ip_desktop(self): """ Check if the union tag is ``device_change_ip_desktop``. :rtype: bool """ return self._tag == 'device_change_ip_desktop' def is_device_change_ip_mobile(self): """ Check if the union tag is ``device_change_ip_mobile``. :rtype: bool """ return self._tag == 'device_change_ip_mobile' def is_device_change_ip_web(self): """ Check if the union tag is ``device_change_ip_web``. :rtype: bool """ return self._tag == 'device_change_ip_web' def is_device_delete_on_unlink_fail(self): """ Check if the union tag is ``device_delete_on_unlink_fail``. :rtype: bool """ return self._tag == 'device_delete_on_unlink_fail' def is_device_delete_on_unlink_success(self): """ Check if the union tag is ``device_delete_on_unlink_success``. :rtype: bool """ return self._tag == 'device_delete_on_unlink_success' def is_device_link_fail(self): """ Check if the union tag is ``device_link_fail``. :rtype: bool """ return self._tag == 'device_link_fail' def is_device_link_success(self): """ Check if the union tag is ``device_link_success``. :rtype: bool """ return self._tag == 'device_link_success' def is_device_management_disabled(self): """ Check if the union tag is ``device_management_disabled``. :rtype: bool """ return self._tag == 'device_management_disabled' def is_device_management_enabled(self): """ Check if the union tag is ``device_management_enabled``. :rtype: bool """ return self._tag == 'device_management_enabled' def is_device_sync_backup_status_changed(self): """ Check if the union tag is ``device_sync_backup_status_changed``. :rtype: bool """ return self._tag == 'device_sync_backup_status_changed' def is_device_unlink(self): """ Check if the union tag is ``device_unlink``. :rtype: bool """ return self._tag == 'device_unlink' def is_dropbox_passwords_exported(self): """ Check if the union tag is ``dropbox_passwords_exported``. :rtype: bool """ return self._tag == 'dropbox_passwords_exported' def is_dropbox_passwords_new_device_enrolled(self): """ Check if the union tag is ``dropbox_passwords_new_device_enrolled``. :rtype: bool """ return self._tag == 'dropbox_passwords_new_device_enrolled' def is_emm_refresh_auth_token(self): """ Check if the union tag is ``emm_refresh_auth_token``. :rtype: bool """ return self._tag == 'emm_refresh_auth_token' def is_external_drive_backup_eligibility_status_checked(self): """ Check if the union tag is ``external_drive_backup_eligibility_status_checked``. :rtype: bool """ return self._tag == 'external_drive_backup_eligibility_status_checked' def is_external_drive_backup_status_changed(self): """ Check if the union tag is ``external_drive_backup_status_changed``. :rtype: bool """ return self._tag == 'external_drive_backup_status_changed' def is_account_capture_change_availability(self): """ Check if the union tag is ``account_capture_change_availability``. :rtype: bool """ return self._tag == 'account_capture_change_availability' def is_account_capture_migrate_account(self): """ Check if the union tag is ``account_capture_migrate_account``. :rtype: bool """ return self._tag == 'account_capture_migrate_account' def is_account_capture_notification_emails_sent(self): """ Check if the union tag is ``account_capture_notification_emails_sent``. :rtype: bool """ return self._tag == 'account_capture_notification_emails_sent' def is_account_capture_relinquish_account(self): """ Check if the union tag is ``account_capture_relinquish_account``. :rtype: bool """ return self._tag == 'account_capture_relinquish_account' def is_disabled_domain_invites(self): """ Check if the union tag is ``disabled_domain_invites``. :rtype: bool """ return self._tag == 'disabled_domain_invites' def is_domain_invites_approve_request_to_join_team(self): """ Check if the union tag is ``domain_invites_approve_request_to_join_team``. :rtype: bool """ return self._tag == 'domain_invites_approve_request_to_join_team' def is_domain_invites_decline_request_to_join_team(self): """ Check if the union tag is ``domain_invites_decline_request_to_join_team``. :rtype: bool """ return self._tag == 'domain_invites_decline_request_to_join_team' def is_domain_invites_email_existing_users(self): """ Check if the union tag is ``domain_invites_email_existing_users``. :rtype: bool """ return self._tag == 'domain_invites_email_existing_users' def is_domain_invites_request_to_join_team(self): """ Check if the union tag is ``domain_invites_request_to_join_team``. :rtype: bool """ return self._tag == 'domain_invites_request_to_join_team' def is_domain_invites_set_invite_new_user_pref_to_no(self): """ Check if the union tag is ``domain_invites_set_invite_new_user_pref_to_no``. :rtype: bool """ return self._tag == 'domain_invites_set_invite_new_user_pref_to_no' def is_domain_invites_set_invite_new_user_pref_to_yes(self): """ Check if the union tag is ``domain_invites_set_invite_new_user_pref_to_yes``. :rtype: bool """ return self._tag == 'domain_invites_set_invite_new_user_pref_to_yes' def is_domain_verification_add_domain_fail(self): """ Check if the union tag is ``domain_verification_add_domain_fail``. :rtype: bool """ return self._tag == 'domain_verification_add_domain_fail' def is_domain_verification_add_domain_success(self): """ Check if the union tag is ``domain_verification_add_domain_success``. :rtype: bool """ return self._tag == 'domain_verification_add_domain_success' def is_domain_verification_remove_domain(self): """ Check if the union tag is ``domain_verification_remove_domain``. :rtype: bool """ return self._tag == 'domain_verification_remove_domain' def is_enabled_domain_invites(self): """ Check if the union tag is ``enabled_domain_invites``. :rtype: bool """ return self._tag == 'enabled_domain_invites' def is_team_encryption_key_cancel_key_deletion(self): """ Check if the union tag is ``team_encryption_key_cancel_key_deletion``. :rtype: bool """ return self._tag == 'team_encryption_key_cancel_key_deletion' def is_team_encryption_key_create_key(self): """ Check if the union tag is ``team_encryption_key_create_key``. :rtype: bool """ return self._tag == 'team_encryption_key_create_key' def is_team_encryption_key_delete_key(self): """ Check if the union tag is ``team_encryption_key_delete_key``. :rtype: bool """ return self._tag == 'team_encryption_key_delete_key' def is_team_encryption_key_disable_key(self): """ Check if the union tag is ``team_encryption_key_disable_key``. :rtype: bool """ return self._tag == 'team_encryption_key_disable_key' def is_team_encryption_key_enable_key(self): """ Check if the union tag is ``team_encryption_key_enable_key``. :rtype: bool """ return self._tag == 'team_encryption_key_enable_key' def is_team_encryption_key_rotate_key(self): """ Check if the union tag is ``team_encryption_key_rotate_key``. :rtype: bool """ return self._tag == 'team_encryption_key_rotate_key' def is_team_encryption_key_schedule_key_deletion(self): """ Check if the union tag is ``team_encryption_key_schedule_key_deletion``. :rtype: bool """ return self._tag == 'team_encryption_key_schedule_key_deletion' def is_apply_naming_convention(self): """ Check if the union tag is ``apply_naming_convention``. :rtype: bool """ return self._tag == 'apply_naming_convention' def is_create_folder(self): """ Check if the union tag is ``create_folder``. :rtype: bool """ return self._tag == 'create_folder' def is_file_add(self): """ Check if the union tag is ``file_add``. :rtype: bool """ return self._tag == 'file_add' def is_file_add_from_automation(self): """ Check if the union tag is ``file_add_from_automation``. :rtype: bool """ return self._tag == 'file_add_from_automation' def is_file_copy(self): """ Check if the union tag is ``file_copy``. :rtype: bool """ return self._tag == 'file_copy' def is_file_delete(self): """ Check if the union tag is ``file_delete``. :rtype: bool """ return self._tag == 'file_delete' def is_file_download(self): """ Check if the union tag is ``file_download``. :rtype: bool """ return self._tag == 'file_download' def is_file_edit(self): """ Check if the union tag is ``file_edit``. :rtype: bool """ return self._tag == 'file_edit' def is_file_get_copy_reference(self): """ Check if the union tag is ``file_get_copy_reference``. :rtype: bool """ return self._tag == 'file_get_copy_reference' def is_file_locking_lock_status_changed(self): """ Check if the union tag is ``file_locking_lock_status_changed``. :rtype: bool """ return self._tag == 'file_locking_lock_status_changed' def is_file_move(self): """ Check if the union tag is ``file_move``. :rtype: bool """ return self._tag == 'file_move' def is_file_permanently_delete(self): """ Check if the union tag is ``file_permanently_delete``. :rtype: bool """ return self._tag == 'file_permanently_delete' def is_file_preview(self): """ Check if the union tag is ``file_preview``. :rtype: bool """ return self._tag == 'file_preview' def is_file_rename(self): """ Check if the union tag is ``file_rename``. :rtype: bool """ return self._tag == 'file_rename' def is_file_restore(self): """ Check if the union tag is ``file_restore``. :rtype: bool """ return self._tag == 'file_restore' def is_file_revert(self): """ Check if the union tag is ``file_revert``. :rtype: bool """ return self._tag == 'file_revert' def is_file_rollback_changes(self): """ Check if the union tag is ``file_rollback_changes``. :rtype: bool """ return self._tag == 'file_rollback_changes' def is_file_save_copy_reference(self): """ Check if the union tag is ``file_save_copy_reference``. :rtype: bool """ return self._tag == 'file_save_copy_reference' def is_folder_overview_description_changed(self): """ Check if the union tag is ``folder_overview_description_changed``. :rtype: bool """ return self._tag == 'folder_overview_description_changed' def is_folder_overview_item_pinned(self): """ Check if the union tag is ``folder_overview_item_pinned``. :rtype: bool """ return self._tag == 'folder_overview_item_pinned' def is_folder_overview_item_unpinned(self): """ Check if the union tag is ``folder_overview_item_unpinned``. :rtype: bool """ return self._tag == 'folder_overview_item_unpinned' def is_object_label_added(self): """ Check if the union tag is ``object_label_added``. :rtype: bool """ return self._tag == 'object_label_added' def is_object_label_removed(self): """ Check if the union tag is ``object_label_removed``. :rtype: bool """ return self._tag == 'object_label_removed' def is_object_label_updated_value(self): """ Check if the union tag is ``object_label_updated_value``. :rtype: bool """ return self._tag == 'object_label_updated_value' def is_organize_folder_with_tidy(self): """ Check if the union tag is ``organize_folder_with_tidy``. :rtype: bool """ return self._tag == 'organize_folder_with_tidy' def is_replay_file_delete(self): """ Check if the union tag is ``replay_file_delete``. :rtype: bool """ return self._tag == 'replay_file_delete' def is_rewind_folder(self): """ Check if the union tag is ``rewind_folder``. :rtype: bool """ return self._tag == 'rewind_folder' def is_undo_naming_convention(self): """ Check if the union tag is ``undo_naming_convention``. :rtype: bool """ return self._tag == 'undo_naming_convention' def is_undo_organize_folder_with_tidy(self): """ Check if the union tag is ``undo_organize_folder_with_tidy``. :rtype: bool """ return self._tag == 'undo_organize_folder_with_tidy' def is_user_tags_added(self): """ Check if the union tag is ``user_tags_added``. :rtype: bool """ return self._tag == 'user_tags_added' def is_user_tags_removed(self): """ Check if the union tag is ``user_tags_removed``. :rtype: bool """ return self._tag == 'user_tags_removed' def is_email_ingest_receive_file(self): """ Check if the union tag is ``email_ingest_receive_file``. :rtype: bool """ return self._tag == 'email_ingest_receive_file' def is_file_request_change(self): """ Check if the union tag is ``file_request_change``. :rtype: bool """ return self._tag == 'file_request_change' def is_file_request_close(self): """ Check if the union tag is ``file_request_close``. :rtype: bool """ return self._tag == 'file_request_close' def is_file_request_create(self): """ Check if the union tag is ``file_request_create``. :rtype: bool """ return self._tag == 'file_request_create' def is_file_request_delete(self): """ Check if the union tag is ``file_request_delete``. :rtype: bool """ return self._tag == 'file_request_delete' def is_file_request_receive_file(self): """ Check if the union tag is ``file_request_receive_file``. :rtype: bool """ return self._tag == 'file_request_receive_file' def is_group_add_external_id(self): """ Check if the union tag is ``group_add_external_id``. :rtype: bool """ return self._tag == 'group_add_external_id' def is_group_add_member(self): """ Check if the union tag is ``group_add_member``. :rtype: bool """ return self._tag == 'group_add_member' def is_group_change_external_id(self): """ Check if the union tag is ``group_change_external_id``. :rtype: bool """ return self._tag == 'group_change_external_id' def is_group_change_management_type(self): """ Check if the union tag is ``group_change_management_type``. :rtype: bool """ return self._tag == 'group_change_management_type' def is_group_change_member_role(self): """ Check if the union tag is ``group_change_member_role``. :rtype: bool """ return self._tag == 'group_change_member_role' def is_group_create(self): """ Check if the union tag is ``group_create``. :rtype: bool """ return self._tag == 'group_create' def is_group_delete(self): """ Check if the union tag is ``group_delete``. :rtype: bool """ return self._tag == 'group_delete' def is_group_description_updated(self): """ Check if the union tag is ``group_description_updated``. :rtype: bool """ return self._tag == 'group_description_updated' def is_group_join_policy_updated(self): """ Check if the union tag is ``group_join_policy_updated``. :rtype: bool """ return self._tag == 'group_join_policy_updated' def is_group_moved(self): """ Check if the union tag is ``group_moved``. :rtype: bool """ return self._tag == 'group_moved' def is_group_remove_external_id(self): """ Check if the union tag is ``group_remove_external_id``. :rtype: bool """ return self._tag == 'group_remove_external_id' def is_group_remove_member(self): """ Check if the union tag is ``group_remove_member``. :rtype: bool """ return self._tag == 'group_remove_member' def is_group_rename(self): """ Check if the union tag is ``group_rename``. :rtype: bool """ return self._tag == 'group_rename' def is_account_lock_or_unlocked(self): """ Check if the union tag is ``account_lock_or_unlocked``. :rtype: bool """ return self._tag == 'account_lock_or_unlocked' def is_emm_error(self): """ Check if the union tag is ``emm_error``. :rtype: bool """ return self._tag == 'emm_error' def is_guest_admin_signed_in_via_trusted_teams(self): """ Check if the union tag is ``guest_admin_signed_in_via_trusted_teams``. :rtype: bool """ return self._tag == 'guest_admin_signed_in_via_trusted_teams' def is_guest_admin_signed_out_via_trusted_teams(self): """ Check if the union tag is ``guest_admin_signed_out_via_trusted_teams``. :rtype: bool """ return self._tag == 'guest_admin_signed_out_via_trusted_teams' def is_login_fail(self): """ Check if the union tag is ``login_fail``. :rtype: bool """ return self._tag == 'login_fail' def is_login_success(self): """ Check if the union tag is ``login_success``. :rtype: bool """ return self._tag == 'login_success' def is_logout(self): """ Check if the union tag is ``logout``. :rtype: bool """ return self._tag == 'logout' def is_reseller_support_session_end(self): """ Check if the union tag is ``reseller_support_session_end``. :rtype: bool """ return self._tag == 'reseller_support_session_end' def is_reseller_support_session_start(self): """ Check if the union tag is ``reseller_support_session_start``. :rtype: bool """ return self._tag == 'reseller_support_session_start' def is_sign_in_as_session_end(self): """ Check if the union tag is ``sign_in_as_session_end``. :rtype: bool """ return self._tag == 'sign_in_as_session_end' def is_sign_in_as_session_start(self): """ Check if the union tag is ``sign_in_as_session_start``. :rtype: bool """ return self._tag == 'sign_in_as_session_start' def is_sso_error(self): """ Check if the union tag is ``sso_error``. :rtype: bool """ return self._tag == 'sso_error' def is_backup_admin_invitation_sent(self): """ Check if the union tag is ``backup_admin_invitation_sent``. :rtype: bool """ return self._tag == 'backup_admin_invitation_sent' def is_backup_invitation_opened(self): """ Check if the union tag is ``backup_invitation_opened``. :rtype: bool """ return self._tag == 'backup_invitation_opened' def is_create_team_invite_link(self): """ Check if the union tag is ``create_team_invite_link``. :rtype: bool """ return self._tag == 'create_team_invite_link' def is_delete_team_invite_link(self): """ Check if the union tag is ``delete_team_invite_link``. :rtype: bool """ return self._tag == 'delete_team_invite_link' def is_member_add_external_id(self): """ Check if the union tag is ``member_add_external_id``. :rtype: bool """ return self._tag == 'member_add_external_id' def is_member_add_name(self): """ Check if the union tag is ``member_add_name``. :rtype: bool """ return self._tag == 'member_add_name' def is_member_change_admin_role(self): """ Check if the union tag is ``member_change_admin_role``. :rtype: bool """ return self._tag == 'member_change_admin_role' def is_member_change_email(self): """ Check if the union tag is ``member_change_email``. :rtype: bool """ return self._tag == 'member_change_email' def is_member_change_external_id(self): """ Check if the union tag is ``member_change_external_id``. :rtype: bool """ return self._tag == 'member_change_external_id' def is_member_change_membership_type(self): """ Check if the union tag is ``member_change_membership_type``. :rtype: bool """ return self._tag == 'member_change_membership_type' def is_member_change_name(self): """ Check if the union tag is ``member_change_name``. :rtype: bool """ return self._tag == 'member_change_name' def is_member_change_reseller_role(self): """ Check if the union tag is ``member_change_reseller_role``. :rtype: bool """ return self._tag == 'member_change_reseller_role' def is_member_change_status(self): """ Check if the union tag is ``member_change_status``. :rtype: bool """ return self._tag == 'member_change_status' def is_member_delete_manual_contacts(self): """ Check if the union tag is ``member_delete_manual_contacts``. :rtype: bool """ return self._tag == 'member_delete_manual_contacts' def is_member_delete_profile_photo(self): """ Check if the union tag is ``member_delete_profile_photo``. :rtype: bool """ return self._tag == 'member_delete_profile_photo' def is_member_permanently_delete_account_contents(self): """ Check if the union tag is ``member_permanently_delete_account_contents``. :rtype: bool """ return self._tag == 'member_permanently_delete_account_contents' def is_member_remove_external_id(self): """ Check if the union tag is ``member_remove_external_id``. :rtype: bool """ return self._tag == 'member_remove_external_id' def is_member_set_profile_photo(self): """ Check if the union tag is ``member_set_profile_photo``. :rtype: bool """ return self._tag == 'member_set_profile_photo' def is_member_space_limits_add_custom_quota(self): """ Check if the union tag is ``member_space_limits_add_custom_quota``. :rtype: bool """ return self._tag == 'member_space_limits_add_custom_quota' def is_member_space_limits_change_custom_quota(self): """ Check if the union tag is ``member_space_limits_change_custom_quota``. :rtype: bool """ return self._tag == 'member_space_limits_change_custom_quota' def is_member_space_limits_change_status(self): """ Check if the union tag is ``member_space_limits_change_status``. :rtype: bool """ return self._tag == 'member_space_limits_change_status' def is_member_space_limits_remove_custom_quota(self): """ Check if the union tag is ``member_space_limits_remove_custom_quota``. :rtype: bool """ return self._tag == 'member_space_limits_remove_custom_quota' def is_member_suggest(self): """ Check if the union tag is ``member_suggest``. :rtype: bool """ return self._tag == 'member_suggest' def is_member_transfer_account_contents(self): """ Check if the union tag is ``member_transfer_account_contents``. :rtype: bool """ return self._tag == 'member_transfer_account_contents' def is_pending_secondary_email_added(self): """ Check if the union tag is ``pending_secondary_email_added``. :rtype: bool """ return self._tag == 'pending_secondary_email_added' def is_secondary_email_deleted(self): """ Check if the union tag is ``secondary_email_deleted``. :rtype: bool """ return self._tag == 'secondary_email_deleted' def is_secondary_email_verified(self): """ Check if the union tag is ``secondary_email_verified``. :rtype: bool """ return self._tag == 'secondary_email_verified' def is_secondary_mails_policy_changed(self): """ Check if the union tag is ``secondary_mails_policy_changed``. :rtype: bool """ return self._tag == 'secondary_mails_policy_changed' def is_binder_add_page(self): """ Check if the union tag is ``binder_add_page``. :rtype: bool """ return self._tag == 'binder_add_page' def is_binder_add_section(self): """ Check if the union tag is ``binder_add_section``. :rtype: bool """ return self._tag == 'binder_add_section' def is_binder_remove_page(self): """ Check if the union tag is ``binder_remove_page``. :rtype: bool """ return self._tag == 'binder_remove_page' def is_binder_remove_section(self): """ Check if the union tag is ``binder_remove_section``. :rtype: bool """ return self._tag == 'binder_remove_section' def is_binder_rename_page(self): """ Check if the union tag is ``binder_rename_page``. :rtype: bool """ return self._tag == 'binder_rename_page' def is_binder_rename_section(self): """ Check if the union tag is ``binder_rename_section``. :rtype: bool """ return self._tag == 'binder_rename_section' def is_binder_reorder_page(self): """ Check if the union tag is ``binder_reorder_page``. :rtype: bool """ return self._tag == 'binder_reorder_page' def is_binder_reorder_section(self): """ Check if the union tag is ``binder_reorder_section``. :rtype: bool """ return self._tag == 'binder_reorder_section' def is_paper_content_add_member(self): """ Check if the union tag is ``paper_content_add_member``. :rtype: bool """ return self._tag == 'paper_content_add_member' def is_paper_content_add_to_folder(self): """ Check if the union tag is ``paper_content_add_to_folder``. :rtype: bool """ return self._tag == 'paper_content_add_to_folder' def is_paper_content_archive(self): """ Check if the union tag is ``paper_content_archive``. :rtype: bool """ return self._tag == 'paper_content_archive' def is_paper_content_create(self): """ Check if the union tag is ``paper_content_create``. :rtype: bool """ return self._tag == 'paper_content_create' def is_paper_content_permanently_delete(self): """ Check if the union tag is ``paper_content_permanently_delete``. :rtype: bool """ return self._tag == 'paper_content_permanently_delete' def is_paper_content_remove_from_folder(self): """ Check if the union tag is ``paper_content_remove_from_folder``. :rtype: bool """ return self._tag == 'paper_content_remove_from_folder' def is_paper_content_remove_member(self): """ Check if the union tag is ``paper_content_remove_member``. :rtype: bool """ return self._tag == 'paper_content_remove_member' def is_paper_content_rename(self): """ Check if the union tag is ``paper_content_rename``. :rtype: bool """ return self._tag == 'paper_content_rename' def is_paper_content_restore(self): """ Check if the union tag is ``paper_content_restore``. :rtype: bool """ return self._tag == 'paper_content_restore' def is_paper_doc_add_comment(self): """ Check if the union tag is ``paper_doc_add_comment``. :rtype: bool """ return self._tag == 'paper_doc_add_comment' def is_paper_doc_change_member_role(self): """ Check if the union tag is ``paper_doc_change_member_role``. :rtype: bool """ return self._tag == 'paper_doc_change_member_role' def is_paper_doc_change_sharing_policy(self): """ Check if the union tag is ``paper_doc_change_sharing_policy``. :rtype: bool """ return self._tag == 'paper_doc_change_sharing_policy' def is_paper_doc_change_subscription(self): """ Check if the union tag is ``paper_doc_change_subscription``. :rtype: bool """ return self._tag == 'paper_doc_change_subscription' def is_paper_doc_deleted(self): """ Check if the union tag is ``paper_doc_deleted``. :rtype: bool """ return self._tag == 'paper_doc_deleted' def is_paper_doc_delete_comment(self): """ Check if the union tag is ``paper_doc_delete_comment``. :rtype: bool """ return self._tag == 'paper_doc_delete_comment' def is_paper_doc_download(self): """ Check if the union tag is ``paper_doc_download``. :rtype: bool """ return self._tag == 'paper_doc_download' def is_paper_doc_edit(self): """ Check if the union tag is ``paper_doc_edit``. :rtype: bool """ return self._tag == 'paper_doc_edit' def is_paper_doc_edit_comment(self): """ Check if the union tag is ``paper_doc_edit_comment``. :rtype: bool """ return self._tag == 'paper_doc_edit_comment' def is_paper_doc_followed(self): """ Check if the union tag is ``paper_doc_followed``. :rtype: bool """ return self._tag == 'paper_doc_followed' def is_paper_doc_mention(self): """ Check if the union tag is ``paper_doc_mention``. :rtype: bool """ return self._tag == 'paper_doc_mention' def is_paper_doc_ownership_changed(self): """ Check if the union tag is ``paper_doc_ownership_changed``. :rtype: bool """ return self._tag == 'paper_doc_ownership_changed' def is_paper_doc_request_access(self): """ Check if the union tag is ``paper_doc_request_access``. :rtype: bool """ return self._tag == 'paper_doc_request_access' def is_paper_doc_resolve_comment(self): """ Check if the union tag is ``paper_doc_resolve_comment``. :rtype: bool """ return self._tag == 'paper_doc_resolve_comment' def is_paper_doc_revert(self): """ Check if the union tag is ``paper_doc_revert``. :rtype: bool """ return self._tag == 'paper_doc_revert' def is_paper_doc_slack_share(self): """ Check if the union tag is ``paper_doc_slack_share``. :rtype: bool """ return self._tag == 'paper_doc_slack_share' def is_paper_doc_team_invite(self): """ Check if the union tag is ``paper_doc_team_invite``. :rtype: bool """ return self._tag == 'paper_doc_team_invite' def is_paper_doc_trashed(self): """ Check if the union tag is ``paper_doc_trashed``. :rtype: bool """ return self._tag == 'paper_doc_trashed' def is_paper_doc_unresolve_comment(self): """ Check if the union tag is ``paper_doc_unresolve_comment``. :rtype: bool """ return self._tag == 'paper_doc_unresolve_comment' def is_paper_doc_untrashed(self): """ Check if the union tag is ``paper_doc_untrashed``. :rtype: bool """ return self._tag == 'paper_doc_untrashed' def is_paper_doc_view(self): """ Check if the union tag is ``paper_doc_view``. :rtype: bool """ return self._tag == 'paper_doc_view' def is_paper_external_view_allow(self): """ Check if the union tag is ``paper_external_view_allow``. :rtype: bool """ return self._tag == 'paper_external_view_allow' def is_paper_external_view_default_team(self): """ Check if the union tag is ``paper_external_view_default_team``. :rtype: bool """ return self._tag == 'paper_external_view_default_team' def is_paper_external_view_forbid(self): """ Check if the union tag is ``paper_external_view_forbid``. :rtype: bool """ return self._tag == 'paper_external_view_forbid' def is_paper_folder_change_subscription(self): """ Check if the union tag is ``paper_folder_change_subscription``. :rtype: bool """ return self._tag == 'paper_folder_change_subscription' def is_paper_folder_deleted(self): """ Check if the union tag is ``paper_folder_deleted``. :rtype: bool """ return self._tag == 'paper_folder_deleted' def is_paper_folder_followed(self): """ Check if the union tag is ``paper_folder_followed``. :rtype: bool """ return self._tag == 'paper_folder_followed' def is_paper_folder_team_invite(self): """ Check if the union tag is ``paper_folder_team_invite``. :rtype: bool """ return self._tag == 'paper_folder_team_invite' def is_paper_published_link_change_permission(self): """ Check if the union tag is ``paper_published_link_change_permission``. :rtype: bool """ return self._tag == 'paper_published_link_change_permission' def is_paper_published_link_create(self): """ Check if the union tag is ``paper_published_link_create``. :rtype: bool """ return self._tag == 'paper_published_link_create' def is_paper_published_link_disabled(self): """ Check if the union tag is ``paper_published_link_disabled``. :rtype: bool """ return self._tag == 'paper_published_link_disabled' def is_paper_published_link_view(self): """ Check if the union tag is ``paper_published_link_view``. :rtype: bool """ return self._tag == 'paper_published_link_view' def is_password_change(self): """ Check if the union tag is ``password_change``. :rtype: bool """ return self._tag == 'password_change' def is_password_reset(self): """ Check if the union tag is ``password_reset``. :rtype: bool """ return self._tag == 'password_reset' def is_password_reset_all(self): """ Check if the union tag is ``password_reset_all``. :rtype: bool """ return self._tag == 'password_reset_all' def is_classification_create_report(self): """ Check if the union tag is ``classification_create_report``. :rtype: bool """ return self._tag == 'classification_create_report' def is_classification_create_report_fail(self): """ Check if the union tag is ``classification_create_report_fail``. :rtype: bool """ return self._tag == 'classification_create_report_fail' def is_emm_create_exceptions_report(self): """ Check if the union tag is ``emm_create_exceptions_report``. :rtype: bool """ return self._tag == 'emm_create_exceptions_report' def is_emm_create_usage_report(self): """ Check if the union tag is ``emm_create_usage_report``. :rtype: bool """ return self._tag == 'emm_create_usage_report' def is_export_members_report(self): """ Check if the union tag is ``export_members_report``. :rtype: bool """ return self._tag == 'export_members_report' def is_export_members_report_fail(self): """ Check if the union tag is ``export_members_report_fail``. :rtype: bool """ return self._tag == 'export_members_report_fail' def is_external_sharing_create_report(self): """ Check if the union tag is ``external_sharing_create_report``. :rtype: bool """ return self._tag == 'external_sharing_create_report' def is_external_sharing_report_failed(self): """ Check if the union tag is ``external_sharing_report_failed``. :rtype: bool """ return self._tag == 'external_sharing_report_failed' def is_no_expiration_link_gen_create_report(self): """ Check if the union tag is ``no_expiration_link_gen_create_report``. :rtype: bool """ return self._tag == 'no_expiration_link_gen_create_report' def is_no_expiration_link_gen_report_failed(self): """ Check if the union tag is ``no_expiration_link_gen_report_failed``. :rtype: bool """ return self._tag == 'no_expiration_link_gen_report_failed' def is_no_password_link_gen_create_report(self): """ Check if the union tag is ``no_password_link_gen_create_report``. :rtype: bool """ return self._tag == 'no_password_link_gen_create_report' def is_no_password_link_gen_report_failed(self): """ Check if the union tag is ``no_password_link_gen_report_failed``. :rtype: bool """ return self._tag == 'no_password_link_gen_report_failed' def is_no_password_link_view_create_report(self): """ Check if the union tag is ``no_password_link_view_create_report``. :rtype: bool """ return self._tag == 'no_password_link_view_create_report' def is_no_password_link_view_report_failed(self): """ Check if the union tag is ``no_password_link_view_report_failed``. :rtype: bool """ return self._tag == 'no_password_link_view_report_failed' def is_outdated_link_view_create_report(self): """ Check if the union tag is ``outdated_link_view_create_report``. :rtype: bool """ return self._tag == 'outdated_link_view_create_report' def is_outdated_link_view_report_failed(self): """ Check if the union tag is ``outdated_link_view_report_failed``. :rtype: bool """ return self._tag == 'outdated_link_view_report_failed' def is_paper_admin_export_start(self): """ Check if the union tag is ``paper_admin_export_start``. :rtype: bool """ return self._tag == 'paper_admin_export_start' def is_ransomware_alert_create_report(self): """ Check if the union tag is ``ransomware_alert_create_report``. :rtype: bool """ return self._tag == 'ransomware_alert_create_report' def is_ransomware_alert_create_report_failed(self): """ Check if the union tag is ``ransomware_alert_create_report_failed``. :rtype: bool """ return self._tag == 'ransomware_alert_create_report_failed' def is_smart_sync_create_admin_privilege_report(self): """ Check if the union tag is ``smart_sync_create_admin_privilege_report``. :rtype: bool """ return self._tag == 'smart_sync_create_admin_privilege_report' def is_team_activity_create_report(self): """ Check if the union tag is ``team_activity_create_report``. :rtype: bool """ return self._tag == 'team_activity_create_report' def is_team_activity_create_report_fail(self): """ Check if the union tag is ``team_activity_create_report_fail``. :rtype: bool """ return self._tag == 'team_activity_create_report_fail' def is_collection_share(self): """ Check if the union tag is ``collection_share``. :rtype: bool """ return self._tag == 'collection_share' def is_file_transfers_file_add(self): """ Check if the union tag is ``file_transfers_file_add``. :rtype: bool """ return self._tag == 'file_transfers_file_add' def is_file_transfers_transfer_delete(self): """ Check if the union tag is ``file_transfers_transfer_delete``. :rtype: bool """ return self._tag == 'file_transfers_transfer_delete' def is_file_transfers_transfer_download(self): """ Check if the union tag is ``file_transfers_transfer_download``. :rtype: bool """ return self._tag == 'file_transfers_transfer_download' def is_file_transfers_transfer_send(self): """ Check if the union tag is ``file_transfers_transfer_send``. :rtype: bool """ return self._tag == 'file_transfers_transfer_send' def is_file_transfers_transfer_view(self): """ Check if the union tag is ``file_transfers_transfer_view``. :rtype: bool """ return self._tag == 'file_transfers_transfer_view' def is_note_acl_invite_only(self): """ Check if the union tag is ``note_acl_invite_only``. :rtype: bool """ return self._tag == 'note_acl_invite_only' def is_note_acl_link(self): """ Check if the union tag is ``note_acl_link``. :rtype: bool """ return self._tag == 'note_acl_link' def is_note_acl_team_link(self): """ Check if the union tag is ``note_acl_team_link``. :rtype: bool """ return self._tag == 'note_acl_team_link' def is_note_shared(self): """ Check if the union tag is ``note_shared``. :rtype: bool """ return self._tag == 'note_shared' def is_note_share_receive(self): """ Check if the union tag is ``note_share_receive``. :rtype: bool """ return self._tag == 'note_share_receive' def is_open_note_shared(self): """ Check if the union tag is ``open_note_shared``. :rtype: bool """ return self._tag == 'open_note_shared' def is_replay_file_shared_link_created(self): """ Check if the union tag is ``replay_file_shared_link_created``. :rtype: bool """ return self._tag == 'replay_file_shared_link_created' def is_replay_file_shared_link_modified(self): """ Check if the union tag is ``replay_file_shared_link_modified``. :rtype: bool """ return self._tag == 'replay_file_shared_link_modified' def is_replay_project_team_add(self): """ Check if the union tag is ``replay_project_team_add``. :rtype: bool """ return self._tag == 'replay_project_team_add' def is_replay_project_team_delete(self): """ Check if the union tag is ``replay_project_team_delete``. :rtype: bool """ return self._tag == 'replay_project_team_delete' def is_sf_add_group(self): """ Check if the union tag is ``sf_add_group``. :rtype: bool """ return self._tag == 'sf_add_group' def is_sf_allow_non_members_to_view_shared_links(self): """ Check if the union tag is ``sf_allow_non_members_to_view_shared_links``. :rtype: bool """ return self._tag == 'sf_allow_non_members_to_view_shared_links' def is_sf_external_invite_warn(self): """ Check if the union tag is ``sf_external_invite_warn``. :rtype: bool """ return self._tag == 'sf_external_invite_warn' def is_sf_fb_invite(self): """ Check if the union tag is ``sf_fb_invite``. :rtype: bool """ return self._tag == 'sf_fb_invite' def is_sf_fb_invite_change_role(self): """ Check if the union tag is ``sf_fb_invite_change_role``. :rtype: bool """ return self._tag == 'sf_fb_invite_change_role' def is_sf_fb_uninvite(self): """ Check if the union tag is ``sf_fb_uninvite``. :rtype: bool """ return self._tag == 'sf_fb_uninvite' def is_sf_invite_group(self): """ Check if the union tag is ``sf_invite_group``. :rtype: bool """ return self._tag == 'sf_invite_group' def is_sf_team_grant_access(self): """ Check if the union tag is ``sf_team_grant_access``. :rtype: bool """ return self._tag == 'sf_team_grant_access' def is_sf_team_invite(self): """ Check if the union tag is ``sf_team_invite``. :rtype: bool """ return self._tag == 'sf_team_invite' def is_sf_team_invite_change_role(self): """ Check if the union tag is ``sf_team_invite_change_role``. :rtype: bool """ return self._tag == 'sf_team_invite_change_role' def is_sf_team_join(self): """ Check if the union tag is ``sf_team_join``. :rtype: bool """ return self._tag == 'sf_team_join' def is_sf_team_join_from_oob_link(self): """ Check if the union tag is ``sf_team_join_from_oob_link``. :rtype: bool """ return self._tag == 'sf_team_join_from_oob_link' def is_sf_team_uninvite(self): """ Check if the union tag is ``sf_team_uninvite``. :rtype: bool """ return self._tag == 'sf_team_uninvite' def is_shared_content_add_invitees(self): """ Check if the union tag is ``shared_content_add_invitees``. :rtype: bool """ return self._tag == 'shared_content_add_invitees' def is_shared_content_add_link_expiry(self): """ Check if the union tag is ``shared_content_add_link_expiry``. :rtype: bool """ return self._tag == 'shared_content_add_link_expiry' def is_shared_content_add_link_password(self): """ Check if the union tag is ``shared_content_add_link_password``. :rtype: bool """ return self._tag == 'shared_content_add_link_password' def is_shared_content_add_member(self): """ Check if the union tag is ``shared_content_add_member``. :rtype: bool """ return self._tag == 'shared_content_add_member' def is_shared_content_change_downloads_policy(self): """ Check if the union tag is ``shared_content_change_downloads_policy``. :rtype: bool """ return self._tag == 'shared_content_change_downloads_policy' def is_shared_content_change_invitee_role(self): """ Check if the union tag is ``shared_content_change_invitee_role``. :rtype: bool """ return self._tag == 'shared_content_change_invitee_role' def is_shared_content_change_link_audience(self): """ Check if the union tag is ``shared_content_change_link_audience``. :rtype: bool """ return self._tag == 'shared_content_change_link_audience' def is_shared_content_change_link_expiry(self): """ Check if the union tag is ``shared_content_change_link_expiry``. :rtype: bool """ return self._tag == 'shared_content_change_link_expiry' def is_shared_content_change_link_password(self): """ Check if the union tag is ``shared_content_change_link_password``. :rtype: bool """ return self._tag == 'shared_content_change_link_password' def is_shared_content_change_member_role(self): """ Check if the union tag is ``shared_content_change_member_role``. :rtype: bool """ return self._tag == 'shared_content_change_member_role' def is_shared_content_change_viewer_info_policy(self): """ Check if the union tag is ``shared_content_change_viewer_info_policy``. :rtype: bool """ return self._tag == 'shared_content_change_viewer_info_policy' def is_shared_content_claim_invitation(self): """ Check if the union tag is ``shared_content_claim_invitation``. :rtype: bool """ return self._tag == 'shared_content_claim_invitation' def is_shared_content_copy(self): """ Check if the union tag is ``shared_content_copy``. :rtype: bool """ return self._tag == 'shared_content_copy' def is_shared_content_download(self): """ Check if the union tag is ``shared_content_download``. :rtype: bool """ return self._tag == 'shared_content_download' def is_shared_content_relinquish_membership(self): """ Check if the union tag is ``shared_content_relinquish_membership``. :rtype: bool """ return self._tag == 'shared_content_relinquish_membership' def is_shared_content_remove_invitees(self): """ Check if the union tag is ``shared_content_remove_invitees``. :rtype: bool """ return self._tag == 'shared_content_remove_invitees' def is_shared_content_remove_link_expiry(self): """ Check if the union tag is ``shared_content_remove_link_expiry``. :rtype: bool """ return self._tag == 'shared_content_remove_link_expiry' def is_shared_content_remove_link_password(self): """ Check if the union tag is ``shared_content_remove_link_password``. :rtype: bool """ return self._tag == 'shared_content_remove_link_password' def is_shared_content_remove_member(self): """ Check if the union tag is ``shared_content_remove_member``. :rtype: bool """ return self._tag == 'shared_content_remove_member' def is_shared_content_request_access(self): """ Check if the union tag is ``shared_content_request_access``. :rtype: bool """ return self._tag == 'shared_content_request_access' def is_shared_content_restore_invitees(self): """ Check if the union tag is ``shared_content_restore_invitees``. :rtype: bool """ return self._tag == 'shared_content_restore_invitees' def is_shared_content_restore_member(self): """ Check if the union tag is ``shared_content_restore_member``. :rtype: bool """ return self._tag == 'shared_content_restore_member' def is_shared_content_unshare(self): """ Check if the union tag is ``shared_content_unshare``. :rtype: bool """ return self._tag == 'shared_content_unshare' def is_shared_content_view(self): """ Check if the union tag is ``shared_content_view``. :rtype: bool """ return self._tag == 'shared_content_view' def is_shared_folder_change_link_policy(self): """ Check if the union tag is ``shared_folder_change_link_policy``. :rtype: bool """ return self._tag == 'shared_folder_change_link_policy' def is_shared_folder_change_members_inheritance_policy(self): """ Check if the union tag is ``shared_folder_change_members_inheritance_policy``. :rtype: bool """ return self._tag == 'shared_folder_change_members_inheritance_policy' def is_shared_folder_change_members_management_policy(self): """ Check if the union tag is ``shared_folder_change_members_management_policy``. :rtype: bool """ return self._tag == 'shared_folder_change_members_management_policy' def is_shared_folder_change_members_policy(self): """ Check if the union tag is ``shared_folder_change_members_policy``. :rtype: bool """ return self._tag == 'shared_folder_change_members_policy' def is_shared_folder_create(self): """ Check if the union tag is ``shared_folder_create``. :rtype: bool """ return self._tag == 'shared_folder_create' def is_shared_folder_decline_invitation(self): """ Check if the union tag is ``shared_folder_decline_invitation``. :rtype: bool """ return self._tag == 'shared_folder_decline_invitation' def is_shared_folder_mount(self): """ Check if the union tag is ``shared_folder_mount``. :rtype: bool """ return self._tag == 'shared_folder_mount' def is_shared_folder_nest(self): """ Check if the union tag is ``shared_folder_nest``. :rtype: bool """ return self._tag == 'shared_folder_nest' def is_shared_folder_transfer_ownership(self): """ Check if the union tag is ``shared_folder_transfer_ownership``. :rtype: bool """ return self._tag == 'shared_folder_transfer_ownership' def is_shared_folder_unmount(self): """ Check if the union tag is ``shared_folder_unmount``. :rtype: bool """ return self._tag == 'shared_folder_unmount' def is_shared_link_add_expiry(self): """ Check if the union tag is ``shared_link_add_expiry``. :rtype: bool """ return self._tag == 'shared_link_add_expiry' def is_shared_link_change_expiry(self): """ Check if the union tag is ``shared_link_change_expiry``. :rtype: bool """ return self._tag == 'shared_link_change_expiry' def is_shared_link_change_visibility(self): """ Check if the union tag is ``shared_link_change_visibility``. :rtype: bool """ return self._tag == 'shared_link_change_visibility' def is_shared_link_copy(self): """ Check if the union tag is ``shared_link_copy``. :rtype: bool """ return self._tag == 'shared_link_copy' def is_shared_link_create(self): """ Check if the union tag is ``shared_link_create``. :rtype: bool """ return self._tag == 'shared_link_create' def is_shared_link_disable(self): """ Check if the union tag is ``shared_link_disable``. :rtype: bool """ return self._tag == 'shared_link_disable' def is_shared_link_download(self): """ Check if the union tag is ``shared_link_download``. :rtype: bool """ return self._tag == 'shared_link_download' def is_shared_link_remove_expiry(self): """ Check if the union tag is ``shared_link_remove_expiry``. :rtype: bool """ return self._tag == 'shared_link_remove_expiry' def is_shared_link_settings_add_expiration(self): """ Check if the union tag is ``shared_link_settings_add_expiration``. :rtype: bool """ return self._tag == 'shared_link_settings_add_expiration' def is_shared_link_settings_add_password(self): """ Check if the union tag is ``shared_link_settings_add_password``. :rtype: bool """ return self._tag == 'shared_link_settings_add_password' def is_shared_link_settings_allow_download_disabled(self): """ Check if the union tag is ``shared_link_settings_allow_download_disabled``. :rtype: bool """ return self._tag == 'shared_link_settings_allow_download_disabled' def is_shared_link_settings_allow_download_enabled(self): """ Check if the union tag is ``shared_link_settings_allow_download_enabled``. :rtype: bool """ return self._tag == 'shared_link_settings_allow_download_enabled' def is_shared_link_settings_change_audience(self): """ Check if the union tag is ``shared_link_settings_change_audience``. :rtype: bool """ return self._tag == 'shared_link_settings_change_audience' def is_shared_link_settings_change_expiration(self): """ Check if the union tag is ``shared_link_settings_change_expiration``. :rtype: bool """ return self._tag == 'shared_link_settings_change_expiration' def is_shared_link_settings_change_password(self): """ Check if the union tag is ``shared_link_settings_change_password``. :rtype: bool """ return self._tag == 'shared_link_settings_change_password' def is_shared_link_settings_remove_expiration(self): """ Check if the union tag is ``shared_link_settings_remove_expiration``. :rtype: bool """ return self._tag == 'shared_link_settings_remove_expiration' def is_shared_link_settings_remove_password(self): """ Check if the union tag is ``shared_link_settings_remove_password``. :rtype: bool """ return self._tag == 'shared_link_settings_remove_password' def is_shared_link_share(self): """ Check if the union tag is ``shared_link_share``. :rtype: bool """ return self._tag == 'shared_link_share' def is_shared_link_view(self): """ Check if the union tag is ``shared_link_view``. :rtype: bool """ return self._tag == 'shared_link_view' def is_shared_note_opened(self): """ Check if the union tag is ``shared_note_opened``. :rtype: bool """ return self._tag == 'shared_note_opened' def is_shmodel_disable_downloads(self): """ Check if the union tag is ``shmodel_disable_downloads``. :rtype: bool """ return self._tag == 'shmodel_disable_downloads' def is_shmodel_enable_downloads(self): """ Check if the union tag is ``shmodel_enable_downloads``. :rtype: bool """ return self._tag == 'shmodel_enable_downloads' def is_shmodel_group_share(self): """ Check if the union tag is ``shmodel_group_share``. :rtype: bool """ return self._tag == 'shmodel_group_share' def is_showcase_access_granted(self): """ Check if the union tag is ``showcase_access_granted``. :rtype: bool """ return self._tag == 'showcase_access_granted' def is_showcase_add_member(self): """ Check if the union tag is ``showcase_add_member``. :rtype: bool """ return self._tag == 'showcase_add_member' def is_showcase_archived(self): """ Check if the union tag is ``showcase_archived``. :rtype: bool """ return self._tag == 'showcase_archived' def is_showcase_created(self): """ Check if the union tag is ``showcase_created``. :rtype: bool """ return self._tag == 'showcase_created' def is_showcase_delete_comment(self): """ Check if the union tag is ``showcase_delete_comment``. :rtype: bool """ return self._tag == 'showcase_delete_comment' def is_showcase_edited(self): """ Check if the union tag is ``showcase_edited``. :rtype: bool """ return self._tag == 'showcase_edited' def is_showcase_edit_comment(self): """ Check if the union tag is ``showcase_edit_comment``. :rtype: bool """ return self._tag == 'showcase_edit_comment' def is_showcase_file_added(self): """ Check if the union tag is ``showcase_file_added``. :rtype: bool """ return self._tag == 'showcase_file_added' def is_showcase_file_download(self): """ Check if the union tag is ``showcase_file_download``. :rtype: bool """ return self._tag == 'showcase_file_download' def is_showcase_file_removed(self): """ Check if the union tag is ``showcase_file_removed``. :rtype: bool """ return self._tag == 'showcase_file_removed' def is_showcase_file_view(self): """ Check if the union tag is ``showcase_file_view``. :rtype: bool """ return self._tag == 'showcase_file_view' def is_showcase_permanently_deleted(self): """ Check if the union tag is ``showcase_permanently_deleted``. :rtype: bool """ return self._tag == 'showcase_permanently_deleted' def is_showcase_post_comment(self): """ Check if the union tag is ``showcase_post_comment``. :rtype: bool """ return self._tag == 'showcase_post_comment' def is_showcase_remove_member(self): """ Check if the union tag is ``showcase_remove_member``. :rtype: bool """ return self._tag == 'showcase_remove_member' def is_showcase_renamed(self): """ Check if the union tag is ``showcase_renamed``. :rtype: bool """ return self._tag == 'showcase_renamed' def is_showcase_request_access(self): """ Check if the union tag is ``showcase_request_access``. :rtype: bool """ return self._tag == 'showcase_request_access' def is_showcase_resolve_comment(self): """ Check if the union tag is ``showcase_resolve_comment``. :rtype: bool """ return self._tag == 'showcase_resolve_comment' def is_showcase_restored(self): """ Check if the union tag is ``showcase_restored``. :rtype: bool """ return self._tag == 'showcase_restored' def is_showcase_trashed(self): """ Check if the union tag is ``showcase_trashed``. :rtype: bool """ return self._tag == 'showcase_trashed' def is_showcase_trashed_deprecated(self): """ Check if the union tag is ``showcase_trashed_deprecated``. :rtype: bool """ return self._tag == 'showcase_trashed_deprecated' def is_showcase_unresolve_comment(self): """ Check if the union tag is ``showcase_unresolve_comment``. :rtype: bool """ return self._tag == 'showcase_unresolve_comment' def is_showcase_untrashed(self): """ Check if the union tag is ``showcase_untrashed``. :rtype: bool """ return self._tag == 'showcase_untrashed' def is_showcase_untrashed_deprecated(self): """ Check if the union tag is ``showcase_untrashed_deprecated``. :rtype: bool """ return self._tag == 'showcase_untrashed_deprecated' def is_showcase_view(self): """ Check if the union tag is ``showcase_view``. :rtype: bool """ return self._tag == 'showcase_view' def is_sso_add_cert(self): """ Check if the union tag is ``sso_add_cert``. :rtype: bool """ return self._tag == 'sso_add_cert' def is_sso_add_login_url(self): """ Check if the union tag is ``sso_add_login_url``. :rtype: bool """ return self._tag == 'sso_add_login_url' def is_sso_add_logout_url(self): """ Check if the union tag is ``sso_add_logout_url``. :rtype: bool """ return self._tag == 'sso_add_logout_url' def is_sso_change_cert(self): """ Check if the union tag is ``sso_change_cert``. :rtype: bool """ return self._tag == 'sso_change_cert' def is_sso_change_login_url(self): """ Check if the union tag is ``sso_change_login_url``. :rtype: bool """ return self._tag == 'sso_change_login_url' def is_sso_change_logout_url(self): """ Check if the union tag is ``sso_change_logout_url``. :rtype: bool """ return self._tag == 'sso_change_logout_url' def is_sso_change_saml_identity_mode(self): """ Check if the union tag is ``sso_change_saml_identity_mode``. :rtype: bool """ return self._tag == 'sso_change_saml_identity_mode' def is_sso_remove_cert(self): """ Check if the union tag is ``sso_remove_cert``. :rtype: bool """ return self._tag == 'sso_remove_cert' def is_sso_remove_login_url(self): """ Check if the union tag is ``sso_remove_login_url``. :rtype: bool """ return self._tag == 'sso_remove_login_url' def is_sso_remove_logout_url(self): """ Check if the union tag is ``sso_remove_logout_url``. :rtype: bool """ return self._tag == 'sso_remove_logout_url' def is_team_folder_change_status(self): """ Check if the union tag is ``team_folder_change_status``. :rtype: bool """ return self._tag == 'team_folder_change_status' def is_team_folder_create(self): """ Check if the union tag is ``team_folder_create``. :rtype: bool """ return self._tag == 'team_folder_create' def is_team_folder_downgrade(self): """ Check if the union tag is ``team_folder_downgrade``. :rtype: bool """ return self._tag == 'team_folder_downgrade' def is_team_folder_permanently_delete(self): """ Check if the union tag is ``team_folder_permanently_delete``. :rtype: bool """ return self._tag == 'team_folder_permanently_delete' def is_team_folder_rename(self): """ Check if the union tag is ``team_folder_rename``. :rtype: bool """ return self._tag == 'team_folder_rename' def is_team_selective_sync_settings_changed(self): """ Check if the union tag is ``team_selective_sync_settings_changed``. :rtype: bool """ return self._tag == 'team_selective_sync_settings_changed' def is_account_capture_change_policy(self): """ Check if the union tag is ``account_capture_change_policy``. :rtype: bool """ return self._tag == 'account_capture_change_policy' def is_admin_email_reminders_changed(self): """ Check if the union tag is ``admin_email_reminders_changed``. :rtype: bool """ return self._tag == 'admin_email_reminders_changed' def is_allow_download_disabled(self): """ Check if the union tag is ``allow_download_disabled``. :rtype: bool """ return self._tag == 'allow_download_disabled' def is_allow_download_enabled(self): """ Check if the union tag is ``allow_download_enabled``. :rtype: bool """ return self._tag == 'allow_download_enabled' def is_app_permissions_changed(self): """ Check if the union tag is ``app_permissions_changed``. :rtype: bool """ return self._tag == 'app_permissions_changed' def is_camera_uploads_policy_changed(self): """ Check if the union tag is ``camera_uploads_policy_changed``. :rtype: bool """ return self._tag == 'camera_uploads_policy_changed' def is_capture_transcript_policy_changed(self): """ Check if the union tag is ``capture_transcript_policy_changed``. :rtype: bool """ return self._tag == 'capture_transcript_policy_changed' def is_classification_change_policy(self): """ Check if the union tag is ``classification_change_policy``. :rtype: bool """ return self._tag == 'classification_change_policy' def is_computer_backup_policy_changed(self): """ Check if the union tag is ``computer_backup_policy_changed``. :rtype: bool """ return self._tag == 'computer_backup_policy_changed' def is_content_administration_policy_changed(self): """ Check if the union tag is ``content_administration_policy_changed``. :rtype: bool """ return self._tag == 'content_administration_policy_changed' def is_data_placement_restriction_change_policy(self): """ Check if the union tag is ``data_placement_restriction_change_policy``. :rtype: bool """ return self._tag == 'data_placement_restriction_change_policy' def is_data_placement_restriction_satisfy_policy(self): """ Check if the union tag is ``data_placement_restriction_satisfy_policy``. :rtype: bool """ return self._tag == 'data_placement_restriction_satisfy_policy' def is_device_approvals_add_exception(self): """ Check if the union tag is ``device_approvals_add_exception``. :rtype: bool """ return self._tag == 'device_approvals_add_exception' def is_device_approvals_change_desktop_policy(self): """ Check if the union tag is ``device_approvals_change_desktop_policy``. :rtype: bool """ return self._tag == 'device_approvals_change_desktop_policy' def is_device_approvals_change_mobile_policy(self): """ Check if the union tag is ``device_approvals_change_mobile_policy``. :rtype: bool """ return self._tag == 'device_approvals_change_mobile_policy' def is_device_approvals_change_overage_action(self): """ Check if the union tag is ``device_approvals_change_overage_action``. :rtype: bool """ return self._tag == 'device_approvals_change_overage_action' def is_device_approvals_change_unlink_action(self): """ Check if the union tag is ``device_approvals_change_unlink_action``. :rtype: bool """ return self._tag == 'device_approvals_change_unlink_action' def is_device_approvals_remove_exception(self): """ Check if the union tag is ``device_approvals_remove_exception``. :rtype: bool """ return self._tag == 'device_approvals_remove_exception' def is_directory_restrictions_add_members(self): """ Check if the union tag is ``directory_restrictions_add_members``. :rtype: bool """ return self._tag == 'directory_restrictions_add_members' def is_directory_restrictions_remove_members(self): """ Check if the union tag is ``directory_restrictions_remove_members``. :rtype: bool """ return self._tag == 'directory_restrictions_remove_members' def is_dropbox_passwords_policy_changed(self): """ Check if the union tag is ``dropbox_passwords_policy_changed``. :rtype: bool """ return self._tag == 'dropbox_passwords_policy_changed' def is_email_ingest_policy_changed(self): """ Check if the union tag is ``email_ingest_policy_changed``. :rtype: bool """ return self._tag == 'email_ingest_policy_changed' def is_emm_add_exception(self): """ Check if the union tag is ``emm_add_exception``. :rtype: bool """ return self._tag == 'emm_add_exception' def is_emm_change_policy(self): """ Check if the union tag is ``emm_change_policy``. :rtype: bool """ return self._tag == 'emm_change_policy' def is_emm_remove_exception(self): """ Check if the union tag is ``emm_remove_exception``. :rtype: bool """ return self._tag == 'emm_remove_exception' def is_extended_version_history_change_policy(self): """ Check if the union tag is ``extended_version_history_change_policy``. :rtype: bool """ return self._tag == 'extended_version_history_change_policy' def is_external_drive_backup_policy_changed(self): """ Check if the union tag is ``external_drive_backup_policy_changed``. :rtype: bool """ return self._tag == 'external_drive_backup_policy_changed' def is_file_comments_change_policy(self): """ Check if the union tag is ``file_comments_change_policy``. :rtype: bool """ return self._tag == 'file_comments_change_policy' def is_file_locking_policy_changed(self): """ Check if the union tag is ``file_locking_policy_changed``. :rtype: bool """ return self._tag == 'file_locking_policy_changed' def is_file_provider_migration_policy_changed(self): """ Check if the union tag is ``file_provider_migration_policy_changed``. :rtype: bool """ return self._tag == 'file_provider_migration_policy_changed' def is_file_requests_change_policy(self): """ Check if the union tag is ``file_requests_change_policy``. :rtype: bool """ return self._tag == 'file_requests_change_policy' def is_file_requests_emails_enabled(self): """ Check if the union tag is ``file_requests_emails_enabled``. :rtype: bool """ return self._tag == 'file_requests_emails_enabled' def is_file_requests_emails_restricted_to_team_only(self): """ Check if the union tag is ``file_requests_emails_restricted_to_team_only``. :rtype: bool """ return self._tag == 'file_requests_emails_restricted_to_team_only' def is_file_transfers_policy_changed(self): """ Check if the union tag is ``file_transfers_policy_changed``. :rtype: bool """ return self._tag == 'file_transfers_policy_changed' def is_folder_link_restriction_policy_changed(self): """ Check if the union tag is ``folder_link_restriction_policy_changed``. :rtype: bool """ return self._tag == 'folder_link_restriction_policy_changed' def is_google_sso_change_policy(self): """ Check if the union tag is ``google_sso_change_policy``. :rtype: bool """ return self._tag == 'google_sso_change_policy' def is_group_user_management_change_policy(self): """ Check if the union tag is ``group_user_management_change_policy``. :rtype: bool """ return self._tag == 'group_user_management_change_policy' def is_integration_policy_changed(self): """ Check if the union tag is ``integration_policy_changed``. :rtype: bool """ return self._tag == 'integration_policy_changed' def is_invite_acceptance_email_policy_changed(self): """ Check if the union tag is ``invite_acceptance_email_policy_changed``. :rtype: bool """ return self._tag == 'invite_acceptance_email_policy_changed' def is_member_requests_change_policy(self): """ Check if the union tag is ``member_requests_change_policy``. :rtype: bool """ return self._tag == 'member_requests_change_policy' def is_member_send_invite_policy_changed(self): """ Check if the union tag is ``member_send_invite_policy_changed``. :rtype: bool """ return self._tag == 'member_send_invite_policy_changed' def is_member_space_limits_add_exception(self): """ Check if the union tag is ``member_space_limits_add_exception``. :rtype: bool """ return self._tag == 'member_space_limits_add_exception' def is_member_space_limits_change_caps_type_policy(self): """ Check if the union tag is ``member_space_limits_change_caps_type_policy``. :rtype: bool """ return self._tag == 'member_space_limits_change_caps_type_policy' def is_member_space_limits_change_policy(self): """ Check if the union tag is ``member_space_limits_change_policy``. :rtype: bool """ return self._tag == 'member_space_limits_change_policy' def is_member_space_limits_remove_exception(self): """ Check if the union tag is ``member_space_limits_remove_exception``. :rtype: bool """ return self._tag == 'member_space_limits_remove_exception' def is_member_suggestions_change_policy(self): """ Check if the union tag is ``member_suggestions_change_policy``. :rtype: bool """ return self._tag == 'member_suggestions_change_policy' def is_microsoft_office_addin_change_policy(self): """ Check if the union tag is ``microsoft_office_addin_change_policy``. :rtype: bool """ return self._tag == 'microsoft_office_addin_change_policy' def is_network_control_change_policy(self): """ Check if the union tag is ``network_control_change_policy``. :rtype: bool """ return self._tag == 'network_control_change_policy' def is_paper_change_deployment_policy(self): """ Check if the union tag is ``paper_change_deployment_policy``. :rtype: bool """ return self._tag == 'paper_change_deployment_policy' def is_paper_change_member_link_policy(self): """ Check if the union tag is ``paper_change_member_link_policy``. :rtype: bool """ return self._tag == 'paper_change_member_link_policy' def is_paper_change_member_policy(self): """ Check if the union tag is ``paper_change_member_policy``. :rtype: bool """ return self._tag == 'paper_change_member_policy' def is_paper_change_policy(self): """ Check if the union tag is ``paper_change_policy``. :rtype: bool """ return self._tag == 'paper_change_policy' def is_paper_default_folder_policy_changed(self): """ Check if the union tag is ``paper_default_folder_policy_changed``. :rtype: bool """ return self._tag == 'paper_default_folder_policy_changed' def is_paper_desktop_policy_changed(self): """ Check if the union tag is ``paper_desktop_policy_changed``. :rtype: bool """ return self._tag == 'paper_desktop_policy_changed' def is_paper_enabled_users_group_addition(self): """ Check if the union tag is ``paper_enabled_users_group_addition``. :rtype: bool """ return self._tag == 'paper_enabled_users_group_addition' def is_paper_enabled_users_group_removal(self): """ Check if the union tag is ``paper_enabled_users_group_removal``. :rtype: bool """ return self._tag == 'paper_enabled_users_group_removal' def is_password_strength_requirements_change_policy(self): """ Check if the union tag is ``password_strength_requirements_change_policy``. :rtype: bool """ return self._tag == 'password_strength_requirements_change_policy' def is_permanent_delete_change_policy(self): """ Check if the union tag is ``permanent_delete_change_policy``. :rtype: bool """ return self._tag == 'permanent_delete_change_policy' def is_reseller_support_change_policy(self): """ Check if the union tag is ``reseller_support_change_policy``. :rtype: bool """ return self._tag == 'reseller_support_change_policy' def is_rewind_policy_changed(self): """ Check if the union tag is ``rewind_policy_changed``. :rtype: bool """ return self._tag == 'rewind_policy_changed' def is_send_for_signature_policy_changed(self): """ Check if the union tag is ``send_for_signature_policy_changed``. :rtype: bool """ return self._tag == 'send_for_signature_policy_changed' def is_sharing_change_folder_join_policy(self): """ Check if the union tag is ``sharing_change_folder_join_policy``. :rtype: bool """ return self._tag == 'sharing_change_folder_join_policy' def is_sharing_change_link_allow_change_expiration_policy(self): """ Check if the union tag is ``sharing_change_link_allow_change_expiration_policy``. :rtype: bool """ return self._tag == 'sharing_change_link_allow_change_expiration_policy' def is_sharing_change_link_default_expiration_policy(self): """ Check if the union tag is ``sharing_change_link_default_expiration_policy``. :rtype: bool """ return self._tag == 'sharing_change_link_default_expiration_policy' def is_sharing_change_link_enforce_password_policy(self): """ Check if the union tag is ``sharing_change_link_enforce_password_policy``. :rtype: bool """ return self._tag == 'sharing_change_link_enforce_password_policy' def is_sharing_change_link_policy(self): """ Check if the union tag is ``sharing_change_link_policy``. :rtype: bool """ return self._tag == 'sharing_change_link_policy' def is_sharing_change_member_policy(self): """ Check if the union tag is ``sharing_change_member_policy``. :rtype: bool """ return self._tag == 'sharing_change_member_policy' def is_showcase_change_download_policy(self): """ Check if the union tag is ``showcase_change_download_policy``. :rtype: bool """ return self._tag == 'showcase_change_download_policy' def is_showcase_change_enabled_policy(self): """ Check if the union tag is ``showcase_change_enabled_policy``. :rtype: bool """ return self._tag == 'showcase_change_enabled_policy' def is_showcase_change_external_sharing_policy(self): """ Check if the union tag is ``showcase_change_external_sharing_policy``. :rtype: bool """ return self._tag == 'showcase_change_external_sharing_policy' def is_smarter_smart_sync_policy_changed(self): """ Check if the union tag is ``smarter_smart_sync_policy_changed``. :rtype: bool """ return self._tag == 'smarter_smart_sync_policy_changed' def is_smart_sync_change_policy(self): """ Check if the union tag is ``smart_sync_change_policy``. :rtype: bool """ return self._tag == 'smart_sync_change_policy' def is_smart_sync_not_opt_out(self): """ Check if the union tag is ``smart_sync_not_opt_out``. :rtype: bool """ return self._tag == 'smart_sync_not_opt_out' def is_smart_sync_opt_out(self): """ Check if the union tag is ``smart_sync_opt_out``. :rtype: bool """ return self._tag == 'smart_sync_opt_out' def is_sso_change_policy(self): """ Check if the union tag is ``sso_change_policy``. :rtype: bool """ return self._tag == 'sso_change_policy' def is_team_branding_policy_changed(self): """ Check if the union tag is ``team_branding_policy_changed``. :rtype: bool """ return self._tag == 'team_branding_policy_changed' def is_team_extensions_policy_changed(self): """ Check if the union tag is ``team_extensions_policy_changed``. :rtype: bool """ return self._tag == 'team_extensions_policy_changed' def is_team_selective_sync_policy_changed(self): """ Check if the union tag is ``team_selective_sync_policy_changed``. :rtype: bool """ return self._tag == 'team_selective_sync_policy_changed' def is_team_sharing_whitelist_subjects_changed(self): """ Check if the union tag is ``team_sharing_whitelist_subjects_changed``. :rtype: bool """ return self._tag == 'team_sharing_whitelist_subjects_changed' def is_tfa_add_exception(self): """ Check if the union tag is ``tfa_add_exception``. :rtype: bool """ return self._tag == 'tfa_add_exception' def is_tfa_change_policy(self): """ Check if the union tag is ``tfa_change_policy``. :rtype: bool """ return self._tag == 'tfa_change_policy' def is_tfa_remove_exception(self): """ Check if the union tag is ``tfa_remove_exception``. :rtype: bool """ return self._tag == 'tfa_remove_exception' def is_two_account_change_policy(self): """ Check if the union tag is ``two_account_change_policy``. :rtype: bool """ return self._tag == 'two_account_change_policy' def is_viewer_info_policy_changed(self): """ Check if the union tag is ``viewer_info_policy_changed``. :rtype: bool """ return self._tag == 'viewer_info_policy_changed' def is_watermarking_policy_changed(self): """ Check if the union tag is ``watermarking_policy_changed``. :rtype: bool """ return self._tag == 'watermarking_policy_changed' def is_web_sessions_change_active_session_limit(self): """ Check if the union tag is ``web_sessions_change_active_session_limit``. :rtype: bool """ return self._tag == 'web_sessions_change_active_session_limit' def is_web_sessions_change_fixed_length_policy(self): """ Check if the union tag is ``web_sessions_change_fixed_length_policy``. :rtype: bool """ return self._tag == 'web_sessions_change_fixed_length_policy' def is_web_sessions_change_idle_length_policy(self): """ Check if the union tag is ``web_sessions_change_idle_length_policy``. :rtype: bool """ return self._tag == 'web_sessions_change_idle_length_policy' def is_data_residency_migration_request_successful(self): """ Check if the union tag is ``data_residency_migration_request_successful``. :rtype: bool """ return self._tag == 'data_residency_migration_request_successful' def is_data_residency_migration_request_unsuccessful(self): """ Check if the union tag is ``data_residency_migration_request_unsuccessful``. :rtype: bool """ return self._tag == 'data_residency_migration_request_unsuccessful' def is_team_merge_from(self): """ Check if the union tag is ``team_merge_from``. :rtype: bool """ return self._tag == 'team_merge_from' def is_team_merge_to(self): """ Check if the union tag is ``team_merge_to``. :rtype: bool """ return self._tag == 'team_merge_to' def is_team_profile_add_background(self): """ Check if the union tag is ``team_profile_add_background``. :rtype: bool """ return self._tag == 'team_profile_add_background' def is_team_profile_add_logo(self): """ Check if the union tag is ``team_profile_add_logo``. :rtype: bool """ return self._tag == 'team_profile_add_logo' def is_team_profile_change_background(self): """ Check if the union tag is ``team_profile_change_background``. :rtype: bool """ return self._tag == 'team_profile_change_background' def is_team_profile_change_default_language(self): """ Check if the union tag is ``team_profile_change_default_language``. :rtype: bool """ return self._tag == 'team_profile_change_default_language' def is_team_profile_change_logo(self): """ Check if the union tag is ``team_profile_change_logo``. :rtype: bool """ return self._tag == 'team_profile_change_logo' def is_team_profile_change_name(self): """ Check if the union tag is ``team_profile_change_name``. :rtype: bool """ return self._tag == 'team_profile_change_name' def is_team_profile_remove_background(self): """ Check if the union tag is ``team_profile_remove_background``. :rtype: bool """ return self._tag == 'team_profile_remove_background' def is_team_profile_remove_logo(self): """ Check if the union tag is ``team_profile_remove_logo``. :rtype: bool """ return self._tag == 'team_profile_remove_logo' def is_tfa_add_backup_phone(self): """ Check if the union tag is ``tfa_add_backup_phone``. :rtype: bool """ return self._tag == 'tfa_add_backup_phone' def is_tfa_add_security_key(self): """ Check if the union tag is ``tfa_add_security_key``. :rtype: bool """ return self._tag == 'tfa_add_security_key' def is_tfa_change_backup_phone(self): """ Check if the union tag is ``tfa_change_backup_phone``. :rtype: bool """ return self._tag == 'tfa_change_backup_phone' def is_tfa_change_status(self): """ Check if the union tag is ``tfa_change_status``. :rtype: bool """ return self._tag == 'tfa_change_status' def is_tfa_remove_backup_phone(self): """ Check if the union tag is ``tfa_remove_backup_phone``. :rtype: bool """ return self._tag == 'tfa_remove_backup_phone' def is_tfa_remove_security_key(self): """ Check if the union tag is ``tfa_remove_security_key``. :rtype: bool """ return self._tag == 'tfa_remove_security_key' def is_tfa_reset(self): """ Check if the union tag is ``tfa_reset``. :rtype: bool """ return self._tag == 'tfa_reset' def is_changed_enterprise_admin_role(self): """ Check if the union tag is ``changed_enterprise_admin_role``. :rtype: bool """ return self._tag == 'changed_enterprise_admin_role' def is_changed_enterprise_connected_team_status(self): """ Check if the union tag is ``changed_enterprise_connected_team_status``. :rtype: bool """ return self._tag == 'changed_enterprise_connected_team_status' def is_ended_enterprise_admin_session(self): """ Check if the union tag is ``ended_enterprise_admin_session``. :rtype: bool """ return self._tag == 'ended_enterprise_admin_session' def is_ended_enterprise_admin_session_deprecated(self): """ Check if the union tag is ``ended_enterprise_admin_session_deprecated``. :rtype: bool """ return self._tag == 'ended_enterprise_admin_session_deprecated' def is_enterprise_settings_locking(self): """ Check if the union tag is ``enterprise_settings_locking``. :rtype: bool """ return self._tag == 'enterprise_settings_locking' def is_guest_admin_change_status(self): """ Check if the union tag is ``guest_admin_change_status``. :rtype: bool """ return self._tag == 'guest_admin_change_status' def is_started_enterprise_admin_session(self): """ Check if the union tag is ``started_enterprise_admin_session``. :rtype: bool """ return self._tag == 'started_enterprise_admin_session' def is_team_merge_request_accepted(self): """ Check if the union tag is ``team_merge_request_accepted``. :rtype: bool """ return self._tag == 'team_merge_request_accepted' def is_team_merge_request_accepted_shown_to_primary_team(self): """ Check if the union tag is ``team_merge_request_accepted_shown_to_primary_team``. :rtype: bool """ return self._tag == 'team_merge_request_accepted_shown_to_primary_team' def is_team_merge_request_accepted_shown_to_secondary_team(self): """ Check if the union tag is ``team_merge_request_accepted_shown_to_secondary_team``. :rtype: bool """ return self._tag == 'team_merge_request_accepted_shown_to_secondary_team' def is_team_merge_request_auto_canceled(self): """ Check if the union tag is ``team_merge_request_auto_canceled``. :rtype: bool """ return self._tag == 'team_merge_request_auto_canceled' def is_team_merge_request_canceled(self): """ Check if the union tag is ``team_merge_request_canceled``. :rtype: bool """ return self._tag == 'team_merge_request_canceled' def is_team_merge_request_canceled_shown_to_primary_team(self): """ Check if the union tag is ``team_merge_request_canceled_shown_to_primary_team``. :rtype: bool """ return self._tag == 'team_merge_request_canceled_shown_to_primary_team' def is_team_merge_request_canceled_shown_to_secondary_team(self): """ Check if the union tag is ``team_merge_request_canceled_shown_to_secondary_team``. :rtype: bool """ return self._tag == 'team_merge_request_canceled_shown_to_secondary_team' def is_team_merge_request_expired(self): """ Check if the union tag is ``team_merge_request_expired``. :rtype: bool """ return self._tag == 'team_merge_request_expired' def is_team_merge_request_expired_shown_to_primary_team(self): """ Check if the union tag is ``team_merge_request_expired_shown_to_primary_team``. :rtype: bool """ return self._tag == 'team_merge_request_expired_shown_to_primary_team' def is_team_merge_request_expired_shown_to_secondary_team(self): """ Check if the union tag is ``team_merge_request_expired_shown_to_secondary_team``. :rtype: bool """ return self._tag == 'team_merge_request_expired_shown_to_secondary_team' def is_team_merge_request_rejected_shown_to_primary_team(self): """ Check if the union tag is ``team_merge_request_rejected_shown_to_primary_team``. :rtype: bool """ return self._tag == 'team_merge_request_rejected_shown_to_primary_team' def is_team_merge_request_rejected_shown_to_secondary_team(self): """ Check if the union tag is ``team_merge_request_rejected_shown_to_secondary_team``. :rtype: bool """ return self._tag == 'team_merge_request_rejected_shown_to_secondary_team' def is_team_merge_request_reminder(self): """ Check if the union tag is ``team_merge_request_reminder``. :rtype: bool """ return self._tag == 'team_merge_request_reminder' def is_team_merge_request_reminder_shown_to_primary_team(self): """ Check if the union tag is ``team_merge_request_reminder_shown_to_primary_team``. :rtype: bool """ return self._tag == 'team_merge_request_reminder_shown_to_primary_team' def is_team_merge_request_reminder_shown_to_secondary_team(self): """ Check if the union tag is ``team_merge_request_reminder_shown_to_secondary_team``. :rtype: bool """ return self._tag == 'team_merge_request_reminder_shown_to_secondary_team' def is_team_merge_request_revoked(self): """ Check if the union tag is ``team_merge_request_revoked``. :rtype: bool """ return self._tag == 'team_merge_request_revoked' def is_team_merge_request_sent_shown_to_primary_team(self): """ Check if the union tag is ``team_merge_request_sent_shown_to_primary_team``. :rtype: bool """ return self._tag == 'team_merge_request_sent_shown_to_primary_team' def is_team_merge_request_sent_shown_to_secondary_team(self): """ Check if the union tag is ``team_merge_request_sent_shown_to_secondary_team``. :rtype: bool """ return self._tag == 'team_merge_request_sent_shown_to_secondary_team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(EventTypeArg, self)._process_custom_annotations(annotation_type, field_path, processor) EventTypeArg_validator = bv.Union(EventTypeArg) class ExportMembersReportDetails(bb.Struct): """ Created member data report. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExportMembersReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ExportMembersReportDetails_validator = bv.Struct(ExportMembersReportDetails) class ExportMembersReportFailDetails(bb.Struct): """ Failed to create members data report. :ivar team_log.ExportMembersReportFailDetails.failure_reason: Failure reason. """ __slots__ = [ '_failure_reason_value', ] _has_required_fields = True def __init__(self, failure_reason=None): self._failure_reason_value = bb.NOT_SET if failure_reason is not None: self.failure_reason = failure_reason # Instance attribute type: team.TeamReportFailureReason (validator is set below) failure_reason = bb.Attribute("failure_reason", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExportMembersReportFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ExportMembersReportFailDetails_validator = bv.Struct(ExportMembersReportFailDetails) class ExportMembersReportFailType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExportMembersReportFailType, self)._process_custom_annotations(annotation_type, field_path, processor) ExportMembersReportFailType_validator = bv.Struct(ExportMembersReportFailType) class ExportMembersReportType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExportMembersReportType, self)._process_custom_annotations(annotation_type, field_path, processor) ExportMembersReportType_validator = bv.Struct(ExportMembersReportType) class ExtendedVersionHistoryChangePolicyDetails(bb.Struct): """ Accepted/opted out of extended version history. :ivar team_log.ExtendedVersionHistoryChangePolicyDetails.new_value: New extended version history policy. :ivar team_log.ExtendedVersionHistoryChangePolicyDetails.previous_value: Previous extended version history policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: ExtendedVersionHistoryPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: ExtendedVersionHistoryPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExtendedVersionHistoryChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ExtendedVersionHistoryChangePolicyDetails_validator = bv.Struct(ExtendedVersionHistoryChangePolicyDetails) class ExtendedVersionHistoryChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExtendedVersionHistoryChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) ExtendedVersionHistoryChangePolicyType_validator = bv.Struct(ExtendedVersionHistoryChangePolicyType) class ExtendedVersionHistoryPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition explicitly_limited = None # Attribute is overwritten below the class definition explicitly_unlimited = None # Attribute is overwritten below the class definition implicitly_limited = None # Attribute is overwritten below the class definition implicitly_unlimited = None # Attribute is overwritten below the class definition other = None def is_explicitly_limited(self): """ Check if the union tag is ``explicitly_limited``. :rtype: bool """ return self._tag == 'explicitly_limited' def is_explicitly_unlimited(self): """ Check if the union tag is ``explicitly_unlimited``. :rtype: bool """ return self._tag == 'explicitly_unlimited' def is_implicitly_limited(self): """ Check if the union tag is ``implicitly_limited``. :rtype: bool """ return self._tag == 'implicitly_limited' def is_implicitly_unlimited(self): """ Check if the union tag is ``implicitly_unlimited``. :rtype: bool """ return self._tag == 'implicitly_unlimited' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExtendedVersionHistoryPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ExtendedVersionHistoryPolicy_validator = bv.Union(ExtendedVersionHistoryPolicy) class ExternalDriveBackupEligibilityStatus(bb.Union): """ External Drive Backup eligibility status This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition exceed_license_cap = None # Attribute is overwritten below the class definition success = None # Attribute is overwritten below the class definition other = None def is_exceed_license_cap(self): """ Check if the union tag is ``exceed_license_cap``. :rtype: bool """ return self._tag == 'exceed_license_cap' def is_success(self): """ Check if the union tag is ``success``. :rtype: bool """ return self._tag == 'success' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalDriveBackupEligibilityStatus, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalDriveBackupEligibilityStatus_validator = bv.Union(ExternalDriveBackupEligibilityStatus) class ExternalDriveBackupEligibilityStatusCheckedDetails(bb.Struct): """ Checked external drive backup eligibility status. :ivar team_log.ExternalDriveBackupEligibilityStatusCheckedDetails.desktop_device_session_info: Device's session logged information. :ivar team_log.ExternalDriveBackupEligibilityStatusCheckedDetails.status: Current eligibility status of external drive backup. :ivar team_log.ExternalDriveBackupEligibilityStatusCheckedDetails.number_of_external_drive_backup: Total number of valid external drive backup for all the team members. """ __slots__ = [ '_desktop_device_session_info_value', '_status_value', '_number_of_external_drive_backup_value', ] _has_required_fields = True def __init__(self, desktop_device_session_info=None, status=None, number_of_external_drive_backup=None): self._desktop_device_session_info_value = bb.NOT_SET self._status_value = bb.NOT_SET self._number_of_external_drive_backup_value = bb.NOT_SET if desktop_device_session_info is not None: self.desktop_device_session_info = desktop_device_session_info if status is not None: self.status = status if number_of_external_drive_backup is not None: self.number_of_external_drive_backup = number_of_external_drive_backup # Instance attribute type: DesktopDeviceSessionLogInfo (validator is set below) desktop_device_session_info = bb.Attribute("desktop_device_session_info", user_defined=True) # Instance attribute type: ExternalDriveBackupEligibilityStatus (validator is set below) status = bb.Attribute("status", user_defined=True) # Instance attribute type: int (validator is set below) number_of_external_drive_backup = bb.Attribute("number_of_external_drive_backup") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalDriveBackupEligibilityStatusCheckedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalDriveBackupEligibilityStatusCheckedDetails_validator = bv.Struct(ExternalDriveBackupEligibilityStatusCheckedDetails) class ExternalDriveBackupEligibilityStatusCheckedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalDriveBackupEligibilityStatusCheckedType, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalDriveBackupEligibilityStatusCheckedType_validator = bv.Struct(ExternalDriveBackupEligibilityStatusCheckedType) class ExternalDriveBackupPolicy(bb.Union): """ Policy for controlling team access to external drive backup feature This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalDriveBackupPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalDriveBackupPolicy_validator = bv.Union(ExternalDriveBackupPolicy) class ExternalDriveBackupPolicyChangedDetails(bb.Struct): """ Changed external drive backup policy for team. :ivar team_log.ExternalDriveBackupPolicyChangedDetails.new_value: New external drive backup policy. :ivar team_log.ExternalDriveBackupPolicyChangedDetails.previous_value: Previous external drive backup policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: ExternalDriveBackupPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: ExternalDriveBackupPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalDriveBackupPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalDriveBackupPolicyChangedDetails_validator = bv.Struct(ExternalDriveBackupPolicyChangedDetails) class ExternalDriveBackupPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalDriveBackupPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalDriveBackupPolicyChangedType_validator = bv.Struct(ExternalDriveBackupPolicyChangedType) class ExternalDriveBackupStatus(bb.Union): """ External Drive Backup status This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition broken = None # Attribute is overwritten below the class definition created = None # Attribute is overwritten below the class definition created_or_broken = None # Attribute is overwritten below the class definition deleted = None # Attribute is overwritten below the class definition empty = None # Attribute is overwritten below the class definition unknown = None # Attribute is overwritten below the class definition other = None def is_broken(self): """ Check if the union tag is ``broken``. :rtype: bool """ return self._tag == 'broken' def is_created(self): """ Check if the union tag is ``created``. :rtype: bool """ return self._tag == 'created' def is_created_or_broken(self): """ Check if the union tag is ``created_or_broken``. :rtype: bool """ return self._tag == 'created_or_broken' def is_deleted(self): """ Check if the union tag is ``deleted``. :rtype: bool """ return self._tag == 'deleted' def is_empty(self): """ Check if the union tag is ``empty``. :rtype: bool """ return self._tag == 'empty' def is_unknown(self): """ Check if the union tag is ``unknown``. :rtype: bool """ return self._tag == 'unknown' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalDriveBackupStatus, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalDriveBackupStatus_validator = bv.Union(ExternalDriveBackupStatus) class ExternalDriveBackupStatusChangedDetails(bb.Struct): """ Modified external drive backup. :ivar team_log.ExternalDriveBackupStatusChangedDetails.desktop_device_session_info: Device's session logged information. :ivar team_log.ExternalDriveBackupStatusChangedDetails.previous_value: Previous status of this external drive backup. :ivar team_log.ExternalDriveBackupStatusChangedDetails.new_value: Next status of this external drive backup. """ __slots__ = [ '_desktop_device_session_info_value', '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, desktop_device_session_info=None, previous_value=None, new_value=None): self._desktop_device_session_info_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if desktop_device_session_info is not None: self.desktop_device_session_info = desktop_device_session_info if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: DesktopDeviceSessionLogInfo (validator is set below) desktop_device_session_info = bb.Attribute("desktop_device_session_info", user_defined=True) # Instance attribute type: ExternalDriveBackupStatus (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: ExternalDriveBackupStatus (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalDriveBackupStatusChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalDriveBackupStatusChangedDetails_validator = bv.Struct(ExternalDriveBackupStatusChangedDetails) class ExternalDriveBackupStatusChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalDriveBackupStatusChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalDriveBackupStatusChangedType_validator = bv.Struct(ExternalDriveBackupStatusChangedType) class ExternalSharingCreateReportDetails(bb.Struct): """ Created External sharing report. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalSharingCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalSharingCreateReportDetails_validator = bv.Struct(ExternalSharingCreateReportDetails) class ExternalSharingCreateReportType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalSharingCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalSharingCreateReportType_validator = bv.Struct(ExternalSharingCreateReportType) class ExternalSharingReportFailedDetails(bb.Struct): """ Couldn't create External sharing report. :ivar team_log.ExternalSharingReportFailedDetails.failure_reason: Failure reason. """ __slots__ = [ '_failure_reason_value', ] _has_required_fields = True def __init__(self, failure_reason=None): self._failure_reason_value = bb.NOT_SET if failure_reason is not None: self.failure_reason = failure_reason # Instance attribute type: team.TeamReportFailureReason (validator is set below) failure_reason = bb.Attribute("failure_reason", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalSharingReportFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalSharingReportFailedDetails_validator = bv.Struct(ExternalSharingReportFailedDetails) class ExternalSharingReportFailedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalSharingReportFailedType, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalSharingReportFailedType_validator = bv.Struct(ExternalSharingReportFailedType) class ExternalUserLogInfo(bb.Struct): """ A user without a Dropbox account. :ivar team_log.ExternalUserLogInfo.user_identifier: An external user identifier. :ivar team_log.ExternalUserLogInfo.identifier_type: Identifier type. """ __slots__ = [ '_user_identifier_value', '_identifier_type_value', ] _has_required_fields = True def __init__(self, user_identifier=None, identifier_type=None): self._user_identifier_value = bb.NOT_SET self._identifier_type_value = bb.NOT_SET if user_identifier is not None: self.user_identifier = user_identifier if identifier_type is not None: self.identifier_type = identifier_type # Instance attribute type: str (validator is set below) user_identifier = bb.Attribute("user_identifier") # Instance attribute type: IdentifierType (validator is set below) identifier_type = bb.Attribute("identifier_type", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalUserLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalUserLogInfo_validator = bv.Struct(ExternalUserLogInfo) class FailureDetailsLogInfo(bb.Struct): """ Provides details about a failure :ivar team_log.FailureDetailsLogInfo.user_friendly_message: A user friendly explanation of the error. :ivar team_log.FailureDetailsLogInfo.technical_error_message: A technical explanation of the error. This is relevant for some errors. """ __slots__ = [ '_user_friendly_message_value', '_technical_error_message_value', ] _has_required_fields = False def __init__(self, user_friendly_message=None, technical_error_message=None): self._user_friendly_message_value = bb.NOT_SET self._technical_error_message_value = bb.NOT_SET if user_friendly_message is not None: self.user_friendly_message = user_friendly_message if technical_error_message is not None: self.technical_error_message = technical_error_message # Instance attribute type: str (validator is set below) user_friendly_message = bb.Attribute("user_friendly_message", nullable=True) # Instance attribute type: str (validator is set below) technical_error_message = bb.Attribute("technical_error_message", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FailureDetailsLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) FailureDetailsLogInfo_validator = bv.Struct(FailureDetailsLogInfo) class FedAdminRole(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition enterprise_admin = None # Attribute is overwritten below the class definition not_enterprise_admin = None # Attribute is overwritten below the class definition other = None def is_enterprise_admin(self): """ Check if the union tag is ``enterprise_admin``. :rtype: bool """ return self._tag == 'enterprise_admin' def is_not_enterprise_admin(self): """ Check if the union tag is ``not_enterprise_admin``. :rtype: bool """ return self._tag == 'not_enterprise_admin' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FedAdminRole, self)._process_custom_annotations(annotation_type, field_path, processor) FedAdminRole_validator = bv.Union(FedAdminRole) class FedExtraDetails(bb.Union): """ More details about the organization or team. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar OrganizationDetails FedExtraDetails.organization: More details about the organization. :ivar TeamDetails FedExtraDetails.team: More details about the team. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def organization(cls, val): """ Create an instance of this class set to the ``organization`` tag with value ``val``. :param OrganizationDetails val: :rtype: FedExtraDetails """ return cls('organization', val) @classmethod def team(cls, val): """ Create an instance of this class set to the ``team`` tag with value ``val``. :param TeamDetails val: :rtype: FedExtraDetails """ return cls('team', val) def is_organization(self): """ Check if the union tag is ``organization``. :rtype: bool """ return self._tag == 'organization' def is_team(self): """ Check if the union tag is ``team``. :rtype: bool """ return self._tag == 'team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_organization(self): """ More details about the organization. Only call this if :meth:`is_organization` is true. :rtype: OrganizationDetails """ if not self.is_organization(): raise AttributeError("tag 'organization' not set") return self._value def get_team(self): """ More details about the team. Only call this if :meth:`is_team` is true. :rtype: TeamDetails """ if not self.is_team(): raise AttributeError("tag 'team' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(FedExtraDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FedExtraDetails_validator = bv.Union(FedExtraDetails) class FedHandshakeAction(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition accepted_invite = None # Attribute is overwritten below the class definition canceled_invite = None # Attribute is overwritten below the class definition invite_expired = None # Attribute is overwritten below the class definition invited = None # Attribute is overwritten below the class definition rejected_invite = None # Attribute is overwritten below the class definition removed_team = None # Attribute is overwritten below the class definition other = None def is_accepted_invite(self): """ Check if the union tag is ``accepted_invite``. :rtype: bool """ return self._tag == 'accepted_invite' def is_canceled_invite(self): """ Check if the union tag is ``canceled_invite``. :rtype: bool """ return self._tag == 'canceled_invite' def is_invite_expired(self): """ Check if the union tag is ``invite_expired``. :rtype: bool """ return self._tag == 'invite_expired' def is_invited(self): """ Check if the union tag is ``invited``. :rtype: bool """ return self._tag == 'invited' def is_rejected_invite(self): """ Check if the union tag is ``rejected_invite``. :rtype: bool """ return self._tag == 'rejected_invite' def is_removed_team(self): """ Check if the union tag is ``removed_team``. :rtype: bool """ return self._tag == 'removed_team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FedHandshakeAction, self)._process_custom_annotations(annotation_type, field_path, processor) FedHandshakeAction_validator = bv.Union(FedHandshakeAction) class FederationStatusChangeAdditionalInfo(bb.Union): """ Additional information about the organization or connected team This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar ConnectedTeamName FederationStatusChangeAdditionalInfo.connected_team_name: The name of the team. :ivar NonTrustedTeamDetails FederationStatusChangeAdditionalInfo.non_trusted_team_details: The email to which the request was sent. :ivar OrganizationName FederationStatusChangeAdditionalInfo.organization_name: The name of the organization. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def connected_team_name(cls, val): """ Create an instance of this class set to the ``connected_team_name`` tag with value ``val``. :param ConnectedTeamName val: :rtype: FederationStatusChangeAdditionalInfo """ return cls('connected_team_name', val) @classmethod def non_trusted_team_details(cls, val): """ Create an instance of this class set to the ``non_trusted_team_details`` tag with value ``val``. :param NonTrustedTeamDetails val: :rtype: FederationStatusChangeAdditionalInfo """ return cls('non_trusted_team_details', val) @classmethod def organization_name(cls, val): """ Create an instance of this class set to the ``organization_name`` tag with value ``val``. :param OrganizationName val: :rtype: FederationStatusChangeAdditionalInfo """ return cls('organization_name', val) def is_connected_team_name(self): """ Check if the union tag is ``connected_team_name``. :rtype: bool """ return self._tag == 'connected_team_name' def is_non_trusted_team_details(self): """ Check if the union tag is ``non_trusted_team_details``. :rtype: bool """ return self._tag == 'non_trusted_team_details' def is_organization_name(self): """ Check if the union tag is ``organization_name``. :rtype: bool """ return self._tag == 'organization_name' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_connected_team_name(self): """ The name of the team. Only call this if :meth:`is_connected_team_name` is true. :rtype: ConnectedTeamName """ if not self.is_connected_team_name(): raise AttributeError("tag 'connected_team_name' not set") return self._value def get_non_trusted_team_details(self): """ The email to which the request was sent. Only call this if :meth:`is_non_trusted_team_details` is true. :rtype: NonTrustedTeamDetails """ if not self.is_non_trusted_team_details(): raise AttributeError("tag 'non_trusted_team_details' not set") return self._value def get_organization_name(self): """ The name of the organization. Only call this if :meth:`is_organization_name` is true. :rtype: OrganizationName """ if not self.is_organization_name(): raise AttributeError("tag 'organization_name' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(FederationStatusChangeAdditionalInfo, self)._process_custom_annotations(annotation_type, field_path, processor) FederationStatusChangeAdditionalInfo_validator = bv.Union(FederationStatusChangeAdditionalInfo) class FileAddCommentDetails(bb.Struct): """ Added file comment. :ivar team_log.FileAddCommentDetails.comment_text: Comment text. """ __slots__ = [ '_comment_text_value', ] _has_required_fields = False def __init__(self, comment_text=None): self._comment_text_value = bb.NOT_SET if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileAddCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileAddCommentDetails_validator = bv.Struct(FileAddCommentDetails) class FileAddCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileAddCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) FileAddCommentType_validator = bv.Struct(FileAddCommentType) class FileAddDetails(bb.Struct): """ Added files and/or folders. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileAddDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileAddDetails_validator = bv.Struct(FileAddDetails) class FileAddFromAutomationDetails(bb.Struct): """ Added files and/or folders from automation. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileAddFromAutomationDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileAddFromAutomationDetails_validator = bv.Struct(FileAddFromAutomationDetails) class FileAddFromAutomationType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileAddFromAutomationType, self)._process_custom_annotations(annotation_type, field_path, processor) FileAddFromAutomationType_validator = bv.Struct(FileAddFromAutomationType) class FileAddType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileAddType, self)._process_custom_annotations(annotation_type, field_path, processor) FileAddType_validator = bv.Struct(FileAddType) class FileChangeCommentSubscriptionDetails(bb.Struct): """ Subscribed to or unsubscribed from comment notifications for file. :ivar team_log.FileChangeCommentSubscriptionDetails.new_value: New file comment subscription. :ivar team_log.FileChangeCommentSubscriptionDetails.previous_value: Previous file comment subscription. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: FileCommentNotificationPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: FileCommentNotificationPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileChangeCommentSubscriptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileChangeCommentSubscriptionDetails_validator = bv.Struct(FileChangeCommentSubscriptionDetails) class FileChangeCommentSubscriptionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileChangeCommentSubscriptionType, self)._process_custom_annotations(annotation_type, field_path, processor) FileChangeCommentSubscriptionType_validator = bv.Struct(FileChangeCommentSubscriptionType) class FileCommentNotificationPolicy(bb.Union): """ Enable or disable file comments notifications This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileCommentNotificationPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) FileCommentNotificationPolicy_validator = bv.Union(FileCommentNotificationPolicy) class FileCommentsChangePolicyDetails(bb.Struct): """ Enabled/disabled commenting on team files. :ivar team_log.FileCommentsChangePolicyDetails.new_value: New commenting on team files policy. :ivar team_log.FileCommentsChangePolicyDetails.previous_value: Previous commenting on team files policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: FileCommentsPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: FileCommentsPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileCommentsChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileCommentsChangePolicyDetails_validator = bv.Struct(FileCommentsChangePolicyDetails) class FileCommentsChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileCommentsChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) FileCommentsChangePolicyType_validator = bv.Struct(FileCommentsChangePolicyType) class FileCommentsPolicy(bb.Union): """ File comments policy This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileCommentsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) FileCommentsPolicy_validator = bv.Union(FileCommentsPolicy) class FileCopyDetails(bb.Struct): """ Copied files and/or folders. :ivar team_log.FileCopyDetails.relocate_action_details: Relocate action details. """ __slots__ = [ '_relocate_action_details_value', ] _has_required_fields = True def __init__(self, relocate_action_details=None): self._relocate_action_details_value = bb.NOT_SET if relocate_action_details is not None: self.relocate_action_details = relocate_action_details # Instance attribute type: list of [RelocateAssetReferencesLogInfo] (validator is set below) relocate_action_details = bb.Attribute("relocate_action_details") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileCopyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileCopyDetails_validator = bv.Struct(FileCopyDetails) class FileCopyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileCopyType, self)._process_custom_annotations(annotation_type, field_path, processor) FileCopyType_validator = bv.Struct(FileCopyType) class FileDeleteCommentDetails(bb.Struct): """ Deleted file comment. :ivar team_log.FileDeleteCommentDetails.comment_text: Comment text. """ __slots__ = [ '_comment_text_value', ] _has_required_fields = False def __init__(self, comment_text=None): self._comment_text_value = bb.NOT_SET if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileDeleteCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileDeleteCommentDetails_validator = bv.Struct(FileDeleteCommentDetails) class FileDeleteCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileDeleteCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) FileDeleteCommentType_validator = bv.Struct(FileDeleteCommentType) class FileDeleteDetails(bb.Struct): """ Deleted files and/or folders. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileDeleteDetails_validator = bv.Struct(FileDeleteDetails) class FileDeleteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor) FileDeleteType_validator = bv.Struct(FileDeleteType) class FileDownloadDetails(bb.Struct): """ Downloaded files and/or folders. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileDownloadDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileDownloadDetails_validator = bv.Struct(FileDownloadDetails) class FileDownloadType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileDownloadType, self)._process_custom_annotations(annotation_type, field_path, processor) FileDownloadType_validator = bv.Struct(FileDownloadType) class FileEditCommentDetails(bb.Struct): """ Edited file comment. :ivar team_log.FileEditCommentDetails.comment_text: Comment text. :ivar team_log.FileEditCommentDetails.previous_comment_text: Previous comment text. """ __slots__ = [ '_comment_text_value', '_previous_comment_text_value', ] _has_required_fields = True def __init__(self, previous_comment_text=None, comment_text=None): self._comment_text_value = bb.NOT_SET self._previous_comment_text_value = bb.NOT_SET if comment_text is not None: self.comment_text = comment_text if previous_comment_text is not None: self.previous_comment_text = previous_comment_text # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) # Instance attribute type: str (validator is set below) previous_comment_text = bb.Attribute("previous_comment_text") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileEditCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileEditCommentDetails_validator = bv.Struct(FileEditCommentDetails) class FileEditCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileEditCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) FileEditCommentType_validator = bv.Struct(FileEditCommentType) class FileEditDetails(bb.Struct): """ Edited files. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileEditDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileEditDetails_validator = bv.Struct(FileEditDetails) class FileEditType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileEditType, self)._process_custom_annotations(annotation_type, field_path, processor) FileEditType_validator = bv.Struct(FileEditType) class FileGetCopyReferenceDetails(bb.Struct): """ Created copy reference to file/folder. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileGetCopyReferenceDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileGetCopyReferenceDetails_validator = bv.Struct(FileGetCopyReferenceDetails) class FileGetCopyReferenceType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileGetCopyReferenceType, self)._process_custom_annotations(annotation_type, field_path, processor) FileGetCopyReferenceType_validator = bv.Struct(FileGetCopyReferenceType) class FileLikeCommentDetails(bb.Struct): """ Liked file comment. :ivar team_log.FileLikeCommentDetails.comment_text: Comment text. """ __slots__ = [ '_comment_text_value', ] _has_required_fields = False def __init__(self, comment_text=None): self._comment_text_value = bb.NOT_SET if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLikeCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileLikeCommentDetails_validator = bv.Struct(FileLikeCommentDetails) class FileLikeCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLikeCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) FileLikeCommentType_validator = bv.Struct(FileLikeCommentType) class FileLockingLockStatusChangedDetails(bb.Struct): """ Locked/unlocked editing for a file. :ivar team_log.FileLockingLockStatusChangedDetails.previous_value: Previous lock status of the file. :ivar team_log.FileLockingLockStatusChangedDetails.new_value: New lock status of the file. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: LockStatus (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: LockStatus (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLockingLockStatusChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileLockingLockStatusChangedDetails_validator = bv.Struct(FileLockingLockStatusChangedDetails) class FileLockingLockStatusChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLockingLockStatusChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) FileLockingLockStatusChangedType_validator = bv.Struct(FileLockingLockStatusChangedType) class FileLockingPolicyChangedDetails(bb.Struct): """ Changed file locking policy for team. :ivar team_log.FileLockingPolicyChangedDetails.new_value: New file locking policy. :ivar team_log.FileLockingPolicyChangedDetails.previous_value: Previous file locking policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: team_policies.FileLockingPolicyState (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: team_policies.FileLockingPolicyState (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLockingPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileLockingPolicyChangedDetails_validator = bv.Struct(FileLockingPolicyChangedDetails) class FileLockingPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLockingPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) FileLockingPolicyChangedType_validator = bv.Struct(FileLockingPolicyChangedType) class FileOrFolderLogInfo(bb.Struct): """ Generic information relevant both for files and folders :ivar team_log.FileOrFolderLogInfo.path: Path relative to event context. :ivar team_log.FileOrFolderLogInfo.display_name: Display name. :ivar team_log.FileOrFolderLogInfo.file_id: Unique ID. :ivar team_log.FileOrFolderLogInfo.file_size: File or folder size in bytes. """ __slots__ = [ '_path_value', '_display_name_value', '_file_id_value', '_file_size_value', ] _has_required_fields = True def __init__(self, path=None, display_name=None, file_id=None, file_size=None): self._path_value = bb.NOT_SET self._display_name_value = bb.NOT_SET self._file_id_value = bb.NOT_SET self._file_size_value = bb.NOT_SET if path is not None: self.path = path if display_name is not None: self.display_name = display_name if file_id is not None: self.file_id = file_id if file_size is not None: self.file_size = file_size # Instance attribute type: PathLogInfo (validator is set below) path = bb.Attribute("path", user_defined=True) # Instance attribute type: str (validator is set below) display_name = bb.Attribute("display_name", nullable=True) # Instance attribute type: str (validator is set below) file_id = bb.Attribute("file_id", nullable=True) # Instance attribute type: int (validator is set below) file_size = bb.Attribute("file_size", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileOrFolderLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) FileOrFolderLogInfo_validator = bv.Struct(FileOrFolderLogInfo) class FileLogInfo(FileOrFolderLogInfo): """ File's logged information. """ __slots__ = [ ] _has_required_fields = True def __init__(self, path=None, display_name=None, file_id=None, file_size=None): super(FileLogInfo, self).__init__(path, display_name, file_id, file_size) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) FileLogInfo_validator = bv.Struct(FileLogInfo) class FileMoveDetails(bb.Struct): """ Moved files and/or folders. :ivar team_log.FileMoveDetails.relocate_action_details: Relocate action details. """ __slots__ = [ '_relocate_action_details_value', ] _has_required_fields = True def __init__(self, relocate_action_details=None): self._relocate_action_details_value = bb.NOT_SET if relocate_action_details is not None: self.relocate_action_details = relocate_action_details # Instance attribute type: list of [RelocateAssetReferencesLogInfo] (validator is set below) relocate_action_details = bb.Attribute("relocate_action_details") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileMoveDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileMoveDetails_validator = bv.Struct(FileMoveDetails) class FileMoveType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileMoveType, self)._process_custom_annotations(annotation_type, field_path, processor) FileMoveType_validator = bv.Struct(FileMoveType) class FilePermanentlyDeleteDetails(bb.Struct): """ Permanently deleted files and/or folders. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FilePermanentlyDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FilePermanentlyDeleteDetails_validator = bv.Struct(FilePermanentlyDeleteDetails) class FilePermanentlyDeleteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FilePermanentlyDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor) FilePermanentlyDeleteType_validator = bv.Struct(FilePermanentlyDeleteType) class FilePreviewDetails(bb.Struct): """ Previewed files and/or folders. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FilePreviewDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FilePreviewDetails_validator = bv.Struct(FilePreviewDetails) class FilePreviewType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FilePreviewType, self)._process_custom_annotations(annotation_type, field_path, processor) FilePreviewType_validator = bv.Struct(FilePreviewType) class FileProviderMigrationPolicyChangedDetails(bb.Struct): """ Changed File Provider Migration policy for team. :ivar team_log.FileProviderMigrationPolicyChangedDetails.new_value: To. :ivar team_log.FileProviderMigrationPolicyChangedDetails.previous_value: From. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: team_policies.FileProviderMigrationPolicyState (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: team_policies.FileProviderMigrationPolicyState (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileProviderMigrationPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileProviderMigrationPolicyChangedDetails_validator = bv.Struct(FileProviderMigrationPolicyChangedDetails) class FileProviderMigrationPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileProviderMigrationPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) FileProviderMigrationPolicyChangedType_validator = bv.Struct(FileProviderMigrationPolicyChangedType) class FileRenameDetails(bb.Struct): """ Renamed files and/or folders. :ivar team_log.FileRenameDetails.relocate_action_details: Relocate action details. """ __slots__ = [ '_relocate_action_details_value', ] _has_required_fields = True def __init__(self, relocate_action_details=None): self._relocate_action_details_value = bb.NOT_SET if relocate_action_details is not None: self.relocate_action_details = relocate_action_details # Instance attribute type: list of [RelocateAssetReferencesLogInfo] (validator is set below) relocate_action_details = bb.Attribute("relocate_action_details") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRenameDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRenameDetails_validator = bv.Struct(FileRenameDetails) class FileRenameType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRenameType, self)._process_custom_annotations(annotation_type, field_path, processor) FileRenameType_validator = bv.Struct(FileRenameType) class FileRequestChangeDetails(bb.Struct): """ Changed file request. :ivar team_log.FileRequestChangeDetails.file_request_id: File request id. Might be missing due to historical data gap. :ivar team_log.FileRequestChangeDetails.previous_details: Previous file request details. Might be missing due to historical data gap. :ivar team_log.FileRequestChangeDetails.new_details: New file request details. """ __slots__ = [ '_file_request_id_value', '_previous_details_value', '_new_details_value', ] _has_required_fields = True def __init__(self, new_details=None, file_request_id=None, previous_details=None): self._file_request_id_value = bb.NOT_SET self._previous_details_value = bb.NOT_SET self._new_details_value = bb.NOT_SET if file_request_id is not None: self.file_request_id = file_request_id if previous_details is not None: self.previous_details = previous_details if new_details is not None: self.new_details = new_details # Instance attribute type: str (validator is set below) file_request_id = bb.Attribute("file_request_id", nullable=True) # Instance attribute type: FileRequestDetails (validator is set below) previous_details = bb.Attribute("previous_details", nullable=True, user_defined=True) # Instance attribute type: FileRequestDetails (validator is set below) new_details = bb.Attribute("new_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestChangeDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestChangeDetails_validator = bv.Struct(FileRequestChangeDetails) class FileRequestChangeType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestChangeType, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestChangeType_validator = bv.Struct(FileRequestChangeType) class FileRequestCloseDetails(bb.Struct): """ Closed file request. :ivar team_log.FileRequestCloseDetails.file_request_id: File request id. Might be missing due to historical data gap. :ivar team_log.FileRequestCloseDetails.previous_details: Previous file request details. Might be missing due to historical data gap. """ __slots__ = [ '_file_request_id_value', '_previous_details_value', ] _has_required_fields = False def __init__(self, file_request_id=None, previous_details=None): self._file_request_id_value = bb.NOT_SET self._previous_details_value = bb.NOT_SET if file_request_id is not None: self.file_request_id = file_request_id if previous_details is not None: self.previous_details = previous_details # Instance attribute type: str (validator is set below) file_request_id = bb.Attribute("file_request_id", nullable=True) # Instance attribute type: FileRequestDetails (validator is set below) previous_details = bb.Attribute("previous_details", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestCloseDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestCloseDetails_validator = bv.Struct(FileRequestCloseDetails) class FileRequestCloseType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestCloseType, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestCloseType_validator = bv.Struct(FileRequestCloseType) class FileRequestCreateDetails(bb.Struct): """ Created file request. :ivar team_log.FileRequestCreateDetails.file_request_id: File request id. Might be missing due to historical data gap. :ivar team_log.FileRequestCreateDetails.request_details: File request details. Might be missing due to historical data gap. """ __slots__ = [ '_file_request_id_value', '_request_details_value', ] _has_required_fields = False def __init__(self, file_request_id=None, request_details=None): self._file_request_id_value = bb.NOT_SET self._request_details_value = bb.NOT_SET if file_request_id is not None: self.file_request_id = file_request_id if request_details is not None: self.request_details = request_details # Instance attribute type: str (validator is set below) file_request_id = bb.Attribute("file_request_id", nullable=True) # Instance attribute type: FileRequestDetails (validator is set below) request_details = bb.Attribute("request_details", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestCreateDetails_validator = bv.Struct(FileRequestCreateDetails) class FileRequestCreateType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestCreateType, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestCreateType_validator = bv.Struct(FileRequestCreateType) class FileRequestDeadline(bb.Struct): """ File request deadline :ivar team_log.FileRequestDeadline.deadline: The deadline for this file request. Might be missing due to historical data gap. :ivar team_log.FileRequestDeadline.allow_late_uploads: If set, allow uploads after the deadline has passed. """ __slots__ = [ '_deadline_value', '_allow_late_uploads_value', ] _has_required_fields = False def __init__(self, deadline=None, allow_late_uploads=None): self._deadline_value = bb.NOT_SET self._allow_late_uploads_value = bb.NOT_SET if deadline is not None: self.deadline = deadline if allow_late_uploads is not None: self.allow_late_uploads = allow_late_uploads # Instance attribute type: datetime.datetime (validator is set below) deadline = bb.Attribute("deadline", nullable=True) # Instance attribute type: str (validator is set below) allow_late_uploads = bb.Attribute("allow_late_uploads", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestDeadline, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestDeadline_validator = bv.Struct(FileRequestDeadline) class FileRequestDeleteDetails(bb.Struct): """ Delete file request. :ivar team_log.FileRequestDeleteDetails.file_request_id: File request id. Might be missing due to historical data gap. :ivar team_log.FileRequestDeleteDetails.previous_details: Previous file request details. Might be missing due to historical data gap. """ __slots__ = [ '_file_request_id_value', '_previous_details_value', ] _has_required_fields = False def __init__(self, file_request_id=None, previous_details=None): self._file_request_id_value = bb.NOT_SET self._previous_details_value = bb.NOT_SET if file_request_id is not None: self.file_request_id = file_request_id if previous_details is not None: self.previous_details = previous_details # Instance attribute type: str (validator is set below) file_request_id = bb.Attribute("file_request_id", nullable=True) # Instance attribute type: FileRequestDetails (validator is set below) previous_details = bb.Attribute("previous_details", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestDeleteDetails_validator = bv.Struct(FileRequestDeleteDetails) class FileRequestDeleteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestDeleteType_validator = bv.Struct(FileRequestDeleteType) class FileRequestDetails(bb.Struct): """ File request details :ivar team_log.FileRequestDetails.asset_index: Asset position in the Assets list. :ivar team_log.FileRequestDetails.deadline: File request deadline. """ __slots__ = [ '_asset_index_value', '_deadline_value', ] _has_required_fields = True def __init__(self, asset_index=None, deadline=None): self._asset_index_value = bb.NOT_SET self._deadline_value = bb.NOT_SET if asset_index is not None: self.asset_index = asset_index if deadline is not None: self.deadline = deadline # Instance attribute type: int (validator is set below) asset_index = bb.Attribute("asset_index") # Instance attribute type: FileRequestDeadline (validator is set below) deadline = bb.Attribute("deadline", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestDetails_validator = bv.Struct(FileRequestDetails) class FileRequestReceiveFileDetails(bb.Struct): """ Received files for file request. :ivar team_log.FileRequestReceiveFileDetails.file_request_id: File request id. Might be missing due to historical data gap. :ivar team_log.FileRequestReceiveFileDetails.file_request_details: File request details. Might be missing due to historical data gap. :ivar team_log.FileRequestReceiveFileDetails.submitted_file_names: Submitted file names. :ivar team_log.FileRequestReceiveFileDetails.submitter_name: The name as provided by the submitter. :ivar team_log.FileRequestReceiveFileDetails.submitter_email: The email as provided by the submitter. """ __slots__ = [ '_file_request_id_value', '_file_request_details_value', '_submitted_file_names_value', '_submitter_name_value', '_submitter_email_value', ] _has_required_fields = True def __init__(self, submitted_file_names=None, file_request_id=None, file_request_details=None, submitter_name=None, submitter_email=None): self._file_request_id_value = bb.NOT_SET self._file_request_details_value = bb.NOT_SET self._submitted_file_names_value = bb.NOT_SET self._submitter_name_value = bb.NOT_SET self._submitter_email_value = bb.NOT_SET if file_request_id is not None: self.file_request_id = file_request_id if file_request_details is not None: self.file_request_details = file_request_details if submitted_file_names is not None: self.submitted_file_names = submitted_file_names if submitter_name is not None: self.submitter_name = submitter_name if submitter_email is not None: self.submitter_email = submitter_email # Instance attribute type: str (validator is set below) file_request_id = bb.Attribute("file_request_id", nullable=True) # Instance attribute type: FileRequestDetails (validator is set below) file_request_details = bb.Attribute("file_request_details", nullable=True, user_defined=True) # Instance attribute type: list of [str] (validator is set below) submitted_file_names = bb.Attribute("submitted_file_names") # Instance attribute type: str (validator is set below) submitter_name = bb.Attribute("submitter_name", nullable=True) # Instance attribute type: str (validator is set below) submitter_email = bb.Attribute("submitter_email", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestReceiveFileDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestReceiveFileDetails_validator = bv.Struct(FileRequestReceiveFileDetails) class FileRequestReceiveFileType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestReceiveFileType, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestReceiveFileType_validator = bv.Struct(FileRequestReceiveFileType) class FileRequestsChangePolicyDetails(bb.Struct): """ Enabled/disabled file requests. :ivar team_log.FileRequestsChangePolicyDetails.new_value: New file requests policy. :ivar team_log.FileRequestsChangePolicyDetails.previous_value: Previous file requests policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: FileRequestsPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: FileRequestsPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestsChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestsChangePolicyDetails_validator = bv.Struct(FileRequestsChangePolicyDetails) class FileRequestsChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestsChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestsChangePolicyType_validator = bv.Struct(FileRequestsChangePolicyType) class FileRequestsEmailsEnabledDetails(bb.Struct): """ Enabled file request emails for everyone. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestsEmailsEnabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestsEmailsEnabledDetails_validator = bv.Struct(FileRequestsEmailsEnabledDetails) class FileRequestsEmailsEnabledType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestsEmailsEnabledType, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestsEmailsEnabledType_validator = bv.Struct(FileRequestsEmailsEnabledType) class FileRequestsEmailsRestrictedToTeamOnlyDetails(bb.Struct): """ Enabled file request emails for team. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestsEmailsRestrictedToTeamOnlyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestsEmailsRestrictedToTeamOnlyDetails_validator = bv.Struct(FileRequestsEmailsRestrictedToTeamOnlyDetails) class FileRequestsEmailsRestrictedToTeamOnlyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestsEmailsRestrictedToTeamOnlyType, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestsEmailsRestrictedToTeamOnlyType_validator = bv.Struct(FileRequestsEmailsRestrictedToTeamOnlyType) class FileRequestsPolicy(bb.Union): """ File requests policy This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRequestsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) FileRequestsPolicy_validator = bv.Union(FileRequestsPolicy) class FileResolveCommentDetails(bb.Struct): """ Resolved file comment. :ivar team_log.FileResolveCommentDetails.comment_text: Comment text. """ __slots__ = [ '_comment_text_value', ] _has_required_fields = False def __init__(self, comment_text=None): self._comment_text_value = bb.NOT_SET if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileResolveCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileResolveCommentDetails_validator = bv.Struct(FileResolveCommentDetails) class FileResolveCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileResolveCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) FileResolveCommentType_validator = bv.Struct(FileResolveCommentType) class FileRestoreDetails(bb.Struct): """ Restored deleted files and/or folders. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRestoreDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRestoreDetails_validator = bv.Struct(FileRestoreDetails) class FileRestoreType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRestoreType, self)._process_custom_annotations(annotation_type, field_path, processor) FileRestoreType_validator = bv.Struct(FileRestoreType) class FileRevertDetails(bb.Struct): """ Reverted files to previous version. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRevertDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRevertDetails_validator = bv.Struct(FileRevertDetails) class FileRevertType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRevertType, self)._process_custom_annotations(annotation_type, field_path, processor) FileRevertType_validator = bv.Struct(FileRevertType) class FileRollbackChangesDetails(bb.Struct): """ Rolled back file actions. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRollbackChangesDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileRollbackChangesDetails_validator = bv.Struct(FileRollbackChangesDetails) class FileRollbackChangesType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileRollbackChangesType, self)._process_custom_annotations(annotation_type, field_path, processor) FileRollbackChangesType_validator = bv.Struct(FileRollbackChangesType) class FileSaveCopyReferenceDetails(bb.Struct): """ Saved file/folder using copy reference. :ivar team_log.FileSaveCopyReferenceDetails.relocate_action_details: Relocate action details. """ __slots__ = [ '_relocate_action_details_value', ] _has_required_fields = True def __init__(self, relocate_action_details=None): self._relocate_action_details_value = bb.NOT_SET if relocate_action_details is not None: self.relocate_action_details = relocate_action_details # Instance attribute type: list of [RelocateAssetReferencesLogInfo] (validator is set below) relocate_action_details = bb.Attribute("relocate_action_details") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileSaveCopyReferenceDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileSaveCopyReferenceDetails_validator = bv.Struct(FileSaveCopyReferenceDetails) class FileSaveCopyReferenceType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileSaveCopyReferenceType, self)._process_custom_annotations(annotation_type, field_path, processor) FileSaveCopyReferenceType_validator = bv.Struct(FileSaveCopyReferenceType) class FileTransfersFileAddDetails(bb.Struct): """ Transfer files added. :ivar team_log.FileTransfersFileAddDetails.file_transfer_id: Transfer id. """ __slots__ = [ '_file_transfer_id_value', ] _has_required_fields = True def __init__(self, file_transfer_id=None): self._file_transfer_id_value = bb.NOT_SET if file_transfer_id is not None: self.file_transfer_id = file_transfer_id # Instance attribute type: str (validator is set below) file_transfer_id = bb.Attribute("file_transfer_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersFileAddDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersFileAddDetails_validator = bv.Struct(FileTransfersFileAddDetails) class FileTransfersFileAddType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersFileAddType, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersFileAddType_validator = bv.Struct(FileTransfersFileAddType) class FileTransfersPolicy(bb.Union): """ File transfers policy This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersPolicy_validator = bv.Union(FileTransfersPolicy) class FileTransfersPolicyChangedDetails(bb.Struct): """ Changed file transfers policy for team. :ivar team_log.FileTransfersPolicyChangedDetails.new_value: New file transfers policy. :ivar team_log.FileTransfersPolicyChangedDetails.previous_value: Previous file transfers policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: FileTransfersPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: FileTransfersPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersPolicyChangedDetails_validator = bv.Struct(FileTransfersPolicyChangedDetails) class FileTransfersPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersPolicyChangedType_validator = bv.Struct(FileTransfersPolicyChangedType) class FileTransfersTransferDeleteDetails(bb.Struct): """ Deleted transfer. :ivar team_log.FileTransfersTransferDeleteDetails.file_transfer_id: Transfer id. """ __slots__ = [ '_file_transfer_id_value', ] _has_required_fields = True def __init__(self, file_transfer_id=None): self._file_transfer_id_value = bb.NOT_SET if file_transfer_id is not None: self.file_transfer_id = file_transfer_id # Instance attribute type: str (validator is set below) file_transfer_id = bb.Attribute("file_transfer_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersTransferDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersTransferDeleteDetails_validator = bv.Struct(FileTransfersTransferDeleteDetails) class FileTransfersTransferDeleteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersTransferDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersTransferDeleteType_validator = bv.Struct(FileTransfersTransferDeleteType) class FileTransfersTransferDownloadDetails(bb.Struct): """ Transfer downloaded. :ivar team_log.FileTransfersTransferDownloadDetails.file_transfer_id: Transfer id. """ __slots__ = [ '_file_transfer_id_value', ] _has_required_fields = True def __init__(self, file_transfer_id=None): self._file_transfer_id_value = bb.NOT_SET if file_transfer_id is not None: self.file_transfer_id = file_transfer_id # Instance attribute type: str (validator is set below) file_transfer_id = bb.Attribute("file_transfer_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersTransferDownloadDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersTransferDownloadDetails_validator = bv.Struct(FileTransfersTransferDownloadDetails) class FileTransfersTransferDownloadType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersTransferDownloadType, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersTransferDownloadType_validator = bv.Struct(FileTransfersTransferDownloadType) class FileTransfersTransferSendDetails(bb.Struct): """ Sent transfer. :ivar team_log.FileTransfersTransferSendDetails.file_transfer_id: Transfer id. """ __slots__ = [ '_file_transfer_id_value', ] _has_required_fields = True def __init__(self, file_transfer_id=None): self._file_transfer_id_value = bb.NOT_SET if file_transfer_id is not None: self.file_transfer_id = file_transfer_id # Instance attribute type: str (validator is set below) file_transfer_id = bb.Attribute("file_transfer_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersTransferSendDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersTransferSendDetails_validator = bv.Struct(FileTransfersTransferSendDetails) class FileTransfersTransferSendType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersTransferSendType, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersTransferSendType_validator = bv.Struct(FileTransfersTransferSendType) class FileTransfersTransferViewDetails(bb.Struct): """ Viewed transfer. :ivar team_log.FileTransfersTransferViewDetails.file_transfer_id: Transfer id. """ __slots__ = [ '_file_transfer_id_value', ] _has_required_fields = True def __init__(self, file_transfer_id=None): self._file_transfer_id_value = bb.NOT_SET if file_transfer_id is not None: self.file_transfer_id = file_transfer_id # Instance attribute type: str (validator is set below) file_transfer_id = bb.Attribute("file_transfer_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersTransferViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersTransferViewDetails_validator = bv.Struct(FileTransfersTransferViewDetails) class FileTransfersTransferViewType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileTransfersTransferViewType, self)._process_custom_annotations(annotation_type, field_path, processor) FileTransfersTransferViewType_validator = bv.Struct(FileTransfersTransferViewType) class FileUnlikeCommentDetails(bb.Struct): """ Unliked file comment. :ivar team_log.FileUnlikeCommentDetails.comment_text: Comment text. """ __slots__ = [ '_comment_text_value', ] _has_required_fields = False def __init__(self, comment_text=None): self._comment_text_value = bb.NOT_SET if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileUnlikeCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileUnlikeCommentDetails_validator = bv.Struct(FileUnlikeCommentDetails) class FileUnlikeCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileUnlikeCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) FileUnlikeCommentType_validator = bv.Struct(FileUnlikeCommentType) class FileUnresolveCommentDetails(bb.Struct): """ Unresolved file comment. :ivar team_log.FileUnresolveCommentDetails.comment_text: Comment text. """ __slots__ = [ '_comment_text_value', ] _has_required_fields = False def __init__(self, comment_text=None): self._comment_text_value = bb.NOT_SET if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileUnresolveCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FileUnresolveCommentDetails_validator = bv.Struct(FileUnresolveCommentDetails) class FileUnresolveCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileUnresolveCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) FileUnresolveCommentType_validator = bv.Struct(FileUnresolveCommentType) class FolderLinkRestrictionPolicy(bb.Union): """ Policy for deciding whether applying link restrictions on all team owned folders This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderLinkRestrictionPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) FolderLinkRestrictionPolicy_validator = bv.Union(FolderLinkRestrictionPolicy) class FolderLinkRestrictionPolicyChangedDetails(bb.Struct): """ Changed folder link restrictions policy for team. :ivar team_log.FolderLinkRestrictionPolicyChangedDetails.new_value: To. :ivar team_log.FolderLinkRestrictionPolicyChangedDetails.previous_value: From. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: FolderLinkRestrictionPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: FolderLinkRestrictionPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderLinkRestrictionPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FolderLinkRestrictionPolicyChangedDetails_validator = bv.Struct(FolderLinkRestrictionPolicyChangedDetails) class FolderLinkRestrictionPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderLinkRestrictionPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) FolderLinkRestrictionPolicyChangedType_validator = bv.Struct(FolderLinkRestrictionPolicyChangedType) class FolderLogInfo(FileOrFolderLogInfo): """ Folder's logged information. :ivar team_log.FolderLogInfo.file_count: Number of files within the folder. """ __slots__ = [ '_file_count_value', ] _has_required_fields = True def __init__(self, path=None, display_name=None, file_id=None, file_size=None, file_count=None): super(FolderLogInfo, self).__init__(path, display_name, file_id, file_size) self._file_count_value = bb.NOT_SET if file_count is not None: self.file_count = file_count # Instance attribute type: int (validator is set below) file_count = bb.Attribute("file_count", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) FolderLogInfo_validator = bv.Struct(FolderLogInfo) class FolderOverviewDescriptionChangedDetails(bb.Struct): """ Updated folder overview. :ivar team_log.FolderOverviewDescriptionChangedDetails.folder_overview_location_asset: Folder Overview location position in the Assets list. """ __slots__ = [ '_folder_overview_location_asset_value', ] _has_required_fields = True def __init__(self, folder_overview_location_asset=None): self._folder_overview_location_asset_value = bb.NOT_SET if folder_overview_location_asset is not None: self.folder_overview_location_asset = folder_overview_location_asset # Instance attribute type: int (validator is set below) folder_overview_location_asset = bb.Attribute("folder_overview_location_asset") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderOverviewDescriptionChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FolderOverviewDescriptionChangedDetails_validator = bv.Struct(FolderOverviewDescriptionChangedDetails) class FolderOverviewDescriptionChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderOverviewDescriptionChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) FolderOverviewDescriptionChangedType_validator = bv.Struct(FolderOverviewDescriptionChangedType) class FolderOverviewItemPinnedDetails(bb.Struct): """ Pinned item to folder overview. :ivar team_log.FolderOverviewItemPinnedDetails.folder_overview_location_asset: Folder Overview location position in the Assets list. :ivar team_log.FolderOverviewItemPinnedDetails.pinned_items_asset_indices: Pinned items positions in the Assets list. """ __slots__ = [ '_folder_overview_location_asset_value', '_pinned_items_asset_indices_value', ] _has_required_fields = True def __init__(self, folder_overview_location_asset=None, pinned_items_asset_indices=None): self._folder_overview_location_asset_value = bb.NOT_SET self._pinned_items_asset_indices_value = bb.NOT_SET if folder_overview_location_asset is not None: self.folder_overview_location_asset = folder_overview_location_asset if pinned_items_asset_indices is not None: self.pinned_items_asset_indices = pinned_items_asset_indices # Instance attribute type: int (validator is set below) folder_overview_location_asset = bb.Attribute("folder_overview_location_asset") # Instance attribute type: list of [int] (validator is set below) pinned_items_asset_indices = bb.Attribute("pinned_items_asset_indices") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderOverviewItemPinnedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FolderOverviewItemPinnedDetails_validator = bv.Struct(FolderOverviewItemPinnedDetails) class FolderOverviewItemPinnedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderOverviewItemPinnedType, self)._process_custom_annotations(annotation_type, field_path, processor) FolderOverviewItemPinnedType_validator = bv.Struct(FolderOverviewItemPinnedType) class FolderOverviewItemUnpinnedDetails(bb.Struct): """ Unpinned item from folder overview. :ivar team_log.FolderOverviewItemUnpinnedDetails.folder_overview_location_asset: Folder Overview location position in the Assets list. :ivar team_log.FolderOverviewItemUnpinnedDetails.pinned_items_asset_indices: Pinned items positions in the Assets list. """ __slots__ = [ '_folder_overview_location_asset_value', '_pinned_items_asset_indices_value', ] _has_required_fields = True def __init__(self, folder_overview_location_asset=None, pinned_items_asset_indices=None): self._folder_overview_location_asset_value = bb.NOT_SET self._pinned_items_asset_indices_value = bb.NOT_SET if folder_overview_location_asset is not None: self.folder_overview_location_asset = folder_overview_location_asset if pinned_items_asset_indices is not None: self.pinned_items_asset_indices = pinned_items_asset_indices # Instance attribute type: int (validator is set below) folder_overview_location_asset = bb.Attribute("folder_overview_location_asset") # Instance attribute type: list of [int] (validator is set below) pinned_items_asset_indices = bb.Attribute("pinned_items_asset_indices") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderOverviewItemUnpinnedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) FolderOverviewItemUnpinnedDetails_validator = bv.Struct(FolderOverviewItemUnpinnedDetails) class FolderOverviewItemUnpinnedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(FolderOverviewItemUnpinnedType, self)._process_custom_annotations(annotation_type, field_path, processor) FolderOverviewItemUnpinnedType_validator = bv.Struct(FolderOverviewItemUnpinnedType) class GeoLocationLogInfo(bb.Struct): """ Geographic location details. :ivar team_log.GeoLocationLogInfo.city: City name. :ivar team_log.GeoLocationLogInfo.region: Region name. :ivar team_log.GeoLocationLogInfo.country: Country code. :ivar team_log.GeoLocationLogInfo.ip_address: IP address. """ __slots__ = [ '_city_value', '_region_value', '_country_value', '_ip_address_value', ] _has_required_fields = True def __init__(self, ip_address=None, city=None, region=None, country=None): self._city_value = bb.NOT_SET self._region_value = bb.NOT_SET self._country_value = bb.NOT_SET self._ip_address_value = bb.NOT_SET if city is not None: self.city = city if region is not None: self.region = region if country is not None: self.country = country if ip_address is not None: self.ip_address = ip_address # Instance attribute type: str (validator is set below) city = bb.Attribute("city", nullable=True) # Instance attribute type: str (validator is set below) region = bb.Attribute("region", nullable=True) # Instance attribute type: str (validator is set below) country = bb.Attribute("country", nullable=True) # Instance attribute type: str (validator is set below) ip_address = bb.Attribute("ip_address") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GeoLocationLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) GeoLocationLogInfo_validator = bv.Struct(GeoLocationLogInfo) class GetTeamEventsArg(bb.Struct): """ :ivar team_log.GetTeamEventsArg.limit: The maximal number of results to return per call. Note that some calls may not return ``limit`` number of events, and may even return no events, even with `has_more` set to true. In this case, callers should fetch again using :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events_continue`. :ivar team_log.GetTeamEventsArg.account_id: Filter the events by account ID. Return only events with this account_id as either Actor, Context, or Participants. :ivar team_log.GetTeamEventsArg.time: Filter by time range. :ivar team_log.GetTeamEventsArg.category: Filter the returned events to a single category. Note that category shouldn't be provided together with event_type. :ivar team_log.GetTeamEventsArg.event_type: Filter the returned events to a single event type. Note that event_type shouldn't be provided together with category. """ __slots__ = [ '_limit_value', '_account_id_value', '_time_value', '_category_value', '_event_type_value', ] _has_required_fields = False def __init__(self, limit=None, account_id=None, time=None, category=None, event_type=None): self._limit_value = bb.NOT_SET self._account_id_value = bb.NOT_SET self._time_value = bb.NOT_SET self._category_value = bb.NOT_SET self._event_type_value = bb.NOT_SET if limit is not None: self.limit = limit if account_id is not None: self.account_id = account_id if time is not None: self.time = time if category is not None: self.category = category if event_type is not None: self.event_type = event_type # Instance attribute type: int (validator is set below) limit = bb.Attribute("limit") # Instance attribute type: str (validator is set below) account_id = bb.Attribute("account_id", nullable=True) # Instance attribute type: team_common.TimeRange (validator is set below) time = bb.Attribute("time", nullable=True, user_defined=True) # Instance attribute type: EventCategory (validator is set below) category = bb.Attribute("category", nullable=True, user_defined=True) # Instance attribute type: EventTypeArg (validator is set below) event_type = bb.Attribute("event_type", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTeamEventsArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetTeamEventsArg_validator = bv.Struct(GetTeamEventsArg) class GetTeamEventsContinueArg(bb.Struct): """ :ivar team_log.GetTeamEventsContinueArg.cursor: Indicates from what point to get the next set of events. """ __slots__ = [ '_cursor_value', ] _has_required_fields = True def __init__(self, cursor=None): self._cursor_value = bb.NOT_SET if cursor is not None: self.cursor = cursor # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTeamEventsContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetTeamEventsContinueArg_validator = bv.Struct(GetTeamEventsContinueArg) class GetTeamEventsContinueError(bb.Union): """ Errors that can be raised when calling :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events_continue`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_log.GetTeamEventsContinueError.bad_cursor: Bad cursor. :ivar datetime.datetime team_log.GetTeamEventsContinueError.reset: Cursors are intended to be used quickly. Individual cursor values are normally valid for days, but in rare cases may be reset sooner. Cursor reset errors should be handled by fetching a new cursor from :route:`get_events`. The associated value is the approximate timestamp of the most recent event returned by the cursor. This should be used as a resumption point when calling :route:`get_events` to obtain a new cursor. """ _catch_all = 'other' # Attribute is overwritten below the class definition bad_cursor = None # Attribute is overwritten below the class definition other = None @classmethod def reset(cls, val): """ Create an instance of this class set to the ``reset`` tag with value ``val``. :param datetime.datetime val: :rtype: GetTeamEventsContinueError """ return cls('reset', val) def is_bad_cursor(self): """ Check if the union tag is ``bad_cursor``. :rtype: bool """ return self._tag == 'bad_cursor' def is_reset(self): """ Check if the union tag is ``reset``. :rtype: bool """ return self._tag == 'reset' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_reset(self): """ Cursors are intended to be used quickly. Individual cursor values are normally valid for days, but in rare cases may be reset sooner. Cursor reset errors should be handled by fetching a new cursor from :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events`. The associated value is the approximate timestamp of the most recent event returned by the cursor. This should be used as a resumption point when calling :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events` to obtain a new cursor. Only call this if :meth:`is_reset` is true. :rtype: datetime.datetime """ if not self.is_reset(): raise AttributeError("tag 'reset' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTeamEventsContinueError, self)._process_custom_annotations(annotation_type, field_path, processor) GetTeamEventsContinueError_validator = bv.Union(GetTeamEventsContinueError) class GetTeamEventsError(bb.Union): """ Errors that can be raised when calling :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_log.GetTeamEventsError.account_id_not_found: No user found matching the provided account_id. :ivar team_log.GetTeamEventsError.invalid_time_range: Invalid time range. :ivar team_log.GetTeamEventsError.invalid_filters: Invalid filters. Do not specify both event_type and category parameters for the same call. """ _catch_all = 'other' # Attribute is overwritten below the class definition account_id_not_found = None # Attribute is overwritten below the class definition invalid_time_range = None # Attribute is overwritten below the class definition invalid_filters = None # Attribute is overwritten below the class definition other = None def is_account_id_not_found(self): """ Check if the union tag is ``account_id_not_found``. :rtype: bool """ return self._tag == 'account_id_not_found' def is_invalid_time_range(self): """ Check if the union tag is ``invalid_time_range``. :rtype: bool """ return self._tag == 'invalid_time_range' def is_invalid_filters(self): """ Check if the union tag is ``invalid_filters``. :rtype: bool """ return self._tag == 'invalid_filters' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTeamEventsError, self)._process_custom_annotations(annotation_type, field_path, processor) GetTeamEventsError_validator = bv.Union(GetTeamEventsError) class GetTeamEventsResult(bb.Struct): """ :ivar team_log.GetTeamEventsResult.events: List of events. Note that events are not guaranteed to be sorted by their timestamp value. :ivar team_log.GetTeamEventsResult.cursor: Pass the cursor into :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events_continue` to obtain additional events. The value of ``cursor`` may change for each response from :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events_continue`, regardless of the value of ``has_more``; older cursor strings may expire. Thus, callers should ensure that they update their cursor based on the latest value of ``cursor`` after each call, and poll regularly if they wish to poll for new events. Callers should handle reset exceptions for expired cursors. :ivar team_log.GetTeamEventsResult.has_more: Is true if there may be additional events that have not been returned yet. An additional call to :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events_continue` can retrieve them. Note that ``has_more`` may be ``True``, even if ``events`` is empty. """ __slots__ = [ '_events_value', '_cursor_value', '_has_more_value', ] _has_required_fields = True def __init__(self, events=None, cursor=None, has_more=None): self._events_value = bb.NOT_SET self._cursor_value = bb.NOT_SET self._has_more_value = bb.NOT_SET if events is not None: self.events = events if cursor is not None: self.cursor = cursor if has_more is not None: self.has_more = has_more # Instance attribute type: list of [TeamEvent] (validator is set below) events = bb.Attribute("events") # Instance attribute type: str (validator is set below) cursor = bb.Attribute("cursor") # Instance attribute type: bool (validator is set below) has_more = bb.Attribute("has_more") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetTeamEventsResult, self)._process_custom_annotations(annotation_type, field_path, processor) GetTeamEventsResult_validator = bv.Struct(GetTeamEventsResult) class GoogleSsoChangePolicyDetails(bb.Struct): """ Enabled/disabled Google single sign-on for team. :ivar team_log.GoogleSsoChangePolicyDetails.new_value: New Google single sign-on policy. :ivar team_log.GoogleSsoChangePolicyDetails.previous_value: Previous Google single sign-on policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: GoogleSsoPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: GoogleSsoPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GoogleSsoChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GoogleSsoChangePolicyDetails_validator = bv.Struct(GoogleSsoChangePolicyDetails) class GoogleSsoChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GoogleSsoChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) GoogleSsoChangePolicyType_validator = bv.Struct(GoogleSsoChangePolicyType) class GoogleSsoPolicy(bb.Union): """ Google SSO policy This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GoogleSsoPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) GoogleSsoPolicy_validator = bv.Union(GoogleSsoPolicy) class GovernancePolicyAddFolderFailedDetails(bb.Struct): """ Couldn't add a folder to a policy. :ivar team_log.GovernancePolicyAddFolderFailedDetails.governance_policy_id: Policy ID. :ivar team_log.GovernancePolicyAddFolderFailedDetails.name: Policy name. :ivar team_log.GovernancePolicyAddFolderFailedDetails.policy_type: Policy type. :ivar team_log.GovernancePolicyAddFolderFailedDetails.folder: Folder. :ivar team_log.GovernancePolicyAddFolderFailedDetails.reason: Reason. """ __slots__ = [ '_governance_policy_id_value', '_name_value', '_policy_type_value', '_folder_value', '_reason_value', ] _has_required_fields = True def __init__(self, governance_policy_id=None, name=None, folder=None, policy_type=None, reason=None): self._governance_policy_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._policy_type_value = bb.NOT_SET self._folder_value = bb.NOT_SET self._reason_value = bb.NOT_SET if governance_policy_id is not None: self.governance_policy_id = governance_policy_id if name is not None: self.name = name if policy_type is not None: self.policy_type = policy_type if folder is not None: self.folder = folder if reason is not None: self.reason = reason # Instance attribute type: str (validator is set below) governance_policy_id = bb.Attribute("governance_policy_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: PolicyType (validator is set below) policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) folder = bb.Attribute("folder") # Instance attribute type: str (validator is set below) reason = bb.Attribute("reason", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyAddFolderFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyAddFolderFailedDetails_validator = bv.Struct(GovernancePolicyAddFolderFailedDetails) class GovernancePolicyAddFolderFailedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyAddFolderFailedType, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyAddFolderFailedType_validator = bv.Struct(GovernancePolicyAddFolderFailedType) class GovernancePolicyAddFoldersDetails(bb.Struct): """ Added folders to policy. :ivar team_log.GovernancePolicyAddFoldersDetails.governance_policy_id: Policy ID. :ivar team_log.GovernancePolicyAddFoldersDetails.name: Policy name. :ivar team_log.GovernancePolicyAddFoldersDetails.policy_type: Policy type. :ivar team_log.GovernancePolicyAddFoldersDetails.folders: Folders. """ __slots__ = [ '_governance_policy_id_value', '_name_value', '_policy_type_value', '_folders_value', ] _has_required_fields = True def __init__(self, governance_policy_id=None, name=None, policy_type=None, folders=None): self._governance_policy_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._policy_type_value = bb.NOT_SET self._folders_value = bb.NOT_SET if governance_policy_id is not None: self.governance_policy_id = governance_policy_id if name is not None: self.name = name if policy_type is not None: self.policy_type = policy_type if folders is not None: self.folders = folders # Instance attribute type: str (validator is set below) governance_policy_id = bb.Attribute("governance_policy_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: PolicyType (validator is set below) policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True) # Instance attribute type: list of [str] (validator is set below) folders = bb.Attribute("folders", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyAddFoldersDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyAddFoldersDetails_validator = bv.Struct(GovernancePolicyAddFoldersDetails) class GovernancePolicyAddFoldersType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyAddFoldersType, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyAddFoldersType_validator = bv.Struct(GovernancePolicyAddFoldersType) class GovernancePolicyContentDisposedDetails(bb.Struct): """ Content disposed. :ivar team_log.GovernancePolicyContentDisposedDetails.governance_policy_id: Policy ID. :ivar team_log.GovernancePolicyContentDisposedDetails.name: Policy name. :ivar team_log.GovernancePolicyContentDisposedDetails.policy_type: Policy type. :ivar team_log.GovernancePolicyContentDisposedDetails.disposition_type: Disposition type. """ __slots__ = [ '_governance_policy_id_value', '_name_value', '_policy_type_value', '_disposition_type_value', ] _has_required_fields = True def __init__(self, governance_policy_id=None, name=None, disposition_type=None, policy_type=None): self._governance_policy_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._policy_type_value = bb.NOT_SET self._disposition_type_value = bb.NOT_SET if governance_policy_id is not None: self.governance_policy_id = governance_policy_id if name is not None: self.name = name if policy_type is not None: self.policy_type = policy_type if disposition_type is not None: self.disposition_type = disposition_type # Instance attribute type: str (validator is set below) governance_policy_id = bb.Attribute("governance_policy_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: PolicyType (validator is set below) policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True) # Instance attribute type: DispositionActionType (validator is set below) disposition_type = bb.Attribute("disposition_type", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyContentDisposedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyContentDisposedDetails_validator = bv.Struct(GovernancePolicyContentDisposedDetails) class GovernancePolicyContentDisposedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyContentDisposedType, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyContentDisposedType_validator = bv.Struct(GovernancePolicyContentDisposedType) class GovernancePolicyCreateDetails(bb.Struct): """ Activated a new policy. :ivar team_log.GovernancePolicyCreateDetails.governance_policy_id: Policy ID. :ivar team_log.GovernancePolicyCreateDetails.name: Policy name. :ivar team_log.GovernancePolicyCreateDetails.policy_type: Policy type. :ivar team_log.GovernancePolicyCreateDetails.duration: Duration in days. :ivar team_log.GovernancePolicyCreateDetails.folders: Folders. """ __slots__ = [ '_governance_policy_id_value', '_name_value', '_policy_type_value', '_duration_value', '_folders_value', ] _has_required_fields = True def __init__(self, governance_policy_id=None, name=None, duration=None, policy_type=None, folders=None): self._governance_policy_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._policy_type_value = bb.NOT_SET self._duration_value = bb.NOT_SET self._folders_value = bb.NOT_SET if governance_policy_id is not None: self.governance_policy_id = governance_policy_id if name is not None: self.name = name if policy_type is not None: self.policy_type = policy_type if duration is not None: self.duration = duration if folders is not None: self.folders = folders # Instance attribute type: str (validator is set below) governance_policy_id = bb.Attribute("governance_policy_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: PolicyType (validator is set below) policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True) # Instance attribute type: DurationLogInfo (validator is set below) duration = bb.Attribute("duration", user_defined=True) # Instance attribute type: list of [str] (validator is set below) folders = bb.Attribute("folders", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyCreateDetails_validator = bv.Struct(GovernancePolicyCreateDetails) class GovernancePolicyCreateType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyCreateType, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyCreateType_validator = bv.Struct(GovernancePolicyCreateType) class GovernancePolicyDeleteDetails(bb.Struct): """ Deleted a policy. :ivar team_log.GovernancePolicyDeleteDetails.governance_policy_id: Policy ID. :ivar team_log.GovernancePolicyDeleteDetails.name: Policy name. :ivar team_log.GovernancePolicyDeleteDetails.policy_type: Policy type. """ __slots__ = [ '_governance_policy_id_value', '_name_value', '_policy_type_value', ] _has_required_fields = True def __init__(self, governance_policy_id=None, name=None, policy_type=None): self._governance_policy_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._policy_type_value = bb.NOT_SET if governance_policy_id is not None: self.governance_policy_id = governance_policy_id if name is not None: self.name = name if policy_type is not None: self.policy_type = policy_type # Instance attribute type: str (validator is set below) governance_policy_id = bb.Attribute("governance_policy_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: PolicyType (validator is set below) policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyDeleteDetails_validator = bv.Struct(GovernancePolicyDeleteDetails) class GovernancePolicyDeleteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyDeleteType_validator = bv.Struct(GovernancePolicyDeleteType) class GovernancePolicyEditDetailsDetails(bb.Struct): """ Edited policy. :ivar team_log.GovernancePolicyEditDetailsDetails.governance_policy_id: Policy ID. :ivar team_log.GovernancePolicyEditDetailsDetails.name: Policy name. :ivar team_log.GovernancePolicyEditDetailsDetails.policy_type: Policy type. :ivar team_log.GovernancePolicyEditDetailsDetails.attribute: Attribute. :ivar team_log.GovernancePolicyEditDetailsDetails.previous_value: From. :ivar team_log.GovernancePolicyEditDetailsDetails.new_value: To. """ __slots__ = [ '_governance_policy_id_value', '_name_value', '_policy_type_value', '_attribute_value', '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, governance_policy_id=None, name=None, attribute=None, previous_value=None, new_value=None, policy_type=None): self._governance_policy_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._policy_type_value = bb.NOT_SET self._attribute_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if governance_policy_id is not None: self.governance_policy_id = governance_policy_id if name is not None: self.name = name if policy_type is not None: self.policy_type = policy_type if attribute is not None: self.attribute = attribute if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) governance_policy_id = bb.Attribute("governance_policy_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: PolicyType (validator is set below) policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) attribute = bb.Attribute("attribute") # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyEditDetailsDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyEditDetailsDetails_validator = bv.Struct(GovernancePolicyEditDetailsDetails) class GovernancePolicyEditDetailsType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyEditDetailsType, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyEditDetailsType_validator = bv.Struct(GovernancePolicyEditDetailsType) class GovernancePolicyEditDurationDetails(bb.Struct): """ Changed policy duration. :ivar team_log.GovernancePolicyEditDurationDetails.governance_policy_id: Policy ID. :ivar team_log.GovernancePolicyEditDurationDetails.name: Policy name. :ivar team_log.GovernancePolicyEditDurationDetails.policy_type: Policy type. :ivar team_log.GovernancePolicyEditDurationDetails.previous_value: From. :ivar team_log.GovernancePolicyEditDurationDetails.new_value: To. """ __slots__ = [ '_governance_policy_id_value', '_name_value', '_policy_type_value', '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, governance_policy_id=None, name=None, previous_value=None, new_value=None, policy_type=None): self._governance_policy_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._policy_type_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if governance_policy_id is not None: self.governance_policy_id = governance_policy_id if name is not None: self.name = name if policy_type is not None: self.policy_type = policy_type if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) governance_policy_id = bb.Attribute("governance_policy_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: PolicyType (validator is set below) policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True) # Instance attribute type: DurationLogInfo (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: DurationLogInfo (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyEditDurationDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyEditDurationDetails_validator = bv.Struct(GovernancePolicyEditDurationDetails) class GovernancePolicyEditDurationType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyEditDurationType, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyEditDurationType_validator = bv.Struct(GovernancePolicyEditDurationType) class GovernancePolicyExportCreatedDetails(bb.Struct): """ Created a policy download. :ivar team_log.GovernancePolicyExportCreatedDetails.governance_policy_id: Policy ID. :ivar team_log.GovernancePolicyExportCreatedDetails.name: Policy name. :ivar team_log.GovernancePolicyExportCreatedDetails.policy_type: Policy type. :ivar team_log.GovernancePolicyExportCreatedDetails.export_name: Export name. """ __slots__ = [ '_governance_policy_id_value', '_name_value', '_policy_type_value', '_export_name_value', ] _has_required_fields = True def __init__(self, governance_policy_id=None, name=None, export_name=None, policy_type=None): self._governance_policy_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._policy_type_value = bb.NOT_SET self._export_name_value = bb.NOT_SET if governance_policy_id is not None: self.governance_policy_id = governance_policy_id if name is not None: self.name = name if policy_type is not None: self.policy_type = policy_type if export_name is not None: self.export_name = export_name # Instance attribute type: str (validator is set below) governance_policy_id = bb.Attribute("governance_policy_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: PolicyType (validator is set below) policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) export_name = bb.Attribute("export_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyExportCreatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyExportCreatedDetails_validator = bv.Struct(GovernancePolicyExportCreatedDetails) class GovernancePolicyExportCreatedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyExportCreatedType, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyExportCreatedType_validator = bv.Struct(GovernancePolicyExportCreatedType) class GovernancePolicyExportRemovedDetails(bb.Struct): """ Removed a policy download. :ivar team_log.GovernancePolicyExportRemovedDetails.governance_policy_id: Policy ID. :ivar team_log.GovernancePolicyExportRemovedDetails.name: Policy name. :ivar team_log.GovernancePolicyExportRemovedDetails.policy_type: Policy type. :ivar team_log.GovernancePolicyExportRemovedDetails.export_name: Export name. """ __slots__ = [ '_governance_policy_id_value', '_name_value', '_policy_type_value', '_export_name_value', ] _has_required_fields = True def __init__(self, governance_policy_id=None, name=None, export_name=None, policy_type=None): self._governance_policy_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._policy_type_value = bb.NOT_SET self._export_name_value = bb.NOT_SET if governance_policy_id is not None: self.governance_policy_id = governance_policy_id if name is not None: self.name = name if policy_type is not None: self.policy_type = policy_type if export_name is not None: self.export_name = export_name # Instance attribute type: str (validator is set below) governance_policy_id = bb.Attribute("governance_policy_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: PolicyType (validator is set below) policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) export_name = bb.Attribute("export_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyExportRemovedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyExportRemovedDetails_validator = bv.Struct(GovernancePolicyExportRemovedDetails) class GovernancePolicyExportRemovedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyExportRemovedType, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyExportRemovedType_validator = bv.Struct(GovernancePolicyExportRemovedType) class GovernancePolicyRemoveFoldersDetails(bb.Struct): """ Removed folders from policy. :ivar team_log.GovernancePolicyRemoveFoldersDetails.governance_policy_id: Policy ID. :ivar team_log.GovernancePolicyRemoveFoldersDetails.name: Policy name. :ivar team_log.GovernancePolicyRemoveFoldersDetails.policy_type: Policy type. :ivar team_log.GovernancePolicyRemoveFoldersDetails.folders: Folders. :ivar team_log.GovernancePolicyRemoveFoldersDetails.reason: Reason. """ __slots__ = [ '_governance_policy_id_value', '_name_value', '_policy_type_value', '_folders_value', '_reason_value', ] _has_required_fields = True def __init__(self, governance_policy_id=None, name=None, policy_type=None, folders=None, reason=None): self._governance_policy_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._policy_type_value = bb.NOT_SET self._folders_value = bb.NOT_SET self._reason_value = bb.NOT_SET if governance_policy_id is not None: self.governance_policy_id = governance_policy_id if name is not None: self.name = name if policy_type is not None: self.policy_type = policy_type if folders is not None: self.folders = folders if reason is not None: self.reason = reason # Instance attribute type: str (validator is set below) governance_policy_id = bb.Attribute("governance_policy_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: PolicyType (validator is set below) policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True) # Instance attribute type: list of [str] (validator is set below) folders = bb.Attribute("folders", nullable=True) # Instance attribute type: str (validator is set below) reason = bb.Attribute("reason", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyRemoveFoldersDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyRemoveFoldersDetails_validator = bv.Struct(GovernancePolicyRemoveFoldersDetails) class GovernancePolicyRemoveFoldersType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyRemoveFoldersType, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyRemoveFoldersType_validator = bv.Struct(GovernancePolicyRemoveFoldersType) class GovernancePolicyReportCreatedDetails(bb.Struct): """ Created a summary report for a policy. :ivar team_log.GovernancePolicyReportCreatedDetails.governance_policy_id: Policy ID. :ivar team_log.GovernancePolicyReportCreatedDetails.name: Policy name. :ivar team_log.GovernancePolicyReportCreatedDetails.policy_type: Policy type. """ __slots__ = [ '_governance_policy_id_value', '_name_value', '_policy_type_value', ] _has_required_fields = True def __init__(self, governance_policy_id=None, name=None, policy_type=None): self._governance_policy_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._policy_type_value = bb.NOT_SET if governance_policy_id is not None: self.governance_policy_id = governance_policy_id if name is not None: self.name = name if policy_type is not None: self.policy_type = policy_type # Instance attribute type: str (validator is set below) governance_policy_id = bb.Attribute("governance_policy_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: PolicyType (validator is set below) policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyReportCreatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyReportCreatedDetails_validator = bv.Struct(GovernancePolicyReportCreatedDetails) class GovernancePolicyReportCreatedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyReportCreatedType, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyReportCreatedType_validator = bv.Struct(GovernancePolicyReportCreatedType) class GovernancePolicyZipPartDownloadedDetails(bb.Struct): """ Downloaded content from a policy. :ivar team_log.GovernancePolicyZipPartDownloadedDetails.governance_policy_id: Policy ID. :ivar team_log.GovernancePolicyZipPartDownloadedDetails.name: Policy name. :ivar team_log.GovernancePolicyZipPartDownloadedDetails.policy_type: Policy type. :ivar team_log.GovernancePolicyZipPartDownloadedDetails.export_name: Export name. :ivar team_log.GovernancePolicyZipPartDownloadedDetails.part: Part. """ __slots__ = [ '_governance_policy_id_value', '_name_value', '_policy_type_value', '_export_name_value', '_part_value', ] _has_required_fields = True def __init__(self, governance_policy_id=None, name=None, export_name=None, policy_type=None, part=None): self._governance_policy_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._policy_type_value = bb.NOT_SET self._export_name_value = bb.NOT_SET self._part_value = bb.NOT_SET if governance_policy_id is not None: self.governance_policy_id = governance_policy_id if name is not None: self.name = name if policy_type is not None: self.policy_type = policy_type if export_name is not None: self.export_name = export_name if part is not None: self.part = part # Instance attribute type: str (validator is set below) governance_policy_id = bb.Attribute("governance_policy_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: PolicyType (validator is set below) policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) export_name = bb.Attribute("export_name") # Instance attribute type: str (validator is set below) part = bb.Attribute("part", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyZipPartDownloadedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyZipPartDownloadedDetails_validator = bv.Struct(GovernancePolicyZipPartDownloadedDetails) class GovernancePolicyZipPartDownloadedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GovernancePolicyZipPartDownloadedType, self)._process_custom_annotations(annotation_type, field_path, processor) GovernancePolicyZipPartDownloadedType_validator = bv.Struct(GovernancePolicyZipPartDownloadedType) class GroupAddExternalIdDetails(bb.Struct): """ Added external ID for group. :ivar team_log.GroupAddExternalIdDetails.new_value: Current external id. """ __slots__ = [ '_new_value_value', ] _has_required_fields = True def __init__(self, new_value=None): self._new_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupAddExternalIdDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupAddExternalIdDetails_validator = bv.Struct(GroupAddExternalIdDetails) class GroupAddExternalIdType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupAddExternalIdType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupAddExternalIdType_validator = bv.Struct(GroupAddExternalIdType) class GroupAddMemberDetails(bb.Struct): """ Added team members to group. :ivar team_log.GroupAddMemberDetails.is_group_owner: Is group owner. """ __slots__ = [ '_is_group_owner_value', ] _has_required_fields = True def __init__(self, is_group_owner=None): self._is_group_owner_value = bb.NOT_SET if is_group_owner is not None: self.is_group_owner = is_group_owner # Instance attribute type: bool (validator is set below) is_group_owner = bb.Attribute("is_group_owner") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupAddMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupAddMemberDetails_validator = bv.Struct(GroupAddMemberDetails) class GroupAddMemberType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupAddMemberType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupAddMemberType_validator = bv.Struct(GroupAddMemberType) class GroupChangeExternalIdDetails(bb.Struct): """ Changed external ID for group. :ivar team_log.GroupChangeExternalIdDetails.new_value: Current external id. :ivar team_log.GroupChangeExternalIdDetails.previous_value: Old external id. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupChangeExternalIdDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupChangeExternalIdDetails_validator = bv.Struct(GroupChangeExternalIdDetails) class GroupChangeExternalIdType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupChangeExternalIdType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupChangeExternalIdType_validator = bv.Struct(GroupChangeExternalIdType) class GroupChangeManagementTypeDetails(bb.Struct): """ Changed group management type. :ivar team_log.GroupChangeManagementTypeDetails.new_value: New group management type. :ivar team_log.GroupChangeManagementTypeDetails.previous_value: Previous group management type. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: team_common.GroupManagementType (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: team_common.GroupManagementType (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupChangeManagementTypeDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupChangeManagementTypeDetails_validator = bv.Struct(GroupChangeManagementTypeDetails) class GroupChangeManagementTypeType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupChangeManagementTypeType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupChangeManagementTypeType_validator = bv.Struct(GroupChangeManagementTypeType) class GroupChangeMemberRoleDetails(bb.Struct): """ Changed manager permissions of group member. :ivar team_log.GroupChangeMemberRoleDetails.is_group_owner: Is group owner. """ __slots__ = [ '_is_group_owner_value', ] _has_required_fields = True def __init__(self, is_group_owner=None): self._is_group_owner_value = bb.NOT_SET if is_group_owner is not None: self.is_group_owner = is_group_owner # Instance attribute type: bool (validator is set below) is_group_owner = bb.Attribute("is_group_owner") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupChangeMemberRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupChangeMemberRoleDetails_validator = bv.Struct(GroupChangeMemberRoleDetails) class GroupChangeMemberRoleType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupChangeMemberRoleType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupChangeMemberRoleType_validator = bv.Struct(GroupChangeMemberRoleType) class GroupCreateDetails(bb.Struct): """ Created group. :ivar team_log.GroupCreateDetails.is_company_managed: Is company managed group. :ivar team_log.GroupCreateDetails.join_policy: Group join policy. """ __slots__ = [ '_is_company_managed_value', '_join_policy_value', ] _has_required_fields = False def __init__(self, is_company_managed=None, join_policy=None): self._is_company_managed_value = bb.NOT_SET self._join_policy_value = bb.NOT_SET if is_company_managed is not None: self.is_company_managed = is_company_managed if join_policy is not None: self.join_policy = join_policy # Instance attribute type: bool (validator is set below) is_company_managed = bb.Attribute("is_company_managed", nullable=True) # Instance attribute type: GroupJoinPolicy (validator is set below) join_policy = bb.Attribute("join_policy", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupCreateDetails_validator = bv.Struct(GroupCreateDetails) class GroupCreateType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupCreateType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupCreateType_validator = bv.Struct(GroupCreateType) class GroupDeleteDetails(bb.Struct): """ Deleted group. :ivar team_log.GroupDeleteDetails.is_company_managed: Is company managed group. """ __slots__ = [ '_is_company_managed_value', ] _has_required_fields = False def __init__(self, is_company_managed=None): self._is_company_managed_value = bb.NOT_SET if is_company_managed is not None: self.is_company_managed = is_company_managed # Instance attribute type: bool (validator is set below) is_company_managed = bb.Attribute("is_company_managed", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupDeleteDetails_validator = bv.Struct(GroupDeleteDetails) class GroupDeleteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupDeleteType_validator = bv.Struct(GroupDeleteType) class GroupDescriptionUpdatedDetails(bb.Struct): """ Updated group. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupDescriptionUpdatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupDescriptionUpdatedDetails_validator = bv.Struct(GroupDescriptionUpdatedDetails) class GroupDescriptionUpdatedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupDescriptionUpdatedType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupDescriptionUpdatedType_validator = bv.Struct(GroupDescriptionUpdatedType) class GroupJoinPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition open = None # Attribute is overwritten below the class definition request_to_join = None # Attribute is overwritten below the class definition other = None def is_open(self): """ Check if the union tag is ``open``. :rtype: bool """ return self._tag == 'open' def is_request_to_join(self): """ Check if the union tag is ``request_to_join``. :rtype: bool """ return self._tag == 'request_to_join' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupJoinPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) GroupJoinPolicy_validator = bv.Union(GroupJoinPolicy) class GroupJoinPolicyUpdatedDetails(bb.Struct): """ Updated group join policy. :ivar team_log.GroupJoinPolicyUpdatedDetails.is_company_managed: Is company managed group. :ivar team_log.GroupJoinPolicyUpdatedDetails.join_policy: Group join policy. """ __slots__ = [ '_is_company_managed_value', '_join_policy_value', ] _has_required_fields = False def __init__(self, is_company_managed=None, join_policy=None): self._is_company_managed_value = bb.NOT_SET self._join_policy_value = bb.NOT_SET if is_company_managed is not None: self.is_company_managed = is_company_managed if join_policy is not None: self.join_policy = join_policy # Instance attribute type: bool (validator is set below) is_company_managed = bb.Attribute("is_company_managed", nullable=True) # Instance attribute type: GroupJoinPolicy (validator is set below) join_policy = bb.Attribute("join_policy", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupJoinPolicyUpdatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupJoinPolicyUpdatedDetails_validator = bv.Struct(GroupJoinPolicyUpdatedDetails) class GroupJoinPolicyUpdatedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupJoinPolicyUpdatedType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupJoinPolicyUpdatedType_validator = bv.Struct(GroupJoinPolicyUpdatedType) class GroupLogInfo(bb.Struct): """ Group's logged information. :ivar team_log.GroupLogInfo.group_id: The unique id of this group. :ivar team_log.GroupLogInfo.display_name: The name of this group. :ivar team_log.GroupLogInfo.external_id: External group ID. """ __slots__ = [ '_group_id_value', '_display_name_value', '_external_id_value', ] _has_required_fields = True def __init__(self, display_name=None, group_id=None, external_id=None): self._group_id_value = bb.NOT_SET self._display_name_value = bb.NOT_SET self._external_id_value = bb.NOT_SET if group_id is not None: self.group_id = group_id if display_name is not None: self.display_name = display_name if external_id is not None: self.external_id = external_id # Instance attribute type: str (validator is set below) group_id = bb.Attribute("group_id", nullable=True) # Instance attribute type: str (validator is set below) display_name = bb.Attribute("display_name") # Instance attribute type: str (validator is set below) external_id = bb.Attribute("external_id", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) GroupLogInfo_validator = bv.Struct(GroupLogInfo) class GroupMovedDetails(bb.Struct): """ Moved group. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMovedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMovedDetails_validator = bv.Struct(GroupMovedDetails) class GroupMovedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupMovedType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupMovedType_validator = bv.Struct(GroupMovedType) class GroupRemoveExternalIdDetails(bb.Struct): """ Removed external ID for group. :ivar team_log.GroupRemoveExternalIdDetails.previous_value: Old external id. """ __slots__ = [ '_previous_value_value', ] _has_required_fields = True def __init__(self, previous_value=None): self._previous_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupRemoveExternalIdDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupRemoveExternalIdDetails_validator = bv.Struct(GroupRemoveExternalIdDetails) class GroupRemoveExternalIdType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupRemoveExternalIdType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupRemoveExternalIdType_validator = bv.Struct(GroupRemoveExternalIdType) class GroupRemoveMemberDetails(bb.Struct): """ Removed team members from group. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupRemoveMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupRemoveMemberDetails_validator = bv.Struct(GroupRemoveMemberDetails) class GroupRemoveMemberType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupRemoveMemberType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupRemoveMemberType_validator = bv.Struct(GroupRemoveMemberType) class GroupRenameDetails(bb.Struct): """ Renamed group. :ivar team_log.GroupRenameDetails.previous_value: Previous display name. :ivar team_log.GroupRenameDetails.new_value: New display name. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupRenameDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupRenameDetails_validator = bv.Struct(GroupRenameDetails) class GroupRenameType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupRenameType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupRenameType_validator = bv.Struct(GroupRenameType) class GroupUserManagementChangePolicyDetails(bb.Struct): """ Changed who can create groups. :ivar team_log.GroupUserManagementChangePolicyDetails.new_value: New group users management policy. :ivar team_log.GroupUserManagementChangePolicyDetails.previous_value: Previous group users management policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: team_policies.GroupCreation (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: team_policies.GroupCreation (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupUserManagementChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GroupUserManagementChangePolicyDetails_validator = bv.Struct(GroupUserManagementChangePolicyDetails) class GroupUserManagementChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupUserManagementChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) GroupUserManagementChangePolicyType_validator = bv.Struct(GroupUserManagementChangePolicyType) class GuestAdminChangeStatusDetails(bb.Struct): """ Changed guest team admin status. :ivar team_log.GuestAdminChangeStatusDetails.is_guest: True for guest, false for host. :ivar team_log.GuestAdminChangeStatusDetails.guest_team_name: The name of the guest team. :ivar team_log.GuestAdminChangeStatusDetails.host_team_name: The name of the host team. :ivar team_log.GuestAdminChangeStatusDetails.previous_value: Previous request state. :ivar team_log.GuestAdminChangeStatusDetails.new_value: New request state. :ivar team_log.GuestAdminChangeStatusDetails.action_details: Action details. """ __slots__ = [ '_is_guest_value', '_guest_team_name_value', '_host_team_name_value', '_previous_value_value', '_new_value_value', '_action_details_value', ] _has_required_fields = True def __init__(self, is_guest=None, previous_value=None, new_value=None, action_details=None, guest_team_name=None, host_team_name=None): self._is_guest_value = bb.NOT_SET self._guest_team_name_value = bb.NOT_SET self._host_team_name_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET self._action_details_value = bb.NOT_SET if is_guest is not None: self.is_guest = is_guest if guest_team_name is not None: self.guest_team_name = guest_team_name if host_team_name is not None: self.host_team_name = host_team_name if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value if action_details is not None: self.action_details = action_details # Instance attribute type: bool (validator is set below) is_guest = bb.Attribute("is_guest") # Instance attribute type: str (validator is set below) guest_team_name = bb.Attribute("guest_team_name", nullable=True) # Instance attribute type: str (validator is set below) host_team_name = bb.Attribute("host_team_name", nullable=True) # Instance attribute type: TrustedTeamsRequestState (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: TrustedTeamsRequestState (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: TrustedTeamsRequestAction (validator is set below) action_details = bb.Attribute("action_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GuestAdminChangeStatusDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GuestAdminChangeStatusDetails_validator = bv.Struct(GuestAdminChangeStatusDetails) class GuestAdminChangeStatusType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GuestAdminChangeStatusType, self)._process_custom_annotations(annotation_type, field_path, processor) GuestAdminChangeStatusType_validator = bv.Struct(GuestAdminChangeStatusType) class GuestAdminSignedInViaTrustedTeamsDetails(bb.Struct): """ Started trusted team admin session. :ivar team_log.GuestAdminSignedInViaTrustedTeamsDetails.team_name: Host team name. :ivar team_log.GuestAdminSignedInViaTrustedTeamsDetails.trusted_team_name: Trusted team name. """ __slots__ = [ '_team_name_value', '_trusted_team_name_value', ] _has_required_fields = False def __init__(self, team_name=None, trusted_team_name=None): self._team_name_value = bb.NOT_SET self._trusted_team_name_value = bb.NOT_SET if team_name is not None: self.team_name = team_name if trusted_team_name is not None: self.trusted_team_name = trusted_team_name # Instance attribute type: str (validator is set below) team_name = bb.Attribute("team_name", nullable=True) # Instance attribute type: str (validator is set below) trusted_team_name = bb.Attribute("trusted_team_name", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GuestAdminSignedInViaTrustedTeamsDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GuestAdminSignedInViaTrustedTeamsDetails_validator = bv.Struct(GuestAdminSignedInViaTrustedTeamsDetails) class GuestAdminSignedInViaTrustedTeamsType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GuestAdminSignedInViaTrustedTeamsType, self)._process_custom_annotations(annotation_type, field_path, processor) GuestAdminSignedInViaTrustedTeamsType_validator = bv.Struct(GuestAdminSignedInViaTrustedTeamsType) class GuestAdminSignedOutViaTrustedTeamsDetails(bb.Struct): """ Ended trusted team admin session. :ivar team_log.GuestAdminSignedOutViaTrustedTeamsDetails.team_name: Host team name. :ivar team_log.GuestAdminSignedOutViaTrustedTeamsDetails.trusted_team_name: Trusted team name. """ __slots__ = [ '_team_name_value', '_trusted_team_name_value', ] _has_required_fields = False def __init__(self, team_name=None, trusted_team_name=None): self._team_name_value = bb.NOT_SET self._trusted_team_name_value = bb.NOT_SET if team_name is not None: self.team_name = team_name if trusted_team_name is not None: self.trusted_team_name = trusted_team_name # Instance attribute type: str (validator is set below) team_name = bb.Attribute("team_name", nullable=True) # Instance attribute type: str (validator is set below) trusted_team_name = bb.Attribute("trusted_team_name", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(GuestAdminSignedOutViaTrustedTeamsDetails, self)._process_custom_annotations(annotation_type, field_path, processor) GuestAdminSignedOutViaTrustedTeamsDetails_validator = bv.Struct(GuestAdminSignedOutViaTrustedTeamsDetails) class GuestAdminSignedOutViaTrustedTeamsType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GuestAdminSignedOutViaTrustedTeamsType, self)._process_custom_annotations(annotation_type, field_path, processor) GuestAdminSignedOutViaTrustedTeamsType_validator = bv.Struct(GuestAdminSignedOutViaTrustedTeamsType) class IdentifierType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition email = None # Attribute is overwritten below the class definition facebook_profile_name = None # Attribute is overwritten below the class definition other = None def is_email(self): """ Check if the union tag is ``email``. :rtype: bool """ return self._tag == 'email' def is_facebook_profile_name(self): """ Check if the union tag is ``facebook_profile_name``. :rtype: bool """ return self._tag == 'facebook_profile_name' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(IdentifierType, self)._process_custom_annotations(annotation_type, field_path, processor) IdentifierType_validator = bv.Union(IdentifierType) class IntegrationConnectedDetails(bb.Struct): """ Connected integration for member. :ivar team_log.IntegrationConnectedDetails.integration_name: Name of the third-party integration. """ __slots__ = [ '_integration_name_value', ] _has_required_fields = True def __init__(self, integration_name=None): self._integration_name_value = bb.NOT_SET if integration_name is not None: self.integration_name = integration_name # Instance attribute type: str (validator is set below) integration_name = bb.Attribute("integration_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(IntegrationConnectedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) IntegrationConnectedDetails_validator = bv.Struct(IntegrationConnectedDetails) class IntegrationConnectedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(IntegrationConnectedType, self)._process_custom_annotations(annotation_type, field_path, processor) IntegrationConnectedType_validator = bv.Struct(IntegrationConnectedType) class IntegrationDisconnectedDetails(bb.Struct): """ Disconnected integration for member. :ivar team_log.IntegrationDisconnectedDetails.integration_name: Name of the third-party integration. """ __slots__ = [ '_integration_name_value', ] _has_required_fields = True def __init__(self, integration_name=None): self._integration_name_value = bb.NOT_SET if integration_name is not None: self.integration_name = integration_name # Instance attribute type: str (validator is set below) integration_name = bb.Attribute("integration_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(IntegrationDisconnectedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) IntegrationDisconnectedDetails_validator = bv.Struct(IntegrationDisconnectedDetails) class IntegrationDisconnectedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(IntegrationDisconnectedType, self)._process_custom_annotations(annotation_type, field_path, processor) IntegrationDisconnectedType_validator = bv.Struct(IntegrationDisconnectedType) class IntegrationPolicy(bb.Union): """ Policy for controlling whether a service integration is enabled for the team. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(IntegrationPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) IntegrationPolicy_validator = bv.Union(IntegrationPolicy) class IntegrationPolicyChangedDetails(bb.Struct): """ Changed integration policy for team. :ivar team_log.IntegrationPolicyChangedDetails.integration_name: Name of the third-party integration. :ivar team_log.IntegrationPolicyChangedDetails.new_value: New integration policy. :ivar team_log.IntegrationPolicyChangedDetails.previous_value: Previous integration policy. """ __slots__ = [ '_integration_name_value', '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, integration_name=None, new_value=None, previous_value=None): self._integration_name_value = bb.NOT_SET self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if integration_name is not None: self.integration_name = integration_name if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: str (validator is set below) integration_name = bb.Attribute("integration_name") # Instance attribute type: IntegrationPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: IntegrationPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(IntegrationPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) IntegrationPolicyChangedDetails_validator = bv.Struct(IntegrationPolicyChangedDetails) class IntegrationPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(IntegrationPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) IntegrationPolicyChangedType_validator = bv.Struct(IntegrationPolicyChangedType) class InviteAcceptanceEmailPolicy(bb.Union): """ Policy for deciding whether team admins receive email when an invitation to join the team is accepted This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(InviteAcceptanceEmailPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) InviteAcceptanceEmailPolicy_validator = bv.Union(InviteAcceptanceEmailPolicy) class InviteAcceptanceEmailPolicyChangedDetails(bb.Struct): """ Changed invite accept email policy for team. :ivar team_log.InviteAcceptanceEmailPolicyChangedDetails.new_value: To. :ivar team_log.InviteAcceptanceEmailPolicyChangedDetails.previous_value: From. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: InviteAcceptanceEmailPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: InviteAcceptanceEmailPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(InviteAcceptanceEmailPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) InviteAcceptanceEmailPolicyChangedDetails_validator = bv.Struct(InviteAcceptanceEmailPolicyChangedDetails) class InviteAcceptanceEmailPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(InviteAcceptanceEmailPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) InviteAcceptanceEmailPolicyChangedType_validator = bv.Struct(InviteAcceptanceEmailPolicyChangedType) class InviteMethod(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition auto_approve = None # Attribute is overwritten below the class definition invite_link = None # Attribute is overwritten below the class definition member_invite = None # Attribute is overwritten below the class definition moved_from_another_team = None # Attribute is overwritten below the class definition other = None def is_auto_approve(self): """ Check if the union tag is ``auto_approve``. :rtype: bool """ return self._tag == 'auto_approve' def is_invite_link(self): """ Check if the union tag is ``invite_link``. :rtype: bool """ return self._tag == 'invite_link' def is_member_invite(self): """ Check if the union tag is ``member_invite``. :rtype: bool """ return self._tag == 'member_invite' def is_moved_from_another_team(self): """ Check if the union tag is ``moved_from_another_team``. :rtype: bool """ return self._tag == 'moved_from_another_team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(InviteMethod, self)._process_custom_annotations(annotation_type, field_path, processor) InviteMethod_validator = bv.Union(InviteMethod) class JoinTeamDetails(bb.Struct): """ Additional information relevant when a new member joins the team. :ivar team_log.JoinTeamDetails.linked_apps: Linked applications. (Deprecated) Please use has_linked_apps boolean field instead. :ivar team_log.JoinTeamDetails.linked_devices: Linked devices. (Deprecated) Please use has_linked_devices boolean field instead. :ivar team_log.JoinTeamDetails.linked_shared_folders: Linked shared folders. (Deprecated) Please use has_linked_shared_folders boolean field instead. :ivar team_log.JoinTeamDetails.was_linked_apps_truncated: (Deprecated) True if the linked_apps list was truncated to the maximum supported length (50). :ivar team_log.JoinTeamDetails.was_linked_devices_truncated: (Deprecated) True if the linked_devices list was truncated to the maximum supported length (50). :ivar team_log.JoinTeamDetails.was_linked_shared_folders_truncated: (Deprecated) True if the linked_shared_folders list was truncated to the maximum supported length (50). :ivar team_log.JoinTeamDetails.has_linked_apps: True if the user had linked apps at event time. :ivar team_log.JoinTeamDetails.has_linked_devices: True if the user had linked apps at event time. :ivar team_log.JoinTeamDetails.has_linked_shared_folders: True if the user had linked shared folders at event time. """ __slots__ = [ '_linked_apps_value', '_linked_devices_value', '_linked_shared_folders_value', '_was_linked_apps_truncated_value', '_was_linked_devices_truncated_value', '_was_linked_shared_folders_truncated_value', '_has_linked_apps_value', '_has_linked_devices_value', '_has_linked_shared_folders_value', ] _has_required_fields = True def __init__(self, linked_apps=None, linked_devices=None, linked_shared_folders=None, was_linked_apps_truncated=None, was_linked_devices_truncated=None, was_linked_shared_folders_truncated=None, has_linked_apps=None, has_linked_devices=None, has_linked_shared_folders=None): self._linked_apps_value = bb.NOT_SET self._linked_devices_value = bb.NOT_SET self._linked_shared_folders_value = bb.NOT_SET self._was_linked_apps_truncated_value = bb.NOT_SET self._was_linked_devices_truncated_value = bb.NOT_SET self._was_linked_shared_folders_truncated_value = bb.NOT_SET self._has_linked_apps_value = bb.NOT_SET self._has_linked_devices_value = bb.NOT_SET self._has_linked_shared_folders_value = bb.NOT_SET if linked_apps is not None: self.linked_apps = linked_apps if linked_devices is not None: self.linked_devices = linked_devices if linked_shared_folders is not None: self.linked_shared_folders = linked_shared_folders if was_linked_apps_truncated is not None: self.was_linked_apps_truncated = was_linked_apps_truncated if was_linked_devices_truncated is not None: self.was_linked_devices_truncated = was_linked_devices_truncated if was_linked_shared_folders_truncated is not None: self.was_linked_shared_folders_truncated = was_linked_shared_folders_truncated if has_linked_apps is not None: self.has_linked_apps = has_linked_apps if has_linked_devices is not None: self.has_linked_devices = has_linked_devices if has_linked_shared_folders is not None: self.has_linked_shared_folders = has_linked_shared_folders # Instance attribute type: list of [UserLinkedAppLogInfo] (validator is set below) linked_apps = bb.Attribute("linked_apps") # Instance attribute type: list of [LinkedDeviceLogInfo] (validator is set below) linked_devices = bb.Attribute("linked_devices") # Instance attribute type: list of [FolderLogInfo] (validator is set below) linked_shared_folders = bb.Attribute("linked_shared_folders") # Instance attribute type: bool (validator is set below) was_linked_apps_truncated = bb.Attribute("was_linked_apps_truncated", nullable=True) # Instance attribute type: bool (validator is set below) was_linked_devices_truncated = bb.Attribute("was_linked_devices_truncated", nullable=True) # Instance attribute type: bool (validator is set below) was_linked_shared_folders_truncated = bb.Attribute("was_linked_shared_folders_truncated", nullable=True) # Instance attribute type: bool (validator is set below) has_linked_apps = bb.Attribute("has_linked_apps", nullable=True) # Instance attribute type: bool (validator is set below) has_linked_devices = bb.Attribute("has_linked_devices", nullable=True) # Instance attribute type: bool (validator is set below) has_linked_shared_folders = bb.Attribute("has_linked_shared_folders", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(JoinTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) JoinTeamDetails_validator = bv.Struct(JoinTeamDetails) class LabelType(bb.Union): """ Label type This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition personal_information = None # Attribute is overwritten below the class definition test_only = None # Attribute is overwritten below the class definition user_defined_tag = None # Attribute is overwritten below the class definition other = None def is_personal_information(self): """ Check if the union tag is ``personal_information``. :rtype: bool """ return self._tag == 'personal_information' def is_test_only(self): """ Check if the union tag is ``test_only``. :rtype: bool """ return self._tag == 'test_only' def is_user_defined_tag(self): """ Check if the union tag is ``user_defined_tag``. :rtype: bool """ return self._tag == 'user_defined_tag' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LabelType, self)._process_custom_annotations(annotation_type, field_path, processor) LabelType_validator = bv.Union(LabelType) class LegacyDeviceSessionLogInfo(DeviceSessionLogInfo): """ Information on sessions, in legacy format :ivar team_log.LegacyDeviceSessionLogInfo.session_info: Session unique id. :ivar team_log.LegacyDeviceSessionLogInfo.display_name: The device name. Might be missing due to historical data gap. :ivar team_log.LegacyDeviceSessionLogInfo.is_emm_managed: Is device managed by emm. Might be missing due to historical data gap. :ivar team_log.LegacyDeviceSessionLogInfo.platform: Information on the hosting platform. Might be missing due to historical data gap. :ivar team_log.LegacyDeviceSessionLogInfo.mac_address: The mac address of the last activity from this session. Might be missing due to historical data gap. :ivar team_log.LegacyDeviceSessionLogInfo.os_version: The hosting OS version. Might be missing due to historical data gap. :ivar team_log.LegacyDeviceSessionLogInfo.device_type: Information on the hosting device type. Might be missing due to historical data gap. :ivar team_log.LegacyDeviceSessionLogInfo.client_version: The Dropbox client version. Might be missing due to historical data gap. :ivar team_log.LegacyDeviceSessionLogInfo.legacy_uniq_id: Alternative unique device session id, instead of session id field. Might be missing due to historical data gap. """ __slots__ = [ '_session_info_value', '_display_name_value', '_is_emm_managed_value', '_platform_value', '_mac_address_value', '_os_version_value', '_device_type_value', '_client_version_value', '_legacy_uniq_id_value', ] _has_required_fields = False def __init__(self, ip_address=None, created=None, updated=None, session_info=None, display_name=None, is_emm_managed=None, platform=None, mac_address=None, os_version=None, device_type=None, client_version=None, legacy_uniq_id=None): super(LegacyDeviceSessionLogInfo, self).__init__(ip_address, created, updated) self._session_info_value = bb.NOT_SET self._display_name_value = bb.NOT_SET self._is_emm_managed_value = bb.NOT_SET self._platform_value = bb.NOT_SET self._mac_address_value = bb.NOT_SET self._os_version_value = bb.NOT_SET self._device_type_value = bb.NOT_SET self._client_version_value = bb.NOT_SET self._legacy_uniq_id_value = bb.NOT_SET if session_info is not None: self.session_info = session_info if display_name is not None: self.display_name = display_name if is_emm_managed is not None: self.is_emm_managed = is_emm_managed if platform is not None: self.platform = platform if mac_address is not None: self.mac_address = mac_address if os_version is not None: self.os_version = os_version if device_type is not None: self.device_type = device_type if client_version is not None: self.client_version = client_version if legacy_uniq_id is not None: self.legacy_uniq_id = legacy_uniq_id # Instance attribute type: SessionLogInfo (validator is set below) session_info = bb.Attribute("session_info", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) display_name = bb.Attribute("display_name", nullable=True) # Instance attribute type: bool (validator is set below) is_emm_managed = bb.Attribute("is_emm_managed", nullable=True) # Instance attribute type: str (validator is set below) platform = bb.Attribute("platform", nullable=True) # Instance attribute type: str (validator is set below) mac_address = bb.Attribute("mac_address", nullable=True) # Instance attribute type: str (validator is set below) os_version = bb.Attribute("os_version", nullable=True) # Instance attribute type: str (validator is set below) device_type = bb.Attribute("device_type", nullable=True) # Instance attribute type: str (validator is set below) client_version = bb.Attribute("client_version", nullable=True) # Instance attribute type: str (validator is set below) legacy_uniq_id = bb.Attribute("legacy_uniq_id", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegacyDeviceSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) LegacyDeviceSessionLogInfo_validator = bv.Struct(LegacyDeviceSessionLogInfo) class LegalHoldsActivateAHoldDetails(bb.Struct): """ Activated a hold. :ivar team_log.LegalHoldsActivateAHoldDetails.legal_hold_id: Hold ID. :ivar team_log.LegalHoldsActivateAHoldDetails.name: Hold name. :ivar team_log.LegalHoldsActivateAHoldDetails.start_date: Hold start date. :ivar team_log.LegalHoldsActivateAHoldDetails.end_date: Hold end date. """ __slots__ = [ '_legal_hold_id_value', '_name_value', '_start_date_value', '_end_date_value', ] _has_required_fields = True def __init__(self, legal_hold_id=None, name=None, start_date=None, end_date=None): self._legal_hold_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._start_date_value = bb.NOT_SET self._end_date_value = bb.NOT_SET if legal_hold_id is not None: self.legal_hold_id = legal_hold_id if name is not None: self.name = name if start_date is not None: self.start_date = start_date if end_date is not None: self.end_date = end_date # Instance attribute type: str (validator is set below) legal_hold_id = bb.Attribute("legal_hold_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: datetime.datetime (validator is set below) start_date = bb.Attribute("start_date") # Instance attribute type: datetime.datetime (validator is set below) end_date = bb.Attribute("end_date", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsActivateAHoldDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsActivateAHoldDetails_validator = bv.Struct(LegalHoldsActivateAHoldDetails) class LegalHoldsActivateAHoldType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsActivateAHoldType, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsActivateAHoldType_validator = bv.Struct(LegalHoldsActivateAHoldType) class LegalHoldsAddMembersDetails(bb.Struct): """ Added members to a hold. :ivar team_log.LegalHoldsAddMembersDetails.legal_hold_id: Hold ID. :ivar team_log.LegalHoldsAddMembersDetails.name: Hold name. """ __slots__ = [ '_legal_hold_id_value', '_name_value', ] _has_required_fields = True def __init__(self, legal_hold_id=None, name=None): self._legal_hold_id_value = bb.NOT_SET self._name_value = bb.NOT_SET if legal_hold_id is not None: self.legal_hold_id = legal_hold_id if name is not None: self.name = name # Instance attribute type: str (validator is set below) legal_hold_id = bb.Attribute("legal_hold_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsAddMembersDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsAddMembersDetails_validator = bv.Struct(LegalHoldsAddMembersDetails) class LegalHoldsAddMembersType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsAddMembersType, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsAddMembersType_validator = bv.Struct(LegalHoldsAddMembersType) class LegalHoldsChangeHoldDetailsDetails(bb.Struct): """ Edited details for a hold. :ivar team_log.LegalHoldsChangeHoldDetailsDetails.legal_hold_id: Hold ID. :ivar team_log.LegalHoldsChangeHoldDetailsDetails.name: Hold name. :ivar team_log.LegalHoldsChangeHoldDetailsDetails.previous_value: Previous details. :ivar team_log.LegalHoldsChangeHoldDetailsDetails.new_value: New details. """ __slots__ = [ '_legal_hold_id_value', '_name_value', '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, legal_hold_id=None, name=None, previous_value=None, new_value=None): self._legal_hold_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if legal_hold_id is not None: self.legal_hold_id = legal_hold_id if name is not None: self.name = name if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) legal_hold_id = bb.Attribute("legal_hold_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsChangeHoldDetailsDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsChangeHoldDetailsDetails_validator = bv.Struct(LegalHoldsChangeHoldDetailsDetails) class LegalHoldsChangeHoldDetailsType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsChangeHoldDetailsType, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsChangeHoldDetailsType_validator = bv.Struct(LegalHoldsChangeHoldDetailsType) class LegalHoldsChangeHoldNameDetails(bb.Struct): """ Renamed a hold. :ivar team_log.LegalHoldsChangeHoldNameDetails.legal_hold_id: Hold ID. :ivar team_log.LegalHoldsChangeHoldNameDetails.previous_value: Previous Name. :ivar team_log.LegalHoldsChangeHoldNameDetails.new_value: New Name. """ __slots__ = [ '_legal_hold_id_value', '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, legal_hold_id=None, previous_value=None, new_value=None): self._legal_hold_id_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if legal_hold_id is not None: self.legal_hold_id = legal_hold_id if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) legal_hold_id = bb.Attribute("legal_hold_id") # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsChangeHoldNameDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsChangeHoldNameDetails_validator = bv.Struct(LegalHoldsChangeHoldNameDetails) class LegalHoldsChangeHoldNameType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsChangeHoldNameType, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsChangeHoldNameType_validator = bv.Struct(LegalHoldsChangeHoldNameType) class LegalHoldsExportAHoldDetails(bb.Struct): """ Exported hold. :ivar team_log.LegalHoldsExportAHoldDetails.legal_hold_id: Hold ID. :ivar team_log.LegalHoldsExportAHoldDetails.name: Hold name. :ivar team_log.LegalHoldsExportAHoldDetails.export_name: Export name. """ __slots__ = [ '_legal_hold_id_value', '_name_value', '_export_name_value', ] _has_required_fields = True def __init__(self, legal_hold_id=None, name=None, export_name=None): self._legal_hold_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._export_name_value = bb.NOT_SET if legal_hold_id is not None: self.legal_hold_id = legal_hold_id if name is not None: self.name = name if export_name is not None: self.export_name = export_name # Instance attribute type: str (validator is set below) legal_hold_id = bb.Attribute("legal_hold_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) export_name = bb.Attribute("export_name", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsExportAHoldDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsExportAHoldDetails_validator = bv.Struct(LegalHoldsExportAHoldDetails) class LegalHoldsExportAHoldType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsExportAHoldType, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsExportAHoldType_validator = bv.Struct(LegalHoldsExportAHoldType) class LegalHoldsExportCancelledDetails(bb.Struct): """ Canceled export for a hold. :ivar team_log.LegalHoldsExportCancelledDetails.legal_hold_id: Hold ID. :ivar team_log.LegalHoldsExportCancelledDetails.name: Hold name. :ivar team_log.LegalHoldsExportCancelledDetails.export_name: Export name. """ __slots__ = [ '_legal_hold_id_value', '_name_value', '_export_name_value', ] _has_required_fields = True def __init__(self, legal_hold_id=None, name=None, export_name=None): self._legal_hold_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._export_name_value = bb.NOT_SET if legal_hold_id is not None: self.legal_hold_id = legal_hold_id if name is not None: self.name = name if export_name is not None: self.export_name = export_name # Instance attribute type: str (validator is set below) legal_hold_id = bb.Attribute("legal_hold_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) export_name = bb.Attribute("export_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsExportCancelledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsExportCancelledDetails_validator = bv.Struct(LegalHoldsExportCancelledDetails) class LegalHoldsExportCancelledType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsExportCancelledType, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsExportCancelledType_validator = bv.Struct(LegalHoldsExportCancelledType) class LegalHoldsExportDownloadedDetails(bb.Struct): """ Downloaded export for a hold. :ivar team_log.LegalHoldsExportDownloadedDetails.legal_hold_id: Hold ID. :ivar team_log.LegalHoldsExportDownloadedDetails.name: Hold name. :ivar team_log.LegalHoldsExportDownloadedDetails.export_name: Export name. :ivar team_log.LegalHoldsExportDownloadedDetails.part: Part. :ivar team_log.LegalHoldsExportDownloadedDetails.file_name: Filename. """ __slots__ = [ '_legal_hold_id_value', '_name_value', '_export_name_value', '_part_value', '_file_name_value', ] _has_required_fields = True def __init__(self, legal_hold_id=None, name=None, export_name=None, part=None, file_name=None): self._legal_hold_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._export_name_value = bb.NOT_SET self._part_value = bb.NOT_SET self._file_name_value = bb.NOT_SET if legal_hold_id is not None: self.legal_hold_id = legal_hold_id if name is not None: self.name = name if export_name is not None: self.export_name = export_name if part is not None: self.part = part if file_name is not None: self.file_name = file_name # Instance attribute type: str (validator is set below) legal_hold_id = bb.Attribute("legal_hold_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) export_name = bb.Attribute("export_name") # Instance attribute type: str (validator is set below) part = bb.Attribute("part", nullable=True) # Instance attribute type: str (validator is set below) file_name = bb.Attribute("file_name", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsExportDownloadedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsExportDownloadedDetails_validator = bv.Struct(LegalHoldsExportDownloadedDetails) class LegalHoldsExportDownloadedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsExportDownloadedType, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsExportDownloadedType_validator = bv.Struct(LegalHoldsExportDownloadedType) class LegalHoldsExportRemovedDetails(bb.Struct): """ Removed export for a hold. :ivar team_log.LegalHoldsExportRemovedDetails.legal_hold_id: Hold ID. :ivar team_log.LegalHoldsExportRemovedDetails.name: Hold name. :ivar team_log.LegalHoldsExportRemovedDetails.export_name: Export name. """ __slots__ = [ '_legal_hold_id_value', '_name_value', '_export_name_value', ] _has_required_fields = True def __init__(self, legal_hold_id=None, name=None, export_name=None): self._legal_hold_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._export_name_value = bb.NOT_SET if legal_hold_id is not None: self.legal_hold_id = legal_hold_id if name is not None: self.name = name if export_name is not None: self.export_name = export_name # Instance attribute type: str (validator is set below) legal_hold_id = bb.Attribute("legal_hold_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") # Instance attribute type: str (validator is set below) export_name = bb.Attribute("export_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsExportRemovedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsExportRemovedDetails_validator = bv.Struct(LegalHoldsExportRemovedDetails) class LegalHoldsExportRemovedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsExportRemovedType, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsExportRemovedType_validator = bv.Struct(LegalHoldsExportRemovedType) class LegalHoldsReleaseAHoldDetails(bb.Struct): """ Released a hold. :ivar team_log.LegalHoldsReleaseAHoldDetails.legal_hold_id: Hold ID. :ivar team_log.LegalHoldsReleaseAHoldDetails.name: Hold name. """ __slots__ = [ '_legal_hold_id_value', '_name_value', ] _has_required_fields = True def __init__(self, legal_hold_id=None, name=None): self._legal_hold_id_value = bb.NOT_SET self._name_value = bb.NOT_SET if legal_hold_id is not None: self.legal_hold_id = legal_hold_id if name is not None: self.name = name # Instance attribute type: str (validator is set below) legal_hold_id = bb.Attribute("legal_hold_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsReleaseAHoldDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsReleaseAHoldDetails_validator = bv.Struct(LegalHoldsReleaseAHoldDetails) class LegalHoldsReleaseAHoldType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsReleaseAHoldType, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsReleaseAHoldType_validator = bv.Struct(LegalHoldsReleaseAHoldType) class LegalHoldsRemoveMembersDetails(bb.Struct): """ Removed members from a hold. :ivar team_log.LegalHoldsRemoveMembersDetails.legal_hold_id: Hold ID. :ivar team_log.LegalHoldsRemoveMembersDetails.name: Hold name. """ __slots__ = [ '_legal_hold_id_value', '_name_value', ] _has_required_fields = True def __init__(self, legal_hold_id=None, name=None): self._legal_hold_id_value = bb.NOT_SET self._name_value = bb.NOT_SET if legal_hold_id is not None: self.legal_hold_id = legal_hold_id if name is not None: self.name = name # Instance attribute type: str (validator is set below) legal_hold_id = bb.Attribute("legal_hold_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsRemoveMembersDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsRemoveMembersDetails_validator = bv.Struct(LegalHoldsRemoveMembersDetails) class LegalHoldsRemoveMembersType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsRemoveMembersType, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsRemoveMembersType_validator = bv.Struct(LegalHoldsRemoveMembersType) class LegalHoldsReportAHoldDetails(bb.Struct): """ Created a summary report for a hold. :ivar team_log.LegalHoldsReportAHoldDetails.legal_hold_id: Hold ID. :ivar team_log.LegalHoldsReportAHoldDetails.name: Hold name. """ __slots__ = [ '_legal_hold_id_value', '_name_value', ] _has_required_fields = True def __init__(self, legal_hold_id=None, name=None): self._legal_hold_id_value = bb.NOT_SET self._name_value = bb.NOT_SET if legal_hold_id is not None: self.legal_hold_id = legal_hold_id if name is not None: self.name = name # Instance attribute type: str (validator is set below) legal_hold_id = bb.Attribute("legal_hold_id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsReportAHoldDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsReportAHoldDetails_validator = bv.Struct(LegalHoldsReportAHoldDetails) class LegalHoldsReportAHoldType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LegalHoldsReportAHoldType, self)._process_custom_annotations(annotation_type, field_path, processor) LegalHoldsReportAHoldType_validator = bv.Struct(LegalHoldsReportAHoldType) class LinkedDeviceLogInfo(bb.Union): """ The device sessions that user is linked to. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar DesktopDeviceSessionLogInfo LinkedDeviceLogInfo.desktop_device_session: desktop device session's details. :ivar LegacyDeviceSessionLogInfo LinkedDeviceLogInfo.legacy_device_session: legacy device session's details. :ivar MobileDeviceSessionLogInfo LinkedDeviceLogInfo.mobile_device_session: mobile device session's details. :ivar WebDeviceSessionLogInfo LinkedDeviceLogInfo.web_device_session: web device session's details. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def desktop_device_session(cls, val): """ Create an instance of this class set to the ``desktop_device_session`` tag with value ``val``. :param DesktopDeviceSessionLogInfo val: :rtype: LinkedDeviceLogInfo """ return cls('desktop_device_session', val) @classmethod def legacy_device_session(cls, val): """ Create an instance of this class set to the ``legacy_device_session`` tag with value ``val``. :param LegacyDeviceSessionLogInfo val: :rtype: LinkedDeviceLogInfo """ return cls('legacy_device_session', val) @classmethod def mobile_device_session(cls, val): """ Create an instance of this class set to the ``mobile_device_session`` tag with value ``val``. :param MobileDeviceSessionLogInfo val: :rtype: LinkedDeviceLogInfo """ return cls('mobile_device_session', val) @classmethod def web_device_session(cls, val): """ Create an instance of this class set to the ``web_device_session`` tag with value ``val``. :param WebDeviceSessionLogInfo val: :rtype: LinkedDeviceLogInfo """ return cls('web_device_session', val) def is_desktop_device_session(self): """ Check if the union tag is ``desktop_device_session``. :rtype: bool """ return self._tag == 'desktop_device_session' def is_legacy_device_session(self): """ Check if the union tag is ``legacy_device_session``. :rtype: bool """ return self._tag == 'legacy_device_session' def is_mobile_device_session(self): """ Check if the union tag is ``mobile_device_session``. :rtype: bool """ return self._tag == 'mobile_device_session' def is_web_device_session(self): """ Check if the union tag is ``web_device_session``. :rtype: bool """ return self._tag == 'web_device_session' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_desktop_device_session(self): """ desktop device session's details. Only call this if :meth:`is_desktop_device_session` is true. :rtype: DesktopDeviceSessionLogInfo """ if not self.is_desktop_device_session(): raise AttributeError("tag 'desktop_device_session' not set") return self._value def get_legacy_device_session(self): """ legacy device session's details. Only call this if :meth:`is_legacy_device_session` is true. :rtype: LegacyDeviceSessionLogInfo """ if not self.is_legacy_device_session(): raise AttributeError("tag 'legacy_device_session' not set") return self._value def get_mobile_device_session(self): """ mobile device session's details. Only call this if :meth:`is_mobile_device_session` is true. :rtype: MobileDeviceSessionLogInfo """ if not self.is_mobile_device_session(): raise AttributeError("tag 'mobile_device_session' not set") return self._value def get_web_device_session(self): """ web device session's details. Only call this if :meth:`is_web_device_session` is true. :rtype: WebDeviceSessionLogInfo """ if not self.is_web_device_session(): raise AttributeError("tag 'web_device_session' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(LinkedDeviceLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) LinkedDeviceLogInfo_validator = bv.Union(LinkedDeviceLogInfo) class LockStatus(bb.Union): """ File lock status This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition locked = None # Attribute is overwritten below the class definition unlocked = None # Attribute is overwritten below the class definition other = None def is_locked(self): """ Check if the union tag is ``locked``. :rtype: bool """ return self._tag == 'locked' def is_unlocked(self): """ Check if the union tag is ``unlocked``. :rtype: bool """ return self._tag == 'unlocked' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LockStatus, self)._process_custom_annotations(annotation_type, field_path, processor) LockStatus_validator = bv.Union(LockStatus) class LoginFailDetails(bb.Struct): """ Failed to sign in. :ivar team_log.LoginFailDetails.is_emm_managed: Tells if the login device is EMM managed. Might be missing due to historical data gap. :ivar team_log.LoginFailDetails.login_method: Login method. :ivar team_log.LoginFailDetails.error_details: Error details. """ __slots__ = [ '_is_emm_managed_value', '_login_method_value', '_error_details_value', ] _has_required_fields = True def __init__(self, login_method=None, error_details=None, is_emm_managed=None): self._is_emm_managed_value = bb.NOT_SET self._login_method_value = bb.NOT_SET self._error_details_value = bb.NOT_SET if is_emm_managed is not None: self.is_emm_managed = is_emm_managed if login_method is not None: self.login_method = login_method if error_details is not None: self.error_details = error_details # Instance attribute type: bool (validator is set below) is_emm_managed = bb.Attribute("is_emm_managed", nullable=True) # Instance attribute type: LoginMethod (validator is set below) login_method = bb.Attribute("login_method", user_defined=True) # Instance attribute type: FailureDetailsLogInfo (validator is set below) error_details = bb.Attribute("error_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LoginFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LoginFailDetails_validator = bv.Struct(LoginFailDetails) class LoginFailType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LoginFailType, self)._process_custom_annotations(annotation_type, field_path, processor) LoginFailType_validator = bv.Struct(LoginFailType) class LoginMethod(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition apple_oauth = None # Attribute is overwritten below the class definition first_party_token_exchange = None # Attribute is overwritten below the class definition google_oauth = None # Attribute is overwritten below the class definition lenovo_oauth = None # Attribute is overwritten below the class definition password = None # Attribute is overwritten below the class definition qr_code = None # Attribute is overwritten below the class definition saml = None # Attribute is overwritten below the class definition two_factor_authentication = None # Attribute is overwritten below the class definition web_session = None # Attribute is overwritten below the class definition other = None def is_apple_oauth(self): """ Check if the union tag is ``apple_oauth``. :rtype: bool """ return self._tag == 'apple_oauth' def is_first_party_token_exchange(self): """ Check if the union tag is ``first_party_token_exchange``. :rtype: bool """ return self._tag == 'first_party_token_exchange' def is_google_oauth(self): """ Check if the union tag is ``google_oauth``. :rtype: bool """ return self._tag == 'google_oauth' def is_lenovo_oauth(self): """ Check if the union tag is ``lenovo_oauth``. :rtype: bool """ return self._tag == 'lenovo_oauth' def is_password(self): """ Check if the union tag is ``password``. :rtype: bool """ return self._tag == 'password' def is_qr_code(self): """ Check if the union tag is ``qr_code``. :rtype: bool """ return self._tag == 'qr_code' def is_saml(self): """ Check if the union tag is ``saml``. :rtype: bool """ return self._tag == 'saml' def is_two_factor_authentication(self): """ Check if the union tag is ``two_factor_authentication``. :rtype: bool """ return self._tag == 'two_factor_authentication' def is_web_session(self): """ Check if the union tag is ``web_session``. :rtype: bool """ return self._tag == 'web_session' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(LoginMethod, self)._process_custom_annotations(annotation_type, field_path, processor) LoginMethod_validator = bv.Union(LoginMethod) class LoginSuccessDetails(bb.Struct): """ Signed in. :ivar team_log.LoginSuccessDetails.is_emm_managed: Tells if the login device is EMM managed. Might be missing due to historical data gap. :ivar team_log.LoginSuccessDetails.login_method: Login method. """ __slots__ = [ '_is_emm_managed_value', '_login_method_value', ] _has_required_fields = True def __init__(self, login_method=None, is_emm_managed=None): self._is_emm_managed_value = bb.NOT_SET self._login_method_value = bb.NOT_SET if is_emm_managed is not None: self.is_emm_managed = is_emm_managed if login_method is not None: self.login_method = login_method # Instance attribute type: bool (validator is set below) is_emm_managed = bb.Attribute("is_emm_managed", nullable=True) # Instance attribute type: LoginMethod (validator is set below) login_method = bb.Attribute("login_method", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LoginSuccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LoginSuccessDetails_validator = bv.Struct(LoginSuccessDetails) class LoginSuccessType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LoginSuccessType, self)._process_custom_annotations(annotation_type, field_path, processor) LoginSuccessType_validator = bv.Struct(LoginSuccessType) class LogoutDetails(bb.Struct): """ Signed out. :ivar team_log.LogoutDetails.login_id: Login session id. """ __slots__ = [ '_login_id_value', ] _has_required_fields = False def __init__(self, login_id=None): self._login_id_value = bb.NOT_SET if login_id is not None: self.login_id = login_id # Instance attribute type: str (validator is set below) login_id = bb.Attribute("login_id", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(LogoutDetails, self)._process_custom_annotations(annotation_type, field_path, processor) LogoutDetails_validator = bv.Struct(LogoutDetails) class LogoutType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(LogoutType, self)._process_custom_annotations(annotation_type, field_path, processor) LogoutType_validator = bv.Struct(LogoutType) class MemberAddExternalIdDetails(bb.Struct): """ Added an external ID for team member. :ivar team_log.MemberAddExternalIdDetails.new_value: Current external id. """ __slots__ = [ '_new_value_value', ] _has_required_fields = True def __init__(self, new_value=None): self._new_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAddExternalIdDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAddExternalIdDetails_validator = bv.Struct(MemberAddExternalIdDetails) class MemberAddExternalIdType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAddExternalIdType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAddExternalIdType_validator = bv.Struct(MemberAddExternalIdType) class MemberAddNameDetails(bb.Struct): """ Added team member name. :ivar team_log.MemberAddNameDetails.new_value: New user's name. """ __slots__ = [ '_new_value_value', ] _has_required_fields = True def __init__(self, new_value=None): self._new_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value # Instance attribute type: UserNameLogInfo (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAddNameDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAddNameDetails_validator = bv.Struct(MemberAddNameDetails) class MemberAddNameType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberAddNameType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberAddNameType_validator = bv.Struct(MemberAddNameType) class MemberChangeAdminRoleDetails(bb.Struct): """ Changed team member admin role. :ivar team_log.MemberChangeAdminRoleDetails.new_value: New admin role. This field is relevant when the admin role is changed or whenthe user role changes from no admin rights to with admin rights. :ivar team_log.MemberChangeAdminRoleDetails.previous_value: Previous admin role. This field is relevant when the admin role is changed or when the admin role is removed. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = False def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: AdminRole (validator is set below) new_value = bb.Attribute("new_value", nullable=True, user_defined=True) # Instance attribute type: AdminRole (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeAdminRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeAdminRoleDetails_validator = bv.Struct(MemberChangeAdminRoleDetails) class MemberChangeAdminRoleType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeAdminRoleType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeAdminRoleType_validator = bv.Struct(MemberChangeAdminRoleType) class MemberChangeEmailDetails(bb.Struct): """ Changed team member email. :ivar team_log.MemberChangeEmailDetails.new_value: New email. :ivar team_log.MemberChangeEmailDetails.previous_value: Previous email. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeEmailDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeEmailDetails_validator = bv.Struct(MemberChangeEmailDetails) class MemberChangeEmailType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeEmailType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeEmailType_validator = bv.Struct(MemberChangeEmailType) class MemberChangeExternalIdDetails(bb.Struct): """ Changed the external ID for team member. :ivar team_log.MemberChangeExternalIdDetails.new_value: Current external id. :ivar team_log.MemberChangeExternalIdDetails.previous_value: Old external id. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeExternalIdDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeExternalIdDetails_validator = bv.Struct(MemberChangeExternalIdDetails) class MemberChangeExternalIdType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeExternalIdType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeExternalIdType_validator = bv.Struct(MemberChangeExternalIdType) class MemberChangeMembershipTypeDetails(bb.Struct): """ Changed membership type (limited/full) of member. :ivar team_log.MemberChangeMembershipTypeDetails.prev_value: Previous membership type. :ivar team_log.MemberChangeMembershipTypeDetails.new_value: New membership type. """ __slots__ = [ '_prev_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, prev_value=None, new_value=None): self._prev_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if prev_value is not None: self.prev_value = prev_value if new_value is not None: self.new_value = new_value # Instance attribute type: TeamMembershipType (validator is set below) prev_value = bb.Attribute("prev_value", user_defined=True) # Instance attribute type: TeamMembershipType (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeMembershipTypeDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeMembershipTypeDetails_validator = bv.Struct(MemberChangeMembershipTypeDetails) class MemberChangeMembershipTypeType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeMembershipTypeType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeMembershipTypeType_validator = bv.Struct(MemberChangeMembershipTypeType) class MemberChangeNameDetails(bb.Struct): """ Changed team member name. :ivar team_log.MemberChangeNameDetails.new_value: New user's name. :ivar team_log.MemberChangeNameDetails.previous_value: Previous user's name. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: UserNameLogInfo (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: UserNameLogInfo (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeNameDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeNameDetails_validator = bv.Struct(MemberChangeNameDetails) class MemberChangeNameType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeNameType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeNameType_validator = bv.Struct(MemberChangeNameType) class MemberChangeResellerRoleDetails(bb.Struct): """ Changed team member reseller role. :ivar team_log.MemberChangeResellerRoleDetails.new_value: New reseller role. This field is relevant when the reseller role is changed. :ivar team_log.MemberChangeResellerRoleDetails.previous_value: Previous reseller role. This field is relevant when the reseller role is changed or when the reseller role is removed. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: ResellerRole (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: ResellerRole (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeResellerRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeResellerRoleDetails_validator = bv.Struct(MemberChangeResellerRoleDetails) class MemberChangeResellerRoleType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeResellerRoleType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeResellerRoleType_validator = bv.Struct(MemberChangeResellerRoleType) class MemberChangeStatusDetails(bb.Struct): """ Changed member status (invited, joined, suspended, etc.). :ivar team_log.MemberChangeStatusDetails.previous_value: Previous member status. Might be missing due to historical data gap. :ivar team_log.MemberChangeStatusDetails.new_value: New member status. :ivar team_log.MemberChangeStatusDetails.action: Additional information indicating the action taken that caused status change. :ivar team_log.MemberChangeStatusDetails.new_team: The user's new team name. This field is relevant when the user is transferred off the team. :ivar team_log.MemberChangeStatusDetails.previous_team: The user's previous team name. This field is relevant when the user is transferred onto the team. """ __slots__ = [ '_previous_value_value', '_new_value_value', '_action_value', '_new_team_value', '_previous_team_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None, action=None, new_team=None, previous_team=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET self._action_value = bb.NOT_SET self._new_team_value = bb.NOT_SET self._previous_team_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value if action is not None: self.action = action if new_team is not None: self.new_team = new_team if previous_team is not None: self.previous_team = previous_team # Instance attribute type: MemberStatus (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) # Instance attribute type: MemberStatus (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: ActionDetails (validator is set below) action = bb.Attribute("action", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) new_team = bb.Attribute("new_team", nullable=True) # Instance attribute type: str (validator is set below) previous_team = bb.Attribute("previous_team", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeStatusDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeStatusDetails_validator = bv.Struct(MemberChangeStatusDetails) class MemberChangeStatusType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberChangeStatusType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberChangeStatusType_validator = bv.Struct(MemberChangeStatusType) class MemberDeleteManualContactsDetails(bb.Struct): """ Cleared manually added contacts. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberDeleteManualContactsDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberDeleteManualContactsDetails_validator = bv.Struct(MemberDeleteManualContactsDetails) class MemberDeleteManualContactsType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberDeleteManualContactsType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberDeleteManualContactsType_validator = bv.Struct(MemberDeleteManualContactsType) class MemberDeleteProfilePhotoDetails(bb.Struct): """ Deleted team member profile photo. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberDeleteProfilePhotoDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberDeleteProfilePhotoDetails_validator = bv.Struct(MemberDeleteProfilePhotoDetails) class MemberDeleteProfilePhotoType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberDeleteProfilePhotoType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberDeleteProfilePhotoType_validator = bv.Struct(MemberDeleteProfilePhotoType) class MemberPermanentlyDeleteAccountContentsDetails(bb.Struct): """ Permanently deleted contents of deleted team member account. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberPermanentlyDeleteAccountContentsDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberPermanentlyDeleteAccountContentsDetails_validator = bv.Struct(MemberPermanentlyDeleteAccountContentsDetails) class MemberPermanentlyDeleteAccountContentsType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberPermanentlyDeleteAccountContentsType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberPermanentlyDeleteAccountContentsType_validator = bv.Struct(MemberPermanentlyDeleteAccountContentsType) class MemberRemoveActionType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition delete = None # Attribute is overwritten below the class definition leave = None # Attribute is overwritten below the class definition offboard = None # Attribute is overwritten below the class definition offboard_and_retain_team_folders = None # Attribute is overwritten below the class definition other = None def is_delete(self): """ Check if the union tag is ``delete``. :rtype: bool """ return self._tag == 'delete' def is_leave(self): """ Check if the union tag is ``leave``. :rtype: bool """ return self._tag == 'leave' def is_offboard(self): """ Check if the union tag is ``offboard``. :rtype: bool """ return self._tag == 'offboard' def is_offboard_and_retain_team_folders(self): """ Check if the union tag is ``offboard_and_retain_team_folders``. :rtype: bool """ return self._tag == 'offboard_and_retain_team_folders' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberRemoveActionType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberRemoveActionType_validator = bv.Union(MemberRemoveActionType) class MemberRemoveExternalIdDetails(bb.Struct): """ Removed the external ID for team member. :ivar team_log.MemberRemoveExternalIdDetails.previous_value: Old external id. """ __slots__ = [ '_previous_value_value', ] _has_required_fields = True def __init__(self, previous_value=None): self._previous_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberRemoveExternalIdDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberRemoveExternalIdDetails_validator = bv.Struct(MemberRemoveExternalIdDetails) class MemberRemoveExternalIdType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberRemoveExternalIdType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberRemoveExternalIdType_validator = bv.Struct(MemberRemoveExternalIdType) class MemberRequestsChangePolicyDetails(bb.Struct): """ Changed whether users can find team when not invited. :ivar team_log.MemberRequestsChangePolicyDetails.new_value: New member change requests policy. :ivar team_log.MemberRequestsChangePolicyDetails.previous_value: Previous member change requests policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: MemberRequestsPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: MemberRequestsPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberRequestsChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberRequestsChangePolicyDetails_validator = bv.Struct(MemberRequestsChangePolicyDetails) class MemberRequestsChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberRequestsChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberRequestsChangePolicyType_validator = bv.Struct(MemberRequestsChangePolicyType) class MemberRequestsPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition auto_accept = None # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition require_approval = None # Attribute is overwritten below the class definition other = None def is_auto_accept(self): """ Check if the union tag is ``auto_accept``. :rtype: bool """ return self._tag == 'auto_accept' def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_require_approval(self): """ Check if the union tag is ``require_approval``. :rtype: bool """ return self._tag == 'require_approval' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberRequestsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) MemberRequestsPolicy_validator = bv.Union(MemberRequestsPolicy) class MemberSendInvitePolicy(bb.Union): """ Policy for controlling whether team members can send team invites This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition everyone = None # Attribute is overwritten below the class definition specific_members = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_everyone(self): """ Check if the union tag is ``everyone``. :rtype: bool """ return self._tag == 'everyone' def is_specific_members(self): """ Check if the union tag is ``specific_members``. :rtype: bool """ return self._tag == 'specific_members' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSendInvitePolicy, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSendInvitePolicy_validator = bv.Union(MemberSendInvitePolicy) class MemberSendInvitePolicyChangedDetails(bb.Struct): """ Changed member send invite policy for team. :ivar team_log.MemberSendInvitePolicyChangedDetails.new_value: New team member send invite policy. :ivar team_log.MemberSendInvitePolicyChangedDetails.previous_value: Previous team member send invite policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: MemberSendInvitePolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: MemberSendInvitePolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSendInvitePolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSendInvitePolicyChangedDetails_validator = bv.Struct(MemberSendInvitePolicyChangedDetails) class MemberSendInvitePolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSendInvitePolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSendInvitePolicyChangedType_validator = bv.Struct(MemberSendInvitePolicyChangedType) class MemberSetProfilePhotoDetails(bb.Struct): """ Set team member profile photo. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSetProfilePhotoDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSetProfilePhotoDetails_validator = bv.Struct(MemberSetProfilePhotoDetails) class MemberSetProfilePhotoType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSetProfilePhotoType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSetProfilePhotoType_validator = bv.Struct(MemberSetProfilePhotoType) class MemberSpaceLimitsAddCustomQuotaDetails(bb.Struct): """ Set custom member space limit. :ivar team_log.MemberSpaceLimitsAddCustomQuotaDetails.new_value: New custom quota value in bytes. """ __slots__ = [ '_new_value_value', ] _has_required_fields = True def __init__(self, new_value=None): self._new_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value # Instance attribute type: int (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsAddCustomQuotaDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsAddCustomQuotaDetails_validator = bv.Struct(MemberSpaceLimitsAddCustomQuotaDetails) class MemberSpaceLimitsAddCustomQuotaType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsAddCustomQuotaType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsAddCustomQuotaType_validator = bv.Struct(MemberSpaceLimitsAddCustomQuotaType) class MemberSpaceLimitsAddExceptionDetails(bb.Struct): """ Added members to member space limit exception list. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsAddExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsAddExceptionDetails_validator = bv.Struct(MemberSpaceLimitsAddExceptionDetails) class MemberSpaceLimitsAddExceptionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsAddExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsAddExceptionType_validator = bv.Struct(MemberSpaceLimitsAddExceptionType) class MemberSpaceLimitsChangeCapsTypePolicyDetails(bb.Struct): """ Changed member space limit type for team. :ivar team_log.MemberSpaceLimitsChangeCapsTypePolicyDetails.previous_value: Previous space limit type. :ivar team_log.MemberSpaceLimitsChangeCapsTypePolicyDetails.new_value: New space limit type. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: SpaceCapsType (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: SpaceCapsType (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsChangeCapsTypePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsChangeCapsTypePolicyDetails_validator = bv.Struct(MemberSpaceLimitsChangeCapsTypePolicyDetails) class MemberSpaceLimitsChangeCapsTypePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsChangeCapsTypePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsChangeCapsTypePolicyType_validator = bv.Struct(MemberSpaceLimitsChangeCapsTypePolicyType) class MemberSpaceLimitsChangeCustomQuotaDetails(bb.Struct): """ Changed custom member space limit. :ivar team_log.MemberSpaceLimitsChangeCustomQuotaDetails.previous_value: Previous custom quota value in bytes. :ivar team_log.MemberSpaceLimitsChangeCustomQuotaDetails.new_value: New custom quota value in bytes. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: int (validator is set below) previous_value = bb.Attribute("previous_value") # Instance attribute type: int (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsChangeCustomQuotaDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsChangeCustomQuotaDetails_validator = bv.Struct(MemberSpaceLimitsChangeCustomQuotaDetails) class MemberSpaceLimitsChangeCustomQuotaType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsChangeCustomQuotaType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsChangeCustomQuotaType_validator = bv.Struct(MemberSpaceLimitsChangeCustomQuotaType) class MemberSpaceLimitsChangePolicyDetails(bb.Struct): """ Changed team default member space limit. :ivar team_log.MemberSpaceLimitsChangePolicyDetails.previous_value: Previous team default limit value in bytes. Might be missing due to historical data gap. :ivar team_log.MemberSpaceLimitsChangePolicyDetails.new_value: New team default limit value in bytes. Might be missing due to historical data gap. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = False def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: int (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True) # Instance attribute type: int (validator is set below) new_value = bb.Attribute("new_value", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsChangePolicyDetails_validator = bv.Struct(MemberSpaceLimitsChangePolicyDetails) class MemberSpaceLimitsChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsChangePolicyType_validator = bv.Struct(MemberSpaceLimitsChangePolicyType) class MemberSpaceLimitsChangeStatusDetails(bb.Struct): """ Changed space limit status. :ivar team_log.MemberSpaceLimitsChangeStatusDetails.previous_value: Previous storage quota status. :ivar team_log.MemberSpaceLimitsChangeStatusDetails.new_value: New storage quota status. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: SpaceLimitsStatus (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: SpaceLimitsStatus (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsChangeStatusDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsChangeStatusDetails_validator = bv.Struct(MemberSpaceLimitsChangeStatusDetails) class MemberSpaceLimitsChangeStatusType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsChangeStatusType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsChangeStatusType_validator = bv.Struct(MemberSpaceLimitsChangeStatusType) class MemberSpaceLimitsRemoveCustomQuotaDetails(bb.Struct): """ Removed custom member space limit. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsRemoveCustomQuotaDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsRemoveCustomQuotaDetails_validator = bv.Struct(MemberSpaceLimitsRemoveCustomQuotaDetails) class MemberSpaceLimitsRemoveCustomQuotaType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsRemoveCustomQuotaType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsRemoveCustomQuotaType_validator = bv.Struct(MemberSpaceLimitsRemoveCustomQuotaType) class MemberSpaceLimitsRemoveExceptionDetails(bb.Struct): """ Removed members from member space limit exception list. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsRemoveExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsRemoveExceptionDetails_validator = bv.Struct(MemberSpaceLimitsRemoveExceptionDetails) class MemberSpaceLimitsRemoveExceptionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSpaceLimitsRemoveExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSpaceLimitsRemoveExceptionType_validator = bv.Struct(MemberSpaceLimitsRemoveExceptionType) class MemberStatus(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition active = None # Attribute is overwritten below the class definition invited = None # Attribute is overwritten below the class definition moved_to_another_team = None # Attribute is overwritten below the class definition not_joined = None # Attribute is overwritten below the class definition removed = None # Attribute is overwritten below the class definition suspended = None # Attribute is overwritten below the class definition other = None def is_active(self): """ Check if the union tag is ``active``. :rtype: bool """ return self._tag == 'active' def is_invited(self): """ Check if the union tag is ``invited``. :rtype: bool """ return self._tag == 'invited' def is_moved_to_another_team(self): """ Check if the union tag is ``moved_to_another_team``. :rtype: bool """ return self._tag == 'moved_to_another_team' def is_not_joined(self): """ Check if the union tag is ``not_joined``. :rtype: bool """ return self._tag == 'not_joined' def is_removed(self): """ Check if the union tag is ``removed``. :rtype: bool """ return self._tag == 'removed' def is_suspended(self): """ Check if the union tag is ``suspended``. :rtype: bool """ return self._tag == 'suspended' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberStatus, self)._process_custom_annotations(annotation_type, field_path, processor) MemberStatus_validator = bv.Union(MemberStatus) class MemberSuggestDetails(bb.Struct): """ Suggested person to add to team. :ivar team_log.MemberSuggestDetails.suggested_members: suggested users emails. """ __slots__ = [ '_suggested_members_value', ] _has_required_fields = True def __init__(self, suggested_members=None): self._suggested_members_value = bb.NOT_SET if suggested_members is not None: self.suggested_members = suggested_members # Instance attribute type: list of [str] (validator is set below) suggested_members = bb.Attribute("suggested_members") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSuggestDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSuggestDetails_validator = bv.Struct(MemberSuggestDetails) class MemberSuggestType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSuggestType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSuggestType_validator = bv.Struct(MemberSuggestType) class MemberSuggestionsChangePolicyDetails(bb.Struct): """ Enabled/disabled option for team members to suggest people to add to team. :ivar team_log.MemberSuggestionsChangePolicyDetails.new_value: New team member suggestions policy. :ivar team_log.MemberSuggestionsChangePolicyDetails.previous_value: Previous team member suggestions policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: MemberSuggestionsPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: MemberSuggestionsPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSuggestionsChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSuggestionsChangePolicyDetails_validator = bv.Struct(MemberSuggestionsChangePolicyDetails) class MemberSuggestionsChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSuggestionsChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSuggestionsChangePolicyType_validator = bv.Struct(MemberSuggestionsChangePolicyType) class MemberSuggestionsPolicy(bb.Union): """ Member suggestions policy This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberSuggestionsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) MemberSuggestionsPolicy_validator = bv.Union(MemberSuggestionsPolicy) class MemberTransferAccountContentsDetails(bb.Struct): """ Transferred contents of deleted member account to another member. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberTransferAccountContentsDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MemberTransferAccountContentsDetails_validator = bv.Struct(MemberTransferAccountContentsDetails) class MemberTransferAccountContentsType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberTransferAccountContentsType, self)._process_custom_annotations(annotation_type, field_path, processor) MemberTransferAccountContentsType_validator = bv.Struct(MemberTransferAccountContentsType) class MemberTransferredInternalFields(bb.Struct): """ Internal only - fields for target team computations :ivar team_log.MemberTransferredInternalFields.source_team_id: Internal only - team user was moved from. :ivar team_log.MemberTransferredInternalFields.target_team_id: Internal only - team user was moved to. """ __slots__ = [ '_source_team_id_value', '_target_team_id_value', ] _has_required_fields = True def __init__(self, source_team_id=None, target_team_id=None): self._source_team_id_value = bb.NOT_SET self._target_team_id_value = bb.NOT_SET if source_team_id is not None: self.source_team_id = source_team_id if target_team_id is not None: self.target_team_id = target_team_id # Instance attribute type: str (validator is set below) source_team_id = bb.Attribute("source_team_id") # Instance attribute type: str (validator is set below) target_team_id = bb.Attribute("target_team_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MemberTransferredInternalFields, self)._process_custom_annotations(annotation_type, field_path, processor) MemberTransferredInternalFields_validator = bv.Struct(MemberTransferredInternalFields) class MicrosoftOfficeAddinChangePolicyDetails(bb.Struct): """ Enabled/disabled Microsoft Office add-in. :ivar team_log.MicrosoftOfficeAddinChangePolicyDetails.new_value: New Microsoft Office addin policy. :ivar team_log.MicrosoftOfficeAddinChangePolicyDetails.previous_value: Previous Microsoft Office addin policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: MicrosoftOfficeAddinPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: MicrosoftOfficeAddinPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MicrosoftOfficeAddinChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MicrosoftOfficeAddinChangePolicyDetails_validator = bv.Struct(MicrosoftOfficeAddinChangePolicyDetails) class MicrosoftOfficeAddinChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(MicrosoftOfficeAddinChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) MicrosoftOfficeAddinChangePolicyType_validator = bv.Struct(MicrosoftOfficeAddinChangePolicyType) class MicrosoftOfficeAddinPolicy(bb.Union): """ Microsoft Office addin policy This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(MicrosoftOfficeAddinPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) MicrosoftOfficeAddinPolicy_validator = bv.Union(MicrosoftOfficeAddinPolicy) class MissingDetails(bb.Struct): """ An indication that an error occurred while retrieving the event. Some attributes of the event may be omitted as a result. :ivar team_log.MissingDetails.source_event_fields: All the data that could be retrieved and converted from the source event. """ __slots__ = [ '_source_event_fields_value', ] _has_required_fields = False def __init__(self, source_event_fields=None): self._source_event_fields_value = bb.NOT_SET if source_event_fields is not None: self.source_event_fields = source_event_fields # Instance attribute type: str (validator is set below) source_event_fields = bb.Attribute("source_event_fields", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MissingDetails, self)._process_custom_annotations(annotation_type, field_path, processor) MissingDetails_validator = bv.Struct(MissingDetails) class MobileDeviceSessionLogInfo(DeviceSessionLogInfo): """ Information about linked Dropbox mobile client sessions :ivar team_log.MobileDeviceSessionLogInfo.session_info: Mobile session unique id. :ivar team_log.MobileDeviceSessionLogInfo.device_name: The device name. :ivar team_log.MobileDeviceSessionLogInfo.client_type: The mobile application type. :ivar team_log.MobileDeviceSessionLogInfo.client_version: The Dropbox client version. :ivar team_log.MobileDeviceSessionLogInfo.os_version: The hosting OS version. :ivar team_log.MobileDeviceSessionLogInfo.last_carrier: last carrier used by the device. """ __slots__ = [ '_session_info_value', '_device_name_value', '_client_type_value', '_client_version_value', '_os_version_value', '_last_carrier_value', ] _has_required_fields = True def __init__(self, device_name=None, client_type=None, ip_address=None, created=None, updated=None, session_info=None, client_version=None, os_version=None, last_carrier=None): super(MobileDeviceSessionLogInfo, self).__init__(ip_address, created, updated) self._session_info_value = bb.NOT_SET self._device_name_value = bb.NOT_SET self._client_type_value = bb.NOT_SET self._client_version_value = bb.NOT_SET self._os_version_value = bb.NOT_SET self._last_carrier_value = bb.NOT_SET if session_info is not None: self.session_info = session_info if device_name is not None: self.device_name = device_name if client_type is not None: self.client_type = client_type if client_version is not None: self.client_version = client_version if os_version is not None: self.os_version = os_version if last_carrier is not None: self.last_carrier = last_carrier # Instance attribute type: MobileSessionLogInfo (validator is set below) session_info = bb.Attribute("session_info", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) device_name = bb.Attribute("device_name") # Instance attribute type: team.MobileClientPlatform (validator is set below) client_type = bb.Attribute("client_type", user_defined=True) # Instance attribute type: str (validator is set below) client_version = bb.Attribute("client_version", nullable=True) # Instance attribute type: str (validator is set below) os_version = bb.Attribute("os_version", nullable=True) # Instance attribute type: str (validator is set below) last_carrier = bb.Attribute("last_carrier", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MobileDeviceSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) MobileDeviceSessionLogInfo_validator = bv.Struct(MobileDeviceSessionLogInfo) class MobileSessionLogInfo(SessionLogInfo): """ Mobile session. """ __slots__ = [ ] _has_required_fields = False def __init__(self, session_id=None): super(MobileSessionLogInfo, self).__init__(session_id) def _process_custom_annotations(self, annotation_type, field_path, processor): super(MobileSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) MobileSessionLogInfo_validator = bv.Struct(MobileSessionLogInfo) class NamespaceRelativePathLogInfo(bb.Struct): """ Namespace relative path details. :ivar team_log.NamespaceRelativePathLogInfo.ns_id: Namespace ID. :ivar team_log.NamespaceRelativePathLogInfo.relative_path: A path relative to the specified namespace ID. :ivar team_log.NamespaceRelativePathLogInfo.is_shared_namespace: True if the namespace is shared. """ __slots__ = [ '_ns_id_value', '_relative_path_value', '_is_shared_namespace_value', ] _has_required_fields = False def __init__(self, ns_id=None, relative_path=None, is_shared_namespace=None): self._ns_id_value = bb.NOT_SET self._relative_path_value = bb.NOT_SET self._is_shared_namespace_value = bb.NOT_SET if ns_id is not None: self.ns_id = ns_id if relative_path is not None: self.relative_path = relative_path if is_shared_namespace is not None: self.is_shared_namespace = is_shared_namespace # Instance attribute type: str (validator is set below) ns_id = bb.Attribute("ns_id", nullable=True) # Instance attribute type: str (validator is set below) relative_path = bb.Attribute("relative_path", nullable=True) # Instance attribute type: bool (validator is set below) is_shared_namespace = bb.Attribute("is_shared_namespace", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(NamespaceRelativePathLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) NamespaceRelativePathLogInfo_validator = bv.Struct(NamespaceRelativePathLogInfo) class NetworkControlChangePolicyDetails(bb.Struct): """ Enabled/disabled network control. :ivar team_log.NetworkControlChangePolicyDetails.new_value: New network control policy. :ivar team_log.NetworkControlChangePolicyDetails.previous_value: Previous network control policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: NetworkControlPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: NetworkControlPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(NetworkControlChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NetworkControlChangePolicyDetails_validator = bv.Struct(NetworkControlChangePolicyDetails) class NetworkControlChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NetworkControlChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) NetworkControlChangePolicyType_validator = bv.Struct(NetworkControlChangePolicyType) class NetworkControlPolicy(bb.Union): """ Network control policy This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(NetworkControlPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) NetworkControlPolicy_validator = bv.Union(NetworkControlPolicy) class NoExpirationLinkGenCreateReportDetails(bb.Struct): """ Report created: Links created with no expiration. :ivar team_log.NoExpirationLinkGenCreateReportDetails.start_date: Report start date. :ivar team_log.NoExpirationLinkGenCreateReportDetails.end_date: Report end date. """ __slots__ = [ '_start_date_value', '_end_date_value', ] _has_required_fields = True def __init__(self, start_date=None, end_date=None): self._start_date_value = bb.NOT_SET self._end_date_value = bb.NOT_SET if start_date is not None: self.start_date = start_date if end_date is not None: self.end_date = end_date # Instance attribute type: datetime.datetime (validator is set below) start_date = bb.Attribute("start_date") # Instance attribute type: datetime.datetime (validator is set below) end_date = bb.Attribute("end_date") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoExpirationLinkGenCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NoExpirationLinkGenCreateReportDetails_validator = bv.Struct(NoExpirationLinkGenCreateReportDetails) class NoExpirationLinkGenCreateReportType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoExpirationLinkGenCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor) NoExpirationLinkGenCreateReportType_validator = bv.Struct(NoExpirationLinkGenCreateReportType) class NoExpirationLinkGenReportFailedDetails(bb.Struct): """ Couldn't create report: Links created with no expiration. :ivar team_log.NoExpirationLinkGenReportFailedDetails.failure_reason: Failure reason. """ __slots__ = [ '_failure_reason_value', ] _has_required_fields = True def __init__(self, failure_reason=None): self._failure_reason_value = bb.NOT_SET if failure_reason is not None: self.failure_reason = failure_reason # Instance attribute type: team.TeamReportFailureReason (validator is set below) failure_reason = bb.Attribute("failure_reason", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoExpirationLinkGenReportFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NoExpirationLinkGenReportFailedDetails_validator = bv.Struct(NoExpirationLinkGenReportFailedDetails) class NoExpirationLinkGenReportFailedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoExpirationLinkGenReportFailedType, self)._process_custom_annotations(annotation_type, field_path, processor) NoExpirationLinkGenReportFailedType_validator = bv.Struct(NoExpirationLinkGenReportFailedType) class NoPasswordLinkGenCreateReportDetails(bb.Struct): """ Report created: Links created without passwords. :ivar team_log.NoPasswordLinkGenCreateReportDetails.start_date: Report start date. :ivar team_log.NoPasswordLinkGenCreateReportDetails.end_date: Report end date. """ __slots__ = [ '_start_date_value', '_end_date_value', ] _has_required_fields = True def __init__(self, start_date=None, end_date=None): self._start_date_value = bb.NOT_SET self._end_date_value = bb.NOT_SET if start_date is not None: self.start_date = start_date if end_date is not None: self.end_date = end_date # Instance attribute type: datetime.datetime (validator is set below) start_date = bb.Attribute("start_date") # Instance attribute type: datetime.datetime (validator is set below) end_date = bb.Attribute("end_date") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoPasswordLinkGenCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NoPasswordLinkGenCreateReportDetails_validator = bv.Struct(NoPasswordLinkGenCreateReportDetails) class NoPasswordLinkGenCreateReportType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoPasswordLinkGenCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor) NoPasswordLinkGenCreateReportType_validator = bv.Struct(NoPasswordLinkGenCreateReportType) class NoPasswordLinkGenReportFailedDetails(bb.Struct): """ Couldn't create report: Links created without passwords. :ivar team_log.NoPasswordLinkGenReportFailedDetails.failure_reason: Failure reason. """ __slots__ = [ '_failure_reason_value', ] _has_required_fields = True def __init__(self, failure_reason=None): self._failure_reason_value = bb.NOT_SET if failure_reason is not None: self.failure_reason = failure_reason # Instance attribute type: team.TeamReportFailureReason (validator is set below) failure_reason = bb.Attribute("failure_reason", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoPasswordLinkGenReportFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NoPasswordLinkGenReportFailedDetails_validator = bv.Struct(NoPasswordLinkGenReportFailedDetails) class NoPasswordLinkGenReportFailedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoPasswordLinkGenReportFailedType, self)._process_custom_annotations(annotation_type, field_path, processor) NoPasswordLinkGenReportFailedType_validator = bv.Struct(NoPasswordLinkGenReportFailedType) class NoPasswordLinkViewCreateReportDetails(bb.Struct): """ Report created: Views of links without passwords. :ivar team_log.NoPasswordLinkViewCreateReportDetails.start_date: Report start date. :ivar team_log.NoPasswordLinkViewCreateReportDetails.end_date: Report end date. """ __slots__ = [ '_start_date_value', '_end_date_value', ] _has_required_fields = True def __init__(self, start_date=None, end_date=None): self._start_date_value = bb.NOT_SET self._end_date_value = bb.NOT_SET if start_date is not None: self.start_date = start_date if end_date is not None: self.end_date = end_date # Instance attribute type: datetime.datetime (validator is set below) start_date = bb.Attribute("start_date") # Instance attribute type: datetime.datetime (validator is set below) end_date = bb.Attribute("end_date") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoPasswordLinkViewCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NoPasswordLinkViewCreateReportDetails_validator = bv.Struct(NoPasswordLinkViewCreateReportDetails) class NoPasswordLinkViewCreateReportType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoPasswordLinkViewCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor) NoPasswordLinkViewCreateReportType_validator = bv.Struct(NoPasswordLinkViewCreateReportType) class NoPasswordLinkViewReportFailedDetails(bb.Struct): """ Couldn't create report: Views of links without passwords. :ivar team_log.NoPasswordLinkViewReportFailedDetails.failure_reason: Failure reason. """ __slots__ = [ '_failure_reason_value', ] _has_required_fields = True def __init__(self, failure_reason=None): self._failure_reason_value = bb.NOT_SET if failure_reason is not None: self.failure_reason = failure_reason # Instance attribute type: team.TeamReportFailureReason (validator is set below) failure_reason = bb.Attribute("failure_reason", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoPasswordLinkViewReportFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NoPasswordLinkViewReportFailedDetails_validator = bv.Struct(NoPasswordLinkViewReportFailedDetails) class NoPasswordLinkViewReportFailedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoPasswordLinkViewReportFailedType, self)._process_custom_annotations(annotation_type, field_path, processor) NoPasswordLinkViewReportFailedType_validator = bv.Struct(NoPasswordLinkViewReportFailedType) class UserLogInfo(bb.Struct): """ User's logged information. :ivar team_log.UserLogInfo.account_id: User unique ID. :ivar team_log.UserLogInfo.display_name: User display name. :ivar team_log.UserLogInfo.email: User email address. """ __slots__ = [ '_account_id_value', '_display_name_value', '_email_value', ] _has_required_fields = False def __init__(self, account_id=None, display_name=None, email=None): self._account_id_value = bb.NOT_SET self._display_name_value = bb.NOT_SET self._email_value = bb.NOT_SET if account_id is not None: self.account_id = account_id if display_name is not None: self.display_name = display_name if email is not None: self.email = email # Instance attribute type: str (validator is set below) account_id = bb.Attribute("account_id", nullable=True) # Instance attribute type: str (validator is set below) display_name = bb.Attribute("display_name", nullable=True) # Instance attribute type: str (validator is set below) email = bb.Attribute("email", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) UserLogInfo_validator = bv.StructTree(UserLogInfo) class NonTeamMemberLogInfo(UserLogInfo): """ Non team member's logged information. """ __slots__ = [ ] _has_required_fields = False def __init__(self, account_id=None, display_name=None, email=None): super(NonTeamMemberLogInfo, self).__init__(account_id, display_name, email) def _process_custom_annotations(self, annotation_type, field_path, processor): super(NonTeamMemberLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) NonTeamMemberLogInfo_validator = bv.Struct(NonTeamMemberLogInfo) class NonTrustedTeamDetails(bb.Struct): """ The email to which the request was sent :ivar team_log.NonTrustedTeamDetails.team: The email to which the request was sent. """ __slots__ = [ '_team_value', ] _has_required_fields = True def __init__(self, team=None): self._team_value = bb.NOT_SET if team is not None: self.team = team # Instance attribute type: str (validator is set below) team = bb.Attribute("team") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NonTrustedTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NonTrustedTeamDetails_validator = bv.Struct(NonTrustedTeamDetails) class NoteAclInviteOnlyDetails(bb.Struct): """ Changed Paper doc to invite-only. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoteAclInviteOnlyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NoteAclInviteOnlyDetails_validator = bv.Struct(NoteAclInviteOnlyDetails) class NoteAclInviteOnlyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoteAclInviteOnlyType, self)._process_custom_annotations(annotation_type, field_path, processor) NoteAclInviteOnlyType_validator = bv.Struct(NoteAclInviteOnlyType) class NoteAclLinkDetails(bb.Struct): """ Changed Paper doc to link-accessible. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoteAclLinkDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NoteAclLinkDetails_validator = bv.Struct(NoteAclLinkDetails) class NoteAclLinkType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoteAclLinkType, self)._process_custom_annotations(annotation_type, field_path, processor) NoteAclLinkType_validator = bv.Struct(NoteAclLinkType) class NoteAclTeamLinkDetails(bb.Struct): """ Changed Paper doc to link-accessible for team. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoteAclTeamLinkDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NoteAclTeamLinkDetails_validator = bv.Struct(NoteAclTeamLinkDetails) class NoteAclTeamLinkType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoteAclTeamLinkType, self)._process_custom_annotations(annotation_type, field_path, processor) NoteAclTeamLinkType_validator = bv.Struct(NoteAclTeamLinkType) class NoteShareReceiveDetails(bb.Struct): """ Shared received Paper doc. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoteShareReceiveDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NoteShareReceiveDetails_validator = bv.Struct(NoteShareReceiveDetails) class NoteShareReceiveType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoteShareReceiveType, self)._process_custom_annotations(annotation_type, field_path, processor) NoteShareReceiveType_validator = bv.Struct(NoteShareReceiveType) class NoteSharedDetails(bb.Struct): """ Shared Paper doc. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoteSharedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) NoteSharedDetails_validator = bv.Struct(NoteSharedDetails) class NoteSharedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(NoteSharedType, self)._process_custom_annotations(annotation_type, field_path, processor) NoteSharedType_validator = bv.Struct(NoteSharedType) class ObjectLabelAddedDetails(bb.Struct): """ Added a label. :ivar team_log.ObjectLabelAddedDetails.label_type: Labels mark a file or folder. """ __slots__ = [ '_label_type_value', ] _has_required_fields = True def __init__(self, label_type=None): self._label_type_value = bb.NOT_SET if label_type is not None: self.label_type = label_type # Instance attribute type: LabelType (validator is set below) label_type = bb.Attribute("label_type", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ObjectLabelAddedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ObjectLabelAddedDetails_validator = bv.Struct(ObjectLabelAddedDetails) class ObjectLabelAddedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ObjectLabelAddedType, self)._process_custom_annotations(annotation_type, field_path, processor) ObjectLabelAddedType_validator = bv.Struct(ObjectLabelAddedType) class ObjectLabelRemovedDetails(bb.Struct): """ Removed a label. :ivar team_log.ObjectLabelRemovedDetails.label_type: Labels mark a file or folder. """ __slots__ = [ '_label_type_value', ] _has_required_fields = True def __init__(self, label_type=None): self._label_type_value = bb.NOT_SET if label_type is not None: self.label_type = label_type # Instance attribute type: LabelType (validator is set below) label_type = bb.Attribute("label_type", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ObjectLabelRemovedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ObjectLabelRemovedDetails_validator = bv.Struct(ObjectLabelRemovedDetails) class ObjectLabelRemovedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ObjectLabelRemovedType, self)._process_custom_annotations(annotation_type, field_path, processor) ObjectLabelRemovedType_validator = bv.Struct(ObjectLabelRemovedType) class ObjectLabelUpdatedValueDetails(bb.Struct): """ Updated a label's value. :ivar team_log.ObjectLabelUpdatedValueDetails.label_type: Labels mark a file or folder. """ __slots__ = [ '_label_type_value', ] _has_required_fields = True def __init__(self, label_type=None): self._label_type_value = bb.NOT_SET if label_type is not None: self.label_type = label_type # Instance attribute type: LabelType (validator is set below) label_type = bb.Attribute("label_type", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ObjectLabelUpdatedValueDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ObjectLabelUpdatedValueDetails_validator = bv.Struct(ObjectLabelUpdatedValueDetails) class ObjectLabelUpdatedValueType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ObjectLabelUpdatedValueType, self)._process_custom_annotations(annotation_type, field_path, processor) ObjectLabelUpdatedValueType_validator = bv.Struct(ObjectLabelUpdatedValueType) class OpenNoteSharedDetails(bb.Struct): """ Opened shared Paper doc. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(OpenNoteSharedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) OpenNoteSharedDetails_validator = bv.Struct(OpenNoteSharedDetails) class OpenNoteSharedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(OpenNoteSharedType, self)._process_custom_annotations(annotation_type, field_path, processor) OpenNoteSharedType_validator = bv.Struct(OpenNoteSharedType) class OrganizationDetails(bb.Struct): """ More details about the organization. :ivar team_log.OrganizationDetails.organization: The name of the organization. """ __slots__ = [ '_organization_value', ] _has_required_fields = True def __init__(self, organization=None): self._organization_value = bb.NOT_SET if organization is not None: self.organization = organization # Instance attribute type: str (validator is set below) organization = bb.Attribute("organization") def _process_custom_annotations(self, annotation_type, field_path, processor): super(OrganizationDetails, self)._process_custom_annotations(annotation_type, field_path, processor) OrganizationDetails_validator = bv.Struct(OrganizationDetails) class OrganizationName(bb.Struct): """ The name of the organization :ivar team_log.OrganizationName.organization: The name of the organization. """ __slots__ = [ '_organization_value', ] _has_required_fields = True def __init__(self, organization=None): self._organization_value = bb.NOT_SET if organization is not None: self.organization = organization # Instance attribute type: str (validator is set below) organization = bb.Attribute("organization") def _process_custom_annotations(self, annotation_type, field_path, processor): super(OrganizationName, self)._process_custom_annotations(annotation_type, field_path, processor) OrganizationName_validator = bv.Struct(OrganizationName) class OrganizeFolderWithTidyDetails(bb.Struct): """ Organized a folder with multi-file organize. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(OrganizeFolderWithTidyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) OrganizeFolderWithTidyDetails_validator = bv.Struct(OrganizeFolderWithTidyDetails) class OrganizeFolderWithTidyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(OrganizeFolderWithTidyType, self)._process_custom_annotations(annotation_type, field_path, processor) OrganizeFolderWithTidyType_validator = bv.Struct(OrganizeFolderWithTidyType) class OriginLogInfo(bb.Struct): """ The origin from which the actor performed the action. :ivar team_log.OriginLogInfo.geo_location: Geographic location details. :ivar team_log.OriginLogInfo.access_method: The method that was used to perform the action. """ __slots__ = [ '_geo_location_value', '_access_method_value', ] _has_required_fields = True def __init__(self, access_method=None, geo_location=None): self._geo_location_value = bb.NOT_SET self._access_method_value = bb.NOT_SET if geo_location is not None: self.geo_location = geo_location if access_method is not None: self.access_method = access_method # Instance attribute type: GeoLocationLogInfo (validator is set below) geo_location = bb.Attribute("geo_location", nullable=True, user_defined=True) # Instance attribute type: AccessMethodLogInfo (validator is set below) access_method = bb.Attribute("access_method", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(OriginLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) OriginLogInfo_validator = bv.Struct(OriginLogInfo) class OutdatedLinkViewCreateReportDetails(bb.Struct): """ Report created: Views of old links. :ivar team_log.OutdatedLinkViewCreateReportDetails.start_date: Report start date. :ivar team_log.OutdatedLinkViewCreateReportDetails.end_date: Report end date. """ __slots__ = [ '_start_date_value', '_end_date_value', ] _has_required_fields = True def __init__(self, start_date=None, end_date=None): self._start_date_value = bb.NOT_SET self._end_date_value = bb.NOT_SET if start_date is not None: self.start_date = start_date if end_date is not None: self.end_date = end_date # Instance attribute type: datetime.datetime (validator is set below) start_date = bb.Attribute("start_date") # Instance attribute type: datetime.datetime (validator is set below) end_date = bb.Attribute("end_date") def _process_custom_annotations(self, annotation_type, field_path, processor): super(OutdatedLinkViewCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor) OutdatedLinkViewCreateReportDetails_validator = bv.Struct(OutdatedLinkViewCreateReportDetails) class OutdatedLinkViewCreateReportType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(OutdatedLinkViewCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor) OutdatedLinkViewCreateReportType_validator = bv.Struct(OutdatedLinkViewCreateReportType) class OutdatedLinkViewReportFailedDetails(bb.Struct): """ Couldn't create report: Views of old links. :ivar team_log.OutdatedLinkViewReportFailedDetails.failure_reason: Failure reason. """ __slots__ = [ '_failure_reason_value', ] _has_required_fields = True def __init__(self, failure_reason=None): self._failure_reason_value = bb.NOT_SET if failure_reason is not None: self.failure_reason = failure_reason # Instance attribute type: team.TeamReportFailureReason (validator is set below) failure_reason = bb.Attribute("failure_reason", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(OutdatedLinkViewReportFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) OutdatedLinkViewReportFailedDetails_validator = bv.Struct(OutdatedLinkViewReportFailedDetails) class OutdatedLinkViewReportFailedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(OutdatedLinkViewReportFailedType, self)._process_custom_annotations(annotation_type, field_path, processor) OutdatedLinkViewReportFailedType_validator = bv.Struct(OutdatedLinkViewReportFailedType) class PaperAccessType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition commenter = None # Attribute is overwritten below the class definition editor = None # Attribute is overwritten below the class definition viewer = None # Attribute is overwritten below the class definition other = None def is_commenter(self): """ Check if the union tag is ``commenter``. :rtype: bool """ return self._tag == 'commenter' def is_editor(self): """ Check if the union tag is ``editor``. :rtype: bool """ return self._tag == 'editor' def is_viewer(self): """ Check if the union tag is ``viewer``. :rtype: bool """ return self._tag == 'viewer' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperAccessType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperAccessType_validator = bv.Union(PaperAccessType) class PaperAdminExportStartDetails(bb.Struct): """ Exported all team Paper docs. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperAdminExportStartDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperAdminExportStartDetails_validator = bv.Struct(PaperAdminExportStartDetails) class PaperAdminExportStartType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperAdminExportStartType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperAdminExportStartType_validator = bv.Struct(PaperAdminExportStartType) class PaperChangeDeploymentPolicyDetails(bb.Struct): """ Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members. :ivar team_log.PaperChangeDeploymentPolicyDetails.new_value: New Dropbox Paper deployment policy. :ivar team_log.PaperChangeDeploymentPolicyDetails.previous_value: Previous Dropbox Paper deployment policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: team_policies.PaperDeploymentPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: team_policies.PaperDeploymentPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperChangeDeploymentPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperChangeDeploymentPolicyDetails_validator = bv.Struct(PaperChangeDeploymentPolicyDetails) class PaperChangeDeploymentPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperChangeDeploymentPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperChangeDeploymentPolicyType_validator = bv.Struct(PaperChangeDeploymentPolicyType) class PaperChangeMemberLinkPolicyDetails(bb.Struct): """ Changed whether non-members can view Paper docs with link. :ivar team_log.PaperChangeMemberLinkPolicyDetails.new_value: New paper external link accessibility policy. """ __slots__ = [ '_new_value_value', ] _has_required_fields = True def __init__(self, new_value=None): self._new_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value # Instance attribute type: PaperMemberPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperChangeMemberLinkPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperChangeMemberLinkPolicyDetails_validator = bv.Struct(PaperChangeMemberLinkPolicyDetails) class PaperChangeMemberLinkPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperChangeMemberLinkPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperChangeMemberLinkPolicyType_validator = bv.Struct(PaperChangeMemberLinkPolicyType) class PaperChangeMemberPolicyDetails(bb.Struct): """ Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or anyone by default. :ivar team_log.PaperChangeMemberPolicyDetails.new_value: New paper external accessibility policy. :ivar team_log.PaperChangeMemberPolicyDetails.previous_value: Previous paper external accessibility policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: PaperMemberPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: PaperMemberPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperChangeMemberPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperChangeMemberPolicyDetails_validator = bv.Struct(PaperChangeMemberPolicyDetails) class PaperChangeMemberPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperChangeMemberPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperChangeMemberPolicyType_validator = bv.Struct(PaperChangeMemberPolicyType) class PaperChangePolicyDetails(bb.Struct): """ Enabled/disabled Dropbox Paper for team. :ivar team_log.PaperChangePolicyDetails.new_value: New Dropbox Paper policy. :ivar team_log.PaperChangePolicyDetails.previous_value: Previous Dropbox Paper policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: team_policies.PaperEnabledPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: team_policies.PaperEnabledPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperChangePolicyDetails_validator = bv.Struct(PaperChangePolicyDetails) class PaperChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperChangePolicyType_validator = bv.Struct(PaperChangePolicyType) class PaperContentAddMemberDetails(bb.Struct): """ Added users and/or groups to Paper doc/folder. :ivar team_log.PaperContentAddMemberDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentAddMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentAddMemberDetails_validator = bv.Struct(PaperContentAddMemberDetails) class PaperContentAddMemberType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentAddMemberType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentAddMemberType_validator = bv.Struct(PaperContentAddMemberType) class PaperContentAddToFolderDetails(bb.Struct): """ Added Paper doc/folder to folder. :ivar team_log.PaperContentAddToFolderDetails.event_uuid: Event unique identifier. :ivar team_log.PaperContentAddToFolderDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.PaperContentAddToFolderDetails.parent_asset_index: Parent asset position in the Assets list. """ __slots__ = [ '_event_uuid_value', '_target_asset_index_value', '_parent_asset_index_value', ] _has_required_fields = True def __init__(self, event_uuid=None, target_asset_index=None, parent_asset_index=None): self._event_uuid_value = bb.NOT_SET self._target_asset_index_value = bb.NOT_SET self._parent_asset_index_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if target_asset_index is not None: self.target_asset_index = target_asset_index if parent_asset_index is not None: self.parent_asset_index = parent_asset_index # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: int (validator is set below) parent_asset_index = bb.Attribute("parent_asset_index") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentAddToFolderDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentAddToFolderDetails_validator = bv.Struct(PaperContentAddToFolderDetails) class PaperContentAddToFolderType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentAddToFolderType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentAddToFolderType_validator = bv.Struct(PaperContentAddToFolderType) class PaperContentArchiveDetails(bb.Struct): """ Archived Paper doc/folder. :ivar team_log.PaperContentArchiveDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentArchiveDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentArchiveDetails_validator = bv.Struct(PaperContentArchiveDetails) class PaperContentArchiveType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentArchiveType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentArchiveType_validator = bv.Struct(PaperContentArchiveType) class PaperContentCreateDetails(bb.Struct): """ Created Paper doc/folder. :ivar team_log.PaperContentCreateDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentCreateDetails_validator = bv.Struct(PaperContentCreateDetails) class PaperContentCreateType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentCreateType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentCreateType_validator = bv.Struct(PaperContentCreateType) class PaperContentPermanentlyDeleteDetails(bb.Struct): """ Permanently deleted Paper doc/folder. :ivar team_log.PaperContentPermanentlyDeleteDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentPermanentlyDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentPermanentlyDeleteDetails_validator = bv.Struct(PaperContentPermanentlyDeleteDetails) class PaperContentPermanentlyDeleteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentPermanentlyDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentPermanentlyDeleteType_validator = bv.Struct(PaperContentPermanentlyDeleteType) class PaperContentRemoveFromFolderDetails(bb.Struct): """ Removed Paper doc/folder from folder. :ivar team_log.PaperContentRemoveFromFolderDetails.event_uuid: Event unique identifier. :ivar team_log.PaperContentRemoveFromFolderDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.PaperContentRemoveFromFolderDetails.parent_asset_index: Parent asset position in the Assets list. """ __slots__ = [ '_event_uuid_value', '_target_asset_index_value', '_parent_asset_index_value', ] _has_required_fields = True def __init__(self, event_uuid=None, target_asset_index=None, parent_asset_index=None): self._event_uuid_value = bb.NOT_SET self._target_asset_index_value = bb.NOT_SET self._parent_asset_index_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if target_asset_index is not None: self.target_asset_index = target_asset_index if parent_asset_index is not None: self.parent_asset_index = parent_asset_index # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index", nullable=True) # Instance attribute type: int (validator is set below) parent_asset_index = bb.Attribute("parent_asset_index", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentRemoveFromFolderDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentRemoveFromFolderDetails_validator = bv.Struct(PaperContentRemoveFromFolderDetails) class PaperContentRemoveFromFolderType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentRemoveFromFolderType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentRemoveFromFolderType_validator = bv.Struct(PaperContentRemoveFromFolderType) class PaperContentRemoveMemberDetails(bb.Struct): """ Removed users and/or groups from Paper doc/folder. :ivar team_log.PaperContentRemoveMemberDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentRemoveMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentRemoveMemberDetails_validator = bv.Struct(PaperContentRemoveMemberDetails) class PaperContentRemoveMemberType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentRemoveMemberType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentRemoveMemberType_validator = bv.Struct(PaperContentRemoveMemberType) class PaperContentRenameDetails(bb.Struct): """ Renamed Paper doc/folder. :ivar team_log.PaperContentRenameDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentRenameDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentRenameDetails_validator = bv.Struct(PaperContentRenameDetails) class PaperContentRenameType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentRenameType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentRenameType_validator = bv.Struct(PaperContentRenameType) class PaperContentRestoreDetails(bb.Struct): """ Restored archived Paper doc/folder. :ivar team_log.PaperContentRestoreDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentRestoreDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentRestoreDetails_validator = bv.Struct(PaperContentRestoreDetails) class PaperContentRestoreType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperContentRestoreType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperContentRestoreType_validator = bv.Struct(PaperContentRestoreType) class PaperDefaultFolderPolicy(bb.Union): """ Policy to set default access for newly created Paper folders. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition everyone_in_team = None # Attribute is overwritten below the class definition invite_only = None # Attribute is overwritten below the class definition other = None def is_everyone_in_team(self): """ Check if the union tag is ``everyone_in_team``. :rtype: bool """ return self._tag == 'everyone_in_team' def is_invite_only(self): """ Check if the union tag is ``invite_only``. :rtype: bool """ return self._tag == 'invite_only' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDefaultFolderPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDefaultFolderPolicy_validator = bv.Union(PaperDefaultFolderPolicy) class PaperDefaultFolderPolicyChangedDetails(bb.Struct): """ Changed Paper Default Folder Policy setting for team. :ivar team_log.PaperDefaultFolderPolicyChangedDetails.new_value: New Paper Default Folder Policy. :ivar team_log.PaperDefaultFolderPolicyChangedDetails.previous_value: Previous Paper Default Folder Policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: PaperDefaultFolderPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: PaperDefaultFolderPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDefaultFolderPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDefaultFolderPolicyChangedDetails_validator = bv.Struct(PaperDefaultFolderPolicyChangedDetails) class PaperDefaultFolderPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDefaultFolderPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDefaultFolderPolicyChangedType_validator = bv.Struct(PaperDefaultFolderPolicyChangedType) class PaperDesktopPolicy(bb.Union): """ Policy for controlling if team members can use Paper Desktop This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDesktopPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDesktopPolicy_validator = bv.Union(PaperDesktopPolicy) class PaperDesktopPolicyChangedDetails(bb.Struct): """ Enabled/disabled Paper Desktop for team. :ivar team_log.PaperDesktopPolicyChangedDetails.new_value: New Paper Desktop policy. :ivar team_log.PaperDesktopPolicyChangedDetails.previous_value: Previous Paper Desktop policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: PaperDesktopPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: PaperDesktopPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDesktopPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDesktopPolicyChangedDetails_validator = bv.Struct(PaperDesktopPolicyChangedDetails) class PaperDesktopPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDesktopPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDesktopPolicyChangedType_validator = bv.Struct(PaperDesktopPolicyChangedType) class PaperDocAddCommentDetails(bb.Struct): """ Added Paper doc comment. :ivar team_log.PaperDocAddCommentDetails.event_uuid: Event unique identifier. :ivar team_log.PaperDocAddCommentDetails.comment_text: Comment text. """ __slots__ = [ '_event_uuid_value', '_comment_text_value', ] _has_required_fields = True def __init__(self, event_uuid=None, comment_text=None): self._event_uuid_value = bb.NOT_SET self._comment_text_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocAddCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocAddCommentDetails_validator = bv.Struct(PaperDocAddCommentDetails) class PaperDocAddCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocAddCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocAddCommentType_validator = bv.Struct(PaperDocAddCommentType) class PaperDocChangeMemberRoleDetails(bb.Struct): """ Changed member permissions for Paper doc. :ivar team_log.PaperDocChangeMemberRoleDetails.event_uuid: Event unique identifier. :ivar team_log.PaperDocChangeMemberRoleDetails.access_type: Paper doc access type. """ __slots__ = [ '_event_uuid_value', '_access_type_value', ] _has_required_fields = True def __init__(self, event_uuid=None, access_type=None): self._event_uuid_value = bb.NOT_SET self._access_type_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if access_type is not None: self.access_type = access_type # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: PaperAccessType (validator is set below) access_type = bb.Attribute("access_type", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocChangeMemberRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocChangeMemberRoleDetails_validator = bv.Struct(PaperDocChangeMemberRoleDetails) class PaperDocChangeMemberRoleType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocChangeMemberRoleType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocChangeMemberRoleType_validator = bv.Struct(PaperDocChangeMemberRoleType) class PaperDocChangeSharingPolicyDetails(bb.Struct): """ Changed sharing setting for Paper doc. :ivar team_log.PaperDocChangeSharingPolicyDetails.event_uuid: Event unique identifier. :ivar team_log.PaperDocChangeSharingPolicyDetails.public_sharing_policy: Sharing policy with external users. :ivar team_log.PaperDocChangeSharingPolicyDetails.team_sharing_policy: Sharing policy with team. """ __slots__ = [ '_event_uuid_value', '_public_sharing_policy_value', '_team_sharing_policy_value', ] _has_required_fields = True def __init__(self, event_uuid=None, public_sharing_policy=None, team_sharing_policy=None): self._event_uuid_value = bb.NOT_SET self._public_sharing_policy_value = bb.NOT_SET self._team_sharing_policy_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if public_sharing_policy is not None: self.public_sharing_policy = public_sharing_policy if team_sharing_policy is not None: self.team_sharing_policy = team_sharing_policy # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) public_sharing_policy = bb.Attribute("public_sharing_policy", nullable=True) # Instance attribute type: str (validator is set below) team_sharing_policy = bb.Attribute("team_sharing_policy", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocChangeSharingPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocChangeSharingPolicyDetails_validator = bv.Struct(PaperDocChangeSharingPolicyDetails) class PaperDocChangeSharingPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocChangeSharingPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocChangeSharingPolicyType_validator = bv.Struct(PaperDocChangeSharingPolicyType) class PaperDocChangeSubscriptionDetails(bb.Struct): """ Followed/unfollowed Paper doc. :ivar team_log.PaperDocChangeSubscriptionDetails.event_uuid: Event unique identifier. :ivar team_log.PaperDocChangeSubscriptionDetails.new_subscription_level: New doc subscription level. :ivar team_log.PaperDocChangeSubscriptionDetails.previous_subscription_level: Previous doc subscription level. Might be missing due to historical data gap. """ __slots__ = [ '_event_uuid_value', '_new_subscription_level_value', '_previous_subscription_level_value', ] _has_required_fields = True def __init__(self, event_uuid=None, new_subscription_level=None, previous_subscription_level=None): self._event_uuid_value = bb.NOT_SET self._new_subscription_level_value = bb.NOT_SET self._previous_subscription_level_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if new_subscription_level is not None: self.new_subscription_level = new_subscription_level if previous_subscription_level is not None: self.previous_subscription_level = previous_subscription_level # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) new_subscription_level = bb.Attribute("new_subscription_level") # Instance attribute type: str (validator is set below) previous_subscription_level = bb.Attribute("previous_subscription_level", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocChangeSubscriptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocChangeSubscriptionDetails_validator = bv.Struct(PaperDocChangeSubscriptionDetails) class PaperDocChangeSubscriptionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocChangeSubscriptionType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocChangeSubscriptionType_validator = bv.Struct(PaperDocChangeSubscriptionType) class PaperDocDeleteCommentDetails(bb.Struct): """ Deleted Paper doc comment. :ivar team_log.PaperDocDeleteCommentDetails.event_uuid: Event unique identifier. :ivar team_log.PaperDocDeleteCommentDetails.comment_text: Comment text. """ __slots__ = [ '_event_uuid_value', '_comment_text_value', ] _has_required_fields = True def __init__(self, event_uuid=None, comment_text=None): self._event_uuid_value = bb.NOT_SET self._comment_text_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocDeleteCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocDeleteCommentDetails_validator = bv.Struct(PaperDocDeleteCommentDetails) class PaperDocDeleteCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocDeleteCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocDeleteCommentType_validator = bv.Struct(PaperDocDeleteCommentType) class PaperDocDeletedDetails(bb.Struct): """ Archived Paper doc. :ivar team_log.PaperDocDeletedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocDeletedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocDeletedDetails_validator = bv.Struct(PaperDocDeletedDetails) class PaperDocDeletedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocDeletedType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocDeletedType_validator = bv.Struct(PaperDocDeletedType) class PaperDocDownloadDetails(bb.Struct): """ Downloaded Paper doc in specific format. :ivar team_log.PaperDocDownloadDetails.event_uuid: Event unique identifier. :ivar team_log.PaperDocDownloadDetails.export_file_format: Export file format. """ __slots__ = [ '_event_uuid_value', '_export_file_format_value', ] _has_required_fields = True def __init__(self, event_uuid=None, export_file_format=None): self._event_uuid_value = bb.NOT_SET self._export_file_format_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if export_file_format is not None: self.export_file_format = export_file_format # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: PaperDownloadFormat (validator is set below) export_file_format = bb.Attribute("export_file_format", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocDownloadDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocDownloadDetails_validator = bv.Struct(PaperDocDownloadDetails) class PaperDocDownloadType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocDownloadType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocDownloadType_validator = bv.Struct(PaperDocDownloadType) class PaperDocEditCommentDetails(bb.Struct): """ Edited Paper doc comment. :ivar team_log.PaperDocEditCommentDetails.event_uuid: Event unique identifier. :ivar team_log.PaperDocEditCommentDetails.comment_text: Comment text. """ __slots__ = [ '_event_uuid_value', '_comment_text_value', ] _has_required_fields = True def __init__(self, event_uuid=None, comment_text=None): self._event_uuid_value = bb.NOT_SET self._comment_text_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocEditCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocEditCommentDetails_validator = bv.Struct(PaperDocEditCommentDetails) class PaperDocEditCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocEditCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocEditCommentType_validator = bv.Struct(PaperDocEditCommentType) class PaperDocEditDetails(bb.Struct): """ Edited Paper doc. :ivar team_log.PaperDocEditDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocEditDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocEditDetails_validator = bv.Struct(PaperDocEditDetails) class PaperDocEditType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocEditType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocEditType_validator = bv.Struct(PaperDocEditType) class PaperDocFollowedDetails(bb.Struct): """ Followed Paper doc. :ivar team_log.PaperDocFollowedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocFollowedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocFollowedDetails_validator = bv.Struct(PaperDocFollowedDetails) class PaperDocFollowedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocFollowedType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocFollowedType_validator = bv.Struct(PaperDocFollowedType) class PaperDocMentionDetails(bb.Struct): """ Mentioned user in Paper doc. :ivar team_log.PaperDocMentionDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocMentionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocMentionDetails_validator = bv.Struct(PaperDocMentionDetails) class PaperDocMentionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocMentionType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocMentionType_validator = bv.Struct(PaperDocMentionType) class PaperDocOwnershipChangedDetails(bb.Struct): """ Transferred ownership of Paper doc. :ivar team_log.PaperDocOwnershipChangedDetails.event_uuid: Event unique identifier. :ivar team_log.PaperDocOwnershipChangedDetails.old_owner_user_id: Previous owner. :ivar team_log.PaperDocOwnershipChangedDetails.new_owner_user_id: New owner. """ __slots__ = [ '_event_uuid_value', '_old_owner_user_id_value', '_new_owner_user_id_value', ] _has_required_fields = True def __init__(self, event_uuid=None, new_owner_user_id=None, old_owner_user_id=None): self._event_uuid_value = bb.NOT_SET self._old_owner_user_id_value = bb.NOT_SET self._new_owner_user_id_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if old_owner_user_id is not None: self.old_owner_user_id = old_owner_user_id if new_owner_user_id is not None: self.new_owner_user_id = new_owner_user_id # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) old_owner_user_id = bb.Attribute("old_owner_user_id", nullable=True) # Instance attribute type: str (validator is set below) new_owner_user_id = bb.Attribute("new_owner_user_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocOwnershipChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocOwnershipChangedDetails_validator = bv.Struct(PaperDocOwnershipChangedDetails) class PaperDocOwnershipChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocOwnershipChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocOwnershipChangedType_validator = bv.Struct(PaperDocOwnershipChangedType) class PaperDocRequestAccessDetails(bb.Struct): """ Requested access to Paper doc. :ivar team_log.PaperDocRequestAccessDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocRequestAccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocRequestAccessDetails_validator = bv.Struct(PaperDocRequestAccessDetails) class PaperDocRequestAccessType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocRequestAccessType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocRequestAccessType_validator = bv.Struct(PaperDocRequestAccessType) class PaperDocResolveCommentDetails(bb.Struct): """ Resolved Paper doc comment. :ivar team_log.PaperDocResolveCommentDetails.event_uuid: Event unique identifier. :ivar team_log.PaperDocResolveCommentDetails.comment_text: Comment text. """ __slots__ = [ '_event_uuid_value', '_comment_text_value', ] _has_required_fields = True def __init__(self, event_uuid=None, comment_text=None): self._event_uuid_value = bb.NOT_SET self._comment_text_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocResolveCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocResolveCommentDetails_validator = bv.Struct(PaperDocResolveCommentDetails) class PaperDocResolveCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocResolveCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocResolveCommentType_validator = bv.Struct(PaperDocResolveCommentType) class PaperDocRevertDetails(bb.Struct): """ Restored Paper doc to previous version. :ivar team_log.PaperDocRevertDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocRevertDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocRevertDetails_validator = bv.Struct(PaperDocRevertDetails) class PaperDocRevertType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocRevertType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocRevertType_validator = bv.Struct(PaperDocRevertType) class PaperDocSlackShareDetails(bb.Struct): """ Shared Paper doc via Slack. :ivar team_log.PaperDocSlackShareDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocSlackShareDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocSlackShareDetails_validator = bv.Struct(PaperDocSlackShareDetails) class PaperDocSlackShareType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocSlackShareType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocSlackShareType_validator = bv.Struct(PaperDocSlackShareType) class PaperDocTeamInviteDetails(bb.Struct): """ Shared Paper doc with users and/or groups. :ivar team_log.PaperDocTeamInviteDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocTeamInviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocTeamInviteDetails_validator = bv.Struct(PaperDocTeamInviteDetails) class PaperDocTeamInviteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocTeamInviteType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocTeamInviteType_validator = bv.Struct(PaperDocTeamInviteType) class PaperDocTrashedDetails(bb.Struct): """ Deleted Paper doc. :ivar team_log.PaperDocTrashedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocTrashedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocTrashedDetails_validator = bv.Struct(PaperDocTrashedDetails) class PaperDocTrashedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocTrashedType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocTrashedType_validator = bv.Struct(PaperDocTrashedType) class PaperDocUnresolveCommentDetails(bb.Struct): """ Unresolved Paper doc comment. :ivar team_log.PaperDocUnresolveCommentDetails.event_uuid: Event unique identifier. :ivar team_log.PaperDocUnresolveCommentDetails.comment_text: Comment text. """ __slots__ = [ '_event_uuid_value', '_comment_text_value', ] _has_required_fields = True def __init__(self, event_uuid=None, comment_text=None): self._event_uuid_value = bb.NOT_SET self._comment_text_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocUnresolveCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocUnresolveCommentDetails_validator = bv.Struct(PaperDocUnresolveCommentDetails) class PaperDocUnresolveCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocUnresolveCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocUnresolveCommentType_validator = bv.Struct(PaperDocUnresolveCommentType) class PaperDocUntrashedDetails(bb.Struct): """ Restored Paper doc. :ivar team_log.PaperDocUntrashedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocUntrashedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocUntrashedDetails_validator = bv.Struct(PaperDocUntrashedDetails) class PaperDocUntrashedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocUntrashedType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocUntrashedType_validator = bv.Struct(PaperDocUntrashedType) class PaperDocViewDetails(bb.Struct): """ Viewed Paper doc. :ivar team_log.PaperDocViewDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocViewDetails_validator = bv.Struct(PaperDocViewDetails) class PaperDocViewType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocViewType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocViewType_validator = bv.Struct(PaperDocViewType) class PaperDocumentLogInfo(bb.Struct): """ Paper document's logged information. :ivar team_log.PaperDocumentLogInfo.doc_id: Papers document Id. :ivar team_log.PaperDocumentLogInfo.doc_title: Paper document title. """ __slots__ = [ '_doc_id_value', '_doc_title_value', ] _has_required_fields = True def __init__(self, doc_id=None, doc_title=None): self._doc_id_value = bb.NOT_SET self._doc_title_value = bb.NOT_SET if doc_id is not None: self.doc_id = doc_id if doc_title is not None: self.doc_title = doc_title # Instance attribute type: str (validator is set below) doc_id = bb.Attribute("doc_id") # Instance attribute type: str (validator is set below) doc_title = bb.Attribute("doc_title") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDocumentLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDocumentLogInfo_validator = bv.Struct(PaperDocumentLogInfo) class PaperDownloadFormat(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition docx = None # Attribute is overwritten below the class definition html = None # Attribute is overwritten below the class definition markdown = None # Attribute is overwritten below the class definition pdf = None # Attribute is overwritten below the class definition other = None def is_docx(self): """ Check if the union tag is ``docx``. :rtype: bool """ return self._tag == 'docx' def is_html(self): """ Check if the union tag is ``html``. :rtype: bool """ return self._tag == 'html' def is_markdown(self): """ Check if the union tag is ``markdown``. :rtype: bool """ return self._tag == 'markdown' def is_pdf(self): """ Check if the union tag is ``pdf``. :rtype: bool """ return self._tag == 'pdf' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDownloadFormat, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDownloadFormat_validator = bv.Union(PaperDownloadFormat) class PaperEnabledUsersGroupAdditionDetails(bb.Struct): """ Added users to Paper-enabled users list. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperEnabledUsersGroupAdditionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperEnabledUsersGroupAdditionDetails_validator = bv.Struct(PaperEnabledUsersGroupAdditionDetails) class PaperEnabledUsersGroupAdditionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperEnabledUsersGroupAdditionType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperEnabledUsersGroupAdditionType_validator = bv.Struct(PaperEnabledUsersGroupAdditionType) class PaperEnabledUsersGroupRemovalDetails(bb.Struct): """ Removed users from Paper-enabled users list. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperEnabledUsersGroupRemovalDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperEnabledUsersGroupRemovalDetails_validator = bv.Struct(PaperEnabledUsersGroupRemovalDetails) class PaperEnabledUsersGroupRemovalType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperEnabledUsersGroupRemovalType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperEnabledUsersGroupRemovalType_validator = bv.Struct(PaperEnabledUsersGroupRemovalType) class PaperExternalViewAllowDetails(bb.Struct): """ Changed Paper external sharing setting to anyone. :ivar team_log.PaperExternalViewAllowDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperExternalViewAllowDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperExternalViewAllowDetails_validator = bv.Struct(PaperExternalViewAllowDetails) class PaperExternalViewAllowType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperExternalViewAllowType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperExternalViewAllowType_validator = bv.Struct(PaperExternalViewAllowType) class PaperExternalViewDefaultTeamDetails(bb.Struct): """ Changed Paper external sharing setting to default team. :ivar team_log.PaperExternalViewDefaultTeamDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperExternalViewDefaultTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperExternalViewDefaultTeamDetails_validator = bv.Struct(PaperExternalViewDefaultTeamDetails) class PaperExternalViewDefaultTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperExternalViewDefaultTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperExternalViewDefaultTeamType_validator = bv.Struct(PaperExternalViewDefaultTeamType) class PaperExternalViewForbidDetails(bb.Struct): """ Changed Paper external sharing setting to team-only. :ivar team_log.PaperExternalViewForbidDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperExternalViewForbidDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperExternalViewForbidDetails_validator = bv.Struct(PaperExternalViewForbidDetails) class PaperExternalViewForbidType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperExternalViewForbidType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperExternalViewForbidType_validator = bv.Struct(PaperExternalViewForbidType) class PaperFolderChangeSubscriptionDetails(bb.Struct): """ Followed/unfollowed Paper folder. :ivar team_log.PaperFolderChangeSubscriptionDetails.event_uuid: Event unique identifier. :ivar team_log.PaperFolderChangeSubscriptionDetails.new_subscription_level: New folder subscription level. :ivar team_log.PaperFolderChangeSubscriptionDetails.previous_subscription_level: Previous folder subscription level. Might be missing due to historical data gap. """ __slots__ = [ '_event_uuid_value', '_new_subscription_level_value', '_previous_subscription_level_value', ] _has_required_fields = True def __init__(self, event_uuid=None, new_subscription_level=None, previous_subscription_level=None): self._event_uuid_value = bb.NOT_SET self._new_subscription_level_value = bb.NOT_SET self._previous_subscription_level_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if new_subscription_level is not None: self.new_subscription_level = new_subscription_level if previous_subscription_level is not None: self.previous_subscription_level = previous_subscription_level # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) new_subscription_level = bb.Attribute("new_subscription_level") # Instance attribute type: str (validator is set below) previous_subscription_level = bb.Attribute("previous_subscription_level", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperFolderChangeSubscriptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperFolderChangeSubscriptionDetails_validator = bv.Struct(PaperFolderChangeSubscriptionDetails) class PaperFolderChangeSubscriptionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperFolderChangeSubscriptionType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperFolderChangeSubscriptionType_validator = bv.Struct(PaperFolderChangeSubscriptionType) class PaperFolderDeletedDetails(bb.Struct): """ Archived Paper folder. :ivar team_log.PaperFolderDeletedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperFolderDeletedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperFolderDeletedDetails_validator = bv.Struct(PaperFolderDeletedDetails) class PaperFolderDeletedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperFolderDeletedType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperFolderDeletedType_validator = bv.Struct(PaperFolderDeletedType) class PaperFolderFollowedDetails(bb.Struct): """ Followed Paper folder. :ivar team_log.PaperFolderFollowedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperFolderFollowedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperFolderFollowedDetails_validator = bv.Struct(PaperFolderFollowedDetails) class PaperFolderFollowedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperFolderFollowedType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperFolderFollowedType_validator = bv.Struct(PaperFolderFollowedType) class PaperFolderLogInfo(bb.Struct): """ Paper folder's logged information. :ivar team_log.PaperFolderLogInfo.folder_id: Papers folder Id. :ivar team_log.PaperFolderLogInfo.folder_name: Paper folder name. """ __slots__ = [ '_folder_id_value', '_folder_name_value', ] _has_required_fields = True def __init__(self, folder_id=None, folder_name=None): self._folder_id_value = bb.NOT_SET self._folder_name_value = bb.NOT_SET if folder_id is not None: self.folder_id = folder_id if folder_name is not None: self.folder_name = folder_name # Instance attribute type: str (validator is set below) folder_id = bb.Attribute("folder_id") # Instance attribute type: str (validator is set below) folder_name = bb.Attribute("folder_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperFolderLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) PaperFolderLogInfo_validator = bv.Struct(PaperFolderLogInfo) class PaperFolderTeamInviteDetails(bb.Struct): """ Shared Paper folder with users and/or groups. :ivar team_log.PaperFolderTeamInviteDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperFolderTeamInviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperFolderTeamInviteDetails_validator = bv.Struct(PaperFolderTeamInviteDetails) class PaperFolderTeamInviteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperFolderTeamInviteType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperFolderTeamInviteType_validator = bv.Struct(PaperFolderTeamInviteType) class PaperMemberPolicy(bb.Union): """ Policy for controlling if team members can share Paper documents externally. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition anyone_with_link = None # Attribute is overwritten below the class definition only_team = None # Attribute is overwritten below the class definition team_and_explicitly_shared = None # Attribute is overwritten below the class definition other = None def is_anyone_with_link(self): """ Check if the union tag is ``anyone_with_link``. :rtype: bool """ return self._tag == 'anyone_with_link' def is_only_team(self): """ Check if the union tag is ``only_team``. :rtype: bool """ return self._tag == 'only_team' def is_team_and_explicitly_shared(self): """ Check if the union tag is ``team_and_explicitly_shared``. :rtype: bool """ return self._tag == 'team_and_explicitly_shared' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperMemberPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) PaperMemberPolicy_validator = bv.Union(PaperMemberPolicy) class PaperPublishedLinkChangePermissionDetails(bb.Struct): """ Changed permissions for published doc. :ivar team_log.PaperPublishedLinkChangePermissionDetails.event_uuid: Event unique identifier. :ivar team_log.PaperPublishedLinkChangePermissionDetails.new_permission_level: New permission level. :ivar team_log.PaperPublishedLinkChangePermissionDetails.previous_permission_level: Previous permission level. """ __slots__ = [ '_event_uuid_value', '_new_permission_level_value', '_previous_permission_level_value', ] _has_required_fields = True def __init__(self, event_uuid=None, new_permission_level=None, previous_permission_level=None): self._event_uuid_value = bb.NOT_SET self._new_permission_level_value = bb.NOT_SET self._previous_permission_level_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if new_permission_level is not None: self.new_permission_level = new_permission_level if previous_permission_level is not None: self.previous_permission_level = previous_permission_level # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) new_permission_level = bb.Attribute("new_permission_level") # Instance attribute type: str (validator is set below) previous_permission_level = bb.Attribute("previous_permission_level") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperPublishedLinkChangePermissionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperPublishedLinkChangePermissionDetails_validator = bv.Struct(PaperPublishedLinkChangePermissionDetails) class PaperPublishedLinkChangePermissionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperPublishedLinkChangePermissionType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperPublishedLinkChangePermissionType_validator = bv.Struct(PaperPublishedLinkChangePermissionType) class PaperPublishedLinkCreateDetails(bb.Struct): """ Published doc. :ivar team_log.PaperPublishedLinkCreateDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperPublishedLinkCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperPublishedLinkCreateDetails_validator = bv.Struct(PaperPublishedLinkCreateDetails) class PaperPublishedLinkCreateType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperPublishedLinkCreateType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperPublishedLinkCreateType_validator = bv.Struct(PaperPublishedLinkCreateType) class PaperPublishedLinkDisabledDetails(bb.Struct): """ Unpublished doc. :ivar team_log.PaperPublishedLinkDisabledDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperPublishedLinkDisabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperPublishedLinkDisabledDetails_validator = bv.Struct(PaperPublishedLinkDisabledDetails) class PaperPublishedLinkDisabledType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperPublishedLinkDisabledType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperPublishedLinkDisabledType_validator = bv.Struct(PaperPublishedLinkDisabledType) class PaperPublishedLinkViewDetails(bb.Struct): """ Viewed published doc. :ivar team_log.PaperPublishedLinkViewDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperPublishedLinkViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PaperPublishedLinkViewDetails_validator = bv.Struct(PaperPublishedLinkViewDetails) class PaperPublishedLinkViewType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperPublishedLinkViewType, self)._process_custom_annotations(annotation_type, field_path, processor) PaperPublishedLinkViewType_validator = bv.Struct(PaperPublishedLinkViewType) class ParticipantLogInfo(bb.Union): """ A user or group This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar GroupLogInfo ParticipantLogInfo.group: Group details. :ivar UserLogInfo ParticipantLogInfo.user: A user with a Dropbox account. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def group(cls, val): """ Create an instance of this class set to the ``group`` tag with value ``val``. :param GroupLogInfo val: :rtype: ParticipantLogInfo """ return cls('group', val) @classmethod def user(cls, val): """ Create an instance of this class set to the ``user`` tag with value ``val``. :param UserLogInfo val: :rtype: ParticipantLogInfo """ return cls('user', val) def is_group(self): """ Check if the union tag is ``group``. :rtype: bool """ return self._tag == 'group' def is_user(self): """ Check if the union tag is ``user``. :rtype: bool """ return self._tag == 'user' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_group(self): """ Group details. Only call this if :meth:`is_group` is true. :rtype: GroupLogInfo """ if not self.is_group(): raise AttributeError("tag 'group' not set") return self._value def get_user(self): """ A user with a Dropbox account. Only call this if :meth:`is_user` is true. :rtype: UserLogInfo """ if not self.is_user(): raise AttributeError("tag 'user' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(ParticipantLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) ParticipantLogInfo_validator = bv.Union(ParticipantLogInfo) class PassPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition allow = None # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_allow(self): """ Check if the union tag is ``allow``. :rtype: bool """ return self._tag == 'allow' def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PassPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) PassPolicy_validator = bv.Union(PassPolicy) class PasswordChangeDetails(bb.Struct): """ Changed password. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(PasswordChangeDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PasswordChangeDetails_validator = bv.Struct(PasswordChangeDetails) class PasswordChangeType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PasswordChangeType, self)._process_custom_annotations(annotation_type, field_path, processor) PasswordChangeType_validator = bv.Struct(PasswordChangeType) class PasswordResetAllDetails(bb.Struct): """ Reset all team member passwords. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(PasswordResetAllDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PasswordResetAllDetails_validator = bv.Struct(PasswordResetAllDetails) class PasswordResetAllType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PasswordResetAllType, self)._process_custom_annotations(annotation_type, field_path, processor) PasswordResetAllType_validator = bv.Struct(PasswordResetAllType) class PasswordResetDetails(bb.Struct): """ Reset password. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(PasswordResetDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PasswordResetDetails_validator = bv.Struct(PasswordResetDetails) class PasswordResetType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PasswordResetType, self)._process_custom_annotations(annotation_type, field_path, processor) PasswordResetType_validator = bv.Struct(PasswordResetType) class PasswordStrengthRequirementsChangePolicyDetails(bb.Struct): """ Changed team password strength requirements. :ivar team_log.PasswordStrengthRequirementsChangePolicyDetails.previous_value: Old password strength policy. :ivar team_log.PasswordStrengthRequirementsChangePolicyDetails.new_value: New password strength policy. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: team_policies.PasswordStrengthPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: team_policies.PasswordStrengthPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PasswordStrengthRequirementsChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PasswordStrengthRequirementsChangePolicyDetails_validator = bv.Struct(PasswordStrengthRequirementsChangePolicyDetails) class PasswordStrengthRequirementsChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PasswordStrengthRequirementsChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) PasswordStrengthRequirementsChangePolicyType_validator = bv.Struct(PasswordStrengthRequirementsChangePolicyType) class PathLogInfo(bb.Struct): """ Path's details. :ivar team_log.PathLogInfo.contextual: Fully qualified path relative to event's context. :ivar team_log.PathLogInfo.namespace_relative: Path relative to the namespace containing the content. """ __slots__ = [ '_contextual_value', '_namespace_relative_value', ] _has_required_fields = True def __init__(self, namespace_relative=None, contextual=None): self._contextual_value = bb.NOT_SET self._namespace_relative_value = bb.NOT_SET if contextual is not None: self.contextual = contextual if namespace_relative is not None: self.namespace_relative = namespace_relative # Instance attribute type: str (validator is set below) contextual = bb.Attribute("contextual", nullable=True) # Instance attribute type: NamespaceRelativePathLogInfo (validator is set below) namespace_relative = bb.Attribute("namespace_relative", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PathLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) PathLogInfo_validator = bv.Struct(PathLogInfo) class PendingSecondaryEmailAddedDetails(bb.Struct): """ Added pending secondary email. :ivar team_log.PendingSecondaryEmailAddedDetails.secondary_email: New pending secondary email. """ __slots__ = [ '_secondary_email_value', ] _has_required_fields = True def __init__(self, secondary_email=None): self._secondary_email_value = bb.NOT_SET if secondary_email is not None: self.secondary_email = secondary_email # Instance attribute type: str (validator is set below) secondary_email = bb.Attribute("secondary_email") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PendingSecondaryEmailAddedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PendingSecondaryEmailAddedDetails_validator = bv.Struct(PendingSecondaryEmailAddedDetails) class PendingSecondaryEmailAddedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PendingSecondaryEmailAddedType, self)._process_custom_annotations(annotation_type, field_path, processor) PendingSecondaryEmailAddedType_validator = bv.Struct(PendingSecondaryEmailAddedType) class PermanentDeleteChangePolicyDetails(bb.Struct): """ Enabled/disabled ability of team members to permanently delete content. :ivar team_log.PermanentDeleteChangePolicyDetails.new_value: New permanent delete content policy. :ivar team_log.PermanentDeleteChangePolicyDetails.previous_value: Previous permanent delete content policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: ContentPermanentDeletePolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: ContentPermanentDeletePolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(PermanentDeleteChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PermanentDeleteChangePolicyDetails_validator = bv.Struct(PermanentDeleteChangePolicyDetails) class PermanentDeleteChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PermanentDeleteChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) PermanentDeleteChangePolicyType_validator = bv.Struct(PermanentDeleteChangePolicyType) class PlacementRestriction(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition australia_only = None # Attribute is overwritten below the class definition europe_only = None # Attribute is overwritten below the class definition japan_only = None # Attribute is overwritten below the class definition none = None # Attribute is overwritten below the class definition uk_only = None # Attribute is overwritten below the class definition us_s3_only = None # Attribute is overwritten below the class definition other = None def is_australia_only(self): """ Check if the union tag is ``australia_only``. :rtype: bool """ return self._tag == 'australia_only' def is_europe_only(self): """ Check if the union tag is ``europe_only``. :rtype: bool """ return self._tag == 'europe_only' def is_japan_only(self): """ Check if the union tag is ``japan_only``. :rtype: bool """ return self._tag == 'japan_only' def is_none(self): """ Check if the union tag is ``none``. :rtype: bool """ return self._tag == 'none' def is_uk_only(self): """ Check if the union tag is ``uk_only``. :rtype: bool """ return self._tag == 'uk_only' def is_us_s3_only(self): """ Check if the union tag is ``us_s3_only``. :rtype: bool """ return self._tag == 'us_s3_only' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PlacementRestriction, self)._process_custom_annotations(annotation_type, field_path, processor) PlacementRestriction_validator = bv.Union(PlacementRestriction) class PolicyType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disposition = None # Attribute is overwritten below the class definition retention = None # Attribute is overwritten below the class definition other = None def is_disposition(self): """ Check if the union tag is ``disposition``. :rtype: bool """ return self._tag == 'disposition' def is_retention(self): """ Check if the union tag is ``retention``. :rtype: bool """ return self._tag == 'retention' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) PolicyType_validator = bv.Union(PolicyType) class PrimaryTeamRequestAcceptedDetails(bb.Struct): """ Team merge request acceptance details shown to the primary team :ivar team_log.PrimaryTeamRequestAcceptedDetails.secondary_team: The secondary team name. :ivar team_log.PrimaryTeamRequestAcceptedDetails.sent_by: The name of the secondary team admin who sent the request originally. """ __slots__ = [ '_secondary_team_value', '_sent_by_value', ] _has_required_fields = True def __init__(self, secondary_team=None, sent_by=None): self._secondary_team_value = bb.NOT_SET self._sent_by_value = bb.NOT_SET if secondary_team is not None: self.secondary_team = secondary_team if sent_by is not None: self.sent_by = sent_by # Instance attribute type: str (validator is set below) secondary_team = bb.Attribute("secondary_team") # Instance attribute type: str (validator is set below) sent_by = bb.Attribute("sent_by") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PrimaryTeamRequestAcceptedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PrimaryTeamRequestAcceptedDetails_validator = bv.Struct(PrimaryTeamRequestAcceptedDetails) class PrimaryTeamRequestCanceledDetails(bb.Struct): """ Team merge request cancellation details shown to the primary team :ivar team_log.PrimaryTeamRequestCanceledDetails.secondary_team: The secondary team name. :ivar team_log.PrimaryTeamRequestCanceledDetails.sent_by: The name of the secondary team admin who sent the request originally. """ __slots__ = [ '_secondary_team_value', '_sent_by_value', ] _has_required_fields = True def __init__(self, secondary_team=None, sent_by=None): self._secondary_team_value = bb.NOT_SET self._sent_by_value = bb.NOT_SET if secondary_team is not None: self.secondary_team = secondary_team if sent_by is not None: self.sent_by = sent_by # Instance attribute type: str (validator is set below) secondary_team = bb.Attribute("secondary_team") # Instance attribute type: str (validator is set below) sent_by = bb.Attribute("sent_by") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PrimaryTeamRequestCanceledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PrimaryTeamRequestCanceledDetails_validator = bv.Struct(PrimaryTeamRequestCanceledDetails) class PrimaryTeamRequestExpiredDetails(bb.Struct): """ Team merge request expiration details shown to the primary team :ivar team_log.PrimaryTeamRequestExpiredDetails.secondary_team: The secondary team name. :ivar team_log.PrimaryTeamRequestExpiredDetails.sent_by: The name of the secondary team admin who sent the request originally. """ __slots__ = [ '_secondary_team_value', '_sent_by_value', ] _has_required_fields = True def __init__(self, secondary_team=None, sent_by=None): self._secondary_team_value = bb.NOT_SET self._sent_by_value = bb.NOT_SET if secondary_team is not None: self.secondary_team = secondary_team if sent_by is not None: self.sent_by = sent_by # Instance attribute type: str (validator is set below) secondary_team = bb.Attribute("secondary_team") # Instance attribute type: str (validator is set below) sent_by = bb.Attribute("sent_by") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PrimaryTeamRequestExpiredDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PrimaryTeamRequestExpiredDetails_validator = bv.Struct(PrimaryTeamRequestExpiredDetails) class PrimaryTeamRequestReminderDetails(bb.Struct): """ Team merge request reminder details shown to the primary team :ivar team_log.PrimaryTeamRequestReminderDetails.secondary_team: The secondary team name. :ivar team_log.PrimaryTeamRequestReminderDetails.sent_to: The name of the primary team admin the request was sent to. """ __slots__ = [ '_secondary_team_value', '_sent_to_value', ] _has_required_fields = True def __init__(self, secondary_team=None, sent_to=None): self._secondary_team_value = bb.NOT_SET self._sent_to_value = bb.NOT_SET if secondary_team is not None: self.secondary_team = secondary_team if sent_to is not None: self.sent_to = sent_to # Instance attribute type: str (validator is set below) secondary_team = bb.Attribute("secondary_team") # Instance attribute type: str (validator is set below) sent_to = bb.Attribute("sent_to") def _process_custom_annotations(self, annotation_type, field_path, processor): super(PrimaryTeamRequestReminderDetails, self)._process_custom_annotations(annotation_type, field_path, processor) PrimaryTeamRequestReminderDetails_validator = bv.Struct(PrimaryTeamRequestReminderDetails) class QuickActionType(bb.Union): """ Quick action type. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition delete_shared_link = None # Attribute is overwritten below the class definition reset_password = None # Attribute is overwritten below the class definition restore_file_or_folder = None # Attribute is overwritten below the class definition unlink_app = None # Attribute is overwritten below the class definition unlink_device = None # Attribute is overwritten below the class definition unlink_session = None # Attribute is overwritten below the class definition other = None def is_delete_shared_link(self): """ Check if the union tag is ``delete_shared_link``. :rtype: bool """ return self._tag == 'delete_shared_link' def is_reset_password(self): """ Check if the union tag is ``reset_password``. :rtype: bool """ return self._tag == 'reset_password' def is_restore_file_or_folder(self): """ Check if the union tag is ``restore_file_or_folder``. :rtype: bool """ return self._tag == 'restore_file_or_folder' def is_unlink_app(self): """ Check if the union tag is ``unlink_app``. :rtype: bool """ return self._tag == 'unlink_app' def is_unlink_device(self): """ Check if the union tag is ``unlink_device``. :rtype: bool """ return self._tag == 'unlink_device' def is_unlink_session(self): """ Check if the union tag is ``unlink_session``. :rtype: bool """ return self._tag == 'unlink_session' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(QuickActionType, self)._process_custom_annotations(annotation_type, field_path, processor) QuickActionType_validator = bv.Union(QuickActionType) class RansomwareAlertCreateReportDetails(bb.Struct): """ Created ransomware report. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(RansomwareAlertCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor) RansomwareAlertCreateReportDetails_validator = bv.Struct(RansomwareAlertCreateReportDetails) class RansomwareAlertCreateReportFailedDetails(bb.Struct): """ Couldn't generate ransomware report. :ivar team_log.RansomwareAlertCreateReportFailedDetails.failure_reason: Failure reason. """ __slots__ = [ '_failure_reason_value', ] _has_required_fields = True def __init__(self, failure_reason=None): self._failure_reason_value = bb.NOT_SET if failure_reason is not None: self.failure_reason = failure_reason # Instance attribute type: team.TeamReportFailureReason (validator is set below) failure_reason = bb.Attribute("failure_reason", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(RansomwareAlertCreateReportFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) RansomwareAlertCreateReportFailedDetails_validator = bv.Struct(RansomwareAlertCreateReportFailedDetails) class RansomwareAlertCreateReportFailedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RansomwareAlertCreateReportFailedType, self)._process_custom_annotations(annotation_type, field_path, processor) RansomwareAlertCreateReportFailedType_validator = bv.Struct(RansomwareAlertCreateReportFailedType) class RansomwareAlertCreateReportType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RansomwareAlertCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor) RansomwareAlertCreateReportType_validator = bv.Struct(RansomwareAlertCreateReportType) class RansomwareRestoreProcessCompletedDetails(bb.Struct): """ Completed ransomware restore process. :ivar team_log.RansomwareRestoreProcessCompletedDetails.status: The status of the restore process. :ivar team_log.RansomwareRestoreProcessCompletedDetails.restored_files_count: Restored files count. :ivar team_log.RansomwareRestoreProcessCompletedDetails.restored_files_failed_count: Restored files failed count. """ __slots__ = [ '_status_value', '_restored_files_count_value', '_restored_files_failed_count_value', ] _has_required_fields = True def __init__(self, status=None, restored_files_count=None, restored_files_failed_count=None): self._status_value = bb.NOT_SET self._restored_files_count_value = bb.NOT_SET self._restored_files_failed_count_value = bb.NOT_SET if status is not None: self.status = status if restored_files_count is not None: self.restored_files_count = restored_files_count if restored_files_failed_count is not None: self.restored_files_failed_count = restored_files_failed_count # Instance attribute type: str (validator is set below) status = bb.Attribute("status") # Instance attribute type: int (validator is set below) restored_files_count = bb.Attribute("restored_files_count") # Instance attribute type: int (validator is set below) restored_files_failed_count = bb.Attribute("restored_files_failed_count") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RansomwareRestoreProcessCompletedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) RansomwareRestoreProcessCompletedDetails_validator = bv.Struct(RansomwareRestoreProcessCompletedDetails) class RansomwareRestoreProcessCompletedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RansomwareRestoreProcessCompletedType, self)._process_custom_annotations(annotation_type, field_path, processor) RansomwareRestoreProcessCompletedType_validator = bv.Struct(RansomwareRestoreProcessCompletedType) class RansomwareRestoreProcessStartedDetails(bb.Struct): """ Started ransomware restore process. :ivar team_log.RansomwareRestoreProcessStartedDetails.extension: Ransomware filename extension. """ __slots__ = [ '_extension_value', ] _has_required_fields = True def __init__(self, extension=None): self._extension_value = bb.NOT_SET if extension is not None: self.extension = extension # Instance attribute type: str (validator is set below) extension = bb.Attribute("extension") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RansomwareRestoreProcessStartedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) RansomwareRestoreProcessStartedDetails_validator = bv.Struct(RansomwareRestoreProcessStartedDetails) class RansomwareRestoreProcessStartedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RansomwareRestoreProcessStartedType, self)._process_custom_annotations(annotation_type, field_path, processor) RansomwareRestoreProcessStartedType_validator = bv.Struct(RansomwareRestoreProcessStartedType) class RecipientsConfiguration(bb.Struct): """ Recipients Configuration :ivar team_log.RecipientsConfiguration.recipient_setting_type: Recipients setting type. :ivar team_log.RecipientsConfiguration.emails: A list of user emails to notify. :ivar team_log.RecipientsConfiguration.groups: A list of groups to notify. """ __slots__ = [ '_recipient_setting_type_value', '_emails_value', '_groups_value', ] _has_required_fields = False def __init__(self, recipient_setting_type=None, emails=None, groups=None): self._recipient_setting_type_value = bb.NOT_SET self._emails_value = bb.NOT_SET self._groups_value = bb.NOT_SET if recipient_setting_type is not None: self.recipient_setting_type = recipient_setting_type if emails is not None: self.emails = emails if groups is not None: self.groups = groups # Instance attribute type: AlertRecipientsSettingType (validator is set below) recipient_setting_type = bb.Attribute("recipient_setting_type", nullable=True, user_defined=True) # Instance attribute type: list of [str] (validator is set below) emails = bb.Attribute("emails", nullable=True) # Instance attribute type: list of [str] (validator is set below) groups = bb.Attribute("groups", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(RecipientsConfiguration, self)._process_custom_annotations(annotation_type, field_path, processor) RecipientsConfiguration_validator = bv.Struct(RecipientsConfiguration) class RelocateAssetReferencesLogInfo(bb.Struct): """ Provides the indices of the source asset and the destination asset for a relocate action. :ivar team_log.RelocateAssetReferencesLogInfo.src_asset_index: Source asset position in the Assets list. :ivar team_log.RelocateAssetReferencesLogInfo.dest_asset_index: Destination asset position in the Assets list. """ __slots__ = [ '_src_asset_index_value', '_dest_asset_index_value', ] _has_required_fields = True def __init__(self, src_asset_index=None, dest_asset_index=None): self._src_asset_index_value = bb.NOT_SET self._dest_asset_index_value = bb.NOT_SET if src_asset_index is not None: self.src_asset_index = src_asset_index if dest_asset_index is not None: self.dest_asset_index = dest_asset_index # Instance attribute type: int (validator is set below) src_asset_index = bb.Attribute("src_asset_index") # Instance attribute type: int (validator is set below) dest_asset_index = bb.Attribute("dest_asset_index") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RelocateAssetReferencesLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) RelocateAssetReferencesLogInfo_validator = bv.Struct(RelocateAssetReferencesLogInfo) class ReplayFileDeleteDetails(bb.Struct): """ Deleted files in Replay. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(ReplayFileDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ReplayFileDeleteDetails_validator = bv.Struct(ReplayFileDeleteDetails) class ReplayFileDeleteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ReplayFileDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor) ReplayFileDeleteType_validator = bv.Struct(ReplayFileDeleteType) class ReplayFileSharedLinkCreatedDetails(bb.Struct): """ Created shared link in Replay. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(ReplayFileSharedLinkCreatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ReplayFileSharedLinkCreatedDetails_validator = bv.Struct(ReplayFileSharedLinkCreatedDetails) class ReplayFileSharedLinkCreatedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ReplayFileSharedLinkCreatedType, self)._process_custom_annotations(annotation_type, field_path, processor) ReplayFileSharedLinkCreatedType_validator = bv.Struct(ReplayFileSharedLinkCreatedType) class ReplayFileSharedLinkModifiedDetails(bb.Struct): """ Modified shared link in Replay. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(ReplayFileSharedLinkModifiedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ReplayFileSharedLinkModifiedDetails_validator = bv.Struct(ReplayFileSharedLinkModifiedDetails) class ReplayFileSharedLinkModifiedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ReplayFileSharedLinkModifiedType, self)._process_custom_annotations(annotation_type, field_path, processor) ReplayFileSharedLinkModifiedType_validator = bv.Struct(ReplayFileSharedLinkModifiedType) class ReplayProjectTeamAddDetails(bb.Struct): """ Added member to Replay Project. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(ReplayProjectTeamAddDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ReplayProjectTeamAddDetails_validator = bv.Struct(ReplayProjectTeamAddDetails) class ReplayProjectTeamAddType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ReplayProjectTeamAddType, self)._process_custom_annotations(annotation_type, field_path, processor) ReplayProjectTeamAddType_validator = bv.Struct(ReplayProjectTeamAddType) class ReplayProjectTeamDeleteDetails(bb.Struct): """ Removed member from Replay Project. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(ReplayProjectTeamDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ReplayProjectTeamDeleteDetails_validator = bv.Struct(ReplayProjectTeamDeleteDetails) class ReplayProjectTeamDeleteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ReplayProjectTeamDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor) ReplayProjectTeamDeleteType_validator = bv.Struct(ReplayProjectTeamDeleteType) class ResellerLogInfo(bb.Struct): """ Reseller information. :ivar team_log.ResellerLogInfo.reseller_name: Reseller name. :ivar team_log.ResellerLogInfo.reseller_email: Reseller email. """ __slots__ = [ '_reseller_name_value', '_reseller_email_value', ] _has_required_fields = True def __init__(self, reseller_name=None, reseller_email=None): self._reseller_name_value = bb.NOT_SET self._reseller_email_value = bb.NOT_SET if reseller_name is not None: self.reseller_name = reseller_name if reseller_email is not None: self.reseller_email = reseller_email # Instance attribute type: str (validator is set below) reseller_name = bb.Attribute("reseller_name") # Instance attribute type: str (validator is set below) reseller_email = bb.Attribute("reseller_email") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResellerLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) ResellerLogInfo_validator = bv.Struct(ResellerLogInfo) class ResellerRole(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition not_reseller = None # Attribute is overwritten below the class definition reseller_admin = None # Attribute is overwritten below the class definition other = None def is_not_reseller(self): """ Check if the union tag is ``not_reseller``. :rtype: bool """ return self._tag == 'not_reseller' def is_reseller_admin(self): """ Check if the union tag is ``reseller_admin``. :rtype: bool """ return self._tag == 'reseller_admin' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResellerRole, self)._process_custom_annotations(annotation_type, field_path, processor) ResellerRole_validator = bv.Union(ResellerRole) class ResellerSupportChangePolicyDetails(bb.Struct): """ Enabled/disabled reseller support. :ivar team_log.ResellerSupportChangePolicyDetails.new_value: New Reseller support policy. :ivar team_log.ResellerSupportChangePolicyDetails.previous_value: Previous Reseller support policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: ResellerSupportPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: ResellerSupportPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResellerSupportChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ResellerSupportChangePolicyDetails_validator = bv.Struct(ResellerSupportChangePolicyDetails) class ResellerSupportChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResellerSupportChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) ResellerSupportChangePolicyType_validator = bv.Struct(ResellerSupportChangePolicyType) class ResellerSupportPolicy(bb.Union): """ Policy for controlling if reseller can access the admin console as administrator This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResellerSupportPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ResellerSupportPolicy_validator = bv.Union(ResellerSupportPolicy) class ResellerSupportSessionEndDetails(bb.Struct): """ Ended reseller support session. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResellerSupportSessionEndDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ResellerSupportSessionEndDetails_validator = bv.Struct(ResellerSupportSessionEndDetails) class ResellerSupportSessionEndType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResellerSupportSessionEndType, self)._process_custom_annotations(annotation_type, field_path, processor) ResellerSupportSessionEndType_validator = bv.Struct(ResellerSupportSessionEndType) class ResellerSupportSessionStartDetails(bb.Struct): """ Started reseller support session. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResellerSupportSessionStartDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ResellerSupportSessionStartDetails_validator = bv.Struct(ResellerSupportSessionStartDetails) class ResellerSupportSessionStartType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ResellerSupportSessionStartType, self)._process_custom_annotations(annotation_type, field_path, processor) ResellerSupportSessionStartType_validator = bv.Struct(ResellerSupportSessionStartType) class RewindFolderDetails(bb.Struct): """ Rewound a folder. :ivar team_log.RewindFolderDetails.rewind_folder_target_ts_ms: Folder was Rewound to this date. """ __slots__ = [ '_rewind_folder_target_ts_ms_value', ] _has_required_fields = True def __init__(self, rewind_folder_target_ts_ms=None): self._rewind_folder_target_ts_ms_value = bb.NOT_SET if rewind_folder_target_ts_ms is not None: self.rewind_folder_target_ts_ms = rewind_folder_target_ts_ms # Instance attribute type: datetime.datetime (validator is set below) rewind_folder_target_ts_ms = bb.Attribute("rewind_folder_target_ts_ms") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RewindFolderDetails, self)._process_custom_annotations(annotation_type, field_path, processor) RewindFolderDetails_validator = bv.Struct(RewindFolderDetails) class RewindFolderType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RewindFolderType, self)._process_custom_annotations(annotation_type, field_path, processor) RewindFolderType_validator = bv.Struct(RewindFolderType) class RewindPolicy(bb.Union): """ Policy for controlling whether team members can rewind This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition admins_only = None # Attribute is overwritten below the class definition everyone = None # Attribute is overwritten below the class definition other = None def is_admins_only(self): """ Check if the union tag is ``admins_only``. :rtype: bool """ return self._tag == 'admins_only' def is_everyone(self): """ Check if the union tag is ``everyone``. :rtype: bool """ return self._tag == 'everyone' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(RewindPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) RewindPolicy_validator = bv.Union(RewindPolicy) class RewindPolicyChangedDetails(bb.Struct): """ Changed Rewind policy for team. :ivar team_log.RewindPolicyChangedDetails.new_value: New Dropbox Rewind policy. :ivar team_log.RewindPolicyChangedDetails.previous_value: Previous Dropbox Rewind policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: RewindPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: RewindPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(RewindPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) RewindPolicyChangedDetails_validator = bv.Struct(RewindPolicyChangedDetails) class RewindPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(RewindPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) RewindPolicyChangedType_validator = bv.Struct(RewindPolicyChangedType) class SecondaryEmailDeletedDetails(bb.Struct): """ Deleted secondary email. :ivar team_log.SecondaryEmailDeletedDetails.secondary_email: Deleted secondary email. """ __slots__ = [ '_secondary_email_value', ] _has_required_fields = True def __init__(self, secondary_email=None): self._secondary_email_value = bb.NOT_SET if secondary_email is not None: self.secondary_email = secondary_email # Instance attribute type: str (validator is set below) secondary_email = bb.Attribute("secondary_email") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SecondaryEmailDeletedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SecondaryEmailDeletedDetails_validator = bv.Struct(SecondaryEmailDeletedDetails) class SecondaryEmailDeletedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SecondaryEmailDeletedType, self)._process_custom_annotations(annotation_type, field_path, processor) SecondaryEmailDeletedType_validator = bv.Struct(SecondaryEmailDeletedType) class SecondaryEmailVerifiedDetails(bb.Struct): """ Verified secondary email. :ivar team_log.SecondaryEmailVerifiedDetails.secondary_email: Verified secondary email. """ __slots__ = [ '_secondary_email_value', ] _has_required_fields = True def __init__(self, secondary_email=None): self._secondary_email_value = bb.NOT_SET if secondary_email is not None: self.secondary_email = secondary_email # Instance attribute type: str (validator is set below) secondary_email = bb.Attribute("secondary_email") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SecondaryEmailVerifiedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SecondaryEmailVerifiedDetails_validator = bv.Struct(SecondaryEmailVerifiedDetails) class SecondaryEmailVerifiedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SecondaryEmailVerifiedType, self)._process_custom_annotations(annotation_type, field_path, processor) SecondaryEmailVerifiedType_validator = bv.Struct(SecondaryEmailVerifiedType) class SecondaryMailsPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SecondaryMailsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SecondaryMailsPolicy_validator = bv.Union(SecondaryMailsPolicy) class SecondaryMailsPolicyChangedDetails(bb.Struct): """ Secondary mails policy changed. :ivar team_log.SecondaryMailsPolicyChangedDetails.previous_value: Previous secondary mails policy. :ivar team_log.SecondaryMailsPolicyChangedDetails.new_value: New secondary mails policy. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: SecondaryMailsPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: SecondaryMailsPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SecondaryMailsPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SecondaryMailsPolicyChangedDetails_validator = bv.Struct(SecondaryMailsPolicyChangedDetails) class SecondaryMailsPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SecondaryMailsPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) SecondaryMailsPolicyChangedType_validator = bv.Struct(SecondaryMailsPolicyChangedType) class SecondaryTeamRequestAcceptedDetails(bb.Struct): """ Team merge request acceptance details shown to the secondary team :ivar team_log.SecondaryTeamRequestAcceptedDetails.primary_team: The primary team name. :ivar team_log.SecondaryTeamRequestAcceptedDetails.sent_by: The name of the secondary team admin who sent the request originally. """ __slots__ = [ '_primary_team_value', '_sent_by_value', ] _has_required_fields = True def __init__(self, primary_team=None, sent_by=None): self._primary_team_value = bb.NOT_SET self._sent_by_value = bb.NOT_SET if primary_team is not None: self.primary_team = primary_team if sent_by is not None: self.sent_by = sent_by # Instance attribute type: str (validator is set below) primary_team = bb.Attribute("primary_team") # Instance attribute type: str (validator is set below) sent_by = bb.Attribute("sent_by") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SecondaryTeamRequestAcceptedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SecondaryTeamRequestAcceptedDetails_validator = bv.Struct(SecondaryTeamRequestAcceptedDetails) class SecondaryTeamRequestCanceledDetails(bb.Struct): """ Team merge request cancellation details shown to the secondary team :ivar team_log.SecondaryTeamRequestCanceledDetails.sent_to: The email of the primary team admin that the request was sent to. :ivar team_log.SecondaryTeamRequestCanceledDetails.sent_by: The name of the secondary team admin who sent the request originally. """ __slots__ = [ '_sent_to_value', '_sent_by_value', ] _has_required_fields = True def __init__(self, sent_to=None, sent_by=None): self._sent_to_value = bb.NOT_SET self._sent_by_value = bb.NOT_SET if sent_to is not None: self.sent_to = sent_to if sent_by is not None: self.sent_by = sent_by # Instance attribute type: str (validator is set below) sent_to = bb.Attribute("sent_to") # Instance attribute type: str (validator is set below) sent_by = bb.Attribute("sent_by") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SecondaryTeamRequestCanceledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SecondaryTeamRequestCanceledDetails_validator = bv.Struct(SecondaryTeamRequestCanceledDetails) class SecondaryTeamRequestExpiredDetails(bb.Struct): """ Team merge request expiration details shown to the secondary team :ivar team_log.SecondaryTeamRequestExpiredDetails.sent_to: The email of the primary team admin the request was sent to. """ __slots__ = [ '_sent_to_value', ] _has_required_fields = True def __init__(self, sent_to=None): self._sent_to_value = bb.NOT_SET if sent_to is not None: self.sent_to = sent_to # Instance attribute type: str (validator is set below) sent_to = bb.Attribute("sent_to") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SecondaryTeamRequestExpiredDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SecondaryTeamRequestExpiredDetails_validator = bv.Struct(SecondaryTeamRequestExpiredDetails) class SecondaryTeamRequestReminderDetails(bb.Struct): """ Team merge request reminder details shown to the secondary team :ivar team_log.SecondaryTeamRequestReminderDetails.sent_to: The email of the primary team admin the request was sent to. """ __slots__ = [ '_sent_to_value', ] _has_required_fields = True def __init__(self, sent_to=None): self._sent_to_value = bb.NOT_SET if sent_to is not None: self.sent_to = sent_to # Instance attribute type: str (validator is set below) sent_to = bb.Attribute("sent_to") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SecondaryTeamRequestReminderDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SecondaryTeamRequestReminderDetails_validator = bv.Struct(SecondaryTeamRequestReminderDetails) class SendForSignaturePolicy(bb.Union): """ Policy for controlling team access to send for signature feature This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SendForSignaturePolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SendForSignaturePolicy_validator = bv.Union(SendForSignaturePolicy) class SendForSignaturePolicyChangedDetails(bb.Struct): """ Changed send for signature policy for team. :ivar team_log.SendForSignaturePolicyChangedDetails.new_value: New send for signature policy. :ivar team_log.SendForSignaturePolicyChangedDetails.previous_value: Previous send for signature policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: SendForSignaturePolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: SendForSignaturePolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SendForSignaturePolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SendForSignaturePolicyChangedDetails_validator = bv.Struct(SendForSignaturePolicyChangedDetails) class SendForSignaturePolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SendForSignaturePolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) SendForSignaturePolicyChangedType_validator = bv.Struct(SendForSignaturePolicyChangedType) class SfAddGroupDetails(bb.Struct): """ Added team to shared folder. :ivar team_log.SfAddGroupDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.SfAddGroupDetails.original_folder_name: Original shared folder name. :ivar team_log.SfAddGroupDetails.sharing_permission: Sharing permission. :ivar team_log.SfAddGroupDetails.team_name: Team name. """ __slots__ = [ '_target_asset_index_value', '_original_folder_name_value', '_sharing_permission_value', '_team_name_value', ] _has_required_fields = True def __init__(self, target_asset_index=None, original_folder_name=None, team_name=None, sharing_permission=None): self._target_asset_index_value = bb.NOT_SET self._original_folder_name_value = bb.NOT_SET self._sharing_permission_value = bb.NOT_SET self._team_name_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index if original_folder_name is not None: self.original_folder_name = original_folder_name if sharing_permission is not None: self.sharing_permission = sharing_permission if team_name is not None: self.team_name = team_name # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: str (validator is set below) original_folder_name = bb.Attribute("original_folder_name") # Instance attribute type: str (validator is set below) sharing_permission = bb.Attribute("sharing_permission", nullable=True) # Instance attribute type: str (validator is set below) team_name = bb.Attribute("team_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfAddGroupDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfAddGroupDetails_validator = bv.Struct(SfAddGroupDetails) class SfAddGroupType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfAddGroupType, self)._process_custom_annotations(annotation_type, field_path, processor) SfAddGroupType_validator = bv.Struct(SfAddGroupType) class SfAllowNonMembersToViewSharedLinksDetails(bb.Struct): """ Allowed non-collaborators to view links to files in shared folder. :ivar team_log.SfAllowNonMembersToViewSharedLinksDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.SfAllowNonMembersToViewSharedLinksDetails.original_folder_name: Original shared folder name. :ivar team_log.SfAllowNonMembersToViewSharedLinksDetails.shared_folder_type: Shared folder type. """ __slots__ = [ '_target_asset_index_value', '_original_folder_name_value', '_shared_folder_type_value', ] _has_required_fields = True def __init__(self, target_asset_index=None, original_folder_name=None, shared_folder_type=None): self._target_asset_index_value = bb.NOT_SET self._original_folder_name_value = bb.NOT_SET self._shared_folder_type_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index if original_folder_name is not None: self.original_folder_name = original_folder_name if shared_folder_type is not None: self.shared_folder_type = shared_folder_type # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: str (validator is set below) original_folder_name = bb.Attribute("original_folder_name") # Instance attribute type: str (validator is set below) shared_folder_type = bb.Attribute("shared_folder_type", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfAllowNonMembersToViewSharedLinksDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfAllowNonMembersToViewSharedLinksDetails_validator = bv.Struct(SfAllowNonMembersToViewSharedLinksDetails) class SfAllowNonMembersToViewSharedLinksType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfAllowNonMembersToViewSharedLinksType, self)._process_custom_annotations(annotation_type, field_path, processor) SfAllowNonMembersToViewSharedLinksType_validator = bv.Struct(SfAllowNonMembersToViewSharedLinksType) class SfExternalInviteWarnDetails(bb.Struct): """ Set team members to see warning before sharing folders outside team. :ivar team_log.SfExternalInviteWarnDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.SfExternalInviteWarnDetails.original_folder_name: Original shared folder name. :ivar team_log.SfExternalInviteWarnDetails.new_sharing_permission: New sharing permission. :ivar team_log.SfExternalInviteWarnDetails.previous_sharing_permission: Previous sharing permission. """ __slots__ = [ '_target_asset_index_value', '_original_folder_name_value', '_new_sharing_permission_value', '_previous_sharing_permission_value', ] _has_required_fields = True def __init__(self, target_asset_index=None, original_folder_name=None, new_sharing_permission=None, previous_sharing_permission=None): self._target_asset_index_value = bb.NOT_SET self._original_folder_name_value = bb.NOT_SET self._new_sharing_permission_value = bb.NOT_SET self._previous_sharing_permission_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index if original_folder_name is not None: self.original_folder_name = original_folder_name if new_sharing_permission is not None: self.new_sharing_permission = new_sharing_permission if previous_sharing_permission is not None: self.previous_sharing_permission = previous_sharing_permission # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: str (validator is set below) original_folder_name = bb.Attribute("original_folder_name") # Instance attribute type: str (validator is set below) new_sharing_permission = bb.Attribute("new_sharing_permission", nullable=True) # Instance attribute type: str (validator is set below) previous_sharing_permission = bb.Attribute("previous_sharing_permission", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfExternalInviteWarnDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfExternalInviteWarnDetails_validator = bv.Struct(SfExternalInviteWarnDetails) class SfExternalInviteWarnType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfExternalInviteWarnType, self)._process_custom_annotations(annotation_type, field_path, processor) SfExternalInviteWarnType_validator = bv.Struct(SfExternalInviteWarnType) class SfFbInviteChangeRoleDetails(bb.Struct): """ Changed Facebook user's role in shared folder. :ivar team_log.SfFbInviteChangeRoleDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.SfFbInviteChangeRoleDetails.original_folder_name: Original shared folder name. :ivar team_log.SfFbInviteChangeRoleDetails.previous_sharing_permission: Previous sharing permission. :ivar team_log.SfFbInviteChangeRoleDetails.new_sharing_permission: New sharing permission. """ __slots__ = [ '_target_asset_index_value', '_original_folder_name_value', '_previous_sharing_permission_value', '_new_sharing_permission_value', ] _has_required_fields = True def __init__(self, target_asset_index=None, original_folder_name=None, previous_sharing_permission=None, new_sharing_permission=None): self._target_asset_index_value = bb.NOT_SET self._original_folder_name_value = bb.NOT_SET self._previous_sharing_permission_value = bb.NOT_SET self._new_sharing_permission_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index if original_folder_name is not None: self.original_folder_name = original_folder_name if previous_sharing_permission is not None: self.previous_sharing_permission = previous_sharing_permission if new_sharing_permission is not None: self.new_sharing_permission = new_sharing_permission # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: str (validator is set below) original_folder_name = bb.Attribute("original_folder_name") # Instance attribute type: str (validator is set below) previous_sharing_permission = bb.Attribute("previous_sharing_permission", nullable=True) # Instance attribute type: str (validator is set below) new_sharing_permission = bb.Attribute("new_sharing_permission", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfFbInviteChangeRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfFbInviteChangeRoleDetails_validator = bv.Struct(SfFbInviteChangeRoleDetails) class SfFbInviteChangeRoleType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfFbInviteChangeRoleType, self)._process_custom_annotations(annotation_type, field_path, processor) SfFbInviteChangeRoleType_validator = bv.Struct(SfFbInviteChangeRoleType) class SfFbInviteDetails(bb.Struct): """ Invited Facebook users to shared folder. :ivar team_log.SfFbInviteDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.SfFbInviteDetails.original_folder_name: Original shared folder name. :ivar team_log.SfFbInviteDetails.sharing_permission: Sharing permission. """ __slots__ = [ '_target_asset_index_value', '_original_folder_name_value', '_sharing_permission_value', ] _has_required_fields = True def __init__(self, target_asset_index=None, original_folder_name=None, sharing_permission=None): self._target_asset_index_value = bb.NOT_SET self._original_folder_name_value = bb.NOT_SET self._sharing_permission_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index if original_folder_name is not None: self.original_folder_name = original_folder_name if sharing_permission is not None: self.sharing_permission = sharing_permission # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: str (validator is set below) original_folder_name = bb.Attribute("original_folder_name") # Instance attribute type: str (validator is set below) sharing_permission = bb.Attribute("sharing_permission", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfFbInviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfFbInviteDetails_validator = bv.Struct(SfFbInviteDetails) class SfFbInviteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfFbInviteType, self)._process_custom_annotations(annotation_type, field_path, processor) SfFbInviteType_validator = bv.Struct(SfFbInviteType) class SfFbUninviteDetails(bb.Struct): """ Uninvited Facebook user from shared folder. :ivar team_log.SfFbUninviteDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.SfFbUninviteDetails.original_folder_name: Original shared folder name. """ __slots__ = [ '_target_asset_index_value', '_original_folder_name_value', ] _has_required_fields = True def __init__(self, target_asset_index=None, original_folder_name=None): self._target_asset_index_value = bb.NOT_SET self._original_folder_name_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index if original_folder_name is not None: self.original_folder_name = original_folder_name # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: str (validator is set below) original_folder_name = bb.Attribute("original_folder_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfFbUninviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfFbUninviteDetails_validator = bv.Struct(SfFbUninviteDetails) class SfFbUninviteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfFbUninviteType, self)._process_custom_annotations(annotation_type, field_path, processor) SfFbUninviteType_validator = bv.Struct(SfFbUninviteType) class SfInviteGroupDetails(bb.Struct): """ Invited group to shared folder. :ivar team_log.SfInviteGroupDetails.target_asset_index: Target asset position in the Assets list. """ __slots__ = [ '_target_asset_index_value', ] _has_required_fields = True def __init__(self, target_asset_index=None): self._target_asset_index_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfInviteGroupDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfInviteGroupDetails_validator = bv.Struct(SfInviteGroupDetails) class SfInviteGroupType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfInviteGroupType, self)._process_custom_annotations(annotation_type, field_path, processor) SfInviteGroupType_validator = bv.Struct(SfInviteGroupType) class SfTeamGrantAccessDetails(bb.Struct): """ Granted access to shared folder. :ivar team_log.SfTeamGrantAccessDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.SfTeamGrantAccessDetails.original_folder_name: Original shared folder name. """ __slots__ = [ '_target_asset_index_value', '_original_folder_name_value', ] _has_required_fields = True def __init__(self, target_asset_index=None, original_folder_name=None): self._target_asset_index_value = bb.NOT_SET self._original_folder_name_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index if original_folder_name is not None: self.original_folder_name = original_folder_name # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: str (validator is set below) original_folder_name = bb.Attribute("original_folder_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfTeamGrantAccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfTeamGrantAccessDetails_validator = bv.Struct(SfTeamGrantAccessDetails) class SfTeamGrantAccessType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfTeamGrantAccessType, self)._process_custom_annotations(annotation_type, field_path, processor) SfTeamGrantAccessType_validator = bv.Struct(SfTeamGrantAccessType) class SfTeamInviteChangeRoleDetails(bb.Struct): """ Changed team member's role in shared folder. :ivar team_log.SfTeamInviteChangeRoleDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.SfTeamInviteChangeRoleDetails.original_folder_name: Original shared folder name. :ivar team_log.SfTeamInviteChangeRoleDetails.new_sharing_permission: New sharing permission. :ivar team_log.SfTeamInviteChangeRoleDetails.previous_sharing_permission: Previous sharing permission. """ __slots__ = [ '_target_asset_index_value', '_original_folder_name_value', '_new_sharing_permission_value', '_previous_sharing_permission_value', ] _has_required_fields = True def __init__(self, target_asset_index=None, original_folder_name=None, new_sharing_permission=None, previous_sharing_permission=None): self._target_asset_index_value = bb.NOT_SET self._original_folder_name_value = bb.NOT_SET self._new_sharing_permission_value = bb.NOT_SET self._previous_sharing_permission_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index if original_folder_name is not None: self.original_folder_name = original_folder_name if new_sharing_permission is not None: self.new_sharing_permission = new_sharing_permission if previous_sharing_permission is not None: self.previous_sharing_permission = previous_sharing_permission # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: str (validator is set below) original_folder_name = bb.Attribute("original_folder_name") # Instance attribute type: str (validator is set below) new_sharing_permission = bb.Attribute("new_sharing_permission", nullable=True) # Instance attribute type: str (validator is set below) previous_sharing_permission = bb.Attribute("previous_sharing_permission", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfTeamInviteChangeRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfTeamInviteChangeRoleDetails_validator = bv.Struct(SfTeamInviteChangeRoleDetails) class SfTeamInviteChangeRoleType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfTeamInviteChangeRoleType, self)._process_custom_annotations(annotation_type, field_path, processor) SfTeamInviteChangeRoleType_validator = bv.Struct(SfTeamInviteChangeRoleType) class SfTeamInviteDetails(bb.Struct): """ Invited team members to shared folder. :ivar team_log.SfTeamInviteDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.SfTeamInviteDetails.original_folder_name: Original shared folder name. :ivar team_log.SfTeamInviteDetails.sharing_permission: Sharing permission. """ __slots__ = [ '_target_asset_index_value', '_original_folder_name_value', '_sharing_permission_value', ] _has_required_fields = True def __init__(self, target_asset_index=None, original_folder_name=None, sharing_permission=None): self._target_asset_index_value = bb.NOT_SET self._original_folder_name_value = bb.NOT_SET self._sharing_permission_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index if original_folder_name is not None: self.original_folder_name = original_folder_name if sharing_permission is not None: self.sharing_permission = sharing_permission # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: str (validator is set below) original_folder_name = bb.Attribute("original_folder_name") # Instance attribute type: str (validator is set below) sharing_permission = bb.Attribute("sharing_permission", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfTeamInviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfTeamInviteDetails_validator = bv.Struct(SfTeamInviteDetails) class SfTeamInviteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfTeamInviteType, self)._process_custom_annotations(annotation_type, field_path, processor) SfTeamInviteType_validator = bv.Struct(SfTeamInviteType) class SfTeamJoinDetails(bb.Struct): """ Joined team member's shared folder. :ivar team_log.SfTeamJoinDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.SfTeamJoinDetails.original_folder_name: Original shared folder name. """ __slots__ = [ '_target_asset_index_value', '_original_folder_name_value', ] _has_required_fields = True def __init__(self, target_asset_index=None, original_folder_name=None): self._target_asset_index_value = bb.NOT_SET self._original_folder_name_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index if original_folder_name is not None: self.original_folder_name = original_folder_name # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: str (validator is set below) original_folder_name = bb.Attribute("original_folder_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfTeamJoinDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfTeamJoinDetails_validator = bv.Struct(SfTeamJoinDetails) class SfTeamJoinFromOobLinkDetails(bb.Struct): """ Joined team member's shared folder from link. :ivar team_log.SfTeamJoinFromOobLinkDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.SfTeamJoinFromOobLinkDetails.original_folder_name: Original shared folder name. :ivar team_log.SfTeamJoinFromOobLinkDetails.token_key: Shared link token key. :ivar team_log.SfTeamJoinFromOobLinkDetails.sharing_permission: Sharing permission. """ __slots__ = [ '_target_asset_index_value', '_original_folder_name_value', '_token_key_value', '_sharing_permission_value', ] _has_required_fields = True def __init__(self, target_asset_index=None, original_folder_name=None, token_key=None, sharing_permission=None): self._target_asset_index_value = bb.NOT_SET self._original_folder_name_value = bb.NOT_SET self._token_key_value = bb.NOT_SET self._sharing_permission_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index if original_folder_name is not None: self.original_folder_name = original_folder_name if token_key is not None: self.token_key = token_key if sharing_permission is not None: self.sharing_permission = sharing_permission # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: str (validator is set below) original_folder_name = bb.Attribute("original_folder_name") # Instance attribute type: str (validator is set below) token_key = bb.Attribute("token_key", nullable=True) # Instance attribute type: str (validator is set below) sharing_permission = bb.Attribute("sharing_permission", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfTeamJoinFromOobLinkDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfTeamJoinFromOobLinkDetails_validator = bv.Struct(SfTeamJoinFromOobLinkDetails) class SfTeamJoinFromOobLinkType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfTeamJoinFromOobLinkType, self)._process_custom_annotations(annotation_type, field_path, processor) SfTeamJoinFromOobLinkType_validator = bv.Struct(SfTeamJoinFromOobLinkType) class SfTeamJoinType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfTeamJoinType, self)._process_custom_annotations(annotation_type, field_path, processor) SfTeamJoinType_validator = bv.Struct(SfTeamJoinType) class SfTeamUninviteDetails(bb.Struct): """ Unshared folder with team member. :ivar team_log.SfTeamUninviteDetails.target_asset_index: Target asset position in the Assets list. :ivar team_log.SfTeamUninviteDetails.original_folder_name: Original shared folder name. """ __slots__ = [ '_target_asset_index_value', '_original_folder_name_value', ] _has_required_fields = True def __init__(self, target_asset_index=None, original_folder_name=None): self._target_asset_index_value = bb.NOT_SET self._original_folder_name_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index if original_folder_name is not None: self.original_folder_name = original_folder_name # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") # Instance attribute type: str (validator is set below) original_folder_name = bb.Attribute("original_folder_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfTeamUninviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SfTeamUninviteDetails_validator = bv.Struct(SfTeamUninviteDetails) class SfTeamUninviteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SfTeamUninviteType, self)._process_custom_annotations(annotation_type, field_path, processor) SfTeamUninviteType_validator = bv.Struct(SfTeamUninviteType) class SharedContentAddInviteesDetails(bb.Struct): """ Invited user to Dropbox and added them to shared file/folder. :ivar team_log.SharedContentAddInviteesDetails.shared_content_access_level: Shared content access level. :ivar team_log.SharedContentAddInviteesDetails.invitees: A list of invitees. """ __slots__ = [ '_shared_content_access_level_value', '_invitees_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None, invitees=None): self._shared_content_access_level_value = bb.NOT_SET self._invitees_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level if invitees is not None: self.invitees = invitees # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) # Instance attribute type: list of [str] (validator is set below) invitees = bb.Attribute("invitees") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentAddInviteesDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentAddInviteesDetails_validator = bv.Struct(SharedContentAddInviteesDetails) class SharedContentAddInviteesType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentAddInviteesType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentAddInviteesType_validator = bv.Struct(SharedContentAddInviteesType) class SharedContentAddLinkExpiryDetails(bb.Struct): """ Added expiration date to link for shared file/folder. :ivar team_log.SharedContentAddLinkExpiryDetails.new_value: New shared content link expiration date. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', ] _has_required_fields = False def __init__(self, new_value=None): self._new_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value # Instance attribute type: datetime.datetime (validator is set below) new_value = bb.Attribute("new_value", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentAddLinkExpiryDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentAddLinkExpiryDetails_validator = bv.Struct(SharedContentAddLinkExpiryDetails) class SharedContentAddLinkExpiryType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentAddLinkExpiryType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentAddLinkExpiryType_validator = bv.Struct(SharedContentAddLinkExpiryType) class SharedContentAddLinkPasswordDetails(bb.Struct): """ Added password to link for shared file/folder. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentAddLinkPasswordDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentAddLinkPasswordDetails_validator = bv.Struct(SharedContentAddLinkPasswordDetails) class SharedContentAddLinkPasswordType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentAddLinkPasswordType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentAddLinkPasswordType_validator = bv.Struct(SharedContentAddLinkPasswordType) class SharedContentAddMemberDetails(bb.Struct): """ Added users and/or groups to shared file/folder. :ivar team_log.SharedContentAddMemberDetails.shared_content_access_level: Shared content access level. """ __slots__ = [ '_shared_content_access_level_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None): self._shared_content_access_level_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentAddMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentAddMemberDetails_validator = bv.Struct(SharedContentAddMemberDetails) class SharedContentAddMemberType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentAddMemberType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentAddMemberType_validator = bv.Struct(SharedContentAddMemberType) class SharedContentChangeDownloadsPolicyDetails(bb.Struct): """ Changed whether members can download shared file/folder. :ivar team_log.SharedContentChangeDownloadsPolicyDetails.new_value: New downloads policy. :ivar team_log.SharedContentChangeDownloadsPolicyDetails.previous_value: Previous downloads policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: DownloadPolicyType (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: DownloadPolicyType (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeDownloadsPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeDownloadsPolicyDetails_validator = bv.Struct(SharedContentChangeDownloadsPolicyDetails) class SharedContentChangeDownloadsPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeDownloadsPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeDownloadsPolicyType_validator = bv.Struct(SharedContentChangeDownloadsPolicyType) class SharedContentChangeInviteeRoleDetails(bb.Struct): """ Changed access type of invitee to shared file/folder before invite was accepted. :ivar team_log.SharedContentChangeInviteeRoleDetails.previous_access_level: Previous access level. Might be missing due to historical data gap. :ivar team_log.SharedContentChangeInviteeRoleDetails.new_access_level: New access level. :ivar team_log.SharedContentChangeInviteeRoleDetails.invitee: The invitee whose role was changed. """ __slots__ = [ '_previous_access_level_value', '_new_access_level_value', '_invitee_value', ] _has_required_fields = True def __init__(self, new_access_level=None, invitee=None, previous_access_level=None): self._previous_access_level_value = bb.NOT_SET self._new_access_level_value = bb.NOT_SET self._invitee_value = bb.NOT_SET if previous_access_level is not None: self.previous_access_level = previous_access_level if new_access_level is not None: self.new_access_level = new_access_level if invitee is not None: self.invitee = invitee # Instance attribute type: sharing.AccessLevel (validator is set below) previous_access_level = bb.Attribute("previous_access_level", nullable=True, user_defined=True) # Instance attribute type: sharing.AccessLevel (validator is set below) new_access_level = bb.Attribute("new_access_level", user_defined=True) # Instance attribute type: str (validator is set below) invitee = bb.Attribute("invitee") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeInviteeRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeInviteeRoleDetails_validator = bv.Struct(SharedContentChangeInviteeRoleDetails) class SharedContentChangeInviteeRoleType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeInviteeRoleType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeInviteeRoleType_validator = bv.Struct(SharedContentChangeInviteeRoleType) class SharedContentChangeLinkAudienceDetails(bb.Struct): """ Changed link audience of shared file/folder. :ivar team_log.SharedContentChangeLinkAudienceDetails.new_value: New link audience value. :ivar team_log.SharedContentChangeLinkAudienceDetails.previous_value: Previous link audience value. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: sharing.LinkAudience (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: sharing.LinkAudience (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeLinkAudienceDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeLinkAudienceDetails_validator = bv.Struct(SharedContentChangeLinkAudienceDetails) class SharedContentChangeLinkAudienceType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeLinkAudienceType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeLinkAudienceType_validator = bv.Struct(SharedContentChangeLinkAudienceType) class SharedContentChangeLinkExpiryDetails(bb.Struct): """ Changed link expiration of shared file/folder. :ivar team_log.SharedContentChangeLinkExpiryDetails.new_value: New shared content link expiration date. Might be missing due to historical data gap. :ivar team_log.SharedContentChangeLinkExpiryDetails.previous_value: Previous shared content link expiration date. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = False def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: datetime.datetime (validator is set below) new_value = bb.Attribute("new_value", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeLinkExpiryDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeLinkExpiryDetails_validator = bv.Struct(SharedContentChangeLinkExpiryDetails) class SharedContentChangeLinkExpiryType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeLinkExpiryType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeLinkExpiryType_validator = bv.Struct(SharedContentChangeLinkExpiryType) class SharedContentChangeLinkPasswordDetails(bb.Struct): """ Changed link password of shared file/folder. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeLinkPasswordDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeLinkPasswordDetails_validator = bv.Struct(SharedContentChangeLinkPasswordDetails) class SharedContentChangeLinkPasswordType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeLinkPasswordType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeLinkPasswordType_validator = bv.Struct(SharedContentChangeLinkPasswordType) class SharedContentChangeMemberRoleDetails(bb.Struct): """ Changed access type of shared file/folder member. :ivar team_log.SharedContentChangeMemberRoleDetails.previous_access_level: Previous access level. Might be missing due to historical data gap. :ivar team_log.SharedContentChangeMemberRoleDetails.new_access_level: New access level. """ __slots__ = [ '_previous_access_level_value', '_new_access_level_value', ] _has_required_fields = True def __init__(self, new_access_level=None, previous_access_level=None): self._previous_access_level_value = bb.NOT_SET self._new_access_level_value = bb.NOT_SET if previous_access_level is not None: self.previous_access_level = previous_access_level if new_access_level is not None: self.new_access_level = new_access_level # Instance attribute type: sharing.AccessLevel (validator is set below) previous_access_level = bb.Attribute("previous_access_level", nullable=True, user_defined=True) # Instance attribute type: sharing.AccessLevel (validator is set below) new_access_level = bb.Attribute("new_access_level", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeMemberRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeMemberRoleDetails_validator = bv.Struct(SharedContentChangeMemberRoleDetails) class SharedContentChangeMemberRoleType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeMemberRoleType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeMemberRoleType_validator = bv.Struct(SharedContentChangeMemberRoleType) class SharedContentChangeViewerInfoPolicyDetails(bb.Struct): """ Changed whether members can see who viewed shared file/folder. :ivar team_log.SharedContentChangeViewerInfoPolicyDetails.new_value: New viewer info policy. :ivar team_log.SharedContentChangeViewerInfoPolicyDetails.previous_value: Previous view info policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: sharing.ViewerInfoPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: sharing.ViewerInfoPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeViewerInfoPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeViewerInfoPolicyDetails_validator = bv.Struct(SharedContentChangeViewerInfoPolicyDetails) class SharedContentChangeViewerInfoPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentChangeViewerInfoPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentChangeViewerInfoPolicyType_validator = bv.Struct(SharedContentChangeViewerInfoPolicyType) class SharedContentClaimInvitationDetails(bb.Struct): """ Acquired membership of shared file/folder by accepting invite. :ivar team_log.SharedContentClaimInvitationDetails.shared_content_link: Shared content link. """ __slots__ = [ '_shared_content_link_value', ] _has_required_fields = False def __init__(self, shared_content_link=None): self._shared_content_link_value = bb.NOT_SET if shared_content_link is not None: self.shared_content_link = shared_content_link # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentClaimInvitationDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentClaimInvitationDetails_validator = bv.Struct(SharedContentClaimInvitationDetails) class SharedContentClaimInvitationType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentClaimInvitationType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentClaimInvitationType_validator = bv.Struct(SharedContentClaimInvitationType) class SharedContentCopyDetails(bb.Struct): """ Copied shared file/folder to own Dropbox. :ivar team_log.SharedContentCopyDetails.shared_content_link: Shared content link. :ivar team_log.SharedContentCopyDetails.shared_content_owner: The shared content owner. :ivar team_log.SharedContentCopyDetails.shared_content_access_level: Shared content access level. :ivar team_log.SharedContentCopyDetails.destination_path: The path where the member saved the content. """ __slots__ = [ '_shared_content_link_value', '_shared_content_owner_value', '_shared_content_access_level_value', '_destination_path_value', ] _has_required_fields = True def __init__(self, shared_content_link=None, shared_content_access_level=None, destination_path=None, shared_content_owner=None): self._shared_content_link_value = bb.NOT_SET self._shared_content_owner_value = bb.NOT_SET self._shared_content_access_level_value = bb.NOT_SET self._destination_path_value = bb.NOT_SET if shared_content_link is not None: self.shared_content_link = shared_content_link if shared_content_owner is not None: self.shared_content_owner = shared_content_owner if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level if destination_path is not None: self.destination_path = destination_path # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link") # Instance attribute type: UserLogInfo (validator is set below) shared_content_owner = bb.Attribute("shared_content_owner", nullable=True, user_defined=True) # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) # Instance attribute type: str (validator is set below) destination_path = bb.Attribute("destination_path") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentCopyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentCopyDetails_validator = bv.Struct(SharedContentCopyDetails) class SharedContentCopyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentCopyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentCopyType_validator = bv.Struct(SharedContentCopyType) class SharedContentDownloadDetails(bb.Struct): """ Downloaded shared file/folder. :ivar team_log.SharedContentDownloadDetails.shared_content_link: Shared content link. :ivar team_log.SharedContentDownloadDetails.shared_content_owner: The shared content owner. :ivar team_log.SharedContentDownloadDetails.shared_content_access_level: Shared content access level. """ __slots__ = [ '_shared_content_link_value', '_shared_content_owner_value', '_shared_content_access_level_value', ] _has_required_fields = True def __init__(self, shared_content_link=None, shared_content_access_level=None, shared_content_owner=None): self._shared_content_link_value = bb.NOT_SET self._shared_content_owner_value = bb.NOT_SET self._shared_content_access_level_value = bb.NOT_SET if shared_content_link is not None: self.shared_content_link = shared_content_link if shared_content_owner is not None: self.shared_content_owner = shared_content_owner if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link") # Instance attribute type: UserLogInfo (validator is set below) shared_content_owner = bb.Attribute("shared_content_owner", nullable=True, user_defined=True) # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentDownloadDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentDownloadDetails_validator = bv.Struct(SharedContentDownloadDetails) class SharedContentDownloadType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentDownloadType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentDownloadType_validator = bv.Struct(SharedContentDownloadType) class SharedContentRelinquishMembershipDetails(bb.Struct): """ Left shared file/folder. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRelinquishMembershipDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRelinquishMembershipDetails_validator = bv.Struct(SharedContentRelinquishMembershipDetails) class SharedContentRelinquishMembershipType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRelinquishMembershipType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRelinquishMembershipType_validator = bv.Struct(SharedContentRelinquishMembershipType) class SharedContentRemoveInviteesDetails(bb.Struct): """ Removed invitee from shared file/folder before invite was accepted. :ivar team_log.SharedContentRemoveInviteesDetails.invitees: A list of invitees. """ __slots__ = [ '_invitees_value', ] _has_required_fields = True def __init__(self, invitees=None): self._invitees_value = bb.NOT_SET if invitees is not None: self.invitees = invitees # Instance attribute type: list of [str] (validator is set below) invitees = bb.Attribute("invitees") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRemoveInviteesDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRemoveInviteesDetails_validator = bv.Struct(SharedContentRemoveInviteesDetails) class SharedContentRemoveInviteesType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRemoveInviteesType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRemoveInviteesType_validator = bv.Struct(SharedContentRemoveInviteesType) class SharedContentRemoveLinkExpiryDetails(bb.Struct): """ Removed link expiration date of shared file/folder. :ivar team_log.SharedContentRemoveLinkExpiryDetails.previous_value: Previous shared content link expiration date. Might be missing due to historical data gap. """ __slots__ = [ '_previous_value_value', ] _has_required_fields = False def __init__(self, previous_value=None): self._previous_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value # Instance attribute type: datetime.datetime (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRemoveLinkExpiryDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRemoveLinkExpiryDetails_validator = bv.Struct(SharedContentRemoveLinkExpiryDetails) class SharedContentRemoveLinkExpiryType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRemoveLinkExpiryType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRemoveLinkExpiryType_validator = bv.Struct(SharedContentRemoveLinkExpiryType) class SharedContentRemoveLinkPasswordDetails(bb.Struct): """ Removed link password of shared file/folder. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRemoveLinkPasswordDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRemoveLinkPasswordDetails_validator = bv.Struct(SharedContentRemoveLinkPasswordDetails) class SharedContentRemoveLinkPasswordType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRemoveLinkPasswordType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRemoveLinkPasswordType_validator = bv.Struct(SharedContentRemoveLinkPasswordType) class SharedContentRemoveMemberDetails(bb.Struct): """ Removed user/group from shared file/folder. :ivar team_log.SharedContentRemoveMemberDetails.shared_content_access_level: Shared content access level. """ __slots__ = [ '_shared_content_access_level_value', ] _has_required_fields = False def __init__(self, shared_content_access_level=None): self._shared_content_access_level_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRemoveMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRemoveMemberDetails_validator = bv.Struct(SharedContentRemoveMemberDetails) class SharedContentRemoveMemberType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRemoveMemberType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRemoveMemberType_validator = bv.Struct(SharedContentRemoveMemberType) class SharedContentRequestAccessDetails(bb.Struct): """ Requested access to shared file/folder. :ivar team_log.SharedContentRequestAccessDetails.shared_content_link: Shared content link. """ __slots__ = [ '_shared_content_link_value', ] _has_required_fields = False def __init__(self, shared_content_link=None): self._shared_content_link_value = bb.NOT_SET if shared_content_link is not None: self.shared_content_link = shared_content_link # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRequestAccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRequestAccessDetails_validator = bv.Struct(SharedContentRequestAccessDetails) class SharedContentRequestAccessType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRequestAccessType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRequestAccessType_validator = bv.Struct(SharedContentRequestAccessType) class SharedContentRestoreInviteesDetails(bb.Struct): """ Restored shared file/folder invitees. :ivar team_log.SharedContentRestoreInviteesDetails.shared_content_access_level: Shared content access level. :ivar team_log.SharedContentRestoreInviteesDetails.invitees: A list of invitees. """ __slots__ = [ '_shared_content_access_level_value', '_invitees_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None, invitees=None): self._shared_content_access_level_value = bb.NOT_SET self._invitees_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level if invitees is not None: self.invitees = invitees # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) # Instance attribute type: list of [str] (validator is set below) invitees = bb.Attribute("invitees") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRestoreInviteesDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRestoreInviteesDetails_validator = bv.Struct(SharedContentRestoreInviteesDetails) class SharedContentRestoreInviteesType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRestoreInviteesType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRestoreInviteesType_validator = bv.Struct(SharedContentRestoreInviteesType) class SharedContentRestoreMemberDetails(bb.Struct): """ Restored users and/or groups to membership of shared file/folder. :ivar team_log.SharedContentRestoreMemberDetails.shared_content_access_level: Shared content access level. """ __slots__ = [ '_shared_content_access_level_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None): self._shared_content_access_level_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRestoreMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRestoreMemberDetails_validator = bv.Struct(SharedContentRestoreMemberDetails) class SharedContentRestoreMemberType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentRestoreMemberType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentRestoreMemberType_validator = bv.Struct(SharedContentRestoreMemberType) class SharedContentUnshareDetails(bb.Struct): """ Unshared file/folder by clearing membership. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentUnshareDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentUnshareDetails_validator = bv.Struct(SharedContentUnshareDetails) class SharedContentUnshareType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentUnshareType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentUnshareType_validator = bv.Struct(SharedContentUnshareType) class SharedContentViewDetails(bb.Struct): """ Previewed shared file/folder. :ivar team_log.SharedContentViewDetails.shared_content_link: Shared content link. :ivar team_log.SharedContentViewDetails.shared_content_owner: The shared content owner. :ivar team_log.SharedContentViewDetails.shared_content_access_level: Shared content access level. """ __slots__ = [ '_shared_content_link_value', '_shared_content_owner_value', '_shared_content_access_level_value', ] _has_required_fields = True def __init__(self, shared_content_link=None, shared_content_access_level=None, shared_content_owner=None): self._shared_content_link_value = bb.NOT_SET self._shared_content_owner_value = bb.NOT_SET self._shared_content_access_level_value = bb.NOT_SET if shared_content_link is not None: self.shared_content_link = shared_content_link if shared_content_owner is not None: self.shared_content_owner = shared_content_owner if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link") # Instance attribute type: UserLogInfo (validator is set below) shared_content_owner = bb.Attribute("shared_content_owner", nullable=True, user_defined=True) # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentViewDetails_validator = bv.Struct(SharedContentViewDetails) class SharedContentViewType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedContentViewType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedContentViewType_validator = bv.Struct(SharedContentViewType) class SharedFolderChangeLinkPolicyDetails(bb.Struct): """ Changed who can access shared folder via link. :ivar team_log.SharedFolderChangeLinkPolicyDetails.new_value: New shared folder link policy. :ivar team_log.SharedFolderChangeLinkPolicyDetails.previous_value: Previous shared folder link policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: sharing.SharedLinkPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: sharing.SharedLinkPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderChangeLinkPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderChangeLinkPolicyDetails_validator = bv.Struct(SharedFolderChangeLinkPolicyDetails) class SharedFolderChangeLinkPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderChangeLinkPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderChangeLinkPolicyType_validator = bv.Struct(SharedFolderChangeLinkPolicyType) class SharedFolderChangeMembersInheritancePolicyDetails(bb.Struct): """ Changed whether shared folder inherits members from parent folder. :ivar team_log.SharedFolderChangeMembersInheritancePolicyDetails.new_value: New member inheritance policy. :ivar team_log.SharedFolderChangeMembersInheritancePolicyDetails.previous_value: Previous member inheritance policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: SharedFolderMembersInheritancePolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: SharedFolderMembersInheritancePolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderChangeMembersInheritancePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderChangeMembersInheritancePolicyDetails_validator = bv.Struct(SharedFolderChangeMembersInheritancePolicyDetails) class SharedFolderChangeMembersInheritancePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderChangeMembersInheritancePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderChangeMembersInheritancePolicyType_validator = bv.Struct(SharedFolderChangeMembersInheritancePolicyType) class SharedFolderChangeMembersManagementPolicyDetails(bb.Struct): """ Changed who can add/remove members of shared folder. :ivar team_log.SharedFolderChangeMembersManagementPolicyDetails.new_value: New members management policy. :ivar team_log.SharedFolderChangeMembersManagementPolicyDetails.previous_value: Previous members management policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: sharing.AclUpdatePolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: sharing.AclUpdatePolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderChangeMembersManagementPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderChangeMembersManagementPolicyDetails_validator = bv.Struct(SharedFolderChangeMembersManagementPolicyDetails) class SharedFolderChangeMembersManagementPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderChangeMembersManagementPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderChangeMembersManagementPolicyType_validator = bv.Struct(SharedFolderChangeMembersManagementPolicyType) class SharedFolderChangeMembersPolicyDetails(bb.Struct): """ Changed who can become member of shared folder. :ivar team_log.SharedFolderChangeMembersPolicyDetails.new_value: New external invite policy. :ivar team_log.SharedFolderChangeMembersPolicyDetails.previous_value: Previous external invite policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: sharing.MemberPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: sharing.MemberPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderChangeMembersPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderChangeMembersPolicyDetails_validator = bv.Struct(SharedFolderChangeMembersPolicyDetails) class SharedFolderChangeMembersPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderChangeMembersPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderChangeMembersPolicyType_validator = bv.Struct(SharedFolderChangeMembersPolicyType) class SharedFolderCreateDetails(bb.Struct): """ Created shared folder. :ivar team_log.SharedFolderCreateDetails.target_ns_id: Target namespace ID. """ __slots__ = [ '_target_ns_id_value', ] _has_required_fields = False def __init__(self, target_ns_id=None): self._target_ns_id_value = bb.NOT_SET if target_ns_id is not None: self.target_ns_id = target_ns_id # Instance attribute type: str (validator is set below) target_ns_id = bb.Attribute("target_ns_id", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderCreateDetails_validator = bv.Struct(SharedFolderCreateDetails) class SharedFolderCreateType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderCreateType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderCreateType_validator = bv.Struct(SharedFolderCreateType) class SharedFolderDeclineInvitationDetails(bb.Struct): """ Declined team member's invite to shared folder. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderDeclineInvitationDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderDeclineInvitationDetails_validator = bv.Struct(SharedFolderDeclineInvitationDetails) class SharedFolderDeclineInvitationType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderDeclineInvitationType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderDeclineInvitationType_validator = bv.Struct(SharedFolderDeclineInvitationType) class SharedFolderMembersInheritancePolicy(bb.Union): """ Specifies if a shared folder inherits its members from the parent folder. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition dont_inherit_members = None # Attribute is overwritten below the class definition inherit_members = None # Attribute is overwritten below the class definition other = None def is_dont_inherit_members(self): """ Check if the union tag is ``dont_inherit_members``. :rtype: bool """ return self._tag == 'dont_inherit_members' def is_inherit_members(self): """ Check if the union tag is ``inherit_members``. :rtype: bool """ return self._tag == 'inherit_members' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderMembersInheritancePolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderMembersInheritancePolicy_validator = bv.Union(SharedFolderMembersInheritancePolicy) class SharedFolderMountDetails(bb.Struct): """ Added shared folder to own Dropbox. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderMountDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderMountDetails_validator = bv.Struct(SharedFolderMountDetails) class SharedFolderMountType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderMountType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderMountType_validator = bv.Struct(SharedFolderMountType) class SharedFolderNestDetails(bb.Struct): """ Changed parent of shared folder. :ivar team_log.SharedFolderNestDetails.previous_parent_ns_id: Previous parent namespace ID. :ivar team_log.SharedFolderNestDetails.new_parent_ns_id: New parent namespace ID. :ivar team_log.SharedFolderNestDetails.previous_ns_path: Previous namespace path. :ivar team_log.SharedFolderNestDetails.new_ns_path: New namespace path. """ __slots__ = [ '_previous_parent_ns_id_value', '_new_parent_ns_id_value', '_previous_ns_path_value', '_new_ns_path_value', ] _has_required_fields = False def __init__(self, previous_parent_ns_id=None, new_parent_ns_id=None, previous_ns_path=None, new_ns_path=None): self._previous_parent_ns_id_value = bb.NOT_SET self._new_parent_ns_id_value = bb.NOT_SET self._previous_ns_path_value = bb.NOT_SET self._new_ns_path_value = bb.NOT_SET if previous_parent_ns_id is not None: self.previous_parent_ns_id = previous_parent_ns_id if new_parent_ns_id is not None: self.new_parent_ns_id = new_parent_ns_id if previous_ns_path is not None: self.previous_ns_path = previous_ns_path if new_ns_path is not None: self.new_ns_path = new_ns_path # Instance attribute type: str (validator is set below) previous_parent_ns_id = bb.Attribute("previous_parent_ns_id", nullable=True) # Instance attribute type: str (validator is set below) new_parent_ns_id = bb.Attribute("new_parent_ns_id", nullable=True) # Instance attribute type: str (validator is set below) previous_ns_path = bb.Attribute("previous_ns_path", nullable=True) # Instance attribute type: str (validator is set below) new_ns_path = bb.Attribute("new_ns_path", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderNestDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderNestDetails_validator = bv.Struct(SharedFolderNestDetails) class SharedFolderNestType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderNestType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderNestType_validator = bv.Struct(SharedFolderNestType) class SharedFolderTransferOwnershipDetails(bb.Struct): """ Transferred ownership of shared folder to another member. :ivar team_log.SharedFolderTransferOwnershipDetails.previous_owner_email: The email address of the previous shared folder owner. :ivar team_log.SharedFolderTransferOwnershipDetails.new_owner_email: The email address of the new shared folder owner. """ __slots__ = [ '_previous_owner_email_value', '_new_owner_email_value', ] _has_required_fields = True def __init__(self, new_owner_email=None, previous_owner_email=None): self._previous_owner_email_value = bb.NOT_SET self._new_owner_email_value = bb.NOT_SET if previous_owner_email is not None: self.previous_owner_email = previous_owner_email if new_owner_email is not None: self.new_owner_email = new_owner_email # Instance attribute type: str (validator is set below) previous_owner_email = bb.Attribute("previous_owner_email", nullable=True) # Instance attribute type: str (validator is set below) new_owner_email = bb.Attribute("new_owner_email") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderTransferOwnershipDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderTransferOwnershipDetails_validator = bv.Struct(SharedFolderTransferOwnershipDetails) class SharedFolderTransferOwnershipType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderTransferOwnershipType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderTransferOwnershipType_validator = bv.Struct(SharedFolderTransferOwnershipType) class SharedFolderUnmountDetails(bb.Struct): """ Deleted shared folder from Dropbox. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderUnmountDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderUnmountDetails_validator = bv.Struct(SharedFolderUnmountDetails) class SharedFolderUnmountType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderUnmountType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderUnmountType_validator = bv.Struct(SharedFolderUnmountType) class SharedLinkAccessLevel(bb.Union): """ Shared link access level. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition none = None # Attribute is overwritten below the class definition reader = None # Attribute is overwritten below the class definition writer = None # Attribute is overwritten below the class definition other = None def is_none(self): """ Check if the union tag is ``none``. :rtype: bool """ return self._tag == 'none' def is_reader(self): """ Check if the union tag is ``reader``. :rtype: bool """ return self._tag == 'reader' def is_writer(self): """ Check if the union tag is ``writer``. :rtype: bool """ return self._tag == 'writer' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkAccessLevel, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkAccessLevel_validator = bv.Union(SharedLinkAccessLevel) class SharedLinkAddExpiryDetails(bb.Struct): """ Added shared link expiration date. :ivar team_log.SharedLinkAddExpiryDetails.new_value: New shared link expiration date. """ __slots__ = [ '_new_value_value', ] _has_required_fields = True def __init__(self, new_value=None): self._new_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value # Instance attribute type: datetime.datetime (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkAddExpiryDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkAddExpiryDetails_validator = bv.Struct(SharedLinkAddExpiryDetails) class SharedLinkAddExpiryType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkAddExpiryType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkAddExpiryType_validator = bv.Struct(SharedLinkAddExpiryType) class SharedLinkChangeExpiryDetails(bb.Struct): """ Changed shared link expiration date. :ivar team_log.SharedLinkChangeExpiryDetails.new_value: New shared link expiration date. Might be missing due to historical data gap. :ivar team_log.SharedLinkChangeExpiryDetails.previous_value: Previous shared link expiration date. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = False def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: datetime.datetime (validator is set below) new_value = bb.Attribute("new_value", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkChangeExpiryDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkChangeExpiryDetails_validator = bv.Struct(SharedLinkChangeExpiryDetails) class SharedLinkChangeExpiryType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkChangeExpiryType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkChangeExpiryType_validator = bv.Struct(SharedLinkChangeExpiryType) class SharedLinkChangeVisibilityDetails(bb.Struct): """ Changed visibility of shared link. :ivar team_log.SharedLinkChangeVisibilityDetails.new_value: New shared link visibility. :ivar team_log.SharedLinkChangeVisibilityDetails.previous_value: Previous shared link visibility. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: SharedLinkVisibility (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: SharedLinkVisibility (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkChangeVisibilityDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkChangeVisibilityDetails_validator = bv.Struct(SharedLinkChangeVisibilityDetails) class SharedLinkChangeVisibilityType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkChangeVisibilityType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkChangeVisibilityType_validator = bv.Struct(SharedLinkChangeVisibilityType) class SharedLinkCopyDetails(bb.Struct): """ Added file/folder to Dropbox from shared link. :ivar team_log.SharedLinkCopyDetails.shared_link_owner: Shared link owner details. Might be missing due to historical data gap. """ __slots__ = [ '_shared_link_owner_value', ] _has_required_fields = False def __init__(self, shared_link_owner=None): self._shared_link_owner_value = bb.NOT_SET if shared_link_owner is not None: self.shared_link_owner = shared_link_owner # Instance attribute type: UserLogInfo (validator is set below) shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkCopyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkCopyDetails_validator = bv.Struct(SharedLinkCopyDetails) class SharedLinkCopyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkCopyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkCopyType_validator = bv.Struct(SharedLinkCopyType) class SharedLinkCreateDetails(bb.Struct): """ Created shared link. :ivar team_log.SharedLinkCreateDetails.shared_link_access_level: Defines who can access the shared link. Might be missing due to historical data gap. """ __slots__ = [ '_shared_link_access_level_value', ] _has_required_fields = False def __init__(self, shared_link_access_level=None): self._shared_link_access_level_value = bb.NOT_SET if shared_link_access_level is not None: self.shared_link_access_level = shared_link_access_level # Instance attribute type: SharedLinkAccessLevel (validator is set below) shared_link_access_level = bb.Attribute("shared_link_access_level", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkCreateDetails_validator = bv.Struct(SharedLinkCreateDetails) class SharedLinkCreateType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkCreateType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkCreateType_validator = bv.Struct(SharedLinkCreateType) class SharedLinkDisableDetails(bb.Struct): """ Removed shared link. :ivar team_log.SharedLinkDisableDetails.shared_link_owner: Shared link owner details. Might be missing due to historical data gap. """ __slots__ = [ '_shared_link_owner_value', ] _has_required_fields = False def __init__(self, shared_link_owner=None): self._shared_link_owner_value = bb.NOT_SET if shared_link_owner is not None: self.shared_link_owner = shared_link_owner # Instance attribute type: UserLogInfo (validator is set below) shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkDisableDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkDisableDetails_validator = bv.Struct(SharedLinkDisableDetails) class SharedLinkDisableType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkDisableType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkDisableType_validator = bv.Struct(SharedLinkDisableType) class SharedLinkDownloadDetails(bb.Struct): """ Downloaded file/folder from shared link. :ivar team_log.SharedLinkDownloadDetails.shared_link_owner: Shared link owner details. Might be missing due to historical data gap. """ __slots__ = [ '_shared_link_owner_value', ] _has_required_fields = False def __init__(self, shared_link_owner=None): self._shared_link_owner_value = bb.NOT_SET if shared_link_owner is not None: self.shared_link_owner = shared_link_owner # Instance attribute type: UserLogInfo (validator is set below) shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkDownloadDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkDownloadDetails_validator = bv.Struct(SharedLinkDownloadDetails) class SharedLinkDownloadType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkDownloadType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkDownloadType_validator = bv.Struct(SharedLinkDownloadType) class SharedLinkRemoveExpiryDetails(bb.Struct): """ Removed shared link expiration date. :ivar team_log.SharedLinkRemoveExpiryDetails.previous_value: Previous shared link expiration date. Might be missing due to historical data gap. """ __slots__ = [ '_previous_value_value', ] _has_required_fields = False def __init__(self, previous_value=None): self._previous_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value # Instance attribute type: datetime.datetime (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkRemoveExpiryDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkRemoveExpiryDetails_validator = bv.Struct(SharedLinkRemoveExpiryDetails) class SharedLinkRemoveExpiryType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkRemoveExpiryType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkRemoveExpiryType_validator = bv.Struct(SharedLinkRemoveExpiryType) class SharedLinkSettingsAddExpirationDetails(bb.Struct): """ Added an expiration date to the shared link. :ivar team_log.SharedLinkSettingsAddExpirationDetails.shared_content_access_level: Shared content access level. :ivar team_log.SharedLinkSettingsAddExpirationDetails.shared_content_link: Shared content link. :ivar team_log.SharedLinkSettingsAddExpirationDetails.new_value: New shared content link expiration date. Might be missing due to historical data gap. """ __slots__ = [ '_shared_content_access_level_value', '_shared_content_link_value', '_new_value_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None, shared_content_link=None, new_value=None): self._shared_content_access_level_value = bb.NOT_SET self._shared_content_link_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level if shared_content_link is not None: self.shared_content_link = shared_content_link if new_value is not None: self.new_value = new_value # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) new_value = bb.Attribute("new_value", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsAddExpirationDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsAddExpirationDetails_validator = bv.Struct(SharedLinkSettingsAddExpirationDetails) class SharedLinkSettingsAddExpirationType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsAddExpirationType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsAddExpirationType_validator = bv.Struct(SharedLinkSettingsAddExpirationType) class SharedLinkSettingsAddPasswordDetails(bb.Struct): """ Added a password to the shared link. :ivar team_log.SharedLinkSettingsAddPasswordDetails.shared_content_access_level: Shared content access level. :ivar team_log.SharedLinkSettingsAddPasswordDetails.shared_content_link: Shared content link. """ __slots__ = [ '_shared_content_access_level_value', '_shared_content_link_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None, shared_content_link=None): self._shared_content_access_level_value = bb.NOT_SET self._shared_content_link_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level if shared_content_link is not None: self.shared_content_link = shared_content_link # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsAddPasswordDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsAddPasswordDetails_validator = bv.Struct(SharedLinkSettingsAddPasswordDetails) class SharedLinkSettingsAddPasswordType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsAddPasswordType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsAddPasswordType_validator = bv.Struct(SharedLinkSettingsAddPasswordType) class SharedLinkSettingsAllowDownloadDisabledDetails(bb.Struct): """ Disabled downloads. :ivar team_log.SharedLinkSettingsAllowDownloadDisabledDetails.shared_content_access_level: Shared content access level. :ivar team_log.SharedLinkSettingsAllowDownloadDisabledDetails.shared_content_link: Shared content link. """ __slots__ = [ '_shared_content_access_level_value', '_shared_content_link_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None, shared_content_link=None): self._shared_content_access_level_value = bb.NOT_SET self._shared_content_link_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level if shared_content_link is not None: self.shared_content_link = shared_content_link # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsAllowDownloadDisabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsAllowDownloadDisabledDetails_validator = bv.Struct(SharedLinkSettingsAllowDownloadDisabledDetails) class SharedLinkSettingsAllowDownloadDisabledType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsAllowDownloadDisabledType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsAllowDownloadDisabledType_validator = bv.Struct(SharedLinkSettingsAllowDownloadDisabledType) class SharedLinkSettingsAllowDownloadEnabledDetails(bb.Struct): """ Enabled downloads. :ivar team_log.SharedLinkSettingsAllowDownloadEnabledDetails.shared_content_access_level: Shared content access level. :ivar team_log.SharedLinkSettingsAllowDownloadEnabledDetails.shared_content_link: Shared content link. """ __slots__ = [ '_shared_content_access_level_value', '_shared_content_link_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None, shared_content_link=None): self._shared_content_access_level_value = bb.NOT_SET self._shared_content_link_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level if shared_content_link is not None: self.shared_content_link = shared_content_link # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsAllowDownloadEnabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsAllowDownloadEnabledDetails_validator = bv.Struct(SharedLinkSettingsAllowDownloadEnabledDetails) class SharedLinkSettingsAllowDownloadEnabledType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsAllowDownloadEnabledType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsAllowDownloadEnabledType_validator = bv.Struct(SharedLinkSettingsAllowDownloadEnabledType) class SharedLinkSettingsChangeAudienceDetails(bb.Struct): """ Changed the audience of the shared link. :ivar team_log.SharedLinkSettingsChangeAudienceDetails.shared_content_access_level: Shared content access level. :ivar team_log.SharedLinkSettingsChangeAudienceDetails.shared_content_link: Shared content link. :ivar team_log.SharedLinkSettingsChangeAudienceDetails.new_value: New link audience value. :ivar team_log.SharedLinkSettingsChangeAudienceDetails.previous_value: Previous link audience value. """ __slots__ = [ '_shared_content_access_level_value', '_shared_content_link_value', '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None, new_value=None, shared_content_link=None, previous_value=None): self._shared_content_access_level_value = bb.NOT_SET self._shared_content_link_value = bb.NOT_SET self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level if shared_content_link is not None: self.shared_content_link = shared_content_link if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link", nullable=True) # Instance attribute type: sharing.LinkAudience (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: sharing.LinkAudience (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsChangeAudienceDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsChangeAudienceDetails_validator = bv.Struct(SharedLinkSettingsChangeAudienceDetails) class SharedLinkSettingsChangeAudienceType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsChangeAudienceType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsChangeAudienceType_validator = bv.Struct(SharedLinkSettingsChangeAudienceType) class SharedLinkSettingsChangeExpirationDetails(bb.Struct): """ Changed the expiration date of the shared link. :ivar team_log.SharedLinkSettingsChangeExpirationDetails.shared_content_access_level: Shared content access level. :ivar team_log.SharedLinkSettingsChangeExpirationDetails.shared_content_link: Shared content link. :ivar team_log.SharedLinkSettingsChangeExpirationDetails.new_value: New shared content link expiration date. Might be missing due to historical data gap. :ivar team_log.SharedLinkSettingsChangeExpirationDetails.previous_value: Previous shared content link expiration date. Might be missing due to historical data gap. """ __slots__ = [ '_shared_content_access_level_value', '_shared_content_link_value', '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None, shared_content_link=None, new_value=None, previous_value=None): self._shared_content_access_level_value = bb.NOT_SET self._shared_content_link_value = bb.NOT_SET self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level if shared_content_link is not None: self.shared_content_link = shared_content_link if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) new_value = bb.Attribute("new_value", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsChangeExpirationDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsChangeExpirationDetails_validator = bv.Struct(SharedLinkSettingsChangeExpirationDetails) class SharedLinkSettingsChangeExpirationType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsChangeExpirationType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsChangeExpirationType_validator = bv.Struct(SharedLinkSettingsChangeExpirationType) class SharedLinkSettingsChangePasswordDetails(bb.Struct): """ Changed the password of the shared link. :ivar team_log.SharedLinkSettingsChangePasswordDetails.shared_content_access_level: Shared content access level. :ivar team_log.SharedLinkSettingsChangePasswordDetails.shared_content_link: Shared content link. """ __slots__ = [ '_shared_content_access_level_value', '_shared_content_link_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None, shared_content_link=None): self._shared_content_access_level_value = bb.NOT_SET self._shared_content_link_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level if shared_content_link is not None: self.shared_content_link = shared_content_link # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsChangePasswordDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsChangePasswordDetails_validator = bv.Struct(SharedLinkSettingsChangePasswordDetails) class SharedLinkSettingsChangePasswordType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsChangePasswordType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsChangePasswordType_validator = bv.Struct(SharedLinkSettingsChangePasswordType) class SharedLinkSettingsRemoveExpirationDetails(bb.Struct): """ Removed the expiration date from the shared link. :ivar team_log.SharedLinkSettingsRemoveExpirationDetails.shared_content_access_level: Shared content access level. :ivar team_log.SharedLinkSettingsRemoveExpirationDetails.shared_content_link: Shared content link. :ivar team_log.SharedLinkSettingsRemoveExpirationDetails.previous_value: Previous shared link expiration date. Might be missing due to historical data gap. """ __slots__ = [ '_shared_content_access_level_value', '_shared_content_link_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None, shared_content_link=None, previous_value=None): self._shared_content_access_level_value = bb.NOT_SET self._shared_content_link_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level if shared_content_link is not None: self.shared_content_link = shared_content_link if previous_value is not None: self.previous_value = previous_value # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link", nullable=True) # Instance attribute type: datetime.datetime (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsRemoveExpirationDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsRemoveExpirationDetails_validator = bv.Struct(SharedLinkSettingsRemoveExpirationDetails) class SharedLinkSettingsRemoveExpirationType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsRemoveExpirationType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsRemoveExpirationType_validator = bv.Struct(SharedLinkSettingsRemoveExpirationType) class SharedLinkSettingsRemovePasswordDetails(bb.Struct): """ Removed the password from the shared link. :ivar team_log.SharedLinkSettingsRemovePasswordDetails.shared_content_access_level: Shared content access level. :ivar team_log.SharedLinkSettingsRemovePasswordDetails.shared_content_link: Shared content link. """ __slots__ = [ '_shared_content_access_level_value', '_shared_content_link_value', ] _has_required_fields = True def __init__(self, shared_content_access_level=None, shared_content_link=None): self._shared_content_access_level_value = bb.NOT_SET self._shared_content_link_value = bb.NOT_SET if shared_content_access_level is not None: self.shared_content_access_level = shared_content_access_level if shared_content_link is not None: self.shared_content_link = shared_content_link # Instance attribute type: sharing.AccessLevel (validator is set below) shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True) # Instance attribute type: str (validator is set below) shared_content_link = bb.Attribute("shared_content_link", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsRemovePasswordDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsRemovePasswordDetails_validator = bv.Struct(SharedLinkSettingsRemovePasswordDetails) class SharedLinkSettingsRemovePasswordType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkSettingsRemovePasswordType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkSettingsRemovePasswordType_validator = bv.Struct(SharedLinkSettingsRemovePasswordType) class SharedLinkShareDetails(bb.Struct): """ Added members as audience of shared link. :ivar team_log.SharedLinkShareDetails.shared_link_owner: Shared link owner details. Might be missing due to historical data gap. :ivar team_log.SharedLinkShareDetails.external_users: Users without a Dropbox account that were added as shared link audience. """ __slots__ = [ '_shared_link_owner_value', '_external_users_value', ] _has_required_fields = False def __init__(self, shared_link_owner=None, external_users=None): self._shared_link_owner_value = bb.NOT_SET self._external_users_value = bb.NOT_SET if shared_link_owner is not None: self.shared_link_owner = shared_link_owner if external_users is not None: self.external_users = external_users # Instance attribute type: UserLogInfo (validator is set below) shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True) # Instance attribute type: list of [ExternalUserLogInfo] (validator is set below) external_users = bb.Attribute("external_users", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkShareDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkShareDetails_validator = bv.Struct(SharedLinkShareDetails) class SharedLinkShareType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkShareType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkShareType_validator = bv.Struct(SharedLinkShareType) class SharedLinkViewDetails(bb.Struct): """ Opened shared link. :ivar team_log.SharedLinkViewDetails.shared_link_owner: Shared link owner details. Might be missing due to historical data gap. """ __slots__ = [ '_shared_link_owner_value', ] _has_required_fields = False def __init__(self, shared_link_owner=None): self._shared_link_owner_value = bb.NOT_SET if shared_link_owner is not None: self.shared_link_owner = shared_link_owner # Instance attribute type: UserLogInfo (validator is set below) shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkViewDetails_validator = bv.Struct(SharedLinkViewDetails) class SharedLinkViewType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkViewType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkViewType_validator = bv.Struct(SharedLinkViewType) class SharedLinkVisibility(bb.Union): """ Defines who has access to a shared link. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition no_one = None # Attribute is overwritten below the class definition password = None # Attribute is overwritten below the class definition public = None # Attribute is overwritten below the class definition team_only = None # Attribute is overwritten below the class definition other = None def is_no_one(self): """ Check if the union tag is ``no_one``. :rtype: bool """ return self._tag == 'no_one' def is_password(self): """ Check if the union tag is ``password``. :rtype: bool """ return self._tag == 'password' def is_public(self): """ Check if the union tag is ``public``. :rtype: bool """ return self._tag == 'public' def is_team_only(self): """ Check if the union tag is ``team_only``. :rtype: bool """ return self._tag == 'team_only' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkVisibility, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkVisibility_validator = bv.Union(SharedLinkVisibility) class SharedNoteOpenedDetails(bb.Struct): """ Opened shared Paper doc. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedNoteOpenedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharedNoteOpenedDetails_validator = bv.Struct(SharedNoteOpenedDetails) class SharedNoteOpenedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedNoteOpenedType, self)._process_custom_annotations(annotation_type, field_path, processor) SharedNoteOpenedType_validator = bv.Struct(SharedNoteOpenedType) class SharingChangeFolderJoinPolicyDetails(bb.Struct): """ Changed whether team members can join shared folders owned outside team. :ivar team_log.SharingChangeFolderJoinPolicyDetails.new_value: New external join policy. :ivar team_log.SharingChangeFolderJoinPolicyDetails.previous_value: Previous external join policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: SharingFolderJoinPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: SharingFolderJoinPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingChangeFolderJoinPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharingChangeFolderJoinPolicyDetails_validator = bv.Struct(SharingChangeFolderJoinPolicyDetails) class SharingChangeFolderJoinPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingChangeFolderJoinPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharingChangeFolderJoinPolicyType_validator = bv.Struct(SharingChangeFolderJoinPolicyType) class SharingChangeLinkAllowChangeExpirationPolicyDetails(bb.Struct): """ Changed the allow remove or change expiration policy for the links shared outside of the team. :ivar team_log.SharingChangeLinkAllowChangeExpirationPolicyDetails.new_value: To. :ivar team_log.SharingChangeLinkAllowChangeExpirationPolicyDetails.previous_value: From. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: EnforceLinkPasswordPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: EnforceLinkPasswordPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingChangeLinkAllowChangeExpirationPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharingChangeLinkAllowChangeExpirationPolicyDetails_validator = bv.Struct(SharingChangeLinkAllowChangeExpirationPolicyDetails) class SharingChangeLinkAllowChangeExpirationPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingChangeLinkAllowChangeExpirationPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharingChangeLinkAllowChangeExpirationPolicyType_validator = bv.Struct(SharingChangeLinkAllowChangeExpirationPolicyType) class SharingChangeLinkDefaultExpirationPolicyDetails(bb.Struct): """ Changed the default expiration for the links shared outside of the team. :ivar team_log.SharingChangeLinkDefaultExpirationPolicyDetails.new_value: To. :ivar team_log.SharingChangeLinkDefaultExpirationPolicyDetails.previous_value: From. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: DefaultLinkExpirationDaysPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: DefaultLinkExpirationDaysPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingChangeLinkDefaultExpirationPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharingChangeLinkDefaultExpirationPolicyDetails_validator = bv.Struct(SharingChangeLinkDefaultExpirationPolicyDetails) class SharingChangeLinkDefaultExpirationPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingChangeLinkDefaultExpirationPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharingChangeLinkDefaultExpirationPolicyType_validator = bv.Struct(SharingChangeLinkDefaultExpirationPolicyType) class SharingChangeLinkEnforcePasswordPolicyDetails(bb.Struct): """ Changed the password requirement for the links shared outside of the team. :ivar team_log.SharingChangeLinkEnforcePasswordPolicyDetails.new_value: To. :ivar team_log.SharingChangeLinkEnforcePasswordPolicyDetails.previous_value: From. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: ChangeLinkExpirationPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: ChangeLinkExpirationPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingChangeLinkEnforcePasswordPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharingChangeLinkEnforcePasswordPolicyDetails_validator = bv.Struct(SharingChangeLinkEnforcePasswordPolicyDetails) class SharingChangeLinkEnforcePasswordPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingChangeLinkEnforcePasswordPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharingChangeLinkEnforcePasswordPolicyType_validator = bv.Struct(SharingChangeLinkEnforcePasswordPolicyType) class SharingChangeLinkPolicyDetails(bb.Struct): """ Changed whether members can share links outside team, and if links are accessible only by team members or anyone by default. :ivar team_log.SharingChangeLinkPolicyDetails.new_value: New external link accessibility policy. :ivar team_log.SharingChangeLinkPolicyDetails.previous_value: Previous external link accessibility policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: SharingLinkPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: SharingLinkPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingChangeLinkPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharingChangeLinkPolicyDetails_validator = bv.Struct(SharingChangeLinkPolicyDetails) class SharingChangeLinkPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingChangeLinkPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharingChangeLinkPolicyType_validator = bv.Struct(SharingChangeLinkPolicyType) class SharingChangeMemberPolicyDetails(bb.Struct): """ Changed whether members can share files/folders outside team. :ivar team_log.SharingChangeMemberPolicyDetails.new_value: New external invite policy. :ivar team_log.SharingChangeMemberPolicyDetails.previous_value: Previous external invite policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: SharingMemberPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: SharingMemberPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingChangeMemberPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SharingChangeMemberPolicyDetails_validator = bv.Struct(SharingChangeMemberPolicyDetails) class SharingChangeMemberPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingChangeMemberPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SharingChangeMemberPolicyType_validator = bv.Struct(SharingChangeMemberPolicyType) class SharingFolderJoinPolicy(bb.Union): """ Policy for controlling if team members can join shared folders owned by non team members. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition from_anyone = None # Attribute is overwritten below the class definition from_team_only = None # Attribute is overwritten below the class definition other = None def is_from_anyone(self): """ Check if the union tag is ``from_anyone``. :rtype: bool """ return self._tag == 'from_anyone' def is_from_team_only(self): """ Check if the union tag is ``from_team_only``. :rtype: bool """ return self._tag == 'from_team_only' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingFolderJoinPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SharingFolderJoinPolicy_validator = bv.Union(SharingFolderJoinPolicy) class SharingLinkPolicy(bb.Union): """ Policy for controlling if team members can share links externally This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition default_no_one = None # Attribute is overwritten below the class definition default_private = None # Attribute is overwritten below the class definition default_public = None # Attribute is overwritten below the class definition only_private = None # Attribute is overwritten below the class definition other = None def is_default_no_one(self): """ Check if the union tag is ``default_no_one``. :rtype: bool """ return self._tag == 'default_no_one' def is_default_private(self): """ Check if the union tag is ``default_private``. :rtype: bool """ return self._tag == 'default_private' def is_default_public(self): """ Check if the union tag is ``default_public``. :rtype: bool """ return self._tag == 'default_public' def is_only_private(self): """ Check if the union tag is ``only_private``. :rtype: bool """ return self._tag == 'only_private' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingLinkPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SharingLinkPolicy_validator = bv.Union(SharingLinkPolicy) class SharingMemberPolicy(bb.Union): """ External sharing policy This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition allow = None # Attribute is overwritten below the class definition forbid = None # Attribute is overwritten below the class definition forbid_with_exclusions = None # Attribute is overwritten below the class definition other = None def is_allow(self): """ Check if the union tag is ``allow``. :rtype: bool """ return self._tag == 'allow' def is_forbid(self): """ Check if the union tag is ``forbid``. :rtype: bool """ return self._tag == 'forbid' def is_forbid_with_exclusions(self): """ Check if the union tag is ``forbid_with_exclusions``. :rtype: bool """ return self._tag == 'forbid_with_exclusions' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharingMemberPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SharingMemberPolicy_validator = bv.Union(SharingMemberPolicy) class ShmodelDisableDownloadsDetails(bb.Struct): """ Disabled downloads for link. :ivar team_log.ShmodelDisableDownloadsDetails.shared_link_owner: Shared link owner details. Might be missing due to historical data gap. """ __slots__ = [ '_shared_link_owner_value', ] _has_required_fields = False def __init__(self, shared_link_owner=None): self._shared_link_owner_value = bb.NOT_SET if shared_link_owner is not None: self.shared_link_owner = shared_link_owner # Instance attribute type: UserLogInfo (validator is set below) shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShmodelDisableDownloadsDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShmodelDisableDownloadsDetails_validator = bv.Struct(ShmodelDisableDownloadsDetails) class ShmodelDisableDownloadsType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShmodelDisableDownloadsType, self)._process_custom_annotations(annotation_type, field_path, processor) ShmodelDisableDownloadsType_validator = bv.Struct(ShmodelDisableDownloadsType) class ShmodelEnableDownloadsDetails(bb.Struct): """ Enabled downloads for link. :ivar team_log.ShmodelEnableDownloadsDetails.shared_link_owner: Shared link owner details. Might be missing due to historical data gap. """ __slots__ = [ '_shared_link_owner_value', ] _has_required_fields = False def __init__(self, shared_link_owner=None): self._shared_link_owner_value = bb.NOT_SET if shared_link_owner is not None: self.shared_link_owner = shared_link_owner # Instance attribute type: UserLogInfo (validator is set below) shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShmodelEnableDownloadsDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShmodelEnableDownloadsDetails_validator = bv.Struct(ShmodelEnableDownloadsDetails) class ShmodelEnableDownloadsType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShmodelEnableDownloadsType, self)._process_custom_annotations(annotation_type, field_path, processor) ShmodelEnableDownloadsType_validator = bv.Struct(ShmodelEnableDownloadsType) class ShmodelGroupShareDetails(bb.Struct): """ Shared link with group. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShmodelGroupShareDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShmodelGroupShareDetails_validator = bv.Struct(ShmodelGroupShareDetails) class ShmodelGroupShareType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShmodelGroupShareType, self)._process_custom_annotations(annotation_type, field_path, processor) ShmodelGroupShareType_validator = bv.Struct(ShmodelGroupShareType) class ShowcaseAccessGrantedDetails(bb.Struct): """ Granted access to showcase. :ivar team_log.ShowcaseAccessGrantedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseAccessGrantedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseAccessGrantedDetails_validator = bv.Struct(ShowcaseAccessGrantedDetails) class ShowcaseAccessGrantedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseAccessGrantedType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseAccessGrantedType_validator = bv.Struct(ShowcaseAccessGrantedType) class ShowcaseAddMemberDetails(bb.Struct): """ Added member to showcase. :ivar team_log.ShowcaseAddMemberDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseAddMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseAddMemberDetails_validator = bv.Struct(ShowcaseAddMemberDetails) class ShowcaseAddMemberType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseAddMemberType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseAddMemberType_validator = bv.Struct(ShowcaseAddMemberType) class ShowcaseArchivedDetails(bb.Struct): """ Archived showcase. :ivar team_log.ShowcaseArchivedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseArchivedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseArchivedDetails_validator = bv.Struct(ShowcaseArchivedDetails) class ShowcaseArchivedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseArchivedType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseArchivedType_validator = bv.Struct(ShowcaseArchivedType) class ShowcaseChangeDownloadPolicyDetails(bb.Struct): """ Enabled/disabled downloading files from Dropbox Showcase for team. :ivar team_log.ShowcaseChangeDownloadPolicyDetails.new_value: New Dropbox Showcase download policy. :ivar team_log.ShowcaseChangeDownloadPolicyDetails.previous_value: Previous Dropbox Showcase download policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: ShowcaseDownloadPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: ShowcaseDownloadPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseChangeDownloadPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseChangeDownloadPolicyDetails_validator = bv.Struct(ShowcaseChangeDownloadPolicyDetails) class ShowcaseChangeDownloadPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseChangeDownloadPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseChangeDownloadPolicyType_validator = bv.Struct(ShowcaseChangeDownloadPolicyType) class ShowcaseChangeEnabledPolicyDetails(bb.Struct): """ Enabled/disabled Dropbox Showcase for team. :ivar team_log.ShowcaseChangeEnabledPolicyDetails.new_value: New Dropbox Showcase policy. :ivar team_log.ShowcaseChangeEnabledPolicyDetails.previous_value: Previous Dropbox Showcase policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: ShowcaseEnabledPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: ShowcaseEnabledPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseChangeEnabledPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseChangeEnabledPolicyDetails_validator = bv.Struct(ShowcaseChangeEnabledPolicyDetails) class ShowcaseChangeEnabledPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseChangeEnabledPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseChangeEnabledPolicyType_validator = bv.Struct(ShowcaseChangeEnabledPolicyType) class ShowcaseChangeExternalSharingPolicyDetails(bb.Struct): """ Enabled/disabled sharing Dropbox Showcase externally for team. :ivar team_log.ShowcaseChangeExternalSharingPolicyDetails.new_value: New Dropbox Showcase external sharing policy. :ivar team_log.ShowcaseChangeExternalSharingPolicyDetails.previous_value: Previous Dropbox Showcase external sharing policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: ShowcaseExternalSharingPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: ShowcaseExternalSharingPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseChangeExternalSharingPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseChangeExternalSharingPolicyDetails_validator = bv.Struct(ShowcaseChangeExternalSharingPolicyDetails) class ShowcaseChangeExternalSharingPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseChangeExternalSharingPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseChangeExternalSharingPolicyType_validator = bv.Struct(ShowcaseChangeExternalSharingPolicyType) class ShowcaseCreatedDetails(bb.Struct): """ Created showcase. :ivar team_log.ShowcaseCreatedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseCreatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseCreatedDetails_validator = bv.Struct(ShowcaseCreatedDetails) class ShowcaseCreatedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseCreatedType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseCreatedType_validator = bv.Struct(ShowcaseCreatedType) class ShowcaseDeleteCommentDetails(bb.Struct): """ Deleted showcase comment. :ivar team_log.ShowcaseDeleteCommentDetails.event_uuid: Event unique identifier. :ivar team_log.ShowcaseDeleteCommentDetails.comment_text: Comment text. """ __slots__ = [ '_event_uuid_value', '_comment_text_value', ] _has_required_fields = True def __init__(self, event_uuid=None, comment_text=None): self._event_uuid_value = bb.NOT_SET self._comment_text_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseDeleteCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseDeleteCommentDetails_validator = bv.Struct(ShowcaseDeleteCommentDetails) class ShowcaseDeleteCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseDeleteCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseDeleteCommentType_validator = bv.Struct(ShowcaseDeleteCommentType) class ShowcaseDocumentLogInfo(bb.Struct): """ Showcase document's logged information. :ivar team_log.ShowcaseDocumentLogInfo.showcase_id: Showcase document Id. :ivar team_log.ShowcaseDocumentLogInfo.showcase_title: Showcase document title. """ __slots__ = [ '_showcase_id_value', '_showcase_title_value', ] _has_required_fields = True def __init__(self, showcase_id=None, showcase_title=None): self._showcase_id_value = bb.NOT_SET self._showcase_title_value = bb.NOT_SET if showcase_id is not None: self.showcase_id = showcase_id if showcase_title is not None: self.showcase_title = showcase_title # Instance attribute type: str (validator is set below) showcase_id = bb.Attribute("showcase_id") # Instance attribute type: str (validator is set below) showcase_title = bb.Attribute("showcase_title") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseDocumentLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseDocumentLogInfo_validator = bv.Struct(ShowcaseDocumentLogInfo) class ShowcaseDownloadPolicy(bb.Union): """ Policy for controlling if files can be downloaded from Showcases by team members This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseDownloadPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseDownloadPolicy_validator = bv.Union(ShowcaseDownloadPolicy) class ShowcaseEditCommentDetails(bb.Struct): """ Edited showcase comment. :ivar team_log.ShowcaseEditCommentDetails.event_uuid: Event unique identifier. :ivar team_log.ShowcaseEditCommentDetails.comment_text: Comment text. """ __slots__ = [ '_event_uuid_value', '_comment_text_value', ] _has_required_fields = True def __init__(self, event_uuid=None, comment_text=None): self._event_uuid_value = bb.NOT_SET self._comment_text_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseEditCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseEditCommentDetails_validator = bv.Struct(ShowcaseEditCommentDetails) class ShowcaseEditCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseEditCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseEditCommentType_validator = bv.Struct(ShowcaseEditCommentType) class ShowcaseEditedDetails(bb.Struct): """ Edited showcase. :ivar team_log.ShowcaseEditedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseEditedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseEditedDetails_validator = bv.Struct(ShowcaseEditedDetails) class ShowcaseEditedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseEditedType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseEditedType_validator = bv.Struct(ShowcaseEditedType) class ShowcaseEnabledPolicy(bb.Union): """ Policy for controlling whether Showcase is enabled. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseEnabledPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseEnabledPolicy_validator = bv.Union(ShowcaseEnabledPolicy) class ShowcaseExternalSharingPolicy(bb.Union): """ Policy for controlling if team members can share Showcases externally. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseExternalSharingPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseExternalSharingPolicy_validator = bv.Union(ShowcaseExternalSharingPolicy) class ShowcaseFileAddedDetails(bb.Struct): """ Added file to showcase. :ivar team_log.ShowcaseFileAddedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseFileAddedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseFileAddedDetails_validator = bv.Struct(ShowcaseFileAddedDetails) class ShowcaseFileAddedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseFileAddedType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseFileAddedType_validator = bv.Struct(ShowcaseFileAddedType) class ShowcaseFileDownloadDetails(bb.Struct): """ Downloaded file from showcase. :ivar team_log.ShowcaseFileDownloadDetails.event_uuid: Event unique identifier. :ivar team_log.ShowcaseFileDownloadDetails.download_type: Showcase download type. """ __slots__ = [ '_event_uuid_value', '_download_type_value', ] _has_required_fields = True def __init__(self, event_uuid=None, download_type=None): self._event_uuid_value = bb.NOT_SET self._download_type_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if download_type is not None: self.download_type = download_type # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) download_type = bb.Attribute("download_type") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseFileDownloadDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseFileDownloadDetails_validator = bv.Struct(ShowcaseFileDownloadDetails) class ShowcaseFileDownloadType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseFileDownloadType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseFileDownloadType_validator = bv.Struct(ShowcaseFileDownloadType) class ShowcaseFileRemovedDetails(bb.Struct): """ Removed file from showcase. :ivar team_log.ShowcaseFileRemovedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseFileRemovedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseFileRemovedDetails_validator = bv.Struct(ShowcaseFileRemovedDetails) class ShowcaseFileRemovedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseFileRemovedType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseFileRemovedType_validator = bv.Struct(ShowcaseFileRemovedType) class ShowcaseFileViewDetails(bb.Struct): """ Viewed file in showcase. :ivar team_log.ShowcaseFileViewDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseFileViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseFileViewDetails_validator = bv.Struct(ShowcaseFileViewDetails) class ShowcaseFileViewType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseFileViewType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseFileViewType_validator = bv.Struct(ShowcaseFileViewType) class ShowcasePermanentlyDeletedDetails(bb.Struct): """ Permanently deleted showcase. :ivar team_log.ShowcasePermanentlyDeletedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcasePermanentlyDeletedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcasePermanentlyDeletedDetails_validator = bv.Struct(ShowcasePermanentlyDeletedDetails) class ShowcasePermanentlyDeletedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcasePermanentlyDeletedType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcasePermanentlyDeletedType_validator = bv.Struct(ShowcasePermanentlyDeletedType) class ShowcasePostCommentDetails(bb.Struct): """ Added showcase comment. :ivar team_log.ShowcasePostCommentDetails.event_uuid: Event unique identifier. :ivar team_log.ShowcasePostCommentDetails.comment_text: Comment text. """ __slots__ = [ '_event_uuid_value', '_comment_text_value', ] _has_required_fields = True def __init__(self, event_uuid=None, comment_text=None): self._event_uuid_value = bb.NOT_SET self._comment_text_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcasePostCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcasePostCommentDetails_validator = bv.Struct(ShowcasePostCommentDetails) class ShowcasePostCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcasePostCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcasePostCommentType_validator = bv.Struct(ShowcasePostCommentType) class ShowcaseRemoveMemberDetails(bb.Struct): """ Removed member from showcase. :ivar team_log.ShowcaseRemoveMemberDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseRemoveMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseRemoveMemberDetails_validator = bv.Struct(ShowcaseRemoveMemberDetails) class ShowcaseRemoveMemberType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseRemoveMemberType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseRemoveMemberType_validator = bv.Struct(ShowcaseRemoveMemberType) class ShowcaseRenamedDetails(bb.Struct): """ Renamed showcase. :ivar team_log.ShowcaseRenamedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseRenamedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseRenamedDetails_validator = bv.Struct(ShowcaseRenamedDetails) class ShowcaseRenamedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseRenamedType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseRenamedType_validator = bv.Struct(ShowcaseRenamedType) class ShowcaseRequestAccessDetails(bb.Struct): """ Requested access to showcase. :ivar team_log.ShowcaseRequestAccessDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseRequestAccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseRequestAccessDetails_validator = bv.Struct(ShowcaseRequestAccessDetails) class ShowcaseRequestAccessType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseRequestAccessType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseRequestAccessType_validator = bv.Struct(ShowcaseRequestAccessType) class ShowcaseResolveCommentDetails(bb.Struct): """ Resolved showcase comment. :ivar team_log.ShowcaseResolveCommentDetails.event_uuid: Event unique identifier. :ivar team_log.ShowcaseResolveCommentDetails.comment_text: Comment text. """ __slots__ = [ '_event_uuid_value', '_comment_text_value', ] _has_required_fields = True def __init__(self, event_uuid=None, comment_text=None): self._event_uuid_value = bb.NOT_SET self._comment_text_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseResolveCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseResolveCommentDetails_validator = bv.Struct(ShowcaseResolveCommentDetails) class ShowcaseResolveCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseResolveCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseResolveCommentType_validator = bv.Struct(ShowcaseResolveCommentType) class ShowcaseRestoredDetails(bb.Struct): """ Unarchived showcase. :ivar team_log.ShowcaseRestoredDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseRestoredDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseRestoredDetails_validator = bv.Struct(ShowcaseRestoredDetails) class ShowcaseRestoredType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseRestoredType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseRestoredType_validator = bv.Struct(ShowcaseRestoredType) class ShowcaseTrashedDeprecatedDetails(bb.Struct): """ Deleted showcase (old version). :ivar team_log.ShowcaseTrashedDeprecatedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseTrashedDeprecatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseTrashedDeprecatedDetails_validator = bv.Struct(ShowcaseTrashedDeprecatedDetails) class ShowcaseTrashedDeprecatedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseTrashedDeprecatedType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseTrashedDeprecatedType_validator = bv.Struct(ShowcaseTrashedDeprecatedType) class ShowcaseTrashedDetails(bb.Struct): """ Deleted showcase. :ivar team_log.ShowcaseTrashedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseTrashedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseTrashedDetails_validator = bv.Struct(ShowcaseTrashedDetails) class ShowcaseTrashedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseTrashedType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseTrashedType_validator = bv.Struct(ShowcaseTrashedType) class ShowcaseUnresolveCommentDetails(bb.Struct): """ Unresolved showcase comment. :ivar team_log.ShowcaseUnresolveCommentDetails.event_uuid: Event unique identifier. :ivar team_log.ShowcaseUnresolveCommentDetails.comment_text: Comment text. """ __slots__ = [ '_event_uuid_value', '_comment_text_value', ] _has_required_fields = True def __init__(self, event_uuid=None, comment_text=None): self._event_uuid_value = bb.NOT_SET self._comment_text_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid if comment_text is not None: self.comment_text = comment_text # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") # Instance attribute type: str (validator is set below) comment_text = bb.Attribute("comment_text", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseUnresolveCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseUnresolveCommentDetails_validator = bv.Struct(ShowcaseUnresolveCommentDetails) class ShowcaseUnresolveCommentType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseUnresolveCommentType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseUnresolveCommentType_validator = bv.Struct(ShowcaseUnresolveCommentType) class ShowcaseUntrashedDeprecatedDetails(bb.Struct): """ Restored showcase (old version). :ivar team_log.ShowcaseUntrashedDeprecatedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseUntrashedDeprecatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseUntrashedDeprecatedDetails_validator = bv.Struct(ShowcaseUntrashedDeprecatedDetails) class ShowcaseUntrashedDeprecatedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseUntrashedDeprecatedType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseUntrashedDeprecatedType_validator = bv.Struct(ShowcaseUntrashedDeprecatedType) class ShowcaseUntrashedDetails(bb.Struct): """ Restored showcase. :ivar team_log.ShowcaseUntrashedDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseUntrashedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseUntrashedDetails_validator = bv.Struct(ShowcaseUntrashedDetails) class ShowcaseUntrashedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseUntrashedType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseUntrashedType_validator = bv.Struct(ShowcaseUntrashedType) class ShowcaseViewDetails(bb.Struct): """ Viewed showcase. :ivar team_log.ShowcaseViewDetails.event_uuid: Event unique identifier. """ __slots__ = [ '_event_uuid_value', ] _has_required_fields = True def __init__(self, event_uuid=None): self._event_uuid_value = bb.NOT_SET if event_uuid is not None: self.event_uuid = event_uuid # Instance attribute type: str (validator is set below) event_uuid = bb.Attribute("event_uuid") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseViewDetails_validator = bv.Struct(ShowcaseViewDetails) class ShowcaseViewType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseViewType, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseViewType_validator = bv.Struct(ShowcaseViewType) class SignInAsSessionEndDetails(bb.Struct): """ Ended admin sign-in-as session. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SignInAsSessionEndDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SignInAsSessionEndDetails_validator = bv.Struct(SignInAsSessionEndDetails) class SignInAsSessionEndType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SignInAsSessionEndType, self)._process_custom_annotations(annotation_type, field_path, processor) SignInAsSessionEndType_validator = bv.Struct(SignInAsSessionEndType) class SignInAsSessionStartDetails(bb.Struct): """ Started admin sign-in-as session. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SignInAsSessionStartDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SignInAsSessionStartDetails_validator = bv.Struct(SignInAsSessionStartDetails) class SignInAsSessionStartType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SignInAsSessionStartType, self)._process_custom_annotations(annotation_type, field_path, processor) SignInAsSessionStartType_validator = bv.Struct(SignInAsSessionStartType) class SmartSyncChangePolicyDetails(bb.Struct): """ Changed default Smart Sync setting for team members. :ivar team_log.SmartSyncChangePolicyDetails.new_value: New smart sync policy. :ivar team_log.SmartSyncChangePolicyDetails.previous_value: Previous smart sync policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = False def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: team_policies.SmartSyncPolicy (validator is set below) new_value = bb.Attribute("new_value", nullable=True, user_defined=True) # Instance attribute type: team_policies.SmartSyncPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmartSyncChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SmartSyncChangePolicyDetails_validator = bv.Struct(SmartSyncChangePolicyDetails) class SmartSyncChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmartSyncChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SmartSyncChangePolicyType_validator = bv.Struct(SmartSyncChangePolicyType) class SmartSyncCreateAdminPrivilegeReportDetails(bb.Struct): """ Created Smart Sync non-admin devices report. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmartSyncCreateAdminPrivilegeReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SmartSyncCreateAdminPrivilegeReportDetails_validator = bv.Struct(SmartSyncCreateAdminPrivilegeReportDetails) class SmartSyncCreateAdminPrivilegeReportType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmartSyncCreateAdminPrivilegeReportType, self)._process_custom_annotations(annotation_type, field_path, processor) SmartSyncCreateAdminPrivilegeReportType_validator = bv.Struct(SmartSyncCreateAdminPrivilegeReportType) class SmartSyncNotOptOutDetails(bb.Struct): """ Opted team into Smart Sync. :ivar team_log.SmartSyncNotOptOutDetails.previous_value: Previous Smart Sync opt out policy. :ivar team_log.SmartSyncNotOptOutDetails.new_value: New Smart Sync opt out policy. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: SmartSyncOptOutPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: SmartSyncOptOutPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmartSyncNotOptOutDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SmartSyncNotOptOutDetails_validator = bv.Struct(SmartSyncNotOptOutDetails) class SmartSyncNotOptOutType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmartSyncNotOptOutType, self)._process_custom_annotations(annotation_type, field_path, processor) SmartSyncNotOptOutType_validator = bv.Struct(SmartSyncNotOptOutType) class SmartSyncOptOutDetails(bb.Struct): """ Opted team out of Smart Sync. :ivar team_log.SmartSyncOptOutDetails.previous_value: Previous Smart Sync opt out policy. :ivar team_log.SmartSyncOptOutDetails.new_value: New Smart Sync opt out policy. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: SmartSyncOptOutPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: SmartSyncOptOutPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmartSyncOptOutDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SmartSyncOptOutDetails_validator = bv.Struct(SmartSyncOptOutDetails) class SmartSyncOptOutPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition opted_out = None # Attribute is overwritten below the class definition other = None def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_opted_out(self): """ Check if the union tag is ``opted_out``. :rtype: bool """ return self._tag == 'opted_out' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmartSyncOptOutPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SmartSyncOptOutPolicy_validator = bv.Union(SmartSyncOptOutPolicy) class SmartSyncOptOutType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmartSyncOptOutType, self)._process_custom_annotations(annotation_type, field_path, processor) SmartSyncOptOutType_validator = bv.Struct(SmartSyncOptOutType) class SmarterSmartSyncPolicyChangedDetails(bb.Struct): """ Changed automatic Smart Sync setting for team. :ivar team_log.SmarterSmartSyncPolicyChangedDetails.previous_value: Previous automatic Smart Sync setting. :ivar team_log.SmarterSmartSyncPolicyChangedDetails.new_value: New automatic Smart Sync setting. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: team_policies.SmarterSmartSyncPolicyState (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: team_policies.SmarterSmartSyncPolicyState (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmarterSmartSyncPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SmarterSmartSyncPolicyChangedDetails_validator = bv.Struct(SmarterSmartSyncPolicyChangedDetails) class SmarterSmartSyncPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmarterSmartSyncPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) SmarterSmartSyncPolicyChangedType_validator = bv.Struct(SmarterSmartSyncPolicyChangedType) class SpaceCapsType(bb.Union): """ Space limit alert policy This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition hard = None # Attribute is overwritten below the class definition off = None # Attribute is overwritten below the class definition soft = None # Attribute is overwritten below the class definition other = None def is_hard(self): """ Check if the union tag is ``hard``. :rtype: bool """ return self._tag == 'hard' def is_off(self): """ Check if the union tag is ``off``. :rtype: bool """ return self._tag == 'off' def is_soft(self): """ Check if the union tag is ``soft``. :rtype: bool """ return self._tag == 'soft' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SpaceCapsType, self)._process_custom_annotations(annotation_type, field_path, processor) SpaceCapsType_validator = bv.Union(SpaceCapsType) class SpaceLimitsStatus(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition near_quota = None # Attribute is overwritten below the class definition over_quota = None # Attribute is overwritten below the class definition within_quota = None # Attribute is overwritten below the class definition other = None def is_near_quota(self): """ Check if the union tag is ``near_quota``. :rtype: bool """ return self._tag == 'near_quota' def is_over_quota(self): """ Check if the union tag is ``over_quota``. :rtype: bool """ return self._tag == 'over_quota' def is_within_quota(self): """ Check if the union tag is ``within_quota``. :rtype: bool """ return self._tag == 'within_quota' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SpaceLimitsStatus, self)._process_custom_annotations(annotation_type, field_path, processor) SpaceLimitsStatus_validator = bv.Union(SpaceLimitsStatus) class SsoAddCertDetails(bb.Struct): """ Added X.509 certificate for SSO. :ivar team_log.SsoAddCertDetails.certificate_details: SSO certificate details. """ __slots__ = [ '_certificate_details_value', ] _has_required_fields = True def __init__(self, certificate_details=None): self._certificate_details_value = bb.NOT_SET if certificate_details is not None: self.certificate_details = certificate_details # Instance attribute type: Certificate (validator is set below) certificate_details = bb.Attribute("certificate_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoAddCertDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SsoAddCertDetails_validator = bv.Struct(SsoAddCertDetails) class SsoAddCertType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoAddCertType, self)._process_custom_annotations(annotation_type, field_path, processor) SsoAddCertType_validator = bv.Struct(SsoAddCertType) class SsoAddLoginUrlDetails(bb.Struct): """ Added sign-in URL for SSO. :ivar team_log.SsoAddLoginUrlDetails.new_value: New single sign-on login URL. """ __slots__ = [ '_new_value_value', ] _has_required_fields = True def __init__(self, new_value=None): self._new_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoAddLoginUrlDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SsoAddLoginUrlDetails_validator = bv.Struct(SsoAddLoginUrlDetails) class SsoAddLoginUrlType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoAddLoginUrlType, self)._process_custom_annotations(annotation_type, field_path, processor) SsoAddLoginUrlType_validator = bv.Struct(SsoAddLoginUrlType) class SsoAddLogoutUrlDetails(bb.Struct): """ Added sign-out URL for SSO. :ivar team_log.SsoAddLogoutUrlDetails.new_value: New single sign-on logout URL. """ __slots__ = [ '_new_value_value', ] _has_required_fields = False def __init__(self, new_value=None): self._new_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoAddLogoutUrlDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SsoAddLogoutUrlDetails_validator = bv.Struct(SsoAddLogoutUrlDetails) class SsoAddLogoutUrlType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoAddLogoutUrlType, self)._process_custom_annotations(annotation_type, field_path, processor) SsoAddLogoutUrlType_validator = bv.Struct(SsoAddLogoutUrlType) class SsoChangeCertDetails(bb.Struct): """ Changed X.509 certificate for SSO. :ivar team_log.SsoChangeCertDetails.previous_certificate_details: Previous SSO certificate details. Might be missing due to historical data gap. :ivar team_log.SsoChangeCertDetails.new_certificate_details: New SSO certificate details. """ __slots__ = [ '_previous_certificate_details_value', '_new_certificate_details_value', ] _has_required_fields = True def __init__(self, new_certificate_details=None, previous_certificate_details=None): self._previous_certificate_details_value = bb.NOT_SET self._new_certificate_details_value = bb.NOT_SET if previous_certificate_details is not None: self.previous_certificate_details = previous_certificate_details if new_certificate_details is not None: self.new_certificate_details = new_certificate_details # Instance attribute type: Certificate (validator is set below) previous_certificate_details = bb.Attribute("previous_certificate_details", nullable=True, user_defined=True) # Instance attribute type: Certificate (validator is set below) new_certificate_details = bb.Attribute("new_certificate_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoChangeCertDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SsoChangeCertDetails_validator = bv.Struct(SsoChangeCertDetails) class SsoChangeCertType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoChangeCertType, self)._process_custom_annotations(annotation_type, field_path, processor) SsoChangeCertType_validator = bv.Struct(SsoChangeCertType) class SsoChangeLoginUrlDetails(bb.Struct): """ Changed sign-in URL for SSO. :ivar team_log.SsoChangeLoginUrlDetails.previous_value: Previous single sign-on login URL. :ivar team_log.SsoChangeLoginUrlDetails.new_value: New single sign-on login URL. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoChangeLoginUrlDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SsoChangeLoginUrlDetails_validator = bv.Struct(SsoChangeLoginUrlDetails) class SsoChangeLoginUrlType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoChangeLoginUrlType, self)._process_custom_annotations(annotation_type, field_path, processor) SsoChangeLoginUrlType_validator = bv.Struct(SsoChangeLoginUrlType) class SsoChangeLogoutUrlDetails(bb.Struct): """ Changed sign-out URL for SSO. :ivar team_log.SsoChangeLogoutUrlDetails.previous_value: Previous single sign-on logout URL. Might be missing due to historical data gap. :ivar team_log.SsoChangeLogoutUrlDetails.new_value: New single sign-on logout URL. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = False def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True) # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoChangeLogoutUrlDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SsoChangeLogoutUrlDetails_validator = bv.Struct(SsoChangeLogoutUrlDetails) class SsoChangeLogoutUrlType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoChangeLogoutUrlType, self)._process_custom_annotations(annotation_type, field_path, processor) SsoChangeLogoutUrlType_validator = bv.Struct(SsoChangeLogoutUrlType) class SsoChangePolicyDetails(bb.Struct): """ Changed single sign-on setting for team. :ivar team_log.SsoChangePolicyDetails.new_value: New single sign-on policy. :ivar team_log.SsoChangePolicyDetails.previous_value: Previous single sign-on policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: team_policies.SsoPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: team_policies.SsoPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SsoChangePolicyDetails_validator = bv.Struct(SsoChangePolicyDetails) class SsoChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) SsoChangePolicyType_validator = bv.Struct(SsoChangePolicyType) class SsoChangeSamlIdentityModeDetails(bb.Struct): """ Changed SAML identity mode for SSO. :ivar team_log.SsoChangeSamlIdentityModeDetails.previous_value: Previous single sign-on identity mode. :ivar team_log.SsoChangeSamlIdentityModeDetails.new_value: New single sign-on identity mode. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: int (validator is set below) previous_value = bb.Attribute("previous_value") # Instance attribute type: int (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoChangeSamlIdentityModeDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SsoChangeSamlIdentityModeDetails_validator = bv.Struct(SsoChangeSamlIdentityModeDetails) class SsoChangeSamlIdentityModeType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoChangeSamlIdentityModeType, self)._process_custom_annotations(annotation_type, field_path, processor) SsoChangeSamlIdentityModeType_validator = bv.Struct(SsoChangeSamlIdentityModeType) class SsoErrorDetails(bb.Struct): """ Failed to sign in via SSO. :ivar team_log.SsoErrorDetails.error_details: Error details. """ __slots__ = [ '_error_details_value', ] _has_required_fields = True def __init__(self, error_details=None): self._error_details_value = bb.NOT_SET if error_details is not None: self.error_details = error_details # Instance attribute type: FailureDetailsLogInfo (validator is set below) error_details = bb.Attribute("error_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoErrorDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SsoErrorDetails_validator = bv.Struct(SsoErrorDetails) class SsoErrorType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoErrorType, self)._process_custom_annotations(annotation_type, field_path, processor) SsoErrorType_validator = bv.Struct(SsoErrorType) class SsoRemoveCertDetails(bb.Struct): """ Removed X.509 certificate for SSO. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoRemoveCertDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SsoRemoveCertDetails_validator = bv.Struct(SsoRemoveCertDetails) class SsoRemoveCertType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoRemoveCertType, self)._process_custom_annotations(annotation_type, field_path, processor) SsoRemoveCertType_validator = bv.Struct(SsoRemoveCertType) class SsoRemoveLoginUrlDetails(bb.Struct): """ Removed sign-in URL for SSO. :ivar team_log.SsoRemoveLoginUrlDetails.previous_value: Previous single sign-on login URL. """ __slots__ = [ '_previous_value_value', ] _has_required_fields = True def __init__(self, previous_value=None): self._previous_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoRemoveLoginUrlDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SsoRemoveLoginUrlDetails_validator = bv.Struct(SsoRemoveLoginUrlDetails) class SsoRemoveLoginUrlType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoRemoveLoginUrlType, self)._process_custom_annotations(annotation_type, field_path, processor) SsoRemoveLoginUrlType_validator = bv.Struct(SsoRemoveLoginUrlType) class SsoRemoveLogoutUrlDetails(bb.Struct): """ Removed sign-out URL for SSO. :ivar team_log.SsoRemoveLogoutUrlDetails.previous_value: Previous single sign-on logout URL. """ __slots__ = [ '_previous_value_value', ] _has_required_fields = True def __init__(self, previous_value=None): self._previous_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoRemoveLogoutUrlDetails, self)._process_custom_annotations(annotation_type, field_path, processor) SsoRemoveLogoutUrlDetails_validator = bv.Struct(SsoRemoveLogoutUrlDetails) class SsoRemoveLogoutUrlType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoRemoveLogoutUrlType, self)._process_custom_annotations(annotation_type, field_path, processor) SsoRemoveLogoutUrlType_validator = bv.Struct(SsoRemoveLogoutUrlType) class StartedEnterpriseAdminSessionDetails(bb.Struct): """ Started enterprise admin session. :ivar team_log.StartedEnterpriseAdminSessionDetails.federation_extra_details: More information about the organization or team. """ __slots__ = [ '_federation_extra_details_value', ] _has_required_fields = True def __init__(self, federation_extra_details=None): self._federation_extra_details_value = bb.NOT_SET if federation_extra_details is not None: self.federation_extra_details = federation_extra_details # Instance attribute type: FedExtraDetails (validator is set below) federation_extra_details = bb.Attribute("federation_extra_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(StartedEnterpriseAdminSessionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) StartedEnterpriseAdminSessionDetails_validator = bv.Struct(StartedEnterpriseAdminSessionDetails) class StartedEnterpriseAdminSessionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(StartedEnterpriseAdminSessionType, self)._process_custom_annotations(annotation_type, field_path, processor) StartedEnterpriseAdminSessionType_validator = bv.Struct(StartedEnterpriseAdminSessionType) class TeamActivityCreateReportDetails(bb.Struct): """ Created team activity report. :ivar team_log.TeamActivityCreateReportDetails.start_date: Report start date. :ivar team_log.TeamActivityCreateReportDetails.end_date: Report end date. """ __slots__ = [ '_start_date_value', '_end_date_value', ] _has_required_fields = True def __init__(self, start_date=None, end_date=None): self._start_date_value = bb.NOT_SET self._end_date_value = bb.NOT_SET if start_date is not None: self.start_date = start_date if end_date is not None: self.end_date = end_date # Instance attribute type: datetime.datetime (validator is set below) start_date = bb.Attribute("start_date") # Instance attribute type: datetime.datetime (validator is set below) end_date = bb.Attribute("end_date") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamActivityCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamActivityCreateReportDetails_validator = bv.Struct(TeamActivityCreateReportDetails) class TeamActivityCreateReportFailDetails(bb.Struct): """ Couldn't generate team activity report. :ivar team_log.TeamActivityCreateReportFailDetails.failure_reason: Failure reason. """ __slots__ = [ '_failure_reason_value', ] _has_required_fields = True def __init__(self, failure_reason=None): self._failure_reason_value = bb.NOT_SET if failure_reason is not None: self.failure_reason = failure_reason # Instance attribute type: team.TeamReportFailureReason (validator is set below) failure_reason = bb.Attribute("failure_reason", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamActivityCreateReportFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamActivityCreateReportFailDetails_validator = bv.Struct(TeamActivityCreateReportFailDetails) class TeamActivityCreateReportFailType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamActivityCreateReportFailType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamActivityCreateReportFailType_validator = bv.Struct(TeamActivityCreateReportFailType) class TeamActivityCreateReportType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamActivityCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamActivityCreateReportType_validator = bv.Struct(TeamActivityCreateReportType) class TeamBrandingPolicy(bb.Union): """ Policy for controlling team access to setting up branding feature This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamBrandingPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) TeamBrandingPolicy_validator = bv.Union(TeamBrandingPolicy) class TeamBrandingPolicyChangedDetails(bb.Struct): """ Changed team branding policy for team. :ivar team_log.TeamBrandingPolicyChangedDetails.new_value: New team branding policy. :ivar team_log.TeamBrandingPolicyChangedDetails.previous_value: Previous team branding policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: TeamBrandingPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: TeamBrandingPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamBrandingPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamBrandingPolicyChangedDetails_validator = bv.Struct(TeamBrandingPolicyChangedDetails) class TeamBrandingPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamBrandingPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamBrandingPolicyChangedType_validator = bv.Struct(TeamBrandingPolicyChangedType) class TeamDetails(bb.Struct): """ More details about the team. :ivar team_log.TeamDetails.team: The name of the team. """ __slots__ = [ '_team_value', ] _has_required_fields = True def __init__(self, team=None): self._team_value = bb.NOT_SET if team is not None: self.team = team # Instance attribute type: str (validator is set below) team = bb.Attribute("team") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamDetails_validator = bv.Struct(TeamDetails) class TeamEncryptionKeyCancelKeyDeletionDetails(bb.Struct): """ Canceled team encryption key deletion. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyCancelKeyDeletionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyCancelKeyDeletionDetails_validator = bv.Struct(TeamEncryptionKeyCancelKeyDeletionDetails) class TeamEncryptionKeyCancelKeyDeletionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyCancelKeyDeletionType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyCancelKeyDeletionType_validator = bv.Struct(TeamEncryptionKeyCancelKeyDeletionType) class TeamEncryptionKeyCreateKeyDetails(bb.Struct): """ Created team encryption key. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyCreateKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyCreateKeyDetails_validator = bv.Struct(TeamEncryptionKeyCreateKeyDetails) class TeamEncryptionKeyCreateKeyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyCreateKeyType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyCreateKeyType_validator = bv.Struct(TeamEncryptionKeyCreateKeyType) class TeamEncryptionKeyDeleteKeyDetails(bb.Struct): """ Deleted team encryption key. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyDeleteKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyDeleteKeyDetails_validator = bv.Struct(TeamEncryptionKeyDeleteKeyDetails) class TeamEncryptionKeyDeleteKeyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyDeleteKeyType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyDeleteKeyType_validator = bv.Struct(TeamEncryptionKeyDeleteKeyType) class TeamEncryptionKeyDisableKeyDetails(bb.Struct): """ Disabled team encryption key. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyDisableKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyDisableKeyDetails_validator = bv.Struct(TeamEncryptionKeyDisableKeyDetails) class TeamEncryptionKeyDisableKeyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyDisableKeyType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyDisableKeyType_validator = bv.Struct(TeamEncryptionKeyDisableKeyType) class TeamEncryptionKeyEnableKeyDetails(bb.Struct): """ Enabled team encryption key. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyEnableKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyEnableKeyDetails_validator = bv.Struct(TeamEncryptionKeyEnableKeyDetails) class TeamEncryptionKeyEnableKeyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyEnableKeyType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyEnableKeyType_validator = bv.Struct(TeamEncryptionKeyEnableKeyType) class TeamEncryptionKeyRotateKeyDetails(bb.Struct): """ Rotated team encryption key. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyRotateKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyRotateKeyDetails_validator = bv.Struct(TeamEncryptionKeyRotateKeyDetails) class TeamEncryptionKeyRotateKeyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyRotateKeyType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyRotateKeyType_validator = bv.Struct(TeamEncryptionKeyRotateKeyType) class TeamEncryptionKeyScheduleKeyDeletionDetails(bb.Struct): """ Scheduled encryption key deletion. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyScheduleKeyDeletionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyScheduleKeyDeletionDetails_validator = bv.Struct(TeamEncryptionKeyScheduleKeyDeletionDetails) class TeamEncryptionKeyScheduleKeyDeletionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEncryptionKeyScheduleKeyDeletionType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEncryptionKeyScheduleKeyDeletionType_validator = bv.Struct(TeamEncryptionKeyScheduleKeyDeletionType) class TeamEvent(bb.Struct): """ An audit log event. :ivar team_log.TeamEvent.timestamp: The Dropbox timestamp representing when the action was taken. :ivar team_log.TeamEvent.event_category: The category that this type of action belongs to. :ivar team_log.TeamEvent.actor: The entity who actually performed the action. Might be missing due to historical data gap. :ivar team_log.TeamEvent.origin: The origin from which the actor performed the action including information about host, ip address, location, session, etc. If the action was performed programmatically via the API the origin represents the API client. :ivar team_log.TeamEvent.involve_non_team_member: True if the action involved a non team member either as the actor or as one of the affected users. Might be missing due to historical data gap. :ivar team_log.TeamEvent.context: The user or team on whose behalf the actor performed the action. Might be missing due to historical data gap. :ivar team_log.TeamEvent.participants: Zero or more users and/or groups that are affected by the action. Note that this list doesn't include any actors or users in context. :ivar team_log.TeamEvent.assets: Zero or more content assets involved in the action. Currently these include Dropbox files and folders but in the future we might add other asset types such as Paper documents, folders, projects, etc. :ivar team_log.TeamEvent.event_type: The particular type of action taken. :ivar team_log.TeamEvent.details: The variable event schema applicable to this type of action, instantiated with respect to this particular action. """ __slots__ = [ '_timestamp_value', '_event_category_value', '_actor_value', '_origin_value', '_involve_non_team_member_value', '_context_value', '_participants_value', '_assets_value', '_event_type_value', '_details_value', ] _has_required_fields = True def __init__(self, timestamp=None, event_category=None, event_type=None, details=None, actor=None, origin=None, involve_non_team_member=None, context=None, participants=None, assets=None): self._timestamp_value = bb.NOT_SET self._event_category_value = bb.NOT_SET self._actor_value = bb.NOT_SET self._origin_value = bb.NOT_SET self._involve_non_team_member_value = bb.NOT_SET self._context_value = bb.NOT_SET self._participants_value = bb.NOT_SET self._assets_value = bb.NOT_SET self._event_type_value = bb.NOT_SET self._details_value = bb.NOT_SET if timestamp is not None: self.timestamp = timestamp if event_category is not None: self.event_category = event_category if actor is not None: self.actor = actor if origin is not None: self.origin = origin if involve_non_team_member is not None: self.involve_non_team_member = involve_non_team_member if context is not None: self.context = context if participants is not None: self.participants = participants if assets is not None: self.assets = assets if event_type is not None: self.event_type = event_type if details is not None: self.details = details # Instance attribute type: datetime.datetime (validator is set below) timestamp = bb.Attribute("timestamp") # Instance attribute type: EventCategory (validator is set below) event_category = bb.Attribute("event_category", user_defined=True) # Instance attribute type: ActorLogInfo (validator is set below) actor = bb.Attribute("actor", nullable=True, user_defined=True) # Instance attribute type: OriginLogInfo (validator is set below) origin = bb.Attribute("origin", nullable=True, user_defined=True) # Instance attribute type: bool (validator is set below) involve_non_team_member = bb.Attribute("involve_non_team_member", nullable=True) # Instance attribute type: ContextLogInfo (validator is set below) context = bb.Attribute("context", nullable=True, user_defined=True) # Instance attribute type: list of [ParticipantLogInfo] (validator is set below) participants = bb.Attribute("participants", nullable=True) # Instance attribute type: list of [AssetLogInfo] (validator is set below) assets = bb.Attribute("assets", nullable=True) # Instance attribute type: EventType (validator is set below) event_type = bb.Attribute("event_type", user_defined=True) # Instance attribute type: EventDetails (validator is set below) details = bb.Attribute("details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamEvent, self)._process_custom_annotations(annotation_type, field_path, processor) TeamEvent_validator = bv.Struct(TeamEvent) class TeamExtensionsPolicy(bb.Union): """ Policy for controlling whether App Integrations are enabled for the team. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamExtensionsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) TeamExtensionsPolicy_validator = bv.Union(TeamExtensionsPolicy) class TeamExtensionsPolicyChangedDetails(bb.Struct): """ Changed App Integrations setting for team. :ivar team_log.TeamExtensionsPolicyChangedDetails.new_value: New Extensions policy. :ivar team_log.TeamExtensionsPolicyChangedDetails.previous_value: Previous Extensions policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: TeamExtensionsPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: TeamExtensionsPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamExtensionsPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamExtensionsPolicyChangedDetails_validator = bv.Struct(TeamExtensionsPolicyChangedDetails) class TeamExtensionsPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamExtensionsPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamExtensionsPolicyChangedType_validator = bv.Struct(TeamExtensionsPolicyChangedType) class TeamFolderChangeStatusDetails(bb.Struct): """ Changed archival status of team folder. :ivar team_log.TeamFolderChangeStatusDetails.new_value: New team folder status. :ivar team_log.TeamFolderChangeStatusDetails.previous_value: Previous team folder status. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: team.TeamFolderStatus (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: team.TeamFolderStatus (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderChangeStatusDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderChangeStatusDetails_validator = bv.Struct(TeamFolderChangeStatusDetails) class TeamFolderChangeStatusType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderChangeStatusType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderChangeStatusType_validator = bv.Struct(TeamFolderChangeStatusType) class TeamFolderCreateDetails(bb.Struct): """ Created team folder in active status. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderCreateDetails_validator = bv.Struct(TeamFolderCreateDetails) class TeamFolderCreateType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderCreateType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderCreateType_validator = bv.Struct(TeamFolderCreateType) class TeamFolderDowngradeDetails(bb.Struct): """ Downgraded team folder to regular shared folder. :ivar team_log.TeamFolderDowngradeDetails.target_asset_index: Target asset position in the Assets list. """ __slots__ = [ '_target_asset_index_value', ] _has_required_fields = True def __init__(self, target_asset_index=None): self._target_asset_index_value = bb.NOT_SET if target_asset_index is not None: self.target_asset_index = target_asset_index # Instance attribute type: int (validator is set below) target_asset_index = bb.Attribute("target_asset_index") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderDowngradeDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderDowngradeDetails_validator = bv.Struct(TeamFolderDowngradeDetails) class TeamFolderDowngradeType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderDowngradeType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderDowngradeType_validator = bv.Struct(TeamFolderDowngradeType) class TeamFolderPermanentlyDeleteDetails(bb.Struct): """ Permanently deleted archived team folder. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderPermanentlyDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderPermanentlyDeleteDetails_validator = bv.Struct(TeamFolderPermanentlyDeleteDetails) class TeamFolderPermanentlyDeleteType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderPermanentlyDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderPermanentlyDeleteType_validator = bv.Struct(TeamFolderPermanentlyDeleteType) class TeamFolderRenameDetails(bb.Struct): """ Renamed active/archived team folder. :ivar team_log.TeamFolderRenameDetails.previous_folder_name: Previous folder name. :ivar team_log.TeamFolderRenameDetails.new_folder_name: New folder name. """ __slots__ = [ '_previous_folder_name_value', '_new_folder_name_value', ] _has_required_fields = True def __init__(self, previous_folder_name=None, new_folder_name=None): self._previous_folder_name_value = bb.NOT_SET self._new_folder_name_value = bb.NOT_SET if previous_folder_name is not None: self.previous_folder_name = previous_folder_name if new_folder_name is not None: self.new_folder_name = new_folder_name # Instance attribute type: str (validator is set below) previous_folder_name = bb.Attribute("previous_folder_name") # Instance attribute type: str (validator is set below) new_folder_name = bb.Attribute("new_folder_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderRenameDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderRenameDetails_validator = bv.Struct(TeamFolderRenameDetails) class TeamFolderRenameType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamFolderRenameType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamFolderRenameType_validator = bv.Struct(TeamFolderRenameType) class TeamInviteDetails(bb.Struct): """ Details about team invites :ivar team_log.TeamInviteDetails.invite_method: How the user was invited to the team. :ivar team_log.TeamInviteDetails.additional_license_purchase: True if the invitation incurred an additional license purchase. """ __slots__ = [ '_invite_method_value', '_additional_license_purchase_value', ] _has_required_fields = True def __init__(self, invite_method=None, additional_license_purchase=None): self._invite_method_value = bb.NOT_SET self._additional_license_purchase_value = bb.NOT_SET if invite_method is not None: self.invite_method = invite_method if additional_license_purchase is not None: self.additional_license_purchase = additional_license_purchase # Instance attribute type: InviteMethod (validator is set below) invite_method = bb.Attribute("invite_method", user_defined=True) # Instance attribute type: bool (validator is set below) additional_license_purchase = bb.Attribute("additional_license_purchase", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamInviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamInviteDetails_validator = bv.Struct(TeamInviteDetails) class TeamLinkedAppLogInfo(AppLogInfo): """ Team linked app """ __slots__ = [ ] _has_required_fields = False def __init__(self, app_id=None, display_name=None): super(TeamLinkedAppLogInfo, self).__init__(app_id, display_name) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamLinkedAppLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) TeamLinkedAppLogInfo_validator = bv.Struct(TeamLinkedAppLogInfo) class TeamLogInfo(bb.Struct): """ Team's logged information. :ivar team_log.TeamLogInfo.display_name: Team display name. """ __slots__ = [ '_display_name_value', ] _has_required_fields = True def __init__(self, display_name=None): self._display_name_value = bb.NOT_SET if display_name is not None: self.display_name = display_name # Instance attribute type: str (validator is set below) display_name = bb.Attribute("display_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) TeamLogInfo_validator = bv.Struct(TeamLogInfo) class TeamMemberLogInfo(UserLogInfo): """ Team member's logged information. :ivar team_log.TeamMemberLogInfo.team_member_id: Team member ID. :ivar team_log.TeamMemberLogInfo.member_external_id: Team member external ID. :ivar team_log.TeamMemberLogInfo.team: Details about this user’s team for enterprise event. """ __slots__ = [ '_team_member_id_value', '_member_external_id_value', '_team_value', ] _has_required_fields = False def __init__(self, account_id=None, display_name=None, email=None, team_member_id=None, member_external_id=None, team=None): super(TeamMemberLogInfo, self).__init__(account_id, display_name, email) self._team_member_id_value = bb.NOT_SET self._member_external_id_value = bb.NOT_SET self._team_value = bb.NOT_SET if team_member_id is not None: self.team_member_id = team_member_id if member_external_id is not None: self.member_external_id = member_external_id if team is not None: self.team = team # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id", nullable=True) # Instance attribute type: str (validator is set below) member_external_id = bb.Attribute("member_external_id", nullable=True) # Instance attribute type: TeamLogInfo (validator is set below) team = bb.Attribute("team", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMemberLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMemberLogInfo_validator = bv.Struct(TeamMemberLogInfo) class TeamMembershipType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition free = None # Attribute is overwritten below the class definition full = None # Attribute is overwritten below the class definition guest = None # Attribute is overwritten below the class definition other = None def is_free(self): """ Check if the union tag is ``free``. :rtype: bool """ return self._tag == 'free' def is_full(self): """ Check if the union tag is ``full``. :rtype: bool """ return self._tag == 'full' def is_guest(self): """ Check if the union tag is ``guest``. :rtype: bool """ return self._tag == 'guest' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMembershipType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMembershipType_validator = bv.Union(TeamMembershipType) class TeamMergeFromDetails(bb.Struct): """ Merged another team into this team. :ivar team_log.TeamMergeFromDetails.team_name: The name of the team that was merged into this team. """ __slots__ = [ '_team_name_value', ] _has_required_fields = True def __init__(self, team_name=None): self._team_name_value = bb.NOT_SET if team_name is not None: self.team_name = team_name # Instance attribute type: str (validator is set below) team_name = bb.Attribute("team_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeFromDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeFromDetails_validator = bv.Struct(TeamMergeFromDetails) class TeamMergeFromType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeFromType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeFromType_validator = bv.Struct(TeamMergeFromType) class TeamMergeRequestAcceptedDetails(bb.Struct): """ Accepted a team merge request. :ivar team_log.TeamMergeRequestAcceptedDetails.request_accepted_details: Team merge request acceptance details. """ __slots__ = [ '_request_accepted_details_value', ] _has_required_fields = True def __init__(self, request_accepted_details=None): self._request_accepted_details_value = bb.NOT_SET if request_accepted_details is not None: self.request_accepted_details = request_accepted_details # Instance attribute type: TeamMergeRequestAcceptedExtraDetails (validator is set below) request_accepted_details = bb.Attribute("request_accepted_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestAcceptedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestAcceptedDetails_validator = bv.Struct(TeamMergeRequestAcceptedDetails) class TeamMergeRequestAcceptedExtraDetails(bb.Union): """ Team merge request acceptance details This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar PrimaryTeamRequestAcceptedDetails TeamMergeRequestAcceptedExtraDetails.primary_team: Team merge request accepted details shown to the primary team. :ivar SecondaryTeamRequestAcceptedDetails TeamMergeRequestAcceptedExtraDetails.secondary_team: Team merge request accepted details shown to the secondary team. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def primary_team(cls, val): """ Create an instance of this class set to the ``primary_team`` tag with value ``val``. :param PrimaryTeamRequestAcceptedDetails val: :rtype: TeamMergeRequestAcceptedExtraDetails """ return cls('primary_team', val) @classmethod def secondary_team(cls, val): """ Create an instance of this class set to the ``secondary_team`` tag with value ``val``. :param SecondaryTeamRequestAcceptedDetails val: :rtype: TeamMergeRequestAcceptedExtraDetails """ return cls('secondary_team', val) def is_primary_team(self): """ Check if the union tag is ``primary_team``. :rtype: bool """ return self._tag == 'primary_team' def is_secondary_team(self): """ Check if the union tag is ``secondary_team``. :rtype: bool """ return self._tag == 'secondary_team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_primary_team(self): """ Team merge request accepted details shown to the primary team. Only call this if :meth:`is_primary_team` is true. :rtype: PrimaryTeamRequestAcceptedDetails """ if not self.is_primary_team(): raise AttributeError("tag 'primary_team' not set") return self._value def get_secondary_team(self): """ Team merge request accepted details shown to the secondary team. Only call this if :meth:`is_secondary_team` is true. :rtype: SecondaryTeamRequestAcceptedDetails """ if not self.is_secondary_team(): raise AttributeError("tag 'secondary_team' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestAcceptedExtraDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestAcceptedExtraDetails_validator = bv.Union(TeamMergeRequestAcceptedExtraDetails) class TeamMergeRequestAcceptedShownToPrimaryTeamDetails(bb.Struct): """ Accepted a team merge request. :ivar team_log.TeamMergeRequestAcceptedShownToPrimaryTeamDetails.secondary_team: The secondary team name. :ivar team_log.TeamMergeRequestAcceptedShownToPrimaryTeamDetails.sent_by: The name of the secondary team admin who sent the request originally. """ __slots__ = [ '_secondary_team_value', '_sent_by_value', ] _has_required_fields = True def __init__(self, secondary_team=None, sent_by=None): self._secondary_team_value = bb.NOT_SET self._sent_by_value = bb.NOT_SET if secondary_team is not None: self.secondary_team = secondary_team if sent_by is not None: self.sent_by = sent_by # Instance attribute type: str (validator is set below) secondary_team = bb.Attribute("secondary_team") # Instance attribute type: str (validator is set below) sent_by = bb.Attribute("sent_by") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestAcceptedShownToPrimaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestAcceptedShownToPrimaryTeamDetails_validator = bv.Struct(TeamMergeRequestAcceptedShownToPrimaryTeamDetails) class TeamMergeRequestAcceptedShownToPrimaryTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestAcceptedShownToPrimaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestAcceptedShownToPrimaryTeamType_validator = bv.Struct(TeamMergeRequestAcceptedShownToPrimaryTeamType) class TeamMergeRequestAcceptedShownToSecondaryTeamDetails(bb.Struct): """ Accepted a team merge request. :ivar team_log.TeamMergeRequestAcceptedShownToSecondaryTeamDetails.primary_team: The primary team name. :ivar team_log.TeamMergeRequestAcceptedShownToSecondaryTeamDetails.sent_by: The name of the secondary team admin who sent the request originally. """ __slots__ = [ '_primary_team_value', '_sent_by_value', ] _has_required_fields = True def __init__(self, primary_team=None, sent_by=None): self._primary_team_value = bb.NOT_SET self._sent_by_value = bb.NOT_SET if primary_team is not None: self.primary_team = primary_team if sent_by is not None: self.sent_by = sent_by # Instance attribute type: str (validator is set below) primary_team = bb.Attribute("primary_team") # Instance attribute type: str (validator is set below) sent_by = bb.Attribute("sent_by") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestAcceptedShownToSecondaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestAcceptedShownToSecondaryTeamDetails_validator = bv.Struct(TeamMergeRequestAcceptedShownToSecondaryTeamDetails) class TeamMergeRequestAcceptedShownToSecondaryTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestAcceptedShownToSecondaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestAcceptedShownToSecondaryTeamType_validator = bv.Struct(TeamMergeRequestAcceptedShownToSecondaryTeamType) class TeamMergeRequestAcceptedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestAcceptedType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestAcceptedType_validator = bv.Struct(TeamMergeRequestAcceptedType) class TeamMergeRequestAutoCanceledDetails(bb.Struct): """ Automatically canceled team merge request. :ivar team_log.TeamMergeRequestAutoCanceledDetails.details: The cancellation reason. """ __slots__ = [ '_details_value', ] _has_required_fields = False def __init__(self, details=None): self._details_value = bb.NOT_SET if details is not None: self.details = details # Instance attribute type: str (validator is set below) details = bb.Attribute("details", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestAutoCanceledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestAutoCanceledDetails_validator = bv.Struct(TeamMergeRequestAutoCanceledDetails) class TeamMergeRequestAutoCanceledType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestAutoCanceledType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestAutoCanceledType_validator = bv.Struct(TeamMergeRequestAutoCanceledType) class TeamMergeRequestCanceledDetails(bb.Struct): """ Canceled a team merge request. :ivar team_log.TeamMergeRequestCanceledDetails.request_canceled_details: Team merge request cancellation details. """ __slots__ = [ '_request_canceled_details_value', ] _has_required_fields = True def __init__(self, request_canceled_details=None): self._request_canceled_details_value = bb.NOT_SET if request_canceled_details is not None: self.request_canceled_details = request_canceled_details # Instance attribute type: TeamMergeRequestCanceledExtraDetails (validator is set below) request_canceled_details = bb.Attribute("request_canceled_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestCanceledDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestCanceledDetails_validator = bv.Struct(TeamMergeRequestCanceledDetails) class TeamMergeRequestCanceledExtraDetails(bb.Union): """ Team merge request cancellation details This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar PrimaryTeamRequestCanceledDetails TeamMergeRequestCanceledExtraDetails.primary_team: Team merge request cancellation details shown to the primary team. :ivar SecondaryTeamRequestCanceledDetails TeamMergeRequestCanceledExtraDetails.secondary_team: Team merge request cancellation details shown to the secondary team. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def primary_team(cls, val): """ Create an instance of this class set to the ``primary_team`` tag with value ``val``. :param PrimaryTeamRequestCanceledDetails val: :rtype: TeamMergeRequestCanceledExtraDetails """ return cls('primary_team', val) @classmethod def secondary_team(cls, val): """ Create an instance of this class set to the ``secondary_team`` tag with value ``val``. :param SecondaryTeamRequestCanceledDetails val: :rtype: TeamMergeRequestCanceledExtraDetails """ return cls('secondary_team', val) def is_primary_team(self): """ Check if the union tag is ``primary_team``. :rtype: bool """ return self._tag == 'primary_team' def is_secondary_team(self): """ Check if the union tag is ``secondary_team``. :rtype: bool """ return self._tag == 'secondary_team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_primary_team(self): """ Team merge request cancellation details shown to the primary team. Only call this if :meth:`is_primary_team` is true. :rtype: PrimaryTeamRequestCanceledDetails """ if not self.is_primary_team(): raise AttributeError("tag 'primary_team' not set") return self._value def get_secondary_team(self): """ Team merge request cancellation details shown to the secondary team. Only call this if :meth:`is_secondary_team` is true. :rtype: SecondaryTeamRequestCanceledDetails """ if not self.is_secondary_team(): raise AttributeError("tag 'secondary_team' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestCanceledExtraDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestCanceledExtraDetails_validator = bv.Union(TeamMergeRequestCanceledExtraDetails) class TeamMergeRequestCanceledShownToPrimaryTeamDetails(bb.Struct): """ Canceled a team merge request. :ivar team_log.TeamMergeRequestCanceledShownToPrimaryTeamDetails.secondary_team: The secondary team name. :ivar team_log.TeamMergeRequestCanceledShownToPrimaryTeamDetails.sent_by: The name of the secondary team admin who sent the request originally. """ __slots__ = [ '_secondary_team_value', '_sent_by_value', ] _has_required_fields = True def __init__(self, secondary_team=None, sent_by=None): self._secondary_team_value = bb.NOT_SET self._sent_by_value = bb.NOT_SET if secondary_team is not None: self.secondary_team = secondary_team if sent_by is not None: self.sent_by = sent_by # Instance attribute type: str (validator is set below) secondary_team = bb.Attribute("secondary_team") # Instance attribute type: str (validator is set below) sent_by = bb.Attribute("sent_by") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestCanceledShownToPrimaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestCanceledShownToPrimaryTeamDetails_validator = bv.Struct(TeamMergeRequestCanceledShownToPrimaryTeamDetails) class TeamMergeRequestCanceledShownToPrimaryTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestCanceledShownToPrimaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestCanceledShownToPrimaryTeamType_validator = bv.Struct(TeamMergeRequestCanceledShownToPrimaryTeamType) class TeamMergeRequestCanceledShownToSecondaryTeamDetails(bb.Struct): """ Canceled a team merge request. :ivar team_log.TeamMergeRequestCanceledShownToSecondaryTeamDetails.sent_to: The email of the primary team admin that the request was sent to. :ivar team_log.TeamMergeRequestCanceledShownToSecondaryTeamDetails.sent_by: The name of the secondary team admin who sent the request originally. """ __slots__ = [ '_sent_to_value', '_sent_by_value', ] _has_required_fields = True def __init__(self, sent_to=None, sent_by=None): self._sent_to_value = bb.NOT_SET self._sent_by_value = bb.NOT_SET if sent_to is not None: self.sent_to = sent_to if sent_by is not None: self.sent_by = sent_by # Instance attribute type: str (validator is set below) sent_to = bb.Attribute("sent_to") # Instance attribute type: str (validator is set below) sent_by = bb.Attribute("sent_by") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestCanceledShownToSecondaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestCanceledShownToSecondaryTeamDetails_validator = bv.Struct(TeamMergeRequestCanceledShownToSecondaryTeamDetails) class TeamMergeRequestCanceledShownToSecondaryTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestCanceledShownToSecondaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestCanceledShownToSecondaryTeamType_validator = bv.Struct(TeamMergeRequestCanceledShownToSecondaryTeamType) class TeamMergeRequestCanceledType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestCanceledType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestCanceledType_validator = bv.Struct(TeamMergeRequestCanceledType) class TeamMergeRequestExpiredDetails(bb.Struct): """ Team merge request expired. :ivar team_log.TeamMergeRequestExpiredDetails.request_expired_details: Team merge request expiration details. """ __slots__ = [ '_request_expired_details_value', ] _has_required_fields = True def __init__(self, request_expired_details=None): self._request_expired_details_value = bb.NOT_SET if request_expired_details is not None: self.request_expired_details = request_expired_details # Instance attribute type: TeamMergeRequestExpiredExtraDetails (validator is set below) request_expired_details = bb.Attribute("request_expired_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestExpiredDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestExpiredDetails_validator = bv.Struct(TeamMergeRequestExpiredDetails) class TeamMergeRequestExpiredExtraDetails(bb.Union): """ Team merge request expiration details This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar PrimaryTeamRequestExpiredDetails TeamMergeRequestExpiredExtraDetails.primary_team: Team merge request canceled details shown to the primary team. :ivar SecondaryTeamRequestExpiredDetails TeamMergeRequestExpiredExtraDetails.secondary_team: Team merge request canceled details shown to the secondary team. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def primary_team(cls, val): """ Create an instance of this class set to the ``primary_team`` tag with value ``val``. :param PrimaryTeamRequestExpiredDetails val: :rtype: TeamMergeRequestExpiredExtraDetails """ return cls('primary_team', val) @classmethod def secondary_team(cls, val): """ Create an instance of this class set to the ``secondary_team`` tag with value ``val``. :param SecondaryTeamRequestExpiredDetails val: :rtype: TeamMergeRequestExpiredExtraDetails """ return cls('secondary_team', val) def is_primary_team(self): """ Check if the union tag is ``primary_team``. :rtype: bool """ return self._tag == 'primary_team' def is_secondary_team(self): """ Check if the union tag is ``secondary_team``. :rtype: bool """ return self._tag == 'secondary_team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_primary_team(self): """ Team merge request canceled details shown to the primary team. Only call this if :meth:`is_primary_team` is true. :rtype: PrimaryTeamRequestExpiredDetails """ if not self.is_primary_team(): raise AttributeError("tag 'primary_team' not set") return self._value def get_secondary_team(self): """ Team merge request canceled details shown to the secondary team. Only call this if :meth:`is_secondary_team` is true. :rtype: SecondaryTeamRequestExpiredDetails """ if not self.is_secondary_team(): raise AttributeError("tag 'secondary_team' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestExpiredExtraDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestExpiredExtraDetails_validator = bv.Union(TeamMergeRequestExpiredExtraDetails) class TeamMergeRequestExpiredShownToPrimaryTeamDetails(bb.Struct): """ Team merge request expired. :ivar team_log.TeamMergeRequestExpiredShownToPrimaryTeamDetails.secondary_team: The secondary team name. :ivar team_log.TeamMergeRequestExpiredShownToPrimaryTeamDetails.sent_by: The name of the secondary team admin who sent the request originally. """ __slots__ = [ '_secondary_team_value', '_sent_by_value', ] _has_required_fields = True def __init__(self, secondary_team=None, sent_by=None): self._secondary_team_value = bb.NOT_SET self._sent_by_value = bb.NOT_SET if secondary_team is not None: self.secondary_team = secondary_team if sent_by is not None: self.sent_by = sent_by # Instance attribute type: str (validator is set below) secondary_team = bb.Attribute("secondary_team") # Instance attribute type: str (validator is set below) sent_by = bb.Attribute("sent_by") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestExpiredShownToPrimaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestExpiredShownToPrimaryTeamDetails_validator = bv.Struct(TeamMergeRequestExpiredShownToPrimaryTeamDetails) class TeamMergeRequestExpiredShownToPrimaryTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestExpiredShownToPrimaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestExpiredShownToPrimaryTeamType_validator = bv.Struct(TeamMergeRequestExpiredShownToPrimaryTeamType) class TeamMergeRequestExpiredShownToSecondaryTeamDetails(bb.Struct): """ Team merge request expired. :ivar team_log.TeamMergeRequestExpiredShownToSecondaryTeamDetails.sent_to: The email of the primary team admin the request was sent to. """ __slots__ = [ '_sent_to_value', ] _has_required_fields = True def __init__(self, sent_to=None): self._sent_to_value = bb.NOT_SET if sent_to is not None: self.sent_to = sent_to # Instance attribute type: str (validator is set below) sent_to = bb.Attribute("sent_to") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestExpiredShownToSecondaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestExpiredShownToSecondaryTeamDetails_validator = bv.Struct(TeamMergeRequestExpiredShownToSecondaryTeamDetails) class TeamMergeRequestExpiredShownToSecondaryTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestExpiredShownToSecondaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestExpiredShownToSecondaryTeamType_validator = bv.Struct(TeamMergeRequestExpiredShownToSecondaryTeamType) class TeamMergeRequestExpiredType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestExpiredType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestExpiredType_validator = bv.Struct(TeamMergeRequestExpiredType) class TeamMergeRequestRejectedShownToPrimaryTeamDetails(bb.Struct): """ Rejected a team merge request. :ivar team_log.TeamMergeRequestRejectedShownToPrimaryTeamDetails.secondary_team: The secondary team name. :ivar team_log.TeamMergeRequestRejectedShownToPrimaryTeamDetails.sent_by: The name of the secondary team admin who sent the request originally. """ __slots__ = [ '_secondary_team_value', '_sent_by_value', ] _has_required_fields = True def __init__(self, secondary_team=None, sent_by=None): self._secondary_team_value = bb.NOT_SET self._sent_by_value = bb.NOT_SET if secondary_team is not None: self.secondary_team = secondary_team if sent_by is not None: self.sent_by = sent_by # Instance attribute type: str (validator is set below) secondary_team = bb.Attribute("secondary_team") # Instance attribute type: str (validator is set below) sent_by = bb.Attribute("sent_by") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestRejectedShownToPrimaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestRejectedShownToPrimaryTeamDetails_validator = bv.Struct(TeamMergeRequestRejectedShownToPrimaryTeamDetails) class TeamMergeRequestRejectedShownToPrimaryTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestRejectedShownToPrimaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestRejectedShownToPrimaryTeamType_validator = bv.Struct(TeamMergeRequestRejectedShownToPrimaryTeamType) class TeamMergeRequestRejectedShownToSecondaryTeamDetails(bb.Struct): """ Rejected a team merge request. :ivar team_log.TeamMergeRequestRejectedShownToSecondaryTeamDetails.sent_by: The name of the secondary team admin who sent the request originally. """ __slots__ = [ '_sent_by_value', ] _has_required_fields = True def __init__(self, sent_by=None): self._sent_by_value = bb.NOT_SET if sent_by is not None: self.sent_by = sent_by # Instance attribute type: str (validator is set below) sent_by = bb.Attribute("sent_by") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestRejectedShownToSecondaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestRejectedShownToSecondaryTeamDetails_validator = bv.Struct(TeamMergeRequestRejectedShownToSecondaryTeamDetails) class TeamMergeRequestRejectedShownToSecondaryTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestRejectedShownToSecondaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestRejectedShownToSecondaryTeamType_validator = bv.Struct(TeamMergeRequestRejectedShownToSecondaryTeamType) class TeamMergeRequestReminderDetails(bb.Struct): """ Sent a team merge request reminder. :ivar team_log.TeamMergeRequestReminderDetails.request_reminder_details: Team merge request reminder details. """ __slots__ = [ '_request_reminder_details_value', ] _has_required_fields = True def __init__(self, request_reminder_details=None): self._request_reminder_details_value = bb.NOT_SET if request_reminder_details is not None: self.request_reminder_details = request_reminder_details # Instance attribute type: TeamMergeRequestReminderExtraDetails (validator is set below) request_reminder_details = bb.Attribute("request_reminder_details", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestReminderDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestReminderDetails_validator = bv.Struct(TeamMergeRequestReminderDetails) class TeamMergeRequestReminderExtraDetails(bb.Union): """ Team merge request reminder details This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar PrimaryTeamRequestReminderDetails TeamMergeRequestReminderExtraDetails.primary_team: Team merge request reminder details shown to the primary team. :ivar SecondaryTeamRequestReminderDetails TeamMergeRequestReminderExtraDetails.secondary_team: Team merge request reminder details shown to the secondary team. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def primary_team(cls, val): """ Create an instance of this class set to the ``primary_team`` tag with value ``val``. :param PrimaryTeamRequestReminderDetails val: :rtype: TeamMergeRequestReminderExtraDetails """ return cls('primary_team', val) @classmethod def secondary_team(cls, val): """ Create an instance of this class set to the ``secondary_team`` tag with value ``val``. :param SecondaryTeamRequestReminderDetails val: :rtype: TeamMergeRequestReminderExtraDetails """ return cls('secondary_team', val) def is_primary_team(self): """ Check if the union tag is ``primary_team``. :rtype: bool """ return self._tag == 'primary_team' def is_secondary_team(self): """ Check if the union tag is ``secondary_team``. :rtype: bool """ return self._tag == 'secondary_team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_primary_team(self): """ Team merge request reminder details shown to the primary team. Only call this if :meth:`is_primary_team` is true. :rtype: PrimaryTeamRequestReminderDetails """ if not self.is_primary_team(): raise AttributeError("tag 'primary_team' not set") return self._value def get_secondary_team(self): """ Team merge request reminder details shown to the secondary team. Only call this if :meth:`is_secondary_team` is true. :rtype: SecondaryTeamRequestReminderDetails """ if not self.is_secondary_team(): raise AttributeError("tag 'secondary_team' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestReminderExtraDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestReminderExtraDetails_validator = bv.Union(TeamMergeRequestReminderExtraDetails) class TeamMergeRequestReminderShownToPrimaryTeamDetails(bb.Struct): """ Sent a team merge request reminder. :ivar team_log.TeamMergeRequestReminderShownToPrimaryTeamDetails.secondary_team: The secondary team name. :ivar team_log.TeamMergeRequestReminderShownToPrimaryTeamDetails.sent_to: The name of the primary team admin the request was sent to. """ __slots__ = [ '_secondary_team_value', '_sent_to_value', ] _has_required_fields = True def __init__(self, secondary_team=None, sent_to=None): self._secondary_team_value = bb.NOT_SET self._sent_to_value = bb.NOT_SET if secondary_team is not None: self.secondary_team = secondary_team if sent_to is not None: self.sent_to = sent_to # Instance attribute type: str (validator is set below) secondary_team = bb.Attribute("secondary_team") # Instance attribute type: str (validator is set below) sent_to = bb.Attribute("sent_to") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestReminderShownToPrimaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestReminderShownToPrimaryTeamDetails_validator = bv.Struct(TeamMergeRequestReminderShownToPrimaryTeamDetails) class TeamMergeRequestReminderShownToPrimaryTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestReminderShownToPrimaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestReminderShownToPrimaryTeamType_validator = bv.Struct(TeamMergeRequestReminderShownToPrimaryTeamType) class TeamMergeRequestReminderShownToSecondaryTeamDetails(bb.Struct): """ Sent a team merge request reminder. :ivar team_log.TeamMergeRequestReminderShownToSecondaryTeamDetails.sent_to: The email of the primary team admin the request was sent to. """ __slots__ = [ '_sent_to_value', ] _has_required_fields = True def __init__(self, sent_to=None): self._sent_to_value = bb.NOT_SET if sent_to is not None: self.sent_to = sent_to # Instance attribute type: str (validator is set below) sent_to = bb.Attribute("sent_to") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestReminderShownToSecondaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestReminderShownToSecondaryTeamDetails_validator = bv.Struct(TeamMergeRequestReminderShownToSecondaryTeamDetails) class TeamMergeRequestReminderShownToSecondaryTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestReminderShownToSecondaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestReminderShownToSecondaryTeamType_validator = bv.Struct(TeamMergeRequestReminderShownToSecondaryTeamType) class TeamMergeRequestReminderType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestReminderType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestReminderType_validator = bv.Struct(TeamMergeRequestReminderType) class TeamMergeRequestRevokedDetails(bb.Struct): """ Canceled the team merge. :ivar team_log.TeamMergeRequestRevokedDetails.team: The name of the other team. """ __slots__ = [ '_team_value', ] _has_required_fields = True def __init__(self, team=None): self._team_value = bb.NOT_SET if team is not None: self.team = team # Instance attribute type: str (validator is set below) team = bb.Attribute("team") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestRevokedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestRevokedDetails_validator = bv.Struct(TeamMergeRequestRevokedDetails) class TeamMergeRequestRevokedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestRevokedType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestRevokedType_validator = bv.Struct(TeamMergeRequestRevokedType) class TeamMergeRequestSentShownToPrimaryTeamDetails(bb.Struct): """ Requested to merge their Dropbox team into yours. :ivar team_log.TeamMergeRequestSentShownToPrimaryTeamDetails.secondary_team: The secondary team name. :ivar team_log.TeamMergeRequestSentShownToPrimaryTeamDetails.sent_to: The name of the primary team admin the request was sent to. """ __slots__ = [ '_secondary_team_value', '_sent_to_value', ] _has_required_fields = True def __init__(self, secondary_team=None, sent_to=None): self._secondary_team_value = bb.NOT_SET self._sent_to_value = bb.NOT_SET if secondary_team is not None: self.secondary_team = secondary_team if sent_to is not None: self.sent_to = sent_to # Instance attribute type: str (validator is set below) secondary_team = bb.Attribute("secondary_team") # Instance attribute type: str (validator is set below) sent_to = bb.Attribute("sent_to") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestSentShownToPrimaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestSentShownToPrimaryTeamDetails_validator = bv.Struct(TeamMergeRequestSentShownToPrimaryTeamDetails) class TeamMergeRequestSentShownToPrimaryTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestSentShownToPrimaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestSentShownToPrimaryTeamType_validator = bv.Struct(TeamMergeRequestSentShownToPrimaryTeamType) class TeamMergeRequestSentShownToSecondaryTeamDetails(bb.Struct): """ Requested to merge your team into another Dropbox team. :ivar team_log.TeamMergeRequestSentShownToSecondaryTeamDetails.sent_to: The email of the primary team admin the request was sent to. """ __slots__ = [ '_sent_to_value', ] _has_required_fields = True def __init__(self, sent_to=None): self._sent_to_value = bb.NOT_SET if sent_to is not None: self.sent_to = sent_to # Instance attribute type: str (validator is set below) sent_to = bb.Attribute("sent_to") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestSentShownToSecondaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestSentShownToSecondaryTeamDetails_validator = bv.Struct(TeamMergeRequestSentShownToSecondaryTeamDetails) class TeamMergeRequestSentShownToSecondaryTeamType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeRequestSentShownToSecondaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeRequestSentShownToSecondaryTeamType_validator = bv.Struct(TeamMergeRequestSentShownToSecondaryTeamType) class TeamMergeToDetails(bb.Struct): """ Merged this team into another team. :ivar team_log.TeamMergeToDetails.team_name: The name of the team that this team was merged into. """ __slots__ = [ '_team_name_value', ] _has_required_fields = True def __init__(self, team_name=None): self._team_name_value = bb.NOT_SET if team_name is not None: self.team_name = team_name # Instance attribute type: str (validator is set below) team_name = bb.Attribute("team_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeToDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeToDetails_validator = bv.Struct(TeamMergeToDetails) class TeamMergeToType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMergeToType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMergeToType_validator = bv.Struct(TeamMergeToType) class TeamName(bb.Struct): """ Team name details :ivar team_log.TeamName.team_display_name: Team's display name. :ivar team_log.TeamName.team_legal_name: Team's legal name. """ __slots__ = [ '_team_display_name_value', '_team_legal_name_value', ] _has_required_fields = True def __init__(self, team_display_name=None, team_legal_name=None): self._team_display_name_value = bb.NOT_SET self._team_legal_name_value = bb.NOT_SET if team_display_name is not None: self.team_display_name = team_display_name if team_legal_name is not None: self.team_legal_name = team_legal_name # Instance attribute type: str (validator is set below) team_display_name = bb.Attribute("team_display_name") # Instance attribute type: str (validator is set below) team_legal_name = bb.Attribute("team_legal_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamName, self)._process_custom_annotations(annotation_type, field_path, processor) TeamName_validator = bv.Struct(TeamName) class TeamProfileAddBackgroundDetails(bb.Struct): """ Added team background to display on shared link headers. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileAddBackgroundDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileAddBackgroundDetails_validator = bv.Struct(TeamProfileAddBackgroundDetails) class TeamProfileAddBackgroundType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileAddBackgroundType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileAddBackgroundType_validator = bv.Struct(TeamProfileAddBackgroundType) class TeamProfileAddLogoDetails(bb.Struct): """ Added team logo to display on shared link headers. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileAddLogoDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileAddLogoDetails_validator = bv.Struct(TeamProfileAddLogoDetails) class TeamProfileAddLogoType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileAddLogoType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileAddLogoType_validator = bv.Struct(TeamProfileAddLogoType) class TeamProfileChangeBackgroundDetails(bb.Struct): """ Changed team background displayed on shared link headers. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileChangeBackgroundDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileChangeBackgroundDetails_validator = bv.Struct(TeamProfileChangeBackgroundDetails) class TeamProfileChangeBackgroundType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileChangeBackgroundType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileChangeBackgroundType_validator = bv.Struct(TeamProfileChangeBackgroundType) class TeamProfileChangeDefaultLanguageDetails(bb.Struct): """ Changed default language for team. :ivar team_log.TeamProfileChangeDefaultLanguageDetails.new_value: New team's default language. :ivar team_log.TeamProfileChangeDefaultLanguageDetails.previous_value: Previous team's default language. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileChangeDefaultLanguageDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileChangeDefaultLanguageDetails_validator = bv.Struct(TeamProfileChangeDefaultLanguageDetails) class TeamProfileChangeDefaultLanguageType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileChangeDefaultLanguageType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileChangeDefaultLanguageType_validator = bv.Struct(TeamProfileChangeDefaultLanguageType) class TeamProfileChangeLogoDetails(bb.Struct): """ Changed team logo displayed on shared link headers. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileChangeLogoDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileChangeLogoDetails_validator = bv.Struct(TeamProfileChangeLogoDetails) class TeamProfileChangeLogoType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileChangeLogoType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileChangeLogoType_validator = bv.Struct(TeamProfileChangeLogoType) class TeamProfileChangeNameDetails(bb.Struct): """ Changed team name. :ivar team_log.TeamProfileChangeNameDetails.previous_value: Previous teams name. Might be missing due to historical data gap. :ivar team_log.TeamProfileChangeNameDetails.new_value: New team name. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: TeamName (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) # Instance attribute type: TeamName (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileChangeNameDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileChangeNameDetails_validator = bv.Struct(TeamProfileChangeNameDetails) class TeamProfileChangeNameType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileChangeNameType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileChangeNameType_validator = bv.Struct(TeamProfileChangeNameType) class TeamProfileRemoveBackgroundDetails(bb.Struct): """ Removed team background displayed on shared link headers. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileRemoveBackgroundDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileRemoveBackgroundDetails_validator = bv.Struct(TeamProfileRemoveBackgroundDetails) class TeamProfileRemoveBackgroundType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileRemoveBackgroundType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileRemoveBackgroundType_validator = bv.Struct(TeamProfileRemoveBackgroundType) class TeamProfileRemoveLogoDetails(bb.Struct): """ Removed team logo displayed on shared link headers. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileRemoveLogoDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileRemoveLogoDetails_validator = bv.Struct(TeamProfileRemoveLogoDetails) class TeamProfileRemoveLogoType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamProfileRemoveLogoType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamProfileRemoveLogoType_validator = bv.Struct(TeamProfileRemoveLogoType) class TeamSelectiveSyncPolicy(bb.Union): """ Policy for controlling whether team selective sync is enabled for team. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamSelectiveSyncPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) TeamSelectiveSyncPolicy_validator = bv.Union(TeamSelectiveSyncPolicy) class TeamSelectiveSyncPolicyChangedDetails(bb.Struct): """ Enabled/disabled Team Selective Sync for team. :ivar team_log.TeamSelectiveSyncPolicyChangedDetails.new_value: New Team Selective Sync policy. :ivar team_log.TeamSelectiveSyncPolicyChangedDetails.previous_value: Previous Team Selective Sync policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: TeamSelectiveSyncPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: TeamSelectiveSyncPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamSelectiveSyncPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamSelectiveSyncPolicyChangedDetails_validator = bv.Struct(TeamSelectiveSyncPolicyChangedDetails) class TeamSelectiveSyncPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamSelectiveSyncPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamSelectiveSyncPolicyChangedType_validator = bv.Struct(TeamSelectiveSyncPolicyChangedType) class TeamSelectiveSyncSettingsChangedDetails(bb.Struct): """ Changed sync default. :ivar team_log.TeamSelectiveSyncSettingsChangedDetails.previous_value: Previous value. :ivar team_log.TeamSelectiveSyncSettingsChangedDetails.new_value: New value. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: files.SyncSetting (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: files.SyncSetting (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamSelectiveSyncSettingsChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamSelectiveSyncSettingsChangedDetails_validator = bv.Struct(TeamSelectiveSyncSettingsChangedDetails) class TeamSelectiveSyncSettingsChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamSelectiveSyncSettingsChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamSelectiveSyncSettingsChangedType_validator = bv.Struct(TeamSelectiveSyncSettingsChangedType) class TeamSharingWhitelistSubjectsChangedDetails(bb.Struct): """ Edited the approved list for sharing externally. :ivar team_log.TeamSharingWhitelistSubjectsChangedDetails.added_whitelist_subjects: Domains or emails added to the approved list for sharing externally. :ivar team_log.TeamSharingWhitelistSubjectsChangedDetails.removed_whitelist_subjects: Domains or emails removed from the approved list for sharing externally. """ __slots__ = [ '_added_whitelist_subjects_value', '_removed_whitelist_subjects_value', ] _has_required_fields = True def __init__(self, added_whitelist_subjects=None, removed_whitelist_subjects=None): self._added_whitelist_subjects_value = bb.NOT_SET self._removed_whitelist_subjects_value = bb.NOT_SET if added_whitelist_subjects is not None: self.added_whitelist_subjects = added_whitelist_subjects if removed_whitelist_subjects is not None: self.removed_whitelist_subjects = removed_whitelist_subjects # Instance attribute type: list of [str] (validator is set below) added_whitelist_subjects = bb.Attribute("added_whitelist_subjects") # Instance attribute type: list of [str] (validator is set below) removed_whitelist_subjects = bb.Attribute("removed_whitelist_subjects") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamSharingWhitelistSubjectsChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TeamSharingWhitelistSubjectsChangedDetails_validator = bv.Struct(TeamSharingWhitelistSubjectsChangedDetails) class TeamSharingWhitelistSubjectsChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamSharingWhitelistSubjectsChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) TeamSharingWhitelistSubjectsChangedType_validator = bv.Struct(TeamSharingWhitelistSubjectsChangedType) class TfaAddBackupPhoneDetails(bb.Struct): """ Added backup phone for two-step verification. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaAddBackupPhoneDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TfaAddBackupPhoneDetails_validator = bv.Struct(TfaAddBackupPhoneDetails) class TfaAddBackupPhoneType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaAddBackupPhoneType, self)._process_custom_annotations(annotation_type, field_path, processor) TfaAddBackupPhoneType_validator = bv.Struct(TfaAddBackupPhoneType) class TfaAddExceptionDetails(bb.Struct): """ Added members to two factor authentication exception list. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaAddExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TfaAddExceptionDetails_validator = bv.Struct(TfaAddExceptionDetails) class TfaAddExceptionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaAddExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor) TfaAddExceptionType_validator = bv.Struct(TfaAddExceptionType) class TfaAddSecurityKeyDetails(bb.Struct): """ Added security key for two-step verification. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaAddSecurityKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TfaAddSecurityKeyDetails_validator = bv.Struct(TfaAddSecurityKeyDetails) class TfaAddSecurityKeyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaAddSecurityKeyType, self)._process_custom_annotations(annotation_type, field_path, processor) TfaAddSecurityKeyType_validator = bv.Struct(TfaAddSecurityKeyType) class TfaChangeBackupPhoneDetails(bb.Struct): """ Changed backup phone for two-step verification. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaChangeBackupPhoneDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TfaChangeBackupPhoneDetails_validator = bv.Struct(TfaChangeBackupPhoneDetails) class TfaChangeBackupPhoneType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaChangeBackupPhoneType, self)._process_custom_annotations(annotation_type, field_path, processor) TfaChangeBackupPhoneType_validator = bv.Struct(TfaChangeBackupPhoneType) class TfaChangePolicyDetails(bb.Struct): """ Changed two-step verification setting for team. :ivar team_log.TfaChangePolicyDetails.new_value: New change policy. :ivar team_log.TfaChangePolicyDetails.previous_value: Previous change policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: team_policies.TwoStepVerificationPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: team_policies.TwoStepVerificationPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TfaChangePolicyDetails_validator = bv.Struct(TfaChangePolicyDetails) class TfaChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) TfaChangePolicyType_validator = bv.Struct(TfaChangePolicyType) class TfaChangeStatusDetails(bb.Struct): """ Enabled/disabled/changed two-step verification setting. :ivar team_log.TfaChangeStatusDetails.new_value: The new two factor authentication configuration. :ivar team_log.TfaChangeStatusDetails.previous_value: The previous two factor authentication configuration. Might be missing due to historical data gap. :ivar team_log.TfaChangeStatusDetails.used_rescue_code: Used two factor authentication rescue code. This flag is relevant when the two factor authentication configuration is disabled. """ __slots__ = [ '_new_value_value', '_previous_value_value', '_used_rescue_code_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None, used_rescue_code=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET self._used_rescue_code_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value if used_rescue_code is not None: self.used_rescue_code = used_rescue_code # Instance attribute type: TfaConfiguration (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: TfaConfiguration (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) # Instance attribute type: bool (validator is set below) used_rescue_code = bb.Attribute("used_rescue_code", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaChangeStatusDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TfaChangeStatusDetails_validator = bv.Struct(TfaChangeStatusDetails) class TfaChangeStatusType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaChangeStatusType, self)._process_custom_annotations(annotation_type, field_path, processor) TfaChangeStatusType_validator = bv.Struct(TfaChangeStatusType) class TfaConfiguration(bb.Union): """ Two factor authentication configuration. Note: the enabled option is deprecated. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition authenticator = None # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition sms = None # Attribute is overwritten below the class definition other = None def is_authenticator(self): """ Check if the union tag is ``authenticator``. :rtype: bool """ return self._tag == 'authenticator' def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_sms(self): """ Check if the union tag is ``sms``. :rtype: bool """ return self._tag == 'sms' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaConfiguration, self)._process_custom_annotations(annotation_type, field_path, processor) TfaConfiguration_validator = bv.Union(TfaConfiguration) class TfaRemoveBackupPhoneDetails(bb.Struct): """ Removed backup phone for two-step verification. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaRemoveBackupPhoneDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TfaRemoveBackupPhoneDetails_validator = bv.Struct(TfaRemoveBackupPhoneDetails) class TfaRemoveBackupPhoneType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaRemoveBackupPhoneType, self)._process_custom_annotations(annotation_type, field_path, processor) TfaRemoveBackupPhoneType_validator = bv.Struct(TfaRemoveBackupPhoneType) class TfaRemoveExceptionDetails(bb.Struct): """ Removed members from two factor authentication exception list. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaRemoveExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TfaRemoveExceptionDetails_validator = bv.Struct(TfaRemoveExceptionDetails) class TfaRemoveExceptionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaRemoveExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor) TfaRemoveExceptionType_validator = bv.Struct(TfaRemoveExceptionType) class TfaRemoveSecurityKeyDetails(bb.Struct): """ Removed security key for two-step verification. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaRemoveSecurityKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TfaRemoveSecurityKeyDetails_validator = bv.Struct(TfaRemoveSecurityKeyDetails) class TfaRemoveSecurityKeyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaRemoveSecurityKeyType, self)._process_custom_annotations(annotation_type, field_path, processor) TfaRemoveSecurityKeyType_validator = bv.Struct(TfaRemoveSecurityKeyType) class TfaResetDetails(bb.Struct): """ Reset two-step verification for team member. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaResetDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TfaResetDetails_validator = bv.Struct(TfaResetDetails) class TfaResetType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TfaResetType, self)._process_custom_annotations(annotation_type, field_path, processor) TfaResetType_validator = bv.Struct(TfaResetType) class TimeUnit(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition days = None # Attribute is overwritten below the class definition hours = None # Attribute is overwritten below the class definition milliseconds = None # Attribute is overwritten below the class definition minutes = None # Attribute is overwritten below the class definition months = None # Attribute is overwritten below the class definition seconds = None # Attribute is overwritten below the class definition weeks = None # Attribute is overwritten below the class definition years = None # Attribute is overwritten below the class definition other = None def is_days(self): """ Check if the union tag is ``days``. :rtype: bool """ return self._tag == 'days' def is_hours(self): """ Check if the union tag is ``hours``. :rtype: bool """ return self._tag == 'hours' def is_milliseconds(self): """ Check if the union tag is ``milliseconds``. :rtype: bool """ return self._tag == 'milliseconds' def is_minutes(self): """ Check if the union tag is ``minutes``. :rtype: bool """ return self._tag == 'minutes' def is_months(self): """ Check if the union tag is ``months``. :rtype: bool """ return self._tag == 'months' def is_seconds(self): """ Check if the union tag is ``seconds``. :rtype: bool """ return self._tag == 'seconds' def is_weeks(self): """ Check if the union tag is ``weeks``. :rtype: bool """ return self._tag == 'weeks' def is_years(self): """ Check if the union tag is ``years``. :rtype: bool """ return self._tag == 'years' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TimeUnit, self)._process_custom_annotations(annotation_type, field_path, processor) TimeUnit_validator = bv.Union(TimeUnit) class TrustedNonTeamMemberLogInfo(UserLogInfo): """ User that is not a member of the team but considered trusted. :ivar team_log.TrustedNonTeamMemberLogInfo.trusted_non_team_member_type: Indicates the type of the member of a trusted team. :ivar team_log.TrustedNonTeamMemberLogInfo.team: Details about this user's trusted team. """ __slots__ = [ '_trusted_non_team_member_type_value', '_team_value', ] _has_required_fields = True def __init__(self, trusted_non_team_member_type=None, account_id=None, display_name=None, email=None, team=None): super(TrustedNonTeamMemberLogInfo, self).__init__(account_id, display_name, email) self._trusted_non_team_member_type_value = bb.NOT_SET self._team_value = bb.NOT_SET if trusted_non_team_member_type is not None: self.trusted_non_team_member_type = trusted_non_team_member_type if team is not None: self.team = team # Instance attribute type: TrustedNonTeamMemberType (validator is set below) trusted_non_team_member_type = bb.Attribute("trusted_non_team_member_type", user_defined=True) # Instance attribute type: TeamLogInfo (validator is set below) team = bb.Attribute("team", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TrustedNonTeamMemberLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) TrustedNonTeamMemberLogInfo_validator = bv.Struct(TrustedNonTeamMemberLogInfo) class TrustedNonTeamMemberType(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition enterprise_admin = None # Attribute is overwritten below the class definition multi_instance_admin = None # Attribute is overwritten below the class definition other = None def is_enterprise_admin(self): """ Check if the union tag is ``enterprise_admin``. :rtype: bool """ return self._tag == 'enterprise_admin' def is_multi_instance_admin(self): """ Check if the union tag is ``multi_instance_admin``. :rtype: bool """ return self._tag == 'multi_instance_admin' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TrustedNonTeamMemberType, self)._process_custom_annotations(annotation_type, field_path, processor) TrustedNonTeamMemberType_validator = bv.Union(TrustedNonTeamMemberType) class TrustedTeamsRequestAction(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition accepted = None # Attribute is overwritten below the class definition declined = None # Attribute is overwritten below the class definition expired = None # Attribute is overwritten below the class definition invited = None # Attribute is overwritten below the class definition revoked = None # Attribute is overwritten below the class definition other = None def is_accepted(self): """ Check if the union tag is ``accepted``. :rtype: bool """ return self._tag == 'accepted' def is_declined(self): """ Check if the union tag is ``declined``. :rtype: bool """ return self._tag == 'declined' def is_expired(self): """ Check if the union tag is ``expired``. :rtype: bool """ return self._tag == 'expired' def is_invited(self): """ Check if the union tag is ``invited``. :rtype: bool """ return self._tag == 'invited' def is_revoked(self): """ Check if the union tag is ``revoked``. :rtype: bool """ return self._tag == 'revoked' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TrustedTeamsRequestAction, self)._process_custom_annotations(annotation_type, field_path, processor) TrustedTeamsRequestAction_validator = bv.Union(TrustedTeamsRequestAction) class TrustedTeamsRequestState(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition invited = None # Attribute is overwritten below the class definition linked = None # Attribute is overwritten below the class definition unlinked = None # Attribute is overwritten below the class definition other = None def is_invited(self): """ Check if the union tag is ``invited``. :rtype: bool """ return self._tag == 'invited' def is_linked(self): """ Check if the union tag is ``linked``. :rtype: bool """ return self._tag == 'linked' def is_unlinked(self): """ Check if the union tag is ``unlinked``. :rtype: bool """ return self._tag == 'unlinked' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TrustedTeamsRequestState, self)._process_custom_annotations(annotation_type, field_path, processor) TrustedTeamsRequestState_validator = bv.Union(TrustedTeamsRequestState) class TwoAccountChangePolicyDetails(bb.Struct): """ Enabled/disabled option for members to link personal Dropbox account and team account to same computer. :ivar team_log.TwoAccountChangePolicyDetails.new_value: New two account policy. :ivar team_log.TwoAccountChangePolicyDetails.previous_value: Previous two account policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: TwoAccountPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: TwoAccountPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TwoAccountChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) TwoAccountChangePolicyDetails_validator = bv.Struct(TwoAccountChangePolicyDetails) class TwoAccountChangePolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TwoAccountChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) TwoAccountChangePolicyType_validator = bv.Struct(TwoAccountChangePolicyType) class TwoAccountPolicy(bb.Union): """ Policy for pairing personal account to work account This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TwoAccountPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) TwoAccountPolicy_validator = bv.Union(TwoAccountPolicy) class UndoNamingConventionDetails(bb.Struct): """ Reverted naming convention. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(UndoNamingConventionDetails, self)._process_custom_annotations(annotation_type, field_path, processor) UndoNamingConventionDetails_validator = bv.Struct(UndoNamingConventionDetails) class UndoNamingConventionType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UndoNamingConventionType, self)._process_custom_annotations(annotation_type, field_path, processor) UndoNamingConventionType_validator = bv.Struct(UndoNamingConventionType) class UndoOrganizeFolderWithTidyDetails(bb.Struct): """ Removed multi-file organize. """ __slots__ = [ ] _has_required_fields = False def __init__(self): pass def _process_custom_annotations(self, annotation_type, field_path, processor): super(UndoOrganizeFolderWithTidyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) UndoOrganizeFolderWithTidyDetails_validator = bv.Struct(UndoOrganizeFolderWithTidyDetails) class UndoOrganizeFolderWithTidyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UndoOrganizeFolderWithTidyType, self)._process_custom_annotations(annotation_type, field_path, processor) UndoOrganizeFolderWithTidyType_validator = bv.Struct(UndoOrganizeFolderWithTidyType) class UserLinkedAppLogInfo(AppLogInfo): """ User linked app """ __slots__ = [ ] _has_required_fields = False def __init__(self, app_id=None, display_name=None): super(UserLinkedAppLogInfo, self).__init__(app_id, display_name) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserLinkedAppLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) UserLinkedAppLogInfo_validator = bv.Struct(UserLinkedAppLogInfo) class UserNameLogInfo(bb.Struct): """ User's name logged information :ivar team_log.UserNameLogInfo.given_name: Given name. :ivar team_log.UserNameLogInfo.surname: Surname. :ivar team_log.UserNameLogInfo.locale: Locale. Might be missing due to historical data gap. """ __slots__ = [ '_given_name_value', '_surname_value', '_locale_value', ] _has_required_fields = True def __init__(self, given_name=None, surname=None, locale=None): self._given_name_value = bb.NOT_SET self._surname_value = bb.NOT_SET self._locale_value = bb.NOT_SET if given_name is not None: self.given_name = given_name if surname is not None: self.surname = surname if locale is not None: self.locale = locale # Instance attribute type: str (validator is set below) given_name = bb.Attribute("given_name") # Instance attribute type: str (validator is set below) surname = bb.Attribute("surname") # Instance attribute type: str (validator is set below) locale = bb.Attribute("locale", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserNameLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) UserNameLogInfo_validator = bv.Struct(UserNameLogInfo) class UserOrTeamLinkedAppLogInfo(AppLogInfo): """ User or team linked app. Used when linked type is missing due to historical data gap. """ __slots__ = [ ] _has_required_fields = False def __init__(self, app_id=None, display_name=None): super(UserOrTeamLinkedAppLogInfo, self).__init__(app_id, display_name) def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserOrTeamLinkedAppLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) UserOrTeamLinkedAppLogInfo_validator = bv.Struct(UserOrTeamLinkedAppLogInfo) class UserTagsAddedDetails(bb.Struct): """ Tagged a file. :ivar team_log.UserTagsAddedDetails.values: values. """ __slots__ = [ '_values_value', ] _has_required_fields = True def __init__(self, values=None): self._values_value = bb.NOT_SET if values is not None: self.values = values # Instance attribute type: list of [str] (validator is set below) values = bb.Attribute("values") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserTagsAddedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) UserTagsAddedDetails_validator = bv.Struct(UserTagsAddedDetails) class UserTagsAddedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserTagsAddedType, self)._process_custom_annotations(annotation_type, field_path, processor) UserTagsAddedType_validator = bv.Struct(UserTagsAddedType) class UserTagsRemovedDetails(bb.Struct): """ Removed tags. :ivar team_log.UserTagsRemovedDetails.values: values. """ __slots__ = [ '_values_value', ] _has_required_fields = True def __init__(self, values=None): self._values_value = bb.NOT_SET if values is not None: self.values = values # Instance attribute type: list of [str] (validator is set below) values = bb.Attribute("values") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserTagsRemovedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) UserTagsRemovedDetails_validator = bv.Struct(UserTagsRemovedDetails) class UserTagsRemovedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserTagsRemovedType, self)._process_custom_annotations(annotation_type, field_path, processor) UserTagsRemovedType_validator = bv.Struct(UserTagsRemovedType) class ViewerInfoPolicyChangedDetails(bb.Struct): """ Changed team policy for viewer info. :ivar team_log.ViewerInfoPolicyChangedDetails.previous_value: Previous Viewer Info policy. :ivar team_log.ViewerInfoPolicyChangedDetails.new_value: New Viewer Info policy. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: PassPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) # Instance attribute type: PassPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(ViewerInfoPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) ViewerInfoPolicyChangedDetails_validator = bv.Struct(ViewerInfoPolicyChangedDetails) class ViewerInfoPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(ViewerInfoPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) ViewerInfoPolicyChangedType_validator = bv.Struct(ViewerInfoPolicyChangedType) class WatermarkingPolicy(bb.Union): """ Policy for controlling team access to watermarking feature This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(WatermarkingPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) WatermarkingPolicy_validator = bv.Union(WatermarkingPolicy) class WatermarkingPolicyChangedDetails(bb.Struct): """ Changed watermarking policy for team. :ivar team_log.WatermarkingPolicyChangedDetails.new_value: New watermarking policy. :ivar team_log.WatermarkingPolicyChangedDetails.previous_value: Previous watermarking policy. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = True def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: WatermarkingPolicy (validator is set below) new_value = bb.Attribute("new_value", user_defined=True) # Instance attribute type: WatermarkingPolicy (validator is set below) previous_value = bb.Attribute("previous_value", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(WatermarkingPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor) WatermarkingPolicyChangedDetails_validator = bv.Struct(WatermarkingPolicyChangedDetails) class WatermarkingPolicyChangedType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(WatermarkingPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor) WatermarkingPolicyChangedType_validator = bv.Struct(WatermarkingPolicyChangedType) class WebDeviceSessionLogInfo(DeviceSessionLogInfo): """ Information on active web sessions :ivar team_log.WebDeviceSessionLogInfo.session_info: Web session unique id. :ivar team_log.WebDeviceSessionLogInfo.user_agent: Information on the hosting device. :ivar team_log.WebDeviceSessionLogInfo.os: Information on the hosting operating system. :ivar team_log.WebDeviceSessionLogInfo.browser: Information on the browser used for this web session. """ __slots__ = [ '_session_info_value', '_user_agent_value', '_os_value', '_browser_value', ] _has_required_fields = True def __init__(self, user_agent=None, os=None, browser=None, ip_address=None, created=None, updated=None, session_info=None): super(WebDeviceSessionLogInfo, self).__init__(ip_address, created, updated) self._session_info_value = bb.NOT_SET self._user_agent_value = bb.NOT_SET self._os_value = bb.NOT_SET self._browser_value = bb.NOT_SET if session_info is not None: self.session_info = session_info if user_agent is not None: self.user_agent = user_agent if os is not None: self.os = os if browser is not None: self.browser = browser # Instance attribute type: WebSessionLogInfo (validator is set below) session_info = bb.Attribute("session_info", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) user_agent = bb.Attribute("user_agent") # Instance attribute type: str (validator is set below) os = bb.Attribute("os") # Instance attribute type: str (validator is set below) browser = bb.Attribute("browser") def _process_custom_annotations(self, annotation_type, field_path, processor): super(WebDeviceSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) WebDeviceSessionLogInfo_validator = bv.Struct(WebDeviceSessionLogInfo) class WebSessionLogInfo(SessionLogInfo): """ Web session. """ __slots__ = [ ] _has_required_fields = False def __init__(self, session_id=None): super(WebSessionLogInfo, self).__init__(session_id) def _process_custom_annotations(self, annotation_type, field_path, processor): super(WebSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor) WebSessionLogInfo_validator = bv.Struct(WebSessionLogInfo) class WebSessionsChangeActiveSessionLimitDetails(bb.Struct): """ Changed limit on active sessions per member. :ivar team_log.WebSessionsChangeActiveSessionLimitDetails.previous_value: Previous max number of concurrent active sessions policy. :ivar team_log.WebSessionsChangeActiveSessionLimitDetails.new_value: New max number of concurrent active sessions policy. """ __slots__ = [ '_previous_value_value', '_new_value_value', ] _has_required_fields = True def __init__(self, previous_value=None, new_value=None): self._previous_value_value = bb.NOT_SET self._new_value_value = bb.NOT_SET if previous_value is not None: self.previous_value = previous_value if new_value is not None: self.new_value = new_value # Instance attribute type: str (validator is set below) previous_value = bb.Attribute("previous_value") # Instance attribute type: str (validator is set below) new_value = bb.Attribute("new_value") def _process_custom_annotations(self, annotation_type, field_path, processor): super(WebSessionsChangeActiveSessionLimitDetails, self)._process_custom_annotations(annotation_type, field_path, processor) WebSessionsChangeActiveSessionLimitDetails_validator = bv.Struct(WebSessionsChangeActiveSessionLimitDetails) class WebSessionsChangeActiveSessionLimitType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(WebSessionsChangeActiveSessionLimitType, self)._process_custom_annotations(annotation_type, field_path, processor) WebSessionsChangeActiveSessionLimitType_validator = bv.Struct(WebSessionsChangeActiveSessionLimitType) class WebSessionsChangeFixedLengthPolicyDetails(bb.Struct): """ Changed how long members can stay signed in to Dropbox.com. :ivar team_log.WebSessionsChangeFixedLengthPolicyDetails.new_value: New session length policy. Might be missing due to historical data gap. :ivar team_log.WebSessionsChangeFixedLengthPolicyDetails.previous_value: Previous session length policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = False def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: WebSessionsFixedLengthPolicy (validator is set below) new_value = bb.Attribute("new_value", nullable=True, user_defined=True) # Instance attribute type: WebSessionsFixedLengthPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(WebSessionsChangeFixedLengthPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) WebSessionsChangeFixedLengthPolicyDetails_validator = bv.Struct(WebSessionsChangeFixedLengthPolicyDetails) class WebSessionsChangeFixedLengthPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(WebSessionsChangeFixedLengthPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) WebSessionsChangeFixedLengthPolicyType_validator = bv.Struct(WebSessionsChangeFixedLengthPolicyType) class WebSessionsChangeIdleLengthPolicyDetails(bb.Struct): """ Changed how long team members can be idle while signed in to Dropbox.com. :ivar team_log.WebSessionsChangeIdleLengthPolicyDetails.new_value: New idle length policy. Might be missing due to historical data gap. :ivar team_log.WebSessionsChangeIdleLengthPolicyDetails.previous_value: Previous idle length policy. Might be missing due to historical data gap. """ __slots__ = [ '_new_value_value', '_previous_value_value', ] _has_required_fields = False def __init__(self, new_value=None, previous_value=None): self._new_value_value = bb.NOT_SET self._previous_value_value = bb.NOT_SET if new_value is not None: self.new_value = new_value if previous_value is not None: self.previous_value = previous_value # Instance attribute type: WebSessionsIdleLengthPolicy (validator is set below) new_value = bb.Attribute("new_value", nullable=True, user_defined=True) # Instance attribute type: WebSessionsIdleLengthPolicy (validator is set below) previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(WebSessionsChangeIdleLengthPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor) WebSessionsChangeIdleLengthPolicyDetails_validator = bv.Struct(WebSessionsChangeIdleLengthPolicyDetails) class WebSessionsChangeIdleLengthPolicyType(bb.Struct): __slots__ = [ '_description_value', ] _has_required_fields = True def __init__(self, description=None): self._description_value = bb.NOT_SET if description is not None: self.description = description # Instance attribute type: str (validator is set below) description = bb.Attribute("description") def _process_custom_annotations(self, annotation_type, field_path, processor): super(WebSessionsChangeIdleLengthPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor) WebSessionsChangeIdleLengthPolicyType_validator = bv.Struct(WebSessionsChangeIdleLengthPolicyType) class WebSessionsFixedLengthPolicy(bb.Union): """ Web sessions fixed length policy. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar DurationLogInfo WebSessionsFixedLengthPolicy.defined: Defined fixed session length. :ivar team_log.WebSessionsFixedLengthPolicy.undefined: Undefined fixed session length. """ _catch_all = 'other' # Attribute is overwritten below the class definition undefined = None # Attribute is overwritten below the class definition other = None @classmethod def defined(cls, val): """ Create an instance of this class set to the ``defined`` tag with value ``val``. :param DurationLogInfo val: :rtype: WebSessionsFixedLengthPolicy """ return cls('defined', val) def is_defined(self): """ Check if the union tag is ``defined``. :rtype: bool """ return self._tag == 'defined' def is_undefined(self): """ Check if the union tag is ``undefined``. :rtype: bool """ return self._tag == 'undefined' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_defined(self): """ Defined fixed session length. Only call this if :meth:`is_defined` is true. :rtype: DurationLogInfo """ if not self.is_defined(): raise AttributeError("tag 'defined' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(WebSessionsFixedLengthPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) WebSessionsFixedLengthPolicy_validator = bv.Union(WebSessionsFixedLengthPolicy) class WebSessionsIdleLengthPolicy(bb.Union): """ Web sessions idle length policy. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar DurationLogInfo WebSessionsIdleLengthPolicy.defined: Defined idle session length. :ivar team_log.WebSessionsIdleLengthPolicy.undefined: Undefined idle session length. """ _catch_all = 'other' # Attribute is overwritten below the class definition undefined = None # Attribute is overwritten below the class definition other = None @classmethod def defined(cls, val): """ Create an instance of this class set to the ``defined`` tag with value ``val``. :param DurationLogInfo val: :rtype: WebSessionsIdleLengthPolicy """ return cls('defined', val) def is_defined(self): """ Check if the union tag is ``defined``. :rtype: bool """ return self._tag == 'defined' def is_undefined(self): """ Check if the union tag is ``undefined``. :rtype: bool """ return self._tag == 'undefined' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_defined(self): """ Defined idle session length. Only call this if :meth:`is_defined` is true. :rtype: DurationLogInfo """ if not self.is_defined(): raise AttributeError("tag 'defined' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(WebSessionsIdleLengthPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) WebSessionsIdleLengthPolicy_validator = bv.Union(WebSessionsIdleLengthPolicy) AppId_validator = bv.String() EmailAddress_validator = bv.String(max_length=255) FilePath_validator = bv.String() IpAddress_validator = bv.String() NamespaceId_validator = bv.String() RequestId_validator = bv.String() TeamEventList_validator = bv.List(TeamEvent_validator) AccessMethodLogInfo._admin_console_validator = WebSessionLogInfo_validator AccessMethodLogInfo._api_validator = ApiSessionLogInfo_validator AccessMethodLogInfo._content_manager_validator = WebSessionLogInfo_validator AccessMethodLogInfo._end_user_validator = SessionLogInfo_validator AccessMethodLogInfo._enterprise_console_validator = WebSessionLogInfo_validator AccessMethodLogInfo._sign_in_as_validator = WebSessionLogInfo_validator AccessMethodLogInfo._other_validator = bv.Void() AccessMethodLogInfo._tagmap = { 'admin_console': AccessMethodLogInfo._admin_console_validator, 'api': AccessMethodLogInfo._api_validator, 'content_manager': AccessMethodLogInfo._content_manager_validator, 'end_user': AccessMethodLogInfo._end_user_validator, 'enterprise_console': AccessMethodLogInfo._enterprise_console_validator, 'sign_in_as': AccessMethodLogInfo._sign_in_as_validator, 'other': AccessMethodLogInfo._other_validator, } AccessMethodLogInfo.other = AccessMethodLogInfo('other') AccountCaptureAvailability._available_validator = bv.Void() AccountCaptureAvailability._unavailable_validator = bv.Void() AccountCaptureAvailability._other_validator = bv.Void() AccountCaptureAvailability._tagmap = { 'available': AccountCaptureAvailability._available_validator, 'unavailable': AccountCaptureAvailability._unavailable_validator, 'other': AccountCaptureAvailability._other_validator, } AccountCaptureAvailability.available = AccountCaptureAvailability('available') AccountCaptureAvailability.unavailable = AccountCaptureAvailability('unavailable') AccountCaptureAvailability.other = AccountCaptureAvailability('other') AccountCaptureChangeAvailabilityDetails.new_value.validator = AccountCaptureAvailability_validator AccountCaptureChangeAvailabilityDetails.previous_value.validator = bv.Nullable(AccountCaptureAvailability_validator) AccountCaptureChangeAvailabilityDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) AccountCaptureChangeAvailabilityDetails._all_fields_ = [ ('new_value', AccountCaptureChangeAvailabilityDetails.new_value.validator), ('previous_value', AccountCaptureChangeAvailabilityDetails.previous_value.validator), ] AccountCaptureChangeAvailabilityType.description.validator = bv.String() AccountCaptureChangeAvailabilityType._all_field_names_ = set(['description']) AccountCaptureChangeAvailabilityType._all_fields_ = [('description', AccountCaptureChangeAvailabilityType.description.validator)] AccountCaptureChangePolicyDetails.new_value.validator = AccountCapturePolicy_validator AccountCaptureChangePolicyDetails.previous_value.validator = bv.Nullable(AccountCapturePolicy_validator) AccountCaptureChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) AccountCaptureChangePolicyDetails._all_fields_ = [ ('new_value', AccountCaptureChangePolicyDetails.new_value.validator), ('previous_value', AccountCaptureChangePolicyDetails.previous_value.validator), ] AccountCaptureChangePolicyType.description.validator = bv.String() AccountCaptureChangePolicyType._all_field_names_ = set(['description']) AccountCaptureChangePolicyType._all_fields_ = [('description', AccountCaptureChangePolicyType.description.validator)] AccountCaptureMigrateAccountDetails.domain_name.validator = bv.String() AccountCaptureMigrateAccountDetails._all_field_names_ = set(['domain_name']) AccountCaptureMigrateAccountDetails._all_fields_ = [('domain_name', AccountCaptureMigrateAccountDetails.domain_name.validator)] AccountCaptureMigrateAccountType.description.validator = bv.String() AccountCaptureMigrateAccountType._all_field_names_ = set(['description']) AccountCaptureMigrateAccountType._all_fields_ = [('description', AccountCaptureMigrateAccountType.description.validator)] AccountCaptureNotificationEmailsSentDetails.domain_name.validator = bv.String() AccountCaptureNotificationEmailsSentDetails.notification_type.validator = bv.Nullable(AccountCaptureNotificationType_validator) AccountCaptureNotificationEmailsSentDetails._all_field_names_ = set([ 'domain_name', 'notification_type', ]) AccountCaptureNotificationEmailsSentDetails._all_fields_ = [ ('domain_name', AccountCaptureNotificationEmailsSentDetails.domain_name.validator), ('notification_type', AccountCaptureNotificationEmailsSentDetails.notification_type.validator), ] AccountCaptureNotificationEmailsSentType.description.validator = bv.String() AccountCaptureNotificationEmailsSentType._all_field_names_ = set(['description']) AccountCaptureNotificationEmailsSentType._all_fields_ = [('description', AccountCaptureNotificationEmailsSentType.description.validator)] AccountCaptureNotificationType._actionable_notification_validator = bv.Void() AccountCaptureNotificationType._proactive_warning_notification_validator = bv.Void() AccountCaptureNotificationType._other_validator = bv.Void() AccountCaptureNotificationType._tagmap = { 'actionable_notification': AccountCaptureNotificationType._actionable_notification_validator, 'proactive_warning_notification': AccountCaptureNotificationType._proactive_warning_notification_validator, 'other': AccountCaptureNotificationType._other_validator, } AccountCaptureNotificationType.actionable_notification = AccountCaptureNotificationType('actionable_notification') AccountCaptureNotificationType.proactive_warning_notification = AccountCaptureNotificationType('proactive_warning_notification') AccountCaptureNotificationType.other = AccountCaptureNotificationType('other') AccountCapturePolicy._all_users_validator = bv.Void() AccountCapturePolicy._disabled_validator = bv.Void() AccountCapturePolicy._invited_users_validator = bv.Void() AccountCapturePolicy._prevent_personal_creation_validator = bv.Void() AccountCapturePolicy._other_validator = bv.Void() AccountCapturePolicy._tagmap = { 'all_users': AccountCapturePolicy._all_users_validator, 'disabled': AccountCapturePolicy._disabled_validator, 'invited_users': AccountCapturePolicy._invited_users_validator, 'prevent_personal_creation': AccountCapturePolicy._prevent_personal_creation_validator, 'other': AccountCapturePolicy._other_validator, } AccountCapturePolicy.all_users = AccountCapturePolicy('all_users') AccountCapturePolicy.disabled = AccountCapturePolicy('disabled') AccountCapturePolicy.invited_users = AccountCapturePolicy('invited_users') AccountCapturePolicy.prevent_personal_creation = AccountCapturePolicy('prevent_personal_creation') AccountCapturePolicy.other = AccountCapturePolicy('other') AccountCaptureRelinquishAccountDetails.domain_name.validator = bv.String() AccountCaptureRelinquishAccountDetails._all_field_names_ = set(['domain_name']) AccountCaptureRelinquishAccountDetails._all_fields_ = [('domain_name', AccountCaptureRelinquishAccountDetails.domain_name.validator)] AccountCaptureRelinquishAccountType.description.validator = bv.String() AccountCaptureRelinquishAccountType._all_field_names_ = set(['description']) AccountCaptureRelinquishAccountType._all_fields_ = [('description', AccountCaptureRelinquishAccountType.description.validator)] AccountLockOrUnlockedDetails.previous_value.validator = AccountState_validator AccountLockOrUnlockedDetails.new_value.validator = AccountState_validator AccountLockOrUnlockedDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) AccountLockOrUnlockedDetails._all_fields_ = [ ('previous_value', AccountLockOrUnlockedDetails.previous_value.validator), ('new_value', AccountLockOrUnlockedDetails.new_value.validator), ] AccountLockOrUnlockedType.description.validator = bv.String() AccountLockOrUnlockedType._all_field_names_ = set(['description']) AccountLockOrUnlockedType._all_fields_ = [('description', AccountLockOrUnlockedType.description.validator)] AccountState._locked_validator = bv.Void() AccountState._unlocked_validator = bv.Void() AccountState._other_validator = bv.Void() AccountState._tagmap = { 'locked': AccountState._locked_validator, 'unlocked': AccountState._unlocked_validator, 'other': AccountState._other_validator, } AccountState.locked = AccountState('locked') AccountState.unlocked = AccountState('unlocked') AccountState.other = AccountState('other') ActionDetails._remove_action_validator = MemberRemoveActionType_validator ActionDetails._team_invite_details_validator = TeamInviteDetails_validator ActionDetails._team_join_details_validator = JoinTeamDetails_validator ActionDetails._other_validator = bv.Void() ActionDetails._tagmap = { 'remove_action': ActionDetails._remove_action_validator, 'team_invite_details': ActionDetails._team_invite_details_validator, 'team_join_details': ActionDetails._team_join_details_validator, 'other': ActionDetails._other_validator, } ActionDetails.other = ActionDetails('other') ActorLogInfo._admin_validator = UserLogInfo_validator ActorLogInfo._anonymous_validator = bv.Void() ActorLogInfo._app_validator = AppLogInfo_validator ActorLogInfo._dropbox_validator = bv.Void() ActorLogInfo._reseller_validator = ResellerLogInfo_validator ActorLogInfo._user_validator = UserLogInfo_validator ActorLogInfo._other_validator = bv.Void() ActorLogInfo._tagmap = { 'admin': ActorLogInfo._admin_validator, 'anonymous': ActorLogInfo._anonymous_validator, 'app': ActorLogInfo._app_validator, 'dropbox': ActorLogInfo._dropbox_validator, 'reseller': ActorLogInfo._reseller_validator, 'user': ActorLogInfo._user_validator, 'other': ActorLogInfo._other_validator, } ActorLogInfo.anonymous = ActorLogInfo('anonymous') ActorLogInfo.dropbox = ActorLogInfo('dropbox') ActorLogInfo.other = ActorLogInfo('other') AdminAlertCategoryEnum._account_takeover_validator = bv.Void() AdminAlertCategoryEnum._data_loss_protection_validator = bv.Void() AdminAlertCategoryEnum._information_governance_validator = bv.Void() AdminAlertCategoryEnum._malware_sharing_validator = bv.Void() AdminAlertCategoryEnum._massive_file_operation_validator = bv.Void() AdminAlertCategoryEnum._na_validator = bv.Void() AdminAlertCategoryEnum._threat_management_validator = bv.Void() AdminAlertCategoryEnum._other_validator = bv.Void() AdminAlertCategoryEnum._tagmap = { 'account_takeover': AdminAlertCategoryEnum._account_takeover_validator, 'data_loss_protection': AdminAlertCategoryEnum._data_loss_protection_validator, 'information_governance': AdminAlertCategoryEnum._information_governance_validator, 'malware_sharing': AdminAlertCategoryEnum._malware_sharing_validator, 'massive_file_operation': AdminAlertCategoryEnum._massive_file_operation_validator, 'na': AdminAlertCategoryEnum._na_validator, 'threat_management': AdminAlertCategoryEnum._threat_management_validator, 'other': AdminAlertCategoryEnum._other_validator, } AdminAlertCategoryEnum.account_takeover = AdminAlertCategoryEnum('account_takeover') AdminAlertCategoryEnum.data_loss_protection = AdminAlertCategoryEnum('data_loss_protection') AdminAlertCategoryEnum.information_governance = AdminAlertCategoryEnum('information_governance') AdminAlertCategoryEnum.malware_sharing = AdminAlertCategoryEnum('malware_sharing') AdminAlertCategoryEnum.massive_file_operation = AdminAlertCategoryEnum('massive_file_operation') AdminAlertCategoryEnum.na = AdminAlertCategoryEnum('na') AdminAlertCategoryEnum.threat_management = AdminAlertCategoryEnum('threat_management') AdminAlertCategoryEnum.other = AdminAlertCategoryEnum('other') AdminAlertGeneralStateEnum._active_validator = bv.Void() AdminAlertGeneralStateEnum._dismissed_validator = bv.Void() AdminAlertGeneralStateEnum._in_progress_validator = bv.Void() AdminAlertGeneralStateEnum._na_validator = bv.Void() AdminAlertGeneralStateEnum._resolved_validator = bv.Void() AdminAlertGeneralStateEnum._other_validator = bv.Void() AdminAlertGeneralStateEnum._tagmap = { 'active': AdminAlertGeneralStateEnum._active_validator, 'dismissed': AdminAlertGeneralStateEnum._dismissed_validator, 'in_progress': AdminAlertGeneralStateEnum._in_progress_validator, 'na': AdminAlertGeneralStateEnum._na_validator, 'resolved': AdminAlertGeneralStateEnum._resolved_validator, 'other': AdminAlertGeneralStateEnum._other_validator, } AdminAlertGeneralStateEnum.active = AdminAlertGeneralStateEnum('active') AdminAlertGeneralStateEnum.dismissed = AdminAlertGeneralStateEnum('dismissed') AdminAlertGeneralStateEnum.in_progress = AdminAlertGeneralStateEnum('in_progress') AdminAlertGeneralStateEnum.na = AdminAlertGeneralStateEnum('na') AdminAlertGeneralStateEnum.resolved = AdminAlertGeneralStateEnum('resolved') AdminAlertGeneralStateEnum.other = AdminAlertGeneralStateEnum('other') AdminAlertSeverityEnum._high_validator = bv.Void() AdminAlertSeverityEnum._info_validator = bv.Void() AdminAlertSeverityEnum._low_validator = bv.Void() AdminAlertSeverityEnum._medium_validator = bv.Void() AdminAlertSeverityEnum._na_validator = bv.Void() AdminAlertSeverityEnum._other_validator = bv.Void() AdminAlertSeverityEnum._tagmap = { 'high': AdminAlertSeverityEnum._high_validator, 'info': AdminAlertSeverityEnum._info_validator, 'low': AdminAlertSeverityEnum._low_validator, 'medium': AdminAlertSeverityEnum._medium_validator, 'na': AdminAlertSeverityEnum._na_validator, 'other': AdminAlertSeverityEnum._other_validator, } AdminAlertSeverityEnum.high = AdminAlertSeverityEnum('high') AdminAlertSeverityEnum.info = AdminAlertSeverityEnum('info') AdminAlertSeverityEnum.low = AdminAlertSeverityEnum('low') AdminAlertSeverityEnum.medium = AdminAlertSeverityEnum('medium') AdminAlertSeverityEnum.na = AdminAlertSeverityEnum('na') AdminAlertSeverityEnum.other = AdminAlertSeverityEnum('other') AdminAlertingAlertConfiguration.alert_state.validator = bv.Nullable(AdminAlertingAlertStatePolicy_validator) AdminAlertingAlertConfiguration.sensitivity_level.validator = bv.Nullable(AdminAlertingAlertSensitivity_validator) AdminAlertingAlertConfiguration.recipients_settings.validator = bv.Nullable(RecipientsConfiguration_validator) AdminAlertingAlertConfiguration.text.validator = bv.Nullable(bv.String()) AdminAlertingAlertConfiguration.excluded_file_extensions.validator = bv.Nullable(bv.String()) AdminAlertingAlertConfiguration._all_field_names_ = set([ 'alert_state', 'sensitivity_level', 'recipients_settings', 'text', 'excluded_file_extensions', ]) AdminAlertingAlertConfiguration._all_fields_ = [ ('alert_state', AdminAlertingAlertConfiguration.alert_state.validator), ('sensitivity_level', AdminAlertingAlertConfiguration.sensitivity_level.validator), ('recipients_settings', AdminAlertingAlertConfiguration.recipients_settings.validator), ('text', AdminAlertingAlertConfiguration.text.validator), ('excluded_file_extensions', AdminAlertingAlertConfiguration.excluded_file_extensions.validator), ] AdminAlertingAlertSensitivity._high_validator = bv.Void() AdminAlertingAlertSensitivity._highest_validator = bv.Void() AdminAlertingAlertSensitivity._invalid_validator = bv.Void() AdminAlertingAlertSensitivity._low_validator = bv.Void() AdminAlertingAlertSensitivity._lowest_validator = bv.Void() AdminAlertingAlertSensitivity._medium_validator = bv.Void() AdminAlertingAlertSensitivity._other_validator = bv.Void() AdminAlertingAlertSensitivity._tagmap = { 'high': AdminAlertingAlertSensitivity._high_validator, 'highest': AdminAlertingAlertSensitivity._highest_validator, 'invalid': AdminAlertingAlertSensitivity._invalid_validator, 'low': AdminAlertingAlertSensitivity._low_validator, 'lowest': AdminAlertingAlertSensitivity._lowest_validator, 'medium': AdminAlertingAlertSensitivity._medium_validator, 'other': AdminAlertingAlertSensitivity._other_validator, } AdminAlertingAlertSensitivity.high = AdminAlertingAlertSensitivity('high') AdminAlertingAlertSensitivity.highest = AdminAlertingAlertSensitivity('highest') AdminAlertingAlertSensitivity.invalid = AdminAlertingAlertSensitivity('invalid') AdminAlertingAlertSensitivity.low = AdminAlertingAlertSensitivity('low') AdminAlertingAlertSensitivity.lowest = AdminAlertingAlertSensitivity('lowest') AdminAlertingAlertSensitivity.medium = AdminAlertingAlertSensitivity('medium') AdminAlertingAlertSensitivity.other = AdminAlertingAlertSensitivity('other') AdminAlertingAlertStateChangedDetails.alert_name.validator = bv.String() AdminAlertingAlertStateChangedDetails.alert_severity.validator = AdminAlertSeverityEnum_validator AdminAlertingAlertStateChangedDetails.alert_category.validator = AdminAlertCategoryEnum_validator AdminAlertingAlertStateChangedDetails.alert_instance_id.validator = bv.String() AdminAlertingAlertStateChangedDetails.previous_value.validator = AdminAlertGeneralStateEnum_validator AdminAlertingAlertStateChangedDetails.new_value.validator = AdminAlertGeneralStateEnum_validator AdminAlertingAlertStateChangedDetails._all_field_names_ = set([ 'alert_name', 'alert_severity', 'alert_category', 'alert_instance_id', 'previous_value', 'new_value', ]) AdminAlertingAlertStateChangedDetails._all_fields_ = [ ('alert_name', AdminAlertingAlertStateChangedDetails.alert_name.validator), ('alert_severity', AdminAlertingAlertStateChangedDetails.alert_severity.validator), ('alert_category', AdminAlertingAlertStateChangedDetails.alert_category.validator), ('alert_instance_id', AdminAlertingAlertStateChangedDetails.alert_instance_id.validator), ('previous_value', AdminAlertingAlertStateChangedDetails.previous_value.validator), ('new_value', AdminAlertingAlertStateChangedDetails.new_value.validator), ] AdminAlertingAlertStateChangedType.description.validator = bv.String() AdminAlertingAlertStateChangedType._all_field_names_ = set(['description']) AdminAlertingAlertStateChangedType._all_fields_ = [('description', AdminAlertingAlertStateChangedType.description.validator)] AdminAlertingAlertStatePolicy._off_validator = bv.Void() AdminAlertingAlertStatePolicy._on_validator = bv.Void() AdminAlertingAlertStatePolicy._other_validator = bv.Void() AdminAlertingAlertStatePolicy._tagmap = { 'off': AdminAlertingAlertStatePolicy._off_validator, 'on': AdminAlertingAlertStatePolicy._on_validator, 'other': AdminAlertingAlertStatePolicy._other_validator, } AdminAlertingAlertStatePolicy.off = AdminAlertingAlertStatePolicy('off') AdminAlertingAlertStatePolicy.on = AdminAlertingAlertStatePolicy('on') AdminAlertingAlertStatePolicy.other = AdminAlertingAlertStatePolicy('other') AdminAlertingChangedAlertConfigDetails.alert_name.validator = bv.String() AdminAlertingChangedAlertConfigDetails.previous_alert_config.validator = AdminAlertingAlertConfiguration_validator AdminAlertingChangedAlertConfigDetails.new_alert_config.validator = AdminAlertingAlertConfiguration_validator AdminAlertingChangedAlertConfigDetails._all_field_names_ = set([ 'alert_name', 'previous_alert_config', 'new_alert_config', ]) AdminAlertingChangedAlertConfigDetails._all_fields_ = [ ('alert_name', AdminAlertingChangedAlertConfigDetails.alert_name.validator), ('previous_alert_config', AdminAlertingChangedAlertConfigDetails.previous_alert_config.validator), ('new_alert_config', AdminAlertingChangedAlertConfigDetails.new_alert_config.validator), ] AdminAlertingChangedAlertConfigType.description.validator = bv.String() AdminAlertingChangedAlertConfigType._all_field_names_ = set(['description']) AdminAlertingChangedAlertConfigType._all_fields_ = [('description', AdminAlertingChangedAlertConfigType.description.validator)] AdminAlertingTriggeredAlertDetails.alert_name.validator = bv.String() AdminAlertingTriggeredAlertDetails.alert_severity.validator = AdminAlertSeverityEnum_validator AdminAlertingTriggeredAlertDetails.alert_category.validator = AdminAlertCategoryEnum_validator AdminAlertingTriggeredAlertDetails.alert_instance_id.validator = bv.String() AdminAlertingTriggeredAlertDetails._all_field_names_ = set([ 'alert_name', 'alert_severity', 'alert_category', 'alert_instance_id', ]) AdminAlertingTriggeredAlertDetails._all_fields_ = [ ('alert_name', AdminAlertingTriggeredAlertDetails.alert_name.validator), ('alert_severity', AdminAlertingTriggeredAlertDetails.alert_severity.validator), ('alert_category', AdminAlertingTriggeredAlertDetails.alert_category.validator), ('alert_instance_id', AdminAlertingTriggeredAlertDetails.alert_instance_id.validator), ] AdminAlertingTriggeredAlertType.description.validator = bv.String() AdminAlertingTriggeredAlertType._all_field_names_ = set(['description']) AdminAlertingTriggeredAlertType._all_fields_ = [('description', AdminAlertingTriggeredAlertType.description.validator)] AdminConsoleAppPermission._default_for_listed_apps_validator = bv.Void() AdminConsoleAppPermission._default_for_unlisted_apps_validator = bv.Void() AdminConsoleAppPermission._other_validator = bv.Void() AdminConsoleAppPermission._tagmap = { 'default_for_listed_apps': AdminConsoleAppPermission._default_for_listed_apps_validator, 'default_for_unlisted_apps': AdminConsoleAppPermission._default_for_unlisted_apps_validator, 'other': AdminConsoleAppPermission._other_validator, } AdminConsoleAppPermission.default_for_listed_apps = AdminConsoleAppPermission('default_for_listed_apps') AdminConsoleAppPermission.default_for_unlisted_apps = AdminConsoleAppPermission('default_for_unlisted_apps') AdminConsoleAppPermission.other = AdminConsoleAppPermission('other') AdminConsoleAppPolicy._allow_validator = bv.Void() AdminConsoleAppPolicy._block_validator = bv.Void() AdminConsoleAppPolicy._default_validator = bv.Void() AdminConsoleAppPolicy._other_validator = bv.Void() AdminConsoleAppPolicy._tagmap = { 'allow': AdminConsoleAppPolicy._allow_validator, 'block': AdminConsoleAppPolicy._block_validator, 'default': AdminConsoleAppPolicy._default_validator, 'other': AdminConsoleAppPolicy._other_validator, } AdminConsoleAppPolicy.allow = AdminConsoleAppPolicy('allow') AdminConsoleAppPolicy.block = AdminConsoleAppPolicy('block') AdminConsoleAppPolicy.default = AdminConsoleAppPolicy('default') AdminConsoleAppPolicy.other = AdminConsoleAppPolicy('other') AdminEmailRemindersChangedDetails.new_value.validator = AdminEmailRemindersPolicy_validator AdminEmailRemindersChangedDetails.previous_value.validator = AdminEmailRemindersPolicy_validator AdminEmailRemindersChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) AdminEmailRemindersChangedDetails._all_fields_ = [ ('new_value', AdminEmailRemindersChangedDetails.new_value.validator), ('previous_value', AdminEmailRemindersChangedDetails.previous_value.validator), ] AdminEmailRemindersChangedType.description.validator = bv.String() AdminEmailRemindersChangedType._all_field_names_ = set(['description']) AdminEmailRemindersChangedType._all_fields_ = [('description', AdminEmailRemindersChangedType.description.validator)] AdminEmailRemindersPolicy._default_validator = bv.Void() AdminEmailRemindersPolicy._disabled_validator = bv.Void() AdminEmailRemindersPolicy._enabled_validator = bv.Void() AdminEmailRemindersPolicy._other_validator = bv.Void() AdminEmailRemindersPolicy._tagmap = { 'default': AdminEmailRemindersPolicy._default_validator, 'disabled': AdminEmailRemindersPolicy._disabled_validator, 'enabled': AdminEmailRemindersPolicy._enabled_validator, 'other': AdminEmailRemindersPolicy._other_validator, } AdminEmailRemindersPolicy.default = AdminEmailRemindersPolicy('default') AdminEmailRemindersPolicy.disabled = AdminEmailRemindersPolicy('disabled') AdminEmailRemindersPolicy.enabled = AdminEmailRemindersPolicy('enabled') AdminEmailRemindersPolicy.other = AdminEmailRemindersPolicy('other') AdminRole._billing_admin_validator = bv.Void() AdminRole._compliance_admin_validator = bv.Void() AdminRole._content_admin_validator = bv.Void() AdminRole._limited_admin_validator = bv.Void() AdminRole._member_only_validator = bv.Void() AdminRole._reporting_admin_validator = bv.Void() AdminRole._security_admin_validator = bv.Void() AdminRole._support_admin_validator = bv.Void() AdminRole._team_admin_validator = bv.Void() AdminRole._user_management_admin_validator = bv.Void() AdminRole._other_validator = bv.Void() AdminRole._tagmap = { 'billing_admin': AdminRole._billing_admin_validator, 'compliance_admin': AdminRole._compliance_admin_validator, 'content_admin': AdminRole._content_admin_validator, 'limited_admin': AdminRole._limited_admin_validator, 'member_only': AdminRole._member_only_validator, 'reporting_admin': AdminRole._reporting_admin_validator, 'security_admin': AdminRole._security_admin_validator, 'support_admin': AdminRole._support_admin_validator, 'team_admin': AdminRole._team_admin_validator, 'user_management_admin': AdminRole._user_management_admin_validator, 'other': AdminRole._other_validator, } AdminRole.billing_admin = AdminRole('billing_admin') AdminRole.compliance_admin = AdminRole('compliance_admin') AdminRole.content_admin = AdminRole('content_admin') AdminRole.limited_admin = AdminRole('limited_admin') AdminRole.member_only = AdminRole('member_only') AdminRole.reporting_admin = AdminRole('reporting_admin') AdminRole.security_admin = AdminRole('security_admin') AdminRole.support_admin = AdminRole('support_admin') AdminRole.team_admin = AdminRole('team_admin') AdminRole.user_management_admin = AdminRole('user_management_admin') AdminRole.other = AdminRole('other') AlertRecipientsSettingType._custom_list_validator = bv.Void() AlertRecipientsSettingType._invalid_validator = bv.Void() AlertRecipientsSettingType._none_validator = bv.Void() AlertRecipientsSettingType._team_admins_validator = bv.Void() AlertRecipientsSettingType._other_validator = bv.Void() AlertRecipientsSettingType._tagmap = { 'custom_list': AlertRecipientsSettingType._custom_list_validator, 'invalid': AlertRecipientsSettingType._invalid_validator, 'none': AlertRecipientsSettingType._none_validator, 'team_admins': AlertRecipientsSettingType._team_admins_validator, 'other': AlertRecipientsSettingType._other_validator, } AlertRecipientsSettingType.custom_list = AlertRecipientsSettingType('custom_list') AlertRecipientsSettingType.invalid = AlertRecipientsSettingType('invalid') AlertRecipientsSettingType.none = AlertRecipientsSettingType('none') AlertRecipientsSettingType.team_admins = AlertRecipientsSettingType('team_admins') AlertRecipientsSettingType.other = AlertRecipientsSettingType('other') AllowDownloadDisabledDetails._all_field_names_ = set([]) AllowDownloadDisabledDetails._all_fields_ = [] AllowDownloadDisabledType.description.validator = bv.String() AllowDownloadDisabledType._all_field_names_ = set(['description']) AllowDownloadDisabledType._all_fields_ = [('description', AllowDownloadDisabledType.description.validator)] AllowDownloadEnabledDetails._all_field_names_ = set([]) AllowDownloadEnabledDetails._all_fields_ = [] AllowDownloadEnabledType.description.validator = bv.String() AllowDownloadEnabledType._all_field_names_ = set(['description']) AllowDownloadEnabledType._all_fields_ = [('description', AllowDownloadEnabledType.description.validator)] ApiSessionLogInfo.request_id.validator = RequestId_validator ApiSessionLogInfo._all_field_names_ = set(['request_id']) ApiSessionLogInfo._all_fields_ = [('request_id', ApiSessionLogInfo.request_id.validator)] AppBlockedByPermissionsDetails.app_info.validator = AppLogInfo_validator AppBlockedByPermissionsDetails._all_field_names_ = set(['app_info']) AppBlockedByPermissionsDetails._all_fields_ = [('app_info', AppBlockedByPermissionsDetails.app_info.validator)] AppBlockedByPermissionsType.description.validator = bv.String() AppBlockedByPermissionsType._all_field_names_ = set(['description']) AppBlockedByPermissionsType._all_fields_ = [('description', AppBlockedByPermissionsType.description.validator)] AppLinkTeamDetails.app_info.validator = AppLogInfo_validator AppLinkTeamDetails._all_field_names_ = set(['app_info']) AppLinkTeamDetails._all_fields_ = [('app_info', AppLinkTeamDetails.app_info.validator)] AppLinkTeamType.description.validator = bv.String() AppLinkTeamType._all_field_names_ = set(['description']) AppLinkTeamType._all_fields_ = [('description', AppLinkTeamType.description.validator)] AppLinkUserDetails.app_info.validator = AppLogInfo_validator AppLinkUserDetails._all_field_names_ = set(['app_info']) AppLinkUserDetails._all_fields_ = [('app_info', AppLinkUserDetails.app_info.validator)] AppLinkUserType.description.validator = bv.String() AppLinkUserType._all_field_names_ = set(['description']) AppLinkUserType._all_fields_ = [('description', AppLinkUserType.description.validator)] AppLogInfo.app_id.validator = bv.Nullable(AppId_validator) AppLogInfo.display_name.validator = bv.Nullable(bv.String()) AppLogInfo._field_names_ = set([ 'app_id', 'display_name', ]) AppLogInfo._all_field_names_ = AppLogInfo._field_names_ AppLogInfo._fields_ = [ ('app_id', AppLogInfo.app_id.validator), ('display_name', AppLogInfo.display_name.validator), ] AppLogInfo._all_fields_ = AppLogInfo._fields_ AppLogInfo._tag_to_subtype_ = { ('user_or_team_linked_app',): UserOrTeamLinkedAppLogInfo_validator, ('user_linked_app',): UserLinkedAppLogInfo_validator, ('team_linked_app',): TeamLinkedAppLogInfo_validator, } AppLogInfo._pytype_to_tag_and_subtype_ = { UserOrTeamLinkedAppLogInfo: (('user_or_team_linked_app',), UserOrTeamLinkedAppLogInfo_validator), UserLinkedAppLogInfo: (('user_linked_app',), UserLinkedAppLogInfo_validator), TeamLinkedAppLogInfo: (('team_linked_app',), TeamLinkedAppLogInfo_validator), } AppLogInfo._is_catch_all_ = True AppPermissionsChangedDetails.app_name.validator = bv.Nullable(bv.String()) AppPermissionsChangedDetails.permission.validator = bv.Nullable(AdminConsoleAppPermission_validator) AppPermissionsChangedDetails.previous_value.validator = AdminConsoleAppPolicy_validator AppPermissionsChangedDetails.new_value.validator = AdminConsoleAppPolicy_validator AppPermissionsChangedDetails._all_field_names_ = set([ 'app_name', 'permission', 'previous_value', 'new_value', ]) AppPermissionsChangedDetails._all_fields_ = [ ('app_name', AppPermissionsChangedDetails.app_name.validator), ('permission', AppPermissionsChangedDetails.permission.validator), ('previous_value', AppPermissionsChangedDetails.previous_value.validator), ('new_value', AppPermissionsChangedDetails.new_value.validator), ] AppPermissionsChangedType.description.validator = bv.String() AppPermissionsChangedType._all_field_names_ = set(['description']) AppPermissionsChangedType._all_fields_ = [('description', AppPermissionsChangedType.description.validator)] AppUnlinkTeamDetails.app_info.validator = AppLogInfo_validator AppUnlinkTeamDetails._all_field_names_ = set(['app_info']) AppUnlinkTeamDetails._all_fields_ = [('app_info', AppUnlinkTeamDetails.app_info.validator)] AppUnlinkTeamType.description.validator = bv.String() AppUnlinkTeamType._all_field_names_ = set(['description']) AppUnlinkTeamType._all_fields_ = [('description', AppUnlinkTeamType.description.validator)] AppUnlinkUserDetails.app_info.validator = AppLogInfo_validator AppUnlinkUserDetails._all_field_names_ = set(['app_info']) AppUnlinkUserDetails._all_fields_ = [('app_info', AppUnlinkUserDetails.app_info.validator)] AppUnlinkUserType.description.validator = bv.String() AppUnlinkUserType._all_field_names_ = set(['description']) AppUnlinkUserType._all_fields_ = [('description', AppUnlinkUserType.description.validator)] ApplyNamingConventionDetails._all_field_names_ = set([]) ApplyNamingConventionDetails._all_fields_ = [] ApplyNamingConventionType.description.validator = bv.String() ApplyNamingConventionType._all_field_names_ = set(['description']) ApplyNamingConventionType._all_fields_ = [('description', ApplyNamingConventionType.description.validator)] AssetLogInfo._file_validator = FileLogInfo_validator AssetLogInfo._folder_validator = FolderLogInfo_validator AssetLogInfo._paper_document_validator = PaperDocumentLogInfo_validator AssetLogInfo._paper_folder_validator = PaperFolderLogInfo_validator AssetLogInfo._showcase_document_validator = ShowcaseDocumentLogInfo_validator AssetLogInfo._other_validator = bv.Void() AssetLogInfo._tagmap = { 'file': AssetLogInfo._file_validator, 'folder': AssetLogInfo._folder_validator, 'paper_document': AssetLogInfo._paper_document_validator, 'paper_folder': AssetLogInfo._paper_folder_validator, 'showcase_document': AssetLogInfo._showcase_document_validator, 'other': AssetLogInfo._other_validator, } AssetLogInfo.other = AssetLogInfo('other') BackupAdminInvitationSentDetails._all_field_names_ = set([]) BackupAdminInvitationSentDetails._all_fields_ = [] BackupAdminInvitationSentType.description.validator = bv.String() BackupAdminInvitationSentType._all_field_names_ = set(['description']) BackupAdminInvitationSentType._all_fields_ = [('description', BackupAdminInvitationSentType.description.validator)] BackupInvitationOpenedDetails._all_field_names_ = set([]) BackupInvitationOpenedDetails._all_fields_ = [] BackupInvitationOpenedType.description.validator = bv.String() BackupInvitationOpenedType._all_field_names_ = set(['description']) BackupInvitationOpenedType._all_fields_ = [('description', BackupInvitationOpenedType.description.validator)] BackupStatus._disabled_validator = bv.Void() BackupStatus._enabled_validator = bv.Void() BackupStatus._other_validator = bv.Void() BackupStatus._tagmap = { 'disabled': BackupStatus._disabled_validator, 'enabled': BackupStatus._enabled_validator, 'other': BackupStatus._other_validator, } BackupStatus.disabled = BackupStatus('disabled') BackupStatus.enabled = BackupStatus('enabled') BackupStatus.other = BackupStatus('other') BinderAddPageDetails.event_uuid.validator = bv.String() BinderAddPageDetails.doc_title.validator = bv.String() BinderAddPageDetails.binder_item_name.validator = bv.String() BinderAddPageDetails._all_field_names_ = set([ 'event_uuid', 'doc_title', 'binder_item_name', ]) BinderAddPageDetails._all_fields_ = [ ('event_uuid', BinderAddPageDetails.event_uuid.validator), ('doc_title', BinderAddPageDetails.doc_title.validator), ('binder_item_name', BinderAddPageDetails.binder_item_name.validator), ] BinderAddPageType.description.validator = bv.String() BinderAddPageType._all_field_names_ = set(['description']) BinderAddPageType._all_fields_ = [('description', BinderAddPageType.description.validator)] BinderAddSectionDetails.event_uuid.validator = bv.String() BinderAddSectionDetails.doc_title.validator = bv.String() BinderAddSectionDetails.binder_item_name.validator = bv.String() BinderAddSectionDetails._all_field_names_ = set([ 'event_uuid', 'doc_title', 'binder_item_name', ]) BinderAddSectionDetails._all_fields_ = [ ('event_uuid', BinderAddSectionDetails.event_uuid.validator), ('doc_title', BinderAddSectionDetails.doc_title.validator), ('binder_item_name', BinderAddSectionDetails.binder_item_name.validator), ] BinderAddSectionType.description.validator = bv.String() BinderAddSectionType._all_field_names_ = set(['description']) BinderAddSectionType._all_fields_ = [('description', BinderAddSectionType.description.validator)] BinderRemovePageDetails.event_uuid.validator = bv.String() BinderRemovePageDetails.doc_title.validator = bv.String() BinderRemovePageDetails.binder_item_name.validator = bv.String() BinderRemovePageDetails._all_field_names_ = set([ 'event_uuid', 'doc_title', 'binder_item_name', ]) BinderRemovePageDetails._all_fields_ = [ ('event_uuid', BinderRemovePageDetails.event_uuid.validator), ('doc_title', BinderRemovePageDetails.doc_title.validator), ('binder_item_name', BinderRemovePageDetails.binder_item_name.validator), ] BinderRemovePageType.description.validator = bv.String() BinderRemovePageType._all_field_names_ = set(['description']) BinderRemovePageType._all_fields_ = [('description', BinderRemovePageType.description.validator)] BinderRemoveSectionDetails.event_uuid.validator = bv.String() BinderRemoveSectionDetails.doc_title.validator = bv.String() BinderRemoveSectionDetails.binder_item_name.validator = bv.String() BinderRemoveSectionDetails._all_field_names_ = set([ 'event_uuid', 'doc_title', 'binder_item_name', ]) BinderRemoveSectionDetails._all_fields_ = [ ('event_uuid', BinderRemoveSectionDetails.event_uuid.validator), ('doc_title', BinderRemoveSectionDetails.doc_title.validator), ('binder_item_name', BinderRemoveSectionDetails.binder_item_name.validator), ] BinderRemoveSectionType.description.validator = bv.String() BinderRemoveSectionType._all_field_names_ = set(['description']) BinderRemoveSectionType._all_fields_ = [('description', BinderRemoveSectionType.description.validator)] BinderRenamePageDetails.event_uuid.validator = bv.String() BinderRenamePageDetails.doc_title.validator = bv.String() BinderRenamePageDetails.binder_item_name.validator = bv.String() BinderRenamePageDetails.previous_binder_item_name.validator = bv.Nullable(bv.String()) BinderRenamePageDetails._all_field_names_ = set([ 'event_uuid', 'doc_title', 'binder_item_name', 'previous_binder_item_name', ]) BinderRenamePageDetails._all_fields_ = [ ('event_uuid', BinderRenamePageDetails.event_uuid.validator), ('doc_title', BinderRenamePageDetails.doc_title.validator), ('binder_item_name', BinderRenamePageDetails.binder_item_name.validator), ('previous_binder_item_name', BinderRenamePageDetails.previous_binder_item_name.validator), ] BinderRenamePageType.description.validator = bv.String() BinderRenamePageType._all_field_names_ = set(['description']) BinderRenamePageType._all_fields_ = [('description', BinderRenamePageType.description.validator)] BinderRenameSectionDetails.event_uuid.validator = bv.String() BinderRenameSectionDetails.doc_title.validator = bv.String() BinderRenameSectionDetails.binder_item_name.validator = bv.String() BinderRenameSectionDetails.previous_binder_item_name.validator = bv.Nullable(bv.String()) BinderRenameSectionDetails._all_field_names_ = set([ 'event_uuid', 'doc_title', 'binder_item_name', 'previous_binder_item_name', ]) BinderRenameSectionDetails._all_fields_ = [ ('event_uuid', BinderRenameSectionDetails.event_uuid.validator), ('doc_title', BinderRenameSectionDetails.doc_title.validator), ('binder_item_name', BinderRenameSectionDetails.binder_item_name.validator), ('previous_binder_item_name', BinderRenameSectionDetails.previous_binder_item_name.validator), ] BinderRenameSectionType.description.validator = bv.String() BinderRenameSectionType._all_field_names_ = set(['description']) BinderRenameSectionType._all_fields_ = [('description', BinderRenameSectionType.description.validator)] BinderReorderPageDetails.event_uuid.validator = bv.String() BinderReorderPageDetails.doc_title.validator = bv.String() BinderReorderPageDetails.binder_item_name.validator = bv.String() BinderReorderPageDetails._all_field_names_ = set([ 'event_uuid', 'doc_title', 'binder_item_name', ]) BinderReorderPageDetails._all_fields_ = [ ('event_uuid', BinderReorderPageDetails.event_uuid.validator), ('doc_title', BinderReorderPageDetails.doc_title.validator), ('binder_item_name', BinderReorderPageDetails.binder_item_name.validator), ] BinderReorderPageType.description.validator = bv.String() BinderReorderPageType._all_field_names_ = set(['description']) BinderReorderPageType._all_fields_ = [('description', BinderReorderPageType.description.validator)] BinderReorderSectionDetails.event_uuid.validator = bv.String() BinderReorderSectionDetails.doc_title.validator = bv.String() BinderReorderSectionDetails.binder_item_name.validator = bv.String() BinderReorderSectionDetails._all_field_names_ = set([ 'event_uuid', 'doc_title', 'binder_item_name', ]) BinderReorderSectionDetails._all_fields_ = [ ('event_uuid', BinderReorderSectionDetails.event_uuid.validator), ('doc_title', BinderReorderSectionDetails.doc_title.validator), ('binder_item_name', BinderReorderSectionDetails.binder_item_name.validator), ] BinderReorderSectionType.description.validator = bv.String() BinderReorderSectionType._all_field_names_ = set(['description']) BinderReorderSectionType._all_fields_ = [('description', BinderReorderSectionType.description.validator)] CameraUploadsPolicy._disabled_validator = bv.Void() CameraUploadsPolicy._enabled_validator = bv.Void() CameraUploadsPolicy._other_validator = bv.Void() CameraUploadsPolicy._tagmap = { 'disabled': CameraUploadsPolicy._disabled_validator, 'enabled': CameraUploadsPolicy._enabled_validator, 'other': CameraUploadsPolicy._other_validator, } CameraUploadsPolicy.disabled = CameraUploadsPolicy('disabled') CameraUploadsPolicy.enabled = CameraUploadsPolicy('enabled') CameraUploadsPolicy.other = CameraUploadsPolicy('other') CameraUploadsPolicyChangedDetails.new_value.validator = CameraUploadsPolicy_validator CameraUploadsPolicyChangedDetails.previous_value.validator = CameraUploadsPolicy_validator CameraUploadsPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) CameraUploadsPolicyChangedDetails._all_fields_ = [ ('new_value', CameraUploadsPolicyChangedDetails.new_value.validator), ('previous_value', CameraUploadsPolicyChangedDetails.previous_value.validator), ] CameraUploadsPolicyChangedType.description.validator = bv.String() CameraUploadsPolicyChangedType._all_field_names_ = set(['description']) CameraUploadsPolicyChangedType._all_fields_ = [('description', CameraUploadsPolicyChangedType.description.validator)] CaptureTranscriptPolicy._default_validator = bv.Void() CaptureTranscriptPolicy._disabled_validator = bv.Void() CaptureTranscriptPolicy._enabled_validator = bv.Void() CaptureTranscriptPolicy._other_validator = bv.Void() CaptureTranscriptPolicy._tagmap = { 'default': CaptureTranscriptPolicy._default_validator, 'disabled': CaptureTranscriptPolicy._disabled_validator, 'enabled': CaptureTranscriptPolicy._enabled_validator, 'other': CaptureTranscriptPolicy._other_validator, } CaptureTranscriptPolicy.default = CaptureTranscriptPolicy('default') CaptureTranscriptPolicy.disabled = CaptureTranscriptPolicy('disabled') CaptureTranscriptPolicy.enabled = CaptureTranscriptPolicy('enabled') CaptureTranscriptPolicy.other = CaptureTranscriptPolicy('other') CaptureTranscriptPolicyChangedDetails.new_value.validator = CaptureTranscriptPolicy_validator CaptureTranscriptPolicyChangedDetails.previous_value.validator = CaptureTranscriptPolicy_validator CaptureTranscriptPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) CaptureTranscriptPolicyChangedDetails._all_fields_ = [ ('new_value', CaptureTranscriptPolicyChangedDetails.new_value.validator), ('previous_value', CaptureTranscriptPolicyChangedDetails.previous_value.validator), ] CaptureTranscriptPolicyChangedType.description.validator = bv.String() CaptureTranscriptPolicyChangedType._all_field_names_ = set(['description']) CaptureTranscriptPolicyChangedType._all_fields_ = [('description', CaptureTranscriptPolicyChangedType.description.validator)] Certificate.subject.validator = bv.String() Certificate.issuer.validator = bv.String() Certificate.issue_date.validator = bv.String() Certificate.expiration_date.validator = bv.String() Certificate.serial_number.validator = bv.String() Certificate.sha1_fingerprint.validator = bv.String() Certificate.common_name.validator = bv.Nullable(bv.String()) Certificate._all_field_names_ = set([ 'subject', 'issuer', 'issue_date', 'expiration_date', 'serial_number', 'sha1_fingerprint', 'common_name', ]) Certificate._all_fields_ = [ ('subject', Certificate.subject.validator), ('issuer', Certificate.issuer.validator), ('issue_date', Certificate.issue_date.validator), ('expiration_date', Certificate.expiration_date.validator), ('serial_number', Certificate.serial_number.validator), ('sha1_fingerprint', Certificate.sha1_fingerprint.validator), ('common_name', Certificate.common_name.validator), ] ChangeLinkExpirationPolicy._allowed_validator = bv.Void() ChangeLinkExpirationPolicy._not_allowed_validator = bv.Void() ChangeLinkExpirationPolicy._other_validator = bv.Void() ChangeLinkExpirationPolicy._tagmap = { 'allowed': ChangeLinkExpirationPolicy._allowed_validator, 'not_allowed': ChangeLinkExpirationPolicy._not_allowed_validator, 'other': ChangeLinkExpirationPolicy._other_validator, } ChangeLinkExpirationPolicy.allowed = ChangeLinkExpirationPolicy('allowed') ChangeLinkExpirationPolicy.not_allowed = ChangeLinkExpirationPolicy('not_allowed') ChangeLinkExpirationPolicy.other = ChangeLinkExpirationPolicy('other') ChangedEnterpriseAdminRoleDetails.previous_value.validator = FedAdminRole_validator ChangedEnterpriseAdminRoleDetails.new_value.validator = FedAdminRole_validator ChangedEnterpriseAdminRoleDetails.team_name.validator = bv.String() ChangedEnterpriseAdminRoleDetails._all_field_names_ = set([ 'previous_value', 'new_value', 'team_name', ]) ChangedEnterpriseAdminRoleDetails._all_fields_ = [ ('previous_value', ChangedEnterpriseAdminRoleDetails.previous_value.validator), ('new_value', ChangedEnterpriseAdminRoleDetails.new_value.validator), ('team_name', ChangedEnterpriseAdminRoleDetails.team_name.validator), ] ChangedEnterpriseAdminRoleType.description.validator = bv.String() ChangedEnterpriseAdminRoleType._all_field_names_ = set(['description']) ChangedEnterpriseAdminRoleType._all_fields_ = [('description', ChangedEnterpriseAdminRoleType.description.validator)] ChangedEnterpriseConnectedTeamStatusDetails.action.validator = FedHandshakeAction_validator ChangedEnterpriseConnectedTeamStatusDetails.additional_info.validator = FederationStatusChangeAdditionalInfo_validator ChangedEnterpriseConnectedTeamStatusDetails.previous_value.validator = TrustedTeamsRequestState_validator ChangedEnterpriseConnectedTeamStatusDetails.new_value.validator = TrustedTeamsRequestState_validator ChangedEnterpriseConnectedTeamStatusDetails._all_field_names_ = set([ 'action', 'additional_info', 'previous_value', 'new_value', ]) ChangedEnterpriseConnectedTeamStatusDetails._all_fields_ = [ ('action', ChangedEnterpriseConnectedTeamStatusDetails.action.validator), ('additional_info', ChangedEnterpriseConnectedTeamStatusDetails.additional_info.validator), ('previous_value', ChangedEnterpriseConnectedTeamStatusDetails.previous_value.validator), ('new_value', ChangedEnterpriseConnectedTeamStatusDetails.new_value.validator), ] ChangedEnterpriseConnectedTeamStatusType.description.validator = bv.String() ChangedEnterpriseConnectedTeamStatusType._all_field_names_ = set(['description']) ChangedEnterpriseConnectedTeamStatusType._all_fields_ = [('description', ChangedEnterpriseConnectedTeamStatusType.description.validator)] ClassificationChangePolicyDetails.previous_value.validator = ClassificationPolicyEnumWrapper_validator ClassificationChangePolicyDetails.new_value.validator = ClassificationPolicyEnumWrapper_validator ClassificationChangePolicyDetails.classification_type.validator = ClassificationType_validator ClassificationChangePolicyDetails._all_field_names_ = set([ 'previous_value', 'new_value', 'classification_type', ]) ClassificationChangePolicyDetails._all_fields_ = [ ('previous_value', ClassificationChangePolicyDetails.previous_value.validator), ('new_value', ClassificationChangePolicyDetails.new_value.validator), ('classification_type', ClassificationChangePolicyDetails.classification_type.validator), ] ClassificationChangePolicyType.description.validator = bv.String() ClassificationChangePolicyType._all_field_names_ = set(['description']) ClassificationChangePolicyType._all_fields_ = [('description', ClassificationChangePolicyType.description.validator)] ClassificationCreateReportDetails._all_field_names_ = set([]) ClassificationCreateReportDetails._all_fields_ = [] ClassificationCreateReportFailDetails.failure_reason.validator = team.TeamReportFailureReason_validator ClassificationCreateReportFailDetails._all_field_names_ = set(['failure_reason']) ClassificationCreateReportFailDetails._all_fields_ = [('failure_reason', ClassificationCreateReportFailDetails.failure_reason.validator)] ClassificationCreateReportFailType.description.validator = bv.String() ClassificationCreateReportFailType._all_field_names_ = set(['description']) ClassificationCreateReportFailType._all_fields_ = [('description', ClassificationCreateReportFailType.description.validator)] ClassificationCreateReportType.description.validator = bv.String() ClassificationCreateReportType._all_field_names_ = set(['description']) ClassificationCreateReportType._all_fields_ = [('description', ClassificationCreateReportType.description.validator)] ClassificationPolicyEnumWrapper._disabled_validator = bv.Void() ClassificationPolicyEnumWrapper._enabled_validator = bv.Void() ClassificationPolicyEnumWrapper._member_and_team_folders_validator = bv.Void() ClassificationPolicyEnumWrapper._team_folders_validator = bv.Void() ClassificationPolicyEnumWrapper._other_validator = bv.Void() ClassificationPolicyEnumWrapper._tagmap = { 'disabled': ClassificationPolicyEnumWrapper._disabled_validator, 'enabled': ClassificationPolicyEnumWrapper._enabled_validator, 'member_and_team_folders': ClassificationPolicyEnumWrapper._member_and_team_folders_validator, 'team_folders': ClassificationPolicyEnumWrapper._team_folders_validator, 'other': ClassificationPolicyEnumWrapper._other_validator, } ClassificationPolicyEnumWrapper.disabled = ClassificationPolicyEnumWrapper('disabled') ClassificationPolicyEnumWrapper.enabled = ClassificationPolicyEnumWrapper('enabled') ClassificationPolicyEnumWrapper.member_and_team_folders = ClassificationPolicyEnumWrapper('member_and_team_folders') ClassificationPolicyEnumWrapper.team_folders = ClassificationPolicyEnumWrapper('team_folders') ClassificationPolicyEnumWrapper.other = ClassificationPolicyEnumWrapper('other') ClassificationType._personal_information_validator = bv.Void() ClassificationType._pii_validator = bv.Void() ClassificationType._other_validator = bv.Void() ClassificationType._tagmap = { 'personal_information': ClassificationType._personal_information_validator, 'pii': ClassificationType._pii_validator, 'other': ClassificationType._other_validator, } ClassificationType.personal_information = ClassificationType('personal_information') ClassificationType.pii = ClassificationType('pii') ClassificationType.other = ClassificationType('other') CollectionShareDetails.album_name.validator = bv.String() CollectionShareDetails._all_field_names_ = set(['album_name']) CollectionShareDetails._all_fields_ = [('album_name', CollectionShareDetails.album_name.validator)] CollectionShareType.description.validator = bv.String() CollectionShareType._all_field_names_ = set(['description']) CollectionShareType._all_fields_ = [('description', CollectionShareType.description.validator)] ComputerBackupPolicy._default_validator = bv.Void() ComputerBackupPolicy._disabled_validator = bv.Void() ComputerBackupPolicy._enabled_validator = bv.Void() ComputerBackupPolicy._other_validator = bv.Void() ComputerBackupPolicy._tagmap = { 'default': ComputerBackupPolicy._default_validator, 'disabled': ComputerBackupPolicy._disabled_validator, 'enabled': ComputerBackupPolicy._enabled_validator, 'other': ComputerBackupPolicy._other_validator, } ComputerBackupPolicy.default = ComputerBackupPolicy('default') ComputerBackupPolicy.disabled = ComputerBackupPolicy('disabled') ComputerBackupPolicy.enabled = ComputerBackupPolicy('enabled') ComputerBackupPolicy.other = ComputerBackupPolicy('other') ComputerBackupPolicyChangedDetails.new_value.validator = ComputerBackupPolicy_validator ComputerBackupPolicyChangedDetails.previous_value.validator = ComputerBackupPolicy_validator ComputerBackupPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) ComputerBackupPolicyChangedDetails._all_fields_ = [ ('new_value', ComputerBackupPolicyChangedDetails.new_value.validator), ('previous_value', ComputerBackupPolicyChangedDetails.previous_value.validator), ] ComputerBackupPolicyChangedType.description.validator = bv.String() ComputerBackupPolicyChangedType._all_field_names_ = set(['description']) ComputerBackupPolicyChangedType._all_fields_ = [('description', ComputerBackupPolicyChangedType.description.validator)] ConnectedTeamName.team.validator = bv.String() ConnectedTeamName._all_field_names_ = set(['team']) ConnectedTeamName._all_fields_ = [('team', ConnectedTeamName.team.validator)] ContentAdministrationPolicyChangedDetails.new_value.validator = bv.String() ContentAdministrationPolicyChangedDetails.previous_value.validator = bv.String() ContentAdministrationPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) ContentAdministrationPolicyChangedDetails._all_fields_ = [ ('new_value', ContentAdministrationPolicyChangedDetails.new_value.validator), ('previous_value', ContentAdministrationPolicyChangedDetails.previous_value.validator), ] ContentAdministrationPolicyChangedType.description.validator = bv.String() ContentAdministrationPolicyChangedType._all_field_names_ = set(['description']) ContentAdministrationPolicyChangedType._all_fields_ = [('description', ContentAdministrationPolicyChangedType.description.validator)] ContentPermanentDeletePolicy._disabled_validator = bv.Void() ContentPermanentDeletePolicy._enabled_validator = bv.Void() ContentPermanentDeletePolicy._other_validator = bv.Void() ContentPermanentDeletePolicy._tagmap = { 'disabled': ContentPermanentDeletePolicy._disabled_validator, 'enabled': ContentPermanentDeletePolicy._enabled_validator, 'other': ContentPermanentDeletePolicy._other_validator, } ContentPermanentDeletePolicy.disabled = ContentPermanentDeletePolicy('disabled') ContentPermanentDeletePolicy.enabled = ContentPermanentDeletePolicy('enabled') ContentPermanentDeletePolicy.other = ContentPermanentDeletePolicy('other') ContextLogInfo._anonymous_validator = bv.Void() ContextLogInfo._non_team_member_validator = NonTeamMemberLogInfo_validator ContextLogInfo._organization_team_validator = TeamLogInfo_validator ContextLogInfo._team_validator = bv.Void() ContextLogInfo._team_member_validator = TeamMemberLogInfo_validator ContextLogInfo._trusted_non_team_member_validator = TrustedNonTeamMemberLogInfo_validator ContextLogInfo._other_validator = bv.Void() ContextLogInfo._tagmap = { 'anonymous': ContextLogInfo._anonymous_validator, 'non_team_member': ContextLogInfo._non_team_member_validator, 'organization_team': ContextLogInfo._organization_team_validator, 'team': ContextLogInfo._team_validator, 'team_member': ContextLogInfo._team_member_validator, 'trusted_non_team_member': ContextLogInfo._trusted_non_team_member_validator, 'other': ContextLogInfo._other_validator, } ContextLogInfo.anonymous = ContextLogInfo('anonymous') ContextLogInfo.team = ContextLogInfo('team') ContextLogInfo.other = ContextLogInfo('other') CreateFolderDetails._all_field_names_ = set([]) CreateFolderDetails._all_fields_ = [] CreateFolderType.description.validator = bv.String() CreateFolderType._all_field_names_ = set(['description']) CreateFolderType._all_fields_ = [('description', CreateFolderType.description.validator)] CreateTeamInviteLinkDetails.link_url.validator = bv.String() CreateTeamInviteLinkDetails.expiry_date.validator = bv.String() CreateTeamInviteLinkDetails._all_field_names_ = set([ 'link_url', 'expiry_date', ]) CreateTeamInviteLinkDetails._all_fields_ = [ ('link_url', CreateTeamInviteLinkDetails.link_url.validator), ('expiry_date', CreateTeamInviteLinkDetails.expiry_date.validator), ] CreateTeamInviteLinkType.description.validator = bv.String() CreateTeamInviteLinkType._all_field_names_ = set(['description']) CreateTeamInviteLinkType._all_fields_ = [('description', CreateTeamInviteLinkType.description.validator)] DataPlacementRestrictionChangePolicyDetails.previous_value.validator = PlacementRestriction_validator DataPlacementRestrictionChangePolicyDetails.new_value.validator = PlacementRestriction_validator DataPlacementRestrictionChangePolicyDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) DataPlacementRestrictionChangePolicyDetails._all_fields_ = [ ('previous_value', DataPlacementRestrictionChangePolicyDetails.previous_value.validator), ('new_value', DataPlacementRestrictionChangePolicyDetails.new_value.validator), ] DataPlacementRestrictionChangePolicyType.description.validator = bv.String() DataPlacementRestrictionChangePolicyType._all_field_names_ = set(['description']) DataPlacementRestrictionChangePolicyType._all_fields_ = [('description', DataPlacementRestrictionChangePolicyType.description.validator)] DataPlacementRestrictionSatisfyPolicyDetails.placement_restriction.validator = PlacementRestriction_validator DataPlacementRestrictionSatisfyPolicyDetails._all_field_names_ = set(['placement_restriction']) DataPlacementRestrictionSatisfyPolicyDetails._all_fields_ = [('placement_restriction', DataPlacementRestrictionSatisfyPolicyDetails.placement_restriction.validator)] DataPlacementRestrictionSatisfyPolicyType.description.validator = bv.String() DataPlacementRestrictionSatisfyPolicyType._all_field_names_ = set(['description']) DataPlacementRestrictionSatisfyPolicyType._all_fields_ = [('description', DataPlacementRestrictionSatisfyPolicyType.description.validator)] DataResidencyMigrationRequestSuccessfulDetails._all_field_names_ = set([]) DataResidencyMigrationRequestSuccessfulDetails._all_fields_ = [] DataResidencyMigrationRequestSuccessfulType.description.validator = bv.String() DataResidencyMigrationRequestSuccessfulType._all_field_names_ = set(['description']) DataResidencyMigrationRequestSuccessfulType._all_fields_ = [('description', DataResidencyMigrationRequestSuccessfulType.description.validator)] DataResidencyMigrationRequestUnsuccessfulDetails._all_field_names_ = set([]) DataResidencyMigrationRequestUnsuccessfulDetails._all_fields_ = [] DataResidencyMigrationRequestUnsuccessfulType.description.validator = bv.String() DataResidencyMigrationRequestUnsuccessfulType._all_field_names_ = set(['description']) DataResidencyMigrationRequestUnsuccessfulType._all_fields_ = [('description', DataResidencyMigrationRequestUnsuccessfulType.description.validator)] DefaultLinkExpirationDaysPolicy._day_1_validator = bv.Void() DefaultLinkExpirationDaysPolicy._day_180_validator = bv.Void() DefaultLinkExpirationDaysPolicy._day_3_validator = bv.Void() DefaultLinkExpirationDaysPolicy._day_30_validator = bv.Void() DefaultLinkExpirationDaysPolicy._day_7_validator = bv.Void() DefaultLinkExpirationDaysPolicy._day_90_validator = bv.Void() DefaultLinkExpirationDaysPolicy._none_validator = bv.Void() DefaultLinkExpirationDaysPolicy._year_1_validator = bv.Void() DefaultLinkExpirationDaysPolicy._other_validator = bv.Void() DefaultLinkExpirationDaysPolicy._tagmap = { 'day_1': DefaultLinkExpirationDaysPolicy._day_1_validator, 'day_180': DefaultLinkExpirationDaysPolicy._day_180_validator, 'day_3': DefaultLinkExpirationDaysPolicy._day_3_validator, 'day_30': DefaultLinkExpirationDaysPolicy._day_30_validator, 'day_7': DefaultLinkExpirationDaysPolicy._day_7_validator, 'day_90': DefaultLinkExpirationDaysPolicy._day_90_validator, 'none': DefaultLinkExpirationDaysPolicy._none_validator, 'year_1': DefaultLinkExpirationDaysPolicy._year_1_validator, 'other': DefaultLinkExpirationDaysPolicy._other_validator, } DefaultLinkExpirationDaysPolicy.day_1 = DefaultLinkExpirationDaysPolicy('day_1') DefaultLinkExpirationDaysPolicy.day_180 = DefaultLinkExpirationDaysPolicy('day_180') DefaultLinkExpirationDaysPolicy.day_3 = DefaultLinkExpirationDaysPolicy('day_3') DefaultLinkExpirationDaysPolicy.day_30 = DefaultLinkExpirationDaysPolicy('day_30') DefaultLinkExpirationDaysPolicy.day_7 = DefaultLinkExpirationDaysPolicy('day_7') DefaultLinkExpirationDaysPolicy.day_90 = DefaultLinkExpirationDaysPolicy('day_90') DefaultLinkExpirationDaysPolicy.none = DefaultLinkExpirationDaysPolicy('none') DefaultLinkExpirationDaysPolicy.year_1 = DefaultLinkExpirationDaysPolicy('year_1') DefaultLinkExpirationDaysPolicy.other = DefaultLinkExpirationDaysPolicy('other') DeleteTeamInviteLinkDetails.link_url.validator = bv.String() DeleteTeamInviteLinkDetails._all_field_names_ = set(['link_url']) DeleteTeamInviteLinkDetails._all_fields_ = [('link_url', DeleteTeamInviteLinkDetails.link_url.validator)] DeleteTeamInviteLinkType.description.validator = bv.String() DeleteTeamInviteLinkType._all_field_names_ = set(['description']) DeleteTeamInviteLinkType._all_fields_ = [('description', DeleteTeamInviteLinkType.description.validator)] DeviceSessionLogInfo.ip_address.validator = bv.Nullable(IpAddress_validator) DeviceSessionLogInfo.created.validator = bv.Nullable(common.DropboxTimestamp_validator) DeviceSessionLogInfo.updated.validator = bv.Nullable(common.DropboxTimestamp_validator) DeviceSessionLogInfo._field_names_ = set([ 'ip_address', 'created', 'updated', ]) DeviceSessionLogInfo._all_field_names_ = DeviceSessionLogInfo._field_names_ DeviceSessionLogInfo._fields_ = [ ('ip_address', DeviceSessionLogInfo.ip_address.validator), ('created', DeviceSessionLogInfo.created.validator), ('updated', DeviceSessionLogInfo.updated.validator), ] DeviceSessionLogInfo._all_fields_ = DeviceSessionLogInfo._fields_ DeviceSessionLogInfo._tag_to_subtype_ = { ('desktop_device_session',): DesktopDeviceSessionLogInfo_validator, ('mobile_device_session',): MobileDeviceSessionLogInfo_validator, ('web_device_session',): WebDeviceSessionLogInfo_validator, ('legacy_device_session',): LegacyDeviceSessionLogInfo_validator, } DeviceSessionLogInfo._pytype_to_tag_and_subtype_ = { DesktopDeviceSessionLogInfo: (('desktop_device_session',), DesktopDeviceSessionLogInfo_validator), MobileDeviceSessionLogInfo: (('mobile_device_session',), MobileDeviceSessionLogInfo_validator), WebDeviceSessionLogInfo: (('web_device_session',), WebDeviceSessionLogInfo_validator), LegacyDeviceSessionLogInfo: (('legacy_device_session',), LegacyDeviceSessionLogInfo_validator), } DeviceSessionLogInfo._is_catch_all_ = True DesktopDeviceSessionLogInfo.session_info.validator = bv.Nullable(DesktopSessionLogInfo_validator) DesktopDeviceSessionLogInfo.host_name.validator = bv.String() DesktopDeviceSessionLogInfo.client_type.validator = team.DesktopPlatform_validator DesktopDeviceSessionLogInfo.client_version.validator = bv.Nullable(bv.String()) DesktopDeviceSessionLogInfo.platform.validator = bv.String() DesktopDeviceSessionLogInfo.is_delete_on_unlink_supported.validator = bv.Boolean() DesktopDeviceSessionLogInfo._field_names_ = set([ 'session_info', 'host_name', 'client_type', 'client_version', 'platform', 'is_delete_on_unlink_supported', ]) DesktopDeviceSessionLogInfo._all_field_names_ = DeviceSessionLogInfo._all_field_names_.union(DesktopDeviceSessionLogInfo._field_names_) DesktopDeviceSessionLogInfo._fields_ = [ ('session_info', DesktopDeviceSessionLogInfo.session_info.validator), ('host_name', DesktopDeviceSessionLogInfo.host_name.validator), ('client_type', DesktopDeviceSessionLogInfo.client_type.validator), ('client_version', DesktopDeviceSessionLogInfo.client_version.validator), ('platform', DesktopDeviceSessionLogInfo.platform.validator), ('is_delete_on_unlink_supported', DesktopDeviceSessionLogInfo.is_delete_on_unlink_supported.validator), ] DesktopDeviceSessionLogInfo._all_fields_ = DeviceSessionLogInfo._all_fields_ + DesktopDeviceSessionLogInfo._fields_ SessionLogInfo.session_id.validator = bv.Nullable(common.SessionId_validator) SessionLogInfo._field_names_ = set(['session_id']) SessionLogInfo._all_field_names_ = SessionLogInfo._field_names_ SessionLogInfo._fields_ = [('session_id', SessionLogInfo.session_id.validator)] SessionLogInfo._all_fields_ = SessionLogInfo._fields_ SessionLogInfo._tag_to_subtype_ = { ('web',): WebSessionLogInfo_validator, ('desktop',): DesktopSessionLogInfo_validator, ('mobile',): MobileSessionLogInfo_validator, } SessionLogInfo._pytype_to_tag_and_subtype_ = { WebSessionLogInfo: (('web',), WebSessionLogInfo_validator), DesktopSessionLogInfo: (('desktop',), DesktopSessionLogInfo_validator), MobileSessionLogInfo: (('mobile',), MobileSessionLogInfo_validator), } SessionLogInfo._is_catch_all_ = True DesktopSessionLogInfo._field_names_ = set([]) DesktopSessionLogInfo._all_field_names_ = SessionLogInfo._all_field_names_.union(DesktopSessionLogInfo._field_names_) DesktopSessionLogInfo._fields_ = [] DesktopSessionLogInfo._all_fields_ = SessionLogInfo._all_fields_ + DesktopSessionLogInfo._fields_ DeviceApprovalsAddExceptionDetails._all_field_names_ = set([]) DeviceApprovalsAddExceptionDetails._all_fields_ = [] DeviceApprovalsAddExceptionType.description.validator = bv.String() DeviceApprovalsAddExceptionType._all_field_names_ = set(['description']) DeviceApprovalsAddExceptionType._all_fields_ = [('description', DeviceApprovalsAddExceptionType.description.validator)] DeviceApprovalsChangeDesktopPolicyDetails.new_value.validator = bv.Nullable(DeviceApprovalsPolicy_validator) DeviceApprovalsChangeDesktopPolicyDetails.previous_value.validator = bv.Nullable(DeviceApprovalsPolicy_validator) DeviceApprovalsChangeDesktopPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) DeviceApprovalsChangeDesktopPolicyDetails._all_fields_ = [ ('new_value', DeviceApprovalsChangeDesktopPolicyDetails.new_value.validator), ('previous_value', DeviceApprovalsChangeDesktopPolicyDetails.previous_value.validator), ] DeviceApprovalsChangeDesktopPolicyType.description.validator = bv.String() DeviceApprovalsChangeDesktopPolicyType._all_field_names_ = set(['description']) DeviceApprovalsChangeDesktopPolicyType._all_fields_ = [('description', DeviceApprovalsChangeDesktopPolicyType.description.validator)] DeviceApprovalsChangeMobilePolicyDetails.new_value.validator = bv.Nullable(DeviceApprovalsPolicy_validator) DeviceApprovalsChangeMobilePolicyDetails.previous_value.validator = bv.Nullable(DeviceApprovalsPolicy_validator) DeviceApprovalsChangeMobilePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) DeviceApprovalsChangeMobilePolicyDetails._all_fields_ = [ ('new_value', DeviceApprovalsChangeMobilePolicyDetails.new_value.validator), ('previous_value', DeviceApprovalsChangeMobilePolicyDetails.previous_value.validator), ] DeviceApprovalsChangeMobilePolicyType.description.validator = bv.String() DeviceApprovalsChangeMobilePolicyType._all_field_names_ = set(['description']) DeviceApprovalsChangeMobilePolicyType._all_fields_ = [('description', DeviceApprovalsChangeMobilePolicyType.description.validator)] DeviceApprovalsChangeOverageActionDetails.new_value.validator = bv.Nullable(team_policies.RolloutMethod_validator) DeviceApprovalsChangeOverageActionDetails.previous_value.validator = bv.Nullable(team_policies.RolloutMethod_validator) DeviceApprovalsChangeOverageActionDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) DeviceApprovalsChangeOverageActionDetails._all_fields_ = [ ('new_value', DeviceApprovalsChangeOverageActionDetails.new_value.validator), ('previous_value', DeviceApprovalsChangeOverageActionDetails.previous_value.validator), ] DeviceApprovalsChangeOverageActionType.description.validator = bv.String() DeviceApprovalsChangeOverageActionType._all_field_names_ = set(['description']) DeviceApprovalsChangeOverageActionType._all_fields_ = [('description', DeviceApprovalsChangeOverageActionType.description.validator)] DeviceApprovalsChangeUnlinkActionDetails.new_value.validator = bv.Nullable(DeviceUnlinkPolicy_validator) DeviceApprovalsChangeUnlinkActionDetails.previous_value.validator = bv.Nullable(DeviceUnlinkPolicy_validator) DeviceApprovalsChangeUnlinkActionDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) DeviceApprovalsChangeUnlinkActionDetails._all_fields_ = [ ('new_value', DeviceApprovalsChangeUnlinkActionDetails.new_value.validator), ('previous_value', DeviceApprovalsChangeUnlinkActionDetails.previous_value.validator), ] DeviceApprovalsChangeUnlinkActionType.description.validator = bv.String() DeviceApprovalsChangeUnlinkActionType._all_field_names_ = set(['description']) DeviceApprovalsChangeUnlinkActionType._all_fields_ = [('description', DeviceApprovalsChangeUnlinkActionType.description.validator)] DeviceApprovalsPolicy._limited_validator = bv.Void() DeviceApprovalsPolicy._unlimited_validator = bv.Void() DeviceApprovalsPolicy._other_validator = bv.Void() DeviceApprovalsPolicy._tagmap = { 'limited': DeviceApprovalsPolicy._limited_validator, 'unlimited': DeviceApprovalsPolicy._unlimited_validator, 'other': DeviceApprovalsPolicy._other_validator, } DeviceApprovalsPolicy.limited = DeviceApprovalsPolicy('limited') DeviceApprovalsPolicy.unlimited = DeviceApprovalsPolicy('unlimited') DeviceApprovalsPolicy.other = DeviceApprovalsPolicy('other') DeviceApprovalsRemoveExceptionDetails._all_field_names_ = set([]) DeviceApprovalsRemoveExceptionDetails._all_fields_ = [] DeviceApprovalsRemoveExceptionType.description.validator = bv.String() DeviceApprovalsRemoveExceptionType._all_field_names_ = set(['description']) DeviceApprovalsRemoveExceptionType._all_fields_ = [('description', DeviceApprovalsRemoveExceptionType.description.validator)] DeviceChangeIpDesktopDetails.device_session_info.validator = DeviceSessionLogInfo_validator DeviceChangeIpDesktopDetails._all_field_names_ = set(['device_session_info']) DeviceChangeIpDesktopDetails._all_fields_ = [('device_session_info', DeviceChangeIpDesktopDetails.device_session_info.validator)] DeviceChangeIpDesktopType.description.validator = bv.String() DeviceChangeIpDesktopType._all_field_names_ = set(['description']) DeviceChangeIpDesktopType._all_fields_ = [('description', DeviceChangeIpDesktopType.description.validator)] DeviceChangeIpMobileDetails.device_session_info.validator = bv.Nullable(DeviceSessionLogInfo_validator) DeviceChangeIpMobileDetails._all_field_names_ = set(['device_session_info']) DeviceChangeIpMobileDetails._all_fields_ = [('device_session_info', DeviceChangeIpMobileDetails.device_session_info.validator)] DeviceChangeIpMobileType.description.validator = bv.String() DeviceChangeIpMobileType._all_field_names_ = set(['description']) DeviceChangeIpMobileType._all_fields_ = [('description', DeviceChangeIpMobileType.description.validator)] DeviceChangeIpWebDetails.user_agent.validator = bv.String() DeviceChangeIpWebDetails._all_field_names_ = set(['user_agent']) DeviceChangeIpWebDetails._all_fields_ = [('user_agent', DeviceChangeIpWebDetails.user_agent.validator)] DeviceChangeIpWebType.description.validator = bv.String() DeviceChangeIpWebType._all_field_names_ = set(['description']) DeviceChangeIpWebType._all_fields_ = [('description', DeviceChangeIpWebType.description.validator)] DeviceDeleteOnUnlinkFailDetails.session_info.validator = bv.Nullable(SessionLogInfo_validator) DeviceDeleteOnUnlinkFailDetails.display_name.validator = bv.Nullable(bv.String()) DeviceDeleteOnUnlinkFailDetails.num_failures.validator = bv.Int64() DeviceDeleteOnUnlinkFailDetails._all_field_names_ = set([ 'session_info', 'display_name', 'num_failures', ]) DeviceDeleteOnUnlinkFailDetails._all_fields_ = [ ('session_info', DeviceDeleteOnUnlinkFailDetails.session_info.validator), ('display_name', DeviceDeleteOnUnlinkFailDetails.display_name.validator), ('num_failures', DeviceDeleteOnUnlinkFailDetails.num_failures.validator), ] DeviceDeleteOnUnlinkFailType.description.validator = bv.String() DeviceDeleteOnUnlinkFailType._all_field_names_ = set(['description']) DeviceDeleteOnUnlinkFailType._all_fields_ = [('description', DeviceDeleteOnUnlinkFailType.description.validator)] DeviceDeleteOnUnlinkSuccessDetails.session_info.validator = bv.Nullable(SessionLogInfo_validator) DeviceDeleteOnUnlinkSuccessDetails.display_name.validator = bv.Nullable(bv.String()) DeviceDeleteOnUnlinkSuccessDetails._all_field_names_ = set([ 'session_info', 'display_name', ]) DeviceDeleteOnUnlinkSuccessDetails._all_fields_ = [ ('session_info', DeviceDeleteOnUnlinkSuccessDetails.session_info.validator), ('display_name', DeviceDeleteOnUnlinkSuccessDetails.display_name.validator), ] DeviceDeleteOnUnlinkSuccessType.description.validator = bv.String() DeviceDeleteOnUnlinkSuccessType._all_field_names_ = set(['description']) DeviceDeleteOnUnlinkSuccessType._all_fields_ = [('description', DeviceDeleteOnUnlinkSuccessType.description.validator)] DeviceLinkFailDetails.ip_address.validator = bv.Nullable(IpAddress_validator) DeviceLinkFailDetails.device_type.validator = DeviceType_validator DeviceLinkFailDetails._all_field_names_ = set([ 'ip_address', 'device_type', ]) DeviceLinkFailDetails._all_fields_ = [ ('ip_address', DeviceLinkFailDetails.ip_address.validator), ('device_type', DeviceLinkFailDetails.device_type.validator), ] DeviceLinkFailType.description.validator = bv.String() DeviceLinkFailType._all_field_names_ = set(['description']) DeviceLinkFailType._all_fields_ = [('description', DeviceLinkFailType.description.validator)] DeviceLinkSuccessDetails.device_session_info.validator = bv.Nullable(DeviceSessionLogInfo_validator) DeviceLinkSuccessDetails._all_field_names_ = set(['device_session_info']) DeviceLinkSuccessDetails._all_fields_ = [('device_session_info', DeviceLinkSuccessDetails.device_session_info.validator)] DeviceLinkSuccessType.description.validator = bv.String() DeviceLinkSuccessType._all_field_names_ = set(['description']) DeviceLinkSuccessType._all_fields_ = [('description', DeviceLinkSuccessType.description.validator)] DeviceManagementDisabledDetails._all_field_names_ = set([]) DeviceManagementDisabledDetails._all_fields_ = [] DeviceManagementDisabledType.description.validator = bv.String() DeviceManagementDisabledType._all_field_names_ = set(['description']) DeviceManagementDisabledType._all_fields_ = [('description', DeviceManagementDisabledType.description.validator)] DeviceManagementEnabledDetails._all_field_names_ = set([]) DeviceManagementEnabledDetails._all_fields_ = [] DeviceManagementEnabledType.description.validator = bv.String() DeviceManagementEnabledType._all_field_names_ = set(['description']) DeviceManagementEnabledType._all_fields_ = [('description', DeviceManagementEnabledType.description.validator)] DeviceSyncBackupStatusChangedDetails.desktop_device_session_info.validator = DesktopDeviceSessionLogInfo_validator DeviceSyncBackupStatusChangedDetails.previous_value.validator = BackupStatus_validator DeviceSyncBackupStatusChangedDetails.new_value.validator = BackupStatus_validator DeviceSyncBackupStatusChangedDetails._all_field_names_ = set([ 'desktop_device_session_info', 'previous_value', 'new_value', ]) DeviceSyncBackupStatusChangedDetails._all_fields_ = [ ('desktop_device_session_info', DeviceSyncBackupStatusChangedDetails.desktop_device_session_info.validator), ('previous_value', DeviceSyncBackupStatusChangedDetails.previous_value.validator), ('new_value', DeviceSyncBackupStatusChangedDetails.new_value.validator), ] DeviceSyncBackupStatusChangedType.description.validator = bv.String() DeviceSyncBackupStatusChangedType._all_field_names_ = set(['description']) DeviceSyncBackupStatusChangedType._all_fields_ = [('description', DeviceSyncBackupStatusChangedType.description.validator)] DeviceType._desktop_validator = bv.Void() DeviceType._mobile_validator = bv.Void() DeviceType._other_validator = bv.Void() DeviceType._tagmap = { 'desktop': DeviceType._desktop_validator, 'mobile': DeviceType._mobile_validator, 'other': DeviceType._other_validator, } DeviceType.desktop = DeviceType('desktop') DeviceType.mobile = DeviceType('mobile') DeviceType.other = DeviceType('other') DeviceUnlinkDetails.session_info.validator = bv.Nullable(SessionLogInfo_validator) DeviceUnlinkDetails.display_name.validator = bv.Nullable(bv.String()) DeviceUnlinkDetails.delete_data.validator = bv.Boolean() DeviceUnlinkDetails._all_field_names_ = set([ 'session_info', 'display_name', 'delete_data', ]) DeviceUnlinkDetails._all_fields_ = [ ('session_info', DeviceUnlinkDetails.session_info.validator), ('display_name', DeviceUnlinkDetails.display_name.validator), ('delete_data', DeviceUnlinkDetails.delete_data.validator), ] DeviceUnlinkPolicy._keep_validator = bv.Void() DeviceUnlinkPolicy._remove_validator = bv.Void() DeviceUnlinkPolicy._other_validator = bv.Void() DeviceUnlinkPolicy._tagmap = { 'keep': DeviceUnlinkPolicy._keep_validator, 'remove': DeviceUnlinkPolicy._remove_validator, 'other': DeviceUnlinkPolicy._other_validator, } DeviceUnlinkPolicy.keep = DeviceUnlinkPolicy('keep') DeviceUnlinkPolicy.remove = DeviceUnlinkPolicy('remove') DeviceUnlinkPolicy.other = DeviceUnlinkPolicy('other') DeviceUnlinkType.description.validator = bv.String() DeviceUnlinkType._all_field_names_ = set(['description']) DeviceUnlinkType._all_fields_ = [('description', DeviceUnlinkType.description.validator)] DirectoryRestrictionsAddMembersDetails._all_field_names_ = set([]) DirectoryRestrictionsAddMembersDetails._all_fields_ = [] DirectoryRestrictionsAddMembersType.description.validator = bv.String() DirectoryRestrictionsAddMembersType._all_field_names_ = set(['description']) DirectoryRestrictionsAddMembersType._all_fields_ = [('description', DirectoryRestrictionsAddMembersType.description.validator)] DirectoryRestrictionsRemoveMembersDetails._all_field_names_ = set([]) DirectoryRestrictionsRemoveMembersDetails._all_fields_ = [] DirectoryRestrictionsRemoveMembersType.description.validator = bv.String() DirectoryRestrictionsRemoveMembersType._all_field_names_ = set(['description']) DirectoryRestrictionsRemoveMembersType._all_fields_ = [('description', DirectoryRestrictionsRemoveMembersType.description.validator)] DisabledDomainInvitesDetails._all_field_names_ = set([]) DisabledDomainInvitesDetails._all_fields_ = [] DisabledDomainInvitesType.description.validator = bv.String() DisabledDomainInvitesType._all_field_names_ = set(['description']) DisabledDomainInvitesType._all_fields_ = [('description', DisabledDomainInvitesType.description.validator)] DispositionActionType._automatic_delete_validator = bv.Void() DispositionActionType._automatic_permanently_delete_validator = bv.Void() DispositionActionType._other_validator = bv.Void() DispositionActionType._tagmap = { 'automatic_delete': DispositionActionType._automatic_delete_validator, 'automatic_permanently_delete': DispositionActionType._automatic_permanently_delete_validator, 'other': DispositionActionType._other_validator, } DispositionActionType.automatic_delete = DispositionActionType('automatic_delete') DispositionActionType.automatic_permanently_delete = DispositionActionType('automatic_permanently_delete') DispositionActionType.other = DispositionActionType('other') DomainInvitesApproveRequestToJoinTeamDetails._all_field_names_ = set([]) DomainInvitesApproveRequestToJoinTeamDetails._all_fields_ = [] DomainInvitesApproveRequestToJoinTeamType.description.validator = bv.String() DomainInvitesApproveRequestToJoinTeamType._all_field_names_ = set(['description']) DomainInvitesApproveRequestToJoinTeamType._all_fields_ = [('description', DomainInvitesApproveRequestToJoinTeamType.description.validator)] DomainInvitesDeclineRequestToJoinTeamDetails._all_field_names_ = set([]) DomainInvitesDeclineRequestToJoinTeamDetails._all_fields_ = [] DomainInvitesDeclineRequestToJoinTeamType.description.validator = bv.String() DomainInvitesDeclineRequestToJoinTeamType._all_field_names_ = set(['description']) DomainInvitesDeclineRequestToJoinTeamType._all_fields_ = [('description', DomainInvitesDeclineRequestToJoinTeamType.description.validator)] DomainInvitesEmailExistingUsersDetails.domain_name.validator = bv.String() DomainInvitesEmailExistingUsersDetails.num_recipients.validator = bv.UInt64() DomainInvitesEmailExistingUsersDetails._all_field_names_ = set([ 'domain_name', 'num_recipients', ]) DomainInvitesEmailExistingUsersDetails._all_fields_ = [ ('domain_name', DomainInvitesEmailExistingUsersDetails.domain_name.validator), ('num_recipients', DomainInvitesEmailExistingUsersDetails.num_recipients.validator), ] DomainInvitesEmailExistingUsersType.description.validator = bv.String() DomainInvitesEmailExistingUsersType._all_field_names_ = set(['description']) DomainInvitesEmailExistingUsersType._all_fields_ = [('description', DomainInvitesEmailExistingUsersType.description.validator)] DomainInvitesRequestToJoinTeamDetails._all_field_names_ = set([]) DomainInvitesRequestToJoinTeamDetails._all_fields_ = [] DomainInvitesRequestToJoinTeamType.description.validator = bv.String() DomainInvitesRequestToJoinTeamType._all_field_names_ = set(['description']) DomainInvitesRequestToJoinTeamType._all_fields_ = [('description', DomainInvitesRequestToJoinTeamType.description.validator)] DomainInvitesSetInviteNewUserPrefToNoDetails._all_field_names_ = set([]) DomainInvitesSetInviteNewUserPrefToNoDetails._all_fields_ = [] DomainInvitesSetInviteNewUserPrefToNoType.description.validator = bv.String() DomainInvitesSetInviteNewUserPrefToNoType._all_field_names_ = set(['description']) DomainInvitesSetInviteNewUserPrefToNoType._all_fields_ = [('description', DomainInvitesSetInviteNewUserPrefToNoType.description.validator)] DomainInvitesSetInviteNewUserPrefToYesDetails._all_field_names_ = set([]) DomainInvitesSetInviteNewUserPrefToYesDetails._all_fields_ = [] DomainInvitesSetInviteNewUserPrefToYesType.description.validator = bv.String() DomainInvitesSetInviteNewUserPrefToYesType._all_field_names_ = set(['description']) DomainInvitesSetInviteNewUserPrefToYesType._all_fields_ = [('description', DomainInvitesSetInviteNewUserPrefToYesType.description.validator)] DomainVerificationAddDomainFailDetails.domain_name.validator = bv.String() DomainVerificationAddDomainFailDetails.verification_method.validator = bv.Nullable(bv.String()) DomainVerificationAddDomainFailDetails._all_field_names_ = set([ 'domain_name', 'verification_method', ]) DomainVerificationAddDomainFailDetails._all_fields_ = [ ('domain_name', DomainVerificationAddDomainFailDetails.domain_name.validator), ('verification_method', DomainVerificationAddDomainFailDetails.verification_method.validator), ] DomainVerificationAddDomainFailType.description.validator = bv.String() DomainVerificationAddDomainFailType._all_field_names_ = set(['description']) DomainVerificationAddDomainFailType._all_fields_ = [('description', DomainVerificationAddDomainFailType.description.validator)] DomainVerificationAddDomainSuccessDetails.domain_names.validator = bv.List(bv.String()) DomainVerificationAddDomainSuccessDetails.verification_method.validator = bv.Nullable(bv.String()) DomainVerificationAddDomainSuccessDetails._all_field_names_ = set([ 'domain_names', 'verification_method', ]) DomainVerificationAddDomainSuccessDetails._all_fields_ = [ ('domain_names', DomainVerificationAddDomainSuccessDetails.domain_names.validator), ('verification_method', DomainVerificationAddDomainSuccessDetails.verification_method.validator), ] DomainVerificationAddDomainSuccessType.description.validator = bv.String() DomainVerificationAddDomainSuccessType._all_field_names_ = set(['description']) DomainVerificationAddDomainSuccessType._all_fields_ = [('description', DomainVerificationAddDomainSuccessType.description.validator)] DomainVerificationRemoveDomainDetails.domain_names.validator = bv.List(bv.String()) DomainVerificationRemoveDomainDetails._all_field_names_ = set(['domain_names']) DomainVerificationRemoveDomainDetails._all_fields_ = [('domain_names', DomainVerificationRemoveDomainDetails.domain_names.validator)] DomainVerificationRemoveDomainType.description.validator = bv.String() DomainVerificationRemoveDomainType._all_field_names_ = set(['description']) DomainVerificationRemoveDomainType._all_fields_ = [('description', DomainVerificationRemoveDomainType.description.validator)] DownloadPolicyType._allow_validator = bv.Void() DownloadPolicyType._disallow_validator = bv.Void() DownloadPolicyType._other_validator = bv.Void() DownloadPolicyType._tagmap = { 'allow': DownloadPolicyType._allow_validator, 'disallow': DownloadPolicyType._disallow_validator, 'other': DownloadPolicyType._other_validator, } DownloadPolicyType.allow = DownloadPolicyType('allow') DownloadPolicyType.disallow = DownloadPolicyType('disallow') DownloadPolicyType.other = DownloadPolicyType('other') DropboxPasswordsExportedDetails.platform.validator = bv.String() DropboxPasswordsExportedDetails._all_field_names_ = set(['platform']) DropboxPasswordsExportedDetails._all_fields_ = [('platform', DropboxPasswordsExportedDetails.platform.validator)] DropboxPasswordsExportedType.description.validator = bv.String() DropboxPasswordsExportedType._all_field_names_ = set(['description']) DropboxPasswordsExportedType._all_fields_ = [('description', DropboxPasswordsExportedType.description.validator)] DropboxPasswordsNewDeviceEnrolledDetails.is_first_device.validator = bv.Boolean() DropboxPasswordsNewDeviceEnrolledDetails.platform.validator = bv.String() DropboxPasswordsNewDeviceEnrolledDetails._all_field_names_ = set([ 'is_first_device', 'platform', ]) DropboxPasswordsNewDeviceEnrolledDetails._all_fields_ = [ ('is_first_device', DropboxPasswordsNewDeviceEnrolledDetails.is_first_device.validator), ('platform', DropboxPasswordsNewDeviceEnrolledDetails.platform.validator), ] DropboxPasswordsNewDeviceEnrolledType.description.validator = bv.String() DropboxPasswordsNewDeviceEnrolledType._all_field_names_ = set(['description']) DropboxPasswordsNewDeviceEnrolledType._all_fields_ = [('description', DropboxPasswordsNewDeviceEnrolledType.description.validator)] DropboxPasswordsPolicy._default_validator = bv.Void() DropboxPasswordsPolicy._disabled_validator = bv.Void() DropboxPasswordsPolicy._enabled_validator = bv.Void() DropboxPasswordsPolicy._other_validator = bv.Void() DropboxPasswordsPolicy._tagmap = { 'default': DropboxPasswordsPolicy._default_validator, 'disabled': DropboxPasswordsPolicy._disabled_validator, 'enabled': DropboxPasswordsPolicy._enabled_validator, 'other': DropboxPasswordsPolicy._other_validator, } DropboxPasswordsPolicy.default = DropboxPasswordsPolicy('default') DropboxPasswordsPolicy.disabled = DropboxPasswordsPolicy('disabled') DropboxPasswordsPolicy.enabled = DropboxPasswordsPolicy('enabled') DropboxPasswordsPolicy.other = DropboxPasswordsPolicy('other') DropboxPasswordsPolicyChangedDetails.new_value.validator = DropboxPasswordsPolicy_validator DropboxPasswordsPolicyChangedDetails.previous_value.validator = DropboxPasswordsPolicy_validator DropboxPasswordsPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) DropboxPasswordsPolicyChangedDetails._all_fields_ = [ ('new_value', DropboxPasswordsPolicyChangedDetails.new_value.validator), ('previous_value', DropboxPasswordsPolicyChangedDetails.previous_value.validator), ] DropboxPasswordsPolicyChangedType.description.validator = bv.String() DropboxPasswordsPolicyChangedType._all_field_names_ = set(['description']) DropboxPasswordsPolicyChangedType._all_fields_ = [('description', DropboxPasswordsPolicyChangedType.description.validator)] DurationLogInfo.unit.validator = TimeUnit_validator DurationLogInfo.amount.validator = bv.UInt64() DurationLogInfo._all_field_names_ = set([ 'unit', 'amount', ]) DurationLogInfo._all_fields_ = [ ('unit', DurationLogInfo.unit.validator), ('amount', DurationLogInfo.amount.validator), ] EmailIngestPolicy._disabled_validator = bv.Void() EmailIngestPolicy._enabled_validator = bv.Void() EmailIngestPolicy._other_validator = bv.Void() EmailIngestPolicy._tagmap = { 'disabled': EmailIngestPolicy._disabled_validator, 'enabled': EmailIngestPolicy._enabled_validator, 'other': EmailIngestPolicy._other_validator, } EmailIngestPolicy.disabled = EmailIngestPolicy('disabled') EmailIngestPolicy.enabled = EmailIngestPolicy('enabled') EmailIngestPolicy.other = EmailIngestPolicy('other') EmailIngestPolicyChangedDetails.new_value.validator = EmailIngestPolicy_validator EmailIngestPolicyChangedDetails.previous_value.validator = EmailIngestPolicy_validator EmailIngestPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) EmailIngestPolicyChangedDetails._all_fields_ = [ ('new_value', EmailIngestPolicyChangedDetails.new_value.validator), ('previous_value', EmailIngestPolicyChangedDetails.previous_value.validator), ] EmailIngestPolicyChangedType.description.validator = bv.String() EmailIngestPolicyChangedType._all_field_names_ = set(['description']) EmailIngestPolicyChangedType._all_fields_ = [('description', EmailIngestPolicyChangedType.description.validator)] EmailIngestReceiveFileDetails.inbox_name.validator = bv.String() EmailIngestReceiveFileDetails.attachment_names.validator = bv.List(bv.String()) EmailIngestReceiveFileDetails.subject.validator = bv.Nullable(bv.String()) EmailIngestReceiveFileDetails.from_name.validator = bv.Nullable(common.DisplayNameLegacy_validator) EmailIngestReceiveFileDetails.from_email.validator = bv.Nullable(EmailAddress_validator) EmailIngestReceiveFileDetails._all_field_names_ = set([ 'inbox_name', 'attachment_names', 'subject', 'from_name', 'from_email', ]) EmailIngestReceiveFileDetails._all_fields_ = [ ('inbox_name', EmailIngestReceiveFileDetails.inbox_name.validator), ('attachment_names', EmailIngestReceiveFileDetails.attachment_names.validator), ('subject', EmailIngestReceiveFileDetails.subject.validator), ('from_name', EmailIngestReceiveFileDetails.from_name.validator), ('from_email', EmailIngestReceiveFileDetails.from_email.validator), ] EmailIngestReceiveFileType.description.validator = bv.String() EmailIngestReceiveFileType._all_field_names_ = set(['description']) EmailIngestReceiveFileType._all_fields_ = [('description', EmailIngestReceiveFileType.description.validator)] EmmAddExceptionDetails._all_field_names_ = set([]) EmmAddExceptionDetails._all_fields_ = [] EmmAddExceptionType.description.validator = bv.String() EmmAddExceptionType._all_field_names_ = set(['description']) EmmAddExceptionType._all_fields_ = [('description', EmmAddExceptionType.description.validator)] EmmChangePolicyDetails.new_value.validator = team_policies.EmmState_validator EmmChangePolicyDetails.previous_value.validator = bv.Nullable(team_policies.EmmState_validator) EmmChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) EmmChangePolicyDetails._all_fields_ = [ ('new_value', EmmChangePolicyDetails.new_value.validator), ('previous_value', EmmChangePolicyDetails.previous_value.validator), ] EmmChangePolicyType.description.validator = bv.String() EmmChangePolicyType._all_field_names_ = set(['description']) EmmChangePolicyType._all_fields_ = [('description', EmmChangePolicyType.description.validator)] EmmCreateExceptionsReportDetails._all_field_names_ = set([]) EmmCreateExceptionsReportDetails._all_fields_ = [] EmmCreateExceptionsReportType.description.validator = bv.String() EmmCreateExceptionsReportType._all_field_names_ = set(['description']) EmmCreateExceptionsReportType._all_fields_ = [('description', EmmCreateExceptionsReportType.description.validator)] EmmCreateUsageReportDetails._all_field_names_ = set([]) EmmCreateUsageReportDetails._all_fields_ = [] EmmCreateUsageReportType.description.validator = bv.String() EmmCreateUsageReportType._all_field_names_ = set(['description']) EmmCreateUsageReportType._all_fields_ = [('description', EmmCreateUsageReportType.description.validator)] EmmErrorDetails.error_details.validator = FailureDetailsLogInfo_validator EmmErrorDetails._all_field_names_ = set(['error_details']) EmmErrorDetails._all_fields_ = [('error_details', EmmErrorDetails.error_details.validator)] EmmErrorType.description.validator = bv.String() EmmErrorType._all_field_names_ = set(['description']) EmmErrorType._all_fields_ = [('description', EmmErrorType.description.validator)] EmmRefreshAuthTokenDetails._all_field_names_ = set([]) EmmRefreshAuthTokenDetails._all_fields_ = [] EmmRefreshAuthTokenType.description.validator = bv.String() EmmRefreshAuthTokenType._all_field_names_ = set(['description']) EmmRefreshAuthTokenType._all_fields_ = [('description', EmmRefreshAuthTokenType.description.validator)] EmmRemoveExceptionDetails._all_field_names_ = set([]) EmmRemoveExceptionDetails._all_fields_ = [] EmmRemoveExceptionType.description.validator = bv.String() EmmRemoveExceptionType._all_field_names_ = set(['description']) EmmRemoveExceptionType._all_fields_ = [('description', EmmRemoveExceptionType.description.validator)] EnabledDomainInvitesDetails._all_field_names_ = set([]) EnabledDomainInvitesDetails._all_fields_ = [] EnabledDomainInvitesType.description.validator = bv.String() EnabledDomainInvitesType._all_field_names_ = set(['description']) EnabledDomainInvitesType._all_fields_ = [('description', EnabledDomainInvitesType.description.validator)] EndedEnterpriseAdminSessionDeprecatedDetails.federation_extra_details.validator = FedExtraDetails_validator EndedEnterpriseAdminSessionDeprecatedDetails._all_field_names_ = set(['federation_extra_details']) EndedEnterpriseAdminSessionDeprecatedDetails._all_fields_ = [('federation_extra_details', EndedEnterpriseAdminSessionDeprecatedDetails.federation_extra_details.validator)] EndedEnterpriseAdminSessionDeprecatedType.description.validator = bv.String() EndedEnterpriseAdminSessionDeprecatedType._all_field_names_ = set(['description']) EndedEnterpriseAdminSessionDeprecatedType._all_fields_ = [('description', EndedEnterpriseAdminSessionDeprecatedType.description.validator)] EndedEnterpriseAdminSessionDetails._all_field_names_ = set([]) EndedEnterpriseAdminSessionDetails._all_fields_ = [] EndedEnterpriseAdminSessionType.description.validator = bv.String() EndedEnterpriseAdminSessionType._all_field_names_ = set(['description']) EndedEnterpriseAdminSessionType._all_fields_ = [('description', EndedEnterpriseAdminSessionType.description.validator)] EnforceLinkPasswordPolicy._optional_validator = bv.Void() EnforceLinkPasswordPolicy._required_validator = bv.Void() EnforceLinkPasswordPolicy._other_validator = bv.Void() EnforceLinkPasswordPolicy._tagmap = { 'optional': EnforceLinkPasswordPolicy._optional_validator, 'required': EnforceLinkPasswordPolicy._required_validator, 'other': EnforceLinkPasswordPolicy._other_validator, } EnforceLinkPasswordPolicy.optional = EnforceLinkPasswordPolicy('optional') EnforceLinkPasswordPolicy.required = EnforceLinkPasswordPolicy('required') EnforceLinkPasswordPolicy.other = EnforceLinkPasswordPolicy('other') EnterpriseSettingsLockingDetails.team_name.validator = bv.String() EnterpriseSettingsLockingDetails.settings_page_name.validator = bv.String() EnterpriseSettingsLockingDetails.previous_settings_page_locking_state.validator = bv.String() EnterpriseSettingsLockingDetails.new_settings_page_locking_state.validator = bv.String() EnterpriseSettingsLockingDetails._all_field_names_ = set([ 'team_name', 'settings_page_name', 'previous_settings_page_locking_state', 'new_settings_page_locking_state', ]) EnterpriseSettingsLockingDetails._all_fields_ = [ ('team_name', EnterpriseSettingsLockingDetails.team_name.validator), ('settings_page_name', EnterpriseSettingsLockingDetails.settings_page_name.validator), ('previous_settings_page_locking_state', EnterpriseSettingsLockingDetails.previous_settings_page_locking_state.validator), ('new_settings_page_locking_state', EnterpriseSettingsLockingDetails.new_settings_page_locking_state.validator), ] EnterpriseSettingsLockingType.description.validator = bv.String() EnterpriseSettingsLockingType._all_field_names_ = set(['description']) EnterpriseSettingsLockingType._all_fields_ = [('description', EnterpriseSettingsLockingType.description.validator)] EventCategory._admin_alerting_validator = bv.Void() EventCategory._apps_validator = bv.Void() EventCategory._comments_validator = bv.Void() EventCategory._data_governance_validator = bv.Void() EventCategory._devices_validator = bv.Void() EventCategory._domains_validator = bv.Void() EventCategory._encryption_validator = bv.Void() EventCategory._file_operations_validator = bv.Void() EventCategory._file_requests_validator = bv.Void() EventCategory._groups_validator = bv.Void() EventCategory._logins_validator = bv.Void() EventCategory._members_validator = bv.Void() EventCategory._paper_validator = bv.Void() EventCategory._passwords_validator = bv.Void() EventCategory._reports_validator = bv.Void() EventCategory._sharing_validator = bv.Void() EventCategory._showcase_validator = bv.Void() EventCategory._sso_validator = bv.Void() EventCategory._team_folders_validator = bv.Void() EventCategory._team_policies_validator = bv.Void() EventCategory._team_profile_validator = bv.Void() EventCategory._tfa_validator = bv.Void() EventCategory._trusted_teams_validator = bv.Void() EventCategory._other_validator = bv.Void() EventCategory._tagmap = { 'admin_alerting': EventCategory._admin_alerting_validator, 'apps': EventCategory._apps_validator, 'comments': EventCategory._comments_validator, 'data_governance': EventCategory._data_governance_validator, 'devices': EventCategory._devices_validator, 'domains': EventCategory._domains_validator, 'encryption': EventCategory._encryption_validator, 'file_operations': EventCategory._file_operations_validator, 'file_requests': EventCategory._file_requests_validator, 'groups': EventCategory._groups_validator, 'logins': EventCategory._logins_validator, 'members': EventCategory._members_validator, 'paper': EventCategory._paper_validator, 'passwords': EventCategory._passwords_validator, 'reports': EventCategory._reports_validator, 'sharing': EventCategory._sharing_validator, 'showcase': EventCategory._showcase_validator, 'sso': EventCategory._sso_validator, 'team_folders': EventCategory._team_folders_validator, 'team_policies': EventCategory._team_policies_validator, 'team_profile': EventCategory._team_profile_validator, 'tfa': EventCategory._tfa_validator, 'trusted_teams': EventCategory._trusted_teams_validator, 'other': EventCategory._other_validator, } EventCategory.admin_alerting = EventCategory('admin_alerting') EventCategory.apps = EventCategory('apps') EventCategory.comments = EventCategory('comments') EventCategory.data_governance = EventCategory('data_governance') EventCategory.devices = EventCategory('devices') EventCategory.domains = EventCategory('domains') EventCategory.encryption = EventCategory('encryption') EventCategory.file_operations = EventCategory('file_operations') EventCategory.file_requests = EventCategory('file_requests') EventCategory.groups = EventCategory('groups') EventCategory.logins = EventCategory('logins') EventCategory.members = EventCategory('members') EventCategory.paper = EventCategory('paper') EventCategory.passwords = EventCategory('passwords') EventCategory.reports = EventCategory('reports') EventCategory.sharing = EventCategory('sharing') EventCategory.showcase = EventCategory('showcase') EventCategory.sso = EventCategory('sso') EventCategory.team_folders = EventCategory('team_folders') EventCategory.team_policies = EventCategory('team_policies') EventCategory.team_profile = EventCategory('team_profile') EventCategory.tfa = EventCategory('tfa') EventCategory.trusted_teams = EventCategory('trusted_teams') EventCategory.other = EventCategory('other') EventDetails._admin_alerting_alert_state_changed_details_validator = AdminAlertingAlertStateChangedDetails_validator EventDetails._admin_alerting_changed_alert_config_details_validator = AdminAlertingChangedAlertConfigDetails_validator EventDetails._admin_alerting_triggered_alert_details_validator = AdminAlertingTriggeredAlertDetails_validator EventDetails._ransomware_restore_process_completed_details_validator = RansomwareRestoreProcessCompletedDetails_validator EventDetails._ransomware_restore_process_started_details_validator = RansomwareRestoreProcessStartedDetails_validator EventDetails._app_blocked_by_permissions_details_validator = AppBlockedByPermissionsDetails_validator EventDetails._app_link_team_details_validator = AppLinkTeamDetails_validator EventDetails._app_link_user_details_validator = AppLinkUserDetails_validator EventDetails._app_unlink_team_details_validator = AppUnlinkTeamDetails_validator EventDetails._app_unlink_user_details_validator = AppUnlinkUserDetails_validator EventDetails._integration_connected_details_validator = IntegrationConnectedDetails_validator EventDetails._integration_disconnected_details_validator = IntegrationDisconnectedDetails_validator EventDetails._file_add_comment_details_validator = FileAddCommentDetails_validator EventDetails._file_change_comment_subscription_details_validator = FileChangeCommentSubscriptionDetails_validator EventDetails._file_delete_comment_details_validator = FileDeleteCommentDetails_validator EventDetails._file_edit_comment_details_validator = FileEditCommentDetails_validator EventDetails._file_like_comment_details_validator = FileLikeCommentDetails_validator EventDetails._file_resolve_comment_details_validator = FileResolveCommentDetails_validator EventDetails._file_unlike_comment_details_validator = FileUnlikeCommentDetails_validator EventDetails._file_unresolve_comment_details_validator = FileUnresolveCommentDetails_validator EventDetails._governance_policy_add_folders_details_validator = GovernancePolicyAddFoldersDetails_validator EventDetails._governance_policy_add_folder_failed_details_validator = GovernancePolicyAddFolderFailedDetails_validator EventDetails._governance_policy_content_disposed_details_validator = GovernancePolicyContentDisposedDetails_validator EventDetails._governance_policy_create_details_validator = GovernancePolicyCreateDetails_validator EventDetails._governance_policy_delete_details_validator = GovernancePolicyDeleteDetails_validator EventDetails._governance_policy_edit_details_details_validator = GovernancePolicyEditDetailsDetails_validator EventDetails._governance_policy_edit_duration_details_validator = GovernancePolicyEditDurationDetails_validator EventDetails._governance_policy_export_created_details_validator = GovernancePolicyExportCreatedDetails_validator EventDetails._governance_policy_export_removed_details_validator = GovernancePolicyExportRemovedDetails_validator EventDetails._governance_policy_remove_folders_details_validator = GovernancePolicyRemoveFoldersDetails_validator EventDetails._governance_policy_report_created_details_validator = GovernancePolicyReportCreatedDetails_validator EventDetails._governance_policy_zip_part_downloaded_details_validator = GovernancePolicyZipPartDownloadedDetails_validator EventDetails._legal_holds_activate_a_hold_details_validator = LegalHoldsActivateAHoldDetails_validator EventDetails._legal_holds_add_members_details_validator = LegalHoldsAddMembersDetails_validator EventDetails._legal_holds_change_hold_details_details_validator = LegalHoldsChangeHoldDetailsDetails_validator EventDetails._legal_holds_change_hold_name_details_validator = LegalHoldsChangeHoldNameDetails_validator EventDetails._legal_holds_export_a_hold_details_validator = LegalHoldsExportAHoldDetails_validator EventDetails._legal_holds_export_cancelled_details_validator = LegalHoldsExportCancelledDetails_validator EventDetails._legal_holds_export_downloaded_details_validator = LegalHoldsExportDownloadedDetails_validator EventDetails._legal_holds_export_removed_details_validator = LegalHoldsExportRemovedDetails_validator EventDetails._legal_holds_release_a_hold_details_validator = LegalHoldsReleaseAHoldDetails_validator EventDetails._legal_holds_remove_members_details_validator = LegalHoldsRemoveMembersDetails_validator EventDetails._legal_holds_report_a_hold_details_validator = LegalHoldsReportAHoldDetails_validator EventDetails._device_change_ip_desktop_details_validator = DeviceChangeIpDesktopDetails_validator EventDetails._device_change_ip_mobile_details_validator = DeviceChangeIpMobileDetails_validator EventDetails._device_change_ip_web_details_validator = DeviceChangeIpWebDetails_validator EventDetails._device_delete_on_unlink_fail_details_validator = DeviceDeleteOnUnlinkFailDetails_validator EventDetails._device_delete_on_unlink_success_details_validator = DeviceDeleteOnUnlinkSuccessDetails_validator EventDetails._device_link_fail_details_validator = DeviceLinkFailDetails_validator EventDetails._device_link_success_details_validator = DeviceLinkSuccessDetails_validator EventDetails._device_management_disabled_details_validator = DeviceManagementDisabledDetails_validator EventDetails._device_management_enabled_details_validator = DeviceManagementEnabledDetails_validator EventDetails._device_sync_backup_status_changed_details_validator = DeviceSyncBackupStatusChangedDetails_validator EventDetails._device_unlink_details_validator = DeviceUnlinkDetails_validator EventDetails._dropbox_passwords_exported_details_validator = DropboxPasswordsExportedDetails_validator EventDetails._dropbox_passwords_new_device_enrolled_details_validator = DropboxPasswordsNewDeviceEnrolledDetails_validator EventDetails._emm_refresh_auth_token_details_validator = EmmRefreshAuthTokenDetails_validator EventDetails._external_drive_backup_eligibility_status_checked_details_validator = ExternalDriveBackupEligibilityStatusCheckedDetails_validator EventDetails._external_drive_backup_status_changed_details_validator = ExternalDriveBackupStatusChangedDetails_validator EventDetails._account_capture_change_availability_details_validator = AccountCaptureChangeAvailabilityDetails_validator EventDetails._account_capture_migrate_account_details_validator = AccountCaptureMigrateAccountDetails_validator EventDetails._account_capture_notification_emails_sent_details_validator = AccountCaptureNotificationEmailsSentDetails_validator EventDetails._account_capture_relinquish_account_details_validator = AccountCaptureRelinquishAccountDetails_validator EventDetails._disabled_domain_invites_details_validator = DisabledDomainInvitesDetails_validator EventDetails._domain_invites_approve_request_to_join_team_details_validator = DomainInvitesApproveRequestToJoinTeamDetails_validator EventDetails._domain_invites_decline_request_to_join_team_details_validator = DomainInvitesDeclineRequestToJoinTeamDetails_validator EventDetails._domain_invites_email_existing_users_details_validator = DomainInvitesEmailExistingUsersDetails_validator EventDetails._domain_invites_request_to_join_team_details_validator = DomainInvitesRequestToJoinTeamDetails_validator EventDetails._domain_invites_set_invite_new_user_pref_to_no_details_validator = DomainInvitesSetInviteNewUserPrefToNoDetails_validator EventDetails._domain_invites_set_invite_new_user_pref_to_yes_details_validator = DomainInvitesSetInviteNewUserPrefToYesDetails_validator EventDetails._domain_verification_add_domain_fail_details_validator = DomainVerificationAddDomainFailDetails_validator EventDetails._domain_verification_add_domain_success_details_validator = DomainVerificationAddDomainSuccessDetails_validator EventDetails._domain_verification_remove_domain_details_validator = DomainVerificationRemoveDomainDetails_validator EventDetails._enabled_domain_invites_details_validator = EnabledDomainInvitesDetails_validator EventDetails._team_encryption_key_cancel_key_deletion_details_validator = TeamEncryptionKeyCancelKeyDeletionDetails_validator EventDetails._team_encryption_key_create_key_details_validator = TeamEncryptionKeyCreateKeyDetails_validator EventDetails._team_encryption_key_delete_key_details_validator = TeamEncryptionKeyDeleteKeyDetails_validator EventDetails._team_encryption_key_disable_key_details_validator = TeamEncryptionKeyDisableKeyDetails_validator EventDetails._team_encryption_key_enable_key_details_validator = TeamEncryptionKeyEnableKeyDetails_validator EventDetails._team_encryption_key_rotate_key_details_validator = TeamEncryptionKeyRotateKeyDetails_validator EventDetails._team_encryption_key_schedule_key_deletion_details_validator = TeamEncryptionKeyScheduleKeyDeletionDetails_validator EventDetails._apply_naming_convention_details_validator = ApplyNamingConventionDetails_validator EventDetails._create_folder_details_validator = CreateFolderDetails_validator EventDetails._file_add_details_validator = FileAddDetails_validator EventDetails._file_add_from_automation_details_validator = FileAddFromAutomationDetails_validator EventDetails._file_copy_details_validator = FileCopyDetails_validator EventDetails._file_delete_details_validator = FileDeleteDetails_validator EventDetails._file_download_details_validator = FileDownloadDetails_validator EventDetails._file_edit_details_validator = FileEditDetails_validator EventDetails._file_get_copy_reference_details_validator = FileGetCopyReferenceDetails_validator EventDetails._file_locking_lock_status_changed_details_validator = FileLockingLockStatusChangedDetails_validator EventDetails._file_move_details_validator = FileMoveDetails_validator EventDetails._file_permanently_delete_details_validator = FilePermanentlyDeleteDetails_validator EventDetails._file_preview_details_validator = FilePreviewDetails_validator EventDetails._file_rename_details_validator = FileRenameDetails_validator EventDetails._file_restore_details_validator = FileRestoreDetails_validator EventDetails._file_revert_details_validator = FileRevertDetails_validator EventDetails._file_rollback_changes_details_validator = FileRollbackChangesDetails_validator EventDetails._file_save_copy_reference_details_validator = FileSaveCopyReferenceDetails_validator EventDetails._folder_overview_description_changed_details_validator = FolderOverviewDescriptionChangedDetails_validator EventDetails._folder_overview_item_pinned_details_validator = FolderOverviewItemPinnedDetails_validator EventDetails._folder_overview_item_unpinned_details_validator = FolderOverviewItemUnpinnedDetails_validator EventDetails._object_label_added_details_validator = ObjectLabelAddedDetails_validator EventDetails._object_label_removed_details_validator = ObjectLabelRemovedDetails_validator EventDetails._object_label_updated_value_details_validator = ObjectLabelUpdatedValueDetails_validator EventDetails._organize_folder_with_tidy_details_validator = OrganizeFolderWithTidyDetails_validator EventDetails._replay_file_delete_details_validator = ReplayFileDeleteDetails_validator EventDetails._rewind_folder_details_validator = RewindFolderDetails_validator EventDetails._undo_naming_convention_details_validator = UndoNamingConventionDetails_validator EventDetails._undo_organize_folder_with_tidy_details_validator = UndoOrganizeFolderWithTidyDetails_validator EventDetails._user_tags_added_details_validator = UserTagsAddedDetails_validator EventDetails._user_tags_removed_details_validator = UserTagsRemovedDetails_validator EventDetails._email_ingest_receive_file_details_validator = EmailIngestReceiveFileDetails_validator EventDetails._file_request_change_details_validator = FileRequestChangeDetails_validator EventDetails._file_request_close_details_validator = FileRequestCloseDetails_validator EventDetails._file_request_create_details_validator = FileRequestCreateDetails_validator EventDetails._file_request_delete_details_validator = FileRequestDeleteDetails_validator EventDetails._file_request_receive_file_details_validator = FileRequestReceiveFileDetails_validator EventDetails._group_add_external_id_details_validator = GroupAddExternalIdDetails_validator EventDetails._group_add_member_details_validator = GroupAddMemberDetails_validator EventDetails._group_change_external_id_details_validator = GroupChangeExternalIdDetails_validator EventDetails._group_change_management_type_details_validator = GroupChangeManagementTypeDetails_validator EventDetails._group_change_member_role_details_validator = GroupChangeMemberRoleDetails_validator EventDetails._group_create_details_validator = GroupCreateDetails_validator EventDetails._group_delete_details_validator = GroupDeleteDetails_validator EventDetails._group_description_updated_details_validator = GroupDescriptionUpdatedDetails_validator EventDetails._group_join_policy_updated_details_validator = GroupJoinPolicyUpdatedDetails_validator EventDetails._group_moved_details_validator = GroupMovedDetails_validator EventDetails._group_remove_external_id_details_validator = GroupRemoveExternalIdDetails_validator EventDetails._group_remove_member_details_validator = GroupRemoveMemberDetails_validator EventDetails._group_rename_details_validator = GroupRenameDetails_validator EventDetails._account_lock_or_unlocked_details_validator = AccountLockOrUnlockedDetails_validator EventDetails._emm_error_details_validator = EmmErrorDetails_validator EventDetails._guest_admin_signed_in_via_trusted_teams_details_validator = GuestAdminSignedInViaTrustedTeamsDetails_validator EventDetails._guest_admin_signed_out_via_trusted_teams_details_validator = GuestAdminSignedOutViaTrustedTeamsDetails_validator EventDetails._login_fail_details_validator = LoginFailDetails_validator EventDetails._login_success_details_validator = LoginSuccessDetails_validator EventDetails._logout_details_validator = LogoutDetails_validator EventDetails._reseller_support_session_end_details_validator = ResellerSupportSessionEndDetails_validator EventDetails._reseller_support_session_start_details_validator = ResellerSupportSessionStartDetails_validator EventDetails._sign_in_as_session_end_details_validator = SignInAsSessionEndDetails_validator EventDetails._sign_in_as_session_start_details_validator = SignInAsSessionStartDetails_validator EventDetails._sso_error_details_validator = SsoErrorDetails_validator EventDetails._backup_admin_invitation_sent_details_validator = BackupAdminInvitationSentDetails_validator EventDetails._backup_invitation_opened_details_validator = BackupInvitationOpenedDetails_validator EventDetails._create_team_invite_link_details_validator = CreateTeamInviteLinkDetails_validator EventDetails._delete_team_invite_link_details_validator = DeleteTeamInviteLinkDetails_validator EventDetails._member_add_external_id_details_validator = MemberAddExternalIdDetails_validator EventDetails._member_add_name_details_validator = MemberAddNameDetails_validator EventDetails._member_change_admin_role_details_validator = MemberChangeAdminRoleDetails_validator EventDetails._member_change_email_details_validator = MemberChangeEmailDetails_validator EventDetails._member_change_external_id_details_validator = MemberChangeExternalIdDetails_validator EventDetails._member_change_membership_type_details_validator = MemberChangeMembershipTypeDetails_validator EventDetails._member_change_name_details_validator = MemberChangeNameDetails_validator EventDetails._member_change_reseller_role_details_validator = MemberChangeResellerRoleDetails_validator EventDetails._member_change_status_details_validator = MemberChangeStatusDetails_validator EventDetails._member_delete_manual_contacts_details_validator = MemberDeleteManualContactsDetails_validator EventDetails._member_delete_profile_photo_details_validator = MemberDeleteProfilePhotoDetails_validator EventDetails._member_permanently_delete_account_contents_details_validator = MemberPermanentlyDeleteAccountContentsDetails_validator EventDetails._member_remove_external_id_details_validator = MemberRemoveExternalIdDetails_validator EventDetails._member_set_profile_photo_details_validator = MemberSetProfilePhotoDetails_validator EventDetails._member_space_limits_add_custom_quota_details_validator = MemberSpaceLimitsAddCustomQuotaDetails_validator EventDetails._member_space_limits_change_custom_quota_details_validator = MemberSpaceLimitsChangeCustomQuotaDetails_validator EventDetails._member_space_limits_change_status_details_validator = MemberSpaceLimitsChangeStatusDetails_validator EventDetails._member_space_limits_remove_custom_quota_details_validator = MemberSpaceLimitsRemoveCustomQuotaDetails_validator EventDetails._member_suggest_details_validator = MemberSuggestDetails_validator EventDetails._member_transfer_account_contents_details_validator = MemberTransferAccountContentsDetails_validator EventDetails._pending_secondary_email_added_details_validator = PendingSecondaryEmailAddedDetails_validator EventDetails._secondary_email_deleted_details_validator = SecondaryEmailDeletedDetails_validator EventDetails._secondary_email_verified_details_validator = SecondaryEmailVerifiedDetails_validator EventDetails._secondary_mails_policy_changed_details_validator = SecondaryMailsPolicyChangedDetails_validator EventDetails._binder_add_page_details_validator = BinderAddPageDetails_validator EventDetails._binder_add_section_details_validator = BinderAddSectionDetails_validator EventDetails._binder_remove_page_details_validator = BinderRemovePageDetails_validator EventDetails._binder_remove_section_details_validator = BinderRemoveSectionDetails_validator EventDetails._binder_rename_page_details_validator = BinderRenamePageDetails_validator EventDetails._binder_rename_section_details_validator = BinderRenameSectionDetails_validator EventDetails._binder_reorder_page_details_validator = BinderReorderPageDetails_validator EventDetails._binder_reorder_section_details_validator = BinderReorderSectionDetails_validator EventDetails._paper_content_add_member_details_validator = PaperContentAddMemberDetails_validator EventDetails._paper_content_add_to_folder_details_validator = PaperContentAddToFolderDetails_validator EventDetails._paper_content_archive_details_validator = PaperContentArchiveDetails_validator EventDetails._paper_content_create_details_validator = PaperContentCreateDetails_validator EventDetails._paper_content_permanently_delete_details_validator = PaperContentPermanentlyDeleteDetails_validator EventDetails._paper_content_remove_from_folder_details_validator = PaperContentRemoveFromFolderDetails_validator EventDetails._paper_content_remove_member_details_validator = PaperContentRemoveMemberDetails_validator EventDetails._paper_content_rename_details_validator = PaperContentRenameDetails_validator EventDetails._paper_content_restore_details_validator = PaperContentRestoreDetails_validator EventDetails._paper_doc_add_comment_details_validator = PaperDocAddCommentDetails_validator EventDetails._paper_doc_change_member_role_details_validator = PaperDocChangeMemberRoleDetails_validator EventDetails._paper_doc_change_sharing_policy_details_validator = PaperDocChangeSharingPolicyDetails_validator EventDetails._paper_doc_change_subscription_details_validator = PaperDocChangeSubscriptionDetails_validator EventDetails._paper_doc_deleted_details_validator = PaperDocDeletedDetails_validator EventDetails._paper_doc_delete_comment_details_validator = PaperDocDeleteCommentDetails_validator EventDetails._paper_doc_download_details_validator = PaperDocDownloadDetails_validator EventDetails._paper_doc_edit_details_validator = PaperDocEditDetails_validator EventDetails._paper_doc_edit_comment_details_validator = PaperDocEditCommentDetails_validator EventDetails._paper_doc_followed_details_validator = PaperDocFollowedDetails_validator EventDetails._paper_doc_mention_details_validator = PaperDocMentionDetails_validator EventDetails._paper_doc_ownership_changed_details_validator = PaperDocOwnershipChangedDetails_validator EventDetails._paper_doc_request_access_details_validator = PaperDocRequestAccessDetails_validator EventDetails._paper_doc_resolve_comment_details_validator = PaperDocResolveCommentDetails_validator EventDetails._paper_doc_revert_details_validator = PaperDocRevertDetails_validator EventDetails._paper_doc_slack_share_details_validator = PaperDocSlackShareDetails_validator EventDetails._paper_doc_team_invite_details_validator = PaperDocTeamInviteDetails_validator EventDetails._paper_doc_trashed_details_validator = PaperDocTrashedDetails_validator EventDetails._paper_doc_unresolve_comment_details_validator = PaperDocUnresolveCommentDetails_validator EventDetails._paper_doc_untrashed_details_validator = PaperDocUntrashedDetails_validator EventDetails._paper_doc_view_details_validator = PaperDocViewDetails_validator EventDetails._paper_external_view_allow_details_validator = PaperExternalViewAllowDetails_validator EventDetails._paper_external_view_default_team_details_validator = PaperExternalViewDefaultTeamDetails_validator EventDetails._paper_external_view_forbid_details_validator = PaperExternalViewForbidDetails_validator EventDetails._paper_folder_change_subscription_details_validator = PaperFolderChangeSubscriptionDetails_validator EventDetails._paper_folder_deleted_details_validator = PaperFolderDeletedDetails_validator EventDetails._paper_folder_followed_details_validator = PaperFolderFollowedDetails_validator EventDetails._paper_folder_team_invite_details_validator = PaperFolderTeamInviteDetails_validator EventDetails._paper_published_link_change_permission_details_validator = PaperPublishedLinkChangePermissionDetails_validator EventDetails._paper_published_link_create_details_validator = PaperPublishedLinkCreateDetails_validator EventDetails._paper_published_link_disabled_details_validator = PaperPublishedLinkDisabledDetails_validator EventDetails._paper_published_link_view_details_validator = PaperPublishedLinkViewDetails_validator EventDetails._password_change_details_validator = PasswordChangeDetails_validator EventDetails._password_reset_details_validator = PasswordResetDetails_validator EventDetails._password_reset_all_details_validator = PasswordResetAllDetails_validator EventDetails._classification_create_report_details_validator = ClassificationCreateReportDetails_validator EventDetails._classification_create_report_fail_details_validator = ClassificationCreateReportFailDetails_validator EventDetails._emm_create_exceptions_report_details_validator = EmmCreateExceptionsReportDetails_validator EventDetails._emm_create_usage_report_details_validator = EmmCreateUsageReportDetails_validator EventDetails._export_members_report_details_validator = ExportMembersReportDetails_validator EventDetails._export_members_report_fail_details_validator = ExportMembersReportFailDetails_validator EventDetails._external_sharing_create_report_details_validator = ExternalSharingCreateReportDetails_validator EventDetails._external_sharing_report_failed_details_validator = ExternalSharingReportFailedDetails_validator EventDetails._no_expiration_link_gen_create_report_details_validator = NoExpirationLinkGenCreateReportDetails_validator EventDetails._no_expiration_link_gen_report_failed_details_validator = NoExpirationLinkGenReportFailedDetails_validator EventDetails._no_password_link_gen_create_report_details_validator = NoPasswordLinkGenCreateReportDetails_validator EventDetails._no_password_link_gen_report_failed_details_validator = NoPasswordLinkGenReportFailedDetails_validator EventDetails._no_password_link_view_create_report_details_validator = NoPasswordLinkViewCreateReportDetails_validator EventDetails._no_password_link_view_report_failed_details_validator = NoPasswordLinkViewReportFailedDetails_validator EventDetails._outdated_link_view_create_report_details_validator = OutdatedLinkViewCreateReportDetails_validator EventDetails._outdated_link_view_report_failed_details_validator = OutdatedLinkViewReportFailedDetails_validator EventDetails._paper_admin_export_start_details_validator = PaperAdminExportStartDetails_validator EventDetails._ransomware_alert_create_report_details_validator = RansomwareAlertCreateReportDetails_validator EventDetails._ransomware_alert_create_report_failed_details_validator = RansomwareAlertCreateReportFailedDetails_validator EventDetails._smart_sync_create_admin_privilege_report_details_validator = SmartSyncCreateAdminPrivilegeReportDetails_validator EventDetails._team_activity_create_report_details_validator = TeamActivityCreateReportDetails_validator EventDetails._team_activity_create_report_fail_details_validator = TeamActivityCreateReportFailDetails_validator EventDetails._collection_share_details_validator = CollectionShareDetails_validator EventDetails._file_transfers_file_add_details_validator = FileTransfersFileAddDetails_validator EventDetails._file_transfers_transfer_delete_details_validator = FileTransfersTransferDeleteDetails_validator EventDetails._file_transfers_transfer_download_details_validator = FileTransfersTransferDownloadDetails_validator EventDetails._file_transfers_transfer_send_details_validator = FileTransfersTransferSendDetails_validator EventDetails._file_transfers_transfer_view_details_validator = FileTransfersTransferViewDetails_validator EventDetails._note_acl_invite_only_details_validator = NoteAclInviteOnlyDetails_validator EventDetails._note_acl_link_details_validator = NoteAclLinkDetails_validator EventDetails._note_acl_team_link_details_validator = NoteAclTeamLinkDetails_validator EventDetails._note_shared_details_validator = NoteSharedDetails_validator EventDetails._note_share_receive_details_validator = NoteShareReceiveDetails_validator EventDetails._open_note_shared_details_validator = OpenNoteSharedDetails_validator EventDetails._replay_file_shared_link_created_details_validator = ReplayFileSharedLinkCreatedDetails_validator EventDetails._replay_file_shared_link_modified_details_validator = ReplayFileSharedLinkModifiedDetails_validator EventDetails._replay_project_team_add_details_validator = ReplayProjectTeamAddDetails_validator EventDetails._replay_project_team_delete_details_validator = ReplayProjectTeamDeleteDetails_validator EventDetails._sf_add_group_details_validator = SfAddGroupDetails_validator EventDetails._sf_allow_non_members_to_view_shared_links_details_validator = SfAllowNonMembersToViewSharedLinksDetails_validator EventDetails._sf_external_invite_warn_details_validator = SfExternalInviteWarnDetails_validator EventDetails._sf_fb_invite_details_validator = SfFbInviteDetails_validator EventDetails._sf_fb_invite_change_role_details_validator = SfFbInviteChangeRoleDetails_validator EventDetails._sf_fb_uninvite_details_validator = SfFbUninviteDetails_validator EventDetails._sf_invite_group_details_validator = SfInviteGroupDetails_validator EventDetails._sf_team_grant_access_details_validator = SfTeamGrantAccessDetails_validator EventDetails._sf_team_invite_details_validator = SfTeamInviteDetails_validator EventDetails._sf_team_invite_change_role_details_validator = SfTeamInviteChangeRoleDetails_validator EventDetails._sf_team_join_details_validator = SfTeamJoinDetails_validator EventDetails._sf_team_join_from_oob_link_details_validator = SfTeamJoinFromOobLinkDetails_validator EventDetails._sf_team_uninvite_details_validator = SfTeamUninviteDetails_validator EventDetails._shared_content_add_invitees_details_validator = SharedContentAddInviteesDetails_validator EventDetails._shared_content_add_link_expiry_details_validator = SharedContentAddLinkExpiryDetails_validator EventDetails._shared_content_add_link_password_details_validator = SharedContentAddLinkPasswordDetails_validator EventDetails._shared_content_add_member_details_validator = SharedContentAddMemberDetails_validator EventDetails._shared_content_change_downloads_policy_details_validator = SharedContentChangeDownloadsPolicyDetails_validator EventDetails._shared_content_change_invitee_role_details_validator = SharedContentChangeInviteeRoleDetails_validator EventDetails._shared_content_change_link_audience_details_validator = SharedContentChangeLinkAudienceDetails_validator EventDetails._shared_content_change_link_expiry_details_validator = SharedContentChangeLinkExpiryDetails_validator EventDetails._shared_content_change_link_password_details_validator = SharedContentChangeLinkPasswordDetails_validator EventDetails._shared_content_change_member_role_details_validator = SharedContentChangeMemberRoleDetails_validator EventDetails._shared_content_change_viewer_info_policy_details_validator = SharedContentChangeViewerInfoPolicyDetails_validator EventDetails._shared_content_claim_invitation_details_validator = SharedContentClaimInvitationDetails_validator EventDetails._shared_content_copy_details_validator = SharedContentCopyDetails_validator EventDetails._shared_content_download_details_validator = SharedContentDownloadDetails_validator EventDetails._shared_content_relinquish_membership_details_validator = SharedContentRelinquishMembershipDetails_validator EventDetails._shared_content_remove_invitees_details_validator = SharedContentRemoveInviteesDetails_validator EventDetails._shared_content_remove_link_expiry_details_validator = SharedContentRemoveLinkExpiryDetails_validator EventDetails._shared_content_remove_link_password_details_validator = SharedContentRemoveLinkPasswordDetails_validator EventDetails._shared_content_remove_member_details_validator = SharedContentRemoveMemberDetails_validator EventDetails._shared_content_request_access_details_validator = SharedContentRequestAccessDetails_validator EventDetails._shared_content_restore_invitees_details_validator = SharedContentRestoreInviteesDetails_validator EventDetails._shared_content_restore_member_details_validator = SharedContentRestoreMemberDetails_validator EventDetails._shared_content_unshare_details_validator = SharedContentUnshareDetails_validator EventDetails._shared_content_view_details_validator = SharedContentViewDetails_validator EventDetails._shared_folder_change_link_policy_details_validator = SharedFolderChangeLinkPolicyDetails_validator EventDetails._shared_folder_change_members_inheritance_policy_details_validator = SharedFolderChangeMembersInheritancePolicyDetails_validator EventDetails._shared_folder_change_members_management_policy_details_validator = SharedFolderChangeMembersManagementPolicyDetails_validator EventDetails._shared_folder_change_members_policy_details_validator = SharedFolderChangeMembersPolicyDetails_validator EventDetails._shared_folder_create_details_validator = SharedFolderCreateDetails_validator EventDetails._shared_folder_decline_invitation_details_validator = SharedFolderDeclineInvitationDetails_validator EventDetails._shared_folder_mount_details_validator = SharedFolderMountDetails_validator EventDetails._shared_folder_nest_details_validator = SharedFolderNestDetails_validator EventDetails._shared_folder_transfer_ownership_details_validator = SharedFolderTransferOwnershipDetails_validator EventDetails._shared_folder_unmount_details_validator = SharedFolderUnmountDetails_validator EventDetails._shared_link_add_expiry_details_validator = SharedLinkAddExpiryDetails_validator EventDetails._shared_link_change_expiry_details_validator = SharedLinkChangeExpiryDetails_validator EventDetails._shared_link_change_visibility_details_validator = SharedLinkChangeVisibilityDetails_validator EventDetails._shared_link_copy_details_validator = SharedLinkCopyDetails_validator EventDetails._shared_link_create_details_validator = SharedLinkCreateDetails_validator EventDetails._shared_link_disable_details_validator = SharedLinkDisableDetails_validator EventDetails._shared_link_download_details_validator = SharedLinkDownloadDetails_validator EventDetails._shared_link_remove_expiry_details_validator = SharedLinkRemoveExpiryDetails_validator EventDetails._shared_link_settings_add_expiration_details_validator = SharedLinkSettingsAddExpirationDetails_validator EventDetails._shared_link_settings_add_password_details_validator = SharedLinkSettingsAddPasswordDetails_validator EventDetails._shared_link_settings_allow_download_disabled_details_validator = SharedLinkSettingsAllowDownloadDisabledDetails_validator EventDetails._shared_link_settings_allow_download_enabled_details_validator = SharedLinkSettingsAllowDownloadEnabledDetails_validator EventDetails._shared_link_settings_change_audience_details_validator = SharedLinkSettingsChangeAudienceDetails_validator EventDetails._shared_link_settings_change_expiration_details_validator = SharedLinkSettingsChangeExpirationDetails_validator EventDetails._shared_link_settings_change_password_details_validator = SharedLinkSettingsChangePasswordDetails_validator EventDetails._shared_link_settings_remove_expiration_details_validator = SharedLinkSettingsRemoveExpirationDetails_validator EventDetails._shared_link_settings_remove_password_details_validator = SharedLinkSettingsRemovePasswordDetails_validator EventDetails._shared_link_share_details_validator = SharedLinkShareDetails_validator EventDetails._shared_link_view_details_validator = SharedLinkViewDetails_validator EventDetails._shared_note_opened_details_validator = SharedNoteOpenedDetails_validator EventDetails._shmodel_disable_downloads_details_validator = ShmodelDisableDownloadsDetails_validator EventDetails._shmodel_enable_downloads_details_validator = ShmodelEnableDownloadsDetails_validator EventDetails._shmodel_group_share_details_validator = ShmodelGroupShareDetails_validator EventDetails._showcase_access_granted_details_validator = ShowcaseAccessGrantedDetails_validator EventDetails._showcase_add_member_details_validator = ShowcaseAddMemberDetails_validator EventDetails._showcase_archived_details_validator = ShowcaseArchivedDetails_validator EventDetails._showcase_created_details_validator = ShowcaseCreatedDetails_validator EventDetails._showcase_delete_comment_details_validator = ShowcaseDeleteCommentDetails_validator EventDetails._showcase_edited_details_validator = ShowcaseEditedDetails_validator EventDetails._showcase_edit_comment_details_validator = ShowcaseEditCommentDetails_validator EventDetails._showcase_file_added_details_validator = ShowcaseFileAddedDetails_validator EventDetails._showcase_file_download_details_validator = ShowcaseFileDownloadDetails_validator EventDetails._showcase_file_removed_details_validator = ShowcaseFileRemovedDetails_validator EventDetails._showcase_file_view_details_validator = ShowcaseFileViewDetails_validator EventDetails._showcase_permanently_deleted_details_validator = ShowcasePermanentlyDeletedDetails_validator EventDetails._showcase_post_comment_details_validator = ShowcasePostCommentDetails_validator EventDetails._showcase_remove_member_details_validator = ShowcaseRemoveMemberDetails_validator EventDetails._showcase_renamed_details_validator = ShowcaseRenamedDetails_validator EventDetails._showcase_request_access_details_validator = ShowcaseRequestAccessDetails_validator EventDetails._showcase_resolve_comment_details_validator = ShowcaseResolveCommentDetails_validator EventDetails._showcase_restored_details_validator = ShowcaseRestoredDetails_validator EventDetails._showcase_trashed_details_validator = ShowcaseTrashedDetails_validator EventDetails._showcase_trashed_deprecated_details_validator = ShowcaseTrashedDeprecatedDetails_validator EventDetails._showcase_unresolve_comment_details_validator = ShowcaseUnresolveCommentDetails_validator EventDetails._showcase_untrashed_details_validator = ShowcaseUntrashedDetails_validator EventDetails._showcase_untrashed_deprecated_details_validator = ShowcaseUntrashedDeprecatedDetails_validator EventDetails._showcase_view_details_validator = ShowcaseViewDetails_validator EventDetails._sso_add_cert_details_validator = SsoAddCertDetails_validator EventDetails._sso_add_login_url_details_validator = SsoAddLoginUrlDetails_validator EventDetails._sso_add_logout_url_details_validator = SsoAddLogoutUrlDetails_validator EventDetails._sso_change_cert_details_validator = SsoChangeCertDetails_validator EventDetails._sso_change_login_url_details_validator = SsoChangeLoginUrlDetails_validator EventDetails._sso_change_logout_url_details_validator = SsoChangeLogoutUrlDetails_validator EventDetails._sso_change_saml_identity_mode_details_validator = SsoChangeSamlIdentityModeDetails_validator EventDetails._sso_remove_cert_details_validator = SsoRemoveCertDetails_validator EventDetails._sso_remove_login_url_details_validator = SsoRemoveLoginUrlDetails_validator EventDetails._sso_remove_logout_url_details_validator = SsoRemoveLogoutUrlDetails_validator EventDetails._team_folder_change_status_details_validator = TeamFolderChangeStatusDetails_validator EventDetails._team_folder_create_details_validator = TeamFolderCreateDetails_validator EventDetails._team_folder_downgrade_details_validator = TeamFolderDowngradeDetails_validator EventDetails._team_folder_permanently_delete_details_validator = TeamFolderPermanentlyDeleteDetails_validator EventDetails._team_folder_rename_details_validator = TeamFolderRenameDetails_validator EventDetails._team_selective_sync_settings_changed_details_validator = TeamSelectiveSyncSettingsChangedDetails_validator EventDetails._account_capture_change_policy_details_validator = AccountCaptureChangePolicyDetails_validator EventDetails._admin_email_reminders_changed_details_validator = AdminEmailRemindersChangedDetails_validator EventDetails._allow_download_disabled_details_validator = AllowDownloadDisabledDetails_validator EventDetails._allow_download_enabled_details_validator = AllowDownloadEnabledDetails_validator EventDetails._app_permissions_changed_details_validator = AppPermissionsChangedDetails_validator EventDetails._camera_uploads_policy_changed_details_validator = CameraUploadsPolicyChangedDetails_validator EventDetails._capture_transcript_policy_changed_details_validator = CaptureTranscriptPolicyChangedDetails_validator EventDetails._classification_change_policy_details_validator = ClassificationChangePolicyDetails_validator EventDetails._computer_backup_policy_changed_details_validator = ComputerBackupPolicyChangedDetails_validator EventDetails._content_administration_policy_changed_details_validator = ContentAdministrationPolicyChangedDetails_validator EventDetails._data_placement_restriction_change_policy_details_validator = DataPlacementRestrictionChangePolicyDetails_validator EventDetails._data_placement_restriction_satisfy_policy_details_validator = DataPlacementRestrictionSatisfyPolicyDetails_validator EventDetails._device_approvals_add_exception_details_validator = DeviceApprovalsAddExceptionDetails_validator EventDetails._device_approvals_change_desktop_policy_details_validator = DeviceApprovalsChangeDesktopPolicyDetails_validator EventDetails._device_approvals_change_mobile_policy_details_validator = DeviceApprovalsChangeMobilePolicyDetails_validator EventDetails._device_approvals_change_overage_action_details_validator = DeviceApprovalsChangeOverageActionDetails_validator EventDetails._device_approvals_change_unlink_action_details_validator = DeviceApprovalsChangeUnlinkActionDetails_validator EventDetails._device_approvals_remove_exception_details_validator = DeviceApprovalsRemoveExceptionDetails_validator EventDetails._directory_restrictions_add_members_details_validator = DirectoryRestrictionsAddMembersDetails_validator EventDetails._directory_restrictions_remove_members_details_validator = DirectoryRestrictionsRemoveMembersDetails_validator EventDetails._dropbox_passwords_policy_changed_details_validator = DropboxPasswordsPolicyChangedDetails_validator EventDetails._email_ingest_policy_changed_details_validator = EmailIngestPolicyChangedDetails_validator EventDetails._emm_add_exception_details_validator = EmmAddExceptionDetails_validator EventDetails._emm_change_policy_details_validator = EmmChangePolicyDetails_validator EventDetails._emm_remove_exception_details_validator = EmmRemoveExceptionDetails_validator EventDetails._extended_version_history_change_policy_details_validator = ExtendedVersionHistoryChangePolicyDetails_validator EventDetails._external_drive_backup_policy_changed_details_validator = ExternalDriveBackupPolicyChangedDetails_validator EventDetails._file_comments_change_policy_details_validator = FileCommentsChangePolicyDetails_validator EventDetails._file_locking_policy_changed_details_validator = FileLockingPolicyChangedDetails_validator EventDetails._file_provider_migration_policy_changed_details_validator = FileProviderMigrationPolicyChangedDetails_validator EventDetails._file_requests_change_policy_details_validator = FileRequestsChangePolicyDetails_validator EventDetails._file_requests_emails_enabled_details_validator = FileRequestsEmailsEnabledDetails_validator EventDetails._file_requests_emails_restricted_to_team_only_details_validator = FileRequestsEmailsRestrictedToTeamOnlyDetails_validator EventDetails._file_transfers_policy_changed_details_validator = FileTransfersPolicyChangedDetails_validator EventDetails._folder_link_restriction_policy_changed_details_validator = FolderLinkRestrictionPolicyChangedDetails_validator EventDetails._google_sso_change_policy_details_validator = GoogleSsoChangePolicyDetails_validator EventDetails._group_user_management_change_policy_details_validator = GroupUserManagementChangePolicyDetails_validator EventDetails._integration_policy_changed_details_validator = IntegrationPolicyChangedDetails_validator EventDetails._invite_acceptance_email_policy_changed_details_validator = InviteAcceptanceEmailPolicyChangedDetails_validator EventDetails._member_requests_change_policy_details_validator = MemberRequestsChangePolicyDetails_validator EventDetails._member_send_invite_policy_changed_details_validator = MemberSendInvitePolicyChangedDetails_validator EventDetails._member_space_limits_add_exception_details_validator = MemberSpaceLimitsAddExceptionDetails_validator EventDetails._member_space_limits_change_caps_type_policy_details_validator = MemberSpaceLimitsChangeCapsTypePolicyDetails_validator EventDetails._member_space_limits_change_policy_details_validator = MemberSpaceLimitsChangePolicyDetails_validator EventDetails._member_space_limits_remove_exception_details_validator = MemberSpaceLimitsRemoveExceptionDetails_validator EventDetails._member_suggestions_change_policy_details_validator = MemberSuggestionsChangePolicyDetails_validator EventDetails._microsoft_office_addin_change_policy_details_validator = MicrosoftOfficeAddinChangePolicyDetails_validator EventDetails._network_control_change_policy_details_validator = NetworkControlChangePolicyDetails_validator EventDetails._paper_change_deployment_policy_details_validator = PaperChangeDeploymentPolicyDetails_validator EventDetails._paper_change_member_link_policy_details_validator = PaperChangeMemberLinkPolicyDetails_validator EventDetails._paper_change_member_policy_details_validator = PaperChangeMemberPolicyDetails_validator EventDetails._paper_change_policy_details_validator = PaperChangePolicyDetails_validator EventDetails._paper_default_folder_policy_changed_details_validator = PaperDefaultFolderPolicyChangedDetails_validator EventDetails._paper_desktop_policy_changed_details_validator = PaperDesktopPolicyChangedDetails_validator EventDetails._paper_enabled_users_group_addition_details_validator = PaperEnabledUsersGroupAdditionDetails_validator EventDetails._paper_enabled_users_group_removal_details_validator = PaperEnabledUsersGroupRemovalDetails_validator EventDetails._password_strength_requirements_change_policy_details_validator = PasswordStrengthRequirementsChangePolicyDetails_validator EventDetails._permanent_delete_change_policy_details_validator = PermanentDeleteChangePolicyDetails_validator EventDetails._reseller_support_change_policy_details_validator = ResellerSupportChangePolicyDetails_validator EventDetails._rewind_policy_changed_details_validator = RewindPolicyChangedDetails_validator EventDetails._send_for_signature_policy_changed_details_validator = SendForSignaturePolicyChangedDetails_validator EventDetails._sharing_change_folder_join_policy_details_validator = SharingChangeFolderJoinPolicyDetails_validator EventDetails._sharing_change_link_allow_change_expiration_policy_details_validator = SharingChangeLinkAllowChangeExpirationPolicyDetails_validator EventDetails._sharing_change_link_default_expiration_policy_details_validator = SharingChangeLinkDefaultExpirationPolicyDetails_validator EventDetails._sharing_change_link_enforce_password_policy_details_validator = SharingChangeLinkEnforcePasswordPolicyDetails_validator EventDetails._sharing_change_link_policy_details_validator = SharingChangeLinkPolicyDetails_validator EventDetails._sharing_change_member_policy_details_validator = SharingChangeMemberPolicyDetails_validator EventDetails._showcase_change_download_policy_details_validator = ShowcaseChangeDownloadPolicyDetails_validator EventDetails._showcase_change_enabled_policy_details_validator = ShowcaseChangeEnabledPolicyDetails_validator EventDetails._showcase_change_external_sharing_policy_details_validator = ShowcaseChangeExternalSharingPolicyDetails_validator EventDetails._smarter_smart_sync_policy_changed_details_validator = SmarterSmartSyncPolicyChangedDetails_validator EventDetails._smart_sync_change_policy_details_validator = SmartSyncChangePolicyDetails_validator EventDetails._smart_sync_not_opt_out_details_validator = SmartSyncNotOptOutDetails_validator EventDetails._smart_sync_opt_out_details_validator = SmartSyncOptOutDetails_validator EventDetails._sso_change_policy_details_validator = SsoChangePolicyDetails_validator EventDetails._team_branding_policy_changed_details_validator = TeamBrandingPolicyChangedDetails_validator EventDetails._team_extensions_policy_changed_details_validator = TeamExtensionsPolicyChangedDetails_validator EventDetails._team_selective_sync_policy_changed_details_validator = TeamSelectiveSyncPolicyChangedDetails_validator EventDetails._team_sharing_whitelist_subjects_changed_details_validator = TeamSharingWhitelistSubjectsChangedDetails_validator EventDetails._tfa_add_exception_details_validator = TfaAddExceptionDetails_validator EventDetails._tfa_change_policy_details_validator = TfaChangePolicyDetails_validator EventDetails._tfa_remove_exception_details_validator = TfaRemoveExceptionDetails_validator EventDetails._two_account_change_policy_details_validator = TwoAccountChangePolicyDetails_validator EventDetails._viewer_info_policy_changed_details_validator = ViewerInfoPolicyChangedDetails_validator EventDetails._watermarking_policy_changed_details_validator = WatermarkingPolicyChangedDetails_validator EventDetails._web_sessions_change_active_session_limit_details_validator = WebSessionsChangeActiveSessionLimitDetails_validator EventDetails._web_sessions_change_fixed_length_policy_details_validator = WebSessionsChangeFixedLengthPolicyDetails_validator EventDetails._web_sessions_change_idle_length_policy_details_validator = WebSessionsChangeIdleLengthPolicyDetails_validator EventDetails._data_residency_migration_request_successful_details_validator = DataResidencyMigrationRequestSuccessfulDetails_validator EventDetails._data_residency_migration_request_unsuccessful_details_validator = DataResidencyMigrationRequestUnsuccessfulDetails_validator EventDetails._team_merge_from_details_validator = TeamMergeFromDetails_validator EventDetails._team_merge_to_details_validator = TeamMergeToDetails_validator EventDetails._team_profile_add_background_details_validator = TeamProfileAddBackgroundDetails_validator EventDetails._team_profile_add_logo_details_validator = TeamProfileAddLogoDetails_validator EventDetails._team_profile_change_background_details_validator = TeamProfileChangeBackgroundDetails_validator EventDetails._team_profile_change_default_language_details_validator = TeamProfileChangeDefaultLanguageDetails_validator EventDetails._team_profile_change_logo_details_validator = TeamProfileChangeLogoDetails_validator EventDetails._team_profile_change_name_details_validator = TeamProfileChangeNameDetails_validator EventDetails._team_profile_remove_background_details_validator = TeamProfileRemoveBackgroundDetails_validator EventDetails._team_profile_remove_logo_details_validator = TeamProfileRemoveLogoDetails_validator EventDetails._tfa_add_backup_phone_details_validator = TfaAddBackupPhoneDetails_validator EventDetails._tfa_add_security_key_details_validator = TfaAddSecurityKeyDetails_validator EventDetails._tfa_change_backup_phone_details_validator = TfaChangeBackupPhoneDetails_validator EventDetails._tfa_change_status_details_validator = TfaChangeStatusDetails_validator EventDetails._tfa_remove_backup_phone_details_validator = TfaRemoveBackupPhoneDetails_validator EventDetails._tfa_remove_security_key_details_validator = TfaRemoveSecurityKeyDetails_validator EventDetails._tfa_reset_details_validator = TfaResetDetails_validator EventDetails._changed_enterprise_admin_role_details_validator = ChangedEnterpriseAdminRoleDetails_validator EventDetails._changed_enterprise_connected_team_status_details_validator = ChangedEnterpriseConnectedTeamStatusDetails_validator EventDetails._ended_enterprise_admin_session_details_validator = EndedEnterpriseAdminSessionDetails_validator EventDetails._ended_enterprise_admin_session_deprecated_details_validator = EndedEnterpriseAdminSessionDeprecatedDetails_validator EventDetails._enterprise_settings_locking_details_validator = EnterpriseSettingsLockingDetails_validator EventDetails._guest_admin_change_status_details_validator = GuestAdminChangeStatusDetails_validator EventDetails._started_enterprise_admin_session_details_validator = StartedEnterpriseAdminSessionDetails_validator EventDetails._team_merge_request_accepted_details_validator = TeamMergeRequestAcceptedDetails_validator EventDetails._team_merge_request_accepted_shown_to_primary_team_details_validator = TeamMergeRequestAcceptedShownToPrimaryTeamDetails_validator EventDetails._team_merge_request_accepted_shown_to_secondary_team_details_validator = TeamMergeRequestAcceptedShownToSecondaryTeamDetails_validator EventDetails._team_merge_request_auto_canceled_details_validator = TeamMergeRequestAutoCanceledDetails_validator EventDetails._team_merge_request_canceled_details_validator = TeamMergeRequestCanceledDetails_validator EventDetails._team_merge_request_canceled_shown_to_primary_team_details_validator = TeamMergeRequestCanceledShownToPrimaryTeamDetails_validator EventDetails._team_merge_request_canceled_shown_to_secondary_team_details_validator = TeamMergeRequestCanceledShownToSecondaryTeamDetails_validator EventDetails._team_merge_request_expired_details_validator = TeamMergeRequestExpiredDetails_validator EventDetails._team_merge_request_expired_shown_to_primary_team_details_validator = TeamMergeRequestExpiredShownToPrimaryTeamDetails_validator EventDetails._team_merge_request_expired_shown_to_secondary_team_details_validator = TeamMergeRequestExpiredShownToSecondaryTeamDetails_validator EventDetails._team_merge_request_rejected_shown_to_primary_team_details_validator = TeamMergeRequestRejectedShownToPrimaryTeamDetails_validator EventDetails._team_merge_request_rejected_shown_to_secondary_team_details_validator = TeamMergeRequestRejectedShownToSecondaryTeamDetails_validator EventDetails._team_merge_request_reminder_details_validator = TeamMergeRequestReminderDetails_validator EventDetails._team_merge_request_reminder_shown_to_primary_team_details_validator = TeamMergeRequestReminderShownToPrimaryTeamDetails_validator EventDetails._team_merge_request_reminder_shown_to_secondary_team_details_validator = TeamMergeRequestReminderShownToSecondaryTeamDetails_validator EventDetails._team_merge_request_revoked_details_validator = TeamMergeRequestRevokedDetails_validator EventDetails._team_merge_request_sent_shown_to_primary_team_details_validator = TeamMergeRequestSentShownToPrimaryTeamDetails_validator EventDetails._team_merge_request_sent_shown_to_secondary_team_details_validator = TeamMergeRequestSentShownToSecondaryTeamDetails_validator EventDetails._missing_details_validator = MissingDetails_validator EventDetails._other_validator = bv.Void() EventDetails._tagmap = { 'admin_alerting_alert_state_changed_details': EventDetails._admin_alerting_alert_state_changed_details_validator, 'admin_alerting_changed_alert_config_details': EventDetails._admin_alerting_changed_alert_config_details_validator, 'admin_alerting_triggered_alert_details': EventDetails._admin_alerting_triggered_alert_details_validator, 'ransomware_restore_process_completed_details': EventDetails._ransomware_restore_process_completed_details_validator, 'ransomware_restore_process_started_details': EventDetails._ransomware_restore_process_started_details_validator, 'app_blocked_by_permissions_details': EventDetails._app_blocked_by_permissions_details_validator, 'app_link_team_details': EventDetails._app_link_team_details_validator, 'app_link_user_details': EventDetails._app_link_user_details_validator, 'app_unlink_team_details': EventDetails._app_unlink_team_details_validator, 'app_unlink_user_details': EventDetails._app_unlink_user_details_validator, 'integration_connected_details': EventDetails._integration_connected_details_validator, 'integration_disconnected_details': EventDetails._integration_disconnected_details_validator, 'file_add_comment_details': EventDetails._file_add_comment_details_validator, 'file_change_comment_subscription_details': EventDetails._file_change_comment_subscription_details_validator, 'file_delete_comment_details': EventDetails._file_delete_comment_details_validator, 'file_edit_comment_details': EventDetails._file_edit_comment_details_validator, 'file_like_comment_details': EventDetails._file_like_comment_details_validator, 'file_resolve_comment_details': EventDetails._file_resolve_comment_details_validator, 'file_unlike_comment_details': EventDetails._file_unlike_comment_details_validator, 'file_unresolve_comment_details': EventDetails._file_unresolve_comment_details_validator, 'governance_policy_add_folders_details': EventDetails._governance_policy_add_folders_details_validator, 'governance_policy_add_folder_failed_details': EventDetails._governance_policy_add_folder_failed_details_validator, 'governance_policy_content_disposed_details': EventDetails._governance_policy_content_disposed_details_validator, 'governance_policy_create_details': EventDetails._governance_policy_create_details_validator, 'governance_policy_delete_details': EventDetails._governance_policy_delete_details_validator, 'governance_policy_edit_details_details': EventDetails._governance_policy_edit_details_details_validator, 'governance_policy_edit_duration_details': EventDetails._governance_policy_edit_duration_details_validator, 'governance_policy_export_created_details': EventDetails._governance_policy_export_created_details_validator, 'governance_policy_export_removed_details': EventDetails._governance_policy_export_removed_details_validator, 'governance_policy_remove_folders_details': EventDetails._governance_policy_remove_folders_details_validator, 'governance_policy_report_created_details': EventDetails._governance_policy_report_created_details_validator, 'governance_policy_zip_part_downloaded_details': EventDetails._governance_policy_zip_part_downloaded_details_validator, 'legal_holds_activate_a_hold_details': EventDetails._legal_holds_activate_a_hold_details_validator, 'legal_holds_add_members_details': EventDetails._legal_holds_add_members_details_validator, 'legal_holds_change_hold_details_details': EventDetails._legal_holds_change_hold_details_details_validator, 'legal_holds_change_hold_name_details': EventDetails._legal_holds_change_hold_name_details_validator, 'legal_holds_export_a_hold_details': EventDetails._legal_holds_export_a_hold_details_validator, 'legal_holds_export_cancelled_details': EventDetails._legal_holds_export_cancelled_details_validator, 'legal_holds_export_downloaded_details': EventDetails._legal_holds_export_downloaded_details_validator, 'legal_holds_export_removed_details': EventDetails._legal_holds_export_removed_details_validator, 'legal_holds_release_a_hold_details': EventDetails._legal_holds_release_a_hold_details_validator, 'legal_holds_remove_members_details': EventDetails._legal_holds_remove_members_details_validator, 'legal_holds_report_a_hold_details': EventDetails._legal_holds_report_a_hold_details_validator, 'device_change_ip_desktop_details': EventDetails._device_change_ip_desktop_details_validator, 'device_change_ip_mobile_details': EventDetails._device_change_ip_mobile_details_validator, 'device_change_ip_web_details': EventDetails._device_change_ip_web_details_validator, 'device_delete_on_unlink_fail_details': EventDetails._device_delete_on_unlink_fail_details_validator, 'device_delete_on_unlink_success_details': EventDetails._device_delete_on_unlink_success_details_validator, 'device_link_fail_details': EventDetails._device_link_fail_details_validator, 'device_link_success_details': EventDetails._device_link_success_details_validator, 'device_management_disabled_details': EventDetails._device_management_disabled_details_validator, 'device_management_enabled_details': EventDetails._device_management_enabled_details_validator, 'device_sync_backup_status_changed_details': EventDetails._device_sync_backup_status_changed_details_validator, 'device_unlink_details': EventDetails._device_unlink_details_validator, 'dropbox_passwords_exported_details': EventDetails._dropbox_passwords_exported_details_validator, 'dropbox_passwords_new_device_enrolled_details': EventDetails._dropbox_passwords_new_device_enrolled_details_validator, 'emm_refresh_auth_token_details': EventDetails._emm_refresh_auth_token_details_validator, 'external_drive_backup_eligibility_status_checked_details': EventDetails._external_drive_backup_eligibility_status_checked_details_validator, 'external_drive_backup_status_changed_details': EventDetails._external_drive_backup_status_changed_details_validator, 'account_capture_change_availability_details': EventDetails._account_capture_change_availability_details_validator, 'account_capture_migrate_account_details': EventDetails._account_capture_migrate_account_details_validator, 'account_capture_notification_emails_sent_details': EventDetails._account_capture_notification_emails_sent_details_validator, 'account_capture_relinquish_account_details': EventDetails._account_capture_relinquish_account_details_validator, 'disabled_domain_invites_details': EventDetails._disabled_domain_invites_details_validator, 'domain_invites_approve_request_to_join_team_details': EventDetails._domain_invites_approve_request_to_join_team_details_validator, 'domain_invites_decline_request_to_join_team_details': EventDetails._domain_invites_decline_request_to_join_team_details_validator, 'domain_invites_email_existing_users_details': EventDetails._domain_invites_email_existing_users_details_validator, 'domain_invites_request_to_join_team_details': EventDetails._domain_invites_request_to_join_team_details_validator, 'domain_invites_set_invite_new_user_pref_to_no_details': EventDetails._domain_invites_set_invite_new_user_pref_to_no_details_validator, 'domain_invites_set_invite_new_user_pref_to_yes_details': EventDetails._domain_invites_set_invite_new_user_pref_to_yes_details_validator, 'domain_verification_add_domain_fail_details': EventDetails._domain_verification_add_domain_fail_details_validator, 'domain_verification_add_domain_success_details': EventDetails._domain_verification_add_domain_success_details_validator, 'domain_verification_remove_domain_details': EventDetails._domain_verification_remove_domain_details_validator, 'enabled_domain_invites_details': EventDetails._enabled_domain_invites_details_validator, 'team_encryption_key_cancel_key_deletion_details': EventDetails._team_encryption_key_cancel_key_deletion_details_validator, 'team_encryption_key_create_key_details': EventDetails._team_encryption_key_create_key_details_validator, 'team_encryption_key_delete_key_details': EventDetails._team_encryption_key_delete_key_details_validator, 'team_encryption_key_disable_key_details': EventDetails._team_encryption_key_disable_key_details_validator, 'team_encryption_key_enable_key_details': EventDetails._team_encryption_key_enable_key_details_validator, 'team_encryption_key_rotate_key_details': EventDetails._team_encryption_key_rotate_key_details_validator, 'team_encryption_key_schedule_key_deletion_details': EventDetails._team_encryption_key_schedule_key_deletion_details_validator, 'apply_naming_convention_details': EventDetails._apply_naming_convention_details_validator, 'create_folder_details': EventDetails._create_folder_details_validator, 'file_add_details': EventDetails._file_add_details_validator, 'file_add_from_automation_details': EventDetails._file_add_from_automation_details_validator, 'file_copy_details': EventDetails._file_copy_details_validator, 'file_delete_details': EventDetails._file_delete_details_validator, 'file_download_details': EventDetails._file_download_details_validator, 'file_edit_details': EventDetails._file_edit_details_validator, 'file_get_copy_reference_details': EventDetails._file_get_copy_reference_details_validator, 'file_locking_lock_status_changed_details': EventDetails._file_locking_lock_status_changed_details_validator, 'file_move_details': EventDetails._file_move_details_validator, 'file_permanently_delete_details': EventDetails._file_permanently_delete_details_validator, 'file_preview_details': EventDetails._file_preview_details_validator, 'file_rename_details': EventDetails._file_rename_details_validator, 'file_restore_details': EventDetails._file_restore_details_validator, 'file_revert_details': EventDetails._file_revert_details_validator, 'file_rollback_changes_details': EventDetails._file_rollback_changes_details_validator, 'file_save_copy_reference_details': EventDetails._file_save_copy_reference_details_validator, 'folder_overview_description_changed_details': EventDetails._folder_overview_description_changed_details_validator, 'folder_overview_item_pinned_details': EventDetails._folder_overview_item_pinned_details_validator, 'folder_overview_item_unpinned_details': EventDetails._folder_overview_item_unpinned_details_validator, 'object_label_added_details': EventDetails._object_label_added_details_validator, 'object_label_removed_details': EventDetails._object_label_removed_details_validator, 'object_label_updated_value_details': EventDetails._object_label_updated_value_details_validator, 'organize_folder_with_tidy_details': EventDetails._organize_folder_with_tidy_details_validator, 'replay_file_delete_details': EventDetails._replay_file_delete_details_validator, 'rewind_folder_details': EventDetails._rewind_folder_details_validator, 'undo_naming_convention_details': EventDetails._undo_naming_convention_details_validator, 'undo_organize_folder_with_tidy_details': EventDetails._undo_organize_folder_with_tidy_details_validator, 'user_tags_added_details': EventDetails._user_tags_added_details_validator, 'user_tags_removed_details': EventDetails._user_tags_removed_details_validator, 'email_ingest_receive_file_details': EventDetails._email_ingest_receive_file_details_validator, 'file_request_change_details': EventDetails._file_request_change_details_validator, 'file_request_close_details': EventDetails._file_request_close_details_validator, 'file_request_create_details': EventDetails._file_request_create_details_validator, 'file_request_delete_details': EventDetails._file_request_delete_details_validator, 'file_request_receive_file_details': EventDetails._file_request_receive_file_details_validator, 'group_add_external_id_details': EventDetails._group_add_external_id_details_validator, 'group_add_member_details': EventDetails._group_add_member_details_validator, 'group_change_external_id_details': EventDetails._group_change_external_id_details_validator, 'group_change_management_type_details': EventDetails._group_change_management_type_details_validator, 'group_change_member_role_details': EventDetails._group_change_member_role_details_validator, 'group_create_details': EventDetails._group_create_details_validator, 'group_delete_details': EventDetails._group_delete_details_validator, 'group_description_updated_details': EventDetails._group_description_updated_details_validator, 'group_join_policy_updated_details': EventDetails._group_join_policy_updated_details_validator, 'group_moved_details': EventDetails._group_moved_details_validator, 'group_remove_external_id_details': EventDetails._group_remove_external_id_details_validator, 'group_remove_member_details': EventDetails._group_remove_member_details_validator, 'group_rename_details': EventDetails._group_rename_details_validator, 'account_lock_or_unlocked_details': EventDetails._account_lock_or_unlocked_details_validator, 'emm_error_details': EventDetails._emm_error_details_validator, 'guest_admin_signed_in_via_trusted_teams_details': EventDetails._guest_admin_signed_in_via_trusted_teams_details_validator, 'guest_admin_signed_out_via_trusted_teams_details': EventDetails._guest_admin_signed_out_via_trusted_teams_details_validator, 'login_fail_details': EventDetails._login_fail_details_validator, 'login_success_details': EventDetails._login_success_details_validator, 'logout_details': EventDetails._logout_details_validator, 'reseller_support_session_end_details': EventDetails._reseller_support_session_end_details_validator, 'reseller_support_session_start_details': EventDetails._reseller_support_session_start_details_validator, 'sign_in_as_session_end_details': EventDetails._sign_in_as_session_end_details_validator, 'sign_in_as_session_start_details': EventDetails._sign_in_as_session_start_details_validator, 'sso_error_details': EventDetails._sso_error_details_validator, 'backup_admin_invitation_sent_details': EventDetails._backup_admin_invitation_sent_details_validator, 'backup_invitation_opened_details': EventDetails._backup_invitation_opened_details_validator, 'create_team_invite_link_details': EventDetails._create_team_invite_link_details_validator, 'delete_team_invite_link_details': EventDetails._delete_team_invite_link_details_validator, 'member_add_external_id_details': EventDetails._member_add_external_id_details_validator, 'member_add_name_details': EventDetails._member_add_name_details_validator, 'member_change_admin_role_details': EventDetails._member_change_admin_role_details_validator, 'member_change_email_details': EventDetails._member_change_email_details_validator, 'member_change_external_id_details': EventDetails._member_change_external_id_details_validator, 'member_change_membership_type_details': EventDetails._member_change_membership_type_details_validator, 'member_change_name_details': EventDetails._member_change_name_details_validator, 'member_change_reseller_role_details': EventDetails._member_change_reseller_role_details_validator, 'member_change_status_details': EventDetails._member_change_status_details_validator, 'member_delete_manual_contacts_details': EventDetails._member_delete_manual_contacts_details_validator, 'member_delete_profile_photo_details': EventDetails._member_delete_profile_photo_details_validator, 'member_permanently_delete_account_contents_details': EventDetails._member_permanently_delete_account_contents_details_validator, 'member_remove_external_id_details': EventDetails._member_remove_external_id_details_validator, 'member_set_profile_photo_details': EventDetails._member_set_profile_photo_details_validator, 'member_space_limits_add_custom_quota_details': EventDetails._member_space_limits_add_custom_quota_details_validator, 'member_space_limits_change_custom_quota_details': EventDetails._member_space_limits_change_custom_quota_details_validator, 'member_space_limits_change_status_details': EventDetails._member_space_limits_change_status_details_validator, 'member_space_limits_remove_custom_quota_details': EventDetails._member_space_limits_remove_custom_quota_details_validator, 'member_suggest_details': EventDetails._member_suggest_details_validator, 'member_transfer_account_contents_details': EventDetails._member_transfer_account_contents_details_validator, 'pending_secondary_email_added_details': EventDetails._pending_secondary_email_added_details_validator, 'secondary_email_deleted_details': EventDetails._secondary_email_deleted_details_validator, 'secondary_email_verified_details': EventDetails._secondary_email_verified_details_validator, 'secondary_mails_policy_changed_details': EventDetails._secondary_mails_policy_changed_details_validator, 'binder_add_page_details': EventDetails._binder_add_page_details_validator, 'binder_add_section_details': EventDetails._binder_add_section_details_validator, 'binder_remove_page_details': EventDetails._binder_remove_page_details_validator, 'binder_remove_section_details': EventDetails._binder_remove_section_details_validator, 'binder_rename_page_details': EventDetails._binder_rename_page_details_validator, 'binder_rename_section_details': EventDetails._binder_rename_section_details_validator, 'binder_reorder_page_details': EventDetails._binder_reorder_page_details_validator, 'binder_reorder_section_details': EventDetails._binder_reorder_section_details_validator, 'paper_content_add_member_details': EventDetails._paper_content_add_member_details_validator, 'paper_content_add_to_folder_details': EventDetails._paper_content_add_to_folder_details_validator, 'paper_content_archive_details': EventDetails._paper_content_archive_details_validator, 'paper_content_create_details': EventDetails._paper_content_create_details_validator, 'paper_content_permanently_delete_details': EventDetails._paper_content_permanently_delete_details_validator, 'paper_content_remove_from_folder_details': EventDetails._paper_content_remove_from_folder_details_validator, 'paper_content_remove_member_details': EventDetails._paper_content_remove_member_details_validator, 'paper_content_rename_details': EventDetails._paper_content_rename_details_validator, 'paper_content_restore_details': EventDetails._paper_content_restore_details_validator, 'paper_doc_add_comment_details': EventDetails._paper_doc_add_comment_details_validator, 'paper_doc_change_member_role_details': EventDetails._paper_doc_change_member_role_details_validator, 'paper_doc_change_sharing_policy_details': EventDetails._paper_doc_change_sharing_policy_details_validator, 'paper_doc_change_subscription_details': EventDetails._paper_doc_change_subscription_details_validator, 'paper_doc_deleted_details': EventDetails._paper_doc_deleted_details_validator, 'paper_doc_delete_comment_details': EventDetails._paper_doc_delete_comment_details_validator, 'paper_doc_download_details': EventDetails._paper_doc_download_details_validator, 'paper_doc_edit_details': EventDetails._paper_doc_edit_details_validator, 'paper_doc_edit_comment_details': EventDetails._paper_doc_edit_comment_details_validator, 'paper_doc_followed_details': EventDetails._paper_doc_followed_details_validator, 'paper_doc_mention_details': EventDetails._paper_doc_mention_details_validator, 'paper_doc_ownership_changed_details': EventDetails._paper_doc_ownership_changed_details_validator, 'paper_doc_request_access_details': EventDetails._paper_doc_request_access_details_validator, 'paper_doc_resolve_comment_details': EventDetails._paper_doc_resolve_comment_details_validator, 'paper_doc_revert_details': EventDetails._paper_doc_revert_details_validator, 'paper_doc_slack_share_details': EventDetails._paper_doc_slack_share_details_validator, 'paper_doc_team_invite_details': EventDetails._paper_doc_team_invite_details_validator, 'paper_doc_trashed_details': EventDetails._paper_doc_trashed_details_validator, 'paper_doc_unresolve_comment_details': EventDetails._paper_doc_unresolve_comment_details_validator, 'paper_doc_untrashed_details': EventDetails._paper_doc_untrashed_details_validator, 'paper_doc_view_details': EventDetails._paper_doc_view_details_validator, 'paper_external_view_allow_details': EventDetails._paper_external_view_allow_details_validator, 'paper_external_view_default_team_details': EventDetails._paper_external_view_default_team_details_validator, 'paper_external_view_forbid_details': EventDetails._paper_external_view_forbid_details_validator, 'paper_folder_change_subscription_details': EventDetails._paper_folder_change_subscription_details_validator, 'paper_folder_deleted_details': EventDetails._paper_folder_deleted_details_validator, 'paper_folder_followed_details': EventDetails._paper_folder_followed_details_validator, 'paper_folder_team_invite_details': EventDetails._paper_folder_team_invite_details_validator, 'paper_published_link_change_permission_details': EventDetails._paper_published_link_change_permission_details_validator, 'paper_published_link_create_details': EventDetails._paper_published_link_create_details_validator, 'paper_published_link_disabled_details': EventDetails._paper_published_link_disabled_details_validator, 'paper_published_link_view_details': EventDetails._paper_published_link_view_details_validator, 'password_change_details': EventDetails._password_change_details_validator, 'password_reset_details': EventDetails._password_reset_details_validator, 'password_reset_all_details': EventDetails._password_reset_all_details_validator, 'classification_create_report_details': EventDetails._classification_create_report_details_validator, 'classification_create_report_fail_details': EventDetails._classification_create_report_fail_details_validator, 'emm_create_exceptions_report_details': EventDetails._emm_create_exceptions_report_details_validator, 'emm_create_usage_report_details': EventDetails._emm_create_usage_report_details_validator, 'export_members_report_details': EventDetails._export_members_report_details_validator, 'export_members_report_fail_details': EventDetails._export_members_report_fail_details_validator, 'external_sharing_create_report_details': EventDetails._external_sharing_create_report_details_validator, 'external_sharing_report_failed_details': EventDetails._external_sharing_report_failed_details_validator, 'no_expiration_link_gen_create_report_details': EventDetails._no_expiration_link_gen_create_report_details_validator, 'no_expiration_link_gen_report_failed_details': EventDetails._no_expiration_link_gen_report_failed_details_validator, 'no_password_link_gen_create_report_details': EventDetails._no_password_link_gen_create_report_details_validator, 'no_password_link_gen_report_failed_details': EventDetails._no_password_link_gen_report_failed_details_validator, 'no_password_link_view_create_report_details': EventDetails._no_password_link_view_create_report_details_validator, 'no_password_link_view_report_failed_details': EventDetails._no_password_link_view_report_failed_details_validator, 'outdated_link_view_create_report_details': EventDetails._outdated_link_view_create_report_details_validator, 'outdated_link_view_report_failed_details': EventDetails._outdated_link_view_report_failed_details_validator, 'paper_admin_export_start_details': EventDetails._paper_admin_export_start_details_validator, 'ransomware_alert_create_report_details': EventDetails._ransomware_alert_create_report_details_validator, 'ransomware_alert_create_report_failed_details': EventDetails._ransomware_alert_create_report_failed_details_validator, 'smart_sync_create_admin_privilege_report_details': EventDetails._smart_sync_create_admin_privilege_report_details_validator, 'team_activity_create_report_details': EventDetails._team_activity_create_report_details_validator, 'team_activity_create_report_fail_details': EventDetails._team_activity_create_report_fail_details_validator, 'collection_share_details': EventDetails._collection_share_details_validator, 'file_transfers_file_add_details': EventDetails._file_transfers_file_add_details_validator, 'file_transfers_transfer_delete_details': EventDetails._file_transfers_transfer_delete_details_validator, 'file_transfers_transfer_download_details': EventDetails._file_transfers_transfer_download_details_validator, 'file_transfers_transfer_send_details': EventDetails._file_transfers_transfer_send_details_validator, 'file_transfers_transfer_view_details': EventDetails._file_transfers_transfer_view_details_validator, 'note_acl_invite_only_details': EventDetails._note_acl_invite_only_details_validator, 'note_acl_link_details': EventDetails._note_acl_link_details_validator, 'note_acl_team_link_details': EventDetails._note_acl_team_link_details_validator, 'note_shared_details': EventDetails._note_shared_details_validator, 'note_share_receive_details': EventDetails._note_share_receive_details_validator, 'open_note_shared_details': EventDetails._open_note_shared_details_validator, 'replay_file_shared_link_created_details': EventDetails._replay_file_shared_link_created_details_validator, 'replay_file_shared_link_modified_details': EventDetails._replay_file_shared_link_modified_details_validator, 'replay_project_team_add_details': EventDetails._replay_project_team_add_details_validator, 'replay_project_team_delete_details': EventDetails._replay_project_team_delete_details_validator, 'sf_add_group_details': EventDetails._sf_add_group_details_validator, 'sf_allow_non_members_to_view_shared_links_details': EventDetails._sf_allow_non_members_to_view_shared_links_details_validator, 'sf_external_invite_warn_details': EventDetails._sf_external_invite_warn_details_validator, 'sf_fb_invite_details': EventDetails._sf_fb_invite_details_validator, 'sf_fb_invite_change_role_details': EventDetails._sf_fb_invite_change_role_details_validator, 'sf_fb_uninvite_details': EventDetails._sf_fb_uninvite_details_validator, 'sf_invite_group_details': EventDetails._sf_invite_group_details_validator, 'sf_team_grant_access_details': EventDetails._sf_team_grant_access_details_validator, 'sf_team_invite_details': EventDetails._sf_team_invite_details_validator, 'sf_team_invite_change_role_details': EventDetails._sf_team_invite_change_role_details_validator, 'sf_team_join_details': EventDetails._sf_team_join_details_validator, 'sf_team_join_from_oob_link_details': EventDetails._sf_team_join_from_oob_link_details_validator, 'sf_team_uninvite_details': EventDetails._sf_team_uninvite_details_validator, 'shared_content_add_invitees_details': EventDetails._shared_content_add_invitees_details_validator, 'shared_content_add_link_expiry_details': EventDetails._shared_content_add_link_expiry_details_validator, 'shared_content_add_link_password_details': EventDetails._shared_content_add_link_password_details_validator, 'shared_content_add_member_details': EventDetails._shared_content_add_member_details_validator, 'shared_content_change_downloads_policy_details': EventDetails._shared_content_change_downloads_policy_details_validator, 'shared_content_change_invitee_role_details': EventDetails._shared_content_change_invitee_role_details_validator, 'shared_content_change_link_audience_details': EventDetails._shared_content_change_link_audience_details_validator, 'shared_content_change_link_expiry_details': EventDetails._shared_content_change_link_expiry_details_validator, 'shared_content_change_link_password_details': EventDetails._shared_content_change_link_password_details_validator, 'shared_content_change_member_role_details': EventDetails._shared_content_change_member_role_details_validator, 'shared_content_change_viewer_info_policy_details': EventDetails._shared_content_change_viewer_info_policy_details_validator, 'shared_content_claim_invitation_details': EventDetails._shared_content_claim_invitation_details_validator, 'shared_content_copy_details': EventDetails._shared_content_copy_details_validator, 'shared_content_download_details': EventDetails._shared_content_download_details_validator, 'shared_content_relinquish_membership_details': EventDetails._shared_content_relinquish_membership_details_validator, 'shared_content_remove_invitees_details': EventDetails._shared_content_remove_invitees_details_validator, 'shared_content_remove_link_expiry_details': EventDetails._shared_content_remove_link_expiry_details_validator, 'shared_content_remove_link_password_details': EventDetails._shared_content_remove_link_password_details_validator, 'shared_content_remove_member_details': EventDetails._shared_content_remove_member_details_validator, 'shared_content_request_access_details': EventDetails._shared_content_request_access_details_validator, 'shared_content_restore_invitees_details': EventDetails._shared_content_restore_invitees_details_validator, 'shared_content_restore_member_details': EventDetails._shared_content_restore_member_details_validator, 'shared_content_unshare_details': EventDetails._shared_content_unshare_details_validator, 'shared_content_view_details': EventDetails._shared_content_view_details_validator, 'shared_folder_change_link_policy_details': EventDetails._shared_folder_change_link_policy_details_validator, 'shared_folder_change_members_inheritance_policy_details': EventDetails._shared_folder_change_members_inheritance_policy_details_validator, 'shared_folder_change_members_management_policy_details': EventDetails._shared_folder_change_members_management_policy_details_validator, 'shared_folder_change_members_policy_details': EventDetails._shared_folder_change_members_policy_details_validator, 'shared_folder_create_details': EventDetails._shared_folder_create_details_validator, 'shared_folder_decline_invitation_details': EventDetails._shared_folder_decline_invitation_details_validator, 'shared_folder_mount_details': EventDetails._shared_folder_mount_details_validator, 'shared_folder_nest_details': EventDetails._shared_folder_nest_details_validator, 'shared_folder_transfer_ownership_details': EventDetails._shared_folder_transfer_ownership_details_validator, 'shared_folder_unmount_details': EventDetails._shared_folder_unmount_details_validator, 'shared_link_add_expiry_details': EventDetails._shared_link_add_expiry_details_validator, 'shared_link_change_expiry_details': EventDetails._shared_link_change_expiry_details_validator, 'shared_link_change_visibility_details': EventDetails._shared_link_change_visibility_details_validator, 'shared_link_copy_details': EventDetails._shared_link_copy_details_validator, 'shared_link_create_details': EventDetails._shared_link_create_details_validator, 'shared_link_disable_details': EventDetails._shared_link_disable_details_validator, 'shared_link_download_details': EventDetails._shared_link_download_details_validator, 'shared_link_remove_expiry_details': EventDetails._shared_link_remove_expiry_details_validator, 'shared_link_settings_add_expiration_details': EventDetails._shared_link_settings_add_expiration_details_validator, 'shared_link_settings_add_password_details': EventDetails._shared_link_settings_add_password_details_validator, 'shared_link_settings_allow_download_disabled_details': EventDetails._shared_link_settings_allow_download_disabled_details_validator, 'shared_link_settings_allow_download_enabled_details': EventDetails._shared_link_settings_allow_download_enabled_details_validator, 'shared_link_settings_change_audience_details': EventDetails._shared_link_settings_change_audience_details_validator, 'shared_link_settings_change_expiration_details': EventDetails._shared_link_settings_change_expiration_details_validator, 'shared_link_settings_change_password_details': EventDetails._shared_link_settings_change_password_details_validator, 'shared_link_settings_remove_expiration_details': EventDetails._shared_link_settings_remove_expiration_details_validator, 'shared_link_settings_remove_password_details': EventDetails._shared_link_settings_remove_password_details_validator, 'shared_link_share_details': EventDetails._shared_link_share_details_validator, 'shared_link_view_details': EventDetails._shared_link_view_details_validator, 'shared_note_opened_details': EventDetails._shared_note_opened_details_validator, 'shmodel_disable_downloads_details': EventDetails._shmodel_disable_downloads_details_validator, 'shmodel_enable_downloads_details': EventDetails._shmodel_enable_downloads_details_validator, 'shmodel_group_share_details': EventDetails._shmodel_group_share_details_validator, 'showcase_access_granted_details': EventDetails._showcase_access_granted_details_validator, 'showcase_add_member_details': EventDetails._showcase_add_member_details_validator, 'showcase_archived_details': EventDetails._showcase_archived_details_validator, 'showcase_created_details': EventDetails._showcase_created_details_validator, 'showcase_delete_comment_details': EventDetails._showcase_delete_comment_details_validator, 'showcase_edited_details': EventDetails._showcase_edited_details_validator, 'showcase_edit_comment_details': EventDetails._showcase_edit_comment_details_validator, 'showcase_file_added_details': EventDetails._showcase_file_added_details_validator, 'showcase_file_download_details': EventDetails._showcase_file_download_details_validator, 'showcase_file_removed_details': EventDetails._showcase_file_removed_details_validator, 'showcase_file_view_details': EventDetails._showcase_file_view_details_validator, 'showcase_permanently_deleted_details': EventDetails._showcase_permanently_deleted_details_validator, 'showcase_post_comment_details': EventDetails._showcase_post_comment_details_validator, 'showcase_remove_member_details': EventDetails._showcase_remove_member_details_validator, 'showcase_renamed_details': EventDetails._showcase_renamed_details_validator, 'showcase_request_access_details': EventDetails._showcase_request_access_details_validator, 'showcase_resolve_comment_details': EventDetails._showcase_resolve_comment_details_validator, 'showcase_restored_details': EventDetails._showcase_restored_details_validator, 'showcase_trashed_details': EventDetails._showcase_trashed_details_validator, 'showcase_trashed_deprecated_details': EventDetails._showcase_trashed_deprecated_details_validator, 'showcase_unresolve_comment_details': EventDetails._showcase_unresolve_comment_details_validator, 'showcase_untrashed_details': EventDetails._showcase_untrashed_details_validator, 'showcase_untrashed_deprecated_details': EventDetails._showcase_untrashed_deprecated_details_validator, 'showcase_view_details': EventDetails._showcase_view_details_validator, 'sso_add_cert_details': EventDetails._sso_add_cert_details_validator, 'sso_add_login_url_details': EventDetails._sso_add_login_url_details_validator, 'sso_add_logout_url_details': EventDetails._sso_add_logout_url_details_validator, 'sso_change_cert_details': EventDetails._sso_change_cert_details_validator, 'sso_change_login_url_details': EventDetails._sso_change_login_url_details_validator, 'sso_change_logout_url_details': EventDetails._sso_change_logout_url_details_validator, 'sso_change_saml_identity_mode_details': EventDetails._sso_change_saml_identity_mode_details_validator, 'sso_remove_cert_details': EventDetails._sso_remove_cert_details_validator, 'sso_remove_login_url_details': EventDetails._sso_remove_login_url_details_validator, 'sso_remove_logout_url_details': EventDetails._sso_remove_logout_url_details_validator, 'team_folder_change_status_details': EventDetails._team_folder_change_status_details_validator, 'team_folder_create_details': EventDetails._team_folder_create_details_validator, 'team_folder_downgrade_details': EventDetails._team_folder_downgrade_details_validator, 'team_folder_permanently_delete_details': EventDetails._team_folder_permanently_delete_details_validator, 'team_folder_rename_details': EventDetails._team_folder_rename_details_validator, 'team_selective_sync_settings_changed_details': EventDetails._team_selective_sync_settings_changed_details_validator, 'account_capture_change_policy_details': EventDetails._account_capture_change_policy_details_validator, 'admin_email_reminders_changed_details': EventDetails._admin_email_reminders_changed_details_validator, 'allow_download_disabled_details': EventDetails._allow_download_disabled_details_validator, 'allow_download_enabled_details': EventDetails._allow_download_enabled_details_validator, 'app_permissions_changed_details': EventDetails._app_permissions_changed_details_validator, 'camera_uploads_policy_changed_details': EventDetails._camera_uploads_policy_changed_details_validator, 'capture_transcript_policy_changed_details': EventDetails._capture_transcript_policy_changed_details_validator, 'classification_change_policy_details': EventDetails._classification_change_policy_details_validator, 'computer_backup_policy_changed_details': EventDetails._computer_backup_policy_changed_details_validator, 'content_administration_policy_changed_details': EventDetails._content_administration_policy_changed_details_validator, 'data_placement_restriction_change_policy_details': EventDetails._data_placement_restriction_change_policy_details_validator, 'data_placement_restriction_satisfy_policy_details': EventDetails._data_placement_restriction_satisfy_policy_details_validator, 'device_approvals_add_exception_details': EventDetails._device_approvals_add_exception_details_validator, 'device_approvals_change_desktop_policy_details': EventDetails._device_approvals_change_desktop_policy_details_validator, 'device_approvals_change_mobile_policy_details': EventDetails._device_approvals_change_mobile_policy_details_validator, 'device_approvals_change_overage_action_details': EventDetails._device_approvals_change_overage_action_details_validator, 'device_approvals_change_unlink_action_details': EventDetails._device_approvals_change_unlink_action_details_validator, 'device_approvals_remove_exception_details': EventDetails._device_approvals_remove_exception_details_validator, 'directory_restrictions_add_members_details': EventDetails._directory_restrictions_add_members_details_validator, 'directory_restrictions_remove_members_details': EventDetails._directory_restrictions_remove_members_details_validator, 'dropbox_passwords_policy_changed_details': EventDetails._dropbox_passwords_policy_changed_details_validator, 'email_ingest_policy_changed_details': EventDetails._email_ingest_policy_changed_details_validator, 'emm_add_exception_details': EventDetails._emm_add_exception_details_validator, 'emm_change_policy_details': EventDetails._emm_change_policy_details_validator, 'emm_remove_exception_details': EventDetails._emm_remove_exception_details_validator, 'extended_version_history_change_policy_details': EventDetails._extended_version_history_change_policy_details_validator, 'external_drive_backup_policy_changed_details': EventDetails._external_drive_backup_policy_changed_details_validator, 'file_comments_change_policy_details': EventDetails._file_comments_change_policy_details_validator, 'file_locking_policy_changed_details': EventDetails._file_locking_policy_changed_details_validator, 'file_provider_migration_policy_changed_details': EventDetails._file_provider_migration_policy_changed_details_validator, 'file_requests_change_policy_details': EventDetails._file_requests_change_policy_details_validator, 'file_requests_emails_enabled_details': EventDetails._file_requests_emails_enabled_details_validator, 'file_requests_emails_restricted_to_team_only_details': EventDetails._file_requests_emails_restricted_to_team_only_details_validator, 'file_transfers_policy_changed_details': EventDetails._file_transfers_policy_changed_details_validator, 'folder_link_restriction_policy_changed_details': EventDetails._folder_link_restriction_policy_changed_details_validator, 'google_sso_change_policy_details': EventDetails._google_sso_change_policy_details_validator, 'group_user_management_change_policy_details': EventDetails._group_user_management_change_policy_details_validator, 'integration_policy_changed_details': EventDetails._integration_policy_changed_details_validator, 'invite_acceptance_email_policy_changed_details': EventDetails._invite_acceptance_email_policy_changed_details_validator, 'member_requests_change_policy_details': EventDetails._member_requests_change_policy_details_validator, 'member_send_invite_policy_changed_details': EventDetails._member_send_invite_policy_changed_details_validator, 'member_space_limits_add_exception_details': EventDetails._member_space_limits_add_exception_details_validator, 'member_space_limits_change_caps_type_policy_details': EventDetails._member_space_limits_change_caps_type_policy_details_validator, 'member_space_limits_change_policy_details': EventDetails._member_space_limits_change_policy_details_validator, 'member_space_limits_remove_exception_details': EventDetails._member_space_limits_remove_exception_details_validator, 'member_suggestions_change_policy_details': EventDetails._member_suggestions_change_policy_details_validator, 'microsoft_office_addin_change_policy_details': EventDetails._microsoft_office_addin_change_policy_details_validator, 'network_control_change_policy_details': EventDetails._network_control_change_policy_details_validator, 'paper_change_deployment_policy_details': EventDetails._paper_change_deployment_policy_details_validator, 'paper_change_member_link_policy_details': EventDetails._paper_change_member_link_policy_details_validator, 'paper_change_member_policy_details': EventDetails._paper_change_member_policy_details_validator, 'paper_change_policy_details': EventDetails._paper_change_policy_details_validator, 'paper_default_folder_policy_changed_details': EventDetails._paper_default_folder_policy_changed_details_validator, 'paper_desktop_policy_changed_details': EventDetails._paper_desktop_policy_changed_details_validator, 'paper_enabled_users_group_addition_details': EventDetails._paper_enabled_users_group_addition_details_validator, 'paper_enabled_users_group_removal_details': EventDetails._paper_enabled_users_group_removal_details_validator, 'password_strength_requirements_change_policy_details': EventDetails._password_strength_requirements_change_policy_details_validator, 'permanent_delete_change_policy_details': EventDetails._permanent_delete_change_policy_details_validator, 'reseller_support_change_policy_details': EventDetails._reseller_support_change_policy_details_validator, 'rewind_policy_changed_details': EventDetails._rewind_policy_changed_details_validator, 'send_for_signature_policy_changed_details': EventDetails._send_for_signature_policy_changed_details_validator, 'sharing_change_folder_join_policy_details': EventDetails._sharing_change_folder_join_policy_details_validator, 'sharing_change_link_allow_change_expiration_policy_details': EventDetails._sharing_change_link_allow_change_expiration_policy_details_validator, 'sharing_change_link_default_expiration_policy_details': EventDetails._sharing_change_link_default_expiration_policy_details_validator, 'sharing_change_link_enforce_password_policy_details': EventDetails._sharing_change_link_enforce_password_policy_details_validator, 'sharing_change_link_policy_details': EventDetails._sharing_change_link_policy_details_validator, 'sharing_change_member_policy_details': EventDetails._sharing_change_member_policy_details_validator, 'showcase_change_download_policy_details': EventDetails._showcase_change_download_policy_details_validator, 'showcase_change_enabled_policy_details': EventDetails._showcase_change_enabled_policy_details_validator, 'showcase_change_external_sharing_policy_details': EventDetails._showcase_change_external_sharing_policy_details_validator, 'smarter_smart_sync_policy_changed_details': EventDetails._smarter_smart_sync_policy_changed_details_validator, 'smart_sync_change_policy_details': EventDetails._smart_sync_change_policy_details_validator, 'smart_sync_not_opt_out_details': EventDetails._smart_sync_not_opt_out_details_validator, 'smart_sync_opt_out_details': EventDetails._smart_sync_opt_out_details_validator, 'sso_change_policy_details': EventDetails._sso_change_policy_details_validator, 'team_branding_policy_changed_details': EventDetails._team_branding_policy_changed_details_validator, 'team_extensions_policy_changed_details': EventDetails._team_extensions_policy_changed_details_validator, 'team_selective_sync_policy_changed_details': EventDetails._team_selective_sync_policy_changed_details_validator, 'team_sharing_whitelist_subjects_changed_details': EventDetails._team_sharing_whitelist_subjects_changed_details_validator, 'tfa_add_exception_details': EventDetails._tfa_add_exception_details_validator, 'tfa_change_policy_details': EventDetails._tfa_change_policy_details_validator, 'tfa_remove_exception_details': EventDetails._tfa_remove_exception_details_validator, 'two_account_change_policy_details': EventDetails._two_account_change_policy_details_validator, 'viewer_info_policy_changed_details': EventDetails._viewer_info_policy_changed_details_validator, 'watermarking_policy_changed_details': EventDetails._watermarking_policy_changed_details_validator, 'web_sessions_change_active_session_limit_details': EventDetails._web_sessions_change_active_session_limit_details_validator, 'web_sessions_change_fixed_length_policy_details': EventDetails._web_sessions_change_fixed_length_policy_details_validator, 'web_sessions_change_idle_length_policy_details': EventDetails._web_sessions_change_idle_length_policy_details_validator, 'data_residency_migration_request_successful_details': EventDetails._data_residency_migration_request_successful_details_validator, 'data_residency_migration_request_unsuccessful_details': EventDetails._data_residency_migration_request_unsuccessful_details_validator, 'team_merge_from_details': EventDetails._team_merge_from_details_validator, 'team_merge_to_details': EventDetails._team_merge_to_details_validator, 'team_profile_add_background_details': EventDetails._team_profile_add_background_details_validator, 'team_profile_add_logo_details': EventDetails._team_profile_add_logo_details_validator, 'team_profile_change_background_details': EventDetails._team_profile_change_background_details_validator, 'team_profile_change_default_language_details': EventDetails._team_profile_change_default_language_details_validator, 'team_profile_change_logo_details': EventDetails._team_profile_change_logo_details_validator, 'team_profile_change_name_details': EventDetails._team_profile_change_name_details_validator, 'team_profile_remove_background_details': EventDetails._team_profile_remove_background_details_validator, 'team_profile_remove_logo_details': EventDetails._team_profile_remove_logo_details_validator, 'tfa_add_backup_phone_details': EventDetails._tfa_add_backup_phone_details_validator, 'tfa_add_security_key_details': EventDetails._tfa_add_security_key_details_validator, 'tfa_change_backup_phone_details': EventDetails._tfa_change_backup_phone_details_validator, 'tfa_change_status_details': EventDetails._tfa_change_status_details_validator, 'tfa_remove_backup_phone_details': EventDetails._tfa_remove_backup_phone_details_validator, 'tfa_remove_security_key_details': EventDetails._tfa_remove_security_key_details_validator, 'tfa_reset_details': EventDetails._tfa_reset_details_validator, 'changed_enterprise_admin_role_details': EventDetails._changed_enterprise_admin_role_details_validator, 'changed_enterprise_connected_team_status_details': EventDetails._changed_enterprise_connected_team_status_details_validator, 'ended_enterprise_admin_session_details': EventDetails._ended_enterprise_admin_session_details_validator, 'ended_enterprise_admin_session_deprecated_details': EventDetails._ended_enterprise_admin_session_deprecated_details_validator, 'enterprise_settings_locking_details': EventDetails._enterprise_settings_locking_details_validator, 'guest_admin_change_status_details': EventDetails._guest_admin_change_status_details_validator, 'started_enterprise_admin_session_details': EventDetails._started_enterprise_admin_session_details_validator, 'team_merge_request_accepted_details': EventDetails._team_merge_request_accepted_details_validator, 'team_merge_request_accepted_shown_to_primary_team_details': EventDetails._team_merge_request_accepted_shown_to_primary_team_details_validator, 'team_merge_request_accepted_shown_to_secondary_team_details': EventDetails._team_merge_request_accepted_shown_to_secondary_team_details_validator, 'team_merge_request_auto_canceled_details': EventDetails._team_merge_request_auto_canceled_details_validator, 'team_merge_request_canceled_details': EventDetails._team_merge_request_canceled_details_validator, 'team_merge_request_canceled_shown_to_primary_team_details': EventDetails._team_merge_request_canceled_shown_to_primary_team_details_validator, 'team_merge_request_canceled_shown_to_secondary_team_details': EventDetails._team_merge_request_canceled_shown_to_secondary_team_details_validator, 'team_merge_request_expired_details': EventDetails._team_merge_request_expired_details_validator, 'team_merge_request_expired_shown_to_primary_team_details': EventDetails._team_merge_request_expired_shown_to_primary_team_details_validator, 'team_merge_request_expired_shown_to_secondary_team_details': EventDetails._team_merge_request_expired_shown_to_secondary_team_details_validator, 'team_merge_request_rejected_shown_to_primary_team_details': EventDetails._team_merge_request_rejected_shown_to_primary_team_details_validator, 'team_merge_request_rejected_shown_to_secondary_team_details': EventDetails._team_merge_request_rejected_shown_to_secondary_team_details_validator, 'team_merge_request_reminder_details': EventDetails._team_merge_request_reminder_details_validator, 'team_merge_request_reminder_shown_to_primary_team_details': EventDetails._team_merge_request_reminder_shown_to_primary_team_details_validator, 'team_merge_request_reminder_shown_to_secondary_team_details': EventDetails._team_merge_request_reminder_shown_to_secondary_team_details_validator, 'team_merge_request_revoked_details': EventDetails._team_merge_request_revoked_details_validator, 'team_merge_request_sent_shown_to_primary_team_details': EventDetails._team_merge_request_sent_shown_to_primary_team_details_validator, 'team_merge_request_sent_shown_to_secondary_team_details': EventDetails._team_merge_request_sent_shown_to_secondary_team_details_validator, 'missing_details': EventDetails._missing_details_validator, 'other': EventDetails._other_validator, } EventDetails.other = EventDetails('other') EventType._admin_alerting_alert_state_changed_validator = AdminAlertingAlertStateChangedType_validator EventType._admin_alerting_changed_alert_config_validator = AdminAlertingChangedAlertConfigType_validator EventType._admin_alerting_triggered_alert_validator = AdminAlertingTriggeredAlertType_validator EventType._ransomware_restore_process_completed_validator = RansomwareRestoreProcessCompletedType_validator EventType._ransomware_restore_process_started_validator = RansomwareRestoreProcessStartedType_validator EventType._app_blocked_by_permissions_validator = AppBlockedByPermissionsType_validator EventType._app_link_team_validator = AppLinkTeamType_validator EventType._app_link_user_validator = AppLinkUserType_validator EventType._app_unlink_team_validator = AppUnlinkTeamType_validator EventType._app_unlink_user_validator = AppUnlinkUserType_validator EventType._integration_connected_validator = IntegrationConnectedType_validator EventType._integration_disconnected_validator = IntegrationDisconnectedType_validator EventType._file_add_comment_validator = FileAddCommentType_validator EventType._file_change_comment_subscription_validator = FileChangeCommentSubscriptionType_validator EventType._file_delete_comment_validator = FileDeleteCommentType_validator EventType._file_edit_comment_validator = FileEditCommentType_validator EventType._file_like_comment_validator = FileLikeCommentType_validator EventType._file_resolve_comment_validator = FileResolveCommentType_validator EventType._file_unlike_comment_validator = FileUnlikeCommentType_validator EventType._file_unresolve_comment_validator = FileUnresolveCommentType_validator EventType._governance_policy_add_folders_validator = GovernancePolicyAddFoldersType_validator EventType._governance_policy_add_folder_failed_validator = GovernancePolicyAddFolderFailedType_validator EventType._governance_policy_content_disposed_validator = GovernancePolicyContentDisposedType_validator EventType._governance_policy_create_validator = GovernancePolicyCreateType_validator EventType._governance_policy_delete_validator = GovernancePolicyDeleteType_validator EventType._governance_policy_edit_details_validator = GovernancePolicyEditDetailsType_validator EventType._governance_policy_edit_duration_validator = GovernancePolicyEditDurationType_validator EventType._governance_policy_export_created_validator = GovernancePolicyExportCreatedType_validator EventType._governance_policy_export_removed_validator = GovernancePolicyExportRemovedType_validator EventType._governance_policy_remove_folders_validator = GovernancePolicyRemoveFoldersType_validator EventType._governance_policy_report_created_validator = GovernancePolicyReportCreatedType_validator EventType._governance_policy_zip_part_downloaded_validator = GovernancePolicyZipPartDownloadedType_validator EventType._legal_holds_activate_a_hold_validator = LegalHoldsActivateAHoldType_validator EventType._legal_holds_add_members_validator = LegalHoldsAddMembersType_validator EventType._legal_holds_change_hold_details_validator = LegalHoldsChangeHoldDetailsType_validator EventType._legal_holds_change_hold_name_validator = LegalHoldsChangeHoldNameType_validator EventType._legal_holds_export_a_hold_validator = LegalHoldsExportAHoldType_validator EventType._legal_holds_export_cancelled_validator = LegalHoldsExportCancelledType_validator EventType._legal_holds_export_downloaded_validator = LegalHoldsExportDownloadedType_validator EventType._legal_holds_export_removed_validator = LegalHoldsExportRemovedType_validator EventType._legal_holds_release_a_hold_validator = LegalHoldsReleaseAHoldType_validator EventType._legal_holds_remove_members_validator = LegalHoldsRemoveMembersType_validator EventType._legal_holds_report_a_hold_validator = LegalHoldsReportAHoldType_validator EventType._device_change_ip_desktop_validator = DeviceChangeIpDesktopType_validator EventType._device_change_ip_mobile_validator = DeviceChangeIpMobileType_validator EventType._device_change_ip_web_validator = DeviceChangeIpWebType_validator EventType._device_delete_on_unlink_fail_validator = DeviceDeleteOnUnlinkFailType_validator EventType._device_delete_on_unlink_success_validator = DeviceDeleteOnUnlinkSuccessType_validator EventType._device_link_fail_validator = DeviceLinkFailType_validator EventType._device_link_success_validator = DeviceLinkSuccessType_validator EventType._device_management_disabled_validator = DeviceManagementDisabledType_validator EventType._device_management_enabled_validator = DeviceManagementEnabledType_validator EventType._device_sync_backup_status_changed_validator = DeviceSyncBackupStatusChangedType_validator EventType._device_unlink_validator = DeviceUnlinkType_validator EventType._dropbox_passwords_exported_validator = DropboxPasswordsExportedType_validator EventType._dropbox_passwords_new_device_enrolled_validator = DropboxPasswordsNewDeviceEnrolledType_validator EventType._emm_refresh_auth_token_validator = EmmRefreshAuthTokenType_validator EventType._external_drive_backup_eligibility_status_checked_validator = ExternalDriveBackupEligibilityStatusCheckedType_validator EventType._external_drive_backup_status_changed_validator = ExternalDriveBackupStatusChangedType_validator EventType._account_capture_change_availability_validator = AccountCaptureChangeAvailabilityType_validator EventType._account_capture_migrate_account_validator = AccountCaptureMigrateAccountType_validator EventType._account_capture_notification_emails_sent_validator = AccountCaptureNotificationEmailsSentType_validator EventType._account_capture_relinquish_account_validator = AccountCaptureRelinquishAccountType_validator EventType._disabled_domain_invites_validator = DisabledDomainInvitesType_validator EventType._domain_invites_approve_request_to_join_team_validator = DomainInvitesApproveRequestToJoinTeamType_validator EventType._domain_invites_decline_request_to_join_team_validator = DomainInvitesDeclineRequestToJoinTeamType_validator EventType._domain_invites_email_existing_users_validator = DomainInvitesEmailExistingUsersType_validator EventType._domain_invites_request_to_join_team_validator = DomainInvitesRequestToJoinTeamType_validator EventType._domain_invites_set_invite_new_user_pref_to_no_validator = DomainInvitesSetInviteNewUserPrefToNoType_validator EventType._domain_invites_set_invite_new_user_pref_to_yes_validator = DomainInvitesSetInviteNewUserPrefToYesType_validator EventType._domain_verification_add_domain_fail_validator = DomainVerificationAddDomainFailType_validator EventType._domain_verification_add_domain_success_validator = DomainVerificationAddDomainSuccessType_validator EventType._domain_verification_remove_domain_validator = DomainVerificationRemoveDomainType_validator EventType._enabled_domain_invites_validator = EnabledDomainInvitesType_validator EventType._team_encryption_key_cancel_key_deletion_validator = TeamEncryptionKeyCancelKeyDeletionType_validator EventType._team_encryption_key_create_key_validator = TeamEncryptionKeyCreateKeyType_validator EventType._team_encryption_key_delete_key_validator = TeamEncryptionKeyDeleteKeyType_validator EventType._team_encryption_key_disable_key_validator = TeamEncryptionKeyDisableKeyType_validator EventType._team_encryption_key_enable_key_validator = TeamEncryptionKeyEnableKeyType_validator EventType._team_encryption_key_rotate_key_validator = TeamEncryptionKeyRotateKeyType_validator EventType._team_encryption_key_schedule_key_deletion_validator = TeamEncryptionKeyScheduleKeyDeletionType_validator EventType._apply_naming_convention_validator = ApplyNamingConventionType_validator EventType._create_folder_validator = CreateFolderType_validator EventType._file_add_validator = FileAddType_validator EventType._file_add_from_automation_validator = FileAddFromAutomationType_validator EventType._file_copy_validator = FileCopyType_validator EventType._file_delete_validator = FileDeleteType_validator EventType._file_download_validator = FileDownloadType_validator EventType._file_edit_validator = FileEditType_validator EventType._file_get_copy_reference_validator = FileGetCopyReferenceType_validator EventType._file_locking_lock_status_changed_validator = FileLockingLockStatusChangedType_validator EventType._file_move_validator = FileMoveType_validator EventType._file_permanently_delete_validator = FilePermanentlyDeleteType_validator EventType._file_preview_validator = FilePreviewType_validator EventType._file_rename_validator = FileRenameType_validator EventType._file_restore_validator = FileRestoreType_validator EventType._file_revert_validator = FileRevertType_validator EventType._file_rollback_changes_validator = FileRollbackChangesType_validator EventType._file_save_copy_reference_validator = FileSaveCopyReferenceType_validator EventType._folder_overview_description_changed_validator = FolderOverviewDescriptionChangedType_validator EventType._folder_overview_item_pinned_validator = FolderOverviewItemPinnedType_validator EventType._folder_overview_item_unpinned_validator = FolderOverviewItemUnpinnedType_validator EventType._object_label_added_validator = ObjectLabelAddedType_validator EventType._object_label_removed_validator = ObjectLabelRemovedType_validator EventType._object_label_updated_value_validator = ObjectLabelUpdatedValueType_validator EventType._organize_folder_with_tidy_validator = OrganizeFolderWithTidyType_validator EventType._replay_file_delete_validator = ReplayFileDeleteType_validator EventType._rewind_folder_validator = RewindFolderType_validator EventType._undo_naming_convention_validator = UndoNamingConventionType_validator EventType._undo_organize_folder_with_tidy_validator = UndoOrganizeFolderWithTidyType_validator EventType._user_tags_added_validator = UserTagsAddedType_validator EventType._user_tags_removed_validator = UserTagsRemovedType_validator EventType._email_ingest_receive_file_validator = EmailIngestReceiveFileType_validator EventType._file_request_change_validator = FileRequestChangeType_validator EventType._file_request_close_validator = FileRequestCloseType_validator EventType._file_request_create_validator = FileRequestCreateType_validator EventType._file_request_delete_validator = FileRequestDeleteType_validator EventType._file_request_receive_file_validator = FileRequestReceiveFileType_validator EventType._group_add_external_id_validator = GroupAddExternalIdType_validator EventType._group_add_member_validator = GroupAddMemberType_validator EventType._group_change_external_id_validator = GroupChangeExternalIdType_validator EventType._group_change_management_type_validator = GroupChangeManagementTypeType_validator EventType._group_change_member_role_validator = GroupChangeMemberRoleType_validator EventType._group_create_validator = GroupCreateType_validator EventType._group_delete_validator = GroupDeleteType_validator EventType._group_description_updated_validator = GroupDescriptionUpdatedType_validator EventType._group_join_policy_updated_validator = GroupJoinPolicyUpdatedType_validator EventType._group_moved_validator = GroupMovedType_validator EventType._group_remove_external_id_validator = GroupRemoveExternalIdType_validator EventType._group_remove_member_validator = GroupRemoveMemberType_validator EventType._group_rename_validator = GroupRenameType_validator EventType._account_lock_or_unlocked_validator = AccountLockOrUnlockedType_validator EventType._emm_error_validator = EmmErrorType_validator EventType._guest_admin_signed_in_via_trusted_teams_validator = GuestAdminSignedInViaTrustedTeamsType_validator EventType._guest_admin_signed_out_via_trusted_teams_validator = GuestAdminSignedOutViaTrustedTeamsType_validator EventType._login_fail_validator = LoginFailType_validator EventType._login_success_validator = LoginSuccessType_validator EventType._logout_validator = LogoutType_validator EventType._reseller_support_session_end_validator = ResellerSupportSessionEndType_validator EventType._reseller_support_session_start_validator = ResellerSupportSessionStartType_validator EventType._sign_in_as_session_end_validator = SignInAsSessionEndType_validator EventType._sign_in_as_session_start_validator = SignInAsSessionStartType_validator EventType._sso_error_validator = SsoErrorType_validator EventType._backup_admin_invitation_sent_validator = BackupAdminInvitationSentType_validator EventType._backup_invitation_opened_validator = BackupInvitationOpenedType_validator EventType._create_team_invite_link_validator = CreateTeamInviteLinkType_validator EventType._delete_team_invite_link_validator = DeleteTeamInviteLinkType_validator EventType._member_add_external_id_validator = MemberAddExternalIdType_validator EventType._member_add_name_validator = MemberAddNameType_validator EventType._member_change_admin_role_validator = MemberChangeAdminRoleType_validator EventType._member_change_email_validator = MemberChangeEmailType_validator EventType._member_change_external_id_validator = MemberChangeExternalIdType_validator EventType._member_change_membership_type_validator = MemberChangeMembershipTypeType_validator EventType._member_change_name_validator = MemberChangeNameType_validator EventType._member_change_reseller_role_validator = MemberChangeResellerRoleType_validator EventType._member_change_status_validator = MemberChangeStatusType_validator EventType._member_delete_manual_contacts_validator = MemberDeleteManualContactsType_validator EventType._member_delete_profile_photo_validator = MemberDeleteProfilePhotoType_validator EventType._member_permanently_delete_account_contents_validator = MemberPermanentlyDeleteAccountContentsType_validator EventType._member_remove_external_id_validator = MemberRemoveExternalIdType_validator EventType._member_set_profile_photo_validator = MemberSetProfilePhotoType_validator EventType._member_space_limits_add_custom_quota_validator = MemberSpaceLimitsAddCustomQuotaType_validator EventType._member_space_limits_change_custom_quota_validator = MemberSpaceLimitsChangeCustomQuotaType_validator EventType._member_space_limits_change_status_validator = MemberSpaceLimitsChangeStatusType_validator EventType._member_space_limits_remove_custom_quota_validator = MemberSpaceLimitsRemoveCustomQuotaType_validator EventType._member_suggest_validator = MemberSuggestType_validator EventType._member_transfer_account_contents_validator = MemberTransferAccountContentsType_validator EventType._pending_secondary_email_added_validator = PendingSecondaryEmailAddedType_validator EventType._secondary_email_deleted_validator = SecondaryEmailDeletedType_validator EventType._secondary_email_verified_validator = SecondaryEmailVerifiedType_validator EventType._secondary_mails_policy_changed_validator = SecondaryMailsPolicyChangedType_validator EventType._binder_add_page_validator = BinderAddPageType_validator EventType._binder_add_section_validator = BinderAddSectionType_validator EventType._binder_remove_page_validator = BinderRemovePageType_validator EventType._binder_remove_section_validator = BinderRemoveSectionType_validator EventType._binder_rename_page_validator = BinderRenamePageType_validator EventType._binder_rename_section_validator = BinderRenameSectionType_validator EventType._binder_reorder_page_validator = BinderReorderPageType_validator EventType._binder_reorder_section_validator = BinderReorderSectionType_validator EventType._paper_content_add_member_validator = PaperContentAddMemberType_validator EventType._paper_content_add_to_folder_validator = PaperContentAddToFolderType_validator EventType._paper_content_archive_validator = PaperContentArchiveType_validator EventType._paper_content_create_validator = PaperContentCreateType_validator EventType._paper_content_permanently_delete_validator = PaperContentPermanentlyDeleteType_validator EventType._paper_content_remove_from_folder_validator = PaperContentRemoveFromFolderType_validator EventType._paper_content_remove_member_validator = PaperContentRemoveMemberType_validator EventType._paper_content_rename_validator = PaperContentRenameType_validator EventType._paper_content_restore_validator = PaperContentRestoreType_validator EventType._paper_doc_add_comment_validator = PaperDocAddCommentType_validator EventType._paper_doc_change_member_role_validator = PaperDocChangeMemberRoleType_validator EventType._paper_doc_change_sharing_policy_validator = PaperDocChangeSharingPolicyType_validator EventType._paper_doc_change_subscription_validator = PaperDocChangeSubscriptionType_validator EventType._paper_doc_deleted_validator = PaperDocDeletedType_validator EventType._paper_doc_delete_comment_validator = PaperDocDeleteCommentType_validator EventType._paper_doc_download_validator = PaperDocDownloadType_validator EventType._paper_doc_edit_validator = PaperDocEditType_validator EventType._paper_doc_edit_comment_validator = PaperDocEditCommentType_validator EventType._paper_doc_followed_validator = PaperDocFollowedType_validator EventType._paper_doc_mention_validator = PaperDocMentionType_validator EventType._paper_doc_ownership_changed_validator = PaperDocOwnershipChangedType_validator EventType._paper_doc_request_access_validator = PaperDocRequestAccessType_validator EventType._paper_doc_resolve_comment_validator = PaperDocResolveCommentType_validator EventType._paper_doc_revert_validator = PaperDocRevertType_validator EventType._paper_doc_slack_share_validator = PaperDocSlackShareType_validator EventType._paper_doc_team_invite_validator = PaperDocTeamInviteType_validator EventType._paper_doc_trashed_validator = PaperDocTrashedType_validator EventType._paper_doc_unresolve_comment_validator = PaperDocUnresolveCommentType_validator EventType._paper_doc_untrashed_validator = PaperDocUntrashedType_validator EventType._paper_doc_view_validator = PaperDocViewType_validator EventType._paper_external_view_allow_validator = PaperExternalViewAllowType_validator EventType._paper_external_view_default_team_validator = PaperExternalViewDefaultTeamType_validator EventType._paper_external_view_forbid_validator = PaperExternalViewForbidType_validator EventType._paper_folder_change_subscription_validator = PaperFolderChangeSubscriptionType_validator EventType._paper_folder_deleted_validator = PaperFolderDeletedType_validator EventType._paper_folder_followed_validator = PaperFolderFollowedType_validator EventType._paper_folder_team_invite_validator = PaperFolderTeamInviteType_validator EventType._paper_published_link_change_permission_validator = PaperPublishedLinkChangePermissionType_validator EventType._paper_published_link_create_validator = PaperPublishedLinkCreateType_validator EventType._paper_published_link_disabled_validator = PaperPublishedLinkDisabledType_validator EventType._paper_published_link_view_validator = PaperPublishedLinkViewType_validator EventType._password_change_validator = PasswordChangeType_validator EventType._password_reset_validator = PasswordResetType_validator EventType._password_reset_all_validator = PasswordResetAllType_validator EventType._classification_create_report_validator = ClassificationCreateReportType_validator EventType._classification_create_report_fail_validator = ClassificationCreateReportFailType_validator EventType._emm_create_exceptions_report_validator = EmmCreateExceptionsReportType_validator EventType._emm_create_usage_report_validator = EmmCreateUsageReportType_validator EventType._export_members_report_validator = ExportMembersReportType_validator EventType._export_members_report_fail_validator = ExportMembersReportFailType_validator EventType._external_sharing_create_report_validator = ExternalSharingCreateReportType_validator EventType._external_sharing_report_failed_validator = ExternalSharingReportFailedType_validator EventType._no_expiration_link_gen_create_report_validator = NoExpirationLinkGenCreateReportType_validator EventType._no_expiration_link_gen_report_failed_validator = NoExpirationLinkGenReportFailedType_validator EventType._no_password_link_gen_create_report_validator = NoPasswordLinkGenCreateReportType_validator EventType._no_password_link_gen_report_failed_validator = NoPasswordLinkGenReportFailedType_validator EventType._no_password_link_view_create_report_validator = NoPasswordLinkViewCreateReportType_validator EventType._no_password_link_view_report_failed_validator = NoPasswordLinkViewReportFailedType_validator EventType._outdated_link_view_create_report_validator = OutdatedLinkViewCreateReportType_validator EventType._outdated_link_view_report_failed_validator = OutdatedLinkViewReportFailedType_validator EventType._paper_admin_export_start_validator = PaperAdminExportStartType_validator EventType._ransomware_alert_create_report_validator = RansomwareAlertCreateReportType_validator EventType._ransomware_alert_create_report_failed_validator = RansomwareAlertCreateReportFailedType_validator EventType._smart_sync_create_admin_privilege_report_validator = SmartSyncCreateAdminPrivilegeReportType_validator EventType._team_activity_create_report_validator = TeamActivityCreateReportType_validator EventType._team_activity_create_report_fail_validator = TeamActivityCreateReportFailType_validator EventType._collection_share_validator = CollectionShareType_validator EventType._file_transfers_file_add_validator = FileTransfersFileAddType_validator EventType._file_transfers_transfer_delete_validator = FileTransfersTransferDeleteType_validator EventType._file_transfers_transfer_download_validator = FileTransfersTransferDownloadType_validator EventType._file_transfers_transfer_send_validator = FileTransfersTransferSendType_validator EventType._file_transfers_transfer_view_validator = FileTransfersTransferViewType_validator EventType._note_acl_invite_only_validator = NoteAclInviteOnlyType_validator EventType._note_acl_link_validator = NoteAclLinkType_validator EventType._note_acl_team_link_validator = NoteAclTeamLinkType_validator EventType._note_shared_validator = NoteSharedType_validator EventType._note_share_receive_validator = NoteShareReceiveType_validator EventType._open_note_shared_validator = OpenNoteSharedType_validator EventType._replay_file_shared_link_created_validator = ReplayFileSharedLinkCreatedType_validator EventType._replay_file_shared_link_modified_validator = ReplayFileSharedLinkModifiedType_validator EventType._replay_project_team_add_validator = ReplayProjectTeamAddType_validator EventType._replay_project_team_delete_validator = ReplayProjectTeamDeleteType_validator EventType._sf_add_group_validator = SfAddGroupType_validator EventType._sf_allow_non_members_to_view_shared_links_validator = SfAllowNonMembersToViewSharedLinksType_validator EventType._sf_external_invite_warn_validator = SfExternalInviteWarnType_validator EventType._sf_fb_invite_validator = SfFbInviteType_validator EventType._sf_fb_invite_change_role_validator = SfFbInviteChangeRoleType_validator EventType._sf_fb_uninvite_validator = SfFbUninviteType_validator EventType._sf_invite_group_validator = SfInviteGroupType_validator EventType._sf_team_grant_access_validator = SfTeamGrantAccessType_validator EventType._sf_team_invite_validator = SfTeamInviteType_validator EventType._sf_team_invite_change_role_validator = SfTeamInviteChangeRoleType_validator EventType._sf_team_join_validator = SfTeamJoinType_validator EventType._sf_team_join_from_oob_link_validator = SfTeamJoinFromOobLinkType_validator EventType._sf_team_uninvite_validator = SfTeamUninviteType_validator EventType._shared_content_add_invitees_validator = SharedContentAddInviteesType_validator EventType._shared_content_add_link_expiry_validator = SharedContentAddLinkExpiryType_validator EventType._shared_content_add_link_password_validator = SharedContentAddLinkPasswordType_validator EventType._shared_content_add_member_validator = SharedContentAddMemberType_validator EventType._shared_content_change_downloads_policy_validator = SharedContentChangeDownloadsPolicyType_validator EventType._shared_content_change_invitee_role_validator = SharedContentChangeInviteeRoleType_validator EventType._shared_content_change_link_audience_validator = SharedContentChangeLinkAudienceType_validator EventType._shared_content_change_link_expiry_validator = SharedContentChangeLinkExpiryType_validator EventType._shared_content_change_link_password_validator = SharedContentChangeLinkPasswordType_validator EventType._shared_content_change_member_role_validator = SharedContentChangeMemberRoleType_validator EventType._shared_content_change_viewer_info_policy_validator = SharedContentChangeViewerInfoPolicyType_validator EventType._shared_content_claim_invitation_validator = SharedContentClaimInvitationType_validator EventType._shared_content_copy_validator = SharedContentCopyType_validator EventType._shared_content_download_validator = SharedContentDownloadType_validator EventType._shared_content_relinquish_membership_validator = SharedContentRelinquishMembershipType_validator EventType._shared_content_remove_invitees_validator = SharedContentRemoveInviteesType_validator EventType._shared_content_remove_link_expiry_validator = SharedContentRemoveLinkExpiryType_validator EventType._shared_content_remove_link_password_validator = SharedContentRemoveLinkPasswordType_validator EventType._shared_content_remove_member_validator = SharedContentRemoveMemberType_validator EventType._shared_content_request_access_validator = SharedContentRequestAccessType_validator EventType._shared_content_restore_invitees_validator = SharedContentRestoreInviteesType_validator EventType._shared_content_restore_member_validator = SharedContentRestoreMemberType_validator EventType._shared_content_unshare_validator = SharedContentUnshareType_validator EventType._shared_content_view_validator = SharedContentViewType_validator EventType._shared_folder_change_link_policy_validator = SharedFolderChangeLinkPolicyType_validator EventType._shared_folder_change_members_inheritance_policy_validator = SharedFolderChangeMembersInheritancePolicyType_validator EventType._shared_folder_change_members_management_policy_validator = SharedFolderChangeMembersManagementPolicyType_validator EventType._shared_folder_change_members_policy_validator = SharedFolderChangeMembersPolicyType_validator EventType._shared_folder_create_validator = SharedFolderCreateType_validator EventType._shared_folder_decline_invitation_validator = SharedFolderDeclineInvitationType_validator EventType._shared_folder_mount_validator = SharedFolderMountType_validator EventType._shared_folder_nest_validator = SharedFolderNestType_validator EventType._shared_folder_transfer_ownership_validator = SharedFolderTransferOwnershipType_validator EventType._shared_folder_unmount_validator = SharedFolderUnmountType_validator EventType._shared_link_add_expiry_validator = SharedLinkAddExpiryType_validator EventType._shared_link_change_expiry_validator = SharedLinkChangeExpiryType_validator EventType._shared_link_change_visibility_validator = SharedLinkChangeVisibilityType_validator EventType._shared_link_copy_validator = SharedLinkCopyType_validator EventType._shared_link_create_validator = SharedLinkCreateType_validator EventType._shared_link_disable_validator = SharedLinkDisableType_validator EventType._shared_link_download_validator = SharedLinkDownloadType_validator EventType._shared_link_remove_expiry_validator = SharedLinkRemoveExpiryType_validator EventType._shared_link_settings_add_expiration_validator = SharedLinkSettingsAddExpirationType_validator EventType._shared_link_settings_add_password_validator = SharedLinkSettingsAddPasswordType_validator EventType._shared_link_settings_allow_download_disabled_validator = SharedLinkSettingsAllowDownloadDisabledType_validator EventType._shared_link_settings_allow_download_enabled_validator = SharedLinkSettingsAllowDownloadEnabledType_validator EventType._shared_link_settings_change_audience_validator = SharedLinkSettingsChangeAudienceType_validator EventType._shared_link_settings_change_expiration_validator = SharedLinkSettingsChangeExpirationType_validator EventType._shared_link_settings_change_password_validator = SharedLinkSettingsChangePasswordType_validator EventType._shared_link_settings_remove_expiration_validator = SharedLinkSettingsRemoveExpirationType_validator EventType._shared_link_settings_remove_password_validator = SharedLinkSettingsRemovePasswordType_validator EventType._shared_link_share_validator = SharedLinkShareType_validator EventType._shared_link_view_validator = SharedLinkViewType_validator EventType._shared_note_opened_validator = SharedNoteOpenedType_validator EventType._shmodel_disable_downloads_validator = ShmodelDisableDownloadsType_validator EventType._shmodel_enable_downloads_validator = ShmodelEnableDownloadsType_validator EventType._shmodel_group_share_validator = ShmodelGroupShareType_validator EventType._showcase_access_granted_validator = ShowcaseAccessGrantedType_validator EventType._showcase_add_member_validator = ShowcaseAddMemberType_validator EventType._showcase_archived_validator = ShowcaseArchivedType_validator EventType._showcase_created_validator = ShowcaseCreatedType_validator EventType._showcase_delete_comment_validator = ShowcaseDeleteCommentType_validator EventType._showcase_edited_validator = ShowcaseEditedType_validator EventType._showcase_edit_comment_validator = ShowcaseEditCommentType_validator EventType._showcase_file_added_validator = ShowcaseFileAddedType_validator EventType._showcase_file_download_validator = ShowcaseFileDownloadType_validator EventType._showcase_file_removed_validator = ShowcaseFileRemovedType_validator EventType._showcase_file_view_validator = ShowcaseFileViewType_validator EventType._showcase_permanently_deleted_validator = ShowcasePermanentlyDeletedType_validator EventType._showcase_post_comment_validator = ShowcasePostCommentType_validator EventType._showcase_remove_member_validator = ShowcaseRemoveMemberType_validator EventType._showcase_renamed_validator = ShowcaseRenamedType_validator EventType._showcase_request_access_validator = ShowcaseRequestAccessType_validator EventType._showcase_resolve_comment_validator = ShowcaseResolveCommentType_validator EventType._showcase_restored_validator = ShowcaseRestoredType_validator EventType._showcase_trashed_validator = ShowcaseTrashedType_validator EventType._showcase_trashed_deprecated_validator = ShowcaseTrashedDeprecatedType_validator EventType._showcase_unresolve_comment_validator = ShowcaseUnresolveCommentType_validator EventType._showcase_untrashed_validator = ShowcaseUntrashedType_validator EventType._showcase_untrashed_deprecated_validator = ShowcaseUntrashedDeprecatedType_validator EventType._showcase_view_validator = ShowcaseViewType_validator EventType._sso_add_cert_validator = SsoAddCertType_validator EventType._sso_add_login_url_validator = SsoAddLoginUrlType_validator EventType._sso_add_logout_url_validator = SsoAddLogoutUrlType_validator EventType._sso_change_cert_validator = SsoChangeCertType_validator EventType._sso_change_login_url_validator = SsoChangeLoginUrlType_validator EventType._sso_change_logout_url_validator = SsoChangeLogoutUrlType_validator EventType._sso_change_saml_identity_mode_validator = SsoChangeSamlIdentityModeType_validator EventType._sso_remove_cert_validator = SsoRemoveCertType_validator EventType._sso_remove_login_url_validator = SsoRemoveLoginUrlType_validator EventType._sso_remove_logout_url_validator = SsoRemoveLogoutUrlType_validator EventType._team_folder_change_status_validator = TeamFolderChangeStatusType_validator EventType._team_folder_create_validator = TeamFolderCreateType_validator EventType._team_folder_downgrade_validator = TeamFolderDowngradeType_validator EventType._team_folder_permanently_delete_validator = TeamFolderPermanentlyDeleteType_validator EventType._team_folder_rename_validator = TeamFolderRenameType_validator EventType._team_selective_sync_settings_changed_validator = TeamSelectiveSyncSettingsChangedType_validator EventType._account_capture_change_policy_validator = AccountCaptureChangePolicyType_validator EventType._admin_email_reminders_changed_validator = AdminEmailRemindersChangedType_validator EventType._allow_download_disabled_validator = AllowDownloadDisabledType_validator EventType._allow_download_enabled_validator = AllowDownloadEnabledType_validator EventType._app_permissions_changed_validator = AppPermissionsChangedType_validator EventType._camera_uploads_policy_changed_validator = CameraUploadsPolicyChangedType_validator EventType._capture_transcript_policy_changed_validator = CaptureTranscriptPolicyChangedType_validator EventType._classification_change_policy_validator = ClassificationChangePolicyType_validator EventType._computer_backup_policy_changed_validator = ComputerBackupPolicyChangedType_validator EventType._content_administration_policy_changed_validator = ContentAdministrationPolicyChangedType_validator EventType._data_placement_restriction_change_policy_validator = DataPlacementRestrictionChangePolicyType_validator EventType._data_placement_restriction_satisfy_policy_validator = DataPlacementRestrictionSatisfyPolicyType_validator EventType._device_approvals_add_exception_validator = DeviceApprovalsAddExceptionType_validator EventType._device_approvals_change_desktop_policy_validator = DeviceApprovalsChangeDesktopPolicyType_validator EventType._device_approvals_change_mobile_policy_validator = DeviceApprovalsChangeMobilePolicyType_validator EventType._device_approvals_change_overage_action_validator = DeviceApprovalsChangeOverageActionType_validator EventType._device_approvals_change_unlink_action_validator = DeviceApprovalsChangeUnlinkActionType_validator EventType._device_approvals_remove_exception_validator = DeviceApprovalsRemoveExceptionType_validator EventType._directory_restrictions_add_members_validator = DirectoryRestrictionsAddMembersType_validator EventType._directory_restrictions_remove_members_validator = DirectoryRestrictionsRemoveMembersType_validator EventType._dropbox_passwords_policy_changed_validator = DropboxPasswordsPolicyChangedType_validator EventType._email_ingest_policy_changed_validator = EmailIngestPolicyChangedType_validator EventType._emm_add_exception_validator = EmmAddExceptionType_validator EventType._emm_change_policy_validator = EmmChangePolicyType_validator EventType._emm_remove_exception_validator = EmmRemoveExceptionType_validator EventType._extended_version_history_change_policy_validator = ExtendedVersionHistoryChangePolicyType_validator EventType._external_drive_backup_policy_changed_validator = ExternalDriveBackupPolicyChangedType_validator EventType._file_comments_change_policy_validator = FileCommentsChangePolicyType_validator EventType._file_locking_policy_changed_validator = FileLockingPolicyChangedType_validator EventType._file_provider_migration_policy_changed_validator = FileProviderMigrationPolicyChangedType_validator EventType._file_requests_change_policy_validator = FileRequestsChangePolicyType_validator EventType._file_requests_emails_enabled_validator = FileRequestsEmailsEnabledType_validator EventType._file_requests_emails_restricted_to_team_only_validator = FileRequestsEmailsRestrictedToTeamOnlyType_validator EventType._file_transfers_policy_changed_validator = FileTransfersPolicyChangedType_validator EventType._folder_link_restriction_policy_changed_validator = FolderLinkRestrictionPolicyChangedType_validator EventType._google_sso_change_policy_validator = GoogleSsoChangePolicyType_validator EventType._group_user_management_change_policy_validator = GroupUserManagementChangePolicyType_validator EventType._integration_policy_changed_validator = IntegrationPolicyChangedType_validator EventType._invite_acceptance_email_policy_changed_validator = InviteAcceptanceEmailPolicyChangedType_validator EventType._member_requests_change_policy_validator = MemberRequestsChangePolicyType_validator EventType._member_send_invite_policy_changed_validator = MemberSendInvitePolicyChangedType_validator EventType._member_space_limits_add_exception_validator = MemberSpaceLimitsAddExceptionType_validator EventType._member_space_limits_change_caps_type_policy_validator = MemberSpaceLimitsChangeCapsTypePolicyType_validator EventType._member_space_limits_change_policy_validator = MemberSpaceLimitsChangePolicyType_validator EventType._member_space_limits_remove_exception_validator = MemberSpaceLimitsRemoveExceptionType_validator EventType._member_suggestions_change_policy_validator = MemberSuggestionsChangePolicyType_validator EventType._microsoft_office_addin_change_policy_validator = MicrosoftOfficeAddinChangePolicyType_validator EventType._network_control_change_policy_validator = NetworkControlChangePolicyType_validator EventType._paper_change_deployment_policy_validator = PaperChangeDeploymentPolicyType_validator EventType._paper_change_member_link_policy_validator = PaperChangeMemberLinkPolicyType_validator EventType._paper_change_member_policy_validator = PaperChangeMemberPolicyType_validator EventType._paper_change_policy_validator = PaperChangePolicyType_validator EventType._paper_default_folder_policy_changed_validator = PaperDefaultFolderPolicyChangedType_validator EventType._paper_desktop_policy_changed_validator = PaperDesktopPolicyChangedType_validator EventType._paper_enabled_users_group_addition_validator = PaperEnabledUsersGroupAdditionType_validator EventType._paper_enabled_users_group_removal_validator = PaperEnabledUsersGroupRemovalType_validator EventType._password_strength_requirements_change_policy_validator = PasswordStrengthRequirementsChangePolicyType_validator EventType._permanent_delete_change_policy_validator = PermanentDeleteChangePolicyType_validator EventType._reseller_support_change_policy_validator = ResellerSupportChangePolicyType_validator EventType._rewind_policy_changed_validator = RewindPolicyChangedType_validator EventType._send_for_signature_policy_changed_validator = SendForSignaturePolicyChangedType_validator EventType._sharing_change_folder_join_policy_validator = SharingChangeFolderJoinPolicyType_validator EventType._sharing_change_link_allow_change_expiration_policy_validator = SharingChangeLinkAllowChangeExpirationPolicyType_validator EventType._sharing_change_link_default_expiration_policy_validator = SharingChangeLinkDefaultExpirationPolicyType_validator EventType._sharing_change_link_enforce_password_policy_validator = SharingChangeLinkEnforcePasswordPolicyType_validator EventType._sharing_change_link_policy_validator = SharingChangeLinkPolicyType_validator EventType._sharing_change_member_policy_validator = SharingChangeMemberPolicyType_validator EventType._showcase_change_download_policy_validator = ShowcaseChangeDownloadPolicyType_validator EventType._showcase_change_enabled_policy_validator = ShowcaseChangeEnabledPolicyType_validator EventType._showcase_change_external_sharing_policy_validator = ShowcaseChangeExternalSharingPolicyType_validator EventType._smarter_smart_sync_policy_changed_validator = SmarterSmartSyncPolicyChangedType_validator EventType._smart_sync_change_policy_validator = SmartSyncChangePolicyType_validator EventType._smart_sync_not_opt_out_validator = SmartSyncNotOptOutType_validator EventType._smart_sync_opt_out_validator = SmartSyncOptOutType_validator EventType._sso_change_policy_validator = SsoChangePolicyType_validator EventType._team_branding_policy_changed_validator = TeamBrandingPolicyChangedType_validator EventType._team_extensions_policy_changed_validator = TeamExtensionsPolicyChangedType_validator EventType._team_selective_sync_policy_changed_validator = TeamSelectiveSyncPolicyChangedType_validator EventType._team_sharing_whitelist_subjects_changed_validator = TeamSharingWhitelistSubjectsChangedType_validator EventType._tfa_add_exception_validator = TfaAddExceptionType_validator EventType._tfa_change_policy_validator = TfaChangePolicyType_validator EventType._tfa_remove_exception_validator = TfaRemoveExceptionType_validator EventType._two_account_change_policy_validator = TwoAccountChangePolicyType_validator EventType._viewer_info_policy_changed_validator = ViewerInfoPolicyChangedType_validator EventType._watermarking_policy_changed_validator = WatermarkingPolicyChangedType_validator EventType._web_sessions_change_active_session_limit_validator = WebSessionsChangeActiveSessionLimitType_validator EventType._web_sessions_change_fixed_length_policy_validator = WebSessionsChangeFixedLengthPolicyType_validator EventType._web_sessions_change_idle_length_policy_validator = WebSessionsChangeIdleLengthPolicyType_validator EventType._data_residency_migration_request_successful_validator = DataResidencyMigrationRequestSuccessfulType_validator EventType._data_residency_migration_request_unsuccessful_validator = DataResidencyMigrationRequestUnsuccessfulType_validator EventType._team_merge_from_validator = TeamMergeFromType_validator EventType._team_merge_to_validator = TeamMergeToType_validator EventType._team_profile_add_background_validator = TeamProfileAddBackgroundType_validator EventType._team_profile_add_logo_validator = TeamProfileAddLogoType_validator EventType._team_profile_change_background_validator = TeamProfileChangeBackgroundType_validator EventType._team_profile_change_default_language_validator = TeamProfileChangeDefaultLanguageType_validator EventType._team_profile_change_logo_validator = TeamProfileChangeLogoType_validator EventType._team_profile_change_name_validator = TeamProfileChangeNameType_validator EventType._team_profile_remove_background_validator = TeamProfileRemoveBackgroundType_validator EventType._team_profile_remove_logo_validator = TeamProfileRemoveLogoType_validator EventType._tfa_add_backup_phone_validator = TfaAddBackupPhoneType_validator EventType._tfa_add_security_key_validator = TfaAddSecurityKeyType_validator EventType._tfa_change_backup_phone_validator = TfaChangeBackupPhoneType_validator EventType._tfa_change_status_validator = TfaChangeStatusType_validator EventType._tfa_remove_backup_phone_validator = TfaRemoveBackupPhoneType_validator EventType._tfa_remove_security_key_validator = TfaRemoveSecurityKeyType_validator EventType._tfa_reset_validator = TfaResetType_validator EventType._changed_enterprise_admin_role_validator = ChangedEnterpriseAdminRoleType_validator EventType._changed_enterprise_connected_team_status_validator = ChangedEnterpriseConnectedTeamStatusType_validator EventType._ended_enterprise_admin_session_validator = EndedEnterpriseAdminSessionType_validator EventType._ended_enterprise_admin_session_deprecated_validator = EndedEnterpriseAdminSessionDeprecatedType_validator EventType._enterprise_settings_locking_validator = EnterpriseSettingsLockingType_validator EventType._guest_admin_change_status_validator = GuestAdminChangeStatusType_validator EventType._started_enterprise_admin_session_validator = StartedEnterpriseAdminSessionType_validator EventType._team_merge_request_accepted_validator = TeamMergeRequestAcceptedType_validator EventType._team_merge_request_accepted_shown_to_primary_team_validator = TeamMergeRequestAcceptedShownToPrimaryTeamType_validator EventType._team_merge_request_accepted_shown_to_secondary_team_validator = TeamMergeRequestAcceptedShownToSecondaryTeamType_validator EventType._team_merge_request_auto_canceled_validator = TeamMergeRequestAutoCanceledType_validator EventType._team_merge_request_canceled_validator = TeamMergeRequestCanceledType_validator EventType._team_merge_request_canceled_shown_to_primary_team_validator = TeamMergeRequestCanceledShownToPrimaryTeamType_validator EventType._team_merge_request_canceled_shown_to_secondary_team_validator = TeamMergeRequestCanceledShownToSecondaryTeamType_validator EventType._team_merge_request_expired_validator = TeamMergeRequestExpiredType_validator EventType._team_merge_request_expired_shown_to_primary_team_validator = TeamMergeRequestExpiredShownToPrimaryTeamType_validator EventType._team_merge_request_expired_shown_to_secondary_team_validator = TeamMergeRequestExpiredShownToSecondaryTeamType_validator EventType._team_merge_request_rejected_shown_to_primary_team_validator = TeamMergeRequestRejectedShownToPrimaryTeamType_validator EventType._team_merge_request_rejected_shown_to_secondary_team_validator = TeamMergeRequestRejectedShownToSecondaryTeamType_validator EventType._team_merge_request_reminder_validator = TeamMergeRequestReminderType_validator EventType._team_merge_request_reminder_shown_to_primary_team_validator = TeamMergeRequestReminderShownToPrimaryTeamType_validator EventType._team_merge_request_reminder_shown_to_secondary_team_validator = TeamMergeRequestReminderShownToSecondaryTeamType_validator EventType._team_merge_request_revoked_validator = TeamMergeRequestRevokedType_validator EventType._team_merge_request_sent_shown_to_primary_team_validator = TeamMergeRequestSentShownToPrimaryTeamType_validator EventType._team_merge_request_sent_shown_to_secondary_team_validator = TeamMergeRequestSentShownToSecondaryTeamType_validator EventType._other_validator = bv.Void() EventType._tagmap = { 'admin_alerting_alert_state_changed': EventType._admin_alerting_alert_state_changed_validator, 'admin_alerting_changed_alert_config': EventType._admin_alerting_changed_alert_config_validator, 'admin_alerting_triggered_alert': EventType._admin_alerting_triggered_alert_validator, 'ransomware_restore_process_completed': EventType._ransomware_restore_process_completed_validator, 'ransomware_restore_process_started': EventType._ransomware_restore_process_started_validator, 'app_blocked_by_permissions': EventType._app_blocked_by_permissions_validator, 'app_link_team': EventType._app_link_team_validator, 'app_link_user': EventType._app_link_user_validator, 'app_unlink_team': EventType._app_unlink_team_validator, 'app_unlink_user': EventType._app_unlink_user_validator, 'integration_connected': EventType._integration_connected_validator, 'integration_disconnected': EventType._integration_disconnected_validator, 'file_add_comment': EventType._file_add_comment_validator, 'file_change_comment_subscription': EventType._file_change_comment_subscription_validator, 'file_delete_comment': EventType._file_delete_comment_validator, 'file_edit_comment': EventType._file_edit_comment_validator, 'file_like_comment': EventType._file_like_comment_validator, 'file_resolve_comment': EventType._file_resolve_comment_validator, 'file_unlike_comment': EventType._file_unlike_comment_validator, 'file_unresolve_comment': EventType._file_unresolve_comment_validator, 'governance_policy_add_folders': EventType._governance_policy_add_folders_validator, 'governance_policy_add_folder_failed': EventType._governance_policy_add_folder_failed_validator, 'governance_policy_content_disposed': EventType._governance_policy_content_disposed_validator, 'governance_policy_create': EventType._governance_policy_create_validator, 'governance_policy_delete': EventType._governance_policy_delete_validator, 'governance_policy_edit_details': EventType._governance_policy_edit_details_validator, 'governance_policy_edit_duration': EventType._governance_policy_edit_duration_validator, 'governance_policy_export_created': EventType._governance_policy_export_created_validator, 'governance_policy_export_removed': EventType._governance_policy_export_removed_validator, 'governance_policy_remove_folders': EventType._governance_policy_remove_folders_validator, 'governance_policy_report_created': EventType._governance_policy_report_created_validator, 'governance_policy_zip_part_downloaded': EventType._governance_policy_zip_part_downloaded_validator, 'legal_holds_activate_a_hold': EventType._legal_holds_activate_a_hold_validator, 'legal_holds_add_members': EventType._legal_holds_add_members_validator, 'legal_holds_change_hold_details': EventType._legal_holds_change_hold_details_validator, 'legal_holds_change_hold_name': EventType._legal_holds_change_hold_name_validator, 'legal_holds_export_a_hold': EventType._legal_holds_export_a_hold_validator, 'legal_holds_export_cancelled': EventType._legal_holds_export_cancelled_validator, 'legal_holds_export_downloaded': EventType._legal_holds_export_downloaded_validator, 'legal_holds_export_removed': EventType._legal_holds_export_removed_validator, 'legal_holds_release_a_hold': EventType._legal_holds_release_a_hold_validator, 'legal_holds_remove_members': EventType._legal_holds_remove_members_validator, 'legal_holds_report_a_hold': EventType._legal_holds_report_a_hold_validator, 'device_change_ip_desktop': EventType._device_change_ip_desktop_validator, 'device_change_ip_mobile': EventType._device_change_ip_mobile_validator, 'device_change_ip_web': EventType._device_change_ip_web_validator, 'device_delete_on_unlink_fail': EventType._device_delete_on_unlink_fail_validator, 'device_delete_on_unlink_success': EventType._device_delete_on_unlink_success_validator, 'device_link_fail': EventType._device_link_fail_validator, 'device_link_success': EventType._device_link_success_validator, 'device_management_disabled': EventType._device_management_disabled_validator, 'device_management_enabled': EventType._device_management_enabled_validator, 'device_sync_backup_status_changed': EventType._device_sync_backup_status_changed_validator, 'device_unlink': EventType._device_unlink_validator, 'dropbox_passwords_exported': EventType._dropbox_passwords_exported_validator, 'dropbox_passwords_new_device_enrolled': EventType._dropbox_passwords_new_device_enrolled_validator, 'emm_refresh_auth_token': EventType._emm_refresh_auth_token_validator, 'external_drive_backup_eligibility_status_checked': EventType._external_drive_backup_eligibility_status_checked_validator, 'external_drive_backup_status_changed': EventType._external_drive_backup_status_changed_validator, 'account_capture_change_availability': EventType._account_capture_change_availability_validator, 'account_capture_migrate_account': EventType._account_capture_migrate_account_validator, 'account_capture_notification_emails_sent': EventType._account_capture_notification_emails_sent_validator, 'account_capture_relinquish_account': EventType._account_capture_relinquish_account_validator, 'disabled_domain_invites': EventType._disabled_domain_invites_validator, 'domain_invites_approve_request_to_join_team': EventType._domain_invites_approve_request_to_join_team_validator, 'domain_invites_decline_request_to_join_team': EventType._domain_invites_decline_request_to_join_team_validator, 'domain_invites_email_existing_users': EventType._domain_invites_email_existing_users_validator, 'domain_invites_request_to_join_team': EventType._domain_invites_request_to_join_team_validator, 'domain_invites_set_invite_new_user_pref_to_no': EventType._domain_invites_set_invite_new_user_pref_to_no_validator, 'domain_invites_set_invite_new_user_pref_to_yes': EventType._domain_invites_set_invite_new_user_pref_to_yes_validator, 'domain_verification_add_domain_fail': EventType._domain_verification_add_domain_fail_validator, 'domain_verification_add_domain_success': EventType._domain_verification_add_domain_success_validator, 'domain_verification_remove_domain': EventType._domain_verification_remove_domain_validator, 'enabled_domain_invites': EventType._enabled_domain_invites_validator, 'team_encryption_key_cancel_key_deletion': EventType._team_encryption_key_cancel_key_deletion_validator, 'team_encryption_key_create_key': EventType._team_encryption_key_create_key_validator, 'team_encryption_key_delete_key': EventType._team_encryption_key_delete_key_validator, 'team_encryption_key_disable_key': EventType._team_encryption_key_disable_key_validator, 'team_encryption_key_enable_key': EventType._team_encryption_key_enable_key_validator, 'team_encryption_key_rotate_key': EventType._team_encryption_key_rotate_key_validator, 'team_encryption_key_schedule_key_deletion': EventType._team_encryption_key_schedule_key_deletion_validator, 'apply_naming_convention': EventType._apply_naming_convention_validator, 'create_folder': EventType._create_folder_validator, 'file_add': EventType._file_add_validator, 'file_add_from_automation': EventType._file_add_from_automation_validator, 'file_copy': EventType._file_copy_validator, 'file_delete': EventType._file_delete_validator, 'file_download': EventType._file_download_validator, 'file_edit': EventType._file_edit_validator, 'file_get_copy_reference': EventType._file_get_copy_reference_validator, 'file_locking_lock_status_changed': EventType._file_locking_lock_status_changed_validator, 'file_move': EventType._file_move_validator, 'file_permanently_delete': EventType._file_permanently_delete_validator, 'file_preview': EventType._file_preview_validator, 'file_rename': EventType._file_rename_validator, 'file_restore': EventType._file_restore_validator, 'file_revert': EventType._file_revert_validator, 'file_rollback_changes': EventType._file_rollback_changes_validator, 'file_save_copy_reference': EventType._file_save_copy_reference_validator, 'folder_overview_description_changed': EventType._folder_overview_description_changed_validator, 'folder_overview_item_pinned': EventType._folder_overview_item_pinned_validator, 'folder_overview_item_unpinned': EventType._folder_overview_item_unpinned_validator, 'object_label_added': EventType._object_label_added_validator, 'object_label_removed': EventType._object_label_removed_validator, 'object_label_updated_value': EventType._object_label_updated_value_validator, 'organize_folder_with_tidy': EventType._organize_folder_with_tidy_validator, 'replay_file_delete': EventType._replay_file_delete_validator, 'rewind_folder': EventType._rewind_folder_validator, 'undo_naming_convention': EventType._undo_naming_convention_validator, 'undo_organize_folder_with_tidy': EventType._undo_organize_folder_with_tidy_validator, 'user_tags_added': EventType._user_tags_added_validator, 'user_tags_removed': EventType._user_tags_removed_validator, 'email_ingest_receive_file': EventType._email_ingest_receive_file_validator, 'file_request_change': EventType._file_request_change_validator, 'file_request_close': EventType._file_request_close_validator, 'file_request_create': EventType._file_request_create_validator, 'file_request_delete': EventType._file_request_delete_validator, 'file_request_receive_file': EventType._file_request_receive_file_validator, 'group_add_external_id': EventType._group_add_external_id_validator, 'group_add_member': EventType._group_add_member_validator, 'group_change_external_id': EventType._group_change_external_id_validator, 'group_change_management_type': EventType._group_change_management_type_validator, 'group_change_member_role': EventType._group_change_member_role_validator, 'group_create': EventType._group_create_validator, 'group_delete': EventType._group_delete_validator, 'group_description_updated': EventType._group_description_updated_validator, 'group_join_policy_updated': EventType._group_join_policy_updated_validator, 'group_moved': EventType._group_moved_validator, 'group_remove_external_id': EventType._group_remove_external_id_validator, 'group_remove_member': EventType._group_remove_member_validator, 'group_rename': EventType._group_rename_validator, 'account_lock_or_unlocked': EventType._account_lock_or_unlocked_validator, 'emm_error': EventType._emm_error_validator, 'guest_admin_signed_in_via_trusted_teams': EventType._guest_admin_signed_in_via_trusted_teams_validator, 'guest_admin_signed_out_via_trusted_teams': EventType._guest_admin_signed_out_via_trusted_teams_validator, 'login_fail': EventType._login_fail_validator, 'login_success': EventType._login_success_validator, 'logout': EventType._logout_validator, 'reseller_support_session_end': EventType._reseller_support_session_end_validator, 'reseller_support_session_start': EventType._reseller_support_session_start_validator, 'sign_in_as_session_end': EventType._sign_in_as_session_end_validator, 'sign_in_as_session_start': EventType._sign_in_as_session_start_validator, 'sso_error': EventType._sso_error_validator, 'backup_admin_invitation_sent': EventType._backup_admin_invitation_sent_validator, 'backup_invitation_opened': EventType._backup_invitation_opened_validator, 'create_team_invite_link': EventType._create_team_invite_link_validator, 'delete_team_invite_link': EventType._delete_team_invite_link_validator, 'member_add_external_id': EventType._member_add_external_id_validator, 'member_add_name': EventType._member_add_name_validator, 'member_change_admin_role': EventType._member_change_admin_role_validator, 'member_change_email': EventType._member_change_email_validator, 'member_change_external_id': EventType._member_change_external_id_validator, 'member_change_membership_type': EventType._member_change_membership_type_validator, 'member_change_name': EventType._member_change_name_validator, 'member_change_reseller_role': EventType._member_change_reseller_role_validator, 'member_change_status': EventType._member_change_status_validator, 'member_delete_manual_contacts': EventType._member_delete_manual_contacts_validator, 'member_delete_profile_photo': EventType._member_delete_profile_photo_validator, 'member_permanently_delete_account_contents': EventType._member_permanently_delete_account_contents_validator, 'member_remove_external_id': EventType._member_remove_external_id_validator, 'member_set_profile_photo': EventType._member_set_profile_photo_validator, 'member_space_limits_add_custom_quota': EventType._member_space_limits_add_custom_quota_validator, 'member_space_limits_change_custom_quota': EventType._member_space_limits_change_custom_quota_validator, 'member_space_limits_change_status': EventType._member_space_limits_change_status_validator, 'member_space_limits_remove_custom_quota': EventType._member_space_limits_remove_custom_quota_validator, 'member_suggest': EventType._member_suggest_validator, 'member_transfer_account_contents': EventType._member_transfer_account_contents_validator, 'pending_secondary_email_added': EventType._pending_secondary_email_added_validator, 'secondary_email_deleted': EventType._secondary_email_deleted_validator, 'secondary_email_verified': EventType._secondary_email_verified_validator, 'secondary_mails_policy_changed': EventType._secondary_mails_policy_changed_validator, 'binder_add_page': EventType._binder_add_page_validator, 'binder_add_section': EventType._binder_add_section_validator, 'binder_remove_page': EventType._binder_remove_page_validator, 'binder_remove_section': EventType._binder_remove_section_validator, 'binder_rename_page': EventType._binder_rename_page_validator, 'binder_rename_section': EventType._binder_rename_section_validator, 'binder_reorder_page': EventType._binder_reorder_page_validator, 'binder_reorder_section': EventType._binder_reorder_section_validator, 'paper_content_add_member': EventType._paper_content_add_member_validator, 'paper_content_add_to_folder': EventType._paper_content_add_to_folder_validator, 'paper_content_archive': EventType._paper_content_archive_validator, 'paper_content_create': EventType._paper_content_create_validator, 'paper_content_permanently_delete': EventType._paper_content_permanently_delete_validator, 'paper_content_remove_from_folder': EventType._paper_content_remove_from_folder_validator, 'paper_content_remove_member': EventType._paper_content_remove_member_validator, 'paper_content_rename': EventType._paper_content_rename_validator, 'paper_content_restore': EventType._paper_content_restore_validator, 'paper_doc_add_comment': EventType._paper_doc_add_comment_validator, 'paper_doc_change_member_role': EventType._paper_doc_change_member_role_validator, 'paper_doc_change_sharing_policy': EventType._paper_doc_change_sharing_policy_validator, 'paper_doc_change_subscription': EventType._paper_doc_change_subscription_validator, 'paper_doc_deleted': EventType._paper_doc_deleted_validator, 'paper_doc_delete_comment': EventType._paper_doc_delete_comment_validator, 'paper_doc_download': EventType._paper_doc_download_validator, 'paper_doc_edit': EventType._paper_doc_edit_validator, 'paper_doc_edit_comment': EventType._paper_doc_edit_comment_validator, 'paper_doc_followed': EventType._paper_doc_followed_validator, 'paper_doc_mention': EventType._paper_doc_mention_validator, 'paper_doc_ownership_changed': EventType._paper_doc_ownership_changed_validator, 'paper_doc_request_access': EventType._paper_doc_request_access_validator, 'paper_doc_resolve_comment': EventType._paper_doc_resolve_comment_validator, 'paper_doc_revert': EventType._paper_doc_revert_validator, 'paper_doc_slack_share': EventType._paper_doc_slack_share_validator, 'paper_doc_team_invite': EventType._paper_doc_team_invite_validator, 'paper_doc_trashed': EventType._paper_doc_trashed_validator, 'paper_doc_unresolve_comment': EventType._paper_doc_unresolve_comment_validator, 'paper_doc_untrashed': EventType._paper_doc_untrashed_validator, 'paper_doc_view': EventType._paper_doc_view_validator, 'paper_external_view_allow': EventType._paper_external_view_allow_validator, 'paper_external_view_default_team': EventType._paper_external_view_default_team_validator, 'paper_external_view_forbid': EventType._paper_external_view_forbid_validator, 'paper_folder_change_subscription': EventType._paper_folder_change_subscription_validator, 'paper_folder_deleted': EventType._paper_folder_deleted_validator, 'paper_folder_followed': EventType._paper_folder_followed_validator, 'paper_folder_team_invite': EventType._paper_folder_team_invite_validator, 'paper_published_link_change_permission': EventType._paper_published_link_change_permission_validator, 'paper_published_link_create': EventType._paper_published_link_create_validator, 'paper_published_link_disabled': EventType._paper_published_link_disabled_validator, 'paper_published_link_view': EventType._paper_published_link_view_validator, 'password_change': EventType._password_change_validator, 'password_reset': EventType._password_reset_validator, 'password_reset_all': EventType._password_reset_all_validator, 'classification_create_report': EventType._classification_create_report_validator, 'classification_create_report_fail': EventType._classification_create_report_fail_validator, 'emm_create_exceptions_report': EventType._emm_create_exceptions_report_validator, 'emm_create_usage_report': EventType._emm_create_usage_report_validator, 'export_members_report': EventType._export_members_report_validator, 'export_members_report_fail': EventType._export_members_report_fail_validator, 'external_sharing_create_report': EventType._external_sharing_create_report_validator, 'external_sharing_report_failed': EventType._external_sharing_report_failed_validator, 'no_expiration_link_gen_create_report': EventType._no_expiration_link_gen_create_report_validator, 'no_expiration_link_gen_report_failed': EventType._no_expiration_link_gen_report_failed_validator, 'no_password_link_gen_create_report': EventType._no_password_link_gen_create_report_validator, 'no_password_link_gen_report_failed': EventType._no_password_link_gen_report_failed_validator, 'no_password_link_view_create_report': EventType._no_password_link_view_create_report_validator, 'no_password_link_view_report_failed': EventType._no_password_link_view_report_failed_validator, 'outdated_link_view_create_report': EventType._outdated_link_view_create_report_validator, 'outdated_link_view_report_failed': EventType._outdated_link_view_report_failed_validator, 'paper_admin_export_start': EventType._paper_admin_export_start_validator, 'ransomware_alert_create_report': EventType._ransomware_alert_create_report_validator, 'ransomware_alert_create_report_failed': EventType._ransomware_alert_create_report_failed_validator, 'smart_sync_create_admin_privilege_report': EventType._smart_sync_create_admin_privilege_report_validator, 'team_activity_create_report': EventType._team_activity_create_report_validator, 'team_activity_create_report_fail': EventType._team_activity_create_report_fail_validator, 'collection_share': EventType._collection_share_validator, 'file_transfers_file_add': EventType._file_transfers_file_add_validator, 'file_transfers_transfer_delete': EventType._file_transfers_transfer_delete_validator, 'file_transfers_transfer_download': EventType._file_transfers_transfer_download_validator, 'file_transfers_transfer_send': EventType._file_transfers_transfer_send_validator, 'file_transfers_transfer_view': EventType._file_transfers_transfer_view_validator, 'note_acl_invite_only': EventType._note_acl_invite_only_validator, 'note_acl_link': EventType._note_acl_link_validator, 'note_acl_team_link': EventType._note_acl_team_link_validator, 'note_shared': EventType._note_shared_validator, 'note_share_receive': EventType._note_share_receive_validator, 'open_note_shared': EventType._open_note_shared_validator, 'replay_file_shared_link_created': EventType._replay_file_shared_link_created_validator, 'replay_file_shared_link_modified': EventType._replay_file_shared_link_modified_validator, 'replay_project_team_add': EventType._replay_project_team_add_validator, 'replay_project_team_delete': EventType._replay_project_team_delete_validator, 'sf_add_group': EventType._sf_add_group_validator, 'sf_allow_non_members_to_view_shared_links': EventType._sf_allow_non_members_to_view_shared_links_validator, 'sf_external_invite_warn': EventType._sf_external_invite_warn_validator, 'sf_fb_invite': EventType._sf_fb_invite_validator, 'sf_fb_invite_change_role': EventType._sf_fb_invite_change_role_validator, 'sf_fb_uninvite': EventType._sf_fb_uninvite_validator, 'sf_invite_group': EventType._sf_invite_group_validator, 'sf_team_grant_access': EventType._sf_team_grant_access_validator, 'sf_team_invite': EventType._sf_team_invite_validator, 'sf_team_invite_change_role': EventType._sf_team_invite_change_role_validator, 'sf_team_join': EventType._sf_team_join_validator, 'sf_team_join_from_oob_link': EventType._sf_team_join_from_oob_link_validator, 'sf_team_uninvite': EventType._sf_team_uninvite_validator, 'shared_content_add_invitees': EventType._shared_content_add_invitees_validator, 'shared_content_add_link_expiry': EventType._shared_content_add_link_expiry_validator, 'shared_content_add_link_password': EventType._shared_content_add_link_password_validator, 'shared_content_add_member': EventType._shared_content_add_member_validator, 'shared_content_change_downloads_policy': EventType._shared_content_change_downloads_policy_validator, 'shared_content_change_invitee_role': EventType._shared_content_change_invitee_role_validator, 'shared_content_change_link_audience': EventType._shared_content_change_link_audience_validator, 'shared_content_change_link_expiry': EventType._shared_content_change_link_expiry_validator, 'shared_content_change_link_password': EventType._shared_content_change_link_password_validator, 'shared_content_change_member_role': EventType._shared_content_change_member_role_validator, 'shared_content_change_viewer_info_policy': EventType._shared_content_change_viewer_info_policy_validator, 'shared_content_claim_invitation': EventType._shared_content_claim_invitation_validator, 'shared_content_copy': EventType._shared_content_copy_validator, 'shared_content_download': EventType._shared_content_download_validator, 'shared_content_relinquish_membership': EventType._shared_content_relinquish_membership_validator, 'shared_content_remove_invitees': EventType._shared_content_remove_invitees_validator, 'shared_content_remove_link_expiry': EventType._shared_content_remove_link_expiry_validator, 'shared_content_remove_link_password': EventType._shared_content_remove_link_password_validator, 'shared_content_remove_member': EventType._shared_content_remove_member_validator, 'shared_content_request_access': EventType._shared_content_request_access_validator, 'shared_content_restore_invitees': EventType._shared_content_restore_invitees_validator, 'shared_content_restore_member': EventType._shared_content_restore_member_validator, 'shared_content_unshare': EventType._shared_content_unshare_validator, 'shared_content_view': EventType._shared_content_view_validator, 'shared_folder_change_link_policy': EventType._shared_folder_change_link_policy_validator, 'shared_folder_change_members_inheritance_policy': EventType._shared_folder_change_members_inheritance_policy_validator, 'shared_folder_change_members_management_policy': EventType._shared_folder_change_members_management_policy_validator, 'shared_folder_change_members_policy': EventType._shared_folder_change_members_policy_validator, 'shared_folder_create': EventType._shared_folder_create_validator, 'shared_folder_decline_invitation': EventType._shared_folder_decline_invitation_validator, 'shared_folder_mount': EventType._shared_folder_mount_validator, 'shared_folder_nest': EventType._shared_folder_nest_validator, 'shared_folder_transfer_ownership': EventType._shared_folder_transfer_ownership_validator, 'shared_folder_unmount': EventType._shared_folder_unmount_validator, 'shared_link_add_expiry': EventType._shared_link_add_expiry_validator, 'shared_link_change_expiry': EventType._shared_link_change_expiry_validator, 'shared_link_change_visibility': EventType._shared_link_change_visibility_validator, 'shared_link_copy': EventType._shared_link_copy_validator, 'shared_link_create': EventType._shared_link_create_validator, 'shared_link_disable': EventType._shared_link_disable_validator, 'shared_link_download': EventType._shared_link_download_validator, 'shared_link_remove_expiry': EventType._shared_link_remove_expiry_validator, 'shared_link_settings_add_expiration': EventType._shared_link_settings_add_expiration_validator, 'shared_link_settings_add_password': EventType._shared_link_settings_add_password_validator, 'shared_link_settings_allow_download_disabled': EventType._shared_link_settings_allow_download_disabled_validator, 'shared_link_settings_allow_download_enabled': EventType._shared_link_settings_allow_download_enabled_validator, 'shared_link_settings_change_audience': EventType._shared_link_settings_change_audience_validator, 'shared_link_settings_change_expiration': EventType._shared_link_settings_change_expiration_validator, 'shared_link_settings_change_password': EventType._shared_link_settings_change_password_validator, 'shared_link_settings_remove_expiration': EventType._shared_link_settings_remove_expiration_validator, 'shared_link_settings_remove_password': EventType._shared_link_settings_remove_password_validator, 'shared_link_share': EventType._shared_link_share_validator, 'shared_link_view': EventType._shared_link_view_validator, 'shared_note_opened': EventType._shared_note_opened_validator, 'shmodel_disable_downloads': EventType._shmodel_disable_downloads_validator, 'shmodel_enable_downloads': EventType._shmodel_enable_downloads_validator, 'shmodel_group_share': EventType._shmodel_group_share_validator, 'showcase_access_granted': EventType._showcase_access_granted_validator, 'showcase_add_member': EventType._showcase_add_member_validator, 'showcase_archived': EventType._showcase_archived_validator, 'showcase_created': EventType._showcase_created_validator, 'showcase_delete_comment': EventType._showcase_delete_comment_validator, 'showcase_edited': EventType._showcase_edited_validator, 'showcase_edit_comment': EventType._showcase_edit_comment_validator, 'showcase_file_added': EventType._showcase_file_added_validator, 'showcase_file_download': EventType._showcase_file_download_validator, 'showcase_file_removed': EventType._showcase_file_removed_validator, 'showcase_file_view': EventType._showcase_file_view_validator, 'showcase_permanently_deleted': EventType._showcase_permanently_deleted_validator, 'showcase_post_comment': EventType._showcase_post_comment_validator, 'showcase_remove_member': EventType._showcase_remove_member_validator, 'showcase_renamed': EventType._showcase_renamed_validator, 'showcase_request_access': EventType._showcase_request_access_validator, 'showcase_resolve_comment': EventType._showcase_resolve_comment_validator, 'showcase_restored': EventType._showcase_restored_validator, 'showcase_trashed': EventType._showcase_trashed_validator, 'showcase_trashed_deprecated': EventType._showcase_trashed_deprecated_validator, 'showcase_unresolve_comment': EventType._showcase_unresolve_comment_validator, 'showcase_untrashed': EventType._showcase_untrashed_validator, 'showcase_untrashed_deprecated': EventType._showcase_untrashed_deprecated_validator, 'showcase_view': EventType._showcase_view_validator, 'sso_add_cert': EventType._sso_add_cert_validator, 'sso_add_login_url': EventType._sso_add_login_url_validator, 'sso_add_logout_url': EventType._sso_add_logout_url_validator, 'sso_change_cert': EventType._sso_change_cert_validator, 'sso_change_login_url': EventType._sso_change_login_url_validator, 'sso_change_logout_url': EventType._sso_change_logout_url_validator, 'sso_change_saml_identity_mode': EventType._sso_change_saml_identity_mode_validator, 'sso_remove_cert': EventType._sso_remove_cert_validator, 'sso_remove_login_url': EventType._sso_remove_login_url_validator, 'sso_remove_logout_url': EventType._sso_remove_logout_url_validator, 'team_folder_change_status': EventType._team_folder_change_status_validator, 'team_folder_create': EventType._team_folder_create_validator, 'team_folder_downgrade': EventType._team_folder_downgrade_validator, 'team_folder_permanently_delete': EventType._team_folder_permanently_delete_validator, 'team_folder_rename': EventType._team_folder_rename_validator, 'team_selective_sync_settings_changed': EventType._team_selective_sync_settings_changed_validator, 'account_capture_change_policy': EventType._account_capture_change_policy_validator, 'admin_email_reminders_changed': EventType._admin_email_reminders_changed_validator, 'allow_download_disabled': EventType._allow_download_disabled_validator, 'allow_download_enabled': EventType._allow_download_enabled_validator, 'app_permissions_changed': EventType._app_permissions_changed_validator, 'camera_uploads_policy_changed': EventType._camera_uploads_policy_changed_validator, 'capture_transcript_policy_changed': EventType._capture_transcript_policy_changed_validator, 'classification_change_policy': EventType._classification_change_policy_validator, 'computer_backup_policy_changed': EventType._computer_backup_policy_changed_validator, 'content_administration_policy_changed': EventType._content_administration_policy_changed_validator, 'data_placement_restriction_change_policy': EventType._data_placement_restriction_change_policy_validator, 'data_placement_restriction_satisfy_policy': EventType._data_placement_restriction_satisfy_policy_validator, 'device_approvals_add_exception': EventType._device_approvals_add_exception_validator, 'device_approvals_change_desktop_policy': EventType._device_approvals_change_desktop_policy_validator, 'device_approvals_change_mobile_policy': EventType._device_approvals_change_mobile_policy_validator, 'device_approvals_change_overage_action': EventType._device_approvals_change_overage_action_validator, 'device_approvals_change_unlink_action': EventType._device_approvals_change_unlink_action_validator, 'device_approvals_remove_exception': EventType._device_approvals_remove_exception_validator, 'directory_restrictions_add_members': EventType._directory_restrictions_add_members_validator, 'directory_restrictions_remove_members': EventType._directory_restrictions_remove_members_validator, 'dropbox_passwords_policy_changed': EventType._dropbox_passwords_policy_changed_validator, 'email_ingest_policy_changed': EventType._email_ingest_policy_changed_validator, 'emm_add_exception': EventType._emm_add_exception_validator, 'emm_change_policy': EventType._emm_change_policy_validator, 'emm_remove_exception': EventType._emm_remove_exception_validator, 'extended_version_history_change_policy': EventType._extended_version_history_change_policy_validator, 'external_drive_backup_policy_changed': EventType._external_drive_backup_policy_changed_validator, 'file_comments_change_policy': EventType._file_comments_change_policy_validator, 'file_locking_policy_changed': EventType._file_locking_policy_changed_validator, 'file_provider_migration_policy_changed': EventType._file_provider_migration_policy_changed_validator, 'file_requests_change_policy': EventType._file_requests_change_policy_validator, 'file_requests_emails_enabled': EventType._file_requests_emails_enabled_validator, 'file_requests_emails_restricted_to_team_only': EventType._file_requests_emails_restricted_to_team_only_validator, 'file_transfers_policy_changed': EventType._file_transfers_policy_changed_validator, 'folder_link_restriction_policy_changed': EventType._folder_link_restriction_policy_changed_validator, 'google_sso_change_policy': EventType._google_sso_change_policy_validator, 'group_user_management_change_policy': EventType._group_user_management_change_policy_validator, 'integration_policy_changed': EventType._integration_policy_changed_validator, 'invite_acceptance_email_policy_changed': EventType._invite_acceptance_email_policy_changed_validator, 'member_requests_change_policy': EventType._member_requests_change_policy_validator, 'member_send_invite_policy_changed': EventType._member_send_invite_policy_changed_validator, 'member_space_limits_add_exception': EventType._member_space_limits_add_exception_validator, 'member_space_limits_change_caps_type_policy': EventType._member_space_limits_change_caps_type_policy_validator, 'member_space_limits_change_policy': EventType._member_space_limits_change_policy_validator, 'member_space_limits_remove_exception': EventType._member_space_limits_remove_exception_validator, 'member_suggestions_change_policy': EventType._member_suggestions_change_policy_validator, 'microsoft_office_addin_change_policy': EventType._microsoft_office_addin_change_policy_validator, 'network_control_change_policy': EventType._network_control_change_policy_validator, 'paper_change_deployment_policy': EventType._paper_change_deployment_policy_validator, 'paper_change_member_link_policy': EventType._paper_change_member_link_policy_validator, 'paper_change_member_policy': EventType._paper_change_member_policy_validator, 'paper_change_policy': EventType._paper_change_policy_validator, 'paper_default_folder_policy_changed': EventType._paper_default_folder_policy_changed_validator, 'paper_desktop_policy_changed': EventType._paper_desktop_policy_changed_validator, 'paper_enabled_users_group_addition': EventType._paper_enabled_users_group_addition_validator, 'paper_enabled_users_group_removal': EventType._paper_enabled_users_group_removal_validator, 'password_strength_requirements_change_policy': EventType._password_strength_requirements_change_policy_validator, 'permanent_delete_change_policy': EventType._permanent_delete_change_policy_validator, 'reseller_support_change_policy': EventType._reseller_support_change_policy_validator, 'rewind_policy_changed': EventType._rewind_policy_changed_validator, 'send_for_signature_policy_changed': EventType._send_for_signature_policy_changed_validator, 'sharing_change_folder_join_policy': EventType._sharing_change_folder_join_policy_validator, 'sharing_change_link_allow_change_expiration_policy': EventType._sharing_change_link_allow_change_expiration_policy_validator, 'sharing_change_link_default_expiration_policy': EventType._sharing_change_link_default_expiration_policy_validator, 'sharing_change_link_enforce_password_policy': EventType._sharing_change_link_enforce_password_policy_validator, 'sharing_change_link_policy': EventType._sharing_change_link_policy_validator, 'sharing_change_member_policy': EventType._sharing_change_member_policy_validator, 'showcase_change_download_policy': EventType._showcase_change_download_policy_validator, 'showcase_change_enabled_policy': EventType._showcase_change_enabled_policy_validator, 'showcase_change_external_sharing_policy': EventType._showcase_change_external_sharing_policy_validator, 'smarter_smart_sync_policy_changed': EventType._smarter_smart_sync_policy_changed_validator, 'smart_sync_change_policy': EventType._smart_sync_change_policy_validator, 'smart_sync_not_opt_out': EventType._smart_sync_not_opt_out_validator, 'smart_sync_opt_out': EventType._smart_sync_opt_out_validator, 'sso_change_policy': EventType._sso_change_policy_validator, 'team_branding_policy_changed': EventType._team_branding_policy_changed_validator, 'team_extensions_policy_changed': EventType._team_extensions_policy_changed_validator, 'team_selective_sync_policy_changed': EventType._team_selective_sync_policy_changed_validator, 'team_sharing_whitelist_subjects_changed': EventType._team_sharing_whitelist_subjects_changed_validator, 'tfa_add_exception': EventType._tfa_add_exception_validator, 'tfa_change_policy': EventType._tfa_change_policy_validator, 'tfa_remove_exception': EventType._tfa_remove_exception_validator, 'two_account_change_policy': EventType._two_account_change_policy_validator, 'viewer_info_policy_changed': EventType._viewer_info_policy_changed_validator, 'watermarking_policy_changed': EventType._watermarking_policy_changed_validator, 'web_sessions_change_active_session_limit': EventType._web_sessions_change_active_session_limit_validator, 'web_sessions_change_fixed_length_policy': EventType._web_sessions_change_fixed_length_policy_validator, 'web_sessions_change_idle_length_policy': EventType._web_sessions_change_idle_length_policy_validator, 'data_residency_migration_request_successful': EventType._data_residency_migration_request_successful_validator, 'data_residency_migration_request_unsuccessful': EventType._data_residency_migration_request_unsuccessful_validator, 'team_merge_from': EventType._team_merge_from_validator, 'team_merge_to': EventType._team_merge_to_validator, 'team_profile_add_background': EventType._team_profile_add_background_validator, 'team_profile_add_logo': EventType._team_profile_add_logo_validator, 'team_profile_change_background': EventType._team_profile_change_background_validator, 'team_profile_change_default_language': EventType._team_profile_change_default_language_validator, 'team_profile_change_logo': EventType._team_profile_change_logo_validator, 'team_profile_change_name': EventType._team_profile_change_name_validator, 'team_profile_remove_background': EventType._team_profile_remove_background_validator, 'team_profile_remove_logo': EventType._team_profile_remove_logo_validator, 'tfa_add_backup_phone': EventType._tfa_add_backup_phone_validator, 'tfa_add_security_key': EventType._tfa_add_security_key_validator, 'tfa_change_backup_phone': EventType._tfa_change_backup_phone_validator, 'tfa_change_status': EventType._tfa_change_status_validator, 'tfa_remove_backup_phone': EventType._tfa_remove_backup_phone_validator, 'tfa_remove_security_key': EventType._tfa_remove_security_key_validator, 'tfa_reset': EventType._tfa_reset_validator, 'changed_enterprise_admin_role': EventType._changed_enterprise_admin_role_validator, 'changed_enterprise_connected_team_status': EventType._changed_enterprise_connected_team_status_validator, 'ended_enterprise_admin_session': EventType._ended_enterprise_admin_session_validator, 'ended_enterprise_admin_session_deprecated': EventType._ended_enterprise_admin_session_deprecated_validator, 'enterprise_settings_locking': EventType._enterprise_settings_locking_validator, 'guest_admin_change_status': EventType._guest_admin_change_status_validator, 'started_enterprise_admin_session': EventType._started_enterprise_admin_session_validator, 'team_merge_request_accepted': EventType._team_merge_request_accepted_validator, 'team_merge_request_accepted_shown_to_primary_team': EventType._team_merge_request_accepted_shown_to_primary_team_validator, 'team_merge_request_accepted_shown_to_secondary_team': EventType._team_merge_request_accepted_shown_to_secondary_team_validator, 'team_merge_request_auto_canceled': EventType._team_merge_request_auto_canceled_validator, 'team_merge_request_canceled': EventType._team_merge_request_canceled_validator, 'team_merge_request_canceled_shown_to_primary_team': EventType._team_merge_request_canceled_shown_to_primary_team_validator, 'team_merge_request_canceled_shown_to_secondary_team': EventType._team_merge_request_canceled_shown_to_secondary_team_validator, 'team_merge_request_expired': EventType._team_merge_request_expired_validator, 'team_merge_request_expired_shown_to_primary_team': EventType._team_merge_request_expired_shown_to_primary_team_validator, 'team_merge_request_expired_shown_to_secondary_team': EventType._team_merge_request_expired_shown_to_secondary_team_validator, 'team_merge_request_rejected_shown_to_primary_team': EventType._team_merge_request_rejected_shown_to_primary_team_validator, 'team_merge_request_rejected_shown_to_secondary_team': EventType._team_merge_request_rejected_shown_to_secondary_team_validator, 'team_merge_request_reminder': EventType._team_merge_request_reminder_validator, 'team_merge_request_reminder_shown_to_primary_team': EventType._team_merge_request_reminder_shown_to_primary_team_validator, 'team_merge_request_reminder_shown_to_secondary_team': EventType._team_merge_request_reminder_shown_to_secondary_team_validator, 'team_merge_request_revoked': EventType._team_merge_request_revoked_validator, 'team_merge_request_sent_shown_to_primary_team': EventType._team_merge_request_sent_shown_to_primary_team_validator, 'team_merge_request_sent_shown_to_secondary_team': EventType._team_merge_request_sent_shown_to_secondary_team_validator, 'other': EventType._other_validator, } EventType.other = EventType('other') EventTypeArg._admin_alerting_alert_state_changed_validator = bv.Void() EventTypeArg._admin_alerting_changed_alert_config_validator = bv.Void() EventTypeArg._admin_alerting_triggered_alert_validator = bv.Void() EventTypeArg._ransomware_restore_process_completed_validator = bv.Void() EventTypeArg._ransomware_restore_process_started_validator = bv.Void() EventTypeArg._app_blocked_by_permissions_validator = bv.Void() EventTypeArg._app_link_team_validator = bv.Void() EventTypeArg._app_link_user_validator = bv.Void() EventTypeArg._app_unlink_team_validator = bv.Void() EventTypeArg._app_unlink_user_validator = bv.Void() EventTypeArg._integration_connected_validator = bv.Void() EventTypeArg._integration_disconnected_validator = bv.Void() EventTypeArg._file_add_comment_validator = bv.Void() EventTypeArg._file_change_comment_subscription_validator = bv.Void() EventTypeArg._file_delete_comment_validator = bv.Void() EventTypeArg._file_edit_comment_validator = bv.Void() EventTypeArg._file_like_comment_validator = bv.Void() EventTypeArg._file_resolve_comment_validator = bv.Void() EventTypeArg._file_unlike_comment_validator = bv.Void() EventTypeArg._file_unresolve_comment_validator = bv.Void() EventTypeArg._governance_policy_add_folders_validator = bv.Void() EventTypeArg._governance_policy_add_folder_failed_validator = bv.Void() EventTypeArg._governance_policy_content_disposed_validator = bv.Void() EventTypeArg._governance_policy_create_validator = bv.Void() EventTypeArg._governance_policy_delete_validator = bv.Void() EventTypeArg._governance_policy_edit_details_validator = bv.Void() EventTypeArg._governance_policy_edit_duration_validator = bv.Void() EventTypeArg._governance_policy_export_created_validator = bv.Void() EventTypeArg._governance_policy_export_removed_validator = bv.Void() EventTypeArg._governance_policy_remove_folders_validator = bv.Void() EventTypeArg._governance_policy_report_created_validator = bv.Void() EventTypeArg._governance_policy_zip_part_downloaded_validator = bv.Void() EventTypeArg._legal_holds_activate_a_hold_validator = bv.Void() EventTypeArg._legal_holds_add_members_validator = bv.Void() EventTypeArg._legal_holds_change_hold_details_validator = bv.Void() EventTypeArg._legal_holds_change_hold_name_validator = bv.Void() EventTypeArg._legal_holds_export_a_hold_validator = bv.Void() EventTypeArg._legal_holds_export_cancelled_validator = bv.Void() EventTypeArg._legal_holds_export_downloaded_validator = bv.Void() EventTypeArg._legal_holds_export_removed_validator = bv.Void() EventTypeArg._legal_holds_release_a_hold_validator = bv.Void() EventTypeArg._legal_holds_remove_members_validator = bv.Void() EventTypeArg._legal_holds_report_a_hold_validator = bv.Void() EventTypeArg._device_change_ip_desktop_validator = bv.Void() EventTypeArg._device_change_ip_mobile_validator = bv.Void() EventTypeArg._device_change_ip_web_validator = bv.Void() EventTypeArg._device_delete_on_unlink_fail_validator = bv.Void() EventTypeArg._device_delete_on_unlink_success_validator = bv.Void() EventTypeArg._device_link_fail_validator = bv.Void() EventTypeArg._device_link_success_validator = bv.Void() EventTypeArg._device_management_disabled_validator = bv.Void() EventTypeArg._device_management_enabled_validator = bv.Void() EventTypeArg._device_sync_backup_status_changed_validator = bv.Void() EventTypeArg._device_unlink_validator = bv.Void() EventTypeArg._dropbox_passwords_exported_validator = bv.Void() EventTypeArg._dropbox_passwords_new_device_enrolled_validator = bv.Void() EventTypeArg._emm_refresh_auth_token_validator = bv.Void() EventTypeArg._external_drive_backup_eligibility_status_checked_validator = bv.Void() EventTypeArg._external_drive_backup_status_changed_validator = bv.Void() EventTypeArg._account_capture_change_availability_validator = bv.Void() EventTypeArg._account_capture_migrate_account_validator = bv.Void() EventTypeArg._account_capture_notification_emails_sent_validator = bv.Void() EventTypeArg._account_capture_relinquish_account_validator = bv.Void() EventTypeArg._disabled_domain_invites_validator = bv.Void() EventTypeArg._domain_invites_approve_request_to_join_team_validator = bv.Void() EventTypeArg._domain_invites_decline_request_to_join_team_validator = bv.Void() EventTypeArg._domain_invites_email_existing_users_validator = bv.Void() EventTypeArg._domain_invites_request_to_join_team_validator = bv.Void() EventTypeArg._domain_invites_set_invite_new_user_pref_to_no_validator = bv.Void() EventTypeArg._domain_invites_set_invite_new_user_pref_to_yes_validator = bv.Void() EventTypeArg._domain_verification_add_domain_fail_validator = bv.Void() EventTypeArg._domain_verification_add_domain_success_validator = bv.Void() EventTypeArg._domain_verification_remove_domain_validator = bv.Void() EventTypeArg._enabled_domain_invites_validator = bv.Void() EventTypeArg._team_encryption_key_cancel_key_deletion_validator = bv.Void() EventTypeArg._team_encryption_key_create_key_validator = bv.Void() EventTypeArg._team_encryption_key_delete_key_validator = bv.Void() EventTypeArg._team_encryption_key_disable_key_validator = bv.Void() EventTypeArg._team_encryption_key_enable_key_validator = bv.Void() EventTypeArg._team_encryption_key_rotate_key_validator = bv.Void() EventTypeArg._team_encryption_key_schedule_key_deletion_validator = bv.Void() EventTypeArg._apply_naming_convention_validator = bv.Void() EventTypeArg._create_folder_validator = bv.Void() EventTypeArg._file_add_validator = bv.Void() EventTypeArg._file_add_from_automation_validator = bv.Void() EventTypeArg._file_copy_validator = bv.Void() EventTypeArg._file_delete_validator = bv.Void() EventTypeArg._file_download_validator = bv.Void() EventTypeArg._file_edit_validator = bv.Void() EventTypeArg._file_get_copy_reference_validator = bv.Void() EventTypeArg._file_locking_lock_status_changed_validator = bv.Void() EventTypeArg._file_move_validator = bv.Void() EventTypeArg._file_permanently_delete_validator = bv.Void() EventTypeArg._file_preview_validator = bv.Void() EventTypeArg._file_rename_validator = bv.Void() EventTypeArg._file_restore_validator = bv.Void() EventTypeArg._file_revert_validator = bv.Void() EventTypeArg._file_rollback_changes_validator = bv.Void() EventTypeArg._file_save_copy_reference_validator = bv.Void() EventTypeArg._folder_overview_description_changed_validator = bv.Void() EventTypeArg._folder_overview_item_pinned_validator = bv.Void() EventTypeArg._folder_overview_item_unpinned_validator = bv.Void() EventTypeArg._object_label_added_validator = bv.Void() EventTypeArg._object_label_removed_validator = bv.Void() EventTypeArg._object_label_updated_value_validator = bv.Void() EventTypeArg._organize_folder_with_tidy_validator = bv.Void() EventTypeArg._replay_file_delete_validator = bv.Void() EventTypeArg._rewind_folder_validator = bv.Void() EventTypeArg._undo_naming_convention_validator = bv.Void() EventTypeArg._undo_organize_folder_with_tidy_validator = bv.Void() EventTypeArg._user_tags_added_validator = bv.Void() EventTypeArg._user_tags_removed_validator = bv.Void() EventTypeArg._email_ingest_receive_file_validator = bv.Void() EventTypeArg._file_request_change_validator = bv.Void() EventTypeArg._file_request_close_validator = bv.Void() EventTypeArg._file_request_create_validator = bv.Void() EventTypeArg._file_request_delete_validator = bv.Void() EventTypeArg._file_request_receive_file_validator = bv.Void() EventTypeArg._group_add_external_id_validator = bv.Void() EventTypeArg._group_add_member_validator = bv.Void() EventTypeArg._group_change_external_id_validator = bv.Void() EventTypeArg._group_change_management_type_validator = bv.Void() EventTypeArg._group_change_member_role_validator = bv.Void() EventTypeArg._group_create_validator = bv.Void() EventTypeArg._group_delete_validator = bv.Void() EventTypeArg._group_description_updated_validator = bv.Void() EventTypeArg._group_join_policy_updated_validator = bv.Void() EventTypeArg._group_moved_validator = bv.Void() EventTypeArg._group_remove_external_id_validator = bv.Void() EventTypeArg._group_remove_member_validator = bv.Void() EventTypeArg._group_rename_validator = bv.Void() EventTypeArg._account_lock_or_unlocked_validator = bv.Void() EventTypeArg._emm_error_validator = bv.Void() EventTypeArg._guest_admin_signed_in_via_trusted_teams_validator = bv.Void() EventTypeArg._guest_admin_signed_out_via_trusted_teams_validator = bv.Void() EventTypeArg._login_fail_validator = bv.Void() EventTypeArg._login_success_validator = bv.Void() EventTypeArg._logout_validator = bv.Void() EventTypeArg._reseller_support_session_end_validator = bv.Void() EventTypeArg._reseller_support_session_start_validator = bv.Void() EventTypeArg._sign_in_as_session_end_validator = bv.Void() EventTypeArg._sign_in_as_session_start_validator = bv.Void() EventTypeArg._sso_error_validator = bv.Void() EventTypeArg._backup_admin_invitation_sent_validator = bv.Void() EventTypeArg._backup_invitation_opened_validator = bv.Void() EventTypeArg._create_team_invite_link_validator = bv.Void() EventTypeArg._delete_team_invite_link_validator = bv.Void() EventTypeArg._member_add_external_id_validator = bv.Void() EventTypeArg._member_add_name_validator = bv.Void() EventTypeArg._member_change_admin_role_validator = bv.Void() EventTypeArg._member_change_email_validator = bv.Void() EventTypeArg._member_change_external_id_validator = bv.Void() EventTypeArg._member_change_membership_type_validator = bv.Void() EventTypeArg._member_change_name_validator = bv.Void() EventTypeArg._member_change_reseller_role_validator = bv.Void() EventTypeArg._member_change_status_validator = bv.Void() EventTypeArg._member_delete_manual_contacts_validator = bv.Void() EventTypeArg._member_delete_profile_photo_validator = bv.Void() EventTypeArg._member_permanently_delete_account_contents_validator = bv.Void() EventTypeArg._member_remove_external_id_validator = bv.Void() EventTypeArg._member_set_profile_photo_validator = bv.Void() EventTypeArg._member_space_limits_add_custom_quota_validator = bv.Void() EventTypeArg._member_space_limits_change_custom_quota_validator = bv.Void() EventTypeArg._member_space_limits_change_status_validator = bv.Void() EventTypeArg._member_space_limits_remove_custom_quota_validator = bv.Void() EventTypeArg._member_suggest_validator = bv.Void() EventTypeArg._member_transfer_account_contents_validator = bv.Void() EventTypeArg._pending_secondary_email_added_validator = bv.Void() EventTypeArg._secondary_email_deleted_validator = bv.Void() EventTypeArg._secondary_email_verified_validator = bv.Void() EventTypeArg._secondary_mails_policy_changed_validator = bv.Void() EventTypeArg._binder_add_page_validator = bv.Void() EventTypeArg._binder_add_section_validator = bv.Void() EventTypeArg._binder_remove_page_validator = bv.Void() EventTypeArg._binder_remove_section_validator = bv.Void() EventTypeArg._binder_rename_page_validator = bv.Void() EventTypeArg._binder_rename_section_validator = bv.Void() EventTypeArg._binder_reorder_page_validator = bv.Void() EventTypeArg._binder_reorder_section_validator = bv.Void() EventTypeArg._paper_content_add_member_validator = bv.Void() EventTypeArg._paper_content_add_to_folder_validator = bv.Void() EventTypeArg._paper_content_archive_validator = bv.Void() EventTypeArg._paper_content_create_validator = bv.Void() EventTypeArg._paper_content_permanently_delete_validator = bv.Void() EventTypeArg._paper_content_remove_from_folder_validator = bv.Void() EventTypeArg._paper_content_remove_member_validator = bv.Void() EventTypeArg._paper_content_rename_validator = bv.Void() EventTypeArg._paper_content_restore_validator = bv.Void() EventTypeArg._paper_doc_add_comment_validator = bv.Void() EventTypeArg._paper_doc_change_member_role_validator = bv.Void() EventTypeArg._paper_doc_change_sharing_policy_validator = bv.Void() EventTypeArg._paper_doc_change_subscription_validator = bv.Void() EventTypeArg._paper_doc_deleted_validator = bv.Void() EventTypeArg._paper_doc_delete_comment_validator = bv.Void() EventTypeArg._paper_doc_download_validator = bv.Void() EventTypeArg._paper_doc_edit_validator = bv.Void() EventTypeArg._paper_doc_edit_comment_validator = bv.Void() EventTypeArg._paper_doc_followed_validator = bv.Void() EventTypeArg._paper_doc_mention_validator = bv.Void() EventTypeArg._paper_doc_ownership_changed_validator = bv.Void() EventTypeArg._paper_doc_request_access_validator = bv.Void() EventTypeArg._paper_doc_resolve_comment_validator = bv.Void() EventTypeArg._paper_doc_revert_validator = bv.Void() EventTypeArg._paper_doc_slack_share_validator = bv.Void() EventTypeArg._paper_doc_team_invite_validator = bv.Void() EventTypeArg._paper_doc_trashed_validator = bv.Void() EventTypeArg._paper_doc_unresolve_comment_validator = bv.Void() EventTypeArg._paper_doc_untrashed_validator = bv.Void() EventTypeArg._paper_doc_view_validator = bv.Void() EventTypeArg._paper_external_view_allow_validator = bv.Void() EventTypeArg._paper_external_view_default_team_validator = bv.Void() EventTypeArg._paper_external_view_forbid_validator = bv.Void() EventTypeArg._paper_folder_change_subscription_validator = bv.Void() EventTypeArg._paper_folder_deleted_validator = bv.Void() EventTypeArg._paper_folder_followed_validator = bv.Void() EventTypeArg._paper_folder_team_invite_validator = bv.Void() EventTypeArg._paper_published_link_change_permission_validator = bv.Void() EventTypeArg._paper_published_link_create_validator = bv.Void() EventTypeArg._paper_published_link_disabled_validator = bv.Void() EventTypeArg._paper_published_link_view_validator = bv.Void() EventTypeArg._password_change_validator = bv.Void() EventTypeArg._password_reset_validator = bv.Void() EventTypeArg._password_reset_all_validator = bv.Void() EventTypeArg._classification_create_report_validator = bv.Void() EventTypeArg._classification_create_report_fail_validator = bv.Void() EventTypeArg._emm_create_exceptions_report_validator = bv.Void() EventTypeArg._emm_create_usage_report_validator = bv.Void() EventTypeArg._export_members_report_validator = bv.Void() EventTypeArg._export_members_report_fail_validator = bv.Void() EventTypeArg._external_sharing_create_report_validator = bv.Void() EventTypeArg._external_sharing_report_failed_validator = bv.Void() EventTypeArg._no_expiration_link_gen_create_report_validator = bv.Void() EventTypeArg._no_expiration_link_gen_report_failed_validator = bv.Void() EventTypeArg._no_password_link_gen_create_report_validator = bv.Void() EventTypeArg._no_password_link_gen_report_failed_validator = bv.Void() EventTypeArg._no_password_link_view_create_report_validator = bv.Void() EventTypeArg._no_password_link_view_report_failed_validator = bv.Void() EventTypeArg._outdated_link_view_create_report_validator = bv.Void() EventTypeArg._outdated_link_view_report_failed_validator = bv.Void() EventTypeArg._paper_admin_export_start_validator = bv.Void() EventTypeArg._ransomware_alert_create_report_validator = bv.Void() EventTypeArg._ransomware_alert_create_report_failed_validator = bv.Void() EventTypeArg._smart_sync_create_admin_privilege_report_validator = bv.Void() EventTypeArg._team_activity_create_report_validator = bv.Void() EventTypeArg._team_activity_create_report_fail_validator = bv.Void() EventTypeArg._collection_share_validator = bv.Void() EventTypeArg._file_transfers_file_add_validator = bv.Void() EventTypeArg._file_transfers_transfer_delete_validator = bv.Void() EventTypeArg._file_transfers_transfer_download_validator = bv.Void() EventTypeArg._file_transfers_transfer_send_validator = bv.Void() EventTypeArg._file_transfers_transfer_view_validator = bv.Void() EventTypeArg._note_acl_invite_only_validator = bv.Void() EventTypeArg._note_acl_link_validator = bv.Void() EventTypeArg._note_acl_team_link_validator = bv.Void() EventTypeArg._note_shared_validator = bv.Void() EventTypeArg._note_share_receive_validator = bv.Void() EventTypeArg._open_note_shared_validator = bv.Void() EventTypeArg._replay_file_shared_link_created_validator = bv.Void() EventTypeArg._replay_file_shared_link_modified_validator = bv.Void() EventTypeArg._replay_project_team_add_validator = bv.Void() EventTypeArg._replay_project_team_delete_validator = bv.Void() EventTypeArg._sf_add_group_validator = bv.Void() EventTypeArg._sf_allow_non_members_to_view_shared_links_validator = bv.Void() EventTypeArg._sf_external_invite_warn_validator = bv.Void() EventTypeArg._sf_fb_invite_validator = bv.Void() EventTypeArg._sf_fb_invite_change_role_validator = bv.Void() EventTypeArg._sf_fb_uninvite_validator = bv.Void() EventTypeArg._sf_invite_group_validator = bv.Void() EventTypeArg._sf_team_grant_access_validator = bv.Void() EventTypeArg._sf_team_invite_validator = bv.Void() EventTypeArg._sf_team_invite_change_role_validator = bv.Void() EventTypeArg._sf_team_join_validator = bv.Void() EventTypeArg._sf_team_join_from_oob_link_validator = bv.Void() EventTypeArg._sf_team_uninvite_validator = bv.Void() EventTypeArg._shared_content_add_invitees_validator = bv.Void() EventTypeArg._shared_content_add_link_expiry_validator = bv.Void() EventTypeArg._shared_content_add_link_password_validator = bv.Void() EventTypeArg._shared_content_add_member_validator = bv.Void() EventTypeArg._shared_content_change_downloads_policy_validator = bv.Void() EventTypeArg._shared_content_change_invitee_role_validator = bv.Void() EventTypeArg._shared_content_change_link_audience_validator = bv.Void() EventTypeArg._shared_content_change_link_expiry_validator = bv.Void() EventTypeArg._shared_content_change_link_password_validator = bv.Void() EventTypeArg._shared_content_change_member_role_validator = bv.Void() EventTypeArg._shared_content_change_viewer_info_policy_validator = bv.Void() EventTypeArg._shared_content_claim_invitation_validator = bv.Void() EventTypeArg._shared_content_copy_validator = bv.Void() EventTypeArg._shared_content_download_validator = bv.Void() EventTypeArg._shared_content_relinquish_membership_validator = bv.Void() EventTypeArg._shared_content_remove_invitees_validator = bv.Void() EventTypeArg._shared_content_remove_link_expiry_validator = bv.Void() EventTypeArg._shared_content_remove_link_password_validator = bv.Void() EventTypeArg._shared_content_remove_member_validator = bv.Void() EventTypeArg._shared_content_request_access_validator = bv.Void() EventTypeArg._shared_content_restore_invitees_validator = bv.Void() EventTypeArg._shared_content_restore_member_validator = bv.Void() EventTypeArg._shared_content_unshare_validator = bv.Void() EventTypeArg._shared_content_view_validator = bv.Void() EventTypeArg._shared_folder_change_link_policy_validator = bv.Void() EventTypeArg._shared_folder_change_members_inheritance_policy_validator = bv.Void() EventTypeArg._shared_folder_change_members_management_policy_validator = bv.Void() EventTypeArg._shared_folder_change_members_policy_validator = bv.Void() EventTypeArg._shared_folder_create_validator = bv.Void() EventTypeArg._shared_folder_decline_invitation_validator = bv.Void() EventTypeArg._shared_folder_mount_validator = bv.Void() EventTypeArg._shared_folder_nest_validator = bv.Void() EventTypeArg._shared_folder_transfer_ownership_validator = bv.Void() EventTypeArg._shared_folder_unmount_validator = bv.Void() EventTypeArg._shared_link_add_expiry_validator = bv.Void() EventTypeArg._shared_link_change_expiry_validator = bv.Void() EventTypeArg._shared_link_change_visibility_validator = bv.Void() EventTypeArg._shared_link_copy_validator = bv.Void() EventTypeArg._shared_link_create_validator = bv.Void() EventTypeArg._shared_link_disable_validator = bv.Void() EventTypeArg._shared_link_download_validator = bv.Void() EventTypeArg._shared_link_remove_expiry_validator = bv.Void() EventTypeArg._shared_link_settings_add_expiration_validator = bv.Void() EventTypeArg._shared_link_settings_add_password_validator = bv.Void() EventTypeArg._shared_link_settings_allow_download_disabled_validator = bv.Void() EventTypeArg._shared_link_settings_allow_download_enabled_validator = bv.Void() EventTypeArg._shared_link_settings_change_audience_validator = bv.Void() EventTypeArg._shared_link_settings_change_expiration_validator = bv.Void() EventTypeArg._shared_link_settings_change_password_validator = bv.Void() EventTypeArg._shared_link_settings_remove_expiration_validator = bv.Void() EventTypeArg._shared_link_settings_remove_password_validator = bv.Void() EventTypeArg._shared_link_share_validator = bv.Void() EventTypeArg._shared_link_view_validator = bv.Void() EventTypeArg._shared_note_opened_validator = bv.Void() EventTypeArg._shmodel_disable_downloads_validator = bv.Void() EventTypeArg._shmodel_enable_downloads_validator = bv.Void() EventTypeArg._shmodel_group_share_validator = bv.Void() EventTypeArg._showcase_access_granted_validator = bv.Void() EventTypeArg._showcase_add_member_validator = bv.Void() EventTypeArg._showcase_archived_validator = bv.Void() EventTypeArg._showcase_created_validator = bv.Void() EventTypeArg._showcase_delete_comment_validator = bv.Void() EventTypeArg._showcase_edited_validator = bv.Void() EventTypeArg._showcase_edit_comment_validator = bv.Void() EventTypeArg._showcase_file_added_validator = bv.Void() EventTypeArg._showcase_file_download_validator = bv.Void() EventTypeArg._showcase_file_removed_validator = bv.Void() EventTypeArg._showcase_file_view_validator = bv.Void() EventTypeArg._showcase_permanently_deleted_validator = bv.Void() EventTypeArg._showcase_post_comment_validator = bv.Void() EventTypeArg._showcase_remove_member_validator = bv.Void() EventTypeArg._showcase_renamed_validator = bv.Void() EventTypeArg._showcase_request_access_validator = bv.Void() EventTypeArg._showcase_resolve_comment_validator = bv.Void() EventTypeArg._showcase_restored_validator = bv.Void() EventTypeArg._showcase_trashed_validator = bv.Void() EventTypeArg._showcase_trashed_deprecated_validator = bv.Void() EventTypeArg._showcase_unresolve_comment_validator = bv.Void() EventTypeArg._showcase_untrashed_validator = bv.Void() EventTypeArg._showcase_untrashed_deprecated_validator = bv.Void() EventTypeArg._showcase_view_validator = bv.Void() EventTypeArg._sso_add_cert_validator = bv.Void() EventTypeArg._sso_add_login_url_validator = bv.Void() EventTypeArg._sso_add_logout_url_validator = bv.Void() EventTypeArg._sso_change_cert_validator = bv.Void() EventTypeArg._sso_change_login_url_validator = bv.Void() EventTypeArg._sso_change_logout_url_validator = bv.Void() EventTypeArg._sso_change_saml_identity_mode_validator = bv.Void() EventTypeArg._sso_remove_cert_validator = bv.Void() EventTypeArg._sso_remove_login_url_validator = bv.Void() EventTypeArg._sso_remove_logout_url_validator = bv.Void() EventTypeArg._team_folder_change_status_validator = bv.Void() EventTypeArg._team_folder_create_validator = bv.Void() EventTypeArg._team_folder_downgrade_validator = bv.Void() EventTypeArg._team_folder_permanently_delete_validator = bv.Void() EventTypeArg._team_folder_rename_validator = bv.Void() EventTypeArg._team_selective_sync_settings_changed_validator = bv.Void() EventTypeArg._account_capture_change_policy_validator = bv.Void() EventTypeArg._admin_email_reminders_changed_validator = bv.Void() EventTypeArg._allow_download_disabled_validator = bv.Void() EventTypeArg._allow_download_enabled_validator = bv.Void() EventTypeArg._app_permissions_changed_validator = bv.Void() EventTypeArg._camera_uploads_policy_changed_validator = bv.Void() EventTypeArg._capture_transcript_policy_changed_validator = bv.Void() EventTypeArg._classification_change_policy_validator = bv.Void() EventTypeArg._computer_backup_policy_changed_validator = bv.Void() EventTypeArg._content_administration_policy_changed_validator = bv.Void() EventTypeArg._data_placement_restriction_change_policy_validator = bv.Void() EventTypeArg._data_placement_restriction_satisfy_policy_validator = bv.Void() EventTypeArg._device_approvals_add_exception_validator = bv.Void() EventTypeArg._device_approvals_change_desktop_policy_validator = bv.Void() EventTypeArg._device_approvals_change_mobile_policy_validator = bv.Void() EventTypeArg._device_approvals_change_overage_action_validator = bv.Void() EventTypeArg._device_approvals_change_unlink_action_validator = bv.Void() EventTypeArg._device_approvals_remove_exception_validator = bv.Void() EventTypeArg._directory_restrictions_add_members_validator = bv.Void() EventTypeArg._directory_restrictions_remove_members_validator = bv.Void() EventTypeArg._dropbox_passwords_policy_changed_validator = bv.Void() EventTypeArg._email_ingest_policy_changed_validator = bv.Void() EventTypeArg._emm_add_exception_validator = bv.Void() EventTypeArg._emm_change_policy_validator = bv.Void() EventTypeArg._emm_remove_exception_validator = bv.Void() EventTypeArg._extended_version_history_change_policy_validator = bv.Void() EventTypeArg._external_drive_backup_policy_changed_validator = bv.Void() EventTypeArg._file_comments_change_policy_validator = bv.Void() EventTypeArg._file_locking_policy_changed_validator = bv.Void() EventTypeArg._file_provider_migration_policy_changed_validator = bv.Void() EventTypeArg._file_requests_change_policy_validator = bv.Void() EventTypeArg._file_requests_emails_enabled_validator = bv.Void() EventTypeArg._file_requests_emails_restricted_to_team_only_validator = bv.Void() EventTypeArg._file_transfers_policy_changed_validator = bv.Void() EventTypeArg._folder_link_restriction_policy_changed_validator = bv.Void() EventTypeArg._google_sso_change_policy_validator = bv.Void() EventTypeArg._group_user_management_change_policy_validator = bv.Void() EventTypeArg._integration_policy_changed_validator = bv.Void() EventTypeArg._invite_acceptance_email_policy_changed_validator = bv.Void() EventTypeArg._member_requests_change_policy_validator = bv.Void() EventTypeArg._member_send_invite_policy_changed_validator = bv.Void() EventTypeArg._member_space_limits_add_exception_validator = bv.Void() EventTypeArg._member_space_limits_change_caps_type_policy_validator = bv.Void() EventTypeArg._member_space_limits_change_policy_validator = bv.Void() EventTypeArg._member_space_limits_remove_exception_validator = bv.Void() EventTypeArg._member_suggestions_change_policy_validator = bv.Void() EventTypeArg._microsoft_office_addin_change_policy_validator = bv.Void() EventTypeArg._network_control_change_policy_validator = bv.Void() EventTypeArg._paper_change_deployment_policy_validator = bv.Void() EventTypeArg._paper_change_member_link_policy_validator = bv.Void() EventTypeArg._paper_change_member_policy_validator = bv.Void() EventTypeArg._paper_change_policy_validator = bv.Void() EventTypeArg._paper_default_folder_policy_changed_validator = bv.Void() EventTypeArg._paper_desktop_policy_changed_validator = bv.Void() EventTypeArg._paper_enabled_users_group_addition_validator = bv.Void() EventTypeArg._paper_enabled_users_group_removal_validator = bv.Void() EventTypeArg._password_strength_requirements_change_policy_validator = bv.Void() EventTypeArg._permanent_delete_change_policy_validator = bv.Void() EventTypeArg._reseller_support_change_policy_validator = bv.Void() EventTypeArg._rewind_policy_changed_validator = bv.Void() EventTypeArg._send_for_signature_policy_changed_validator = bv.Void() EventTypeArg._sharing_change_folder_join_policy_validator = bv.Void() EventTypeArg._sharing_change_link_allow_change_expiration_policy_validator = bv.Void() EventTypeArg._sharing_change_link_default_expiration_policy_validator = bv.Void() EventTypeArg._sharing_change_link_enforce_password_policy_validator = bv.Void() EventTypeArg._sharing_change_link_policy_validator = bv.Void() EventTypeArg._sharing_change_member_policy_validator = bv.Void() EventTypeArg._showcase_change_download_policy_validator = bv.Void() EventTypeArg._showcase_change_enabled_policy_validator = bv.Void() EventTypeArg._showcase_change_external_sharing_policy_validator = bv.Void() EventTypeArg._smarter_smart_sync_policy_changed_validator = bv.Void() EventTypeArg._smart_sync_change_policy_validator = bv.Void() EventTypeArg._smart_sync_not_opt_out_validator = bv.Void() EventTypeArg._smart_sync_opt_out_validator = bv.Void() EventTypeArg._sso_change_policy_validator = bv.Void() EventTypeArg._team_branding_policy_changed_validator = bv.Void() EventTypeArg._team_extensions_policy_changed_validator = bv.Void() EventTypeArg._team_selective_sync_policy_changed_validator = bv.Void() EventTypeArg._team_sharing_whitelist_subjects_changed_validator = bv.Void() EventTypeArg._tfa_add_exception_validator = bv.Void() EventTypeArg._tfa_change_policy_validator = bv.Void() EventTypeArg._tfa_remove_exception_validator = bv.Void() EventTypeArg._two_account_change_policy_validator = bv.Void() EventTypeArg._viewer_info_policy_changed_validator = bv.Void() EventTypeArg._watermarking_policy_changed_validator = bv.Void() EventTypeArg._web_sessions_change_active_session_limit_validator = bv.Void() EventTypeArg._web_sessions_change_fixed_length_policy_validator = bv.Void() EventTypeArg._web_sessions_change_idle_length_policy_validator = bv.Void() EventTypeArg._data_residency_migration_request_successful_validator = bv.Void() EventTypeArg._data_residency_migration_request_unsuccessful_validator = bv.Void() EventTypeArg._team_merge_from_validator = bv.Void() EventTypeArg._team_merge_to_validator = bv.Void() EventTypeArg._team_profile_add_background_validator = bv.Void() EventTypeArg._team_profile_add_logo_validator = bv.Void() EventTypeArg._team_profile_change_background_validator = bv.Void() EventTypeArg._team_profile_change_default_language_validator = bv.Void() EventTypeArg._team_profile_change_logo_validator = bv.Void() EventTypeArg._team_profile_change_name_validator = bv.Void() EventTypeArg._team_profile_remove_background_validator = bv.Void() EventTypeArg._team_profile_remove_logo_validator = bv.Void() EventTypeArg._tfa_add_backup_phone_validator = bv.Void() EventTypeArg._tfa_add_security_key_validator = bv.Void() EventTypeArg._tfa_change_backup_phone_validator = bv.Void() EventTypeArg._tfa_change_status_validator = bv.Void() EventTypeArg._tfa_remove_backup_phone_validator = bv.Void() EventTypeArg._tfa_remove_security_key_validator = bv.Void() EventTypeArg._tfa_reset_validator = bv.Void() EventTypeArg._changed_enterprise_admin_role_validator = bv.Void() EventTypeArg._changed_enterprise_connected_team_status_validator = bv.Void() EventTypeArg._ended_enterprise_admin_session_validator = bv.Void() EventTypeArg._ended_enterprise_admin_session_deprecated_validator = bv.Void() EventTypeArg._enterprise_settings_locking_validator = bv.Void() EventTypeArg._guest_admin_change_status_validator = bv.Void() EventTypeArg._started_enterprise_admin_session_validator = bv.Void() EventTypeArg._team_merge_request_accepted_validator = bv.Void() EventTypeArg._team_merge_request_accepted_shown_to_primary_team_validator = bv.Void() EventTypeArg._team_merge_request_accepted_shown_to_secondary_team_validator = bv.Void() EventTypeArg._team_merge_request_auto_canceled_validator = bv.Void() EventTypeArg._team_merge_request_canceled_validator = bv.Void() EventTypeArg._team_merge_request_canceled_shown_to_primary_team_validator = bv.Void() EventTypeArg._team_merge_request_canceled_shown_to_secondary_team_validator = bv.Void() EventTypeArg._team_merge_request_expired_validator = bv.Void() EventTypeArg._team_merge_request_expired_shown_to_primary_team_validator = bv.Void() EventTypeArg._team_merge_request_expired_shown_to_secondary_team_validator = bv.Void() EventTypeArg._team_merge_request_rejected_shown_to_primary_team_validator = bv.Void() EventTypeArg._team_merge_request_rejected_shown_to_secondary_team_validator = bv.Void() EventTypeArg._team_merge_request_reminder_validator = bv.Void() EventTypeArg._team_merge_request_reminder_shown_to_primary_team_validator = bv.Void() EventTypeArg._team_merge_request_reminder_shown_to_secondary_team_validator = bv.Void() EventTypeArg._team_merge_request_revoked_validator = bv.Void() EventTypeArg._team_merge_request_sent_shown_to_primary_team_validator = bv.Void() EventTypeArg._team_merge_request_sent_shown_to_secondary_team_validator = bv.Void() EventTypeArg._other_validator = bv.Void() EventTypeArg._tagmap = { 'admin_alerting_alert_state_changed': EventTypeArg._admin_alerting_alert_state_changed_validator, 'admin_alerting_changed_alert_config': EventTypeArg._admin_alerting_changed_alert_config_validator, 'admin_alerting_triggered_alert': EventTypeArg._admin_alerting_triggered_alert_validator, 'ransomware_restore_process_completed': EventTypeArg._ransomware_restore_process_completed_validator, 'ransomware_restore_process_started': EventTypeArg._ransomware_restore_process_started_validator, 'app_blocked_by_permissions': EventTypeArg._app_blocked_by_permissions_validator, 'app_link_team': EventTypeArg._app_link_team_validator, 'app_link_user': EventTypeArg._app_link_user_validator, 'app_unlink_team': EventTypeArg._app_unlink_team_validator, 'app_unlink_user': EventTypeArg._app_unlink_user_validator, 'integration_connected': EventTypeArg._integration_connected_validator, 'integration_disconnected': EventTypeArg._integration_disconnected_validator, 'file_add_comment': EventTypeArg._file_add_comment_validator, 'file_change_comment_subscription': EventTypeArg._file_change_comment_subscription_validator, 'file_delete_comment': EventTypeArg._file_delete_comment_validator, 'file_edit_comment': EventTypeArg._file_edit_comment_validator, 'file_like_comment': EventTypeArg._file_like_comment_validator, 'file_resolve_comment': EventTypeArg._file_resolve_comment_validator, 'file_unlike_comment': EventTypeArg._file_unlike_comment_validator, 'file_unresolve_comment': EventTypeArg._file_unresolve_comment_validator, 'governance_policy_add_folders': EventTypeArg._governance_policy_add_folders_validator, 'governance_policy_add_folder_failed': EventTypeArg._governance_policy_add_folder_failed_validator, 'governance_policy_content_disposed': EventTypeArg._governance_policy_content_disposed_validator, 'governance_policy_create': EventTypeArg._governance_policy_create_validator, 'governance_policy_delete': EventTypeArg._governance_policy_delete_validator, 'governance_policy_edit_details': EventTypeArg._governance_policy_edit_details_validator, 'governance_policy_edit_duration': EventTypeArg._governance_policy_edit_duration_validator, 'governance_policy_export_created': EventTypeArg._governance_policy_export_created_validator, 'governance_policy_export_removed': EventTypeArg._governance_policy_export_removed_validator, 'governance_policy_remove_folders': EventTypeArg._governance_policy_remove_folders_validator, 'governance_policy_report_created': EventTypeArg._governance_policy_report_created_validator, 'governance_policy_zip_part_downloaded': EventTypeArg._governance_policy_zip_part_downloaded_validator, 'legal_holds_activate_a_hold': EventTypeArg._legal_holds_activate_a_hold_validator, 'legal_holds_add_members': EventTypeArg._legal_holds_add_members_validator, 'legal_holds_change_hold_details': EventTypeArg._legal_holds_change_hold_details_validator, 'legal_holds_change_hold_name': EventTypeArg._legal_holds_change_hold_name_validator, 'legal_holds_export_a_hold': EventTypeArg._legal_holds_export_a_hold_validator, 'legal_holds_export_cancelled': EventTypeArg._legal_holds_export_cancelled_validator, 'legal_holds_export_downloaded': EventTypeArg._legal_holds_export_downloaded_validator, 'legal_holds_export_removed': EventTypeArg._legal_holds_export_removed_validator, 'legal_holds_release_a_hold': EventTypeArg._legal_holds_release_a_hold_validator, 'legal_holds_remove_members': EventTypeArg._legal_holds_remove_members_validator, 'legal_holds_report_a_hold': EventTypeArg._legal_holds_report_a_hold_validator, 'device_change_ip_desktop': EventTypeArg._device_change_ip_desktop_validator, 'device_change_ip_mobile': EventTypeArg._device_change_ip_mobile_validator, 'device_change_ip_web': EventTypeArg._device_change_ip_web_validator, 'device_delete_on_unlink_fail': EventTypeArg._device_delete_on_unlink_fail_validator, 'device_delete_on_unlink_success': EventTypeArg._device_delete_on_unlink_success_validator, 'device_link_fail': EventTypeArg._device_link_fail_validator, 'device_link_success': EventTypeArg._device_link_success_validator, 'device_management_disabled': EventTypeArg._device_management_disabled_validator, 'device_management_enabled': EventTypeArg._device_management_enabled_validator, 'device_sync_backup_status_changed': EventTypeArg._device_sync_backup_status_changed_validator, 'device_unlink': EventTypeArg._device_unlink_validator, 'dropbox_passwords_exported': EventTypeArg._dropbox_passwords_exported_validator, 'dropbox_passwords_new_device_enrolled': EventTypeArg._dropbox_passwords_new_device_enrolled_validator, 'emm_refresh_auth_token': EventTypeArg._emm_refresh_auth_token_validator, 'external_drive_backup_eligibility_status_checked': EventTypeArg._external_drive_backup_eligibility_status_checked_validator, 'external_drive_backup_status_changed': EventTypeArg._external_drive_backup_status_changed_validator, 'account_capture_change_availability': EventTypeArg._account_capture_change_availability_validator, 'account_capture_migrate_account': EventTypeArg._account_capture_migrate_account_validator, 'account_capture_notification_emails_sent': EventTypeArg._account_capture_notification_emails_sent_validator, 'account_capture_relinquish_account': EventTypeArg._account_capture_relinquish_account_validator, 'disabled_domain_invites': EventTypeArg._disabled_domain_invites_validator, 'domain_invites_approve_request_to_join_team': EventTypeArg._domain_invites_approve_request_to_join_team_validator, 'domain_invites_decline_request_to_join_team': EventTypeArg._domain_invites_decline_request_to_join_team_validator, 'domain_invites_email_existing_users': EventTypeArg._domain_invites_email_existing_users_validator, 'domain_invites_request_to_join_team': EventTypeArg._domain_invites_request_to_join_team_validator, 'domain_invites_set_invite_new_user_pref_to_no': EventTypeArg._domain_invites_set_invite_new_user_pref_to_no_validator, 'domain_invites_set_invite_new_user_pref_to_yes': EventTypeArg._domain_invites_set_invite_new_user_pref_to_yes_validator, 'domain_verification_add_domain_fail': EventTypeArg._domain_verification_add_domain_fail_validator, 'domain_verification_add_domain_success': EventTypeArg._domain_verification_add_domain_success_validator, 'domain_verification_remove_domain': EventTypeArg._domain_verification_remove_domain_validator, 'enabled_domain_invites': EventTypeArg._enabled_domain_invites_validator, 'team_encryption_key_cancel_key_deletion': EventTypeArg._team_encryption_key_cancel_key_deletion_validator, 'team_encryption_key_create_key': EventTypeArg._team_encryption_key_create_key_validator, 'team_encryption_key_delete_key': EventTypeArg._team_encryption_key_delete_key_validator, 'team_encryption_key_disable_key': EventTypeArg._team_encryption_key_disable_key_validator, 'team_encryption_key_enable_key': EventTypeArg._team_encryption_key_enable_key_validator, 'team_encryption_key_rotate_key': EventTypeArg._team_encryption_key_rotate_key_validator, 'team_encryption_key_schedule_key_deletion': EventTypeArg._team_encryption_key_schedule_key_deletion_validator, 'apply_naming_convention': EventTypeArg._apply_naming_convention_validator, 'create_folder': EventTypeArg._create_folder_validator, 'file_add': EventTypeArg._file_add_validator, 'file_add_from_automation': EventTypeArg._file_add_from_automation_validator, 'file_copy': EventTypeArg._file_copy_validator, 'file_delete': EventTypeArg._file_delete_validator, 'file_download': EventTypeArg._file_download_validator, 'file_edit': EventTypeArg._file_edit_validator, 'file_get_copy_reference': EventTypeArg._file_get_copy_reference_validator, 'file_locking_lock_status_changed': EventTypeArg._file_locking_lock_status_changed_validator, 'file_move': EventTypeArg._file_move_validator, 'file_permanently_delete': EventTypeArg._file_permanently_delete_validator, 'file_preview': EventTypeArg._file_preview_validator, 'file_rename': EventTypeArg._file_rename_validator, 'file_restore': EventTypeArg._file_restore_validator, 'file_revert': EventTypeArg._file_revert_validator, 'file_rollback_changes': EventTypeArg._file_rollback_changes_validator, 'file_save_copy_reference': EventTypeArg._file_save_copy_reference_validator, 'folder_overview_description_changed': EventTypeArg._folder_overview_description_changed_validator, 'folder_overview_item_pinned': EventTypeArg._folder_overview_item_pinned_validator, 'folder_overview_item_unpinned': EventTypeArg._folder_overview_item_unpinned_validator, 'object_label_added': EventTypeArg._object_label_added_validator, 'object_label_removed': EventTypeArg._object_label_removed_validator, 'object_label_updated_value': EventTypeArg._object_label_updated_value_validator, 'organize_folder_with_tidy': EventTypeArg._organize_folder_with_tidy_validator, 'replay_file_delete': EventTypeArg._replay_file_delete_validator, 'rewind_folder': EventTypeArg._rewind_folder_validator, 'undo_naming_convention': EventTypeArg._undo_naming_convention_validator, 'undo_organize_folder_with_tidy': EventTypeArg._undo_organize_folder_with_tidy_validator, 'user_tags_added': EventTypeArg._user_tags_added_validator, 'user_tags_removed': EventTypeArg._user_tags_removed_validator, 'email_ingest_receive_file': EventTypeArg._email_ingest_receive_file_validator, 'file_request_change': EventTypeArg._file_request_change_validator, 'file_request_close': EventTypeArg._file_request_close_validator, 'file_request_create': EventTypeArg._file_request_create_validator, 'file_request_delete': EventTypeArg._file_request_delete_validator, 'file_request_receive_file': EventTypeArg._file_request_receive_file_validator, 'group_add_external_id': EventTypeArg._group_add_external_id_validator, 'group_add_member': EventTypeArg._group_add_member_validator, 'group_change_external_id': EventTypeArg._group_change_external_id_validator, 'group_change_management_type': EventTypeArg._group_change_management_type_validator, 'group_change_member_role': EventTypeArg._group_change_member_role_validator, 'group_create': EventTypeArg._group_create_validator, 'group_delete': EventTypeArg._group_delete_validator, 'group_description_updated': EventTypeArg._group_description_updated_validator, 'group_join_policy_updated': EventTypeArg._group_join_policy_updated_validator, 'group_moved': EventTypeArg._group_moved_validator, 'group_remove_external_id': EventTypeArg._group_remove_external_id_validator, 'group_remove_member': EventTypeArg._group_remove_member_validator, 'group_rename': EventTypeArg._group_rename_validator, 'account_lock_or_unlocked': EventTypeArg._account_lock_or_unlocked_validator, 'emm_error': EventTypeArg._emm_error_validator, 'guest_admin_signed_in_via_trusted_teams': EventTypeArg._guest_admin_signed_in_via_trusted_teams_validator, 'guest_admin_signed_out_via_trusted_teams': EventTypeArg._guest_admin_signed_out_via_trusted_teams_validator, 'login_fail': EventTypeArg._login_fail_validator, 'login_success': EventTypeArg._login_success_validator, 'logout': EventTypeArg._logout_validator, 'reseller_support_session_end': EventTypeArg._reseller_support_session_end_validator, 'reseller_support_session_start': EventTypeArg._reseller_support_session_start_validator, 'sign_in_as_session_end': EventTypeArg._sign_in_as_session_end_validator, 'sign_in_as_session_start': EventTypeArg._sign_in_as_session_start_validator, 'sso_error': EventTypeArg._sso_error_validator, 'backup_admin_invitation_sent': EventTypeArg._backup_admin_invitation_sent_validator, 'backup_invitation_opened': EventTypeArg._backup_invitation_opened_validator, 'create_team_invite_link': EventTypeArg._create_team_invite_link_validator, 'delete_team_invite_link': EventTypeArg._delete_team_invite_link_validator, 'member_add_external_id': EventTypeArg._member_add_external_id_validator, 'member_add_name': EventTypeArg._member_add_name_validator, 'member_change_admin_role': EventTypeArg._member_change_admin_role_validator, 'member_change_email': EventTypeArg._member_change_email_validator, 'member_change_external_id': EventTypeArg._member_change_external_id_validator, 'member_change_membership_type': EventTypeArg._member_change_membership_type_validator, 'member_change_name': EventTypeArg._member_change_name_validator, 'member_change_reseller_role': EventTypeArg._member_change_reseller_role_validator, 'member_change_status': EventTypeArg._member_change_status_validator, 'member_delete_manual_contacts': EventTypeArg._member_delete_manual_contacts_validator, 'member_delete_profile_photo': EventTypeArg._member_delete_profile_photo_validator, 'member_permanently_delete_account_contents': EventTypeArg._member_permanently_delete_account_contents_validator, 'member_remove_external_id': EventTypeArg._member_remove_external_id_validator, 'member_set_profile_photo': EventTypeArg._member_set_profile_photo_validator, 'member_space_limits_add_custom_quota': EventTypeArg._member_space_limits_add_custom_quota_validator, 'member_space_limits_change_custom_quota': EventTypeArg._member_space_limits_change_custom_quota_validator, 'member_space_limits_change_status': EventTypeArg._member_space_limits_change_status_validator, 'member_space_limits_remove_custom_quota': EventTypeArg._member_space_limits_remove_custom_quota_validator, 'member_suggest': EventTypeArg._member_suggest_validator, 'member_transfer_account_contents': EventTypeArg._member_transfer_account_contents_validator, 'pending_secondary_email_added': EventTypeArg._pending_secondary_email_added_validator, 'secondary_email_deleted': EventTypeArg._secondary_email_deleted_validator, 'secondary_email_verified': EventTypeArg._secondary_email_verified_validator, 'secondary_mails_policy_changed': EventTypeArg._secondary_mails_policy_changed_validator, 'binder_add_page': EventTypeArg._binder_add_page_validator, 'binder_add_section': EventTypeArg._binder_add_section_validator, 'binder_remove_page': EventTypeArg._binder_remove_page_validator, 'binder_remove_section': EventTypeArg._binder_remove_section_validator, 'binder_rename_page': EventTypeArg._binder_rename_page_validator, 'binder_rename_section': EventTypeArg._binder_rename_section_validator, 'binder_reorder_page': EventTypeArg._binder_reorder_page_validator, 'binder_reorder_section': EventTypeArg._binder_reorder_section_validator, 'paper_content_add_member': EventTypeArg._paper_content_add_member_validator, 'paper_content_add_to_folder': EventTypeArg._paper_content_add_to_folder_validator, 'paper_content_archive': EventTypeArg._paper_content_archive_validator, 'paper_content_create': EventTypeArg._paper_content_create_validator, 'paper_content_permanently_delete': EventTypeArg._paper_content_permanently_delete_validator, 'paper_content_remove_from_folder': EventTypeArg._paper_content_remove_from_folder_validator, 'paper_content_remove_member': EventTypeArg._paper_content_remove_member_validator, 'paper_content_rename': EventTypeArg._paper_content_rename_validator, 'paper_content_restore': EventTypeArg._paper_content_restore_validator, 'paper_doc_add_comment': EventTypeArg._paper_doc_add_comment_validator, 'paper_doc_change_member_role': EventTypeArg._paper_doc_change_member_role_validator, 'paper_doc_change_sharing_policy': EventTypeArg._paper_doc_change_sharing_policy_validator, 'paper_doc_change_subscription': EventTypeArg._paper_doc_change_subscription_validator, 'paper_doc_deleted': EventTypeArg._paper_doc_deleted_validator, 'paper_doc_delete_comment': EventTypeArg._paper_doc_delete_comment_validator, 'paper_doc_download': EventTypeArg._paper_doc_download_validator, 'paper_doc_edit': EventTypeArg._paper_doc_edit_validator, 'paper_doc_edit_comment': EventTypeArg._paper_doc_edit_comment_validator, 'paper_doc_followed': EventTypeArg._paper_doc_followed_validator, 'paper_doc_mention': EventTypeArg._paper_doc_mention_validator, 'paper_doc_ownership_changed': EventTypeArg._paper_doc_ownership_changed_validator, 'paper_doc_request_access': EventTypeArg._paper_doc_request_access_validator, 'paper_doc_resolve_comment': EventTypeArg._paper_doc_resolve_comment_validator, 'paper_doc_revert': EventTypeArg._paper_doc_revert_validator, 'paper_doc_slack_share': EventTypeArg._paper_doc_slack_share_validator, 'paper_doc_team_invite': EventTypeArg._paper_doc_team_invite_validator, 'paper_doc_trashed': EventTypeArg._paper_doc_trashed_validator, 'paper_doc_unresolve_comment': EventTypeArg._paper_doc_unresolve_comment_validator, 'paper_doc_untrashed': EventTypeArg._paper_doc_untrashed_validator, 'paper_doc_view': EventTypeArg._paper_doc_view_validator, 'paper_external_view_allow': EventTypeArg._paper_external_view_allow_validator, 'paper_external_view_default_team': EventTypeArg._paper_external_view_default_team_validator, 'paper_external_view_forbid': EventTypeArg._paper_external_view_forbid_validator, 'paper_folder_change_subscription': EventTypeArg._paper_folder_change_subscription_validator, 'paper_folder_deleted': EventTypeArg._paper_folder_deleted_validator, 'paper_folder_followed': EventTypeArg._paper_folder_followed_validator, 'paper_folder_team_invite': EventTypeArg._paper_folder_team_invite_validator, 'paper_published_link_change_permission': EventTypeArg._paper_published_link_change_permission_validator, 'paper_published_link_create': EventTypeArg._paper_published_link_create_validator, 'paper_published_link_disabled': EventTypeArg._paper_published_link_disabled_validator, 'paper_published_link_view': EventTypeArg._paper_published_link_view_validator, 'password_change': EventTypeArg._password_change_validator, 'password_reset': EventTypeArg._password_reset_validator, 'password_reset_all': EventTypeArg._password_reset_all_validator, 'classification_create_report': EventTypeArg._classification_create_report_validator, 'classification_create_report_fail': EventTypeArg._classification_create_report_fail_validator, 'emm_create_exceptions_report': EventTypeArg._emm_create_exceptions_report_validator, 'emm_create_usage_report': EventTypeArg._emm_create_usage_report_validator, 'export_members_report': EventTypeArg._export_members_report_validator, 'export_members_report_fail': EventTypeArg._export_members_report_fail_validator, 'external_sharing_create_report': EventTypeArg._external_sharing_create_report_validator, 'external_sharing_report_failed': EventTypeArg._external_sharing_report_failed_validator, 'no_expiration_link_gen_create_report': EventTypeArg._no_expiration_link_gen_create_report_validator, 'no_expiration_link_gen_report_failed': EventTypeArg._no_expiration_link_gen_report_failed_validator, 'no_password_link_gen_create_report': EventTypeArg._no_password_link_gen_create_report_validator, 'no_password_link_gen_report_failed': EventTypeArg._no_password_link_gen_report_failed_validator, 'no_password_link_view_create_report': EventTypeArg._no_password_link_view_create_report_validator, 'no_password_link_view_report_failed': EventTypeArg._no_password_link_view_report_failed_validator, 'outdated_link_view_create_report': EventTypeArg._outdated_link_view_create_report_validator, 'outdated_link_view_report_failed': EventTypeArg._outdated_link_view_report_failed_validator, 'paper_admin_export_start': EventTypeArg._paper_admin_export_start_validator, 'ransomware_alert_create_report': EventTypeArg._ransomware_alert_create_report_validator, 'ransomware_alert_create_report_failed': EventTypeArg._ransomware_alert_create_report_failed_validator, 'smart_sync_create_admin_privilege_report': EventTypeArg._smart_sync_create_admin_privilege_report_validator, 'team_activity_create_report': EventTypeArg._team_activity_create_report_validator, 'team_activity_create_report_fail': EventTypeArg._team_activity_create_report_fail_validator, 'collection_share': EventTypeArg._collection_share_validator, 'file_transfers_file_add': EventTypeArg._file_transfers_file_add_validator, 'file_transfers_transfer_delete': EventTypeArg._file_transfers_transfer_delete_validator, 'file_transfers_transfer_download': EventTypeArg._file_transfers_transfer_download_validator, 'file_transfers_transfer_send': EventTypeArg._file_transfers_transfer_send_validator, 'file_transfers_transfer_view': EventTypeArg._file_transfers_transfer_view_validator, 'note_acl_invite_only': EventTypeArg._note_acl_invite_only_validator, 'note_acl_link': EventTypeArg._note_acl_link_validator, 'note_acl_team_link': EventTypeArg._note_acl_team_link_validator, 'note_shared': EventTypeArg._note_shared_validator, 'note_share_receive': EventTypeArg._note_share_receive_validator, 'open_note_shared': EventTypeArg._open_note_shared_validator, 'replay_file_shared_link_created': EventTypeArg._replay_file_shared_link_created_validator, 'replay_file_shared_link_modified': EventTypeArg._replay_file_shared_link_modified_validator, 'replay_project_team_add': EventTypeArg._replay_project_team_add_validator, 'replay_project_team_delete': EventTypeArg._replay_project_team_delete_validator, 'sf_add_group': EventTypeArg._sf_add_group_validator, 'sf_allow_non_members_to_view_shared_links': EventTypeArg._sf_allow_non_members_to_view_shared_links_validator, 'sf_external_invite_warn': EventTypeArg._sf_external_invite_warn_validator, 'sf_fb_invite': EventTypeArg._sf_fb_invite_validator, 'sf_fb_invite_change_role': EventTypeArg._sf_fb_invite_change_role_validator, 'sf_fb_uninvite': EventTypeArg._sf_fb_uninvite_validator, 'sf_invite_group': EventTypeArg._sf_invite_group_validator, 'sf_team_grant_access': EventTypeArg._sf_team_grant_access_validator, 'sf_team_invite': EventTypeArg._sf_team_invite_validator, 'sf_team_invite_change_role': EventTypeArg._sf_team_invite_change_role_validator, 'sf_team_join': EventTypeArg._sf_team_join_validator, 'sf_team_join_from_oob_link': EventTypeArg._sf_team_join_from_oob_link_validator, 'sf_team_uninvite': EventTypeArg._sf_team_uninvite_validator, 'shared_content_add_invitees': EventTypeArg._shared_content_add_invitees_validator, 'shared_content_add_link_expiry': EventTypeArg._shared_content_add_link_expiry_validator, 'shared_content_add_link_password': EventTypeArg._shared_content_add_link_password_validator, 'shared_content_add_member': EventTypeArg._shared_content_add_member_validator, 'shared_content_change_downloads_policy': EventTypeArg._shared_content_change_downloads_policy_validator, 'shared_content_change_invitee_role': EventTypeArg._shared_content_change_invitee_role_validator, 'shared_content_change_link_audience': EventTypeArg._shared_content_change_link_audience_validator, 'shared_content_change_link_expiry': EventTypeArg._shared_content_change_link_expiry_validator, 'shared_content_change_link_password': EventTypeArg._shared_content_change_link_password_validator, 'shared_content_change_member_role': EventTypeArg._shared_content_change_member_role_validator, 'shared_content_change_viewer_info_policy': EventTypeArg._shared_content_change_viewer_info_policy_validator, 'shared_content_claim_invitation': EventTypeArg._shared_content_claim_invitation_validator, 'shared_content_copy': EventTypeArg._shared_content_copy_validator, 'shared_content_download': EventTypeArg._shared_content_download_validator, 'shared_content_relinquish_membership': EventTypeArg._shared_content_relinquish_membership_validator, 'shared_content_remove_invitees': EventTypeArg._shared_content_remove_invitees_validator, 'shared_content_remove_link_expiry': EventTypeArg._shared_content_remove_link_expiry_validator, 'shared_content_remove_link_password': EventTypeArg._shared_content_remove_link_password_validator, 'shared_content_remove_member': EventTypeArg._shared_content_remove_member_validator, 'shared_content_request_access': EventTypeArg._shared_content_request_access_validator, 'shared_content_restore_invitees': EventTypeArg._shared_content_restore_invitees_validator, 'shared_content_restore_member': EventTypeArg._shared_content_restore_member_validator, 'shared_content_unshare': EventTypeArg._shared_content_unshare_validator, 'shared_content_view': EventTypeArg._shared_content_view_validator, 'shared_folder_change_link_policy': EventTypeArg._shared_folder_change_link_policy_validator, 'shared_folder_change_members_inheritance_policy': EventTypeArg._shared_folder_change_members_inheritance_policy_validator, 'shared_folder_change_members_management_policy': EventTypeArg._shared_folder_change_members_management_policy_validator, 'shared_folder_change_members_policy': EventTypeArg._shared_folder_change_members_policy_validator, 'shared_folder_create': EventTypeArg._shared_folder_create_validator, 'shared_folder_decline_invitation': EventTypeArg._shared_folder_decline_invitation_validator, 'shared_folder_mount': EventTypeArg._shared_folder_mount_validator, 'shared_folder_nest': EventTypeArg._shared_folder_nest_validator, 'shared_folder_transfer_ownership': EventTypeArg._shared_folder_transfer_ownership_validator, 'shared_folder_unmount': EventTypeArg._shared_folder_unmount_validator, 'shared_link_add_expiry': EventTypeArg._shared_link_add_expiry_validator, 'shared_link_change_expiry': EventTypeArg._shared_link_change_expiry_validator, 'shared_link_change_visibility': EventTypeArg._shared_link_change_visibility_validator, 'shared_link_copy': EventTypeArg._shared_link_copy_validator, 'shared_link_create': EventTypeArg._shared_link_create_validator, 'shared_link_disable': EventTypeArg._shared_link_disable_validator, 'shared_link_download': EventTypeArg._shared_link_download_validator, 'shared_link_remove_expiry': EventTypeArg._shared_link_remove_expiry_validator, 'shared_link_settings_add_expiration': EventTypeArg._shared_link_settings_add_expiration_validator, 'shared_link_settings_add_password': EventTypeArg._shared_link_settings_add_password_validator, 'shared_link_settings_allow_download_disabled': EventTypeArg._shared_link_settings_allow_download_disabled_validator, 'shared_link_settings_allow_download_enabled': EventTypeArg._shared_link_settings_allow_download_enabled_validator, 'shared_link_settings_change_audience': EventTypeArg._shared_link_settings_change_audience_validator, 'shared_link_settings_change_expiration': EventTypeArg._shared_link_settings_change_expiration_validator, 'shared_link_settings_change_password': EventTypeArg._shared_link_settings_change_password_validator, 'shared_link_settings_remove_expiration': EventTypeArg._shared_link_settings_remove_expiration_validator, 'shared_link_settings_remove_password': EventTypeArg._shared_link_settings_remove_password_validator, 'shared_link_share': EventTypeArg._shared_link_share_validator, 'shared_link_view': EventTypeArg._shared_link_view_validator, 'shared_note_opened': EventTypeArg._shared_note_opened_validator, 'shmodel_disable_downloads': EventTypeArg._shmodel_disable_downloads_validator, 'shmodel_enable_downloads': EventTypeArg._shmodel_enable_downloads_validator, 'shmodel_group_share': EventTypeArg._shmodel_group_share_validator, 'showcase_access_granted': EventTypeArg._showcase_access_granted_validator, 'showcase_add_member': EventTypeArg._showcase_add_member_validator, 'showcase_archived': EventTypeArg._showcase_archived_validator, 'showcase_created': EventTypeArg._showcase_created_validator, 'showcase_delete_comment': EventTypeArg._showcase_delete_comment_validator, 'showcase_edited': EventTypeArg._showcase_edited_validator, 'showcase_edit_comment': EventTypeArg._showcase_edit_comment_validator, 'showcase_file_added': EventTypeArg._showcase_file_added_validator, 'showcase_file_download': EventTypeArg._showcase_file_download_validator, 'showcase_file_removed': EventTypeArg._showcase_file_removed_validator, 'showcase_file_view': EventTypeArg._showcase_file_view_validator, 'showcase_permanently_deleted': EventTypeArg._showcase_permanently_deleted_validator, 'showcase_post_comment': EventTypeArg._showcase_post_comment_validator, 'showcase_remove_member': EventTypeArg._showcase_remove_member_validator, 'showcase_renamed': EventTypeArg._showcase_renamed_validator, 'showcase_request_access': EventTypeArg._showcase_request_access_validator, 'showcase_resolve_comment': EventTypeArg._showcase_resolve_comment_validator, 'showcase_restored': EventTypeArg._showcase_restored_validator, 'showcase_trashed': EventTypeArg._showcase_trashed_validator, 'showcase_trashed_deprecated': EventTypeArg._showcase_trashed_deprecated_validator, 'showcase_unresolve_comment': EventTypeArg._showcase_unresolve_comment_validator, 'showcase_untrashed': EventTypeArg._showcase_untrashed_validator, 'showcase_untrashed_deprecated': EventTypeArg._showcase_untrashed_deprecated_validator, 'showcase_view': EventTypeArg._showcase_view_validator, 'sso_add_cert': EventTypeArg._sso_add_cert_validator, 'sso_add_login_url': EventTypeArg._sso_add_login_url_validator, 'sso_add_logout_url': EventTypeArg._sso_add_logout_url_validator, 'sso_change_cert': EventTypeArg._sso_change_cert_validator, 'sso_change_login_url': EventTypeArg._sso_change_login_url_validator, 'sso_change_logout_url': EventTypeArg._sso_change_logout_url_validator, 'sso_change_saml_identity_mode': EventTypeArg._sso_change_saml_identity_mode_validator, 'sso_remove_cert': EventTypeArg._sso_remove_cert_validator, 'sso_remove_login_url': EventTypeArg._sso_remove_login_url_validator, 'sso_remove_logout_url': EventTypeArg._sso_remove_logout_url_validator, 'team_folder_change_status': EventTypeArg._team_folder_change_status_validator, 'team_folder_create': EventTypeArg._team_folder_create_validator, 'team_folder_downgrade': EventTypeArg._team_folder_downgrade_validator, 'team_folder_permanently_delete': EventTypeArg._team_folder_permanently_delete_validator, 'team_folder_rename': EventTypeArg._team_folder_rename_validator, 'team_selective_sync_settings_changed': EventTypeArg._team_selective_sync_settings_changed_validator, 'account_capture_change_policy': EventTypeArg._account_capture_change_policy_validator, 'admin_email_reminders_changed': EventTypeArg._admin_email_reminders_changed_validator, 'allow_download_disabled': EventTypeArg._allow_download_disabled_validator, 'allow_download_enabled': EventTypeArg._allow_download_enabled_validator, 'app_permissions_changed': EventTypeArg._app_permissions_changed_validator, 'camera_uploads_policy_changed': EventTypeArg._camera_uploads_policy_changed_validator, 'capture_transcript_policy_changed': EventTypeArg._capture_transcript_policy_changed_validator, 'classification_change_policy': EventTypeArg._classification_change_policy_validator, 'computer_backup_policy_changed': EventTypeArg._computer_backup_policy_changed_validator, 'content_administration_policy_changed': EventTypeArg._content_administration_policy_changed_validator, 'data_placement_restriction_change_policy': EventTypeArg._data_placement_restriction_change_policy_validator, 'data_placement_restriction_satisfy_policy': EventTypeArg._data_placement_restriction_satisfy_policy_validator, 'device_approvals_add_exception': EventTypeArg._device_approvals_add_exception_validator, 'device_approvals_change_desktop_policy': EventTypeArg._device_approvals_change_desktop_policy_validator, 'device_approvals_change_mobile_policy': EventTypeArg._device_approvals_change_mobile_policy_validator, 'device_approvals_change_overage_action': EventTypeArg._device_approvals_change_overage_action_validator, 'device_approvals_change_unlink_action': EventTypeArg._device_approvals_change_unlink_action_validator, 'device_approvals_remove_exception': EventTypeArg._device_approvals_remove_exception_validator, 'directory_restrictions_add_members': EventTypeArg._directory_restrictions_add_members_validator, 'directory_restrictions_remove_members': EventTypeArg._directory_restrictions_remove_members_validator, 'dropbox_passwords_policy_changed': EventTypeArg._dropbox_passwords_policy_changed_validator, 'email_ingest_policy_changed': EventTypeArg._email_ingest_policy_changed_validator, 'emm_add_exception': EventTypeArg._emm_add_exception_validator, 'emm_change_policy': EventTypeArg._emm_change_policy_validator, 'emm_remove_exception': EventTypeArg._emm_remove_exception_validator, 'extended_version_history_change_policy': EventTypeArg._extended_version_history_change_policy_validator, 'external_drive_backup_policy_changed': EventTypeArg._external_drive_backup_policy_changed_validator, 'file_comments_change_policy': EventTypeArg._file_comments_change_policy_validator, 'file_locking_policy_changed': EventTypeArg._file_locking_policy_changed_validator, 'file_provider_migration_policy_changed': EventTypeArg._file_provider_migration_policy_changed_validator, 'file_requests_change_policy': EventTypeArg._file_requests_change_policy_validator, 'file_requests_emails_enabled': EventTypeArg._file_requests_emails_enabled_validator, 'file_requests_emails_restricted_to_team_only': EventTypeArg._file_requests_emails_restricted_to_team_only_validator, 'file_transfers_policy_changed': EventTypeArg._file_transfers_policy_changed_validator, 'folder_link_restriction_policy_changed': EventTypeArg._folder_link_restriction_policy_changed_validator, 'google_sso_change_policy': EventTypeArg._google_sso_change_policy_validator, 'group_user_management_change_policy': EventTypeArg._group_user_management_change_policy_validator, 'integration_policy_changed': EventTypeArg._integration_policy_changed_validator, 'invite_acceptance_email_policy_changed': EventTypeArg._invite_acceptance_email_policy_changed_validator, 'member_requests_change_policy': EventTypeArg._member_requests_change_policy_validator, 'member_send_invite_policy_changed': EventTypeArg._member_send_invite_policy_changed_validator, 'member_space_limits_add_exception': EventTypeArg._member_space_limits_add_exception_validator, 'member_space_limits_change_caps_type_policy': EventTypeArg._member_space_limits_change_caps_type_policy_validator, 'member_space_limits_change_policy': EventTypeArg._member_space_limits_change_policy_validator, 'member_space_limits_remove_exception': EventTypeArg._member_space_limits_remove_exception_validator, 'member_suggestions_change_policy': EventTypeArg._member_suggestions_change_policy_validator, 'microsoft_office_addin_change_policy': EventTypeArg._microsoft_office_addin_change_policy_validator, 'network_control_change_policy': EventTypeArg._network_control_change_policy_validator, 'paper_change_deployment_policy': EventTypeArg._paper_change_deployment_policy_validator, 'paper_change_member_link_policy': EventTypeArg._paper_change_member_link_policy_validator, 'paper_change_member_policy': EventTypeArg._paper_change_member_policy_validator, 'paper_change_policy': EventTypeArg._paper_change_policy_validator, 'paper_default_folder_policy_changed': EventTypeArg._paper_default_folder_policy_changed_validator, 'paper_desktop_policy_changed': EventTypeArg._paper_desktop_policy_changed_validator, 'paper_enabled_users_group_addition': EventTypeArg._paper_enabled_users_group_addition_validator, 'paper_enabled_users_group_removal': EventTypeArg._paper_enabled_users_group_removal_validator, 'password_strength_requirements_change_policy': EventTypeArg._password_strength_requirements_change_policy_validator, 'permanent_delete_change_policy': EventTypeArg._permanent_delete_change_policy_validator, 'reseller_support_change_policy': EventTypeArg._reseller_support_change_policy_validator, 'rewind_policy_changed': EventTypeArg._rewind_policy_changed_validator, 'send_for_signature_policy_changed': EventTypeArg._send_for_signature_policy_changed_validator, 'sharing_change_folder_join_policy': EventTypeArg._sharing_change_folder_join_policy_validator, 'sharing_change_link_allow_change_expiration_policy': EventTypeArg._sharing_change_link_allow_change_expiration_policy_validator, 'sharing_change_link_default_expiration_policy': EventTypeArg._sharing_change_link_default_expiration_policy_validator, 'sharing_change_link_enforce_password_policy': EventTypeArg._sharing_change_link_enforce_password_policy_validator, 'sharing_change_link_policy': EventTypeArg._sharing_change_link_policy_validator, 'sharing_change_member_policy': EventTypeArg._sharing_change_member_policy_validator, 'showcase_change_download_policy': EventTypeArg._showcase_change_download_policy_validator, 'showcase_change_enabled_policy': EventTypeArg._showcase_change_enabled_policy_validator, 'showcase_change_external_sharing_policy': EventTypeArg._showcase_change_external_sharing_policy_validator, 'smarter_smart_sync_policy_changed': EventTypeArg._smarter_smart_sync_policy_changed_validator, 'smart_sync_change_policy': EventTypeArg._smart_sync_change_policy_validator, 'smart_sync_not_opt_out': EventTypeArg._smart_sync_not_opt_out_validator, 'smart_sync_opt_out': EventTypeArg._smart_sync_opt_out_validator, 'sso_change_policy': EventTypeArg._sso_change_policy_validator, 'team_branding_policy_changed': EventTypeArg._team_branding_policy_changed_validator, 'team_extensions_policy_changed': EventTypeArg._team_extensions_policy_changed_validator, 'team_selective_sync_policy_changed': EventTypeArg._team_selective_sync_policy_changed_validator, 'team_sharing_whitelist_subjects_changed': EventTypeArg._team_sharing_whitelist_subjects_changed_validator, 'tfa_add_exception': EventTypeArg._tfa_add_exception_validator, 'tfa_change_policy': EventTypeArg._tfa_change_policy_validator, 'tfa_remove_exception': EventTypeArg._tfa_remove_exception_validator, 'two_account_change_policy': EventTypeArg._two_account_change_policy_validator, 'viewer_info_policy_changed': EventTypeArg._viewer_info_policy_changed_validator, 'watermarking_policy_changed': EventTypeArg._watermarking_policy_changed_validator, 'web_sessions_change_active_session_limit': EventTypeArg._web_sessions_change_active_session_limit_validator, 'web_sessions_change_fixed_length_policy': EventTypeArg._web_sessions_change_fixed_length_policy_validator, 'web_sessions_change_idle_length_policy': EventTypeArg._web_sessions_change_idle_length_policy_validator, 'data_residency_migration_request_successful': EventTypeArg._data_residency_migration_request_successful_validator, 'data_residency_migration_request_unsuccessful': EventTypeArg._data_residency_migration_request_unsuccessful_validator, 'team_merge_from': EventTypeArg._team_merge_from_validator, 'team_merge_to': EventTypeArg._team_merge_to_validator, 'team_profile_add_background': EventTypeArg._team_profile_add_background_validator, 'team_profile_add_logo': EventTypeArg._team_profile_add_logo_validator, 'team_profile_change_background': EventTypeArg._team_profile_change_background_validator, 'team_profile_change_default_language': EventTypeArg._team_profile_change_default_language_validator, 'team_profile_change_logo': EventTypeArg._team_profile_change_logo_validator, 'team_profile_change_name': EventTypeArg._team_profile_change_name_validator, 'team_profile_remove_background': EventTypeArg._team_profile_remove_background_validator, 'team_profile_remove_logo': EventTypeArg._team_profile_remove_logo_validator, 'tfa_add_backup_phone': EventTypeArg._tfa_add_backup_phone_validator, 'tfa_add_security_key': EventTypeArg._tfa_add_security_key_validator, 'tfa_change_backup_phone': EventTypeArg._tfa_change_backup_phone_validator, 'tfa_change_status': EventTypeArg._tfa_change_status_validator, 'tfa_remove_backup_phone': EventTypeArg._tfa_remove_backup_phone_validator, 'tfa_remove_security_key': EventTypeArg._tfa_remove_security_key_validator, 'tfa_reset': EventTypeArg._tfa_reset_validator, 'changed_enterprise_admin_role': EventTypeArg._changed_enterprise_admin_role_validator, 'changed_enterprise_connected_team_status': EventTypeArg._changed_enterprise_connected_team_status_validator, 'ended_enterprise_admin_session': EventTypeArg._ended_enterprise_admin_session_validator, 'ended_enterprise_admin_session_deprecated': EventTypeArg._ended_enterprise_admin_session_deprecated_validator, 'enterprise_settings_locking': EventTypeArg._enterprise_settings_locking_validator, 'guest_admin_change_status': EventTypeArg._guest_admin_change_status_validator, 'started_enterprise_admin_session': EventTypeArg._started_enterprise_admin_session_validator, 'team_merge_request_accepted': EventTypeArg._team_merge_request_accepted_validator, 'team_merge_request_accepted_shown_to_primary_team': EventTypeArg._team_merge_request_accepted_shown_to_primary_team_validator, 'team_merge_request_accepted_shown_to_secondary_team': EventTypeArg._team_merge_request_accepted_shown_to_secondary_team_validator, 'team_merge_request_auto_canceled': EventTypeArg._team_merge_request_auto_canceled_validator, 'team_merge_request_canceled': EventTypeArg._team_merge_request_canceled_validator, 'team_merge_request_canceled_shown_to_primary_team': EventTypeArg._team_merge_request_canceled_shown_to_primary_team_validator, 'team_merge_request_canceled_shown_to_secondary_team': EventTypeArg._team_merge_request_canceled_shown_to_secondary_team_validator, 'team_merge_request_expired': EventTypeArg._team_merge_request_expired_validator, 'team_merge_request_expired_shown_to_primary_team': EventTypeArg._team_merge_request_expired_shown_to_primary_team_validator, 'team_merge_request_expired_shown_to_secondary_team': EventTypeArg._team_merge_request_expired_shown_to_secondary_team_validator, 'team_merge_request_rejected_shown_to_primary_team': EventTypeArg._team_merge_request_rejected_shown_to_primary_team_validator, 'team_merge_request_rejected_shown_to_secondary_team': EventTypeArg._team_merge_request_rejected_shown_to_secondary_team_validator, 'team_merge_request_reminder': EventTypeArg._team_merge_request_reminder_validator, 'team_merge_request_reminder_shown_to_primary_team': EventTypeArg._team_merge_request_reminder_shown_to_primary_team_validator, 'team_merge_request_reminder_shown_to_secondary_team': EventTypeArg._team_merge_request_reminder_shown_to_secondary_team_validator, 'team_merge_request_revoked': EventTypeArg._team_merge_request_revoked_validator, 'team_merge_request_sent_shown_to_primary_team': EventTypeArg._team_merge_request_sent_shown_to_primary_team_validator, 'team_merge_request_sent_shown_to_secondary_team': EventTypeArg._team_merge_request_sent_shown_to_secondary_team_validator, 'other': EventTypeArg._other_validator, } EventTypeArg.admin_alerting_alert_state_changed = EventTypeArg('admin_alerting_alert_state_changed') EventTypeArg.admin_alerting_changed_alert_config = EventTypeArg('admin_alerting_changed_alert_config') EventTypeArg.admin_alerting_triggered_alert = EventTypeArg('admin_alerting_triggered_alert') EventTypeArg.ransomware_restore_process_completed = EventTypeArg('ransomware_restore_process_completed') EventTypeArg.ransomware_restore_process_started = EventTypeArg('ransomware_restore_process_started') EventTypeArg.app_blocked_by_permissions = EventTypeArg('app_blocked_by_permissions') EventTypeArg.app_link_team = EventTypeArg('app_link_team') EventTypeArg.app_link_user = EventTypeArg('app_link_user') EventTypeArg.app_unlink_team = EventTypeArg('app_unlink_team') EventTypeArg.app_unlink_user = EventTypeArg('app_unlink_user') EventTypeArg.integration_connected = EventTypeArg('integration_connected') EventTypeArg.integration_disconnected = EventTypeArg('integration_disconnected') EventTypeArg.file_add_comment = EventTypeArg('file_add_comment') EventTypeArg.file_change_comment_subscription = EventTypeArg('file_change_comment_subscription') EventTypeArg.file_delete_comment = EventTypeArg('file_delete_comment') EventTypeArg.file_edit_comment = EventTypeArg('file_edit_comment') EventTypeArg.file_like_comment = EventTypeArg('file_like_comment') EventTypeArg.file_resolve_comment = EventTypeArg('file_resolve_comment') EventTypeArg.file_unlike_comment = EventTypeArg('file_unlike_comment') EventTypeArg.file_unresolve_comment = EventTypeArg('file_unresolve_comment') EventTypeArg.governance_policy_add_folders = EventTypeArg('governance_policy_add_folders') EventTypeArg.governance_policy_add_folder_failed = EventTypeArg('governance_policy_add_folder_failed') EventTypeArg.governance_policy_content_disposed = EventTypeArg('governance_policy_content_disposed') EventTypeArg.governance_policy_create = EventTypeArg('governance_policy_create') EventTypeArg.governance_policy_delete = EventTypeArg('governance_policy_delete') EventTypeArg.governance_policy_edit_details = EventTypeArg('governance_policy_edit_details') EventTypeArg.governance_policy_edit_duration = EventTypeArg('governance_policy_edit_duration') EventTypeArg.governance_policy_export_created = EventTypeArg('governance_policy_export_created') EventTypeArg.governance_policy_export_removed = EventTypeArg('governance_policy_export_removed') EventTypeArg.governance_policy_remove_folders = EventTypeArg('governance_policy_remove_folders') EventTypeArg.governance_policy_report_created = EventTypeArg('governance_policy_report_created') EventTypeArg.governance_policy_zip_part_downloaded = EventTypeArg('governance_policy_zip_part_downloaded') EventTypeArg.legal_holds_activate_a_hold = EventTypeArg('legal_holds_activate_a_hold') EventTypeArg.legal_holds_add_members = EventTypeArg('legal_holds_add_members') EventTypeArg.legal_holds_change_hold_details = EventTypeArg('legal_holds_change_hold_details') EventTypeArg.legal_holds_change_hold_name = EventTypeArg('legal_holds_change_hold_name') EventTypeArg.legal_holds_export_a_hold = EventTypeArg('legal_holds_export_a_hold') EventTypeArg.legal_holds_export_cancelled = EventTypeArg('legal_holds_export_cancelled') EventTypeArg.legal_holds_export_downloaded = EventTypeArg('legal_holds_export_downloaded') EventTypeArg.legal_holds_export_removed = EventTypeArg('legal_holds_export_removed') EventTypeArg.legal_holds_release_a_hold = EventTypeArg('legal_holds_release_a_hold') EventTypeArg.legal_holds_remove_members = EventTypeArg('legal_holds_remove_members') EventTypeArg.legal_holds_report_a_hold = EventTypeArg('legal_holds_report_a_hold') EventTypeArg.device_change_ip_desktop = EventTypeArg('device_change_ip_desktop') EventTypeArg.device_change_ip_mobile = EventTypeArg('device_change_ip_mobile') EventTypeArg.device_change_ip_web = EventTypeArg('device_change_ip_web') EventTypeArg.device_delete_on_unlink_fail = EventTypeArg('device_delete_on_unlink_fail') EventTypeArg.device_delete_on_unlink_success = EventTypeArg('device_delete_on_unlink_success') EventTypeArg.device_link_fail = EventTypeArg('device_link_fail') EventTypeArg.device_link_success = EventTypeArg('device_link_success') EventTypeArg.device_management_disabled = EventTypeArg('device_management_disabled') EventTypeArg.device_management_enabled = EventTypeArg('device_management_enabled') EventTypeArg.device_sync_backup_status_changed = EventTypeArg('device_sync_backup_status_changed') EventTypeArg.device_unlink = EventTypeArg('device_unlink') EventTypeArg.dropbox_passwords_exported = EventTypeArg('dropbox_passwords_exported') EventTypeArg.dropbox_passwords_new_device_enrolled = EventTypeArg('dropbox_passwords_new_device_enrolled') EventTypeArg.emm_refresh_auth_token = EventTypeArg('emm_refresh_auth_token') EventTypeArg.external_drive_backup_eligibility_status_checked = EventTypeArg('external_drive_backup_eligibility_status_checked') EventTypeArg.external_drive_backup_status_changed = EventTypeArg('external_drive_backup_status_changed') EventTypeArg.account_capture_change_availability = EventTypeArg('account_capture_change_availability') EventTypeArg.account_capture_migrate_account = EventTypeArg('account_capture_migrate_account') EventTypeArg.account_capture_notification_emails_sent = EventTypeArg('account_capture_notification_emails_sent') EventTypeArg.account_capture_relinquish_account = EventTypeArg('account_capture_relinquish_account') EventTypeArg.disabled_domain_invites = EventTypeArg('disabled_domain_invites') EventTypeArg.domain_invites_approve_request_to_join_team = EventTypeArg('domain_invites_approve_request_to_join_team') EventTypeArg.domain_invites_decline_request_to_join_team = EventTypeArg('domain_invites_decline_request_to_join_team') EventTypeArg.domain_invites_email_existing_users = EventTypeArg('domain_invites_email_existing_users') EventTypeArg.domain_invites_request_to_join_team = EventTypeArg('domain_invites_request_to_join_team') EventTypeArg.domain_invites_set_invite_new_user_pref_to_no = EventTypeArg('domain_invites_set_invite_new_user_pref_to_no') EventTypeArg.domain_invites_set_invite_new_user_pref_to_yes = EventTypeArg('domain_invites_set_invite_new_user_pref_to_yes') EventTypeArg.domain_verification_add_domain_fail = EventTypeArg('domain_verification_add_domain_fail') EventTypeArg.domain_verification_add_domain_success = EventTypeArg('domain_verification_add_domain_success') EventTypeArg.domain_verification_remove_domain = EventTypeArg('domain_verification_remove_domain') EventTypeArg.enabled_domain_invites = EventTypeArg('enabled_domain_invites') EventTypeArg.team_encryption_key_cancel_key_deletion = EventTypeArg('team_encryption_key_cancel_key_deletion') EventTypeArg.team_encryption_key_create_key = EventTypeArg('team_encryption_key_create_key') EventTypeArg.team_encryption_key_delete_key = EventTypeArg('team_encryption_key_delete_key') EventTypeArg.team_encryption_key_disable_key = EventTypeArg('team_encryption_key_disable_key') EventTypeArg.team_encryption_key_enable_key = EventTypeArg('team_encryption_key_enable_key') EventTypeArg.team_encryption_key_rotate_key = EventTypeArg('team_encryption_key_rotate_key') EventTypeArg.team_encryption_key_schedule_key_deletion = EventTypeArg('team_encryption_key_schedule_key_deletion') EventTypeArg.apply_naming_convention = EventTypeArg('apply_naming_convention') EventTypeArg.create_folder = EventTypeArg('create_folder') EventTypeArg.file_add = EventTypeArg('file_add') EventTypeArg.file_add_from_automation = EventTypeArg('file_add_from_automation') EventTypeArg.file_copy = EventTypeArg('file_copy') EventTypeArg.file_delete = EventTypeArg('file_delete') EventTypeArg.file_download = EventTypeArg('file_download') EventTypeArg.file_edit = EventTypeArg('file_edit') EventTypeArg.file_get_copy_reference = EventTypeArg('file_get_copy_reference') EventTypeArg.file_locking_lock_status_changed = EventTypeArg('file_locking_lock_status_changed') EventTypeArg.file_move = EventTypeArg('file_move') EventTypeArg.file_permanently_delete = EventTypeArg('file_permanently_delete') EventTypeArg.file_preview = EventTypeArg('file_preview') EventTypeArg.file_rename = EventTypeArg('file_rename') EventTypeArg.file_restore = EventTypeArg('file_restore') EventTypeArg.file_revert = EventTypeArg('file_revert') EventTypeArg.file_rollback_changes = EventTypeArg('file_rollback_changes') EventTypeArg.file_save_copy_reference = EventTypeArg('file_save_copy_reference') EventTypeArg.folder_overview_description_changed = EventTypeArg('folder_overview_description_changed') EventTypeArg.folder_overview_item_pinned = EventTypeArg('folder_overview_item_pinned') EventTypeArg.folder_overview_item_unpinned = EventTypeArg('folder_overview_item_unpinned') EventTypeArg.object_label_added = EventTypeArg('object_label_added') EventTypeArg.object_label_removed = EventTypeArg('object_label_removed') EventTypeArg.object_label_updated_value = EventTypeArg('object_label_updated_value') EventTypeArg.organize_folder_with_tidy = EventTypeArg('organize_folder_with_tidy') EventTypeArg.replay_file_delete = EventTypeArg('replay_file_delete') EventTypeArg.rewind_folder = EventTypeArg('rewind_folder') EventTypeArg.undo_naming_convention = EventTypeArg('undo_naming_convention') EventTypeArg.undo_organize_folder_with_tidy = EventTypeArg('undo_organize_folder_with_tidy') EventTypeArg.user_tags_added = EventTypeArg('user_tags_added') EventTypeArg.user_tags_removed = EventTypeArg('user_tags_removed') EventTypeArg.email_ingest_receive_file = EventTypeArg('email_ingest_receive_file') EventTypeArg.file_request_change = EventTypeArg('file_request_change') EventTypeArg.file_request_close = EventTypeArg('file_request_close') EventTypeArg.file_request_create = EventTypeArg('file_request_create') EventTypeArg.file_request_delete = EventTypeArg('file_request_delete') EventTypeArg.file_request_receive_file = EventTypeArg('file_request_receive_file') EventTypeArg.group_add_external_id = EventTypeArg('group_add_external_id') EventTypeArg.group_add_member = EventTypeArg('group_add_member') EventTypeArg.group_change_external_id = EventTypeArg('group_change_external_id') EventTypeArg.group_change_management_type = EventTypeArg('group_change_management_type') EventTypeArg.group_change_member_role = EventTypeArg('group_change_member_role') EventTypeArg.group_create = EventTypeArg('group_create') EventTypeArg.group_delete = EventTypeArg('group_delete') EventTypeArg.group_description_updated = EventTypeArg('group_description_updated') EventTypeArg.group_join_policy_updated = EventTypeArg('group_join_policy_updated') EventTypeArg.group_moved = EventTypeArg('group_moved') EventTypeArg.group_remove_external_id = EventTypeArg('group_remove_external_id') EventTypeArg.group_remove_member = EventTypeArg('group_remove_member') EventTypeArg.group_rename = EventTypeArg('group_rename') EventTypeArg.account_lock_or_unlocked = EventTypeArg('account_lock_or_unlocked') EventTypeArg.emm_error = EventTypeArg('emm_error') EventTypeArg.guest_admin_signed_in_via_trusted_teams = EventTypeArg('guest_admin_signed_in_via_trusted_teams') EventTypeArg.guest_admin_signed_out_via_trusted_teams = EventTypeArg('guest_admin_signed_out_via_trusted_teams') EventTypeArg.login_fail = EventTypeArg('login_fail') EventTypeArg.login_success = EventTypeArg('login_success') EventTypeArg.logout = EventTypeArg('logout') EventTypeArg.reseller_support_session_end = EventTypeArg('reseller_support_session_end') EventTypeArg.reseller_support_session_start = EventTypeArg('reseller_support_session_start') EventTypeArg.sign_in_as_session_end = EventTypeArg('sign_in_as_session_end') EventTypeArg.sign_in_as_session_start = EventTypeArg('sign_in_as_session_start') EventTypeArg.sso_error = EventTypeArg('sso_error') EventTypeArg.backup_admin_invitation_sent = EventTypeArg('backup_admin_invitation_sent') EventTypeArg.backup_invitation_opened = EventTypeArg('backup_invitation_opened') EventTypeArg.create_team_invite_link = EventTypeArg('create_team_invite_link') EventTypeArg.delete_team_invite_link = EventTypeArg('delete_team_invite_link') EventTypeArg.member_add_external_id = EventTypeArg('member_add_external_id') EventTypeArg.member_add_name = EventTypeArg('member_add_name') EventTypeArg.member_change_admin_role = EventTypeArg('member_change_admin_role') EventTypeArg.member_change_email = EventTypeArg('member_change_email') EventTypeArg.member_change_external_id = EventTypeArg('member_change_external_id') EventTypeArg.member_change_membership_type = EventTypeArg('member_change_membership_type') EventTypeArg.member_change_name = EventTypeArg('member_change_name') EventTypeArg.member_change_reseller_role = EventTypeArg('member_change_reseller_role') EventTypeArg.member_change_status = EventTypeArg('member_change_status') EventTypeArg.member_delete_manual_contacts = EventTypeArg('member_delete_manual_contacts') EventTypeArg.member_delete_profile_photo = EventTypeArg('member_delete_profile_photo') EventTypeArg.member_permanently_delete_account_contents = EventTypeArg('member_permanently_delete_account_contents') EventTypeArg.member_remove_external_id = EventTypeArg('member_remove_external_id') EventTypeArg.member_set_profile_photo = EventTypeArg('member_set_profile_photo') EventTypeArg.member_space_limits_add_custom_quota = EventTypeArg('member_space_limits_add_custom_quota') EventTypeArg.member_space_limits_change_custom_quota = EventTypeArg('member_space_limits_change_custom_quota') EventTypeArg.member_space_limits_change_status = EventTypeArg('member_space_limits_change_status') EventTypeArg.member_space_limits_remove_custom_quota = EventTypeArg('member_space_limits_remove_custom_quota') EventTypeArg.member_suggest = EventTypeArg('member_suggest') EventTypeArg.member_transfer_account_contents = EventTypeArg('member_transfer_account_contents') EventTypeArg.pending_secondary_email_added = EventTypeArg('pending_secondary_email_added') EventTypeArg.secondary_email_deleted = EventTypeArg('secondary_email_deleted') EventTypeArg.secondary_email_verified = EventTypeArg('secondary_email_verified') EventTypeArg.secondary_mails_policy_changed = EventTypeArg('secondary_mails_policy_changed') EventTypeArg.binder_add_page = EventTypeArg('binder_add_page') EventTypeArg.binder_add_section = EventTypeArg('binder_add_section') EventTypeArg.binder_remove_page = EventTypeArg('binder_remove_page') EventTypeArg.binder_remove_section = EventTypeArg('binder_remove_section') EventTypeArg.binder_rename_page = EventTypeArg('binder_rename_page') EventTypeArg.binder_rename_section = EventTypeArg('binder_rename_section') EventTypeArg.binder_reorder_page = EventTypeArg('binder_reorder_page') EventTypeArg.binder_reorder_section = EventTypeArg('binder_reorder_section') EventTypeArg.paper_content_add_member = EventTypeArg('paper_content_add_member') EventTypeArg.paper_content_add_to_folder = EventTypeArg('paper_content_add_to_folder') EventTypeArg.paper_content_archive = EventTypeArg('paper_content_archive') EventTypeArg.paper_content_create = EventTypeArg('paper_content_create') EventTypeArg.paper_content_permanently_delete = EventTypeArg('paper_content_permanently_delete') EventTypeArg.paper_content_remove_from_folder = EventTypeArg('paper_content_remove_from_folder') EventTypeArg.paper_content_remove_member = EventTypeArg('paper_content_remove_member') EventTypeArg.paper_content_rename = EventTypeArg('paper_content_rename') EventTypeArg.paper_content_restore = EventTypeArg('paper_content_restore') EventTypeArg.paper_doc_add_comment = EventTypeArg('paper_doc_add_comment') EventTypeArg.paper_doc_change_member_role = EventTypeArg('paper_doc_change_member_role') EventTypeArg.paper_doc_change_sharing_policy = EventTypeArg('paper_doc_change_sharing_policy') EventTypeArg.paper_doc_change_subscription = EventTypeArg('paper_doc_change_subscription') EventTypeArg.paper_doc_deleted = EventTypeArg('paper_doc_deleted') EventTypeArg.paper_doc_delete_comment = EventTypeArg('paper_doc_delete_comment') EventTypeArg.paper_doc_download = EventTypeArg('paper_doc_download') EventTypeArg.paper_doc_edit = EventTypeArg('paper_doc_edit') EventTypeArg.paper_doc_edit_comment = EventTypeArg('paper_doc_edit_comment') EventTypeArg.paper_doc_followed = EventTypeArg('paper_doc_followed') EventTypeArg.paper_doc_mention = EventTypeArg('paper_doc_mention') EventTypeArg.paper_doc_ownership_changed = EventTypeArg('paper_doc_ownership_changed') EventTypeArg.paper_doc_request_access = EventTypeArg('paper_doc_request_access') EventTypeArg.paper_doc_resolve_comment = EventTypeArg('paper_doc_resolve_comment') EventTypeArg.paper_doc_revert = EventTypeArg('paper_doc_revert') EventTypeArg.paper_doc_slack_share = EventTypeArg('paper_doc_slack_share') EventTypeArg.paper_doc_team_invite = EventTypeArg('paper_doc_team_invite') EventTypeArg.paper_doc_trashed = EventTypeArg('paper_doc_trashed') EventTypeArg.paper_doc_unresolve_comment = EventTypeArg('paper_doc_unresolve_comment') EventTypeArg.paper_doc_untrashed = EventTypeArg('paper_doc_untrashed') EventTypeArg.paper_doc_view = EventTypeArg('paper_doc_view') EventTypeArg.paper_external_view_allow = EventTypeArg('paper_external_view_allow') EventTypeArg.paper_external_view_default_team = EventTypeArg('paper_external_view_default_team') EventTypeArg.paper_external_view_forbid = EventTypeArg('paper_external_view_forbid') EventTypeArg.paper_folder_change_subscription = EventTypeArg('paper_folder_change_subscription') EventTypeArg.paper_folder_deleted = EventTypeArg('paper_folder_deleted') EventTypeArg.paper_folder_followed = EventTypeArg('paper_folder_followed') EventTypeArg.paper_folder_team_invite = EventTypeArg('paper_folder_team_invite') EventTypeArg.paper_published_link_change_permission = EventTypeArg('paper_published_link_change_permission') EventTypeArg.paper_published_link_create = EventTypeArg('paper_published_link_create') EventTypeArg.paper_published_link_disabled = EventTypeArg('paper_published_link_disabled') EventTypeArg.paper_published_link_view = EventTypeArg('paper_published_link_view') EventTypeArg.password_change = EventTypeArg('password_change') EventTypeArg.password_reset = EventTypeArg('password_reset') EventTypeArg.password_reset_all = EventTypeArg('password_reset_all') EventTypeArg.classification_create_report = EventTypeArg('classification_create_report') EventTypeArg.classification_create_report_fail = EventTypeArg('classification_create_report_fail') EventTypeArg.emm_create_exceptions_report = EventTypeArg('emm_create_exceptions_report') EventTypeArg.emm_create_usage_report = EventTypeArg('emm_create_usage_report') EventTypeArg.export_members_report = EventTypeArg('export_members_report') EventTypeArg.export_members_report_fail = EventTypeArg('export_members_report_fail') EventTypeArg.external_sharing_create_report = EventTypeArg('external_sharing_create_report') EventTypeArg.external_sharing_report_failed = EventTypeArg('external_sharing_report_failed') EventTypeArg.no_expiration_link_gen_create_report = EventTypeArg('no_expiration_link_gen_create_report') EventTypeArg.no_expiration_link_gen_report_failed = EventTypeArg('no_expiration_link_gen_report_failed') EventTypeArg.no_password_link_gen_create_report = EventTypeArg('no_password_link_gen_create_report') EventTypeArg.no_password_link_gen_report_failed = EventTypeArg('no_password_link_gen_report_failed') EventTypeArg.no_password_link_view_create_report = EventTypeArg('no_password_link_view_create_report') EventTypeArg.no_password_link_view_report_failed = EventTypeArg('no_password_link_view_report_failed') EventTypeArg.outdated_link_view_create_report = EventTypeArg('outdated_link_view_create_report') EventTypeArg.outdated_link_view_report_failed = EventTypeArg('outdated_link_view_report_failed') EventTypeArg.paper_admin_export_start = EventTypeArg('paper_admin_export_start') EventTypeArg.ransomware_alert_create_report = EventTypeArg('ransomware_alert_create_report') EventTypeArg.ransomware_alert_create_report_failed = EventTypeArg('ransomware_alert_create_report_failed') EventTypeArg.smart_sync_create_admin_privilege_report = EventTypeArg('smart_sync_create_admin_privilege_report') EventTypeArg.team_activity_create_report = EventTypeArg('team_activity_create_report') EventTypeArg.team_activity_create_report_fail = EventTypeArg('team_activity_create_report_fail') EventTypeArg.collection_share = EventTypeArg('collection_share') EventTypeArg.file_transfers_file_add = EventTypeArg('file_transfers_file_add') EventTypeArg.file_transfers_transfer_delete = EventTypeArg('file_transfers_transfer_delete') EventTypeArg.file_transfers_transfer_download = EventTypeArg('file_transfers_transfer_download') EventTypeArg.file_transfers_transfer_send = EventTypeArg('file_transfers_transfer_send') EventTypeArg.file_transfers_transfer_view = EventTypeArg('file_transfers_transfer_view') EventTypeArg.note_acl_invite_only = EventTypeArg('note_acl_invite_only') EventTypeArg.note_acl_link = EventTypeArg('note_acl_link') EventTypeArg.note_acl_team_link = EventTypeArg('note_acl_team_link') EventTypeArg.note_shared = EventTypeArg('note_shared') EventTypeArg.note_share_receive = EventTypeArg('note_share_receive') EventTypeArg.open_note_shared = EventTypeArg('open_note_shared') EventTypeArg.replay_file_shared_link_created = EventTypeArg('replay_file_shared_link_created') EventTypeArg.replay_file_shared_link_modified = EventTypeArg('replay_file_shared_link_modified') EventTypeArg.replay_project_team_add = EventTypeArg('replay_project_team_add') EventTypeArg.replay_project_team_delete = EventTypeArg('replay_project_team_delete') EventTypeArg.sf_add_group = EventTypeArg('sf_add_group') EventTypeArg.sf_allow_non_members_to_view_shared_links = EventTypeArg('sf_allow_non_members_to_view_shared_links') EventTypeArg.sf_external_invite_warn = EventTypeArg('sf_external_invite_warn') EventTypeArg.sf_fb_invite = EventTypeArg('sf_fb_invite') EventTypeArg.sf_fb_invite_change_role = EventTypeArg('sf_fb_invite_change_role') EventTypeArg.sf_fb_uninvite = EventTypeArg('sf_fb_uninvite') EventTypeArg.sf_invite_group = EventTypeArg('sf_invite_group') EventTypeArg.sf_team_grant_access = EventTypeArg('sf_team_grant_access') EventTypeArg.sf_team_invite = EventTypeArg('sf_team_invite') EventTypeArg.sf_team_invite_change_role = EventTypeArg('sf_team_invite_change_role') EventTypeArg.sf_team_join = EventTypeArg('sf_team_join') EventTypeArg.sf_team_join_from_oob_link = EventTypeArg('sf_team_join_from_oob_link') EventTypeArg.sf_team_uninvite = EventTypeArg('sf_team_uninvite') EventTypeArg.shared_content_add_invitees = EventTypeArg('shared_content_add_invitees') EventTypeArg.shared_content_add_link_expiry = EventTypeArg('shared_content_add_link_expiry') EventTypeArg.shared_content_add_link_password = EventTypeArg('shared_content_add_link_password') EventTypeArg.shared_content_add_member = EventTypeArg('shared_content_add_member') EventTypeArg.shared_content_change_downloads_policy = EventTypeArg('shared_content_change_downloads_policy') EventTypeArg.shared_content_change_invitee_role = EventTypeArg('shared_content_change_invitee_role') EventTypeArg.shared_content_change_link_audience = EventTypeArg('shared_content_change_link_audience') EventTypeArg.shared_content_change_link_expiry = EventTypeArg('shared_content_change_link_expiry') EventTypeArg.shared_content_change_link_password = EventTypeArg('shared_content_change_link_password') EventTypeArg.shared_content_change_member_role = EventTypeArg('shared_content_change_member_role') EventTypeArg.shared_content_change_viewer_info_policy = EventTypeArg('shared_content_change_viewer_info_policy') EventTypeArg.shared_content_claim_invitation = EventTypeArg('shared_content_claim_invitation') EventTypeArg.shared_content_copy = EventTypeArg('shared_content_copy') EventTypeArg.shared_content_download = EventTypeArg('shared_content_download') EventTypeArg.shared_content_relinquish_membership = EventTypeArg('shared_content_relinquish_membership') EventTypeArg.shared_content_remove_invitees = EventTypeArg('shared_content_remove_invitees') EventTypeArg.shared_content_remove_link_expiry = EventTypeArg('shared_content_remove_link_expiry') EventTypeArg.shared_content_remove_link_password = EventTypeArg('shared_content_remove_link_password') EventTypeArg.shared_content_remove_member = EventTypeArg('shared_content_remove_member') EventTypeArg.shared_content_request_access = EventTypeArg('shared_content_request_access') EventTypeArg.shared_content_restore_invitees = EventTypeArg('shared_content_restore_invitees') EventTypeArg.shared_content_restore_member = EventTypeArg('shared_content_restore_member') EventTypeArg.shared_content_unshare = EventTypeArg('shared_content_unshare') EventTypeArg.shared_content_view = EventTypeArg('shared_content_view') EventTypeArg.shared_folder_change_link_policy = EventTypeArg('shared_folder_change_link_policy') EventTypeArg.shared_folder_change_members_inheritance_policy = EventTypeArg('shared_folder_change_members_inheritance_policy') EventTypeArg.shared_folder_change_members_management_policy = EventTypeArg('shared_folder_change_members_management_policy') EventTypeArg.shared_folder_change_members_policy = EventTypeArg('shared_folder_change_members_policy') EventTypeArg.shared_folder_create = EventTypeArg('shared_folder_create') EventTypeArg.shared_folder_decline_invitation = EventTypeArg('shared_folder_decline_invitation') EventTypeArg.shared_folder_mount = EventTypeArg('shared_folder_mount') EventTypeArg.shared_folder_nest = EventTypeArg('shared_folder_nest') EventTypeArg.shared_folder_transfer_ownership = EventTypeArg('shared_folder_transfer_ownership') EventTypeArg.shared_folder_unmount = EventTypeArg('shared_folder_unmount') EventTypeArg.shared_link_add_expiry = EventTypeArg('shared_link_add_expiry') EventTypeArg.shared_link_change_expiry = EventTypeArg('shared_link_change_expiry') EventTypeArg.shared_link_change_visibility = EventTypeArg('shared_link_change_visibility') EventTypeArg.shared_link_copy = EventTypeArg('shared_link_copy') EventTypeArg.shared_link_create = EventTypeArg('shared_link_create') EventTypeArg.shared_link_disable = EventTypeArg('shared_link_disable') EventTypeArg.shared_link_download = EventTypeArg('shared_link_download') EventTypeArg.shared_link_remove_expiry = EventTypeArg('shared_link_remove_expiry') EventTypeArg.shared_link_settings_add_expiration = EventTypeArg('shared_link_settings_add_expiration') EventTypeArg.shared_link_settings_add_password = EventTypeArg('shared_link_settings_add_password') EventTypeArg.shared_link_settings_allow_download_disabled = EventTypeArg('shared_link_settings_allow_download_disabled') EventTypeArg.shared_link_settings_allow_download_enabled = EventTypeArg('shared_link_settings_allow_download_enabled') EventTypeArg.shared_link_settings_change_audience = EventTypeArg('shared_link_settings_change_audience') EventTypeArg.shared_link_settings_change_expiration = EventTypeArg('shared_link_settings_change_expiration') EventTypeArg.shared_link_settings_change_password = EventTypeArg('shared_link_settings_change_password') EventTypeArg.shared_link_settings_remove_expiration = EventTypeArg('shared_link_settings_remove_expiration') EventTypeArg.shared_link_settings_remove_password = EventTypeArg('shared_link_settings_remove_password') EventTypeArg.shared_link_share = EventTypeArg('shared_link_share') EventTypeArg.shared_link_view = EventTypeArg('shared_link_view') EventTypeArg.shared_note_opened = EventTypeArg('shared_note_opened') EventTypeArg.shmodel_disable_downloads = EventTypeArg('shmodel_disable_downloads') EventTypeArg.shmodel_enable_downloads = EventTypeArg('shmodel_enable_downloads') EventTypeArg.shmodel_group_share = EventTypeArg('shmodel_group_share') EventTypeArg.showcase_access_granted = EventTypeArg('showcase_access_granted') EventTypeArg.showcase_add_member = EventTypeArg('showcase_add_member') EventTypeArg.showcase_archived = EventTypeArg('showcase_archived') EventTypeArg.showcase_created = EventTypeArg('showcase_created') EventTypeArg.showcase_delete_comment = EventTypeArg('showcase_delete_comment') EventTypeArg.showcase_edited = EventTypeArg('showcase_edited') EventTypeArg.showcase_edit_comment = EventTypeArg('showcase_edit_comment') EventTypeArg.showcase_file_added = EventTypeArg('showcase_file_added') EventTypeArg.showcase_file_download = EventTypeArg('showcase_file_download') EventTypeArg.showcase_file_removed = EventTypeArg('showcase_file_removed') EventTypeArg.showcase_file_view = EventTypeArg('showcase_file_view') EventTypeArg.showcase_permanently_deleted = EventTypeArg('showcase_permanently_deleted') EventTypeArg.showcase_post_comment = EventTypeArg('showcase_post_comment') EventTypeArg.showcase_remove_member = EventTypeArg('showcase_remove_member') EventTypeArg.showcase_renamed = EventTypeArg('showcase_renamed') EventTypeArg.showcase_request_access = EventTypeArg('showcase_request_access') EventTypeArg.showcase_resolve_comment = EventTypeArg('showcase_resolve_comment') EventTypeArg.showcase_restored = EventTypeArg('showcase_restored') EventTypeArg.showcase_trashed = EventTypeArg('showcase_trashed') EventTypeArg.showcase_trashed_deprecated = EventTypeArg('showcase_trashed_deprecated') EventTypeArg.showcase_unresolve_comment = EventTypeArg('showcase_unresolve_comment') EventTypeArg.showcase_untrashed = EventTypeArg('showcase_untrashed') EventTypeArg.showcase_untrashed_deprecated = EventTypeArg('showcase_untrashed_deprecated') EventTypeArg.showcase_view = EventTypeArg('showcase_view') EventTypeArg.sso_add_cert = EventTypeArg('sso_add_cert') EventTypeArg.sso_add_login_url = EventTypeArg('sso_add_login_url') EventTypeArg.sso_add_logout_url = EventTypeArg('sso_add_logout_url') EventTypeArg.sso_change_cert = EventTypeArg('sso_change_cert') EventTypeArg.sso_change_login_url = EventTypeArg('sso_change_login_url') EventTypeArg.sso_change_logout_url = EventTypeArg('sso_change_logout_url') EventTypeArg.sso_change_saml_identity_mode = EventTypeArg('sso_change_saml_identity_mode') EventTypeArg.sso_remove_cert = EventTypeArg('sso_remove_cert') EventTypeArg.sso_remove_login_url = EventTypeArg('sso_remove_login_url') EventTypeArg.sso_remove_logout_url = EventTypeArg('sso_remove_logout_url') EventTypeArg.team_folder_change_status = EventTypeArg('team_folder_change_status') EventTypeArg.team_folder_create = EventTypeArg('team_folder_create') EventTypeArg.team_folder_downgrade = EventTypeArg('team_folder_downgrade') EventTypeArg.team_folder_permanently_delete = EventTypeArg('team_folder_permanently_delete') EventTypeArg.team_folder_rename = EventTypeArg('team_folder_rename') EventTypeArg.team_selective_sync_settings_changed = EventTypeArg('team_selective_sync_settings_changed') EventTypeArg.account_capture_change_policy = EventTypeArg('account_capture_change_policy') EventTypeArg.admin_email_reminders_changed = EventTypeArg('admin_email_reminders_changed') EventTypeArg.allow_download_disabled = EventTypeArg('allow_download_disabled') EventTypeArg.allow_download_enabled = EventTypeArg('allow_download_enabled') EventTypeArg.app_permissions_changed = EventTypeArg('app_permissions_changed') EventTypeArg.camera_uploads_policy_changed = EventTypeArg('camera_uploads_policy_changed') EventTypeArg.capture_transcript_policy_changed = EventTypeArg('capture_transcript_policy_changed') EventTypeArg.classification_change_policy = EventTypeArg('classification_change_policy') EventTypeArg.computer_backup_policy_changed = EventTypeArg('computer_backup_policy_changed') EventTypeArg.content_administration_policy_changed = EventTypeArg('content_administration_policy_changed') EventTypeArg.data_placement_restriction_change_policy = EventTypeArg('data_placement_restriction_change_policy') EventTypeArg.data_placement_restriction_satisfy_policy = EventTypeArg('data_placement_restriction_satisfy_policy') EventTypeArg.device_approvals_add_exception = EventTypeArg('device_approvals_add_exception') EventTypeArg.device_approvals_change_desktop_policy = EventTypeArg('device_approvals_change_desktop_policy') EventTypeArg.device_approvals_change_mobile_policy = EventTypeArg('device_approvals_change_mobile_policy') EventTypeArg.device_approvals_change_overage_action = EventTypeArg('device_approvals_change_overage_action') EventTypeArg.device_approvals_change_unlink_action = EventTypeArg('device_approvals_change_unlink_action') EventTypeArg.device_approvals_remove_exception = EventTypeArg('device_approvals_remove_exception') EventTypeArg.directory_restrictions_add_members = EventTypeArg('directory_restrictions_add_members') EventTypeArg.directory_restrictions_remove_members = EventTypeArg('directory_restrictions_remove_members') EventTypeArg.dropbox_passwords_policy_changed = EventTypeArg('dropbox_passwords_policy_changed') EventTypeArg.email_ingest_policy_changed = EventTypeArg('email_ingest_policy_changed') EventTypeArg.emm_add_exception = EventTypeArg('emm_add_exception') EventTypeArg.emm_change_policy = EventTypeArg('emm_change_policy') EventTypeArg.emm_remove_exception = EventTypeArg('emm_remove_exception') EventTypeArg.extended_version_history_change_policy = EventTypeArg('extended_version_history_change_policy') EventTypeArg.external_drive_backup_policy_changed = EventTypeArg('external_drive_backup_policy_changed') EventTypeArg.file_comments_change_policy = EventTypeArg('file_comments_change_policy') EventTypeArg.file_locking_policy_changed = EventTypeArg('file_locking_policy_changed') EventTypeArg.file_provider_migration_policy_changed = EventTypeArg('file_provider_migration_policy_changed') EventTypeArg.file_requests_change_policy = EventTypeArg('file_requests_change_policy') EventTypeArg.file_requests_emails_enabled = EventTypeArg('file_requests_emails_enabled') EventTypeArg.file_requests_emails_restricted_to_team_only = EventTypeArg('file_requests_emails_restricted_to_team_only') EventTypeArg.file_transfers_policy_changed = EventTypeArg('file_transfers_policy_changed') EventTypeArg.folder_link_restriction_policy_changed = EventTypeArg('folder_link_restriction_policy_changed') EventTypeArg.google_sso_change_policy = EventTypeArg('google_sso_change_policy') EventTypeArg.group_user_management_change_policy = EventTypeArg('group_user_management_change_policy') EventTypeArg.integration_policy_changed = EventTypeArg('integration_policy_changed') EventTypeArg.invite_acceptance_email_policy_changed = EventTypeArg('invite_acceptance_email_policy_changed') EventTypeArg.member_requests_change_policy = EventTypeArg('member_requests_change_policy') EventTypeArg.member_send_invite_policy_changed = EventTypeArg('member_send_invite_policy_changed') EventTypeArg.member_space_limits_add_exception = EventTypeArg('member_space_limits_add_exception') EventTypeArg.member_space_limits_change_caps_type_policy = EventTypeArg('member_space_limits_change_caps_type_policy') EventTypeArg.member_space_limits_change_policy = EventTypeArg('member_space_limits_change_policy') EventTypeArg.member_space_limits_remove_exception = EventTypeArg('member_space_limits_remove_exception') EventTypeArg.member_suggestions_change_policy = EventTypeArg('member_suggestions_change_policy') EventTypeArg.microsoft_office_addin_change_policy = EventTypeArg('microsoft_office_addin_change_policy') EventTypeArg.network_control_change_policy = EventTypeArg('network_control_change_policy') EventTypeArg.paper_change_deployment_policy = EventTypeArg('paper_change_deployment_policy') EventTypeArg.paper_change_member_link_policy = EventTypeArg('paper_change_member_link_policy') EventTypeArg.paper_change_member_policy = EventTypeArg('paper_change_member_policy') EventTypeArg.paper_change_policy = EventTypeArg('paper_change_policy') EventTypeArg.paper_default_folder_policy_changed = EventTypeArg('paper_default_folder_policy_changed') EventTypeArg.paper_desktop_policy_changed = EventTypeArg('paper_desktop_policy_changed') EventTypeArg.paper_enabled_users_group_addition = EventTypeArg('paper_enabled_users_group_addition') EventTypeArg.paper_enabled_users_group_removal = EventTypeArg('paper_enabled_users_group_removal') EventTypeArg.password_strength_requirements_change_policy = EventTypeArg('password_strength_requirements_change_policy') EventTypeArg.permanent_delete_change_policy = EventTypeArg('permanent_delete_change_policy') EventTypeArg.reseller_support_change_policy = EventTypeArg('reseller_support_change_policy') EventTypeArg.rewind_policy_changed = EventTypeArg('rewind_policy_changed') EventTypeArg.send_for_signature_policy_changed = EventTypeArg('send_for_signature_policy_changed') EventTypeArg.sharing_change_folder_join_policy = EventTypeArg('sharing_change_folder_join_policy') EventTypeArg.sharing_change_link_allow_change_expiration_policy = EventTypeArg('sharing_change_link_allow_change_expiration_policy') EventTypeArg.sharing_change_link_default_expiration_policy = EventTypeArg('sharing_change_link_default_expiration_policy') EventTypeArg.sharing_change_link_enforce_password_policy = EventTypeArg('sharing_change_link_enforce_password_policy') EventTypeArg.sharing_change_link_policy = EventTypeArg('sharing_change_link_policy') EventTypeArg.sharing_change_member_policy = EventTypeArg('sharing_change_member_policy') EventTypeArg.showcase_change_download_policy = EventTypeArg('showcase_change_download_policy') EventTypeArg.showcase_change_enabled_policy = EventTypeArg('showcase_change_enabled_policy') EventTypeArg.showcase_change_external_sharing_policy = EventTypeArg('showcase_change_external_sharing_policy') EventTypeArg.smarter_smart_sync_policy_changed = EventTypeArg('smarter_smart_sync_policy_changed') EventTypeArg.smart_sync_change_policy = EventTypeArg('smart_sync_change_policy') EventTypeArg.smart_sync_not_opt_out = EventTypeArg('smart_sync_not_opt_out') EventTypeArg.smart_sync_opt_out = EventTypeArg('smart_sync_opt_out') EventTypeArg.sso_change_policy = EventTypeArg('sso_change_policy') EventTypeArg.team_branding_policy_changed = EventTypeArg('team_branding_policy_changed') EventTypeArg.team_extensions_policy_changed = EventTypeArg('team_extensions_policy_changed') EventTypeArg.team_selective_sync_policy_changed = EventTypeArg('team_selective_sync_policy_changed') EventTypeArg.team_sharing_whitelist_subjects_changed = EventTypeArg('team_sharing_whitelist_subjects_changed') EventTypeArg.tfa_add_exception = EventTypeArg('tfa_add_exception') EventTypeArg.tfa_change_policy = EventTypeArg('tfa_change_policy') EventTypeArg.tfa_remove_exception = EventTypeArg('tfa_remove_exception') EventTypeArg.two_account_change_policy = EventTypeArg('two_account_change_policy') EventTypeArg.viewer_info_policy_changed = EventTypeArg('viewer_info_policy_changed') EventTypeArg.watermarking_policy_changed = EventTypeArg('watermarking_policy_changed') EventTypeArg.web_sessions_change_active_session_limit = EventTypeArg('web_sessions_change_active_session_limit') EventTypeArg.web_sessions_change_fixed_length_policy = EventTypeArg('web_sessions_change_fixed_length_policy') EventTypeArg.web_sessions_change_idle_length_policy = EventTypeArg('web_sessions_change_idle_length_policy') EventTypeArg.data_residency_migration_request_successful = EventTypeArg('data_residency_migration_request_successful') EventTypeArg.data_residency_migration_request_unsuccessful = EventTypeArg('data_residency_migration_request_unsuccessful') EventTypeArg.team_merge_from = EventTypeArg('team_merge_from') EventTypeArg.team_merge_to = EventTypeArg('team_merge_to') EventTypeArg.team_profile_add_background = EventTypeArg('team_profile_add_background') EventTypeArg.team_profile_add_logo = EventTypeArg('team_profile_add_logo') EventTypeArg.team_profile_change_background = EventTypeArg('team_profile_change_background') EventTypeArg.team_profile_change_default_language = EventTypeArg('team_profile_change_default_language') EventTypeArg.team_profile_change_logo = EventTypeArg('team_profile_change_logo') EventTypeArg.team_profile_change_name = EventTypeArg('team_profile_change_name') EventTypeArg.team_profile_remove_background = EventTypeArg('team_profile_remove_background') EventTypeArg.team_profile_remove_logo = EventTypeArg('team_profile_remove_logo') EventTypeArg.tfa_add_backup_phone = EventTypeArg('tfa_add_backup_phone') EventTypeArg.tfa_add_security_key = EventTypeArg('tfa_add_security_key') EventTypeArg.tfa_change_backup_phone = EventTypeArg('tfa_change_backup_phone') EventTypeArg.tfa_change_status = EventTypeArg('tfa_change_status') EventTypeArg.tfa_remove_backup_phone = EventTypeArg('tfa_remove_backup_phone') EventTypeArg.tfa_remove_security_key = EventTypeArg('tfa_remove_security_key') EventTypeArg.tfa_reset = EventTypeArg('tfa_reset') EventTypeArg.changed_enterprise_admin_role = EventTypeArg('changed_enterprise_admin_role') EventTypeArg.changed_enterprise_connected_team_status = EventTypeArg('changed_enterprise_connected_team_status') EventTypeArg.ended_enterprise_admin_session = EventTypeArg('ended_enterprise_admin_session') EventTypeArg.ended_enterprise_admin_session_deprecated = EventTypeArg('ended_enterprise_admin_session_deprecated') EventTypeArg.enterprise_settings_locking = EventTypeArg('enterprise_settings_locking') EventTypeArg.guest_admin_change_status = EventTypeArg('guest_admin_change_status') EventTypeArg.started_enterprise_admin_session = EventTypeArg('started_enterprise_admin_session') EventTypeArg.team_merge_request_accepted = EventTypeArg('team_merge_request_accepted') EventTypeArg.team_merge_request_accepted_shown_to_primary_team = EventTypeArg('team_merge_request_accepted_shown_to_primary_team') EventTypeArg.team_merge_request_accepted_shown_to_secondary_team = EventTypeArg('team_merge_request_accepted_shown_to_secondary_team') EventTypeArg.team_merge_request_auto_canceled = EventTypeArg('team_merge_request_auto_canceled') EventTypeArg.team_merge_request_canceled = EventTypeArg('team_merge_request_canceled') EventTypeArg.team_merge_request_canceled_shown_to_primary_team = EventTypeArg('team_merge_request_canceled_shown_to_primary_team') EventTypeArg.team_merge_request_canceled_shown_to_secondary_team = EventTypeArg('team_merge_request_canceled_shown_to_secondary_team') EventTypeArg.team_merge_request_expired = EventTypeArg('team_merge_request_expired') EventTypeArg.team_merge_request_expired_shown_to_primary_team = EventTypeArg('team_merge_request_expired_shown_to_primary_team') EventTypeArg.team_merge_request_expired_shown_to_secondary_team = EventTypeArg('team_merge_request_expired_shown_to_secondary_team') EventTypeArg.team_merge_request_rejected_shown_to_primary_team = EventTypeArg('team_merge_request_rejected_shown_to_primary_team') EventTypeArg.team_merge_request_rejected_shown_to_secondary_team = EventTypeArg('team_merge_request_rejected_shown_to_secondary_team') EventTypeArg.team_merge_request_reminder = EventTypeArg('team_merge_request_reminder') EventTypeArg.team_merge_request_reminder_shown_to_primary_team = EventTypeArg('team_merge_request_reminder_shown_to_primary_team') EventTypeArg.team_merge_request_reminder_shown_to_secondary_team = EventTypeArg('team_merge_request_reminder_shown_to_secondary_team') EventTypeArg.team_merge_request_revoked = EventTypeArg('team_merge_request_revoked') EventTypeArg.team_merge_request_sent_shown_to_primary_team = EventTypeArg('team_merge_request_sent_shown_to_primary_team') EventTypeArg.team_merge_request_sent_shown_to_secondary_team = EventTypeArg('team_merge_request_sent_shown_to_secondary_team') EventTypeArg.other = EventTypeArg('other') ExportMembersReportDetails._all_field_names_ = set([]) ExportMembersReportDetails._all_fields_ = [] ExportMembersReportFailDetails.failure_reason.validator = team.TeamReportFailureReason_validator ExportMembersReportFailDetails._all_field_names_ = set(['failure_reason']) ExportMembersReportFailDetails._all_fields_ = [('failure_reason', ExportMembersReportFailDetails.failure_reason.validator)] ExportMembersReportFailType.description.validator = bv.String() ExportMembersReportFailType._all_field_names_ = set(['description']) ExportMembersReportFailType._all_fields_ = [('description', ExportMembersReportFailType.description.validator)] ExportMembersReportType.description.validator = bv.String() ExportMembersReportType._all_field_names_ = set(['description']) ExportMembersReportType._all_fields_ = [('description', ExportMembersReportType.description.validator)] ExtendedVersionHistoryChangePolicyDetails.new_value.validator = ExtendedVersionHistoryPolicy_validator ExtendedVersionHistoryChangePolicyDetails.previous_value.validator = bv.Nullable(ExtendedVersionHistoryPolicy_validator) ExtendedVersionHistoryChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) ExtendedVersionHistoryChangePolicyDetails._all_fields_ = [ ('new_value', ExtendedVersionHistoryChangePolicyDetails.new_value.validator), ('previous_value', ExtendedVersionHistoryChangePolicyDetails.previous_value.validator), ] ExtendedVersionHistoryChangePolicyType.description.validator = bv.String() ExtendedVersionHistoryChangePolicyType._all_field_names_ = set(['description']) ExtendedVersionHistoryChangePolicyType._all_fields_ = [('description', ExtendedVersionHistoryChangePolicyType.description.validator)] ExtendedVersionHistoryPolicy._explicitly_limited_validator = bv.Void() ExtendedVersionHistoryPolicy._explicitly_unlimited_validator = bv.Void() ExtendedVersionHistoryPolicy._implicitly_limited_validator = bv.Void() ExtendedVersionHistoryPolicy._implicitly_unlimited_validator = bv.Void() ExtendedVersionHistoryPolicy._other_validator = bv.Void() ExtendedVersionHistoryPolicy._tagmap = { 'explicitly_limited': ExtendedVersionHistoryPolicy._explicitly_limited_validator, 'explicitly_unlimited': ExtendedVersionHistoryPolicy._explicitly_unlimited_validator, 'implicitly_limited': ExtendedVersionHistoryPolicy._implicitly_limited_validator, 'implicitly_unlimited': ExtendedVersionHistoryPolicy._implicitly_unlimited_validator, 'other': ExtendedVersionHistoryPolicy._other_validator, } ExtendedVersionHistoryPolicy.explicitly_limited = ExtendedVersionHistoryPolicy('explicitly_limited') ExtendedVersionHistoryPolicy.explicitly_unlimited = ExtendedVersionHistoryPolicy('explicitly_unlimited') ExtendedVersionHistoryPolicy.implicitly_limited = ExtendedVersionHistoryPolicy('implicitly_limited') ExtendedVersionHistoryPolicy.implicitly_unlimited = ExtendedVersionHistoryPolicy('implicitly_unlimited') ExtendedVersionHistoryPolicy.other = ExtendedVersionHistoryPolicy('other') ExternalDriveBackupEligibilityStatus._exceed_license_cap_validator = bv.Void() ExternalDriveBackupEligibilityStatus._success_validator = bv.Void() ExternalDriveBackupEligibilityStatus._other_validator = bv.Void() ExternalDriveBackupEligibilityStatus._tagmap = { 'exceed_license_cap': ExternalDriveBackupEligibilityStatus._exceed_license_cap_validator, 'success': ExternalDriveBackupEligibilityStatus._success_validator, 'other': ExternalDriveBackupEligibilityStatus._other_validator, } ExternalDriveBackupEligibilityStatus.exceed_license_cap = ExternalDriveBackupEligibilityStatus('exceed_license_cap') ExternalDriveBackupEligibilityStatus.success = ExternalDriveBackupEligibilityStatus('success') ExternalDriveBackupEligibilityStatus.other = ExternalDriveBackupEligibilityStatus('other') ExternalDriveBackupEligibilityStatusCheckedDetails.desktop_device_session_info.validator = DesktopDeviceSessionLogInfo_validator ExternalDriveBackupEligibilityStatusCheckedDetails.status.validator = ExternalDriveBackupEligibilityStatus_validator ExternalDriveBackupEligibilityStatusCheckedDetails.number_of_external_drive_backup.validator = bv.UInt64() ExternalDriveBackupEligibilityStatusCheckedDetails._all_field_names_ = set([ 'desktop_device_session_info', 'status', 'number_of_external_drive_backup', ]) ExternalDriveBackupEligibilityStatusCheckedDetails._all_fields_ = [ ('desktop_device_session_info', ExternalDriveBackupEligibilityStatusCheckedDetails.desktop_device_session_info.validator), ('status', ExternalDriveBackupEligibilityStatusCheckedDetails.status.validator), ('number_of_external_drive_backup', ExternalDriveBackupEligibilityStatusCheckedDetails.number_of_external_drive_backup.validator), ] ExternalDriveBackupEligibilityStatusCheckedType.description.validator = bv.String() ExternalDriveBackupEligibilityStatusCheckedType._all_field_names_ = set(['description']) ExternalDriveBackupEligibilityStatusCheckedType._all_fields_ = [('description', ExternalDriveBackupEligibilityStatusCheckedType.description.validator)] ExternalDriveBackupPolicy._default_validator = bv.Void() ExternalDriveBackupPolicy._disabled_validator = bv.Void() ExternalDriveBackupPolicy._enabled_validator = bv.Void() ExternalDriveBackupPolicy._other_validator = bv.Void() ExternalDriveBackupPolicy._tagmap = { 'default': ExternalDriveBackupPolicy._default_validator, 'disabled': ExternalDriveBackupPolicy._disabled_validator, 'enabled': ExternalDriveBackupPolicy._enabled_validator, 'other': ExternalDriveBackupPolicy._other_validator, } ExternalDriveBackupPolicy.default = ExternalDriveBackupPolicy('default') ExternalDriveBackupPolicy.disabled = ExternalDriveBackupPolicy('disabled') ExternalDriveBackupPolicy.enabled = ExternalDriveBackupPolicy('enabled') ExternalDriveBackupPolicy.other = ExternalDriveBackupPolicy('other') ExternalDriveBackupPolicyChangedDetails.new_value.validator = ExternalDriveBackupPolicy_validator ExternalDriveBackupPolicyChangedDetails.previous_value.validator = ExternalDriveBackupPolicy_validator ExternalDriveBackupPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) ExternalDriveBackupPolicyChangedDetails._all_fields_ = [ ('new_value', ExternalDriveBackupPolicyChangedDetails.new_value.validator), ('previous_value', ExternalDriveBackupPolicyChangedDetails.previous_value.validator), ] ExternalDriveBackupPolicyChangedType.description.validator = bv.String() ExternalDriveBackupPolicyChangedType._all_field_names_ = set(['description']) ExternalDriveBackupPolicyChangedType._all_fields_ = [('description', ExternalDriveBackupPolicyChangedType.description.validator)] ExternalDriveBackupStatus._broken_validator = bv.Void() ExternalDriveBackupStatus._created_validator = bv.Void() ExternalDriveBackupStatus._created_or_broken_validator = bv.Void() ExternalDriveBackupStatus._deleted_validator = bv.Void() ExternalDriveBackupStatus._empty_validator = bv.Void() ExternalDriveBackupStatus._unknown_validator = bv.Void() ExternalDriveBackupStatus._other_validator = bv.Void() ExternalDriveBackupStatus._tagmap = { 'broken': ExternalDriveBackupStatus._broken_validator, 'created': ExternalDriveBackupStatus._created_validator, 'created_or_broken': ExternalDriveBackupStatus._created_or_broken_validator, 'deleted': ExternalDriveBackupStatus._deleted_validator, 'empty': ExternalDriveBackupStatus._empty_validator, 'unknown': ExternalDriveBackupStatus._unknown_validator, 'other': ExternalDriveBackupStatus._other_validator, } ExternalDriveBackupStatus.broken = ExternalDriveBackupStatus('broken') ExternalDriveBackupStatus.created = ExternalDriveBackupStatus('created') ExternalDriveBackupStatus.created_or_broken = ExternalDriveBackupStatus('created_or_broken') ExternalDriveBackupStatus.deleted = ExternalDriveBackupStatus('deleted') ExternalDriveBackupStatus.empty = ExternalDriveBackupStatus('empty') ExternalDriveBackupStatus.unknown = ExternalDriveBackupStatus('unknown') ExternalDriveBackupStatus.other = ExternalDriveBackupStatus('other') ExternalDriveBackupStatusChangedDetails.desktop_device_session_info.validator = DesktopDeviceSessionLogInfo_validator ExternalDriveBackupStatusChangedDetails.previous_value.validator = ExternalDriveBackupStatus_validator ExternalDriveBackupStatusChangedDetails.new_value.validator = ExternalDriveBackupStatus_validator ExternalDriveBackupStatusChangedDetails._all_field_names_ = set([ 'desktop_device_session_info', 'previous_value', 'new_value', ]) ExternalDriveBackupStatusChangedDetails._all_fields_ = [ ('desktop_device_session_info', ExternalDriveBackupStatusChangedDetails.desktop_device_session_info.validator), ('previous_value', ExternalDriveBackupStatusChangedDetails.previous_value.validator), ('new_value', ExternalDriveBackupStatusChangedDetails.new_value.validator), ] ExternalDriveBackupStatusChangedType.description.validator = bv.String() ExternalDriveBackupStatusChangedType._all_field_names_ = set(['description']) ExternalDriveBackupStatusChangedType._all_fields_ = [('description', ExternalDriveBackupStatusChangedType.description.validator)] ExternalSharingCreateReportDetails._all_field_names_ = set([]) ExternalSharingCreateReportDetails._all_fields_ = [] ExternalSharingCreateReportType.description.validator = bv.String() ExternalSharingCreateReportType._all_field_names_ = set(['description']) ExternalSharingCreateReportType._all_fields_ = [('description', ExternalSharingCreateReportType.description.validator)] ExternalSharingReportFailedDetails.failure_reason.validator = team.TeamReportFailureReason_validator ExternalSharingReportFailedDetails._all_field_names_ = set(['failure_reason']) ExternalSharingReportFailedDetails._all_fields_ = [('failure_reason', ExternalSharingReportFailedDetails.failure_reason.validator)] ExternalSharingReportFailedType.description.validator = bv.String() ExternalSharingReportFailedType._all_field_names_ = set(['description']) ExternalSharingReportFailedType._all_fields_ = [('description', ExternalSharingReportFailedType.description.validator)] ExternalUserLogInfo.user_identifier.validator = bv.String() ExternalUserLogInfo.identifier_type.validator = IdentifierType_validator ExternalUserLogInfo._all_field_names_ = set([ 'user_identifier', 'identifier_type', ]) ExternalUserLogInfo._all_fields_ = [ ('user_identifier', ExternalUserLogInfo.user_identifier.validator), ('identifier_type', ExternalUserLogInfo.identifier_type.validator), ] FailureDetailsLogInfo.user_friendly_message.validator = bv.Nullable(bv.String()) FailureDetailsLogInfo.technical_error_message.validator = bv.Nullable(bv.String()) FailureDetailsLogInfo._all_field_names_ = set([ 'user_friendly_message', 'technical_error_message', ]) FailureDetailsLogInfo._all_fields_ = [ ('user_friendly_message', FailureDetailsLogInfo.user_friendly_message.validator), ('technical_error_message', FailureDetailsLogInfo.technical_error_message.validator), ] FedAdminRole._enterprise_admin_validator = bv.Void() FedAdminRole._not_enterprise_admin_validator = bv.Void() FedAdminRole._other_validator = bv.Void() FedAdminRole._tagmap = { 'enterprise_admin': FedAdminRole._enterprise_admin_validator, 'not_enterprise_admin': FedAdminRole._not_enterprise_admin_validator, 'other': FedAdminRole._other_validator, } FedAdminRole.enterprise_admin = FedAdminRole('enterprise_admin') FedAdminRole.not_enterprise_admin = FedAdminRole('not_enterprise_admin') FedAdminRole.other = FedAdminRole('other') FedExtraDetails._organization_validator = OrganizationDetails_validator FedExtraDetails._team_validator = TeamDetails_validator FedExtraDetails._other_validator = bv.Void() FedExtraDetails._tagmap = { 'organization': FedExtraDetails._organization_validator, 'team': FedExtraDetails._team_validator, 'other': FedExtraDetails._other_validator, } FedExtraDetails.other = FedExtraDetails('other') FedHandshakeAction._accepted_invite_validator = bv.Void() FedHandshakeAction._canceled_invite_validator = bv.Void() FedHandshakeAction._invite_expired_validator = bv.Void() FedHandshakeAction._invited_validator = bv.Void() FedHandshakeAction._rejected_invite_validator = bv.Void() FedHandshakeAction._removed_team_validator = bv.Void() FedHandshakeAction._other_validator = bv.Void() FedHandshakeAction._tagmap = { 'accepted_invite': FedHandshakeAction._accepted_invite_validator, 'canceled_invite': FedHandshakeAction._canceled_invite_validator, 'invite_expired': FedHandshakeAction._invite_expired_validator, 'invited': FedHandshakeAction._invited_validator, 'rejected_invite': FedHandshakeAction._rejected_invite_validator, 'removed_team': FedHandshakeAction._removed_team_validator, 'other': FedHandshakeAction._other_validator, } FedHandshakeAction.accepted_invite = FedHandshakeAction('accepted_invite') FedHandshakeAction.canceled_invite = FedHandshakeAction('canceled_invite') FedHandshakeAction.invite_expired = FedHandshakeAction('invite_expired') FedHandshakeAction.invited = FedHandshakeAction('invited') FedHandshakeAction.rejected_invite = FedHandshakeAction('rejected_invite') FedHandshakeAction.removed_team = FedHandshakeAction('removed_team') FedHandshakeAction.other = FedHandshakeAction('other') FederationStatusChangeAdditionalInfo._connected_team_name_validator = ConnectedTeamName_validator FederationStatusChangeAdditionalInfo._non_trusted_team_details_validator = NonTrustedTeamDetails_validator FederationStatusChangeAdditionalInfo._organization_name_validator = OrganizationName_validator FederationStatusChangeAdditionalInfo._other_validator = bv.Void() FederationStatusChangeAdditionalInfo._tagmap = { 'connected_team_name': FederationStatusChangeAdditionalInfo._connected_team_name_validator, 'non_trusted_team_details': FederationStatusChangeAdditionalInfo._non_trusted_team_details_validator, 'organization_name': FederationStatusChangeAdditionalInfo._organization_name_validator, 'other': FederationStatusChangeAdditionalInfo._other_validator, } FederationStatusChangeAdditionalInfo.other = FederationStatusChangeAdditionalInfo('other') FileAddCommentDetails.comment_text.validator = bv.Nullable(bv.String()) FileAddCommentDetails._all_field_names_ = set(['comment_text']) FileAddCommentDetails._all_fields_ = [('comment_text', FileAddCommentDetails.comment_text.validator)] FileAddCommentType.description.validator = bv.String() FileAddCommentType._all_field_names_ = set(['description']) FileAddCommentType._all_fields_ = [('description', FileAddCommentType.description.validator)] FileAddDetails._all_field_names_ = set([]) FileAddDetails._all_fields_ = [] FileAddFromAutomationDetails._all_field_names_ = set([]) FileAddFromAutomationDetails._all_fields_ = [] FileAddFromAutomationType.description.validator = bv.String() FileAddFromAutomationType._all_field_names_ = set(['description']) FileAddFromAutomationType._all_fields_ = [('description', FileAddFromAutomationType.description.validator)] FileAddType.description.validator = bv.String() FileAddType._all_field_names_ = set(['description']) FileAddType._all_fields_ = [('description', FileAddType.description.validator)] FileChangeCommentSubscriptionDetails.new_value.validator = FileCommentNotificationPolicy_validator FileChangeCommentSubscriptionDetails.previous_value.validator = bv.Nullable(FileCommentNotificationPolicy_validator) FileChangeCommentSubscriptionDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) FileChangeCommentSubscriptionDetails._all_fields_ = [ ('new_value', FileChangeCommentSubscriptionDetails.new_value.validator), ('previous_value', FileChangeCommentSubscriptionDetails.previous_value.validator), ] FileChangeCommentSubscriptionType.description.validator = bv.String() FileChangeCommentSubscriptionType._all_field_names_ = set(['description']) FileChangeCommentSubscriptionType._all_fields_ = [('description', FileChangeCommentSubscriptionType.description.validator)] FileCommentNotificationPolicy._disabled_validator = bv.Void() FileCommentNotificationPolicy._enabled_validator = bv.Void() FileCommentNotificationPolicy._other_validator = bv.Void() FileCommentNotificationPolicy._tagmap = { 'disabled': FileCommentNotificationPolicy._disabled_validator, 'enabled': FileCommentNotificationPolicy._enabled_validator, 'other': FileCommentNotificationPolicy._other_validator, } FileCommentNotificationPolicy.disabled = FileCommentNotificationPolicy('disabled') FileCommentNotificationPolicy.enabled = FileCommentNotificationPolicy('enabled') FileCommentNotificationPolicy.other = FileCommentNotificationPolicy('other') FileCommentsChangePolicyDetails.new_value.validator = FileCommentsPolicy_validator FileCommentsChangePolicyDetails.previous_value.validator = bv.Nullable(FileCommentsPolicy_validator) FileCommentsChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) FileCommentsChangePolicyDetails._all_fields_ = [ ('new_value', FileCommentsChangePolicyDetails.new_value.validator), ('previous_value', FileCommentsChangePolicyDetails.previous_value.validator), ] FileCommentsChangePolicyType.description.validator = bv.String() FileCommentsChangePolicyType._all_field_names_ = set(['description']) FileCommentsChangePolicyType._all_fields_ = [('description', FileCommentsChangePolicyType.description.validator)] FileCommentsPolicy._disabled_validator = bv.Void() FileCommentsPolicy._enabled_validator = bv.Void() FileCommentsPolicy._other_validator = bv.Void() FileCommentsPolicy._tagmap = { 'disabled': FileCommentsPolicy._disabled_validator, 'enabled': FileCommentsPolicy._enabled_validator, 'other': FileCommentsPolicy._other_validator, } FileCommentsPolicy.disabled = FileCommentsPolicy('disabled') FileCommentsPolicy.enabled = FileCommentsPolicy('enabled') FileCommentsPolicy.other = FileCommentsPolicy('other') FileCopyDetails.relocate_action_details.validator = bv.List(RelocateAssetReferencesLogInfo_validator) FileCopyDetails._all_field_names_ = set(['relocate_action_details']) FileCopyDetails._all_fields_ = [('relocate_action_details', FileCopyDetails.relocate_action_details.validator)] FileCopyType.description.validator = bv.String() FileCopyType._all_field_names_ = set(['description']) FileCopyType._all_fields_ = [('description', FileCopyType.description.validator)] FileDeleteCommentDetails.comment_text.validator = bv.Nullable(bv.String()) FileDeleteCommentDetails._all_field_names_ = set(['comment_text']) FileDeleteCommentDetails._all_fields_ = [('comment_text', FileDeleteCommentDetails.comment_text.validator)] FileDeleteCommentType.description.validator = bv.String() FileDeleteCommentType._all_field_names_ = set(['description']) FileDeleteCommentType._all_fields_ = [('description', FileDeleteCommentType.description.validator)] FileDeleteDetails._all_field_names_ = set([]) FileDeleteDetails._all_fields_ = [] FileDeleteType.description.validator = bv.String() FileDeleteType._all_field_names_ = set(['description']) FileDeleteType._all_fields_ = [('description', FileDeleteType.description.validator)] FileDownloadDetails._all_field_names_ = set([]) FileDownloadDetails._all_fields_ = [] FileDownloadType.description.validator = bv.String() FileDownloadType._all_field_names_ = set(['description']) FileDownloadType._all_fields_ = [('description', FileDownloadType.description.validator)] FileEditCommentDetails.comment_text.validator = bv.Nullable(bv.String()) FileEditCommentDetails.previous_comment_text.validator = bv.String() FileEditCommentDetails._all_field_names_ = set([ 'comment_text', 'previous_comment_text', ]) FileEditCommentDetails._all_fields_ = [ ('comment_text', FileEditCommentDetails.comment_text.validator), ('previous_comment_text', FileEditCommentDetails.previous_comment_text.validator), ] FileEditCommentType.description.validator = bv.String() FileEditCommentType._all_field_names_ = set(['description']) FileEditCommentType._all_fields_ = [('description', FileEditCommentType.description.validator)] FileEditDetails._all_field_names_ = set([]) FileEditDetails._all_fields_ = [] FileEditType.description.validator = bv.String() FileEditType._all_field_names_ = set(['description']) FileEditType._all_fields_ = [('description', FileEditType.description.validator)] FileGetCopyReferenceDetails._all_field_names_ = set([]) FileGetCopyReferenceDetails._all_fields_ = [] FileGetCopyReferenceType.description.validator = bv.String() FileGetCopyReferenceType._all_field_names_ = set(['description']) FileGetCopyReferenceType._all_fields_ = [('description', FileGetCopyReferenceType.description.validator)] FileLikeCommentDetails.comment_text.validator = bv.Nullable(bv.String()) FileLikeCommentDetails._all_field_names_ = set(['comment_text']) FileLikeCommentDetails._all_fields_ = [('comment_text', FileLikeCommentDetails.comment_text.validator)] FileLikeCommentType.description.validator = bv.String() FileLikeCommentType._all_field_names_ = set(['description']) FileLikeCommentType._all_fields_ = [('description', FileLikeCommentType.description.validator)] FileLockingLockStatusChangedDetails.previous_value.validator = LockStatus_validator FileLockingLockStatusChangedDetails.new_value.validator = LockStatus_validator FileLockingLockStatusChangedDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) FileLockingLockStatusChangedDetails._all_fields_ = [ ('previous_value', FileLockingLockStatusChangedDetails.previous_value.validator), ('new_value', FileLockingLockStatusChangedDetails.new_value.validator), ] FileLockingLockStatusChangedType.description.validator = bv.String() FileLockingLockStatusChangedType._all_field_names_ = set(['description']) FileLockingLockStatusChangedType._all_fields_ = [('description', FileLockingLockStatusChangedType.description.validator)] FileLockingPolicyChangedDetails.new_value.validator = team_policies.FileLockingPolicyState_validator FileLockingPolicyChangedDetails.previous_value.validator = team_policies.FileLockingPolicyState_validator FileLockingPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) FileLockingPolicyChangedDetails._all_fields_ = [ ('new_value', FileLockingPolicyChangedDetails.new_value.validator), ('previous_value', FileLockingPolicyChangedDetails.previous_value.validator), ] FileLockingPolicyChangedType.description.validator = bv.String() FileLockingPolicyChangedType._all_field_names_ = set(['description']) FileLockingPolicyChangedType._all_fields_ = [('description', FileLockingPolicyChangedType.description.validator)] FileOrFolderLogInfo.path.validator = PathLogInfo_validator FileOrFolderLogInfo.display_name.validator = bv.Nullable(bv.String()) FileOrFolderLogInfo.file_id.validator = bv.Nullable(bv.String()) FileOrFolderLogInfo.file_size.validator = bv.Nullable(bv.UInt64()) FileOrFolderLogInfo._all_field_names_ = set([ 'path', 'display_name', 'file_id', 'file_size', ]) FileOrFolderLogInfo._all_fields_ = [ ('path', FileOrFolderLogInfo.path.validator), ('display_name', FileOrFolderLogInfo.display_name.validator), ('file_id', FileOrFolderLogInfo.file_id.validator), ('file_size', FileOrFolderLogInfo.file_size.validator), ] FileLogInfo._all_field_names_ = FileOrFolderLogInfo._all_field_names_.union(set([])) FileLogInfo._all_fields_ = FileOrFolderLogInfo._all_fields_ + [] FileMoveDetails.relocate_action_details.validator = bv.List(RelocateAssetReferencesLogInfo_validator) FileMoveDetails._all_field_names_ = set(['relocate_action_details']) FileMoveDetails._all_fields_ = [('relocate_action_details', FileMoveDetails.relocate_action_details.validator)] FileMoveType.description.validator = bv.String() FileMoveType._all_field_names_ = set(['description']) FileMoveType._all_fields_ = [('description', FileMoveType.description.validator)] FilePermanentlyDeleteDetails._all_field_names_ = set([]) FilePermanentlyDeleteDetails._all_fields_ = [] FilePermanentlyDeleteType.description.validator = bv.String() FilePermanentlyDeleteType._all_field_names_ = set(['description']) FilePermanentlyDeleteType._all_fields_ = [('description', FilePermanentlyDeleteType.description.validator)] FilePreviewDetails._all_field_names_ = set([]) FilePreviewDetails._all_fields_ = [] FilePreviewType.description.validator = bv.String() FilePreviewType._all_field_names_ = set(['description']) FilePreviewType._all_fields_ = [('description', FilePreviewType.description.validator)] FileProviderMigrationPolicyChangedDetails.new_value.validator = team_policies.FileProviderMigrationPolicyState_validator FileProviderMigrationPolicyChangedDetails.previous_value.validator = team_policies.FileProviderMigrationPolicyState_validator FileProviderMigrationPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) FileProviderMigrationPolicyChangedDetails._all_fields_ = [ ('new_value', FileProviderMigrationPolicyChangedDetails.new_value.validator), ('previous_value', FileProviderMigrationPolicyChangedDetails.previous_value.validator), ] FileProviderMigrationPolicyChangedType.description.validator = bv.String() FileProviderMigrationPolicyChangedType._all_field_names_ = set(['description']) FileProviderMigrationPolicyChangedType._all_fields_ = [('description', FileProviderMigrationPolicyChangedType.description.validator)] FileRenameDetails.relocate_action_details.validator = bv.List(RelocateAssetReferencesLogInfo_validator) FileRenameDetails._all_field_names_ = set(['relocate_action_details']) FileRenameDetails._all_fields_ = [('relocate_action_details', FileRenameDetails.relocate_action_details.validator)] FileRenameType.description.validator = bv.String() FileRenameType._all_field_names_ = set(['description']) FileRenameType._all_fields_ = [('description', FileRenameType.description.validator)] FileRequestChangeDetails.file_request_id.validator = bv.Nullable(file_requests.FileRequestId_validator) FileRequestChangeDetails.previous_details.validator = bv.Nullable(FileRequestDetails_validator) FileRequestChangeDetails.new_details.validator = FileRequestDetails_validator FileRequestChangeDetails._all_field_names_ = set([ 'file_request_id', 'previous_details', 'new_details', ]) FileRequestChangeDetails._all_fields_ = [ ('file_request_id', FileRequestChangeDetails.file_request_id.validator), ('previous_details', FileRequestChangeDetails.previous_details.validator), ('new_details', FileRequestChangeDetails.new_details.validator), ] FileRequestChangeType.description.validator = bv.String() FileRequestChangeType._all_field_names_ = set(['description']) FileRequestChangeType._all_fields_ = [('description', FileRequestChangeType.description.validator)] FileRequestCloseDetails.file_request_id.validator = bv.Nullable(file_requests.FileRequestId_validator) FileRequestCloseDetails.previous_details.validator = bv.Nullable(FileRequestDetails_validator) FileRequestCloseDetails._all_field_names_ = set([ 'file_request_id', 'previous_details', ]) FileRequestCloseDetails._all_fields_ = [ ('file_request_id', FileRequestCloseDetails.file_request_id.validator), ('previous_details', FileRequestCloseDetails.previous_details.validator), ] FileRequestCloseType.description.validator = bv.String() FileRequestCloseType._all_field_names_ = set(['description']) FileRequestCloseType._all_fields_ = [('description', FileRequestCloseType.description.validator)] FileRequestCreateDetails.file_request_id.validator = bv.Nullable(file_requests.FileRequestId_validator) FileRequestCreateDetails.request_details.validator = bv.Nullable(FileRequestDetails_validator) FileRequestCreateDetails._all_field_names_ = set([ 'file_request_id', 'request_details', ]) FileRequestCreateDetails._all_fields_ = [ ('file_request_id', FileRequestCreateDetails.file_request_id.validator), ('request_details', FileRequestCreateDetails.request_details.validator), ] FileRequestCreateType.description.validator = bv.String() FileRequestCreateType._all_field_names_ = set(['description']) FileRequestCreateType._all_fields_ = [('description', FileRequestCreateType.description.validator)] FileRequestDeadline.deadline.validator = bv.Nullable(common.DropboxTimestamp_validator) FileRequestDeadline.allow_late_uploads.validator = bv.Nullable(bv.String()) FileRequestDeadline._all_field_names_ = set([ 'deadline', 'allow_late_uploads', ]) FileRequestDeadline._all_fields_ = [ ('deadline', FileRequestDeadline.deadline.validator), ('allow_late_uploads', FileRequestDeadline.allow_late_uploads.validator), ] FileRequestDeleteDetails.file_request_id.validator = bv.Nullable(file_requests.FileRequestId_validator) FileRequestDeleteDetails.previous_details.validator = bv.Nullable(FileRequestDetails_validator) FileRequestDeleteDetails._all_field_names_ = set([ 'file_request_id', 'previous_details', ]) FileRequestDeleteDetails._all_fields_ = [ ('file_request_id', FileRequestDeleteDetails.file_request_id.validator), ('previous_details', FileRequestDeleteDetails.previous_details.validator), ] FileRequestDeleteType.description.validator = bv.String() FileRequestDeleteType._all_field_names_ = set(['description']) FileRequestDeleteType._all_fields_ = [('description', FileRequestDeleteType.description.validator)] FileRequestDetails.asset_index.validator = bv.UInt64() FileRequestDetails.deadline.validator = bv.Nullable(FileRequestDeadline_validator) FileRequestDetails._all_field_names_ = set([ 'asset_index', 'deadline', ]) FileRequestDetails._all_fields_ = [ ('asset_index', FileRequestDetails.asset_index.validator), ('deadline', FileRequestDetails.deadline.validator), ] FileRequestReceiveFileDetails.file_request_id.validator = bv.Nullable(file_requests.FileRequestId_validator) FileRequestReceiveFileDetails.file_request_details.validator = bv.Nullable(FileRequestDetails_validator) FileRequestReceiveFileDetails.submitted_file_names.validator = bv.List(bv.String()) FileRequestReceiveFileDetails.submitter_name.validator = bv.Nullable(common.DisplayNameLegacy_validator) FileRequestReceiveFileDetails.submitter_email.validator = bv.Nullable(EmailAddress_validator) FileRequestReceiveFileDetails._all_field_names_ = set([ 'file_request_id', 'file_request_details', 'submitted_file_names', 'submitter_name', 'submitter_email', ]) FileRequestReceiveFileDetails._all_fields_ = [ ('file_request_id', FileRequestReceiveFileDetails.file_request_id.validator), ('file_request_details', FileRequestReceiveFileDetails.file_request_details.validator), ('submitted_file_names', FileRequestReceiveFileDetails.submitted_file_names.validator), ('submitter_name', FileRequestReceiveFileDetails.submitter_name.validator), ('submitter_email', FileRequestReceiveFileDetails.submitter_email.validator), ] FileRequestReceiveFileType.description.validator = bv.String() FileRequestReceiveFileType._all_field_names_ = set(['description']) FileRequestReceiveFileType._all_fields_ = [('description', FileRequestReceiveFileType.description.validator)] FileRequestsChangePolicyDetails.new_value.validator = FileRequestsPolicy_validator FileRequestsChangePolicyDetails.previous_value.validator = bv.Nullable(FileRequestsPolicy_validator) FileRequestsChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) FileRequestsChangePolicyDetails._all_fields_ = [ ('new_value', FileRequestsChangePolicyDetails.new_value.validator), ('previous_value', FileRequestsChangePolicyDetails.previous_value.validator), ] FileRequestsChangePolicyType.description.validator = bv.String() FileRequestsChangePolicyType._all_field_names_ = set(['description']) FileRequestsChangePolicyType._all_fields_ = [('description', FileRequestsChangePolicyType.description.validator)] FileRequestsEmailsEnabledDetails._all_field_names_ = set([]) FileRequestsEmailsEnabledDetails._all_fields_ = [] FileRequestsEmailsEnabledType.description.validator = bv.String() FileRequestsEmailsEnabledType._all_field_names_ = set(['description']) FileRequestsEmailsEnabledType._all_fields_ = [('description', FileRequestsEmailsEnabledType.description.validator)] FileRequestsEmailsRestrictedToTeamOnlyDetails._all_field_names_ = set([]) FileRequestsEmailsRestrictedToTeamOnlyDetails._all_fields_ = [] FileRequestsEmailsRestrictedToTeamOnlyType.description.validator = bv.String() FileRequestsEmailsRestrictedToTeamOnlyType._all_field_names_ = set(['description']) FileRequestsEmailsRestrictedToTeamOnlyType._all_fields_ = [('description', FileRequestsEmailsRestrictedToTeamOnlyType.description.validator)] FileRequestsPolicy._disabled_validator = bv.Void() FileRequestsPolicy._enabled_validator = bv.Void() FileRequestsPolicy._other_validator = bv.Void() FileRequestsPolicy._tagmap = { 'disabled': FileRequestsPolicy._disabled_validator, 'enabled': FileRequestsPolicy._enabled_validator, 'other': FileRequestsPolicy._other_validator, } FileRequestsPolicy.disabled = FileRequestsPolicy('disabled') FileRequestsPolicy.enabled = FileRequestsPolicy('enabled') FileRequestsPolicy.other = FileRequestsPolicy('other') FileResolveCommentDetails.comment_text.validator = bv.Nullable(bv.String()) FileResolveCommentDetails._all_field_names_ = set(['comment_text']) FileResolveCommentDetails._all_fields_ = [('comment_text', FileResolveCommentDetails.comment_text.validator)] FileResolveCommentType.description.validator = bv.String() FileResolveCommentType._all_field_names_ = set(['description']) FileResolveCommentType._all_fields_ = [('description', FileResolveCommentType.description.validator)] FileRestoreDetails._all_field_names_ = set([]) FileRestoreDetails._all_fields_ = [] FileRestoreType.description.validator = bv.String() FileRestoreType._all_field_names_ = set(['description']) FileRestoreType._all_fields_ = [('description', FileRestoreType.description.validator)] FileRevertDetails._all_field_names_ = set([]) FileRevertDetails._all_fields_ = [] FileRevertType.description.validator = bv.String() FileRevertType._all_field_names_ = set(['description']) FileRevertType._all_fields_ = [('description', FileRevertType.description.validator)] FileRollbackChangesDetails._all_field_names_ = set([]) FileRollbackChangesDetails._all_fields_ = [] FileRollbackChangesType.description.validator = bv.String() FileRollbackChangesType._all_field_names_ = set(['description']) FileRollbackChangesType._all_fields_ = [('description', FileRollbackChangesType.description.validator)] FileSaveCopyReferenceDetails.relocate_action_details.validator = bv.List(RelocateAssetReferencesLogInfo_validator) FileSaveCopyReferenceDetails._all_field_names_ = set(['relocate_action_details']) FileSaveCopyReferenceDetails._all_fields_ = [('relocate_action_details', FileSaveCopyReferenceDetails.relocate_action_details.validator)] FileSaveCopyReferenceType.description.validator = bv.String() FileSaveCopyReferenceType._all_field_names_ = set(['description']) FileSaveCopyReferenceType._all_fields_ = [('description', FileSaveCopyReferenceType.description.validator)] FileTransfersFileAddDetails.file_transfer_id.validator = bv.String() FileTransfersFileAddDetails._all_field_names_ = set(['file_transfer_id']) FileTransfersFileAddDetails._all_fields_ = [('file_transfer_id', FileTransfersFileAddDetails.file_transfer_id.validator)] FileTransfersFileAddType.description.validator = bv.String() FileTransfersFileAddType._all_field_names_ = set(['description']) FileTransfersFileAddType._all_fields_ = [('description', FileTransfersFileAddType.description.validator)] FileTransfersPolicy._disabled_validator = bv.Void() FileTransfersPolicy._enabled_validator = bv.Void() FileTransfersPolicy._other_validator = bv.Void() FileTransfersPolicy._tagmap = { 'disabled': FileTransfersPolicy._disabled_validator, 'enabled': FileTransfersPolicy._enabled_validator, 'other': FileTransfersPolicy._other_validator, } FileTransfersPolicy.disabled = FileTransfersPolicy('disabled') FileTransfersPolicy.enabled = FileTransfersPolicy('enabled') FileTransfersPolicy.other = FileTransfersPolicy('other') FileTransfersPolicyChangedDetails.new_value.validator = FileTransfersPolicy_validator FileTransfersPolicyChangedDetails.previous_value.validator = FileTransfersPolicy_validator FileTransfersPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) FileTransfersPolicyChangedDetails._all_fields_ = [ ('new_value', FileTransfersPolicyChangedDetails.new_value.validator), ('previous_value', FileTransfersPolicyChangedDetails.previous_value.validator), ] FileTransfersPolicyChangedType.description.validator = bv.String() FileTransfersPolicyChangedType._all_field_names_ = set(['description']) FileTransfersPolicyChangedType._all_fields_ = [('description', FileTransfersPolicyChangedType.description.validator)] FileTransfersTransferDeleteDetails.file_transfer_id.validator = bv.String() FileTransfersTransferDeleteDetails._all_field_names_ = set(['file_transfer_id']) FileTransfersTransferDeleteDetails._all_fields_ = [('file_transfer_id', FileTransfersTransferDeleteDetails.file_transfer_id.validator)] FileTransfersTransferDeleteType.description.validator = bv.String() FileTransfersTransferDeleteType._all_field_names_ = set(['description']) FileTransfersTransferDeleteType._all_fields_ = [('description', FileTransfersTransferDeleteType.description.validator)] FileTransfersTransferDownloadDetails.file_transfer_id.validator = bv.String() FileTransfersTransferDownloadDetails._all_field_names_ = set(['file_transfer_id']) FileTransfersTransferDownloadDetails._all_fields_ = [('file_transfer_id', FileTransfersTransferDownloadDetails.file_transfer_id.validator)] FileTransfersTransferDownloadType.description.validator = bv.String() FileTransfersTransferDownloadType._all_field_names_ = set(['description']) FileTransfersTransferDownloadType._all_fields_ = [('description', FileTransfersTransferDownloadType.description.validator)] FileTransfersTransferSendDetails.file_transfer_id.validator = bv.String() FileTransfersTransferSendDetails._all_field_names_ = set(['file_transfer_id']) FileTransfersTransferSendDetails._all_fields_ = [('file_transfer_id', FileTransfersTransferSendDetails.file_transfer_id.validator)] FileTransfersTransferSendType.description.validator = bv.String() FileTransfersTransferSendType._all_field_names_ = set(['description']) FileTransfersTransferSendType._all_fields_ = [('description', FileTransfersTransferSendType.description.validator)] FileTransfersTransferViewDetails.file_transfer_id.validator = bv.String() FileTransfersTransferViewDetails._all_field_names_ = set(['file_transfer_id']) FileTransfersTransferViewDetails._all_fields_ = [('file_transfer_id', FileTransfersTransferViewDetails.file_transfer_id.validator)] FileTransfersTransferViewType.description.validator = bv.String() FileTransfersTransferViewType._all_field_names_ = set(['description']) FileTransfersTransferViewType._all_fields_ = [('description', FileTransfersTransferViewType.description.validator)] FileUnlikeCommentDetails.comment_text.validator = bv.Nullable(bv.String()) FileUnlikeCommentDetails._all_field_names_ = set(['comment_text']) FileUnlikeCommentDetails._all_fields_ = [('comment_text', FileUnlikeCommentDetails.comment_text.validator)] FileUnlikeCommentType.description.validator = bv.String() FileUnlikeCommentType._all_field_names_ = set(['description']) FileUnlikeCommentType._all_fields_ = [('description', FileUnlikeCommentType.description.validator)] FileUnresolveCommentDetails.comment_text.validator = bv.Nullable(bv.String()) FileUnresolveCommentDetails._all_field_names_ = set(['comment_text']) FileUnresolveCommentDetails._all_fields_ = [('comment_text', FileUnresolveCommentDetails.comment_text.validator)] FileUnresolveCommentType.description.validator = bv.String() FileUnresolveCommentType._all_field_names_ = set(['description']) FileUnresolveCommentType._all_fields_ = [('description', FileUnresolveCommentType.description.validator)] FolderLinkRestrictionPolicy._disabled_validator = bv.Void() FolderLinkRestrictionPolicy._enabled_validator = bv.Void() FolderLinkRestrictionPolicy._other_validator = bv.Void() FolderLinkRestrictionPolicy._tagmap = { 'disabled': FolderLinkRestrictionPolicy._disabled_validator, 'enabled': FolderLinkRestrictionPolicy._enabled_validator, 'other': FolderLinkRestrictionPolicy._other_validator, } FolderLinkRestrictionPolicy.disabled = FolderLinkRestrictionPolicy('disabled') FolderLinkRestrictionPolicy.enabled = FolderLinkRestrictionPolicy('enabled') FolderLinkRestrictionPolicy.other = FolderLinkRestrictionPolicy('other') FolderLinkRestrictionPolicyChangedDetails.new_value.validator = FolderLinkRestrictionPolicy_validator FolderLinkRestrictionPolicyChangedDetails.previous_value.validator = FolderLinkRestrictionPolicy_validator FolderLinkRestrictionPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) FolderLinkRestrictionPolicyChangedDetails._all_fields_ = [ ('new_value', FolderLinkRestrictionPolicyChangedDetails.new_value.validator), ('previous_value', FolderLinkRestrictionPolicyChangedDetails.previous_value.validator), ] FolderLinkRestrictionPolicyChangedType.description.validator = bv.String() FolderLinkRestrictionPolicyChangedType._all_field_names_ = set(['description']) FolderLinkRestrictionPolicyChangedType._all_fields_ = [('description', FolderLinkRestrictionPolicyChangedType.description.validator)] FolderLogInfo.file_count.validator = bv.Nullable(bv.UInt64()) FolderLogInfo._all_field_names_ = FileOrFolderLogInfo._all_field_names_.union(set(['file_count'])) FolderLogInfo._all_fields_ = FileOrFolderLogInfo._all_fields_ + [('file_count', FolderLogInfo.file_count.validator)] FolderOverviewDescriptionChangedDetails.folder_overview_location_asset.validator = bv.UInt64() FolderOverviewDescriptionChangedDetails._all_field_names_ = set(['folder_overview_location_asset']) FolderOverviewDescriptionChangedDetails._all_fields_ = [('folder_overview_location_asset', FolderOverviewDescriptionChangedDetails.folder_overview_location_asset.validator)] FolderOverviewDescriptionChangedType.description.validator = bv.String() FolderOverviewDescriptionChangedType._all_field_names_ = set(['description']) FolderOverviewDescriptionChangedType._all_fields_ = [('description', FolderOverviewDescriptionChangedType.description.validator)] FolderOverviewItemPinnedDetails.folder_overview_location_asset.validator = bv.UInt64() FolderOverviewItemPinnedDetails.pinned_items_asset_indices.validator = bv.List(bv.UInt64()) FolderOverviewItemPinnedDetails._all_field_names_ = set([ 'folder_overview_location_asset', 'pinned_items_asset_indices', ]) FolderOverviewItemPinnedDetails._all_fields_ = [ ('folder_overview_location_asset', FolderOverviewItemPinnedDetails.folder_overview_location_asset.validator), ('pinned_items_asset_indices', FolderOverviewItemPinnedDetails.pinned_items_asset_indices.validator), ] FolderOverviewItemPinnedType.description.validator = bv.String() FolderOverviewItemPinnedType._all_field_names_ = set(['description']) FolderOverviewItemPinnedType._all_fields_ = [('description', FolderOverviewItemPinnedType.description.validator)] FolderOverviewItemUnpinnedDetails.folder_overview_location_asset.validator = bv.UInt64() FolderOverviewItemUnpinnedDetails.pinned_items_asset_indices.validator = bv.List(bv.UInt64()) FolderOverviewItemUnpinnedDetails._all_field_names_ = set([ 'folder_overview_location_asset', 'pinned_items_asset_indices', ]) FolderOverviewItemUnpinnedDetails._all_fields_ = [ ('folder_overview_location_asset', FolderOverviewItemUnpinnedDetails.folder_overview_location_asset.validator), ('pinned_items_asset_indices', FolderOverviewItemUnpinnedDetails.pinned_items_asset_indices.validator), ] FolderOverviewItemUnpinnedType.description.validator = bv.String() FolderOverviewItemUnpinnedType._all_field_names_ = set(['description']) FolderOverviewItemUnpinnedType._all_fields_ = [('description', FolderOverviewItemUnpinnedType.description.validator)] GeoLocationLogInfo.city.validator = bv.Nullable(bv.String()) GeoLocationLogInfo.region.validator = bv.Nullable(bv.String()) GeoLocationLogInfo.country.validator = bv.Nullable(bv.String()) GeoLocationLogInfo.ip_address.validator = IpAddress_validator GeoLocationLogInfo._all_field_names_ = set([ 'city', 'region', 'country', 'ip_address', ]) GeoLocationLogInfo._all_fields_ = [ ('city', GeoLocationLogInfo.city.validator), ('region', GeoLocationLogInfo.region.validator), ('country', GeoLocationLogInfo.country.validator), ('ip_address', GeoLocationLogInfo.ip_address.validator), ] GetTeamEventsArg.limit.validator = bv.UInt32(min_value=1, max_value=1000) GetTeamEventsArg.account_id.validator = bv.Nullable(users_common.AccountId_validator) GetTeamEventsArg.time.validator = bv.Nullable(team_common.TimeRange_validator) GetTeamEventsArg.category.validator = bv.Nullable(EventCategory_validator) GetTeamEventsArg.event_type.validator = bv.Nullable(EventTypeArg_validator) GetTeamEventsArg._all_field_names_ = set([ 'limit', 'account_id', 'time', 'category', 'event_type', ]) GetTeamEventsArg._all_fields_ = [ ('limit', GetTeamEventsArg.limit.validator), ('account_id', GetTeamEventsArg.account_id.validator), ('time', GetTeamEventsArg.time.validator), ('category', GetTeamEventsArg.category.validator), ('event_type', GetTeamEventsArg.event_type.validator), ] GetTeamEventsContinueArg.cursor.validator = bv.String() GetTeamEventsContinueArg._all_field_names_ = set(['cursor']) GetTeamEventsContinueArg._all_fields_ = [('cursor', GetTeamEventsContinueArg.cursor.validator)] GetTeamEventsContinueError._bad_cursor_validator = bv.Void() GetTeamEventsContinueError._reset_validator = common.DropboxTimestamp_validator GetTeamEventsContinueError._other_validator = bv.Void() GetTeamEventsContinueError._tagmap = { 'bad_cursor': GetTeamEventsContinueError._bad_cursor_validator, 'reset': GetTeamEventsContinueError._reset_validator, 'other': GetTeamEventsContinueError._other_validator, } GetTeamEventsContinueError.bad_cursor = GetTeamEventsContinueError('bad_cursor') GetTeamEventsContinueError.other = GetTeamEventsContinueError('other') GetTeamEventsError._account_id_not_found_validator = bv.Void() GetTeamEventsError._invalid_time_range_validator = bv.Void() GetTeamEventsError._invalid_filters_validator = bv.Void() GetTeamEventsError._other_validator = bv.Void() GetTeamEventsError._tagmap = { 'account_id_not_found': GetTeamEventsError._account_id_not_found_validator, 'invalid_time_range': GetTeamEventsError._invalid_time_range_validator, 'invalid_filters': GetTeamEventsError._invalid_filters_validator, 'other': GetTeamEventsError._other_validator, } GetTeamEventsError.account_id_not_found = GetTeamEventsError('account_id_not_found') GetTeamEventsError.invalid_time_range = GetTeamEventsError('invalid_time_range') GetTeamEventsError.invalid_filters = GetTeamEventsError('invalid_filters') GetTeamEventsError.other = GetTeamEventsError('other') GetTeamEventsResult.events.validator = bv.List(TeamEvent_validator) GetTeamEventsResult.cursor.validator = bv.String() GetTeamEventsResult.has_more.validator = bv.Boolean() GetTeamEventsResult._all_field_names_ = set([ 'events', 'cursor', 'has_more', ]) GetTeamEventsResult._all_fields_ = [ ('events', GetTeamEventsResult.events.validator), ('cursor', GetTeamEventsResult.cursor.validator), ('has_more', GetTeamEventsResult.has_more.validator), ] GoogleSsoChangePolicyDetails.new_value.validator = GoogleSsoPolicy_validator GoogleSsoChangePolicyDetails.previous_value.validator = bv.Nullable(GoogleSsoPolicy_validator) GoogleSsoChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) GoogleSsoChangePolicyDetails._all_fields_ = [ ('new_value', GoogleSsoChangePolicyDetails.new_value.validator), ('previous_value', GoogleSsoChangePolicyDetails.previous_value.validator), ] GoogleSsoChangePolicyType.description.validator = bv.String() GoogleSsoChangePolicyType._all_field_names_ = set(['description']) GoogleSsoChangePolicyType._all_fields_ = [('description', GoogleSsoChangePolicyType.description.validator)] GoogleSsoPolicy._disabled_validator = bv.Void() GoogleSsoPolicy._enabled_validator = bv.Void() GoogleSsoPolicy._other_validator = bv.Void() GoogleSsoPolicy._tagmap = { 'disabled': GoogleSsoPolicy._disabled_validator, 'enabled': GoogleSsoPolicy._enabled_validator, 'other': GoogleSsoPolicy._other_validator, } GoogleSsoPolicy.disabled = GoogleSsoPolicy('disabled') GoogleSsoPolicy.enabled = GoogleSsoPolicy('enabled') GoogleSsoPolicy.other = GoogleSsoPolicy('other') GovernancePolicyAddFolderFailedDetails.governance_policy_id.validator = bv.String() GovernancePolicyAddFolderFailedDetails.name.validator = bv.String() GovernancePolicyAddFolderFailedDetails.policy_type.validator = bv.Nullable(PolicyType_validator) GovernancePolicyAddFolderFailedDetails.folder.validator = bv.String() GovernancePolicyAddFolderFailedDetails.reason.validator = bv.Nullable(bv.String()) GovernancePolicyAddFolderFailedDetails._all_field_names_ = set([ 'governance_policy_id', 'name', 'policy_type', 'folder', 'reason', ]) GovernancePolicyAddFolderFailedDetails._all_fields_ = [ ('governance_policy_id', GovernancePolicyAddFolderFailedDetails.governance_policy_id.validator), ('name', GovernancePolicyAddFolderFailedDetails.name.validator), ('policy_type', GovernancePolicyAddFolderFailedDetails.policy_type.validator), ('folder', GovernancePolicyAddFolderFailedDetails.folder.validator), ('reason', GovernancePolicyAddFolderFailedDetails.reason.validator), ] GovernancePolicyAddFolderFailedType.description.validator = bv.String() GovernancePolicyAddFolderFailedType._all_field_names_ = set(['description']) GovernancePolicyAddFolderFailedType._all_fields_ = [('description', GovernancePolicyAddFolderFailedType.description.validator)] GovernancePolicyAddFoldersDetails.governance_policy_id.validator = bv.String() GovernancePolicyAddFoldersDetails.name.validator = bv.String() GovernancePolicyAddFoldersDetails.policy_type.validator = bv.Nullable(PolicyType_validator) GovernancePolicyAddFoldersDetails.folders.validator = bv.Nullable(bv.List(bv.String())) GovernancePolicyAddFoldersDetails._all_field_names_ = set([ 'governance_policy_id', 'name', 'policy_type', 'folders', ]) GovernancePolicyAddFoldersDetails._all_fields_ = [ ('governance_policy_id', GovernancePolicyAddFoldersDetails.governance_policy_id.validator), ('name', GovernancePolicyAddFoldersDetails.name.validator), ('policy_type', GovernancePolicyAddFoldersDetails.policy_type.validator), ('folders', GovernancePolicyAddFoldersDetails.folders.validator), ] GovernancePolicyAddFoldersType.description.validator = bv.String() GovernancePolicyAddFoldersType._all_field_names_ = set(['description']) GovernancePolicyAddFoldersType._all_fields_ = [('description', GovernancePolicyAddFoldersType.description.validator)] GovernancePolicyContentDisposedDetails.governance_policy_id.validator = bv.String() GovernancePolicyContentDisposedDetails.name.validator = bv.String() GovernancePolicyContentDisposedDetails.policy_type.validator = bv.Nullable(PolicyType_validator) GovernancePolicyContentDisposedDetails.disposition_type.validator = DispositionActionType_validator GovernancePolicyContentDisposedDetails._all_field_names_ = set([ 'governance_policy_id', 'name', 'policy_type', 'disposition_type', ]) GovernancePolicyContentDisposedDetails._all_fields_ = [ ('governance_policy_id', GovernancePolicyContentDisposedDetails.governance_policy_id.validator), ('name', GovernancePolicyContentDisposedDetails.name.validator), ('policy_type', GovernancePolicyContentDisposedDetails.policy_type.validator), ('disposition_type', GovernancePolicyContentDisposedDetails.disposition_type.validator), ] GovernancePolicyContentDisposedType.description.validator = bv.String() GovernancePolicyContentDisposedType._all_field_names_ = set(['description']) GovernancePolicyContentDisposedType._all_fields_ = [('description', GovernancePolicyContentDisposedType.description.validator)] GovernancePolicyCreateDetails.governance_policy_id.validator = bv.String() GovernancePolicyCreateDetails.name.validator = bv.String() GovernancePolicyCreateDetails.policy_type.validator = bv.Nullable(PolicyType_validator) GovernancePolicyCreateDetails.duration.validator = DurationLogInfo_validator GovernancePolicyCreateDetails.folders.validator = bv.Nullable(bv.List(bv.String())) GovernancePolicyCreateDetails._all_field_names_ = set([ 'governance_policy_id', 'name', 'policy_type', 'duration', 'folders', ]) GovernancePolicyCreateDetails._all_fields_ = [ ('governance_policy_id', GovernancePolicyCreateDetails.governance_policy_id.validator), ('name', GovernancePolicyCreateDetails.name.validator), ('policy_type', GovernancePolicyCreateDetails.policy_type.validator), ('duration', GovernancePolicyCreateDetails.duration.validator), ('folders', GovernancePolicyCreateDetails.folders.validator), ] GovernancePolicyCreateType.description.validator = bv.String() GovernancePolicyCreateType._all_field_names_ = set(['description']) GovernancePolicyCreateType._all_fields_ = [('description', GovernancePolicyCreateType.description.validator)] GovernancePolicyDeleteDetails.governance_policy_id.validator = bv.String() GovernancePolicyDeleteDetails.name.validator = bv.String() GovernancePolicyDeleteDetails.policy_type.validator = bv.Nullable(PolicyType_validator) GovernancePolicyDeleteDetails._all_field_names_ = set([ 'governance_policy_id', 'name', 'policy_type', ]) GovernancePolicyDeleteDetails._all_fields_ = [ ('governance_policy_id', GovernancePolicyDeleteDetails.governance_policy_id.validator), ('name', GovernancePolicyDeleteDetails.name.validator), ('policy_type', GovernancePolicyDeleteDetails.policy_type.validator), ] GovernancePolicyDeleteType.description.validator = bv.String() GovernancePolicyDeleteType._all_field_names_ = set(['description']) GovernancePolicyDeleteType._all_fields_ = [('description', GovernancePolicyDeleteType.description.validator)] GovernancePolicyEditDetailsDetails.governance_policy_id.validator = bv.String() GovernancePolicyEditDetailsDetails.name.validator = bv.String() GovernancePolicyEditDetailsDetails.policy_type.validator = bv.Nullable(PolicyType_validator) GovernancePolicyEditDetailsDetails.attribute.validator = bv.String() GovernancePolicyEditDetailsDetails.previous_value.validator = bv.String() GovernancePolicyEditDetailsDetails.new_value.validator = bv.String() GovernancePolicyEditDetailsDetails._all_field_names_ = set([ 'governance_policy_id', 'name', 'policy_type', 'attribute', 'previous_value', 'new_value', ]) GovernancePolicyEditDetailsDetails._all_fields_ = [ ('governance_policy_id', GovernancePolicyEditDetailsDetails.governance_policy_id.validator), ('name', GovernancePolicyEditDetailsDetails.name.validator), ('policy_type', GovernancePolicyEditDetailsDetails.policy_type.validator), ('attribute', GovernancePolicyEditDetailsDetails.attribute.validator), ('previous_value', GovernancePolicyEditDetailsDetails.previous_value.validator), ('new_value', GovernancePolicyEditDetailsDetails.new_value.validator), ] GovernancePolicyEditDetailsType.description.validator = bv.String() GovernancePolicyEditDetailsType._all_field_names_ = set(['description']) GovernancePolicyEditDetailsType._all_fields_ = [('description', GovernancePolicyEditDetailsType.description.validator)] GovernancePolicyEditDurationDetails.governance_policy_id.validator = bv.String() GovernancePolicyEditDurationDetails.name.validator = bv.String() GovernancePolicyEditDurationDetails.policy_type.validator = bv.Nullable(PolicyType_validator) GovernancePolicyEditDurationDetails.previous_value.validator = DurationLogInfo_validator GovernancePolicyEditDurationDetails.new_value.validator = DurationLogInfo_validator GovernancePolicyEditDurationDetails._all_field_names_ = set([ 'governance_policy_id', 'name', 'policy_type', 'previous_value', 'new_value', ]) GovernancePolicyEditDurationDetails._all_fields_ = [ ('governance_policy_id', GovernancePolicyEditDurationDetails.governance_policy_id.validator), ('name', GovernancePolicyEditDurationDetails.name.validator), ('policy_type', GovernancePolicyEditDurationDetails.policy_type.validator), ('previous_value', GovernancePolicyEditDurationDetails.previous_value.validator), ('new_value', GovernancePolicyEditDurationDetails.new_value.validator), ] GovernancePolicyEditDurationType.description.validator = bv.String() GovernancePolicyEditDurationType._all_field_names_ = set(['description']) GovernancePolicyEditDurationType._all_fields_ = [('description', GovernancePolicyEditDurationType.description.validator)] GovernancePolicyExportCreatedDetails.governance_policy_id.validator = bv.String() GovernancePolicyExportCreatedDetails.name.validator = bv.String() GovernancePolicyExportCreatedDetails.policy_type.validator = bv.Nullable(PolicyType_validator) GovernancePolicyExportCreatedDetails.export_name.validator = bv.String() GovernancePolicyExportCreatedDetails._all_field_names_ = set([ 'governance_policy_id', 'name', 'policy_type', 'export_name', ]) GovernancePolicyExportCreatedDetails._all_fields_ = [ ('governance_policy_id', GovernancePolicyExportCreatedDetails.governance_policy_id.validator), ('name', GovernancePolicyExportCreatedDetails.name.validator), ('policy_type', GovernancePolicyExportCreatedDetails.policy_type.validator), ('export_name', GovernancePolicyExportCreatedDetails.export_name.validator), ] GovernancePolicyExportCreatedType.description.validator = bv.String() GovernancePolicyExportCreatedType._all_field_names_ = set(['description']) GovernancePolicyExportCreatedType._all_fields_ = [('description', GovernancePolicyExportCreatedType.description.validator)] GovernancePolicyExportRemovedDetails.governance_policy_id.validator = bv.String() GovernancePolicyExportRemovedDetails.name.validator = bv.String() GovernancePolicyExportRemovedDetails.policy_type.validator = bv.Nullable(PolicyType_validator) GovernancePolicyExportRemovedDetails.export_name.validator = bv.String() GovernancePolicyExportRemovedDetails._all_field_names_ = set([ 'governance_policy_id', 'name', 'policy_type', 'export_name', ]) GovernancePolicyExportRemovedDetails._all_fields_ = [ ('governance_policy_id', GovernancePolicyExportRemovedDetails.governance_policy_id.validator), ('name', GovernancePolicyExportRemovedDetails.name.validator), ('policy_type', GovernancePolicyExportRemovedDetails.policy_type.validator), ('export_name', GovernancePolicyExportRemovedDetails.export_name.validator), ] GovernancePolicyExportRemovedType.description.validator = bv.String() GovernancePolicyExportRemovedType._all_field_names_ = set(['description']) GovernancePolicyExportRemovedType._all_fields_ = [('description', GovernancePolicyExportRemovedType.description.validator)] GovernancePolicyRemoveFoldersDetails.governance_policy_id.validator = bv.String() GovernancePolicyRemoveFoldersDetails.name.validator = bv.String() GovernancePolicyRemoveFoldersDetails.policy_type.validator = bv.Nullable(PolicyType_validator) GovernancePolicyRemoveFoldersDetails.folders.validator = bv.Nullable(bv.List(bv.String())) GovernancePolicyRemoveFoldersDetails.reason.validator = bv.Nullable(bv.String()) GovernancePolicyRemoveFoldersDetails._all_field_names_ = set([ 'governance_policy_id', 'name', 'policy_type', 'folders', 'reason', ]) GovernancePolicyRemoveFoldersDetails._all_fields_ = [ ('governance_policy_id', GovernancePolicyRemoveFoldersDetails.governance_policy_id.validator), ('name', GovernancePolicyRemoveFoldersDetails.name.validator), ('policy_type', GovernancePolicyRemoveFoldersDetails.policy_type.validator), ('folders', GovernancePolicyRemoveFoldersDetails.folders.validator), ('reason', GovernancePolicyRemoveFoldersDetails.reason.validator), ] GovernancePolicyRemoveFoldersType.description.validator = bv.String() GovernancePolicyRemoveFoldersType._all_field_names_ = set(['description']) GovernancePolicyRemoveFoldersType._all_fields_ = [('description', GovernancePolicyRemoveFoldersType.description.validator)] GovernancePolicyReportCreatedDetails.governance_policy_id.validator = bv.String() GovernancePolicyReportCreatedDetails.name.validator = bv.String() GovernancePolicyReportCreatedDetails.policy_type.validator = bv.Nullable(PolicyType_validator) GovernancePolicyReportCreatedDetails._all_field_names_ = set([ 'governance_policy_id', 'name', 'policy_type', ]) GovernancePolicyReportCreatedDetails._all_fields_ = [ ('governance_policy_id', GovernancePolicyReportCreatedDetails.governance_policy_id.validator), ('name', GovernancePolicyReportCreatedDetails.name.validator), ('policy_type', GovernancePolicyReportCreatedDetails.policy_type.validator), ] GovernancePolicyReportCreatedType.description.validator = bv.String() GovernancePolicyReportCreatedType._all_field_names_ = set(['description']) GovernancePolicyReportCreatedType._all_fields_ = [('description', GovernancePolicyReportCreatedType.description.validator)] GovernancePolicyZipPartDownloadedDetails.governance_policy_id.validator = bv.String() GovernancePolicyZipPartDownloadedDetails.name.validator = bv.String() GovernancePolicyZipPartDownloadedDetails.policy_type.validator = bv.Nullable(PolicyType_validator) GovernancePolicyZipPartDownloadedDetails.export_name.validator = bv.String() GovernancePolicyZipPartDownloadedDetails.part.validator = bv.Nullable(bv.String()) GovernancePolicyZipPartDownloadedDetails._all_field_names_ = set([ 'governance_policy_id', 'name', 'policy_type', 'export_name', 'part', ]) GovernancePolicyZipPartDownloadedDetails._all_fields_ = [ ('governance_policy_id', GovernancePolicyZipPartDownloadedDetails.governance_policy_id.validator), ('name', GovernancePolicyZipPartDownloadedDetails.name.validator), ('policy_type', GovernancePolicyZipPartDownloadedDetails.policy_type.validator), ('export_name', GovernancePolicyZipPartDownloadedDetails.export_name.validator), ('part', GovernancePolicyZipPartDownloadedDetails.part.validator), ] GovernancePolicyZipPartDownloadedType.description.validator = bv.String() GovernancePolicyZipPartDownloadedType._all_field_names_ = set(['description']) GovernancePolicyZipPartDownloadedType._all_fields_ = [('description', GovernancePolicyZipPartDownloadedType.description.validator)] GroupAddExternalIdDetails.new_value.validator = team_common.GroupExternalId_validator GroupAddExternalIdDetails._all_field_names_ = set(['new_value']) GroupAddExternalIdDetails._all_fields_ = [('new_value', GroupAddExternalIdDetails.new_value.validator)] GroupAddExternalIdType.description.validator = bv.String() GroupAddExternalIdType._all_field_names_ = set(['description']) GroupAddExternalIdType._all_fields_ = [('description', GroupAddExternalIdType.description.validator)] GroupAddMemberDetails.is_group_owner.validator = bv.Boolean() GroupAddMemberDetails._all_field_names_ = set(['is_group_owner']) GroupAddMemberDetails._all_fields_ = [('is_group_owner', GroupAddMemberDetails.is_group_owner.validator)] GroupAddMemberType.description.validator = bv.String() GroupAddMemberType._all_field_names_ = set(['description']) GroupAddMemberType._all_fields_ = [('description', GroupAddMemberType.description.validator)] GroupChangeExternalIdDetails.new_value.validator = team_common.GroupExternalId_validator GroupChangeExternalIdDetails.previous_value.validator = team_common.GroupExternalId_validator GroupChangeExternalIdDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) GroupChangeExternalIdDetails._all_fields_ = [ ('new_value', GroupChangeExternalIdDetails.new_value.validator), ('previous_value', GroupChangeExternalIdDetails.previous_value.validator), ] GroupChangeExternalIdType.description.validator = bv.String() GroupChangeExternalIdType._all_field_names_ = set(['description']) GroupChangeExternalIdType._all_fields_ = [('description', GroupChangeExternalIdType.description.validator)] GroupChangeManagementTypeDetails.new_value.validator = team_common.GroupManagementType_validator GroupChangeManagementTypeDetails.previous_value.validator = bv.Nullable(team_common.GroupManagementType_validator) GroupChangeManagementTypeDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) GroupChangeManagementTypeDetails._all_fields_ = [ ('new_value', GroupChangeManagementTypeDetails.new_value.validator), ('previous_value', GroupChangeManagementTypeDetails.previous_value.validator), ] GroupChangeManagementTypeType.description.validator = bv.String() GroupChangeManagementTypeType._all_field_names_ = set(['description']) GroupChangeManagementTypeType._all_fields_ = [('description', GroupChangeManagementTypeType.description.validator)] GroupChangeMemberRoleDetails.is_group_owner.validator = bv.Boolean() GroupChangeMemberRoleDetails._all_field_names_ = set(['is_group_owner']) GroupChangeMemberRoleDetails._all_fields_ = [('is_group_owner', GroupChangeMemberRoleDetails.is_group_owner.validator)] GroupChangeMemberRoleType.description.validator = bv.String() GroupChangeMemberRoleType._all_field_names_ = set(['description']) GroupChangeMemberRoleType._all_fields_ = [('description', GroupChangeMemberRoleType.description.validator)] GroupCreateDetails.is_company_managed.validator = bv.Nullable(bv.Boolean()) GroupCreateDetails.join_policy.validator = bv.Nullable(GroupJoinPolicy_validator) GroupCreateDetails._all_field_names_ = set([ 'is_company_managed', 'join_policy', ]) GroupCreateDetails._all_fields_ = [ ('is_company_managed', GroupCreateDetails.is_company_managed.validator), ('join_policy', GroupCreateDetails.join_policy.validator), ] GroupCreateType.description.validator = bv.String() GroupCreateType._all_field_names_ = set(['description']) GroupCreateType._all_fields_ = [('description', GroupCreateType.description.validator)] GroupDeleteDetails.is_company_managed.validator = bv.Nullable(bv.Boolean()) GroupDeleteDetails._all_field_names_ = set(['is_company_managed']) GroupDeleteDetails._all_fields_ = [('is_company_managed', GroupDeleteDetails.is_company_managed.validator)] GroupDeleteType.description.validator = bv.String() GroupDeleteType._all_field_names_ = set(['description']) GroupDeleteType._all_fields_ = [('description', GroupDeleteType.description.validator)] GroupDescriptionUpdatedDetails._all_field_names_ = set([]) GroupDescriptionUpdatedDetails._all_fields_ = [] GroupDescriptionUpdatedType.description.validator = bv.String() GroupDescriptionUpdatedType._all_field_names_ = set(['description']) GroupDescriptionUpdatedType._all_fields_ = [('description', GroupDescriptionUpdatedType.description.validator)] GroupJoinPolicy._open_validator = bv.Void() GroupJoinPolicy._request_to_join_validator = bv.Void() GroupJoinPolicy._other_validator = bv.Void() GroupJoinPolicy._tagmap = { 'open': GroupJoinPolicy._open_validator, 'request_to_join': GroupJoinPolicy._request_to_join_validator, 'other': GroupJoinPolicy._other_validator, } GroupJoinPolicy.open = GroupJoinPolicy('open') GroupJoinPolicy.request_to_join = GroupJoinPolicy('request_to_join') GroupJoinPolicy.other = GroupJoinPolicy('other') GroupJoinPolicyUpdatedDetails.is_company_managed.validator = bv.Nullable(bv.Boolean()) GroupJoinPolicyUpdatedDetails.join_policy.validator = bv.Nullable(GroupJoinPolicy_validator) GroupJoinPolicyUpdatedDetails._all_field_names_ = set([ 'is_company_managed', 'join_policy', ]) GroupJoinPolicyUpdatedDetails._all_fields_ = [ ('is_company_managed', GroupJoinPolicyUpdatedDetails.is_company_managed.validator), ('join_policy', GroupJoinPolicyUpdatedDetails.join_policy.validator), ] GroupJoinPolicyUpdatedType.description.validator = bv.String() GroupJoinPolicyUpdatedType._all_field_names_ = set(['description']) GroupJoinPolicyUpdatedType._all_fields_ = [('description', GroupJoinPolicyUpdatedType.description.validator)] GroupLogInfo.group_id.validator = bv.Nullable(team_common.GroupId_validator) GroupLogInfo.display_name.validator = bv.String() GroupLogInfo.external_id.validator = bv.Nullable(team_common.GroupExternalId_validator) GroupLogInfo._all_field_names_ = set([ 'group_id', 'display_name', 'external_id', ]) GroupLogInfo._all_fields_ = [ ('group_id', GroupLogInfo.group_id.validator), ('display_name', GroupLogInfo.display_name.validator), ('external_id', GroupLogInfo.external_id.validator), ] GroupMovedDetails._all_field_names_ = set([]) GroupMovedDetails._all_fields_ = [] GroupMovedType.description.validator = bv.String() GroupMovedType._all_field_names_ = set(['description']) GroupMovedType._all_fields_ = [('description', GroupMovedType.description.validator)] GroupRemoveExternalIdDetails.previous_value.validator = team_common.GroupExternalId_validator GroupRemoveExternalIdDetails._all_field_names_ = set(['previous_value']) GroupRemoveExternalIdDetails._all_fields_ = [('previous_value', GroupRemoveExternalIdDetails.previous_value.validator)] GroupRemoveExternalIdType.description.validator = bv.String() GroupRemoveExternalIdType._all_field_names_ = set(['description']) GroupRemoveExternalIdType._all_fields_ = [('description', GroupRemoveExternalIdType.description.validator)] GroupRemoveMemberDetails._all_field_names_ = set([]) GroupRemoveMemberDetails._all_fields_ = [] GroupRemoveMemberType.description.validator = bv.String() GroupRemoveMemberType._all_field_names_ = set(['description']) GroupRemoveMemberType._all_fields_ = [('description', GroupRemoveMemberType.description.validator)] GroupRenameDetails.previous_value.validator = bv.String() GroupRenameDetails.new_value.validator = bv.String() GroupRenameDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) GroupRenameDetails._all_fields_ = [ ('previous_value', GroupRenameDetails.previous_value.validator), ('new_value', GroupRenameDetails.new_value.validator), ] GroupRenameType.description.validator = bv.String() GroupRenameType._all_field_names_ = set(['description']) GroupRenameType._all_fields_ = [('description', GroupRenameType.description.validator)] GroupUserManagementChangePolicyDetails.new_value.validator = team_policies.GroupCreation_validator GroupUserManagementChangePolicyDetails.previous_value.validator = bv.Nullable(team_policies.GroupCreation_validator) GroupUserManagementChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) GroupUserManagementChangePolicyDetails._all_fields_ = [ ('new_value', GroupUserManagementChangePolicyDetails.new_value.validator), ('previous_value', GroupUserManagementChangePolicyDetails.previous_value.validator), ] GroupUserManagementChangePolicyType.description.validator = bv.String() GroupUserManagementChangePolicyType._all_field_names_ = set(['description']) GroupUserManagementChangePolicyType._all_fields_ = [('description', GroupUserManagementChangePolicyType.description.validator)] GuestAdminChangeStatusDetails.is_guest.validator = bv.Boolean() GuestAdminChangeStatusDetails.guest_team_name.validator = bv.Nullable(bv.String()) GuestAdminChangeStatusDetails.host_team_name.validator = bv.Nullable(bv.String()) GuestAdminChangeStatusDetails.previous_value.validator = TrustedTeamsRequestState_validator GuestAdminChangeStatusDetails.new_value.validator = TrustedTeamsRequestState_validator GuestAdminChangeStatusDetails.action_details.validator = TrustedTeamsRequestAction_validator GuestAdminChangeStatusDetails._all_field_names_ = set([ 'is_guest', 'guest_team_name', 'host_team_name', 'previous_value', 'new_value', 'action_details', ]) GuestAdminChangeStatusDetails._all_fields_ = [ ('is_guest', GuestAdminChangeStatusDetails.is_guest.validator), ('guest_team_name', GuestAdminChangeStatusDetails.guest_team_name.validator), ('host_team_name', GuestAdminChangeStatusDetails.host_team_name.validator), ('previous_value', GuestAdminChangeStatusDetails.previous_value.validator), ('new_value', GuestAdminChangeStatusDetails.new_value.validator), ('action_details', GuestAdminChangeStatusDetails.action_details.validator), ] GuestAdminChangeStatusType.description.validator = bv.String() GuestAdminChangeStatusType._all_field_names_ = set(['description']) GuestAdminChangeStatusType._all_fields_ = [('description', GuestAdminChangeStatusType.description.validator)] GuestAdminSignedInViaTrustedTeamsDetails.team_name.validator = bv.Nullable(bv.String()) GuestAdminSignedInViaTrustedTeamsDetails.trusted_team_name.validator = bv.Nullable(bv.String()) GuestAdminSignedInViaTrustedTeamsDetails._all_field_names_ = set([ 'team_name', 'trusted_team_name', ]) GuestAdminSignedInViaTrustedTeamsDetails._all_fields_ = [ ('team_name', GuestAdminSignedInViaTrustedTeamsDetails.team_name.validator), ('trusted_team_name', GuestAdminSignedInViaTrustedTeamsDetails.trusted_team_name.validator), ] GuestAdminSignedInViaTrustedTeamsType.description.validator = bv.String() GuestAdminSignedInViaTrustedTeamsType._all_field_names_ = set(['description']) GuestAdminSignedInViaTrustedTeamsType._all_fields_ = [('description', GuestAdminSignedInViaTrustedTeamsType.description.validator)] GuestAdminSignedOutViaTrustedTeamsDetails.team_name.validator = bv.Nullable(bv.String()) GuestAdminSignedOutViaTrustedTeamsDetails.trusted_team_name.validator = bv.Nullable(bv.String()) GuestAdminSignedOutViaTrustedTeamsDetails._all_field_names_ = set([ 'team_name', 'trusted_team_name', ]) GuestAdminSignedOutViaTrustedTeamsDetails._all_fields_ = [ ('team_name', GuestAdminSignedOutViaTrustedTeamsDetails.team_name.validator), ('trusted_team_name', GuestAdminSignedOutViaTrustedTeamsDetails.trusted_team_name.validator), ] GuestAdminSignedOutViaTrustedTeamsType.description.validator = bv.String() GuestAdminSignedOutViaTrustedTeamsType._all_field_names_ = set(['description']) GuestAdminSignedOutViaTrustedTeamsType._all_fields_ = [('description', GuestAdminSignedOutViaTrustedTeamsType.description.validator)] IdentifierType._email_validator = bv.Void() IdentifierType._facebook_profile_name_validator = bv.Void() IdentifierType._other_validator = bv.Void() IdentifierType._tagmap = { 'email': IdentifierType._email_validator, 'facebook_profile_name': IdentifierType._facebook_profile_name_validator, 'other': IdentifierType._other_validator, } IdentifierType.email = IdentifierType('email') IdentifierType.facebook_profile_name = IdentifierType('facebook_profile_name') IdentifierType.other = IdentifierType('other') IntegrationConnectedDetails.integration_name.validator = bv.String() IntegrationConnectedDetails._all_field_names_ = set(['integration_name']) IntegrationConnectedDetails._all_fields_ = [('integration_name', IntegrationConnectedDetails.integration_name.validator)] IntegrationConnectedType.description.validator = bv.String() IntegrationConnectedType._all_field_names_ = set(['description']) IntegrationConnectedType._all_fields_ = [('description', IntegrationConnectedType.description.validator)] IntegrationDisconnectedDetails.integration_name.validator = bv.String() IntegrationDisconnectedDetails._all_field_names_ = set(['integration_name']) IntegrationDisconnectedDetails._all_fields_ = [('integration_name', IntegrationDisconnectedDetails.integration_name.validator)] IntegrationDisconnectedType.description.validator = bv.String() IntegrationDisconnectedType._all_field_names_ = set(['description']) IntegrationDisconnectedType._all_fields_ = [('description', IntegrationDisconnectedType.description.validator)] IntegrationPolicy._disabled_validator = bv.Void() IntegrationPolicy._enabled_validator = bv.Void() IntegrationPolicy._other_validator = bv.Void() IntegrationPolicy._tagmap = { 'disabled': IntegrationPolicy._disabled_validator, 'enabled': IntegrationPolicy._enabled_validator, 'other': IntegrationPolicy._other_validator, } IntegrationPolicy.disabled = IntegrationPolicy('disabled') IntegrationPolicy.enabled = IntegrationPolicy('enabled') IntegrationPolicy.other = IntegrationPolicy('other') IntegrationPolicyChangedDetails.integration_name.validator = bv.String() IntegrationPolicyChangedDetails.new_value.validator = IntegrationPolicy_validator IntegrationPolicyChangedDetails.previous_value.validator = IntegrationPolicy_validator IntegrationPolicyChangedDetails._all_field_names_ = set([ 'integration_name', 'new_value', 'previous_value', ]) IntegrationPolicyChangedDetails._all_fields_ = [ ('integration_name', IntegrationPolicyChangedDetails.integration_name.validator), ('new_value', IntegrationPolicyChangedDetails.new_value.validator), ('previous_value', IntegrationPolicyChangedDetails.previous_value.validator), ] IntegrationPolicyChangedType.description.validator = bv.String() IntegrationPolicyChangedType._all_field_names_ = set(['description']) IntegrationPolicyChangedType._all_fields_ = [('description', IntegrationPolicyChangedType.description.validator)] InviteAcceptanceEmailPolicy._disabled_validator = bv.Void() InviteAcceptanceEmailPolicy._enabled_validator = bv.Void() InviteAcceptanceEmailPolicy._other_validator = bv.Void() InviteAcceptanceEmailPolicy._tagmap = { 'disabled': InviteAcceptanceEmailPolicy._disabled_validator, 'enabled': InviteAcceptanceEmailPolicy._enabled_validator, 'other': InviteAcceptanceEmailPolicy._other_validator, } InviteAcceptanceEmailPolicy.disabled = InviteAcceptanceEmailPolicy('disabled') InviteAcceptanceEmailPolicy.enabled = InviteAcceptanceEmailPolicy('enabled') InviteAcceptanceEmailPolicy.other = InviteAcceptanceEmailPolicy('other') InviteAcceptanceEmailPolicyChangedDetails.new_value.validator = InviteAcceptanceEmailPolicy_validator InviteAcceptanceEmailPolicyChangedDetails.previous_value.validator = InviteAcceptanceEmailPolicy_validator InviteAcceptanceEmailPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) InviteAcceptanceEmailPolicyChangedDetails._all_fields_ = [ ('new_value', InviteAcceptanceEmailPolicyChangedDetails.new_value.validator), ('previous_value', InviteAcceptanceEmailPolicyChangedDetails.previous_value.validator), ] InviteAcceptanceEmailPolicyChangedType.description.validator = bv.String() InviteAcceptanceEmailPolicyChangedType._all_field_names_ = set(['description']) InviteAcceptanceEmailPolicyChangedType._all_fields_ = [('description', InviteAcceptanceEmailPolicyChangedType.description.validator)] InviteMethod._auto_approve_validator = bv.Void() InviteMethod._invite_link_validator = bv.Void() InviteMethod._member_invite_validator = bv.Void() InviteMethod._moved_from_another_team_validator = bv.Void() InviteMethod._other_validator = bv.Void() InviteMethod._tagmap = { 'auto_approve': InviteMethod._auto_approve_validator, 'invite_link': InviteMethod._invite_link_validator, 'member_invite': InviteMethod._member_invite_validator, 'moved_from_another_team': InviteMethod._moved_from_another_team_validator, 'other': InviteMethod._other_validator, } InviteMethod.auto_approve = InviteMethod('auto_approve') InviteMethod.invite_link = InviteMethod('invite_link') InviteMethod.member_invite = InviteMethod('member_invite') InviteMethod.moved_from_another_team = InviteMethod('moved_from_another_team') InviteMethod.other = InviteMethod('other') JoinTeamDetails.linked_apps.validator = bv.List(UserLinkedAppLogInfo_validator) JoinTeamDetails.linked_devices.validator = bv.List(LinkedDeviceLogInfo_validator) JoinTeamDetails.linked_shared_folders.validator = bv.List(FolderLogInfo_validator) JoinTeamDetails.was_linked_apps_truncated.validator = bv.Nullable(bv.Boolean()) JoinTeamDetails.was_linked_devices_truncated.validator = bv.Nullable(bv.Boolean()) JoinTeamDetails.was_linked_shared_folders_truncated.validator = bv.Nullable(bv.Boolean()) JoinTeamDetails.has_linked_apps.validator = bv.Nullable(bv.Boolean()) JoinTeamDetails.has_linked_devices.validator = bv.Nullable(bv.Boolean()) JoinTeamDetails.has_linked_shared_folders.validator = bv.Nullable(bv.Boolean()) JoinTeamDetails._all_field_names_ = set([ 'linked_apps', 'linked_devices', 'linked_shared_folders', 'was_linked_apps_truncated', 'was_linked_devices_truncated', 'was_linked_shared_folders_truncated', 'has_linked_apps', 'has_linked_devices', 'has_linked_shared_folders', ]) JoinTeamDetails._all_fields_ = [ ('linked_apps', JoinTeamDetails.linked_apps.validator), ('linked_devices', JoinTeamDetails.linked_devices.validator), ('linked_shared_folders', JoinTeamDetails.linked_shared_folders.validator), ('was_linked_apps_truncated', JoinTeamDetails.was_linked_apps_truncated.validator), ('was_linked_devices_truncated', JoinTeamDetails.was_linked_devices_truncated.validator), ('was_linked_shared_folders_truncated', JoinTeamDetails.was_linked_shared_folders_truncated.validator), ('has_linked_apps', JoinTeamDetails.has_linked_apps.validator), ('has_linked_devices', JoinTeamDetails.has_linked_devices.validator), ('has_linked_shared_folders', JoinTeamDetails.has_linked_shared_folders.validator), ] LabelType._personal_information_validator = bv.Void() LabelType._test_only_validator = bv.Void() LabelType._user_defined_tag_validator = bv.Void() LabelType._other_validator = bv.Void() LabelType._tagmap = { 'personal_information': LabelType._personal_information_validator, 'test_only': LabelType._test_only_validator, 'user_defined_tag': LabelType._user_defined_tag_validator, 'other': LabelType._other_validator, } LabelType.personal_information = LabelType('personal_information') LabelType.test_only = LabelType('test_only') LabelType.user_defined_tag = LabelType('user_defined_tag') LabelType.other = LabelType('other') LegacyDeviceSessionLogInfo.session_info.validator = bv.Nullable(SessionLogInfo_validator) LegacyDeviceSessionLogInfo.display_name.validator = bv.Nullable(bv.String()) LegacyDeviceSessionLogInfo.is_emm_managed.validator = bv.Nullable(bv.Boolean()) LegacyDeviceSessionLogInfo.platform.validator = bv.Nullable(bv.String()) LegacyDeviceSessionLogInfo.mac_address.validator = bv.Nullable(IpAddress_validator) LegacyDeviceSessionLogInfo.os_version.validator = bv.Nullable(bv.String()) LegacyDeviceSessionLogInfo.device_type.validator = bv.Nullable(bv.String()) LegacyDeviceSessionLogInfo.client_version.validator = bv.Nullable(bv.String()) LegacyDeviceSessionLogInfo.legacy_uniq_id.validator = bv.Nullable(bv.String()) LegacyDeviceSessionLogInfo._field_names_ = set([ 'session_info', 'display_name', 'is_emm_managed', 'platform', 'mac_address', 'os_version', 'device_type', 'client_version', 'legacy_uniq_id', ]) LegacyDeviceSessionLogInfo._all_field_names_ = DeviceSessionLogInfo._all_field_names_.union(LegacyDeviceSessionLogInfo._field_names_) LegacyDeviceSessionLogInfo._fields_ = [ ('session_info', LegacyDeviceSessionLogInfo.session_info.validator), ('display_name', LegacyDeviceSessionLogInfo.display_name.validator), ('is_emm_managed', LegacyDeviceSessionLogInfo.is_emm_managed.validator), ('platform', LegacyDeviceSessionLogInfo.platform.validator), ('mac_address', LegacyDeviceSessionLogInfo.mac_address.validator), ('os_version', LegacyDeviceSessionLogInfo.os_version.validator), ('device_type', LegacyDeviceSessionLogInfo.device_type.validator), ('client_version', LegacyDeviceSessionLogInfo.client_version.validator), ('legacy_uniq_id', LegacyDeviceSessionLogInfo.legacy_uniq_id.validator), ] LegacyDeviceSessionLogInfo._all_fields_ = DeviceSessionLogInfo._all_fields_ + LegacyDeviceSessionLogInfo._fields_ LegalHoldsActivateAHoldDetails.legal_hold_id.validator = bv.String() LegalHoldsActivateAHoldDetails.name.validator = bv.String() LegalHoldsActivateAHoldDetails.start_date.validator = common.DropboxTimestamp_validator LegalHoldsActivateAHoldDetails.end_date.validator = bv.Nullable(common.DropboxTimestamp_validator) LegalHoldsActivateAHoldDetails._all_field_names_ = set([ 'legal_hold_id', 'name', 'start_date', 'end_date', ]) LegalHoldsActivateAHoldDetails._all_fields_ = [ ('legal_hold_id', LegalHoldsActivateAHoldDetails.legal_hold_id.validator), ('name', LegalHoldsActivateAHoldDetails.name.validator), ('start_date', LegalHoldsActivateAHoldDetails.start_date.validator), ('end_date', LegalHoldsActivateAHoldDetails.end_date.validator), ] LegalHoldsActivateAHoldType.description.validator = bv.String() LegalHoldsActivateAHoldType._all_field_names_ = set(['description']) LegalHoldsActivateAHoldType._all_fields_ = [('description', LegalHoldsActivateAHoldType.description.validator)] LegalHoldsAddMembersDetails.legal_hold_id.validator = bv.String() LegalHoldsAddMembersDetails.name.validator = bv.String() LegalHoldsAddMembersDetails._all_field_names_ = set([ 'legal_hold_id', 'name', ]) LegalHoldsAddMembersDetails._all_fields_ = [ ('legal_hold_id', LegalHoldsAddMembersDetails.legal_hold_id.validator), ('name', LegalHoldsAddMembersDetails.name.validator), ] LegalHoldsAddMembersType.description.validator = bv.String() LegalHoldsAddMembersType._all_field_names_ = set(['description']) LegalHoldsAddMembersType._all_fields_ = [('description', LegalHoldsAddMembersType.description.validator)] LegalHoldsChangeHoldDetailsDetails.legal_hold_id.validator = bv.String() LegalHoldsChangeHoldDetailsDetails.name.validator = bv.String() LegalHoldsChangeHoldDetailsDetails.previous_value.validator = bv.String() LegalHoldsChangeHoldDetailsDetails.new_value.validator = bv.String() LegalHoldsChangeHoldDetailsDetails._all_field_names_ = set([ 'legal_hold_id', 'name', 'previous_value', 'new_value', ]) LegalHoldsChangeHoldDetailsDetails._all_fields_ = [ ('legal_hold_id', LegalHoldsChangeHoldDetailsDetails.legal_hold_id.validator), ('name', LegalHoldsChangeHoldDetailsDetails.name.validator), ('previous_value', LegalHoldsChangeHoldDetailsDetails.previous_value.validator), ('new_value', LegalHoldsChangeHoldDetailsDetails.new_value.validator), ] LegalHoldsChangeHoldDetailsType.description.validator = bv.String() LegalHoldsChangeHoldDetailsType._all_field_names_ = set(['description']) LegalHoldsChangeHoldDetailsType._all_fields_ = [('description', LegalHoldsChangeHoldDetailsType.description.validator)] LegalHoldsChangeHoldNameDetails.legal_hold_id.validator = bv.String() LegalHoldsChangeHoldNameDetails.previous_value.validator = bv.String() LegalHoldsChangeHoldNameDetails.new_value.validator = bv.String() LegalHoldsChangeHoldNameDetails._all_field_names_ = set([ 'legal_hold_id', 'previous_value', 'new_value', ]) LegalHoldsChangeHoldNameDetails._all_fields_ = [ ('legal_hold_id', LegalHoldsChangeHoldNameDetails.legal_hold_id.validator), ('previous_value', LegalHoldsChangeHoldNameDetails.previous_value.validator), ('new_value', LegalHoldsChangeHoldNameDetails.new_value.validator), ] LegalHoldsChangeHoldNameType.description.validator = bv.String() LegalHoldsChangeHoldNameType._all_field_names_ = set(['description']) LegalHoldsChangeHoldNameType._all_fields_ = [('description', LegalHoldsChangeHoldNameType.description.validator)] LegalHoldsExportAHoldDetails.legal_hold_id.validator = bv.String() LegalHoldsExportAHoldDetails.name.validator = bv.String() LegalHoldsExportAHoldDetails.export_name.validator = bv.Nullable(bv.String()) LegalHoldsExportAHoldDetails._all_field_names_ = set([ 'legal_hold_id', 'name', 'export_name', ]) LegalHoldsExportAHoldDetails._all_fields_ = [ ('legal_hold_id', LegalHoldsExportAHoldDetails.legal_hold_id.validator), ('name', LegalHoldsExportAHoldDetails.name.validator), ('export_name', LegalHoldsExportAHoldDetails.export_name.validator), ] LegalHoldsExportAHoldType.description.validator = bv.String() LegalHoldsExportAHoldType._all_field_names_ = set(['description']) LegalHoldsExportAHoldType._all_fields_ = [('description', LegalHoldsExportAHoldType.description.validator)] LegalHoldsExportCancelledDetails.legal_hold_id.validator = bv.String() LegalHoldsExportCancelledDetails.name.validator = bv.String() LegalHoldsExportCancelledDetails.export_name.validator = bv.String() LegalHoldsExportCancelledDetails._all_field_names_ = set([ 'legal_hold_id', 'name', 'export_name', ]) LegalHoldsExportCancelledDetails._all_fields_ = [ ('legal_hold_id', LegalHoldsExportCancelledDetails.legal_hold_id.validator), ('name', LegalHoldsExportCancelledDetails.name.validator), ('export_name', LegalHoldsExportCancelledDetails.export_name.validator), ] LegalHoldsExportCancelledType.description.validator = bv.String() LegalHoldsExportCancelledType._all_field_names_ = set(['description']) LegalHoldsExportCancelledType._all_fields_ = [('description', LegalHoldsExportCancelledType.description.validator)] LegalHoldsExportDownloadedDetails.legal_hold_id.validator = bv.String() LegalHoldsExportDownloadedDetails.name.validator = bv.String() LegalHoldsExportDownloadedDetails.export_name.validator = bv.String() LegalHoldsExportDownloadedDetails.part.validator = bv.Nullable(bv.String()) LegalHoldsExportDownloadedDetails.file_name.validator = bv.Nullable(bv.String()) LegalHoldsExportDownloadedDetails._all_field_names_ = set([ 'legal_hold_id', 'name', 'export_name', 'part', 'file_name', ]) LegalHoldsExportDownloadedDetails._all_fields_ = [ ('legal_hold_id', LegalHoldsExportDownloadedDetails.legal_hold_id.validator), ('name', LegalHoldsExportDownloadedDetails.name.validator), ('export_name', LegalHoldsExportDownloadedDetails.export_name.validator), ('part', LegalHoldsExportDownloadedDetails.part.validator), ('file_name', LegalHoldsExportDownloadedDetails.file_name.validator), ] LegalHoldsExportDownloadedType.description.validator = bv.String() LegalHoldsExportDownloadedType._all_field_names_ = set(['description']) LegalHoldsExportDownloadedType._all_fields_ = [('description', LegalHoldsExportDownloadedType.description.validator)] LegalHoldsExportRemovedDetails.legal_hold_id.validator = bv.String() LegalHoldsExportRemovedDetails.name.validator = bv.String() LegalHoldsExportRemovedDetails.export_name.validator = bv.String() LegalHoldsExportRemovedDetails._all_field_names_ = set([ 'legal_hold_id', 'name', 'export_name', ]) LegalHoldsExportRemovedDetails._all_fields_ = [ ('legal_hold_id', LegalHoldsExportRemovedDetails.legal_hold_id.validator), ('name', LegalHoldsExportRemovedDetails.name.validator), ('export_name', LegalHoldsExportRemovedDetails.export_name.validator), ] LegalHoldsExportRemovedType.description.validator = bv.String() LegalHoldsExportRemovedType._all_field_names_ = set(['description']) LegalHoldsExportRemovedType._all_fields_ = [('description', LegalHoldsExportRemovedType.description.validator)] LegalHoldsReleaseAHoldDetails.legal_hold_id.validator = bv.String() LegalHoldsReleaseAHoldDetails.name.validator = bv.String() LegalHoldsReleaseAHoldDetails._all_field_names_ = set([ 'legal_hold_id', 'name', ]) LegalHoldsReleaseAHoldDetails._all_fields_ = [ ('legal_hold_id', LegalHoldsReleaseAHoldDetails.legal_hold_id.validator), ('name', LegalHoldsReleaseAHoldDetails.name.validator), ] LegalHoldsReleaseAHoldType.description.validator = bv.String() LegalHoldsReleaseAHoldType._all_field_names_ = set(['description']) LegalHoldsReleaseAHoldType._all_fields_ = [('description', LegalHoldsReleaseAHoldType.description.validator)] LegalHoldsRemoveMembersDetails.legal_hold_id.validator = bv.String() LegalHoldsRemoveMembersDetails.name.validator = bv.String() LegalHoldsRemoveMembersDetails._all_field_names_ = set([ 'legal_hold_id', 'name', ]) LegalHoldsRemoveMembersDetails._all_fields_ = [ ('legal_hold_id', LegalHoldsRemoveMembersDetails.legal_hold_id.validator), ('name', LegalHoldsRemoveMembersDetails.name.validator), ] LegalHoldsRemoveMembersType.description.validator = bv.String() LegalHoldsRemoveMembersType._all_field_names_ = set(['description']) LegalHoldsRemoveMembersType._all_fields_ = [('description', LegalHoldsRemoveMembersType.description.validator)] LegalHoldsReportAHoldDetails.legal_hold_id.validator = bv.String() LegalHoldsReportAHoldDetails.name.validator = bv.String() LegalHoldsReportAHoldDetails._all_field_names_ = set([ 'legal_hold_id', 'name', ]) LegalHoldsReportAHoldDetails._all_fields_ = [ ('legal_hold_id', LegalHoldsReportAHoldDetails.legal_hold_id.validator), ('name', LegalHoldsReportAHoldDetails.name.validator), ] LegalHoldsReportAHoldType.description.validator = bv.String() LegalHoldsReportAHoldType._all_field_names_ = set(['description']) LegalHoldsReportAHoldType._all_fields_ = [('description', LegalHoldsReportAHoldType.description.validator)] LinkedDeviceLogInfo._desktop_device_session_validator = DesktopDeviceSessionLogInfo_validator LinkedDeviceLogInfo._legacy_device_session_validator = LegacyDeviceSessionLogInfo_validator LinkedDeviceLogInfo._mobile_device_session_validator = MobileDeviceSessionLogInfo_validator LinkedDeviceLogInfo._web_device_session_validator = WebDeviceSessionLogInfo_validator LinkedDeviceLogInfo._other_validator = bv.Void() LinkedDeviceLogInfo._tagmap = { 'desktop_device_session': LinkedDeviceLogInfo._desktop_device_session_validator, 'legacy_device_session': LinkedDeviceLogInfo._legacy_device_session_validator, 'mobile_device_session': LinkedDeviceLogInfo._mobile_device_session_validator, 'web_device_session': LinkedDeviceLogInfo._web_device_session_validator, 'other': LinkedDeviceLogInfo._other_validator, } LinkedDeviceLogInfo.other = LinkedDeviceLogInfo('other') LockStatus._locked_validator = bv.Void() LockStatus._unlocked_validator = bv.Void() LockStatus._other_validator = bv.Void() LockStatus._tagmap = { 'locked': LockStatus._locked_validator, 'unlocked': LockStatus._unlocked_validator, 'other': LockStatus._other_validator, } LockStatus.locked = LockStatus('locked') LockStatus.unlocked = LockStatus('unlocked') LockStatus.other = LockStatus('other') LoginFailDetails.is_emm_managed.validator = bv.Nullable(bv.Boolean()) LoginFailDetails.login_method.validator = LoginMethod_validator LoginFailDetails.error_details.validator = FailureDetailsLogInfo_validator LoginFailDetails._all_field_names_ = set([ 'is_emm_managed', 'login_method', 'error_details', ]) LoginFailDetails._all_fields_ = [ ('is_emm_managed', LoginFailDetails.is_emm_managed.validator), ('login_method', LoginFailDetails.login_method.validator), ('error_details', LoginFailDetails.error_details.validator), ] LoginFailType.description.validator = bv.String() LoginFailType._all_field_names_ = set(['description']) LoginFailType._all_fields_ = [('description', LoginFailType.description.validator)] LoginMethod._apple_oauth_validator = bv.Void() LoginMethod._first_party_token_exchange_validator = bv.Void() LoginMethod._google_oauth_validator = bv.Void() LoginMethod._lenovo_oauth_validator = bv.Void() LoginMethod._password_validator = bv.Void() LoginMethod._qr_code_validator = bv.Void() LoginMethod._saml_validator = bv.Void() LoginMethod._two_factor_authentication_validator = bv.Void() LoginMethod._web_session_validator = bv.Void() LoginMethod._other_validator = bv.Void() LoginMethod._tagmap = { 'apple_oauth': LoginMethod._apple_oauth_validator, 'first_party_token_exchange': LoginMethod._first_party_token_exchange_validator, 'google_oauth': LoginMethod._google_oauth_validator, 'lenovo_oauth': LoginMethod._lenovo_oauth_validator, 'password': LoginMethod._password_validator, 'qr_code': LoginMethod._qr_code_validator, 'saml': LoginMethod._saml_validator, 'two_factor_authentication': LoginMethod._two_factor_authentication_validator, 'web_session': LoginMethod._web_session_validator, 'other': LoginMethod._other_validator, } LoginMethod.apple_oauth = LoginMethod('apple_oauth') LoginMethod.first_party_token_exchange = LoginMethod('first_party_token_exchange') LoginMethod.google_oauth = LoginMethod('google_oauth') LoginMethod.lenovo_oauth = LoginMethod('lenovo_oauth') LoginMethod.password = LoginMethod('password') LoginMethod.qr_code = LoginMethod('qr_code') LoginMethod.saml = LoginMethod('saml') LoginMethod.two_factor_authentication = LoginMethod('two_factor_authentication') LoginMethod.web_session = LoginMethod('web_session') LoginMethod.other = LoginMethod('other') LoginSuccessDetails.is_emm_managed.validator = bv.Nullable(bv.Boolean()) LoginSuccessDetails.login_method.validator = LoginMethod_validator LoginSuccessDetails._all_field_names_ = set([ 'is_emm_managed', 'login_method', ]) LoginSuccessDetails._all_fields_ = [ ('is_emm_managed', LoginSuccessDetails.is_emm_managed.validator), ('login_method', LoginSuccessDetails.login_method.validator), ] LoginSuccessType.description.validator = bv.String() LoginSuccessType._all_field_names_ = set(['description']) LoginSuccessType._all_fields_ = [('description', LoginSuccessType.description.validator)] LogoutDetails.login_id.validator = bv.Nullable(bv.String()) LogoutDetails._all_field_names_ = set(['login_id']) LogoutDetails._all_fields_ = [('login_id', LogoutDetails.login_id.validator)] LogoutType.description.validator = bv.String() LogoutType._all_field_names_ = set(['description']) LogoutType._all_fields_ = [('description', LogoutType.description.validator)] MemberAddExternalIdDetails.new_value.validator = team_common.MemberExternalId_validator MemberAddExternalIdDetails._all_field_names_ = set(['new_value']) MemberAddExternalIdDetails._all_fields_ = [('new_value', MemberAddExternalIdDetails.new_value.validator)] MemberAddExternalIdType.description.validator = bv.String() MemberAddExternalIdType._all_field_names_ = set(['description']) MemberAddExternalIdType._all_fields_ = [('description', MemberAddExternalIdType.description.validator)] MemberAddNameDetails.new_value.validator = UserNameLogInfo_validator MemberAddNameDetails._all_field_names_ = set(['new_value']) MemberAddNameDetails._all_fields_ = [('new_value', MemberAddNameDetails.new_value.validator)] MemberAddNameType.description.validator = bv.String() MemberAddNameType._all_field_names_ = set(['description']) MemberAddNameType._all_fields_ = [('description', MemberAddNameType.description.validator)] MemberChangeAdminRoleDetails.new_value.validator = bv.Nullable(AdminRole_validator) MemberChangeAdminRoleDetails.previous_value.validator = bv.Nullable(AdminRole_validator) MemberChangeAdminRoleDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) MemberChangeAdminRoleDetails._all_fields_ = [ ('new_value', MemberChangeAdminRoleDetails.new_value.validator), ('previous_value', MemberChangeAdminRoleDetails.previous_value.validator), ] MemberChangeAdminRoleType.description.validator = bv.String() MemberChangeAdminRoleType._all_field_names_ = set(['description']) MemberChangeAdminRoleType._all_fields_ = [('description', MemberChangeAdminRoleType.description.validator)] MemberChangeEmailDetails.new_value.validator = EmailAddress_validator MemberChangeEmailDetails.previous_value.validator = bv.Nullable(EmailAddress_validator) MemberChangeEmailDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) MemberChangeEmailDetails._all_fields_ = [ ('new_value', MemberChangeEmailDetails.new_value.validator), ('previous_value', MemberChangeEmailDetails.previous_value.validator), ] MemberChangeEmailType.description.validator = bv.String() MemberChangeEmailType._all_field_names_ = set(['description']) MemberChangeEmailType._all_fields_ = [('description', MemberChangeEmailType.description.validator)] MemberChangeExternalIdDetails.new_value.validator = team_common.MemberExternalId_validator MemberChangeExternalIdDetails.previous_value.validator = team_common.MemberExternalId_validator MemberChangeExternalIdDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) MemberChangeExternalIdDetails._all_fields_ = [ ('new_value', MemberChangeExternalIdDetails.new_value.validator), ('previous_value', MemberChangeExternalIdDetails.previous_value.validator), ] MemberChangeExternalIdType.description.validator = bv.String() MemberChangeExternalIdType._all_field_names_ = set(['description']) MemberChangeExternalIdType._all_fields_ = [('description', MemberChangeExternalIdType.description.validator)] MemberChangeMembershipTypeDetails.prev_value.validator = TeamMembershipType_validator MemberChangeMembershipTypeDetails.new_value.validator = TeamMembershipType_validator MemberChangeMembershipTypeDetails._all_field_names_ = set([ 'prev_value', 'new_value', ]) MemberChangeMembershipTypeDetails._all_fields_ = [ ('prev_value', MemberChangeMembershipTypeDetails.prev_value.validator), ('new_value', MemberChangeMembershipTypeDetails.new_value.validator), ] MemberChangeMembershipTypeType.description.validator = bv.String() MemberChangeMembershipTypeType._all_field_names_ = set(['description']) MemberChangeMembershipTypeType._all_fields_ = [('description', MemberChangeMembershipTypeType.description.validator)] MemberChangeNameDetails.new_value.validator = UserNameLogInfo_validator MemberChangeNameDetails.previous_value.validator = bv.Nullable(UserNameLogInfo_validator) MemberChangeNameDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) MemberChangeNameDetails._all_fields_ = [ ('new_value', MemberChangeNameDetails.new_value.validator), ('previous_value', MemberChangeNameDetails.previous_value.validator), ] MemberChangeNameType.description.validator = bv.String() MemberChangeNameType._all_field_names_ = set(['description']) MemberChangeNameType._all_fields_ = [('description', MemberChangeNameType.description.validator)] MemberChangeResellerRoleDetails.new_value.validator = ResellerRole_validator MemberChangeResellerRoleDetails.previous_value.validator = ResellerRole_validator MemberChangeResellerRoleDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) MemberChangeResellerRoleDetails._all_fields_ = [ ('new_value', MemberChangeResellerRoleDetails.new_value.validator), ('previous_value', MemberChangeResellerRoleDetails.previous_value.validator), ] MemberChangeResellerRoleType.description.validator = bv.String() MemberChangeResellerRoleType._all_field_names_ = set(['description']) MemberChangeResellerRoleType._all_fields_ = [('description', MemberChangeResellerRoleType.description.validator)] MemberChangeStatusDetails.previous_value.validator = bv.Nullable(MemberStatus_validator) MemberChangeStatusDetails.new_value.validator = MemberStatus_validator MemberChangeStatusDetails.action.validator = bv.Nullable(ActionDetails_validator) MemberChangeStatusDetails.new_team.validator = bv.Nullable(bv.String()) MemberChangeStatusDetails.previous_team.validator = bv.Nullable(bv.String()) MemberChangeStatusDetails._all_field_names_ = set([ 'previous_value', 'new_value', 'action', 'new_team', 'previous_team', ]) MemberChangeStatusDetails._all_fields_ = [ ('previous_value', MemberChangeStatusDetails.previous_value.validator), ('new_value', MemberChangeStatusDetails.new_value.validator), ('action', MemberChangeStatusDetails.action.validator), ('new_team', MemberChangeStatusDetails.new_team.validator), ('previous_team', MemberChangeStatusDetails.previous_team.validator), ] MemberChangeStatusType.description.validator = bv.String() MemberChangeStatusType._all_field_names_ = set(['description']) MemberChangeStatusType._all_fields_ = [('description', MemberChangeStatusType.description.validator)] MemberDeleteManualContactsDetails._all_field_names_ = set([]) MemberDeleteManualContactsDetails._all_fields_ = [] MemberDeleteManualContactsType.description.validator = bv.String() MemberDeleteManualContactsType._all_field_names_ = set(['description']) MemberDeleteManualContactsType._all_fields_ = [('description', MemberDeleteManualContactsType.description.validator)] MemberDeleteProfilePhotoDetails._all_field_names_ = set([]) MemberDeleteProfilePhotoDetails._all_fields_ = [] MemberDeleteProfilePhotoType.description.validator = bv.String() MemberDeleteProfilePhotoType._all_field_names_ = set(['description']) MemberDeleteProfilePhotoType._all_fields_ = [('description', MemberDeleteProfilePhotoType.description.validator)] MemberPermanentlyDeleteAccountContentsDetails._all_field_names_ = set([]) MemberPermanentlyDeleteAccountContentsDetails._all_fields_ = [] MemberPermanentlyDeleteAccountContentsType.description.validator = bv.String() MemberPermanentlyDeleteAccountContentsType._all_field_names_ = set(['description']) MemberPermanentlyDeleteAccountContentsType._all_fields_ = [('description', MemberPermanentlyDeleteAccountContentsType.description.validator)] MemberRemoveActionType._delete_validator = bv.Void() MemberRemoveActionType._leave_validator = bv.Void() MemberRemoveActionType._offboard_validator = bv.Void() MemberRemoveActionType._offboard_and_retain_team_folders_validator = bv.Void() MemberRemoveActionType._other_validator = bv.Void() MemberRemoveActionType._tagmap = { 'delete': MemberRemoveActionType._delete_validator, 'leave': MemberRemoveActionType._leave_validator, 'offboard': MemberRemoveActionType._offboard_validator, 'offboard_and_retain_team_folders': MemberRemoveActionType._offboard_and_retain_team_folders_validator, 'other': MemberRemoveActionType._other_validator, } MemberRemoveActionType.delete = MemberRemoveActionType('delete') MemberRemoveActionType.leave = MemberRemoveActionType('leave') MemberRemoveActionType.offboard = MemberRemoveActionType('offboard') MemberRemoveActionType.offboard_and_retain_team_folders = MemberRemoveActionType('offboard_and_retain_team_folders') MemberRemoveActionType.other = MemberRemoveActionType('other') MemberRemoveExternalIdDetails.previous_value.validator = team_common.MemberExternalId_validator MemberRemoveExternalIdDetails._all_field_names_ = set(['previous_value']) MemberRemoveExternalIdDetails._all_fields_ = [('previous_value', MemberRemoveExternalIdDetails.previous_value.validator)] MemberRemoveExternalIdType.description.validator = bv.String() MemberRemoveExternalIdType._all_field_names_ = set(['description']) MemberRemoveExternalIdType._all_fields_ = [('description', MemberRemoveExternalIdType.description.validator)] MemberRequestsChangePolicyDetails.new_value.validator = MemberRequestsPolicy_validator MemberRequestsChangePolicyDetails.previous_value.validator = bv.Nullable(MemberRequestsPolicy_validator) MemberRequestsChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) MemberRequestsChangePolicyDetails._all_fields_ = [ ('new_value', MemberRequestsChangePolicyDetails.new_value.validator), ('previous_value', MemberRequestsChangePolicyDetails.previous_value.validator), ] MemberRequestsChangePolicyType.description.validator = bv.String() MemberRequestsChangePolicyType._all_field_names_ = set(['description']) MemberRequestsChangePolicyType._all_fields_ = [('description', MemberRequestsChangePolicyType.description.validator)] MemberRequestsPolicy._auto_accept_validator = bv.Void() MemberRequestsPolicy._disabled_validator = bv.Void() MemberRequestsPolicy._require_approval_validator = bv.Void() MemberRequestsPolicy._other_validator = bv.Void() MemberRequestsPolicy._tagmap = { 'auto_accept': MemberRequestsPolicy._auto_accept_validator, 'disabled': MemberRequestsPolicy._disabled_validator, 'require_approval': MemberRequestsPolicy._require_approval_validator, 'other': MemberRequestsPolicy._other_validator, } MemberRequestsPolicy.auto_accept = MemberRequestsPolicy('auto_accept') MemberRequestsPolicy.disabled = MemberRequestsPolicy('disabled') MemberRequestsPolicy.require_approval = MemberRequestsPolicy('require_approval') MemberRequestsPolicy.other = MemberRequestsPolicy('other') MemberSendInvitePolicy._disabled_validator = bv.Void() MemberSendInvitePolicy._everyone_validator = bv.Void() MemberSendInvitePolicy._specific_members_validator = bv.Void() MemberSendInvitePolicy._other_validator = bv.Void() MemberSendInvitePolicy._tagmap = { 'disabled': MemberSendInvitePolicy._disabled_validator, 'everyone': MemberSendInvitePolicy._everyone_validator, 'specific_members': MemberSendInvitePolicy._specific_members_validator, 'other': MemberSendInvitePolicy._other_validator, } MemberSendInvitePolicy.disabled = MemberSendInvitePolicy('disabled') MemberSendInvitePolicy.everyone = MemberSendInvitePolicy('everyone') MemberSendInvitePolicy.specific_members = MemberSendInvitePolicy('specific_members') MemberSendInvitePolicy.other = MemberSendInvitePolicy('other') MemberSendInvitePolicyChangedDetails.new_value.validator = MemberSendInvitePolicy_validator MemberSendInvitePolicyChangedDetails.previous_value.validator = MemberSendInvitePolicy_validator MemberSendInvitePolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) MemberSendInvitePolicyChangedDetails._all_fields_ = [ ('new_value', MemberSendInvitePolicyChangedDetails.new_value.validator), ('previous_value', MemberSendInvitePolicyChangedDetails.previous_value.validator), ] MemberSendInvitePolicyChangedType.description.validator = bv.String() MemberSendInvitePolicyChangedType._all_field_names_ = set(['description']) MemberSendInvitePolicyChangedType._all_fields_ = [('description', MemberSendInvitePolicyChangedType.description.validator)] MemberSetProfilePhotoDetails._all_field_names_ = set([]) MemberSetProfilePhotoDetails._all_fields_ = [] MemberSetProfilePhotoType.description.validator = bv.String() MemberSetProfilePhotoType._all_field_names_ = set(['description']) MemberSetProfilePhotoType._all_fields_ = [('description', MemberSetProfilePhotoType.description.validator)] MemberSpaceLimitsAddCustomQuotaDetails.new_value.validator = bv.UInt64() MemberSpaceLimitsAddCustomQuotaDetails._all_field_names_ = set(['new_value']) MemberSpaceLimitsAddCustomQuotaDetails._all_fields_ = [('new_value', MemberSpaceLimitsAddCustomQuotaDetails.new_value.validator)] MemberSpaceLimitsAddCustomQuotaType.description.validator = bv.String() MemberSpaceLimitsAddCustomQuotaType._all_field_names_ = set(['description']) MemberSpaceLimitsAddCustomQuotaType._all_fields_ = [('description', MemberSpaceLimitsAddCustomQuotaType.description.validator)] MemberSpaceLimitsAddExceptionDetails._all_field_names_ = set([]) MemberSpaceLimitsAddExceptionDetails._all_fields_ = [] MemberSpaceLimitsAddExceptionType.description.validator = bv.String() MemberSpaceLimitsAddExceptionType._all_field_names_ = set(['description']) MemberSpaceLimitsAddExceptionType._all_fields_ = [('description', MemberSpaceLimitsAddExceptionType.description.validator)] MemberSpaceLimitsChangeCapsTypePolicyDetails.previous_value.validator = SpaceCapsType_validator MemberSpaceLimitsChangeCapsTypePolicyDetails.new_value.validator = SpaceCapsType_validator MemberSpaceLimitsChangeCapsTypePolicyDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) MemberSpaceLimitsChangeCapsTypePolicyDetails._all_fields_ = [ ('previous_value', MemberSpaceLimitsChangeCapsTypePolicyDetails.previous_value.validator), ('new_value', MemberSpaceLimitsChangeCapsTypePolicyDetails.new_value.validator), ] MemberSpaceLimitsChangeCapsTypePolicyType.description.validator = bv.String() MemberSpaceLimitsChangeCapsTypePolicyType._all_field_names_ = set(['description']) MemberSpaceLimitsChangeCapsTypePolicyType._all_fields_ = [('description', MemberSpaceLimitsChangeCapsTypePolicyType.description.validator)] MemberSpaceLimitsChangeCustomQuotaDetails.previous_value.validator = bv.UInt64() MemberSpaceLimitsChangeCustomQuotaDetails.new_value.validator = bv.UInt64() MemberSpaceLimitsChangeCustomQuotaDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) MemberSpaceLimitsChangeCustomQuotaDetails._all_fields_ = [ ('previous_value', MemberSpaceLimitsChangeCustomQuotaDetails.previous_value.validator), ('new_value', MemberSpaceLimitsChangeCustomQuotaDetails.new_value.validator), ] MemberSpaceLimitsChangeCustomQuotaType.description.validator = bv.String() MemberSpaceLimitsChangeCustomQuotaType._all_field_names_ = set(['description']) MemberSpaceLimitsChangeCustomQuotaType._all_fields_ = [('description', MemberSpaceLimitsChangeCustomQuotaType.description.validator)] MemberSpaceLimitsChangePolicyDetails.previous_value.validator = bv.Nullable(bv.UInt64()) MemberSpaceLimitsChangePolicyDetails.new_value.validator = bv.Nullable(bv.UInt64()) MemberSpaceLimitsChangePolicyDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) MemberSpaceLimitsChangePolicyDetails._all_fields_ = [ ('previous_value', MemberSpaceLimitsChangePolicyDetails.previous_value.validator), ('new_value', MemberSpaceLimitsChangePolicyDetails.new_value.validator), ] MemberSpaceLimitsChangePolicyType.description.validator = bv.String() MemberSpaceLimitsChangePolicyType._all_field_names_ = set(['description']) MemberSpaceLimitsChangePolicyType._all_fields_ = [('description', MemberSpaceLimitsChangePolicyType.description.validator)] MemberSpaceLimitsChangeStatusDetails.previous_value.validator = SpaceLimitsStatus_validator MemberSpaceLimitsChangeStatusDetails.new_value.validator = SpaceLimitsStatus_validator MemberSpaceLimitsChangeStatusDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) MemberSpaceLimitsChangeStatusDetails._all_fields_ = [ ('previous_value', MemberSpaceLimitsChangeStatusDetails.previous_value.validator), ('new_value', MemberSpaceLimitsChangeStatusDetails.new_value.validator), ] MemberSpaceLimitsChangeStatusType.description.validator = bv.String() MemberSpaceLimitsChangeStatusType._all_field_names_ = set(['description']) MemberSpaceLimitsChangeStatusType._all_fields_ = [('description', MemberSpaceLimitsChangeStatusType.description.validator)] MemberSpaceLimitsRemoveCustomQuotaDetails._all_field_names_ = set([]) MemberSpaceLimitsRemoveCustomQuotaDetails._all_fields_ = [] MemberSpaceLimitsRemoveCustomQuotaType.description.validator = bv.String() MemberSpaceLimitsRemoveCustomQuotaType._all_field_names_ = set(['description']) MemberSpaceLimitsRemoveCustomQuotaType._all_fields_ = [('description', MemberSpaceLimitsRemoveCustomQuotaType.description.validator)] MemberSpaceLimitsRemoveExceptionDetails._all_field_names_ = set([]) MemberSpaceLimitsRemoveExceptionDetails._all_fields_ = [] MemberSpaceLimitsRemoveExceptionType.description.validator = bv.String() MemberSpaceLimitsRemoveExceptionType._all_field_names_ = set(['description']) MemberSpaceLimitsRemoveExceptionType._all_fields_ = [('description', MemberSpaceLimitsRemoveExceptionType.description.validator)] MemberStatus._active_validator = bv.Void() MemberStatus._invited_validator = bv.Void() MemberStatus._moved_to_another_team_validator = bv.Void() MemberStatus._not_joined_validator = bv.Void() MemberStatus._removed_validator = bv.Void() MemberStatus._suspended_validator = bv.Void() MemberStatus._other_validator = bv.Void() MemberStatus._tagmap = { 'active': MemberStatus._active_validator, 'invited': MemberStatus._invited_validator, 'moved_to_another_team': MemberStatus._moved_to_another_team_validator, 'not_joined': MemberStatus._not_joined_validator, 'removed': MemberStatus._removed_validator, 'suspended': MemberStatus._suspended_validator, 'other': MemberStatus._other_validator, } MemberStatus.active = MemberStatus('active') MemberStatus.invited = MemberStatus('invited') MemberStatus.moved_to_another_team = MemberStatus('moved_to_another_team') MemberStatus.not_joined = MemberStatus('not_joined') MemberStatus.removed = MemberStatus('removed') MemberStatus.suspended = MemberStatus('suspended') MemberStatus.other = MemberStatus('other') MemberSuggestDetails.suggested_members.validator = bv.List(EmailAddress_validator) MemberSuggestDetails._all_field_names_ = set(['suggested_members']) MemberSuggestDetails._all_fields_ = [('suggested_members', MemberSuggestDetails.suggested_members.validator)] MemberSuggestType.description.validator = bv.String() MemberSuggestType._all_field_names_ = set(['description']) MemberSuggestType._all_fields_ = [('description', MemberSuggestType.description.validator)] MemberSuggestionsChangePolicyDetails.new_value.validator = MemberSuggestionsPolicy_validator MemberSuggestionsChangePolicyDetails.previous_value.validator = bv.Nullable(MemberSuggestionsPolicy_validator) MemberSuggestionsChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) MemberSuggestionsChangePolicyDetails._all_fields_ = [ ('new_value', MemberSuggestionsChangePolicyDetails.new_value.validator), ('previous_value', MemberSuggestionsChangePolicyDetails.previous_value.validator), ] MemberSuggestionsChangePolicyType.description.validator = bv.String() MemberSuggestionsChangePolicyType._all_field_names_ = set(['description']) MemberSuggestionsChangePolicyType._all_fields_ = [('description', MemberSuggestionsChangePolicyType.description.validator)] MemberSuggestionsPolicy._disabled_validator = bv.Void() MemberSuggestionsPolicy._enabled_validator = bv.Void() MemberSuggestionsPolicy._other_validator = bv.Void() MemberSuggestionsPolicy._tagmap = { 'disabled': MemberSuggestionsPolicy._disabled_validator, 'enabled': MemberSuggestionsPolicy._enabled_validator, 'other': MemberSuggestionsPolicy._other_validator, } MemberSuggestionsPolicy.disabled = MemberSuggestionsPolicy('disabled') MemberSuggestionsPolicy.enabled = MemberSuggestionsPolicy('enabled') MemberSuggestionsPolicy.other = MemberSuggestionsPolicy('other') MemberTransferAccountContentsDetails._all_field_names_ = set([]) MemberTransferAccountContentsDetails._all_fields_ = [] MemberTransferAccountContentsType.description.validator = bv.String() MemberTransferAccountContentsType._all_field_names_ = set(['description']) MemberTransferAccountContentsType._all_fields_ = [('description', MemberTransferAccountContentsType.description.validator)] MemberTransferredInternalFields.source_team_id.validator = team_common.TeamId_validator MemberTransferredInternalFields.target_team_id.validator = team_common.TeamId_validator MemberTransferredInternalFields._all_field_names_ = set([ 'source_team_id', 'target_team_id', ]) MemberTransferredInternalFields._all_fields_ = [ ('source_team_id', MemberTransferredInternalFields.source_team_id.validator), ('target_team_id', MemberTransferredInternalFields.target_team_id.validator), ] MicrosoftOfficeAddinChangePolicyDetails.new_value.validator = MicrosoftOfficeAddinPolicy_validator MicrosoftOfficeAddinChangePolicyDetails.previous_value.validator = bv.Nullable(MicrosoftOfficeAddinPolicy_validator) MicrosoftOfficeAddinChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) MicrosoftOfficeAddinChangePolicyDetails._all_fields_ = [ ('new_value', MicrosoftOfficeAddinChangePolicyDetails.new_value.validator), ('previous_value', MicrosoftOfficeAddinChangePolicyDetails.previous_value.validator), ] MicrosoftOfficeAddinChangePolicyType.description.validator = bv.String() MicrosoftOfficeAddinChangePolicyType._all_field_names_ = set(['description']) MicrosoftOfficeAddinChangePolicyType._all_fields_ = [('description', MicrosoftOfficeAddinChangePolicyType.description.validator)] MicrosoftOfficeAddinPolicy._disabled_validator = bv.Void() MicrosoftOfficeAddinPolicy._enabled_validator = bv.Void() MicrosoftOfficeAddinPolicy._other_validator = bv.Void() MicrosoftOfficeAddinPolicy._tagmap = { 'disabled': MicrosoftOfficeAddinPolicy._disabled_validator, 'enabled': MicrosoftOfficeAddinPolicy._enabled_validator, 'other': MicrosoftOfficeAddinPolicy._other_validator, } MicrosoftOfficeAddinPolicy.disabled = MicrosoftOfficeAddinPolicy('disabled') MicrosoftOfficeAddinPolicy.enabled = MicrosoftOfficeAddinPolicy('enabled') MicrosoftOfficeAddinPolicy.other = MicrosoftOfficeAddinPolicy('other') MissingDetails.source_event_fields.validator = bv.Nullable(bv.String()) MissingDetails._all_field_names_ = set(['source_event_fields']) MissingDetails._all_fields_ = [('source_event_fields', MissingDetails.source_event_fields.validator)] MobileDeviceSessionLogInfo.session_info.validator = bv.Nullable(MobileSessionLogInfo_validator) MobileDeviceSessionLogInfo.device_name.validator = bv.String() MobileDeviceSessionLogInfo.client_type.validator = team.MobileClientPlatform_validator MobileDeviceSessionLogInfo.client_version.validator = bv.Nullable(bv.String()) MobileDeviceSessionLogInfo.os_version.validator = bv.Nullable(bv.String()) MobileDeviceSessionLogInfo.last_carrier.validator = bv.Nullable(bv.String()) MobileDeviceSessionLogInfo._field_names_ = set([ 'session_info', 'device_name', 'client_type', 'client_version', 'os_version', 'last_carrier', ]) MobileDeviceSessionLogInfo._all_field_names_ = DeviceSessionLogInfo._all_field_names_.union(MobileDeviceSessionLogInfo._field_names_) MobileDeviceSessionLogInfo._fields_ = [ ('session_info', MobileDeviceSessionLogInfo.session_info.validator), ('device_name', MobileDeviceSessionLogInfo.device_name.validator), ('client_type', MobileDeviceSessionLogInfo.client_type.validator), ('client_version', MobileDeviceSessionLogInfo.client_version.validator), ('os_version', MobileDeviceSessionLogInfo.os_version.validator), ('last_carrier', MobileDeviceSessionLogInfo.last_carrier.validator), ] MobileDeviceSessionLogInfo._all_fields_ = DeviceSessionLogInfo._all_fields_ + MobileDeviceSessionLogInfo._fields_ MobileSessionLogInfo._field_names_ = set([]) MobileSessionLogInfo._all_field_names_ = SessionLogInfo._all_field_names_.union(MobileSessionLogInfo._field_names_) MobileSessionLogInfo._fields_ = [] MobileSessionLogInfo._all_fields_ = SessionLogInfo._all_fields_ + MobileSessionLogInfo._fields_ NamespaceRelativePathLogInfo.ns_id.validator = bv.Nullable(NamespaceId_validator) NamespaceRelativePathLogInfo.relative_path.validator = bv.Nullable(FilePath_validator) NamespaceRelativePathLogInfo.is_shared_namespace.validator = bv.Nullable(bv.Boolean()) NamespaceRelativePathLogInfo._all_field_names_ = set([ 'ns_id', 'relative_path', 'is_shared_namespace', ]) NamespaceRelativePathLogInfo._all_fields_ = [ ('ns_id', NamespaceRelativePathLogInfo.ns_id.validator), ('relative_path', NamespaceRelativePathLogInfo.relative_path.validator), ('is_shared_namespace', NamespaceRelativePathLogInfo.is_shared_namespace.validator), ] NetworkControlChangePolicyDetails.new_value.validator = NetworkControlPolicy_validator NetworkControlChangePolicyDetails.previous_value.validator = bv.Nullable(NetworkControlPolicy_validator) NetworkControlChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) NetworkControlChangePolicyDetails._all_fields_ = [ ('new_value', NetworkControlChangePolicyDetails.new_value.validator), ('previous_value', NetworkControlChangePolicyDetails.previous_value.validator), ] NetworkControlChangePolicyType.description.validator = bv.String() NetworkControlChangePolicyType._all_field_names_ = set(['description']) NetworkControlChangePolicyType._all_fields_ = [('description', NetworkControlChangePolicyType.description.validator)] NetworkControlPolicy._disabled_validator = bv.Void() NetworkControlPolicy._enabled_validator = bv.Void() NetworkControlPolicy._other_validator = bv.Void() NetworkControlPolicy._tagmap = { 'disabled': NetworkControlPolicy._disabled_validator, 'enabled': NetworkControlPolicy._enabled_validator, 'other': NetworkControlPolicy._other_validator, } NetworkControlPolicy.disabled = NetworkControlPolicy('disabled') NetworkControlPolicy.enabled = NetworkControlPolicy('enabled') NetworkControlPolicy.other = NetworkControlPolicy('other') NoExpirationLinkGenCreateReportDetails.start_date.validator = common.DropboxTimestamp_validator NoExpirationLinkGenCreateReportDetails.end_date.validator = common.DropboxTimestamp_validator NoExpirationLinkGenCreateReportDetails._all_field_names_ = set([ 'start_date', 'end_date', ]) NoExpirationLinkGenCreateReportDetails._all_fields_ = [ ('start_date', NoExpirationLinkGenCreateReportDetails.start_date.validator), ('end_date', NoExpirationLinkGenCreateReportDetails.end_date.validator), ] NoExpirationLinkGenCreateReportType.description.validator = bv.String() NoExpirationLinkGenCreateReportType._all_field_names_ = set(['description']) NoExpirationLinkGenCreateReportType._all_fields_ = [('description', NoExpirationLinkGenCreateReportType.description.validator)] NoExpirationLinkGenReportFailedDetails.failure_reason.validator = team.TeamReportFailureReason_validator NoExpirationLinkGenReportFailedDetails._all_field_names_ = set(['failure_reason']) NoExpirationLinkGenReportFailedDetails._all_fields_ = [('failure_reason', NoExpirationLinkGenReportFailedDetails.failure_reason.validator)] NoExpirationLinkGenReportFailedType.description.validator = bv.String() NoExpirationLinkGenReportFailedType._all_field_names_ = set(['description']) NoExpirationLinkGenReportFailedType._all_fields_ = [('description', NoExpirationLinkGenReportFailedType.description.validator)] NoPasswordLinkGenCreateReportDetails.start_date.validator = common.DropboxTimestamp_validator NoPasswordLinkGenCreateReportDetails.end_date.validator = common.DropboxTimestamp_validator NoPasswordLinkGenCreateReportDetails._all_field_names_ = set([ 'start_date', 'end_date', ]) NoPasswordLinkGenCreateReportDetails._all_fields_ = [ ('start_date', NoPasswordLinkGenCreateReportDetails.start_date.validator), ('end_date', NoPasswordLinkGenCreateReportDetails.end_date.validator), ] NoPasswordLinkGenCreateReportType.description.validator = bv.String() NoPasswordLinkGenCreateReportType._all_field_names_ = set(['description']) NoPasswordLinkGenCreateReportType._all_fields_ = [('description', NoPasswordLinkGenCreateReportType.description.validator)] NoPasswordLinkGenReportFailedDetails.failure_reason.validator = team.TeamReportFailureReason_validator NoPasswordLinkGenReportFailedDetails._all_field_names_ = set(['failure_reason']) NoPasswordLinkGenReportFailedDetails._all_fields_ = [('failure_reason', NoPasswordLinkGenReportFailedDetails.failure_reason.validator)] NoPasswordLinkGenReportFailedType.description.validator = bv.String() NoPasswordLinkGenReportFailedType._all_field_names_ = set(['description']) NoPasswordLinkGenReportFailedType._all_fields_ = [('description', NoPasswordLinkGenReportFailedType.description.validator)] NoPasswordLinkViewCreateReportDetails.start_date.validator = common.DropboxTimestamp_validator NoPasswordLinkViewCreateReportDetails.end_date.validator = common.DropboxTimestamp_validator NoPasswordLinkViewCreateReportDetails._all_field_names_ = set([ 'start_date', 'end_date', ]) NoPasswordLinkViewCreateReportDetails._all_fields_ = [ ('start_date', NoPasswordLinkViewCreateReportDetails.start_date.validator), ('end_date', NoPasswordLinkViewCreateReportDetails.end_date.validator), ] NoPasswordLinkViewCreateReportType.description.validator = bv.String() NoPasswordLinkViewCreateReportType._all_field_names_ = set(['description']) NoPasswordLinkViewCreateReportType._all_fields_ = [('description', NoPasswordLinkViewCreateReportType.description.validator)] NoPasswordLinkViewReportFailedDetails.failure_reason.validator = team.TeamReportFailureReason_validator NoPasswordLinkViewReportFailedDetails._all_field_names_ = set(['failure_reason']) NoPasswordLinkViewReportFailedDetails._all_fields_ = [('failure_reason', NoPasswordLinkViewReportFailedDetails.failure_reason.validator)] NoPasswordLinkViewReportFailedType.description.validator = bv.String() NoPasswordLinkViewReportFailedType._all_field_names_ = set(['description']) NoPasswordLinkViewReportFailedType._all_fields_ = [('description', NoPasswordLinkViewReportFailedType.description.validator)] UserLogInfo.account_id.validator = bv.Nullable(users_common.AccountId_validator) UserLogInfo.display_name.validator = bv.Nullable(common.DisplayNameLegacy_validator) UserLogInfo.email.validator = bv.Nullable(EmailAddress_validator) UserLogInfo._field_names_ = set([ 'account_id', 'display_name', 'email', ]) UserLogInfo._all_field_names_ = UserLogInfo._field_names_ UserLogInfo._fields_ = [ ('account_id', UserLogInfo.account_id.validator), ('display_name', UserLogInfo.display_name.validator), ('email', UserLogInfo.email.validator), ] UserLogInfo._all_fields_ = UserLogInfo._fields_ UserLogInfo._tag_to_subtype_ = { ('team_member',): TeamMemberLogInfo_validator, ('trusted_non_team_member',): TrustedNonTeamMemberLogInfo_validator, ('non_team_member',): NonTeamMemberLogInfo_validator, } UserLogInfo._pytype_to_tag_and_subtype_ = { TeamMemberLogInfo: (('team_member',), TeamMemberLogInfo_validator), TrustedNonTeamMemberLogInfo: (('trusted_non_team_member',), TrustedNonTeamMemberLogInfo_validator), NonTeamMemberLogInfo: (('non_team_member',), NonTeamMemberLogInfo_validator), } UserLogInfo._is_catch_all_ = True NonTeamMemberLogInfo._field_names_ = set([]) NonTeamMemberLogInfo._all_field_names_ = UserLogInfo._all_field_names_.union(NonTeamMemberLogInfo._field_names_) NonTeamMemberLogInfo._fields_ = [] NonTeamMemberLogInfo._all_fields_ = UserLogInfo._all_fields_ + NonTeamMemberLogInfo._fields_ NonTrustedTeamDetails.team.validator = bv.String() NonTrustedTeamDetails._all_field_names_ = set(['team']) NonTrustedTeamDetails._all_fields_ = [('team', NonTrustedTeamDetails.team.validator)] NoteAclInviteOnlyDetails._all_field_names_ = set([]) NoteAclInviteOnlyDetails._all_fields_ = [] NoteAclInviteOnlyType.description.validator = bv.String() NoteAclInviteOnlyType._all_field_names_ = set(['description']) NoteAclInviteOnlyType._all_fields_ = [('description', NoteAclInviteOnlyType.description.validator)] NoteAclLinkDetails._all_field_names_ = set([]) NoteAclLinkDetails._all_fields_ = [] NoteAclLinkType.description.validator = bv.String() NoteAclLinkType._all_field_names_ = set(['description']) NoteAclLinkType._all_fields_ = [('description', NoteAclLinkType.description.validator)] NoteAclTeamLinkDetails._all_field_names_ = set([]) NoteAclTeamLinkDetails._all_fields_ = [] NoteAclTeamLinkType.description.validator = bv.String() NoteAclTeamLinkType._all_field_names_ = set(['description']) NoteAclTeamLinkType._all_fields_ = [('description', NoteAclTeamLinkType.description.validator)] NoteShareReceiveDetails._all_field_names_ = set([]) NoteShareReceiveDetails._all_fields_ = [] NoteShareReceiveType.description.validator = bv.String() NoteShareReceiveType._all_field_names_ = set(['description']) NoteShareReceiveType._all_fields_ = [('description', NoteShareReceiveType.description.validator)] NoteSharedDetails._all_field_names_ = set([]) NoteSharedDetails._all_fields_ = [] NoteSharedType.description.validator = bv.String() NoteSharedType._all_field_names_ = set(['description']) NoteSharedType._all_fields_ = [('description', NoteSharedType.description.validator)] ObjectLabelAddedDetails.label_type.validator = LabelType_validator ObjectLabelAddedDetails._all_field_names_ = set(['label_type']) ObjectLabelAddedDetails._all_fields_ = [('label_type', ObjectLabelAddedDetails.label_type.validator)] ObjectLabelAddedType.description.validator = bv.String() ObjectLabelAddedType._all_field_names_ = set(['description']) ObjectLabelAddedType._all_fields_ = [('description', ObjectLabelAddedType.description.validator)] ObjectLabelRemovedDetails.label_type.validator = LabelType_validator ObjectLabelRemovedDetails._all_field_names_ = set(['label_type']) ObjectLabelRemovedDetails._all_fields_ = [('label_type', ObjectLabelRemovedDetails.label_type.validator)] ObjectLabelRemovedType.description.validator = bv.String() ObjectLabelRemovedType._all_field_names_ = set(['description']) ObjectLabelRemovedType._all_fields_ = [('description', ObjectLabelRemovedType.description.validator)] ObjectLabelUpdatedValueDetails.label_type.validator = LabelType_validator ObjectLabelUpdatedValueDetails._all_field_names_ = set(['label_type']) ObjectLabelUpdatedValueDetails._all_fields_ = [('label_type', ObjectLabelUpdatedValueDetails.label_type.validator)] ObjectLabelUpdatedValueType.description.validator = bv.String() ObjectLabelUpdatedValueType._all_field_names_ = set(['description']) ObjectLabelUpdatedValueType._all_fields_ = [('description', ObjectLabelUpdatedValueType.description.validator)] OpenNoteSharedDetails._all_field_names_ = set([]) OpenNoteSharedDetails._all_fields_ = [] OpenNoteSharedType.description.validator = bv.String() OpenNoteSharedType._all_field_names_ = set(['description']) OpenNoteSharedType._all_fields_ = [('description', OpenNoteSharedType.description.validator)] OrganizationDetails.organization.validator = bv.String() OrganizationDetails._all_field_names_ = set(['organization']) OrganizationDetails._all_fields_ = [('organization', OrganizationDetails.organization.validator)] OrganizationName.organization.validator = bv.String() OrganizationName._all_field_names_ = set(['organization']) OrganizationName._all_fields_ = [('organization', OrganizationName.organization.validator)] OrganizeFolderWithTidyDetails._all_field_names_ = set([]) OrganizeFolderWithTidyDetails._all_fields_ = [] OrganizeFolderWithTidyType.description.validator = bv.String() OrganizeFolderWithTidyType._all_field_names_ = set(['description']) OrganizeFolderWithTidyType._all_fields_ = [('description', OrganizeFolderWithTidyType.description.validator)] OriginLogInfo.geo_location.validator = bv.Nullable(GeoLocationLogInfo_validator) OriginLogInfo.access_method.validator = AccessMethodLogInfo_validator OriginLogInfo._all_field_names_ = set([ 'geo_location', 'access_method', ]) OriginLogInfo._all_fields_ = [ ('geo_location', OriginLogInfo.geo_location.validator), ('access_method', OriginLogInfo.access_method.validator), ] OutdatedLinkViewCreateReportDetails.start_date.validator = common.DropboxTimestamp_validator OutdatedLinkViewCreateReportDetails.end_date.validator = common.DropboxTimestamp_validator OutdatedLinkViewCreateReportDetails._all_field_names_ = set([ 'start_date', 'end_date', ]) OutdatedLinkViewCreateReportDetails._all_fields_ = [ ('start_date', OutdatedLinkViewCreateReportDetails.start_date.validator), ('end_date', OutdatedLinkViewCreateReportDetails.end_date.validator), ] OutdatedLinkViewCreateReportType.description.validator = bv.String() OutdatedLinkViewCreateReportType._all_field_names_ = set(['description']) OutdatedLinkViewCreateReportType._all_fields_ = [('description', OutdatedLinkViewCreateReportType.description.validator)] OutdatedLinkViewReportFailedDetails.failure_reason.validator = team.TeamReportFailureReason_validator OutdatedLinkViewReportFailedDetails._all_field_names_ = set(['failure_reason']) OutdatedLinkViewReportFailedDetails._all_fields_ = [('failure_reason', OutdatedLinkViewReportFailedDetails.failure_reason.validator)] OutdatedLinkViewReportFailedType.description.validator = bv.String() OutdatedLinkViewReportFailedType._all_field_names_ = set(['description']) OutdatedLinkViewReportFailedType._all_fields_ = [('description', OutdatedLinkViewReportFailedType.description.validator)] PaperAccessType._commenter_validator = bv.Void() PaperAccessType._editor_validator = bv.Void() PaperAccessType._viewer_validator = bv.Void() PaperAccessType._other_validator = bv.Void() PaperAccessType._tagmap = { 'commenter': PaperAccessType._commenter_validator, 'editor': PaperAccessType._editor_validator, 'viewer': PaperAccessType._viewer_validator, 'other': PaperAccessType._other_validator, } PaperAccessType.commenter = PaperAccessType('commenter') PaperAccessType.editor = PaperAccessType('editor') PaperAccessType.viewer = PaperAccessType('viewer') PaperAccessType.other = PaperAccessType('other') PaperAdminExportStartDetails._all_field_names_ = set([]) PaperAdminExportStartDetails._all_fields_ = [] PaperAdminExportStartType.description.validator = bv.String() PaperAdminExportStartType._all_field_names_ = set(['description']) PaperAdminExportStartType._all_fields_ = [('description', PaperAdminExportStartType.description.validator)] PaperChangeDeploymentPolicyDetails.new_value.validator = team_policies.PaperDeploymentPolicy_validator PaperChangeDeploymentPolicyDetails.previous_value.validator = bv.Nullable(team_policies.PaperDeploymentPolicy_validator) PaperChangeDeploymentPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) PaperChangeDeploymentPolicyDetails._all_fields_ = [ ('new_value', PaperChangeDeploymentPolicyDetails.new_value.validator), ('previous_value', PaperChangeDeploymentPolicyDetails.previous_value.validator), ] PaperChangeDeploymentPolicyType.description.validator = bv.String() PaperChangeDeploymentPolicyType._all_field_names_ = set(['description']) PaperChangeDeploymentPolicyType._all_fields_ = [('description', PaperChangeDeploymentPolicyType.description.validator)] PaperChangeMemberLinkPolicyDetails.new_value.validator = PaperMemberPolicy_validator PaperChangeMemberLinkPolicyDetails._all_field_names_ = set(['new_value']) PaperChangeMemberLinkPolicyDetails._all_fields_ = [('new_value', PaperChangeMemberLinkPolicyDetails.new_value.validator)] PaperChangeMemberLinkPolicyType.description.validator = bv.String() PaperChangeMemberLinkPolicyType._all_field_names_ = set(['description']) PaperChangeMemberLinkPolicyType._all_fields_ = [('description', PaperChangeMemberLinkPolicyType.description.validator)] PaperChangeMemberPolicyDetails.new_value.validator = PaperMemberPolicy_validator PaperChangeMemberPolicyDetails.previous_value.validator = bv.Nullable(PaperMemberPolicy_validator) PaperChangeMemberPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) PaperChangeMemberPolicyDetails._all_fields_ = [ ('new_value', PaperChangeMemberPolicyDetails.new_value.validator), ('previous_value', PaperChangeMemberPolicyDetails.previous_value.validator), ] PaperChangeMemberPolicyType.description.validator = bv.String() PaperChangeMemberPolicyType._all_field_names_ = set(['description']) PaperChangeMemberPolicyType._all_fields_ = [('description', PaperChangeMemberPolicyType.description.validator)] PaperChangePolicyDetails.new_value.validator = team_policies.PaperEnabledPolicy_validator PaperChangePolicyDetails.previous_value.validator = bv.Nullable(team_policies.PaperEnabledPolicy_validator) PaperChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) PaperChangePolicyDetails._all_fields_ = [ ('new_value', PaperChangePolicyDetails.new_value.validator), ('previous_value', PaperChangePolicyDetails.previous_value.validator), ] PaperChangePolicyType.description.validator = bv.String() PaperChangePolicyType._all_field_names_ = set(['description']) PaperChangePolicyType._all_fields_ = [('description', PaperChangePolicyType.description.validator)] PaperContentAddMemberDetails.event_uuid.validator = bv.String() PaperContentAddMemberDetails._all_field_names_ = set(['event_uuid']) PaperContentAddMemberDetails._all_fields_ = [('event_uuid', PaperContentAddMemberDetails.event_uuid.validator)] PaperContentAddMemberType.description.validator = bv.String() PaperContentAddMemberType._all_field_names_ = set(['description']) PaperContentAddMemberType._all_fields_ = [('description', PaperContentAddMemberType.description.validator)] PaperContentAddToFolderDetails.event_uuid.validator = bv.String() PaperContentAddToFolderDetails.target_asset_index.validator = bv.UInt64() PaperContentAddToFolderDetails.parent_asset_index.validator = bv.UInt64() PaperContentAddToFolderDetails._all_field_names_ = set([ 'event_uuid', 'target_asset_index', 'parent_asset_index', ]) PaperContentAddToFolderDetails._all_fields_ = [ ('event_uuid', PaperContentAddToFolderDetails.event_uuid.validator), ('target_asset_index', PaperContentAddToFolderDetails.target_asset_index.validator), ('parent_asset_index', PaperContentAddToFolderDetails.parent_asset_index.validator), ] PaperContentAddToFolderType.description.validator = bv.String() PaperContentAddToFolderType._all_field_names_ = set(['description']) PaperContentAddToFolderType._all_fields_ = [('description', PaperContentAddToFolderType.description.validator)] PaperContentArchiveDetails.event_uuid.validator = bv.String() PaperContentArchiveDetails._all_field_names_ = set(['event_uuid']) PaperContentArchiveDetails._all_fields_ = [('event_uuid', PaperContentArchiveDetails.event_uuid.validator)] PaperContentArchiveType.description.validator = bv.String() PaperContentArchiveType._all_field_names_ = set(['description']) PaperContentArchiveType._all_fields_ = [('description', PaperContentArchiveType.description.validator)] PaperContentCreateDetails.event_uuid.validator = bv.String() PaperContentCreateDetails._all_field_names_ = set(['event_uuid']) PaperContentCreateDetails._all_fields_ = [('event_uuid', PaperContentCreateDetails.event_uuid.validator)] PaperContentCreateType.description.validator = bv.String() PaperContentCreateType._all_field_names_ = set(['description']) PaperContentCreateType._all_fields_ = [('description', PaperContentCreateType.description.validator)] PaperContentPermanentlyDeleteDetails.event_uuid.validator = bv.String() PaperContentPermanentlyDeleteDetails._all_field_names_ = set(['event_uuid']) PaperContentPermanentlyDeleteDetails._all_fields_ = [('event_uuid', PaperContentPermanentlyDeleteDetails.event_uuid.validator)] PaperContentPermanentlyDeleteType.description.validator = bv.String() PaperContentPermanentlyDeleteType._all_field_names_ = set(['description']) PaperContentPermanentlyDeleteType._all_fields_ = [('description', PaperContentPermanentlyDeleteType.description.validator)] PaperContentRemoveFromFolderDetails.event_uuid.validator = bv.String() PaperContentRemoveFromFolderDetails.target_asset_index.validator = bv.Nullable(bv.UInt64()) PaperContentRemoveFromFolderDetails.parent_asset_index.validator = bv.Nullable(bv.UInt64()) PaperContentRemoveFromFolderDetails._all_field_names_ = set([ 'event_uuid', 'target_asset_index', 'parent_asset_index', ]) PaperContentRemoveFromFolderDetails._all_fields_ = [ ('event_uuid', PaperContentRemoveFromFolderDetails.event_uuid.validator), ('target_asset_index', PaperContentRemoveFromFolderDetails.target_asset_index.validator), ('parent_asset_index', PaperContentRemoveFromFolderDetails.parent_asset_index.validator), ] PaperContentRemoveFromFolderType.description.validator = bv.String() PaperContentRemoveFromFolderType._all_field_names_ = set(['description']) PaperContentRemoveFromFolderType._all_fields_ = [('description', PaperContentRemoveFromFolderType.description.validator)] PaperContentRemoveMemberDetails.event_uuid.validator = bv.String() PaperContentRemoveMemberDetails._all_field_names_ = set(['event_uuid']) PaperContentRemoveMemberDetails._all_fields_ = [('event_uuid', PaperContentRemoveMemberDetails.event_uuid.validator)] PaperContentRemoveMemberType.description.validator = bv.String() PaperContentRemoveMemberType._all_field_names_ = set(['description']) PaperContentRemoveMemberType._all_fields_ = [('description', PaperContentRemoveMemberType.description.validator)] PaperContentRenameDetails.event_uuid.validator = bv.String() PaperContentRenameDetails._all_field_names_ = set(['event_uuid']) PaperContentRenameDetails._all_fields_ = [('event_uuid', PaperContentRenameDetails.event_uuid.validator)] PaperContentRenameType.description.validator = bv.String() PaperContentRenameType._all_field_names_ = set(['description']) PaperContentRenameType._all_fields_ = [('description', PaperContentRenameType.description.validator)] PaperContentRestoreDetails.event_uuid.validator = bv.String() PaperContentRestoreDetails._all_field_names_ = set(['event_uuid']) PaperContentRestoreDetails._all_fields_ = [('event_uuid', PaperContentRestoreDetails.event_uuid.validator)] PaperContentRestoreType.description.validator = bv.String() PaperContentRestoreType._all_field_names_ = set(['description']) PaperContentRestoreType._all_fields_ = [('description', PaperContentRestoreType.description.validator)] PaperDefaultFolderPolicy._everyone_in_team_validator = bv.Void() PaperDefaultFolderPolicy._invite_only_validator = bv.Void() PaperDefaultFolderPolicy._other_validator = bv.Void() PaperDefaultFolderPolicy._tagmap = { 'everyone_in_team': PaperDefaultFolderPolicy._everyone_in_team_validator, 'invite_only': PaperDefaultFolderPolicy._invite_only_validator, 'other': PaperDefaultFolderPolicy._other_validator, } PaperDefaultFolderPolicy.everyone_in_team = PaperDefaultFolderPolicy('everyone_in_team') PaperDefaultFolderPolicy.invite_only = PaperDefaultFolderPolicy('invite_only') PaperDefaultFolderPolicy.other = PaperDefaultFolderPolicy('other') PaperDefaultFolderPolicyChangedDetails.new_value.validator = PaperDefaultFolderPolicy_validator PaperDefaultFolderPolicyChangedDetails.previous_value.validator = PaperDefaultFolderPolicy_validator PaperDefaultFolderPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) PaperDefaultFolderPolicyChangedDetails._all_fields_ = [ ('new_value', PaperDefaultFolderPolicyChangedDetails.new_value.validator), ('previous_value', PaperDefaultFolderPolicyChangedDetails.previous_value.validator), ] PaperDefaultFolderPolicyChangedType.description.validator = bv.String() PaperDefaultFolderPolicyChangedType._all_field_names_ = set(['description']) PaperDefaultFolderPolicyChangedType._all_fields_ = [('description', PaperDefaultFolderPolicyChangedType.description.validator)] PaperDesktopPolicy._disabled_validator = bv.Void() PaperDesktopPolicy._enabled_validator = bv.Void() PaperDesktopPolicy._other_validator = bv.Void() PaperDesktopPolicy._tagmap = { 'disabled': PaperDesktopPolicy._disabled_validator, 'enabled': PaperDesktopPolicy._enabled_validator, 'other': PaperDesktopPolicy._other_validator, } PaperDesktopPolicy.disabled = PaperDesktopPolicy('disabled') PaperDesktopPolicy.enabled = PaperDesktopPolicy('enabled') PaperDesktopPolicy.other = PaperDesktopPolicy('other') PaperDesktopPolicyChangedDetails.new_value.validator = PaperDesktopPolicy_validator PaperDesktopPolicyChangedDetails.previous_value.validator = PaperDesktopPolicy_validator PaperDesktopPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) PaperDesktopPolicyChangedDetails._all_fields_ = [ ('new_value', PaperDesktopPolicyChangedDetails.new_value.validator), ('previous_value', PaperDesktopPolicyChangedDetails.previous_value.validator), ] PaperDesktopPolicyChangedType.description.validator = bv.String() PaperDesktopPolicyChangedType._all_field_names_ = set(['description']) PaperDesktopPolicyChangedType._all_fields_ = [('description', PaperDesktopPolicyChangedType.description.validator)] PaperDocAddCommentDetails.event_uuid.validator = bv.String() PaperDocAddCommentDetails.comment_text.validator = bv.Nullable(bv.String()) PaperDocAddCommentDetails._all_field_names_ = set([ 'event_uuid', 'comment_text', ]) PaperDocAddCommentDetails._all_fields_ = [ ('event_uuid', PaperDocAddCommentDetails.event_uuid.validator), ('comment_text', PaperDocAddCommentDetails.comment_text.validator), ] PaperDocAddCommentType.description.validator = bv.String() PaperDocAddCommentType._all_field_names_ = set(['description']) PaperDocAddCommentType._all_fields_ = [('description', PaperDocAddCommentType.description.validator)] PaperDocChangeMemberRoleDetails.event_uuid.validator = bv.String() PaperDocChangeMemberRoleDetails.access_type.validator = PaperAccessType_validator PaperDocChangeMemberRoleDetails._all_field_names_ = set([ 'event_uuid', 'access_type', ]) PaperDocChangeMemberRoleDetails._all_fields_ = [ ('event_uuid', PaperDocChangeMemberRoleDetails.event_uuid.validator), ('access_type', PaperDocChangeMemberRoleDetails.access_type.validator), ] PaperDocChangeMemberRoleType.description.validator = bv.String() PaperDocChangeMemberRoleType._all_field_names_ = set(['description']) PaperDocChangeMemberRoleType._all_fields_ = [('description', PaperDocChangeMemberRoleType.description.validator)] PaperDocChangeSharingPolicyDetails.event_uuid.validator = bv.String() PaperDocChangeSharingPolicyDetails.public_sharing_policy.validator = bv.Nullable(bv.String()) PaperDocChangeSharingPolicyDetails.team_sharing_policy.validator = bv.Nullable(bv.String()) PaperDocChangeSharingPolicyDetails._all_field_names_ = set([ 'event_uuid', 'public_sharing_policy', 'team_sharing_policy', ]) PaperDocChangeSharingPolicyDetails._all_fields_ = [ ('event_uuid', PaperDocChangeSharingPolicyDetails.event_uuid.validator), ('public_sharing_policy', PaperDocChangeSharingPolicyDetails.public_sharing_policy.validator), ('team_sharing_policy', PaperDocChangeSharingPolicyDetails.team_sharing_policy.validator), ] PaperDocChangeSharingPolicyType.description.validator = bv.String() PaperDocChangeSharingPolicyType._all_field_names_ = set(['description']) PaperDocChangeSharingPolicyType._all_fields_ = [('description', PaperDocChangeSharingPolicyType.description.validator)] PaperDocChangeSubscriptionDetails.event_uuid.validator = bv.String() PaperDocChangeSubscriptionDetails.new_subscription_level.validator = bv.String() PaperDocChangeSubscriptionDetails.previous_subscription_level.validator = bv.Nullable(bv.String()) PaperDocChangeSubscriptionDetails._all_field_names_ = set([ 'event_uuid', 'new_subscription_level', 'previous_subscription_level', ]) PaperDocChangeSubscriptionDetails._all_fields_ = [ ('event_uuid', PaperDocChangeSubscriptionDetails.event_uuid.validator), ('new_subscription_level', PaperDocChangeSubscriptionDetails.new_subscription_level.validator), ('previous_subscription_level', PaperDocChangeSubscriptionDetails.previous_subscription_level.validator), ] PaperDocChangeSubscriptionType.description.validator = bv.String() PaperDocChangeSubscriptionType._all_field_names_ = set(['description']) PaperDocChangeSubscriptionType._all_fields_ = [('description', PaperDocChangeSubscriptionType.description.validator)] PaperDocDeleteCommentDetails.event_uuid.validator = bv.String() PaperDocDeleteCommentDetails.comment_text.validator = bv.Nullable(bv.String()) PaperDocDeleteCommentDetails._all_field_names_ = set([ 'event_uuid', 'comment_text', ]) PaperDocDeleteCommentDetails._all_fields_ = [ ('event_uuid', PaperDocDeleteCommentDetails.event_uuid.validator), ('comment_text', PaperDocDeleteCommentDetails.comment_text.validator), ] PaperDocDeleteCommentType.description.validator = bv.String() PaperDocDeleteCommentType._all_field_names_ = set(['description']) PaperDocDeleteCommentType._all_fields_ = [('description', PaperDocDeleteCommentType.description.validator)] PaperDocDeletedDetails.event_uuid.validator = bv.String() PaperDocDeletedDetails._all_field_names_ = set(['event_uuid']) PaperDocDeletedDetails._all_fields_ = [('event_uuid', PaperDocDeletedDetails.event_uuid.validator)] PaperDocDeletedType.description.validator = bv.String() PaperDocDeletedType._all_field_names_ = set(['description']) PaperDocDeletedType._all_fields_ = [('description', PaperDocDeletedType.description.validator)] PaperDocDownloadDetails.event_uuid.validator = bv.String() PaperDocDownloadDetails.export_file_format.validator = PaperDownloadFormat_validator PaperDocDownloadDetails._all_field_names_ = set([ 'event_uuid', 'export_file_format', ]) PaperDocDownloadDetails._all_fields_ = [ ('event_uuid', PaperDocDownloadDetails.event_uuid.validator), ('export_file_format', PaperDocDownloadDetails.export_file_format.validator), ] PaperDocDownloadType.description.validator = bv.String() PaperDocDownloadType._all_field_names_ = set(['description']) PaperDocDownloadType._all_fields_ = [('description', PaperDocDownloadType.description.validator)] PaperDocEditCommentDetails.event_uuid.validator = bv.String() PaperDocEditCommentDetails.comment_text.validator = bv.Nullable(bv.String()) PaperDocEditCommentDetails._all_field_names_ = set([ 'event_uuid', 'comment_text', ]) PaperDocEditCommentDetails._all_fields_ = [ ('event_uuid', PaperDocEditCommentDetails.event_uuid.validator), ('comment_text', PaperDocEditCommentDetails.comment_text.validator), ] PaperDocEditCommentType.description.validator = bv.String() PaperDocEditCommentType._all_field_names_ = set(['description']) PaperDocEditCommentType._all_fields_ = [('description', PaperDocEditCommentType.description.validator)] PaperDocEditDetails.event_uuid.validator = bv.String() PaperDocEditDetails._all_field_names_ = set(['event_uuid']) PaperDocEditDetails._all_fields_ = [('event_uuid', PaperDocEditDetails.event_uuid.validator)] PaperDocEditType.description.validator = bv.String() PaperDocEditType._all_field_names_ = set(['description']) PaperDocEditType._all_fields_ = [('description', PaperDocEditType.description.validator)] PaperDocFollowedDetails.event_uuid.validator = bv.String() PaperDocFollowedDetails._all_field_names_ = set(['event_uuid']) PaperDocFollowedDetails._all_fields_ = [('event_uuid', PaperDocFollowedDetails.event_uuid.validator)] PaperDocFollowedType.description.validator = bv.String() PaperDocFollowedType._all_field_names_ = set(['description']) PaperDocFollowedType._all_fields_ = [('description', PaperDocFollowedType.description.validator)] PaperDocMentionDetails.event_uuid.validator = bv.String() PaperDocMentionDetails._all_field_names_ = set(['event_uuid']) PaperDocMentionDetails._all_fields_ = [('event_uuid', PaperDocMentionDetails.event_uuid.validator)] PaperDocMentionType.description.validator = bv.String() PaperDocMentionType._all_field_names_ = set(['description']) PaperDocMentionType._all_fields_ = [('description', PaperDocMentionType.description.validator)] PaperDocOwnershipChangedDetails.event_uuid.validator = bv.String() PaperDocOwnershipChangedDetails.old_owner_user_id.validator = bv.Nullable(users_common.AccountId_validator) PaperDocOwnershipChangedDetails.new_owner_user_id.validator = users_common.AccountId_validator PaperDocOwnershipChangedDetails._all_field_names_ = set([ 'event_uuid', 'old_owner_user_id', 'new_owner_user_id', ]) PaperDocOwnershipChangedDetails._all_fields_ = [ ('event_uuid', PaperDocOwnershipChangedDetails.event_uuid.validator), ('old_owner_user_id', PaperDocOwnershipChangedDetails.old_owner_user_id.validator), ('new_owner_user_id', PaperDocOwnershipChangedDetails.new_owner_user_id.validator), ] PaperDocOwnershipChangedType.description.validator = bv.String() PaperDocOwnershipChangedType._all_field_names_ = set(['description']) PaperDocOwnershipChangedType._all_fields_ = [('description', PaperDocOwnershipChangedType.description.validator)] PaperDocRequestAccessDetails.event_uuid.validator = bv.String() PaperDocRequestAccessDetails._all_field_names_ = set(['event_uuid']) PaperDocRequestAccessDetails._all_fields_ = [('event_uuid', PaperDocRequestAccessDetails.event_uuid.validator)] PaperDocRequestAccessType.description.validator = bv.String() PaperDocRequestAccessType._all_field_names_ = set(['description']) PaperDocRequestAccessType._all_fields_ = [('description', PaperDocRequestAccessType.description.validator)] PaperDocResolveCommentDetails.event_uuid.validator = bv.String() PaperDocResolveCommentDetails.comment_text.validator = bv.Nullable(bv.String()) PaperDocResolveCommentDetails._all_field_names_ = set([ 'event_uuid', 'comment_text', ]) PaperDocResolveCommentDetails._all_fields_ = [ ('event_uuid', PaperDocResolveCommentDetails.event_uuid.validator), ('comment_text', PaperDocResolveCommentDetails.comment_text.validator), ] PaperDocResolveCommentType.description.validator = bv.String() PaperDocResolveCommentType._all_field_names_ = set(['description']) PaperDocResolveCommentType._all_fields_ = [('description', PaperDocResolveCommentType.description.validator)] PaperDocRevertDetails.event_uuid.validator = bv.String() PaperDocRevertDetails._all_field_names_ = set(['event_uuid']) PaperDocRevertDetails._all_fields_ = [('event_uuid', PaperDocRevertDetails.event_uuid.validator)] PaperDocRevertType.description.validator = bv.String() PaperDocRevertType._all_field_names_ = set(['description']) PaperDocRevertType._all_fields_ = [('description', PaperDocRevertType.description.validator)] PaperDocSlackShareDetails.event_uuid.validator = bv.String() PaperDocSlackShareDetails._all_field_names_ = set(['event_uuid']) PaperDocSlackShareDetails._all_fields_ = [('event_uuid', PaperDocSlackShareDetails.event_uuid.validator)] PaperDocSlackShareType.description.validator = bv.String() PaperDocSlackShareType._all_field_names_ = set(['description']) PaperDocSlackShareType._all_fields_ = [('description', PaperDocSlackShareType.description.validator)] PaperDocTeamInviteDetails.event_uuid.validator = bv.String() PaperDocTeamInviteDetails._all_field_names_ = set(['event_uuid']) PaperDocTeamInviteDetails._all_fields_ = [('event_uuid', PaperDocTeamInviteDetails.event_uuid.validator)] PaperDocTeamInviteType.description.validator = bv.String() PaperDocTeamInviteType._all_field_names_ = set(['description']) PaperDocTeamInviteType._all_fields_ = [('description', PaperDocTeamInviteType.description.validator)] PaperDocTrashedDetails.event_uuid.validator = bv.String() PaperDocTrashedDetails._all_field_names_ = set(['event_uuid']) PaperDocTrashedDetails._all_fields_ = [('event_uuid', PaperDocTrashedDetails.event_uuid.validator)] PaperDocTrashedType.description.validator = bv.String() PaperDocTrashedType._all_field_names_ = set(['description']) PaperDocTrashedType._all_fields_ = [('description', PaperDocTrashedType.description.validator)] PaperDocUnresolveCommentDetails.event_uuid.validator = bv.String() PaperDocUnresolveCommentDetails.comment_text.validator = bv.Nullable(bv.String()) PaperDocUnresolveCommentDetails._all_field_names_ = set([ 'event_uuid', 'comment_text', ]) PaperDocUnresolveCommentDetails._all_fields_ = [ ('event_uuid', PaperDocUnresolveCommentDetails.event_uuid.validator), ('comment_text', PaperDocUnresolveCommentDetails.comment_text.validator), ] PaperDocUnresolveCommentType.description.validator = bv.String() PaperDocUnresolveCommentType._all_field_names_ = set(['description']) PaperDocUnresolveCommentType._all_fields_ = [('description', PaperDocUnresolveCommentType.description.validator)] PaperDocUntrashedDetails.event_uuid.validator = bv.String() PaperDocUntrashedDetails._all_field_names_ = set(['event_uuid']) PaperDocUntrashedDetails._all_fields_ = [('event_uuid', PaperDocUntrashedDetails.event_uuid.validator)] PaperDocUntrashedType.description.validator = bv.String() PaperDocUntrashedType._all_field_names_ = set(['description']) PaperDocUntrashedType._all_fields_ = [('description', PaperDocUntrashedType.description.validator)] PaperDocViewDetails.event_uuid.validator = bv.String() PaperDocViewDetails._all_field_names_ = set(['event_uuid']) PaperDocViewDetails._all_fields_ = [('event_uuid', PaperDocViewDetails.event_uuid.validator)] PaperDocViewType.description.validator = bv.String() PaperDocViewType._all_field_names_ = set(['description']) PaperDocViewType._all_fields_ = [('description', PaperDocViewType.description.validator)] PaperDocumentLogInfo.doc_id.validator = bv.String() PaperDocumentLogInfo.doc_title.validator = bv.String() PaperDocumentLogInfo._all_field_names_ = set([ 'doc_id', 'doc_title', ]) PaperDocumentLogInfo._all_fields_ = [ ('doc_id', PaperDocumentLogInfo.doc_id.validator), ('doc_title', PaperDocumentLogInfo.doc_title.validator), ] PaperDownloadFormat._docx_validator = bv.Void() PaperDownloadFormat._html_validator = bv.Void() PaperDownloadFormat._markdown_validator = bv.Void() PaperDownloadFormat._pdf_validator = bv.Void() PaperDownloadFormat._other_validator = bv.Void() PaperDownloadFormat._tagmap = { 'docx': PaperDownloadFormat._docx_validator, 'html': PaperDownloadFormat._html_validator, 'markdown': PaperDownloadFormat._markdown_validator, 'pdf': PaperDownloadFormat._pdf_validator, 'other': PaperDownloadFormat._other_validator, } PaperDownloadFormat.docx = PaperDownloadFormat('docx') PaperDownloadFormat.html = PaperDownloadFormat('html') PaperDownloadFormat.markdown = PaperDownloadFormat('markdown') PaperDownloadFormat.pdf = PaperDownloadFormat('pdf') PaperDownloadFormat.other = PaperDownloadFormat('other') PaperEnabledUsersGroupAdditionDetails._all_field_names_ = set([]) PaperEnabledUsersGroupAdditionDetails._all_fields_ = [] PaperEnabledUsersGroupAdditionType.description.validator = bv.String() PaperEnabledUsersGroupAdditionType._all_field_names_ = set(['description']) PaperEnabledUsersGroupAdditionType._all_fields_ = [('description', PaperEnabledUsersGroupAdditionType.description.validator)] PaperEnabledUsersGroupRemovalDetails._all_field_names_ = set([]) PaperEnabledUsersGroupRemovalDetails._all_fields_ = [] PaperEnabledUsersGroupRemovalType.description.validator = bv.String() PaperEnabledUsersGroupRemovalType._all_field_names_ = set(['description']) PaperEnabledUsersGroupRemovalType._all_fields_ = [('description', PaperEnabledUsersGroupRemovalType.description.validator)] PaperExternalViewAllowDetails.event_uuid.validator = bv.String() PaperExternalViewAllowDetails._all_field_names_ = set(['event_uuid']) PaperExternalViewAllowDetails._all_fields_ = [('event_uuid', PaperExternalViewAllowDetails.event_uuid.validator)] PaperExternalViewAllowType.description.validator = bv.String() PaperExternalViewAllowType._all_field_names_ = set(['description']) PaperExternalViewAllowType._all_fields_ = [('description', PaperExternalViewAllowType.description.validator)] PaperExternalViewDefaultTeamDetails.event_uuid.validator = bv.String() PaperExternalViewDefaultTeamDetails._all_field_names_ = set(['event_uuid']) PaperExternalViewDefaultTeamDetails._all_fields_ = [('event_uuid', PaperExternalViewDefaultTeamDetails.event_uuid.validator)] PaperExternalViewDefaultTeamType.description.validator = bv.String() PaperExternalViewDefaultTeamType._all_field_names_ = set(['description']) PaperExternalViewDefaultTeamType._all_fields_ = [('description', PaperExternalViewDefaultTeamType.description.validator)] PaperExternalViewForbidDetails.event_uuid.validator = bv.String() PaperExternalViewForbidDetails._all_field_names_ = set(['event_uuid']) PaperExternalViewForbidDetails._all_fields_ = [('event_uuid', PaperExternalViewForbidDetails.event_uuid.validator)] PaperExternalViewForbidType.description.validator = bv.String() PaperExternalViewForbidType._all_field_names_ = set(['description']) PaperExternalViewForbidType._all_fields_ = [('description', PaperExternalViewForbidType.description.validator)] PaperFolderChangeSubscriptionDetails.event_uuid.validator = bv.String() PaperFolderChangeSubscriptionDetails.new_subscription_level.validator = bv.String() PaperFolderChangeSubscriptionDetails.previous_subscription_level.validator = bv.Nullable(bv.String()) PaperFolderChangeSubscriptionDetails._all_field_names_ = set([ 'event_uuid', 'new_subscription_level', 'previous_subscription_level', ]) PaperFolderChangeSubscriptionDetails._all_fields_ = [ ('event_uuid', PaperFolderChangeSubscriptionDetails.event_uuid.validator), ('new_subscription_level', PaperFolderChangeSubscriptionDetails.new_subscription_level.validator), ('previous_subscription_level', PaperFolderChangeSubscriptionDetails.previous_subscription_level.validator), ] PaperFolderChangeSubscriptionType.description.validator = bv.String() PaperFolderChangeSubscriptionType._all_field_names_ = set(['description']) PaperFolderChangeSubscriptionType._all_fields_ = [('description', PaperFolderChangeSubscriptionType.description.validator)] PaperFolderDeletedDetails.event_uuid.validator = bv.String() PaperFolderDeletedDetails._all_field_names_ = set(['event_uuid']) PaperFolderDeletedDetails._all_fields_ = [('event_uuid', PaperFolderDeletedDetails.event_uuid.validator)] PaperFolderDeletedType.description.validator = bv.String() PaperFolderDeletedType._all_field_names_ = set(['description']) PaperFolderDeletedType._all_fields_ = [('description', PaperFolderDeletedType.description.validator)] PaperFolderFollowedDetails.event_uuid.validator = bv.String() PaperFolderFollowedDetails._all_field_names_ = set(['event_uuid']) PaperFolderFollowedDetails._all_fields_ = [('event_uuid', PaperFolderFollowedDetails.event_uuid.validator)] PaperFolderFollowedType.description.validator = bv.String() PaperFolderFollowedType._all_field_names_ = set(['description']) PaperFolderFollowedType._all_fields_ = [('description', PaperFolderFollowedType.description.validator)] PaperFolderLogInfo.folder_id.validator = bv.String() PaperFolderLogInfo.folder_name.validator = bv.String() PaperFolderLogInfo._all_field_names_ = set([ 'folder_id', 'folder_name', ]) PaperFolderLogInfo._all_fields_ = [ ('folder_id', PaperFolderLogInfo.folder_id.validator), ('folder_name', PaperFolderLogInfo.folder_name.validator), ] PaperFolderTeamInviteDetails.event_uuid.validator = bv.String() PaperFolderTeamInviteDetails._all_field_names_ = set(['event_uuid']) PaperFolderTeamInviteDetails._all_fields_ = [('event_uuid', PaperFolderTeamInviteDetails.event_uuid.validator)] PaperFolderTeamInviteType.description.validator = bv.String() PaperFolderTeamInviteType._all_field_names_ = set(['description']) PaperFolderTeamInviteType._all_fields_ = [('description', PaperFolderTeamInviteType.description.validator)] PaperMemberPolicy._anyone_with_link_validator = bv.Void() PaperMemberPolicy._only_team_validator = bv.Void() PaperMemberPolicy._team_and_explicitly_shared_validator = bv.Void() PaperMemberPolicy._other_validator = bv.Void() PaperMemberPolicy._tagmap = { 'anyone_with_link': PaperMemberPolicy._anyone_with_link_validator, 'only_team': PaperMemberPolicy._only_team_validator, 'team_and_explicitly_shared': PaperMemberPolicy._team_and_explicitly_shared_validator, 'other': PaperMemberPolicy._other_validator, } PaperMemberPolicy.anyone_with_link = PaperMemberPolicy('anyone_with_link') PaperMemberPolicy.only_team = PaperMemberPolicy('only_team') PaperMemberPolicy.team_and_explicitly_shared = PaperMemberPolicy('team_and_explicitly_shared') PaperMemberPolicy.other = PaperMemberPolicy('other') PaperPublishedLinkChangePermissionDetails.event_uuid.validator = bv.String() PaperPublishedLinkChangePermissionDetails.new_permission_level.validator = bv.String() PaperPublishedLinkChangePermissionDetails.previous_permission_level.validator = bv.String() PaperPublishedLinkChangePermissionDetails._all_field_names_ = set([ 'event_uuid', 'new_permission_level', 'previous_permission_level', ]) PaperPublishedLinkChangePermissionDetails._all_fields_ = [ ('event_uuid', PaperPublishedLinkChangePermissionDetails.event_uuid.validator), ('new_permission_level', PaperPublishedLinkChangePermissionDetails.new_permission_level.validator), ('previous_permission_level', PaperPublishedLinkChangePermissionDetails.previous_permission_level.validator), ] PaperPublishedLinkChangePermissionType.description.validator = bv.String() PaperPublishedLinkChangePermissionType._all_field_names_ = set(['description']) PaperPublishedLinkChangePermissionType._all_fields_ = [('description', PaperPublishedLinkChangePermissionType.description.validator)] PaperPublishedLinkCreateDetails.event_uuid.validator = bv.String() PaperPublishedLinkCreateDetails._all_field_names_ = set(['event_uuid']) PaperPublishedLinkCreateDetails._all_fields_ = [('event_uuid', PaperPublishedLinkCreateDetails.event_uuid.validator)] PaperPublishedLinkCreateType.description.validator = bv.String() PaperPublishedLinkCreateType._all_field_names_ = set(['description']) PaperPublishedLinkCreateType._all_fields_ = [('description', PaperPublishedLinkCreateType.description.validator)] PaperPublishedLinkDisabledDetails.event_uuid.validator = bv.String() PaperPublishedLinkDisabledDetails._all_field_names_ = set(['event_uuid']) PaperPublishedLinkDisabledDetails._all_fields_ = [('event_uuid', PaperPublishedLinkDisabledDetails.event_uuid.validator)] PaperPublishedLinkDisabledType.description.validator = bv.String() PaperPublishedLinkDisabledType._all_field_names_ = set(['description']) PaperPublishedLinkDisabledType._all_fields_ = [('description', PaperPublishedLinkDisabledType.description.validator)] PaperPublishedLinkViewDetails.event_uuid.validator = bv.String() PaperPublishedLinkViewDetails._all_field_names_ = set(['event_uuid']) PaperPublishedLinkViewDetails._all_fields_ = [('event_uuid', PaperPublishedLinkViewDetails.event_uuid.validator)] PaperPublishedLinkViewType.description.validator = bv.String() PaperPublishedLinkViewType._all_field_names_ = set(['description']) PaperPublishedLinkViewType._all_fields_ = [('description', PaperPublishedLinkViewType.description.validator)] ParticipantLogInfo._group_validator = GroupLogInfo_validator ParticipantLogInfo._user_validator = UserLogInfo_validator ParticipantLogInfo._other_validator = bv.Void() ParticipantLogInfo._tagmap = { 'group': ParticipantLogInfo._group_validator, 'user': ParticipantLogInfo._user_validator, 'other': ParticipantLogInfo._other_validator, } ParticipantLogInfo.other = ParticipantLogInfo('other') PassPolicy._allow_validator = bv.Void() PassPolicy._disabled_validator = bv.Void() PassPolicy._enabled_validator = bv.Void() PassPolicy._other_validator = bv.Void() PassPolicy._tagmap = { 'allow': PassPolicy._allow_validator, 'disabled': PassPolicy._disabled_validator, 'enabled': PassPolicy._enabled_validator, 'other': PassPolicy._other_validator, } PassPolicy.allow = PassPolicy('allow') PassPolicy.disabled = PassPolicy('disabled') PassPolicy.enabled = PassPolicy('enabled') PassPolicy.other = PassPolicy('other') PasswordChangeDetails._all_field_names_ = set([]) PasswordChangeDetails._all_fields_ = [] PasswordChangeType.description.validator = bv.String() PasswordChangeType._all_field_names_ = set(['description']) PasswordChangeType._all_fields_ = [('description', PasswordChangeType.description.validator)] PasswordResetAllDetails._all_field_names_ = set([]) PasswordResetAllDetails._all_fields_ = [] PasswordResetAllType.description.validator = bv.String() PasswordResetAllType._all_field_names_ = set(['description']) PasswordResetAllType._all_fields_ = [('description', PasswordResetAllType.description.validator)] PasswordResetDetails._all_field_names_ = set([]) PasswordResetDetails._all_fields_ = [] PasswordResetType.description.validator = bv.String() PasswordResetType._all_field_names_ = set(['description']) PasswordResetType._all_fields_ = [('description', PasswordResetType.description.validator)] PasswordStrengthRequirementsChangePolicyDetails.previous_value.validator = team_policies.PasswordStrengthPolicy_validator PasswordStrengthRequirementsChangePolicyDetails.new_value.validator = team_policies.PasswordStrengthPolicy_validator PasswordStrengthRequirementsChangePolicyDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) PasswordStrengthRequirementsChangePolicyDetails._all_fields_ = [ ('previous_value', PasswordStrengthRequirementsChangePolicyDetails.previous_value.validator), ('new_value', PasswordStrengthRequirementsChangePolicyDetails.new_value.validator), ] PasswordStrengthRequirementsChangePolicyType.description.validator = bv.String() PasswordStrengthRequirementsChangePolicyType._all_field_names_ = set(['description']) PasswordStrengthRequirementsChangePolicyType._all_fields_ = [('description', PasswordStrengthRequirementsChangePolicyType.description.validator)] PathLogInfo.contextual.validator = bv.Nullable(FilePath_validator) PathLogInfo.namespace_relative.validator = NamespaceRelativePathLogInfo_validator PathLogInfo._all_field_names_ = set([ 'contextual', 'namespace_relative', ]) PathLogInfo._all_fields_ = [ ('contextual', PathLogInfo.contextual.validator), ('namespace_relative', PathLogInfo.namespace_relative.validator), ] PendingSecondaryEmailAddedDetails.secondary_email.validator = EmailAddress_validator PendingSecondaryEmailAddedDetails._all_field_names_ = set(['secondary_email']) PendingSecondaryEmailAddedDetails._all_fields_ = [('secondary_email', PendingSecondaryEmailAddedDetails.secondary_email.validator)] PendingSecondaryEmailAddedType.description.validator = bv.String() PendingSecondaryEmailAddedType._all_field_names_ = set(['description']) PendingSecondaryEmailAddedType._all_fields_ = [('description', PendingSecondaryEmailAddedType.description.validator)] PermanentDeleteChangePolicyDetails.new_value.validator = ContentPermanentDeletePolicy_validator PermanentDeleteChangePolicyDetails.previous_value.validator = bv.Nullable(ContentPermanentDeletePolicy_validator) PermanentDeleteChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) PermanentDeleteChangePolicyDetails._all_fields_ = [ ('new_value', PermanentDeleteChangePolicyDetails.new_value.validator), ('previous_value', PermanentDeleteChangePolicyDetails.previous_value.validator), ] PermanentDeleteChangePolicyType.description.validator = bv.String() PermanentDeleteChangePolicyType._all_field_names_ = set(['description']) PermanentDeleteChangePolicyType._all_fields_ = [('description', PermanentDeleteChangePolicyType.description.validator)] PlacementRestriction._australia_only_validator = bv.Void() PlacementRestriction._europe_only_validator = bv.Void() PlacementRestriction._japan_only_validator = bv.Void() PlacementRestriction._none_validator = bv.Void() PlacementRestriction._uk_only_validator = bv.Void() PlacementRestriction._us_s3_only_validator = bv.Void() PlacementRestriction._other_validator = bv.Void() PlacementRestriction._tagmap = { 'australia_only': PlacementRestriction._australia_only_validator, 'europe_only': PlacementRestriction._europe_only_validator, 'japan_only': PlacementRestriction._japan_only_validator, 'none': PlacementRestriction._none_validator, 'uk_only': PlacementRestriction._uk_only_validator, 'us_s3_only': PlacementRestriction._us_s3_only_validator, 'other': PlacementRestriction._other_validator, } PlacementRestriction.australia_only = PlacementRestriction('australia_only') PlacementRestriction.europe_only = PlacementRestriction('europe_only') PlacementRestriction.japan_only = PlacementRestriction('japan_only') PlacementRestriction.none = PlacementRestriction('none') PlacementRestriction.uk_only = PlacementRestriction('uk_only') PlacementRestriction.us_s3_only = PlacementRestriction('us_s3_only') PlacementRestriction.other = PlacementRestriction('other') PolicyType._disposition_validator = bv.Void() PolicyType._retention_validator = bv.Void() PolicyType._other_validator = bv.Void() PolicyType._tagmap = { 'disposition': PolicyType._disposition_validator, 'retention': PolicyType._retention_validator, 'other': PolicyType._other_validator, } PolicyType.disposition = PolicyType('disposition') PolicyType.retention = PolicyType('retention') PolicyType.other = PolicyType('other') PrimaryTeamRequestAcceptedDetails.secondary_team.validator = bv.String() PrimaryTeamRequestAcceptedDetails.sent_by.validator = bv.String() PrimaryTeamRequestAcceptedDetails._all_field_names_ = set([ 'secondary_team', 'sent_by', ]) PrimaryTeamRequestAcceptedDetails._all_fields_ = [ ('secondary_team', PrimaryTeamRequestAcceptedDetails.secondary_team.validator), ('sent_by', PrimaryTeamRequestAcceptedDetails.sent_by.validator), ] PrimaryTeamRequestCanceledDetails.secondary_team.validator = bv.String() PrimaryTeamRequestCanceledDetails.sent_by.validator = bv.String() PrimaryTeamRequestCanceledDetails._all_field_names_ = set([ 'secondary_team', 'sent_by', ]) PrimaryTeamRequestCanceledDetails._all_fields_ = [ ('secondary_team', PrimaryTeamRequestCanceledDetails.secondary_team.validator), ('sent_by', PrimaryTeamRequestCanceledDetails.sent_by.validator), ] PrimaryTeamRequestExpiredDetails.secondary_team.validator = bv.String() PrimaryTeamRequestExpiredDetails.sent_by.validator = bv.String() PrimaryTeamRequestExpiredDetails._all_field_names_ = set([ 'secondary_team', 'sent_by', ]) PrimaryTeamRequestExpiredDetails._all_fields_ = [ ('secondary_team', PrimaryTeamRequestExpiredDetails.secondary_team.validator), ('sent_by', PrimaryTeamRequestExpiredDetails.sent_by.validator), ] PrimaryTeamRequestReminderDetails.secondary_team.validator = bv.String() PrimaryTeamRequestReminderDetails.sent_to.validator = bv.String() PrimaryTeamRequestReminderDetails._all_field_names_ = set([ 'secondary_team', 'sent_to', ]) PrimaryTeamRequestReminderDetails._all_fields_ = [ ('secondary_team', PrimaryTeamRequestReminderDetails.secondary_team.validator), ('sent_to', PrimaryTeamRequestReminderDetails.sent_to.validator), ] QuickActionType._delete_shared_link_validator = bv.Void() QuickActionType._reset_password_validator = bv.Void() QuickActionType._restore_file_or_folder_validator = bv.Void() QuickActionType._unlink_app_validator = bv.Void() QuickActionType._unlink_device_validator = bv.Void() QuickActionType._unlink_session_validator = bv.Void() QuickActionType._other_validator = bv.Void() QuickActionType._tagmap = { 'delete_shared_link': QuickActionType._delete_shared_link_validator, 'reset_password': QuickActionType._reset_password_validator, 'restore_file_or_folder': QuickActionType._restore_file_or_folder_validator, 'unlink_app': QuickActionType._unlink_app_validator, 'unlink_device': QuickActionType._unlink_device_validator, 'unlink_session': QuickActionType._unlink_session_validator, 'other': QuickActionType._other_validator, } QuickActionType.delete_shared_link = QuickActionType('delete_shared_link') QuickActionType.reset_password = QuickActionType('reset_password') QuickActionType.restore_file_or_folder = QuickActionType('restore_file_or_folder') QuickActionType.unlink_app = QuickActionType('unlink_app') QuickActionType.unlink_device = QuickActionType('unlink_device') QuickActionType.unlink_session = QuickActionType('unlink_session') QuickActionType.other = QuickActionType('other') RansomwareAlertCreateReportDetails._all_field_names_ = set([]) RansomwareAlertCreateReportDetails._all_fields_ = [] RansomwareAlertCreateReportFailedDetails.failure_reason.validator = team.TeamReportFailureReason_validator RansomwareAlertCreateReportFailedDetails._all_field_names_ = set(['failure_reason']) RansomwareAlertCreateReportFailedDetails._all_fields_ = [('failure_reason', RansomwareAlertCreateReportFailedDetails.failure_reason.validator)] RansomwareAlertCreateReportFailedType.description.validator = bv.String() RansomwareAlertCreateReportFailedType._all_field_names_ = set(['description']) RansomwareAlertCreateReportFailedType._all_fields_ = [('description', RansomwareAlertCreateReportFailedType.description.validator)] RansomwareAlertCreateReportType.description.validator = bv.String() RansomwareAlertCreateReportType._all_field_names_ = set(['description']) RansomwareAlertCreateReportType._all_fields_ = [('description', RansomwareAlertCreateReportType.description.validator)] RansomwareRestoreProcessCompletedDetails.status.validator = bv.String() RansomwareRestoreProcessCompletedDetails.restored_files_count.validator = bv.Int64() RansomwareRestoreProcessCompletedDetails.restored_files_failed_count.validator = bv.Int64() RansomwareRestoreProcessCompletedDetails._all_field_names_ = set([ 'status', 'restored_files_count', 'restored_files_failed_count', ]) RansomwareRestoreProcessCompletedDetails._all_fields_ = [ ('status', RansomwareRestoreProcessCompletedDetails.status.validator), ('restored_files_count', RansomwareRestoreProcessCompletedDetails.restored_files_count.validator), ('restored_files_failed_count', RansomwareRestoreProcessCompletedDetails.restored_files_failed_count.validator), ] RansomwareRestoreProcessCompletedType.description.validator = bv.String() RansomwareRestoreProcessCompletedType._all_field_names_ = set(['description']) RansomwareRestoreProcessCompletedType._all_fields_ = [('description', RansomwareRestoreProcessCompletedType.description.validator)] RansomwareRestoreProcessStartedDetails.extension.validator = bv.String() RansomwareRestoreProcessStartedDetails._all_field_names_ = set(['extension']) RansomwareRestoreProcessStartedDetails._all_fields_ = [('extension', RansomwareRestoreProcessStartedDetails.extension.validator)] RansomwareRestoreProcessStartedType.description.validator = bv.String() RansomwareRestoreProcessStartedType._all_field_names_ = set(['description']) RansomwareRestoreProcessStartedType._all_fields_ = [('description', RansomwareRestoreProcessStartedType.description.validator)] RecipientsConfiguration.recipient_setting_type.validator = bv.Nullable(AlertRecipientsSettingType_validator) RecipientsConfiguration.emails.validator = bv.Nullable(bv.List(EmailAddress_validator)) RecipientsConfiguration.groups.validator = bv.Nullable(bv.List(bv.String())) RecipientsConfiguration._all_field_names_ = set([ 'recipient_setting_type', 'emails', 'groups', ]) RecipientsConfiguration._all_fields_ = [ ('recipient_setting_type', RecipientsConfiguration.recipient_setting_type.validator), ('emails', RecipientsConfiguration.emails.validator), ('groups', RecipientsConfiguration.groups.validator), ] RelocateAssetReferencesLogInfo.src_asset_index.validator = bv.UInt64() RelocateAssetReferencesLogInfo.dest_asset_index.validator = bv.UInt64() RelocateAssetReferencesLogInfo._all_field_names_ = set([ 'src_asset_index', 'dest_asset_index', ]) RelocateAssetReferencesLogInfo._all_fields_ = [ ('src_asset_index', RelocateAssetReferencesLogInfo.src_asset_index.validator), ('dest_asset_index', RelocateAssetReferencesLogInfo.dest_asset_index.validator), ] ReplayFileDeleteDetails._all_field_names_ = set([]) ReplayFileDeleteDetails._all_fields_ = [] ReplayFileDeleteType.description.validator = bv.String() ReplayFileDeleteType._all_field_names_ = set(['description']) ReplayFileDeleteType._all_fields_ = [('description', ReplayFileDeleteType.description.validator)] ReplayFileSharedLinkCreatedDetails._all_field_names_ = set([]) ReplayFileSharedLinkCreatedDetails._all_fields_ = [] ReplayFileSharedLinkCreatedType.description.validator = bv.String() ReplayFileSharedLinkCreatedType._all_field_names_ = set(['description']) ReplayFileSharedLinkCreatedType._all_fields_ = [('description', ReplayFileSharedLinkCreatedType.description.validator)] ReplayFileSharedLinkModifiedDetails._all_field_names_ = set([]) ReplayFileSharedLinkModifiedDetails._all_fields_ = [] ReplayFileSharedLinkModifiedType.description.validator = bv.String() ReplayFileSharedLinkModifiedType._all_field_names_ = set(['description']) ReplayFileSharedLinkModifiedType._all_fields_ = [('description', ReplayFileSharedLinkModifiedType.description.validator)] ReplayProjectTeamAddDetails._all_field_names_ = set([]) ReplayProjectTeamAddDetails._all_fields_ = [] ReplayProjectTeamAddType.description.validator = bv.String() ReplayProjectTeamAddType._all_field_names_ = set(['description']) ReplayProjectTeamAddType._all_fields_ = [('description', ReplayProjectTeamAddType.description.validator)] ReplayProjectTeamDeleteDetails._all_field_names_ = set([]) ReplayProjectTeamDeleteDetails._all_fields_ = [] ReplayProjectTeamDeleteType.description.validator = bv.String() ReplayProjectTeamDeleteType._all_field_names_ = set(['description']) ReplayProjectTeamDeleteType._all_fields_ = [('description', ReplayProjectTeamDeleteType.description.validator)] ResellerLogInfo.reseller_name.validator = bv.String() ResellerLogInfo.reseller_email.validator = EmailAddress_validator ResellerLogInfo._all_field_names_ = set([ 'reseller_name', 'reseller_email', ]) ResellerLogInfo._all_fields_ = [ ('reseller_name', ResellerLogInfo.reseller_name.validator), ('reseller_email', ResellerLogInfo.reseller_email.validator), ] ResellerRole._not_reseller_validator = bv.Void() ResellerRole._reseller_admin_validator = bv.Void() ResellerRole._other_validator = bv.Void() ResellerRole._tagmap = { 'not_reseller': ResellerRole._not_reseller_validator, 'reseller_admin': ResellerRole._reseller_admin_validator, 'other': ResellerRole._other_validator, } ResellerRole.not_reseller = ResellerRole('not_reseller') ResellerRole.reseller_admin = ResellerRole('reseller_admin') ResellerRole.other = ResellerRole('other') ResellerSupportChangePolicyDetails.new_value.validator = ResellerSupportPolicy_validator ResellerSupportChangePolicyDetails.previous_value.validator = ResellerSupportPolicy_validator ResellerSupportChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) ResellerSupportChangePolicyDetails._all_fields_ = [ ('new_value', ResellerSupportChangePolicyDetails.new_value.validator), ('previous_value', ResellerSupportChangePolicyDetails.previous_value.validator), ] ResellerSupportChangePolicyType.description.validator = bv.String() ResellerSupportChangePolicyType._all_field_names_ = set(['description']) ResellerSupportChangePolicyType._all_fields_ = [('description', ResellerSupportChangePolicyType.description.validator)] ResellerSupportPolicy._disabled_validator = bv.Void() ResellerSupportPolicy._enabled_validator = bv.Void() ResellerSupportPolicy._other_validator = bv.Void() ResellerSupportPolicy._tagmap = { 'disabled': ResellerSupportPolicy._disabled_validator, 'enabled': ResellerSupportPolicy._enabled_validator, 'other': ResellerSupportPolicy._other_validator, } ResellerSupportPolicy.disabled = ResellerSupportPolicy('disabled') ResellerSupportPolicy.enabled = ResellerSupportPolicy('enabled') ResellerSupportPolicy.other = ResellerSupportPolicy('other') ResellerSupportSessionEndDetails._all_field_names_ = set([]) ResellerSupportSessionEndDetails._all_fields_ = [] ResellerSupportSessionEndType.description.validator = bv.String() ResellerSupportSessionEndType._all_field_names_ = set(['description']) ResellerSupportSessionEndType._all_fields_ = [('description', ResellerSupportSessionEndType.description.validator)] ResellerSupportSessionStartDetails._all_field_names_ = set([]) ResellerSupportSessionStartDetails._all_fields_ = [] ResellerSupportSessionStartType.description.validator = bv.String() ResellerSupportSessionStartType._all_field_names_ = set(['description']) ResellerSupportSessionStartType._all_fields_ = [('description', ResellerSupportSessionStartType.description.validator)] RewindFolderDetails.rewind_folder_target_ts_ms.validator = common.DropboxTimestamp_validator RewindFolderDetails._all_field_names_ = set(['rewind_folder_target_ts_ms']) RewindFolderDetails._all_fields_ = [('rewind_folder_target_ts_ms', RewindFolderDetails.rewind_folder_target_ts_ms.validator)] RewindFolderType.description.validator = bv.String() RewindFolderType._all_field_names_ = set(['description']) RewindFolderType._all_fields_ = [('description', RewindFolderType.description.validator)] RewindPolicy._admins_only_validator = bv.Void() RewindPolicy._everyone_validator = bv.Void() RewindPolicy._other_validator = bv.Void() RewindPolicy._tagmap = { 'admins_only': RewindPolicy._admins_only_validator, 'everyone': RewindPolicy._everyone_validator, 'other': RewindPolicy._other_validator, } RewindPolicy.admins_only = RewindPolicy('admins_only') RewindPolicy.everyone = RewindPolicy('everyone') RewindPolicy.other = RewindPolicy('other') RewindPolicyChangedDetails.new_value.validator = RewindPolicy_validator RewindPolicyChangedDetails.previous_value.validator = RewindPolicy_validator RewindPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) RewindPolicyChangedDetails._all_fields_ = [ ('new_value', RewindPolicyChangedDetails.new_value.validator), ('previous_value', RewindPolicyChangedDetails.previous_value.validator), ] RewindPolicyChangedType.description.validator = bv.String() RewindPolicyChangedType._all_field_names_ = set(['description']) RewindPolicyChangedType._all_fields_ = [('description', RewindPolicyChangedType.description.validator)] SecondaryEmailDeletedDetails.secondary_email.validator = EmailAddress_validator SecondaryEmailDeletedDetails._all_field_names_ = set(['secondary_email']) SecondaryEmailDeletedDetails._all_fields_ = [('secondary_email', SecondaryEmailDeletedDetails.secondary_email.validator)] SecondaryEmailDeletedType.description.validator = bv.String() SecondaryEmailDeletedType._all_field_names_ = set(['description']) SecondaryEmailDeletedType._all_fields_ = [('description', SecondaryEmailDeletedType.description.validator)] SecondaryEmailVerifiedDetails.secondary_email.validator = EmailAddress_validator SecondaryEmailVerifiedDetails._all_field_names_ = set(['secondary_email']) SecondaryEmailVerifiedDetails._all_fields_ = [('secondary_email', SecondaryEmailVerifiedDetails.secondary_email.validator)] SecondaryEmailVerifiedType.description.validator = bv.String() SecondaryEmailVerifiedType._all_field_names_ = set(['description']) SecondaryEmailVerifiedType._all_fields_ = [('description', SecondaryEmailVerifiedType.description.validator)] SecondaryMailsPolicy._disabled_validator = bv.Void() SecondaryMailsPolicy._enabled_validator = bv.Void() SecondaryMailsPolicy._other_validator = bv.Void() SecondaryMailsPolicy._tagmap = { 'disabled': SecondaryMailsPolicy._disabled_validator, 'enabled': SecondaryMailsPolicy._enabled_validator, 'other': SecondaryMailsPolicy._other_validator, } SecondaryMailsPolicy.disabled = SecondaryMailsPolicy('disabled') SecondaryMailsPolicy.enabled = SecondaryMailsPolicy('enabled') SecondaryMailsPolicy.other = SecondaryMailsPolicy('other') SecondaryMailsPolicyChangedDetails.previous_value.validator = SecondaryMailsPolicy_validator SecondaryMailsPolicyChangedDetails.new_value.validator = SecondaryMailsPolicy_validator SecondaryMailsPolicyChangedDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) SecondaryMailsPolicyChangedDetails._all_fields_ = [ ('previous_value', SecondaryMailsPolicyChangedDetails.previous_value.validator), ('new_value', SecondaryMailsPolicyChangedDetails.new_value.validator), ] SecondaryMailsPolicyChangedType.description.validator = bv.String() SecondaryMailsPolicyChangedType._all_field_names_ = set(['description']) SecondaryMailsPolicyChangedType._all_fields_ = [('description', SecondaryMailsPolicyChangedType.description.validator)] SecondaryTeamRequestAcceptedDetails.primary_team.validator = bv.String() SecondaryTeamRequestAcceptedDetails.sent_by.validator = bv.String() SecondaryTeamRequestAcceptedDetails._all_field_names_ = set([ 'primary_team', 'sent_by', ]) SecondaryTeamRequestAcceptedDetails._all_fields_ = [ ('primary_team', SecondaryTeamRequestAcceptedDetails.primary_team.validator), ('sent_by', SecondaryTeamRequestAcceptedDetails.sent_by.validator), ] SecondaryTeamRequestCanceledDetails.sent_to.validator = bv.String() SecondaryTeamRequestCanceledDetails.sent_by.validator = bv.String() SecondaryTeamRequestCanceledDetails._all_field_names_ = set([ 'sent_to', 'sent_by', ]) SecondaryTeamRequestCanceledDetails._all_fields_ = [ ('sent_to', SecondaryTeamRequestCanceledDetails.sent_to.validator), ('sent_by', SecondaryTeamRequestCanceledDetails.sent_by.validator), ] SecondaryTeamRequestExpiredDetails.sent_to.validator = bv.String() SecondaryTeamRequestExpiredDetails._all_field_names_ = set(['sent_to']) SecondaryTeamRequestExpiredDetails._all_fields_ = [('sent_to', SecondaryTeamRequestExpiredDetails.sent_to.validator)] SecondaryTeamRequestReminderDetails.sent_to.validator = bv.String() SecondaryTeamRequestReminderDetails._all_field_names_ = set(['sent_to']) SecondaryTeamRequestReminderDetails._all_fields_ = [('sent_to', SecondaryTeamRequestReminderDetails.sent_to.validator)] SendForSignaturePolicy._disabled_validator = bv.Void() SendForSignaturePolicy._enabled_validator = bv.Void() SendForSignaturePolicy._other_validator = bv.Void() SendForSignaturePolicy._tagmap = { 'disabled': SendForSignaturePolicy._disabled_validator, 'enabled': SendForSignaturePolicy._enabled_validator, 'other': SendForSignaturePolicy._other_validator, } SendForSignaturePolicy.disabled = SendForSignaturePolicy('disabled') SendForSignaturePolicy.enabled = SendForSignaturePolicy('enabled') SendForSignaturePolicy.other = SendForSignaturePolicy('other') SendForSignaturePolicyChangedDetails.new_value.validator = SendForSignaturePolicy_validator SendForSignaturePolicyChangedDetails.previous_value.validator = SendForSignaturePolicy_validator SendForSignaturePolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SendForSignaturePolicyChangedDetails._all_fields_ = [ ('new_value', SendForSignaturePolicyChangedDetails.new_value.validator), ('previous_value', SendForSignaturePolicyChangedDetails.previous_value.validator), ] SendForSignaturePolicyChangedType.description.validator = bv.String() SendForSignaturePolicyChangedType._all_field_names_ = set(['description']) SendForSignaturePolicyChangedType._all_fields_ = [('description', SendForSignaturePolicyChangedType.description.validator)] SfAddGroupDetails.target_asset_index.validator = bv.UInt64() SfAddGroupDetails.original_folder_name.validator = bv.String() SfAddGroupDetails.sharing_permission.validator = bv.Nullable(bv.String()) SfAddGroupDetails.team_name.validator = bv.String() SfAddGroupDetails._all_field_names_ = set([ 'target_asset_index', 'original_folder_name', 'sharing_permission', 'team_name', ]) SfAddGroupDetails._all_fields_ = [ ('target_asset_index', SfAddGroupDetails.target_asset_index.validator), ('original_folder_name', SfAddGroupDetails.original_folder_name.validator), ('sharing_permission', SfAddGroupDetails.sharing_permission.validator), ('team_name', SfAddGroupDetails.team_name.validator), ] SfAddGroupType.description.validator = bv.String() SfAddGroupType._all_field_names_ = set(['description']) SfAddGroupType._all_fields_ = [('description', SfAddGroupType.description.validator)] SfAllowNonMembersToViewSharedLinksDetails.target_asset_index.validator = bv.UInt64() SfAllowNonMembersToViewSharedLinksDetails.original_folder_name.validator = bv.String() SfAllowNonMembersToViewSharedLinksDetails.shared_folder_type.validator = bv.Nullable(bv.String()) SfAllowNonMembersToViewSharedLinksDetails._all_field_names_ = set([ 'target_asset_index', 'original_folder_name', 'shared_folder_type', ]) SfAllowNonMembersToViewSharedLinksDetails._all_fields_ = [ ('target_asset_index', SfAllowNonMembersToViewSharedLinksDetails.target_asset_index.validator), ('original_folder_name', SfAllowNonMembersToViewSharedLinksDetails.original_folder_name.validator), ('shared_folder_type', SfAllowNonMembersToViewSharedLinksDetails.shared_folder_type.validator), ] SfAllowNonMembersToViewSharedLinksType.description.validator = bv.String() SfAllowNonMembersToViewSharedLinksType._all_field_names_ = set(['description']) SfAllowNonMembersToViewSharedLinksType._all_fields_ = [('description', SfAllowNonMembersToViewSharedLinksType.description.validator)] SfExternalInviteWarnDetails.target_asset_index.validator = bv.UInt64() SfExternalInviteWarnDetails.original_folder_name.validator = bv.String() SfExternalInviteWarnDetails.new_sharing_permission.validator = bv.Nullable(bv.String()) SfExternalInviteWarnDetails.previous_sharing_permission.validator = bv.Nullable(bv.String()) SfExternalInviteWarnDetails._all_field_names_ = set([ 'target_asset_index', 'original_folder_name', 'new_sharing_permission', 'previous_sharing_permission', ]) SfExternalInviteWarnDetails._all_fields_ = [ ('target_asset_index', SfExternalInviteWarnDetails.target_asset_index.validator), ('original_folder_name', SfExternalInviteWarnDetails.original_folder_name.validator), ('new_sharing_permission', SfExternalInviteWarnDetails.new_sharing_permission.validator), ('previous_sharing_permission', SfExternalInviteWarnDetails.previous_sharing_permission.validator), ] SfExternalInviteWarnType.description.validator = bv.String() SfExternalInviteWarnType._all_field_names_ = set(['description']) SfExternalInviteWarnType._all_fields_ = [('description', SfExternalInviteWarnType.description.validator)] SfFbInviteChangeRoleDetails.target_asset_index.validator = bv.UInt64() SfFbInviteChangeRoleDetails.original_folder_name.validator = bv.String() SfFbInviteChangeRoleDetails.previous_sharing_permission.validator = bv.Nullable(bv.String()) SfFbInviteChangeRoleDetails.new_sharing_permission.validator = bv.Nullable(bv.String()) SfFbInviteChangeRoleDetails._all_field_names_ = set([ 'target_asset_index', 'original_folder_name', 'previous_sharing_permission', 'new_sharing_permission', ]) SfFbInviteChangeRoleDetails._all_fields_ = [ ('target_asset_index', SfFbInviteChangeRoleDetails.target_asset_index.validator), ('original_folder_name', SfFbInviteChangeRoleDetails.original_folder_name.validator), ('previous_sharing_permission', SfFbInviteChangeRoleDetails.previous_sharing_permission.validator), ('new_sharing_permission', SfFbInviteChangeRoleDetails.new_sharing_permission.validator), ] SfFbInviteChangeRoleType.description.validator = bv.String() SfFbInviteChangeRoleType._all_field_names_ = set(['description']) SfFbInviteChangeRoleType._all_fields_ = [('description', SfFbInviteChangeRoleType.description.validator)] SfFbInviteDetails.target_asset_index.validator = bv.UInt64() SfFbInviteDetails.original_folder_name.validator = bv.String() SfFbInviteDetails.sharing_permission.validator = bv.Nullable(bv.String()) SfFbInviteDetails._all_field_names_ = set([ 'target_asset_index', 'original_folder_name', 'sharing_permission', ]) SfFbInviteDetails._all_fields_ = [ ('target_asset_index', SfFbInviteDetails.target_asset_index.validator), ('original_folder_name', SfFbInviteDetails.original_folder_name.validator), ('sharing_permission', SfFbInviteDetails.sharing_permission.validator), ] SfFbInviteType.description.validator = bv.String() SfFbInviteType._all_field_names_ = set(['description']) SfFbInviteType._all_fields_ = [('description', SfFbInviteType.description.validator)] SfFbUninviteDetails.target_asset_index.validator = bv.UInt64() SfFbUninviteDetails.original_folder_name.validator = bv.String() SfFbUninviteDetails._all_field_names_ = set([ 'target_asset_index', 'original_folder_name', ]) SfFbUninviteDetails._all_fields_ = [ ('target_asset_index', SfFbUninviteDetails.target_asset_index.validator), ('original_folder_name', SfFbUninviteDetails.original_folder_name.validator), ] SfFbUninviteType.description.validator = bv.String() SfFbUninviteType._all_field_names_ = set(['description']) SfFbUninviteType._all_fields_ = [('description', SfFbUninviteType.description.validator)] SfInviteGroupDetails.target_asset_index.validator = bv.UInt64() SfInviteGroupDetails._all_field_names_ = set(['target_asset_index']) SfInviteGroupDetails._all_fields_ = [('target_asset_index', SfInviteGroupDetails.target_asset_index.validator)] SfInviteGroupType.description.validator = bv.String() SfInviteGroupType._all_field_names_ = set(['description']) SfInviteGroupType._all_fields_ = [('description', SfInviteGroupType.description.validator)] SfTeamGrantAccessDetails.target_asset_index.validator = bv.UInt64() SfTeamGrantAccessDetails.original_folder_name.validator = bv.String() SfTeamGrantAccessDetails._all_field_names_ = set([ 'target_asset_index', 'original_folder_name', ]) SfTeamGrantAccessDetails._all_fields_ = [ ('target_asset_index', SfTeamGrantAccessDetails.target_asset_index.validator), ('original_folder_name', SfTeamGrantAccessDetails.original_folder_name.validator), ] SfTeamGrantAccessType.description.validator = bv.String() SfTeamGrantAccessType._all_field_names_ = set(['description']) SfTeamGrantAccessType._all_fields_ = [('description', SfTeamGrantAccessType.description.validator)] SfTeamInviteChangeRoleDetails.target_asset_index.validator = bv.UInt64() SfTeamInviteChangeRoleDetails.original_folder_name.validator = bv.String() SfTeamInviteChangeRoleDetails.new_sharing_permission.validator = bv.Nullable(bv.String()) SfTeamInviteChangeRoleDetails.previous_sharing_permission.validator = bv.Nullable(bv.String()) SfTeamInviteChangeRoleDetails._all_field_names_ = set([ 'target_asset_index', 'original_folder_name', 'new_sharing_permission', 'previous_sharing_permission', ]) SfTeamInviteChangeRoleDetails._all_fields_ = [ ('target_asset_index', SfTeamInviteChangeRoleDetails.target_asset_index.validator), ('original_folder_name', SfTeamInviteChangeRoleDetails.original_folder_name.validator), ('new_sharing_permission', SfTeamInviteChangeRoleDetails.new_sharing_permission.validator), ('previous_sharing_permission', SfTeamInviteChangeRoleDetails.previous_sharing_permission.validator), ] SfTeamInviteChangeRoleType.description.validator = bv.String() SfTeamInviteChangeRoleType._all_field_names_ = set(['description']) SfTeamInviteChangeRoleType._all_fields_ = [('description', SfTeamInviteChangeRoleType.description.validator)] SfTeamInviteDetails.target_asset_index.validator = bv.UInt64() SfTeamInviteDetails.original_folder_name.validator = bv.String() SfTeamInviteDetails.sharing_permission.validator = bv.Nullable(bv.String()) SfTeamInviteDetails._all_field_names_ = set([ 'target_asset_index', 'original_folder_name', 'sharing_permission', ]) SfTeamInviteDetails._all_fields_ = [ ('target_asset_index', SfTeamInviteDetails.target_asset_index.validator), ('original_folder_name', SfTeamInviteDetails.original_folder_name.validator), ('sharing_permission', SfTeamInviteDetails.sharing_permission.validator), ] SfTeamInviteType.description.validator = bv.String() SfTeamInviteType._all_field_names_ = set(['description']) SfTeamInviteType._all_fields_ = [('description', SfTeamInviteType.description.validator)] SfTeamJoinDetails.target_asset_index.validator = bv.UInt64() SfTeamJoinDetails.original_folder_name.validator = bv.String() SfTeamJoinDetails._all_field_names_ = set([ 'target_asset_index', 'original_folder_name', ]) SfTeamJoinDetails._all_fields_ = [ ('target_asset_index', SfTeamJoinDetails.target_asset_index.validator), ('original_folder_name', SfTeamJoinDetails.original_folder_name.validator), ] SfTeamJoinFromOobLinkDetails.target_asset_index.validator = bv.UInt64() SfTeamJoinFromOobLinkDetails.original_folder_name.validator = bv.String() SfTeamJoinFromOobLinkDetails.token_key.validator = bv.Nullable(bv.String()) SfTeamJoinFromOobLinkDetails.sharing_permission.validator = bv.Nullable(bv.String()) SfTeamJoinFromOobLinkDetails._all_field_names_ = set([ 'target_asset_index', 'original_folder_name', 'token_key', 'sharing_permission', ]) SfTeamJoinFromOobLinkDetails._all_fields_ = [ ('target_asset_index', SfTeamJoinFromOobLinkDetails.target_asset_index.validator), ('original_folder_name', SfTeamJoinFromOobLinkDetails.original_folder_name.validator), ('token_key', SfTeamJoinFromOobLinkDetails.token_key.validator), ('sharing_permission', SfTeamJoinFromOobLinkDetails.sharing_permission.validator), ] SfTeamJoinFromOobLinkType.description.validator = bv.String() SfTeamJoinFromOobLinkType._all_field_names_ = set(['description']) SfTeamJoinFromOobLinkType._all_fields_ = [('description', SfTeamJoinFromOobLinkType.description.validator)] SfTeamJoinType.description.validator = bv.String() SfTeamJoinType._all_field_names_ = set(['description']) SfTeamJoinType._all_fields_ = [('description', SfTeamJoinType.description.validator)] SfTeamUninviteDetails.target_asset_index.validator = bv.UInt64() SfTeamUninviteDetails.original_folder_name.validator = bv.String() SfTeamUninviteDetails._all_field_names_ = set([ 'target_asset_index', 'original_folder_name', ]) SfTeamUninviteDetails._all_fields_ = [ ('target_asset_index', SfTeamUninviteDetails.target_asset_index.validator), ('original_folder_name', SfTeamUninviteDetails.original_folder_name.validator), ] SfTeamUninviteType.description.validator = bv.String() SfTeamUninviteType._all_field_names_ = set(['description']) SfTeamUninviteType._all_fields_ = [('description', SfTeamUninviteType.description.validator)] SharedContentAddInviteesDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedContentAddInviteesDetails.invitees.validator = bv.List(EmailAddress_validator) SharedContentAddInviteesDetails._all_field_names_ = set([ 'shared_content_access_level', 'invitees', ]) SharedContentAddInviteesDetails._all_fields_ = [ ('shared_content_access_level', SharedContentAddInviteesDetails.shared_content_access_level.validator), ('invitees', SharedContentAddInviteesDetails.invitees.validator), ] SharedContentAddInviteesType.description.validator = bv.String() SharedContentAddInviteesType._all_field_names_ = set(['description']) SharedContentAddInviteesType._all_fields_ = [('description', SharedContentAddInviteesType.description.validator)] SharedContentAddLinkExpiryDetails.new_value.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedContentAddLinkExpiryDetails._all_field_names_ = set(['new_value']) SharedContentAddLinkExpiryDetails._all_fields_ = [('new_value', SharedContentAddLinkExpiryDetails.new_value.validator)] SharedContentAddLinkExpiryType.description.validator = bv.String() SharedContentAddLinkExpiryType._all_field_names_ = set(['description']) SharedContentAddLinkExpiryType._all_fields_ = [('description', SharedContentAddLinkExpiryType.description.validator)] SharedContentAddLinkPasswordDetails._all_field_names_ = set([]) SharedContentAddLinkPasswordDetails._all_fields_ = [] SharedContentAddLinkPasswordType.description.validator = bv.String() SharedContentAddLinkPasswordType._all_field_names_ = set(['description']) SharedContentAddLinkPasswordType._all_fields_ = [('description', SharedContentAddLinkPasswordType.description.validator)] SharedContentAddMemberDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedContentAddMemberDetails._all_field_names_ = set(['shared_content_access_level']) SharedContentAddMemberDetails._all_fields_ = [('shared_content_access_level', SharedContentAddMemberDetails.shared_content_access_level.validator)] SharedContentAddMemberType.description.validator = bv.String() SharedContentAddMemberType._all_field_names_ = set(['description']) SharedContentAddMemberType._all_fields_ = [('description', SharedContentAddMemberType.description.validator)] SharedContentChangeDownloadsPolicyDetails.new_value.validator = DownloadPolicyType_validator SharedContentChangeDownloadsPolicyDetails.previous_value.validator = bv.Nullable(DownloadPolicyType_validator) SharedContentChangeDownloadsPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharedContentChangeDownloadsPolicyDetails._all_fields_ = [ ('new_value', SharedContentChangeDownloadsPolicyDetails.new_value.validator), ('previous_value', SharedContentChangeDownloadsPolicyDetails.previous_value.validator), ] SharedContentChangeDownloadsPolicyType.description.validator = bv.String() SharedContentChangeDownloadsPolicyType._all_field_names_ = set(['description']) SharedContentChangeDownloadsPolicyType._all_fields_ = [('description', SharedContentChangeDownloadsPolicyType.description.validator)] SharedContentChangeInviteeRoleDetails.previous_access_level.validator = bv.Nullable(sharing.AccessLevel_validator) SharedContentChangeInviteeRoleDetails.new_access_level.validator = sharing.AccessLevel_validator SharedContentChangeInviteeRoleDetails.invitee.validator = EmailAddress_validator SharedContentChangeInviteeRoleDetails._all_field_names_ = set([ 'previous_access_level', 'new_access_level', 'invitee', ]) SharedContentChangeInviteeRoleDetails._all_fields_ = [ ('previous_access_level', SharedContentChangeInviteeRoleDetails.previous_access_level.validator), ('new_access_level', SharedContentChangeInviteeRoleDetails.new_access_level.validator), ('invitee', SharedContentChangeInviteeRoleDetails.invitee.validator), ] SharedContentChangeInviteeRoleType.description.validator = bv.String() SharedContentChangeInviteeRoleType._all_field_names_ = set(['description']) SharedContentChangeInviteeRoleType._all_fields_ = [('description', SharedContentChangeInviteeRoleType.description.validator)] SharedContentChangeLinkAudienceDetails.new_value.validator = sharing.LinkAudience_validator SharedContentChangeLinkAudienceDetails.previous_value.validator = bv.Nullable(sharing.LinkAudience_validator) SharedContentChangeLinkAudienceDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharedContentChangeLinkAudienceDetails._all_fields_ = [ ('new_value', SharedContentChangeLinkAudienceDetails.new_value.validator), ('previous_value', SharedContentChangeLinkAudienceDetails.previous_value.validator), ] SharedContentChangeLinkAudienceType.description.validator = bv.String() SharedContentChangeLinkAudienceType._all_field_names_ = set(['description']) SharedContentChangeLinkAudienceType._all_fields_ = [('description', SharedContentChangeLinkAudienceType.description.validator)] SharedContentChangeLinkExpiryDetails.new_value.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedContentChangeLinkExpiryDetails.previous_value.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedContentChangeLinkExpiryDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharedContentChangeLinkExpiryDetails._all_fields_ = [ ('new_value', SharedContentChangeLinkExpiryDetails.new_value.validator), ('previous_value', SharedContentChangeLinkExpiryDetails.previous_value.validator), ] SharedContentChangeLinkExpiryType.description.validator = bv.String() SharedContentChangeLinkExpiryType._all_field_names_ = set(['description']) SharedContentChangeLinkExpiryType._all_fields_ = [('description', SharedContentChangeLinkExpiryType.description.validator)] SharedContentChangeLinkPasswordDetails._all_field_names_ = set([]) SharedContentChangeLinkPasswordDetails._all_fields_ = [] SharedContentChangeLinkPasswordType.description.validator = bv.String() SharedContentChangeLinkPasswordType._all_field_names_ = set(['description']) SharedContentChangeLinkPasswordType._all_fields_ = [('description', SharedContentChangeLinkPasswordType.description.validator)] SharedContentChangeMemberRoleDetails.previous_access_level.validator = bv.Nullable(sharing.AccessLevel_validator) SharedContentChangeMemberRoleDetails.new_access_level.validator = sharing.AccessLevel_validator SharedContentChangeMemberRoleDetails._all_field_names_ = set([ 'previous_access_level', 'new_access_level', ]) SharedContentChangeMemberRoleDetails._all_fields_ = [ ('previous_access_level', SharedContentChangeMemberRoleDetails.previous_access_level.validator), ('new_access_level', SharedContentChangeMemberRoleDetails.new_access_level.validator), ] SharedContentChangeMemberRoleType.description.validator = bv.String() SharedContentChangeMemberRoleType._all_field_names_ = set(['description']) SharedContentChangeMemberRoleType._all_fields_ = [('description', SharedContentChangeMemberRoleType.description.validator)] SharedContentChangeViewerInfoPolicyDetails.new_value.validator = sharing.ViewerInfoPolicy_validator SharedContentChangeViewerInfoPolicyDetails.previous_value.validator = bv.Nullable(sharing.ViewerInfoPolicy_validator) SharedContentChangeViewerInfoPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharedContentChangeViewerInfoPolicyDetails._all_fields_ = [ ('new_value', SharedContentChangeViewerInfoPolicyDetails.new_value.validator), ('previous_value', SharedContentChangeViewerInfoPolicyDetails.previous_value.validator), ] SharedContentChangeViewerInfoPolicyType.description.validator = bv.String() SharedContentChangeViewerInfoPolicyType._all_field_names_ = set(['description']) SharedContentChangeViewerInfoPolicyType._all_fields_ = [('description', SharedContentChangeViewerInfoPolicyType.description.validator)] SharedContentClaimInvitationDetails.shared_content_link.validator = bv.Nullable(bv.String()) SharedContentClaimInvitationDetails._all_field_names_ = set(['shared_content_link']) SharedContentClaimInvitationDetails._all_fields_ = [('shared_content_link', SharedContentClaimInvitationDetails.shared_content_link.validator)] SharedContentClaimInvitationType.description.validator = bv.String() SharedContentClaimInvitationType._all_field_names_ = set(['description']) SharedContentClaimInvitationType._all_fields_ = [('description', SharedContentClaimInvitationType.description.validator)] SharedContentCopyDetails.shared_content_link.validator = bv.String() SharedContentCopyDetails.shared_content_owner.validator = bv.Nullable(UserLogInfo_validator) SharedContentCopyDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedContentCopyDetails.destination_path.validator = FilePath_validator SharedContentCopyDetails._all_field_names_ = set([ 'shared_content_link', 'shared_content_owner', 'shared_content_access_level', 'destination_path', ]) SharedContentCopyDetails._all_fields_ = [ ('shared_content_link', SharedContentCopyDetails.shared_content_link.validator), ('shared_content_owner', SharedContentCopyDetails.shared_content_owner.validator), ('shared_content_access_level', SharedContentCopyDetails.shared_content_access_level.validator), ('destination_path', SharedContentCopyDetails.destination_path.validator), ] SharedContentCopyType.description.validator = bv.String() SharedContentCopyType._all_field_names_ = set(['description']) SharedContentCopyType._all_fields_ = [('description', SharedContentCopyType.description.validator)] SharedContentDownloadDetails.shared_content_link.validator = bv.String() SharedContentDownloadDetails.shared_content_owner.validator = bv.Nullable(UserLogInfo_validator) SharedContentDownloadDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedContentDownloadDetails._all_field_names_ = set([ 'shared_content_link', 'shared_content_owner', 'shared_content_access_level', ]) SharedContentDownloadDetails._all_fields_ = [ ('shared_content_link', SharedContentDownloadDetails.shared_content_link.validator), ('shared_content_owner', SharedContentDownloadDetails.shared_content_owner.validator), ('shared_content_access_level', SharedContentDownloadDetails.shared_content_access_level.validator), ] SharedContentDownloadType.description.validator = bv.String() SharedContentDownloadType._all_field_names_ = set(['description']) SharedContentDownloadType._all_fields_ = [('description', SharedContentDownloadType.description.validator)] SharedContentRelinquishMembershipDetails._all_field_names_ = set([]) SharedContentRelinquishMembershipDetails._all_fields_ = [] SharedContentRelinquishMembershipType.description.validator = bv.String() SharedContentRelinquishMembershipType._all_field_names_ = set(['description']) SharedContentRelinquishMembershipType._all_fields_ = [('description', SharedContentRelinquishMembershipType.description.validator)] SharedContentRemoveInviteesDetails.invitees.validator = bv.List(EmailAddress_validator) SharedContentRemoveInviteesDetails._all_field_names_ = set(['invitees']) SharedContentRemoveInviteesDetails._all_fields_ = [('invitees', SharedContentRemoveInviteesDetails.invitees.validator)] SharedContentRemoveInviteesType.description.validator = bv.String() SharedContentRemoveInviteesType._all_field_names_ = set(['description']) SharedContentRemoveInviteesType._all_fields_ = [('description', SharedContentRemoveInviteesType.description.validator)] SharedContentRemoveLinkExpiryDetails.previous_value.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedContentRemoveLinkExpiryDetails._all_field_names_ = set(['previous_value']) SharedContentRemoveLinkExpiryDetails._all_fields_ = [('previous_value', SharedContentRemoveLinkExpiryDetails.previous_value.validator)] SharedContentRemoveLinkExpiryType.description.validator = bv.String() SharedContentRemoveLinkExpiryType._all_field_names_ = set(['description']) SharedContentRemoveLinkExpiryType._all_fields_ = [('description', SharedContentRemoveLinkExpiryType.description.validator)] SharedContentRemoveLinkPasswordDetails._all_field_names_ = set([]) SharedContentRemoveLinkPasswordDetails._all_fields_ = [] SharedContentRemoveLinkPasswordType.description.validator = bv.String() SharedContentRemoveLinkPasswordType._all_field_names_ = set(['description']) SharedContentRemoveLinkPasswordType._all_fields_ = [('description', SharedContentRemoveLinkPasswordType.description.validator)] SharedContentRemoveMemberDetails.shared_content_access_level.validator = bv.Nullable(sharing.AccessLevel_validator) SharedContentRemoveMemberDetails._all_field_names_ = set(['shared_content_access_level']) SharedContentRemoveMemberDetails._all_fields_ = [('shared_content_access_level', SharedContentRemoveMemberDetails.shared_content_access_level.validator)] SharedContentRemoveMemberType.description.validator = bv.String() SharedContentRemoveMemberType._all_field_names_ = set(['description']) SharedContentRemoveMemberType._all_fields_ = [('description', SharedContentRemoveMemberType.description.validator)] SharedContentRequestAccessDetails.shared_content_link.validator = bv.Nullable(bv.String()) SharedContentRequestAccessDetails._all_field_names_ = set(['shared_content_link']) SharedContentRequestAccessDetails._all_fields_ = [('shared_content_link', SharedContentRequestAccessDetails.shared_content_link.validator)] SharedContentRequestAccessType.description.validator = bv.String() SharedContentRequestAccessType._all_field_names_ = set(['description']) SharedContentRequestAccessType._all_fields_ = [('description', SharedContentRequestAccessType.description.validator)] SharedContentRestoreInviteesDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedContentRestoreInviteesDetails.invitees.validator = bv.List(EmailAddress_validator) SharedContentRestoreInviteesDetails._all_field_names_ = set([ 'shared_content_access_level', 'invitees', ]) SharedContentRestoreInviteesDetails._all_fields_ = [ ('shared_content_access_level', SharedContentRestoreInviteesDetails.shared_content_access_level.validator), ('invitees', SharedContentRestoreInviteesDetails.invitees.validator), ] SharedContentRestoreInviteesType.description.validator = bv.String() SharedContentRestoreInviteesType._all_field_names_ = set(['description']) SharedContentRestoreInviteesType._all_fields_ = [('description', SharedContentRestoreInviteesType.description.validator)] SharedContentRestoreMemberDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedContentRestoreMemberDetails._all_field_names_ = set(['shared_content_access_level']) SharedContentRestoreMemberDetails._all_fields_ = [('shared_content_access_level', SharedContentRestoreMemberDetails.shared_content_access_level.validator)] SharedContentRestoreMemberType.description.validator = bv.String() SharedContentRestoreMemberType._all_field_names_ = set(['description']) SharedContentRestoreMemberType._all_fields_ = [('description', SharedContentRestoreMemberType.description.validator)] SharedContentUnshareDetails._all_field_names_ = set([]) SharedContentUnshareDetails._all_fields_ = [] SharedContentUnshareType.description.validator = bv.String() SharedContentUnshareType._all_field_names_ = set(['description']) SharedContentUnshareType._all_fields_ = [('description', SharedContentUnshareType.description.validator)] SharedContentViewDetails.shared_content_link.validator = bv.String() SharedContentViewDetails.shared_content_owner.validator = bv.Nullable(UserLogInfo_validator) SharedContentViewDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedContentViewDetails._all_field_names_ = set([ 'shared_content_link', 'shared_content_owner', 'shared_content_access_level', ]) SharedContentViewDetails._all_fields_ = [ ('shared_content_link', SharedContentViewDetails.shared_content_link.validator), ('shared_content_owner', SharedContentViewDetails.shared_content_owner.validator), ('shared_content_access_level', SharedContentViewDetails.shared_content_access_level.validator), ] SharedContentViewType.description.validator = bv.String() SharedContentViewType._all_field_names_ = set(['description']) SharedContentViewType._all_fields_ = [('description', SharedContentViewType.description.validator)] SharedFolderChangeLinkPolicyDetails.new_value.validator = sharing.SharedLinkPolicy_validator SharedFolderChangeLinkPolicyDetails.previous_value.validator = bv.Nullable(sharing.SharedLinkPolicy_validator) SharedFolderChangeLinkPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharedFolderChangeLinkPolicyDetails._all_fields_ = [ ('new_value', SharedFolderChangeLinkPolicyDetails.new_value.validator), ('previous_value', SharedFolderChangeLinkPolicyDetails.previous_value.validator), ] SharedFolderChangeLinkPolicyType.description.validator = bv.String() SharedFolderChangeLinkPolicyType._all_field_names_ = set(['description']) SharedFolderChangeLinkPolicyType._all_fields_ = [('description', SharedFolderChangeLinkPolicyType.description.validator)] SharedFolderChangeMembersInheritancePolicyDetails.new_value.validator = SharedFolderMembersInheritancePolicy_validator SharedFolderChangeMembersInheritancePolicyDetails.previous_value.validator = bv.Nullable(SharedFolderMembersInheritancePolicy_validator) SharedFolderChangeMembersInheritancePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharedFolderChangeMembersInheritancePolicyDetails._all_fields_ = [ ('new_value', SharedFolderChangeMembersInheritancePolicyDetails.new_value.validator), ('previous_value', SharedFolderChangeMembersInheritancePolicyDetails.previous_value.validator), ] SharedFolderChangeMembersInheritancePolicyType.description.validator = bv.String() SharedFolderChangeMembersInheritancePolicyType._all_field_names_ = set(['description']) SharedFolderChangeMembersInheritancePolicyType._all_fields_ = [('description', SharedFolderChangeMembersInheritancePolicyType.description.validator)] SharedFolderChangeMembersManagementPolicyDetails.new_value.validator = sharing.AclUpdatePolicy_validator SharedFolderChangeMembersManagementPolicyDetails.previous_value.validator = bv.Nullable(sharing.AclUpdatePolicy_validator) SharedFolderChangeMembersManagementPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharedFolderChangeMembersManagementPolicyDetails._all_fields_ = [ ('new_value', SharedFolderChangeMembersManagementPolicyDetails.new_value.validator), ('previous_value', SharedFolderChangeMembersManagementPolicyDetails.previous_value.validator), ] SharedFolderChangeMembersManagementPolicyType.description.validator = bv.String() SharedFolderChangeMembersManagementPolicyType._all_field_names_ = set(['description']) SharedFolderChangeMembersManagementPolicyType._all_fields_ = [('description', SharedFolderChangeMembersManagementPolicyType.description.validator)] SharedFolderChangeMembersPolicyDetails.new_value.validator = sharing.MemberPolicy_validator SharedFolderChangeMembersPolicyDetails.previous_value.validator = bv.Nullable(sharing.MemberPolicy_validator) SharedFolderChangeMembersPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharedFolderChangeMembersPolicyDetails._all_fields_ = [ ('new_value', SharedFolderChangeMembersPolicyDetails.new_value.validator), ('previous_value', SharedFolderChangeMembersPolicyDetails.previous_value.validator), ] SharedFolderChangeMembersPolicyType.description.validator = bv.String() SharedFolderChangeMembersPolicyType._all_field_names_ = set(['description']) SharedFolderChangeMembersPolicyType._all_fields_ = [('description', SharedFolderChangeMembersPolicyType.description.validator)] SharedFolderCreateDetails.target_ns_id.validator = bv.Nullable(NamespaceId_validator) SharedFolderCreateDetails._all_field_names_ = set(['target_ns_id']) SharedFolderCreateDetails._all_fields_ = [('target_ns_id', SharedFolderCreateDetails.target_ns_id.validator)] SharedFolderCreateType.description.validator = bv.String() SharedFolderCreateType._all_field_names_ = set(['description']) SharedFolderCreateType._all_fields_ = [('description', SharedFolderCreateType.description.validator)] SharedFolderDeclineInvitationDetails._all_field_names_ = set([]) SharedFolderDeclineInvitationDetails._all_fields_ = [] SharedFolderDeclineInvitationType.description.validator = bv.String() SharedFolderDeclineInvitationType._all_field_names_ = set(['description']) SharedFolderDeclineInvitationType._all_fields_ = [('description', SharedFolderDeclineInvitationType.description.validator)] SharedFolderMembersInheritancePolicy._dont_inherit_members_validator = bv.Void() SharedFolderMembersInheritancePolicy._inherit_members_validator = bv.Void() SharedFolderMembersInheritancePolicy._other_validator = bv.Void() SharedFolderMembersInheritancePolicy._tagmap = { 'dont_inherit_members': SharedFolderMembersInheritancePolicy._dont_inherit_members_validator, 'inherit_members': SharedFolderMembersInheritancePolicy._inherit_members_validator, 'other': SharedFolderMembersInheritancePolicy._other_validator, } SharedFolderMembersInheritancePolicy.dont_inherit_members = SharedFolderMembersInheritancePolicy('dont_inherit_members') SharedFolderMembersInheritancePolicy.inherit_members = SharedFolderMembersInheritancePolicy('inherit_members') SharedFolderMembersInheritancePolicy.other = SharedFolderMembersInheritancePolicy('other') SharedFolderMountDetails._all_field_names_ = set([]) SharedFolderMountDetails._all_fields_ = [] SharedFolderMountType.description.validator = bv.String() SharedFolderMountType._all_field_names_ = set(['description']) SharedFolderMountType._all_fields_ = [('description', SharedFolderMountType.description.validator)] SharedFolderNestDetails.previous_parent_ns_id.validator = bv.Nullable(NamespaceId_validator) SharedFolderNestDetails.new_parent_ns_id.validator = bv.Nullable(NamespaceId_validator) SharedFolderNestDetails.previous_ns_path.validator = bv.Nullable(FilePath_validator) SharedFolderNestDetails.new_ns_path.validator = bv.Nullable(FilePath_validator) SharedFolderNestDetails._all_field_names_ = set([ 'previous_parent_ns_id', 'new_parent_ns_id', 'previous_ns_path', 'new_ns_path', ]) SharedFolderNestDetails._all_fields_ = [ ('previous_parent_ns_id', SharedFolderNestDetails.previous_parent_ns_id.validator), ('new_parent_ns_id', SharedFolderNestDetails.new_parent_ns_id.validator), ('previous_ns_path', SharedFolderNestDetails.previous_ns_path.validator), ('new_ns_path', SharedFolderNestDetails.new_ns_path.validator), ] SharedFolderNestType.description.validator = bv.String() SharedFolderNestType._all_field_names_ = set(['description']) SharedFolderNestType._all_fields_ = [('description', SharedFolderNestType.description.validator)] SharedFolderTransferOwnershipDetails.previous_owner_email.validator = bv.Nullable(EmailAddress_validator) SharedFolderTransferOwnershipDetails.new_owner_email.validator = EmailAddress_validator SharedFolderTransferOwnershipDetails._all_field_names_ = set([ 'previous_owner_email', 'new_owner_email', ]) SharedFolderTransferOwnershipDetails._all_fields_ = [ ('previous_owner_email', SharedFolderTransferOwnershipDetails.previous_owner_email.validator), ('new_owner_email', SharedFolderTransferOwnershipDetails.new_owner_email.validator), ] SharedFolderTransferOwnershipType.description.validator = bv.String() SharedFolderTransferOwnershipType._all_field_names_ = set(['description']) SharedFolderTransferOwnershipType._all_fields_ = [('description', SharedFolderTransferOwnershipType.description.validator)] SharedFolderUnmountDetails._all_field_names_ = set([]) SharedFolderUnmountDetails._all_fields_ = [] SharedFolderUnmountType.description.validator = bv.String() SharedFolderUnmountType._all_field_names_ = set(['description']) SharedFolderUnmountType._all_fields_ = [('description', SharedFolderUnmountType.description.validator)] SharedLinkAccessLevel._none_validator = bv.Void() SharedLinkAccessLevel._reader_validator = bv.Void() SharedLinkAccessLevel._writer_validator = bv.Void() SharedLinkAccessLevel._other_validator = bv.Void() SharedLinkAccessLevel._tagmap = { 'none': SharedLinkAccessLevel._none_validator, 'reader': SharedLinkAccessLevel._reader_validator, 'writer': SharedLinkAccessLevel._writer_validator, 'other': SharedLinkAccessLevel._other_validator, } SharedLinkAccessLevel.none = SharedLinkAccessLevel('none') SharedLinkAccessLevel.reader = SharedLinkAccessLevel('reader') SharedLinkAccessLevel.writer = SharedLinkAccessLevel('writer') SharedLinkAccessLevel.other = SharedLinkAccessLevel('other') SharedLinkAddExpiryDetails.new_value.validator = common.DropboxTimestamp_validator SharedLinkAddExpiryDetails._all_field_names_ = set(['new_value']) SharedLinkAddExpiryDetails._all_fields_ = [('new_value', SharedLinkAddExpiryDetails.new_value.validator)] SharedLinkAddExpiryType.description.validator = bv.String() SharedLinkAddExpiryType._all_field_names_ = set(['description']) SharedLinkAddExpiryType._all_fields_ = [('description', SharedLinkAddExpiryType.description.validator)] SharedLinkChangeExpiryDetails.new_value.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedLinkChangeExpiryDetails.previous_value.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedLinkChangeExpiryDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharedLinkChangeExpiryDetails._all_fields_ = [ ('new_value', SharedLinkChangeExpiryDetails.new_value.validator), ('previous_value', SharedLinkChangeExpiryDetails.previous_value.validator), ] SharedLinkChangeExpiryType.description.validator = bv.String() SharedLinkChangeExpiryType._all_field_names_ = set(['description']) SharedLinkChangeExpiryType._all_fields_ = [('description', SharedLinkChangeExpiryType.description.validator)] SharedLinkChangeVisibilityDetails.new_value.validator = SharedLinkVisibility_validator SharedLinkChangeVisibilityDetails.previous_value.validator = bv.Nullable(SharedLinkVisibility_validator) SharedLinkChangeVisibilityDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharedLinkChangeVisibilityDetails._all_fields_ = [ ('new_value', SharedLinkChangeVisibilityDetails.new_value.validator), ('previous_value', SharedLinkChangeVisibilityDetails.previous_value.validator), ] SharedLinkChangeVisibilityType.description.validator = bv.String() SharedLinkChangeVisibilityType._all_field_names_ = set(['description']) SharedLinkChangeVisibilityType._all_fields_ = [('description', SharedLinkChangeVisibilityType.description.validator)] SharedLinkCopyDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator) SharedLinkCopyDetails._all_field_names_ = set(['shared_link_owner']) SharedLinkCopyDetails._all_fields_ = [('shared_link_owner', SharedLinkCopyDetails.shared_link_owner.validator)] SharedLinkCopyType.description.validator = bv.String() SharedLinkCopyType._all_field_names_ = set(['description']) SharedLinkCopyType._all_fields_ = [('description', SharedLinkCopyType.description.validator)] SharedLinkCreateDetails.shared_link_access_level.validator = bv.Nullable(SharedLinkAccessLevel_validator) SharedLinkCreateDetails._all_field_names_ = set(['shared_link_access_level']) SharedLinkCreateDetails._all_fields_ = [('shared_link_access_level', SharedLinkCreateDetails.shared_link_access_level.validator)] SharedLinkCreateType.description.validator = bv.String() SharedLinkCreateType._all_field_names_ = set(['description']) SharedLinkCreateType._all_fields_ = [('description', SharedLinkCreateType.description.validator)] SharedLinkDisableDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator) SharedLinkDisableDetails._all_field_names_ = set(['shared_link_owner']) SharedLinkDisableDetails._all_fields_ = [('shared_link_owner', SharedLinkDisableDetails.shared_link_owner.validator)] SharedLinkDisableType.description.validator = bv.String() SharedLinkDisableType._all_field_names_ = set(['description']) SharedLinkDisableType._all_fields_ = [('description', SharedLinkDisableType.description.validator)] SharedLinkDownloadDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator) SharedLinkDownloadDetails._all_field_names_ = set(['shared_link_owner']) SharedLinkDownloadDetails._all_fields_ = [('shared_link_owner', SharedLinkDownloadDetails.shared_link_owner.validator)] SharedLinkDownloadType.description.validator = bv.String() SharedLinkDownloadType._all_field_names_ = set(['description']) SharedLinkDownloadType._all_fields_ = [('description', SharedLinkDownloadType.description.validator)] SharedLinkRemoveExpiryDetails.previous_value.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedLinkRemoveExpiryDetails._all_field_names_ = set(['previous_value']) SharedLinkRemoveExpiryDetails._all_fields_ = [('previous_value', SharedLinkRemoveExpiryDetails.previous_value.validator)] SharedLinkRemoveExpiryType.description.validator = bv.String() SharedLinkRemoveExpiryType._all_field_names_ = set(['description']) SharedLinkRemoveExpiryType._all_fields_ = [('description', SharedLinkRemoveExpiryType.description.validator)] SharedLinkSettingsAddExpirationDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedLinkSettingsAddExpirationDetails.shared_content_link.validator = bv.Nullable(bv.String()) SharedLinkSettingsAddExpirationDetails.new_value.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedLinkSettingsAddExpirationDetails._all_field_names_ = set([ 'shared_content_access_level', 'shared_content_link', 'new_value', ]) SharedLinkSettingsAddExpirationDetails._all_fields_ = [ ('shared_content_access_level', SharedLinkSettingsAddExpirationDetails.shared_content_access_level.validator), ('shared_content_link', SharedLinkSettingsAddExpirationDetails.shared_content_link.validator), ('new_value', SharedLinkSettingsAddExpirationDetails.new_value.validator), ] SharedLinkSettingsAddExpirationType.description.validator = bv.String() SharedLinkSettingsAddExpirationType._all_field_names_ = set(['description']) SharedLinkSettingsAddExpirationType._all_fields_ = [('description', SharedLinkSettingsAddExpirationType.description.validator)] SharedLinkSettingsAddPasswordDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedLinkSettingsAddPasswordDetails.shared_content_link.validator = bv.Nullable(bv.String()) SharedLinkSettingsAddPasswordDetails._all_field_names_ = set([ 'shared_content_access_level', 'shared_content_link', ]) SharedLinkSettingsAddPasswordDetails._all_fields_ = [ ('shared_content_access_level', SharedLinkSettingsAddPasswordDetails.shared_content_access_level.validator), ('shared_content_link', SharedLinkSettingsAddPasswordDetails.shared_content_link.validator), ] SharedLinkSettingsAddPasswordType.description.validator = bv.String() SharedLinkSettingsAddPasswordType._all_field_names_ = set(['description']) SharedLinkSettingsAddPasswordType._all_fields_ = [('description', SharedLinkSettingsAddPasswordType.description.validator)] SharedLinkSettingsAllowDownloadDisabledDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedLinkSettingsAllowDownloadDisabledDetails.shared_content_link.validator = bv.Nullable(bv.String()) SharedLinkSettingsAllowDownloadDisabledDetails._all_field_names_ = set([ 'shared_content_access_level', 'shared_content_link', ]) SharedLinkSettingsAllowDownloadDisabledDetails._all_fields_ = [ ('shared_content_access_level', SharedLinkSettingsAllowDownloadDisabledDetails.shared_content_access_level.validator), ('shared_content_link', SharedLinkSettingsAllowDownloadDisabledDetails.shared_content_link.validator), ] SharedLinkSettingsAllowDownloadDisabledType.description.validator = bv.String() SharedLinkSettingsAllowDownloadDisabledType._all_field_names_ = set(['description']) SharedLinkSettingsAllowDownloadDisabledType._all_fields_ = [('description', SharedLinkSettingsAllowDownloadDisabledType.description.validator)] SharedLinkSettingsAllowDownloadEnabledDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedLinkSettingsAllowDownloadEnabledDetails.shared_content_link.validator = bv.Nullable(bv.String()) SharedLinkSettingsAllowDownloadEnabledDetails._all_field_names_ = set([ 'shared_content_access_level', 'shared_content_link', ]) SharedLinkSettingsAllowDownloadEnabledDetails._all_fields_ = [ ('shared_content_access_level', SharedLinkSettingsAllowDownloadEnabledDetails.shared_content_access_level.validator), ('shared_content_link', SharedLinkSettingsAllowDownloadEnabledDetails.shared_content_link.validator), ] SharedLinkSettingsAllowDownloadEnabledType.description.validator = bv.String() SharedLinkSettingsAllowDownloadEnabledType._all_field_names_ = set(['description']) SharedLinkSettingsAllowDownloadEnabledType._all_fields_ = [('description', SharedLinkSettingsAllowDownloadEnabledType.description.validator)] SharedLinkSettingsChangeAudienceDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedLinkSettingsChangeAudienceDetails.shared_content_link.validator = bv.Nullable(bv.String()) SharedLinkSettingsChangeAudienceDetails.new_value.validator = sharing.LinkAudience_validator SharedLinkSettingsChangeAudienceDetails.previous_value.validator = bv.Nullable(sharing.LinkAudience_validator) SharedLinkSettingsChangeAudienceDetails._all_field_names_ = set([ 'shared_content_access_level', 'shared_content_link', 'new_value', 'previous_value', ]) SharedLinkSettingsChangeAudienceDetails._all_fields_ = [ ('shared_content_access_level', SharedLinkSettingsChangeAudienceDetails.shared_content_access_level.validator), ('shared_content_link', SharedLinkSettingsChangeAudienceDetails.shared_content_link.validator), ('new_value', SharedLinkSettingsChangeAudienceDetails.new_value.validator), ('previous_value', SharedLinkSettingsChangeAudienceDetails.previous_value.validator), ] SharedLinkSettingsChangeAudienceType.description.validator = bv.String() SharedLinkSettingsChangeAudienceType._all_field_names_ = set(['description']) SharedLinkSettingsChangeAudienceType._all_fields_ = [('description', SharedLinkSettingsChangeAudienceType.description.validator)] SharedLinkSettingsChangeExpirationDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedLinkSettingsChangeExpirationDetails.shared_content_link.validator = bv.Nullable(bv.String()) SharedLinkSettingsChangeExpirationDetails.new_value.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedLinkSettingsChangeExpirationDetails.previous_value.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedLinkSettingsChangeExpirationDetails._all_field_names_ = set([ 'shared_content_access_level', 'shared_content_link', 'new_value', 'previous_value', ]) SharedLinkSettingsChangeExpirationDetails._all_fields_ = [ ('shared_content_access_level', SharedLinkSettingsChangeExpirationDetails.shared_content_access_level.validator), ('shared_content_link', SharedLinkSettingsChangeExpirationDetails.shared_content_link.validator), ('new_value', SharedLinkSettingsChangeExpirationDetails.new_value.validator), ('previous_value', SharedLinkSettingsChangeExpirationDetails.previous_value.validator), ] SharedLinkSettingsChangeExpirationType.description.validator = bv.String() SharedLinkSettingsChangeExpirationType._all_field_names_ = set(['description']) SharedLinkSettingsChangeExpirationType._all_fields_ = [('description', SharedLinkSettingsChangeExpirationType.description.validator)] SharedLinkSettingsChangePasswordDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedLinkSettingsChangePasswordDetails.shared_content_link.validator = bv.Nullable(bv.String()) SharedLinkSettingsChangePasswordDetails._all_field_names_ = set([ 'shared_content_access_level', 'shared_content_link', ]) SharedLinkSettingsChangePasswordDetails._all_fields_ = [ ('shared_content_access_level', SharedLinkSettingsChangePasswordDetails.shared_content_access_level.validator), ('shared_content_link', SharedLinkSettingsChangePasswordDetails.shared_content_link.validator), ] SharedLinkSettingsChangePasswordType.description.validator = bv.String() SharedLinkSettingsChangePasswordType._all_field_names_ = set(['description']) SharedLinkSettingsChangePasswordType._all_fields_ = [('description', SharedLinkSettingsChangePasswordType.description.validator)] SharedLinkSettingsRemoveExpirationDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedLinkSettingsRemoveExpirationDetails.shared_content_link.validator = bv.Nullable(bv.String()) SharedLinkSettingsRemoveExpirationDetails.previous_value.validator = bv.Nullable(common.DropboxTimestamp_validator) SharedLinkSettingsRemoveExpirationDetails._all_field_names_ = set([ 'shared_content_access_level', 'shared_content_link', 'previous_value', ]) SharedLinkSettingsRemoveExpirationDetails._all_fields_ = [ ('shared_content_access_level', SharedLinkSettingsRemoveExpirationDetails.shared_content_access_level.validator), ('shared_content_link', SharedLinkSettingsRemoveExpirationDetails.shared_content_link.validator), ('previous_value', SharedLinkSettingsRemoveExpirationDetails.previous_value.validator), ] SharedLinkSettingsRemoveExpirationType.description.validator = bv.String() SharedLinkSettingsRemoveExpirationType._all_field_names_ = set(['description']) SharedLinkSettingsRemoveExpirationType._all_fields_ = [('description', SharedLinkSettingsRemoveExpirationType.description.validator)] SharedLinkSettingsRemovePasswordDetails.shared_content_access_level.validator = sharing.AccessLevel_validator SharedLinkSettingsRemovePasswordDetails.shared_content_link.validator = bv.Nullable(bv.String()) SharedLinkSettingsRemovePasswordDetails._all_field_names_ = set([ 'shared_content_access_level', 'shared_content_link', ]) SharedLinkSettingsRemovePasswordDetails._all_fields_ = [ ('shared_content_access_level', SharedLinkSettingsRemovePasswordDetails.shared_content_access_level.validator), ('shared_content_link', SharedLinkSettingsRemovePasswordDetails.shared_content_link.validator), ] SharedLinkSettingsRemovePasswordType.description.validator = bv.String() SharedLinkSettingsRemovePasswordType._all_field_names_ = set(['description']) SharedLinkSettingsRemovePasswordType._all_fields_ = [('description', SharedLinkSettingsRemovePasswordType.description.validator)] SharedLinkShareDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator) SharedLinkShareDetails.external_users.validator = bv.Nullable(bv.List(ExternalUserLogInfo_validator)) SharedLinkShareDetails._all_field_names_ = set([ 'shared_link_owner', 'external_users', ]) SharedLinkShareDetails._all_fields_ = [ ('shared_link_owner', SharedLinkShareDetails.shared_link_owner.validator), ('external_users', SharedLinkShareDetails.external_users.validator), ] SharedLinkShareType.description.validator = bv.String() SharedLinkShareType._all_field_names_ = set(['description']) SharedLinkShareType._all_fields_ = [('description', SharedLinkShareType.description.validator)] SharedLinkViewDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator) SharedLinkViewDetails._all_field_names_ = set(['shared_link_owner']) SharedLinkViewDetails._all_fields_ = [('shared_link_owner', SharedLinkViewDetails.shared_link_owner.validator)] SharedLinkViewType.description.validator = bv.String() SharedLinkViewType._all_field_names_ = set(['description']) SharedLinkViewType._all_fields_ = [('description', SharedLinkViewType.description.validator)] SharedLinkVisibility._no_one_validator = bv.Void() SharedLinkVisibility._password_validator = bv.Void() SharedLinkVisibility._public_validator = bv.Void() SharedLinkVisibility._team_only_validator = bv.Void() SharedLinkVisibility._other_validator = bv.Void() SharedLinkVisibility._tagmap = { 'no_one': SharedLinkVisibility._no_one_validator, 'password': SharedLinkVisibility._password_validator, 'public': SharedLinkVisibility._public_validator, 'team_only': SharedLinkVisibility._team_only_validator, 'other': SharedLinkVisibility._other_validator, } SharedLinkVisibility.no_one = SharedLinkVisibility('no_one') SharedLinkVisibility.password = SharedLinkVisibility('password') SharedLinkVisibility.public = SharedLinkVisibility('public') SharedLinkVisibility.team_only = SharedLinkVisibility('team_only') SharedLinkVisibility.other = SharedLinkVisibility('other') SharedNoteOpenedDetails._all_field_names_ = set([]) SharedNoteOpenedDetails._all_fields_ = [] SharedNoteOpenedType.description.validator = bv.String() SharedNoteOpenedType._all_field_names_ = set(['description']) SharedNoteOpenedType._all_fields_ = [('description', SharedNoteOpenedType.description.validator)] SharingChangeFolderJoinPolicyDetails.new_value.validator = SharingFolderJoinPolicy_validator SharingChangeFolderJoinPolicyDetails.previous_value.validator = bv.Nullable(SharingFolderJoinPolicy_validator) SharingChangeFolderJoinPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharingChangeFolderJoinPolicyDetails._all_fields_ = [ ('new_value', SharingChangeFolderJoinPolicyDetails.new_value.validator), ('previous_value', SharingChangeFolderJoinPolicyDetails.previous_value.validator), ] SharingChangeFolderJoinPolicyType.description.validator = bv.String() SharingChangeFolderJoinPolicyType._all_field_names_ = set(['description']) SharingChangeFolderJoinPolicyType._all_fields_ = [('description', SharingChangeFolderJoinPolicyType.description.validator)] SharingChangeLinkAllowChangeExpirationPolicyDetails.new_value.validator = EnforceLinkPasswordPolicy_validator SharingChangeLinkAllowChangeExpirationPolicyDetails.previous_value.validator = bv.Nullable(EnforceLinkPasswordPolicy_validator) SharingChangeLinkAllowChangeExpirationPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharingChangeLinkAllowChangeExpirationPolicyDetails._all_fields_ = [ ('new_value', SharingChangeLinkAllowChangeExpirationPolicyDetails.new_value.validator), ('previous_value', SharingChangeLinkAllowChangeExpirationPolicyDetails.previous_value.validator), ] SharingChangeLinkAllowChangeExpirationPolicyType.description.validator = bv.String() SharingChangeLinkAllowChangeExpirationPolicyType._all_field_names_ = set(['description']) SharingChangeLinkAllowChangeExpirationPolicyType._all_fields_ = [('description', SharingChangeLinkAllowChangeExpirationPolicyType.description.validator)] SharingChangeLinkDefaultExpirationPolicyDetails.new_value.validator = DefaultLinkExpirationDaysPolicy_validator SharingChangeLinkDefaultExpirationPolicyDetails.previous_value.validator = bv.Nullable(DefaultLinkExpirationDaysPolicy_validator) SharingChangeLinkDefaultExpirationPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharingChangeLinkDefaultExpirationPolicyDetails._all_fields_ = [ ('new_value', SharingChangeLinkDefaultExpirationPolicyDetails.new_value.validator), ('previous_value', SharingChangeLinkDefaultExpirationPolicyDetails.previous_value.validator), ] SharingChangeLinkDefaultExpirationPolicyType.description.validator = bv.String() SharingChangeLinkDefaultExpirationPolicyType._all_field_names_ = set(['description']) SharingChangeLinkDefaultExpirationPolicyType._all_fields_ = [('description', SharingChangeLinkDefaultExpirationPolicyType.description.validator)] SharingChangeLinkEnforcePasswordPolicyDetails.new_value.validator = ChangeLinkExpirationPolicy_validator SharingChangeLinkEnforcePasswordPolicyDetails.previous_value.validator = bv.Nullable(ChangeLinkExpirationPolicy_validator) SharingChangeLinkEnforcePasswordPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharingChangeLinkEnforcePasswordPolicyDetails._all_fields_ = [ ('new_value', SharingChangeLinkEnforcePasswordPolicyDetails.new_value.validator), ('previous_value', SharingChangeLinkEnforcePasswordPolicyDetails.previous_value.validator), ] SharingChangeLinkEnforcePasswordPolicyType.description.validator = bv.String() SharingChangeLinkEnforcePasswordPolicyType._all_field_names_ = set(['description']) SharingChangeLinkEnforcePasswordPolicyType._all_fields_ = [('description', SharingChangeLinkEnforcePasswordPolicyType.description.validator)] SharingChangeLinkPolicyDetails.new_value.validator = SharingLinkPolicy_validator SharingChangeLinkPolicyDetails.previous_value.validator = bv.Nullable(SharingLinkPolicy_validator) SharingChangeLinkPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharingChangeLinkPolicyDetails._all_fields_ = [ ('new_value', SharingChangeLinkPolicyDetails.new_value.validator), ('previous_value', SharingChangeLinkPolicyDetails.previous_value.validator), ] SharingChangeLinkPolicyType.description.validator = bv.String() SharingChangeLinkPolicyType._all_field_names_ = set(['description']) SharingChangeLinkPolicyType._all_fields_ = [('description', SharingChangeLinkPolicyType.description.validator)] SharingChangeMemberPolicyDetails.new_value.validator = SharingMemberPolicy_validator SharingChangeMemberPolicyDetails.previous_value.validator = bv.Nullable(SharingMemberPolicy_validator) SharingChangeMemberPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SharingChangeMemberPolicyDetails._all_fields_ = [ ('new_value', SharingChangeMemberPolicyDetails.new_value.validator), ('previous_value', SharingChangeMemberPolicyDetails.previous_value.validator), ] SharingChangeMemberPolicyType.description.validator = bv.String() SharingChangeMemberPolicyType._all_field_names_ = set(['description']) SharingChangeMemberPolicyType._all_fields_ = [('description', SharingChangeMemberPolicyType.description.validator)] SharingFolderJoinPolicy._from_anyone_validator = bv.Void() SharingFolderJoinPolicy._from_team_only_validator = bv.Void() SharingFolderJoinPolicy._other_validator = bv.Void() SharingFolderJoinPolicy._tagmap = { 'from_anyone': SharingFolderJoinPolicy._from_anyone_validator, 'from_team_only': SharingFolderJoinPolicy._from_team_only_validator, 'other': SharingFolderJoinPolicy._other_validator, } SharingFolderJoinPolicy.from_anyone = SharingFolderJoinPolicy('from_anyone') SharingFolderJoinPolicy.from_team_only = SharingFolderJoinPolicy('from_team_only') SharingFolderJoinPolicy.other = SharingFolderJoinPolicy('other') SharingLinkPolicy._default_no_one_validator = bv.Void() SharingLinkPolicy._default_private_validator = bv.Void() SharingLinkPolicy._default_public_validator = bv.Void() SharingLinkPolicy._only_private_validator = bv.Void() SharingLinkPolicy._other_validator = bv.Void() SharingLinkPolicy._tagmap = { 'default_no_one': SharingLinkPolicy._default_no_one_validator, 'default_private': SharingLinkPolicy._default_private_validator, 'default_public': SharingLinkPolicy._default_public_validator, 'only_private': SharingLinkPolicy._only_private_validator, 'other': SharingLinkPolicy._other_validator, } SharingLinkPolicy.default_no_one = SharingLinkPolicy('default_no_one') SharingLinkPolicy.default_private = SharingLinkPolicy('default_private') SharingLinkPolicy.default_public = SharingLinkPolicy('default_public') SharingLinkPolicy.only_private = SharingLinkPolicy('only_private') SharingLinkPolicy.other = SharingLinkPolicy('other') SharingMemberPolicy._allow_validator = bv.Void() SharingMemberPolicy._forbid_validator = bv.Void() SharingMemberPolicy._forbid_with_exclusions_validator = bv.Void() SharingMemberPolicy._other_validator = bv.Void() SharingMemberPolicy._tagmap = { 'allow': SharingMemberPolicy._allow_validator, 'forbid': SharingMemberPolicy._forbid_validator, 'forbid_with_exclusions': SharingMemberPolicy._forbid_with_exclusions_validator, 'other': SharingMemberPolicy._other_validator, } SharingMemberPolicy.allow = SharingMemberPolicy('allow') SharingMemberPolicy.forbid = SharingMemberPolicy('forbid') SharingMemberPolicy.forbid_with_exclusions = SharingMemberPolicy('forbid_with_exclusions') SharingMemberPolicy.other = SharingMemberPolicy('other') ShmodelDisableDownloadsDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator) ShmodelDisableDownloadsDetails._all_field_names_ = set(['shared_link_owner']) ShmodelDisableDownloadsDetails._all_fields_ = [('shared_link_owner', ShmodelDisableDownloadsDetails.shared_link_owner.validator)] ShmodelDisableDownloadsType.description.validator = bv.String() ShmodelDisableDownloadsType._all_field_names_ = set(['description']) ShmodelDisableDownloadsType._all_fields_ = [('description', ShmodelDisableDownloadsType.description.validator)] ShmodelEnableDownloadsDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator) ShmodelEnableDownloadsDetails._all_field_names_ = set(['shared_link_owner']) ShmodelEnableDownloadsDetails._all_fields_ = [('shared_link_owner', ShmodelEnableDownloadsDetails.shared_link_owner.validator)] ShmodelEnableDownloadsType.description.validator = bv.String() ShmodelEnableDownloadsType._all_field_names_ = set(['description']) ShmodelEnableDownloadsType._all_fields_ = [('description', ShmodelEnableDownloadsType.description.validator)] ShmodelGroupShareDetails._all_field_names_ = set([]) ShmodelGroupShareDetails._all_fields_ = [] ShmodelGroupShareType.description.validator = bv.String() ShmodelGroupShareType._all_field_names_ = set(['description']) ShmodelGroupShareType._all_fields_ = [('description', ShmodelGroupShareType.description.validator)] ShowcaseAccessGrantedDetails.event_uuid.validator = bv.String() ShowcaseAccessGrantedDetails._all_field_names_ = set(['event_uuid']) ShowcaseAccessGrantedDetails._all_fields_ = [('event_uuid', ShowcaseAccessGrantedDetails.event_uuid.validator)] ShowcaseAccessGrantedType.description.validator = bv.String() ShowcaseAccessGrantedType._all_field_names_ = set(['description']) ShowcaseAccessGrantedType._all_fields_ = [('description', ShowcaseAccessGrantedType.description.validator)] ShowcaseAddMemberDetails.event_uuid.validator = bv.String() ShowcaseAddMemberDetails._all_field_names_ = set(['event_uuid']) ShowcaseAddMemberDetails._all_fields_ = [('event_uuid', ShowcaseAddMemberDetails.event_uuid.validator)] ShowcaseAddMemberType.description.validator = bv.String() ShowcaseAddMemberType._all_field_names_ = set(['description']) ShowcaseAddMemberType._all_fields_ = [('description', ShowcaseAddMemberType.description.validator)] ShowcaseArchivedDetails.event_uuid.validator = bv.String() ShowcaseArchivedDetails._all_field_names_ = set(['event_uuid']) ShowcaseArchivedDetails._all_fields_ = [('event_uuid', ShowcaseArchivedDetails.event_uuid.validator)] ShowcaseArchivedType.description.validator = bv.String() ShowcaseArchivedType._all_field_names_ = set(['description']) ShowcaseArchivedType._all_fields_ = [('description', ShowcaseArchivedType.description.validator)] ShowcaseChangeDownloadPolicyDetails.new_value.validator = ShowcaseDownloadPolicy_validator ShowcaseChangeDownloadPolicyDetails.previous_value.validator = ShowcaseDownloadPolicy_validator ShowcaseChangeDownloadPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) ShowcaseChangeDownloadPolicyDetails._all_fields_ = [ ('new_value', ShowcaseChangeDownloadPolicyDetails.new_value.validator), ('previous_value', ShowcaseChangeDownloadPolicyDetails.previous_value.validator), ] ShowcaseChangeDownloadPolicyType.description.validator = bv.String() ShowcaseChangeDownloadPolicyType._all_field_names_ = set(['description']) ShowcaseChangeDownloadPolicyType._all_fields_ = [('description', ShowcaseChangeDownloadPolicyType.description.validator)] ShowcaseChangeEnabledPolicyDetails.new_value.validator = ShowcaseEnabledPolicy_validator ShowcaseChangeEnabledPolicyDetails.previous_value.validator = ShowcaseEnabledPolicy_validator ShowcaseChangeEnabledPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) ShowcaseChangeEnabledPolicyDetails._all_fields_ = [ ('new_value', ShowcaseChangeEnabledPolicyDetails.new_value.validator), ('previous_value', ShowcaseChangeEnabledPolicyDetails.previous_value.validator), ] ShowcaseChangeEnabledPolicyType.description.validator = bv.String() ShowcaseChangeEnabledPolicyType._all_field_names_ = set(['description']) ShowcaseChangeEnabledPolicyType._all_fields_ = [('description', ShowcaseChangeEnabledPolicyType.description.validator)] ShowcaseChangeExternalSharingPolicyDetails.new_value.validator = ShowcaseExternalSharingPolicy_validator ShowcaseChangeExternalSharingPolicyDetails.previous_value.validator = ShowcaseExternalSharingPolicy_validator ShowcaseChangeExternalSharingPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) ShowcaseChangeExternalSharingPolicyDetails._all_fields_ = [ ('new_value', ShowcaseChangeExternalSharingPolicyDetails.new_value.validator), ('previous_value', ShowcaseChangeExternalSharingPolicyDetails.previous_value.validator), ] ShowcaseChangeExternalSharingPolicyType.description.validator = bv.String() ShowcaseChangeExternalSharingPolicyType._all_field_names_ = set(['description']) ShowcaseChangeExternalSharingPolicyType._all_fields_ = [('description', ShowcaseChangeExternalSharingPolicyType.description.validator)] ShowcaseCreatedDetails.event_uuid.validator = bv.String() ShowcaseCreatedDetails._all_field_names_ = set(['event_uuid']) ShowcaseCreatedDetails._all_fields_ = [('event_uuid', ShowcaseCreatedDetails.event_uuid.validator)] ShowcaseCreatedType.description.validator = bv.String() ShowcaseCreatedType._all_field_names_ = set(['description']) ShowcaseCreatedType._all_fields_ = [('description', ShowcaseCreatedType.description.validator)] ShowcaseDeleteCommentDetails.event_uuid.validator = bv.String() ShowcaseDeleteCommentDetails.comment_text.validator = bv.Nullable(bv.String()) ShowcaseDeleteCommentDetails._all_field_names_ = set([ 'event_uuid', 'comment_text', ]) ShowcaseDeleteCommentDetails._all_fields_ = [ ('event_uuid', ShowcaseDeleteCommentDetails.event_uuid.validator), ('comment_text', ShowcaseDeleteCommentDetails.comment_text.validator), ] ShowcaseDeleteCommentType.description.validator = bv.String() ShowcaseDeleteCommentType._all_field_names_ = set(['description']) ShowcaseDeleteCommentType._all_fields_ = [('description', ShowcaseDeleteCommentType.description.validator)] ShowcaseDocumentLogInfo.showcase_id.validator = bv.String() ShowcaseDocumentLogInfo.showcase_title.validator = bv.String() ShowcaseDocumentLogInfo._all_field_names_ = set([ 'showcase_id', 'showcase_title', ]) ShowcaseDocumentLogInfo._all_fields_ = [ ('showcase_id', ShowcaseDocumentLogInfo.showcase_id.validator), ('showcase_title', ShowcaseDocumentLogInfo.showcase_title.validator), ] ShowcaseDownloadPolicy._disabled_validator = bv.Void() ShowcaseDownloadPolicy._enabled_validator = bv.Void() ShowcaseDownloadPolicy._other_validator = bv.Void() ShowcaseDownloadPolicy._tagmap = { 'disabled': ShowcaseDownloadPolicy._disabled_validator, 'enabled': ShowcaseDownloadPolicy._enabled_validator, 'other': ShowcaseDownloadPolicy._other_validator, } ShowcaseDownloadPolicy.disabled = ShowcaseDownloadPolicy('disabled') ShowcaseDownloadPolicy.enabled = ShowcaseDownloadPolicy('enabled') ShowcaseDownloadPolicy.other = ShowcaseDownloadPolicy('other') ShowcaseEditCommentDetails.event_uuid.validator = bv.String() ShowcaseEditCommentDetails.comment_text.validator = bv.Nullable(bv.String()) ShowcaseEditCommentDetails._all_field_names_ = set([ 'event_uuid', 'comment_text', ]) ShowcaseEditCommentDetails._all_fields_ = [ ('event_uuid', ShowcaseEditCommentDetails.event_uuid.validator), ('comment_text', ShowcaseEditCommentDetails.comment_text.validator), ] ShowcaseEditCommentType.description.validator = bv.String() ShowcaseEditCommentType._all_field_names_ = set(['description']) ShowcaseEditCommentType._all_fields_ = [('description', ShowcaseEditCommentType.description.validator)] ShowcaseEditedDetails.event_uuid.validator = bv.String() ShowcaseEditedDetails._all_field_names_ = set(['event_uuid']) ShowcaseEditedDetails._all_fields_ = [('event_uuid', ShowcaseEditedDetails.event_uuid.validator)] ShowcaseEditedType.description.validator = bv.String() ShowcaseEditedType._all_field_names_ = set(['description']) ShowcaseEditedType._all_fields_ = [('description', ShowcaseEditedType.description.validator)] ShowcaseEnabledPolicy._disabled_validator = bv.Void() ShowcaseEnabledPolicy._enabled_validator = bv.Void() ShowcaseEnabledPolicy._other_validator = bv.Void() ShowcaseEnabledPolicy._tagmap = { 'disabled': ShowcaseEnabledPolicy._disabled_validator, 'enabled': ShowcaseEnabledPolicy._enabled_validator, 'other': ShowcaseEnabledPolicy._other_validator, } ShowcaseEnabledPolicy.disabled = ShowcaseEnabledPolicy('disabled') ShowcaseEnabledPolicy.enabled = ShowcaseEnabledPolicy('enabled') ShowcaseEnabledPolicy.other = ShowcaseEnabledPolicy('other') ShowcaseExternalSharingPolicy._disabled_validator = bv.Void() ShowcaseExternalSharingPolicy._enabled_validator = bv.Void() ShowcaseExternalSharingPolicy._other_validator = bv.Void() ShowcaseExternalSharingPolicy._tagmap = { 'disabled': ShowcaseExternalSharingPolicy._disabled_validator, 'enabled': ShowcaseExternalSharingPolicy._enabled_validator, 'other': ShowcaseExternalSharingPolicy._other_validator, } ShowcaseExternalSharingPolicy.disabled = ShowcaseExternalSharingPolicy('disabled') ShowcaseExternalSharingPolicy.enabled = ShowcaseExternalSharingPolicy('enabled') ShowcaseExternalSharingPolicy.other = ShowcaseExternalSharingPolicy('other') ShowcaseFileAddedDetails.event_uuid.validator = bv.String() ShowcaseFileAddedDetails._all_field_names_ = set(['event_uuid']) ShowcaseFileAddedDetails._all_fields_ = [('event_uuid', ShowcaseFileAddedDetails.event_uuid.validator)] ShowcaseFileAddedType.description.validator = bv.String() ShowcaseFileAddedType._all_field_names_ = set(['description']) ShowcaseFileAddedType._all_fields_ = [('description', ShowcaseFileAddedType.description.validator)] ShowcaseFileDownloadDetails.event_uuid.validator = bv.String() ShowcaseFileDownloadDetails.download_type.validator = bv.String() ShowcaseFileDownloadDetails._all_field_names_ = set([ 'event_uuid', 'download_type', ]) ShowcaseFileDownloadDetails._all_fields_ = [ ('event_uuid', ShowcaseFileDownloadDetails.event_uuid.validator), ('download_type', ShowcaseFileDownloadDetails.download_type.validator), ] ShowcaseFileDownloadType.description.validator = bv.String() ShowcaseFileDownloadType._all_field_names_ = set(['description']) ShowcaseFileDownloadType._all_fields_ = [('description', ShowcaseFileDownloadType.description.validator)] ShowcaseFileRemovedDetails.event_uuid.validator = bv.String() ShowcaseFileRemovedDetails._all_field_names_ = set(['event_uuid']) ShowcaseFileRemovedDetails._all_fields_ = [('event_uuid', ShowcaseFileRemovedDetails.event_uuid.validator)] ShowcaseFileRemovedType.description.validator = bv.String() ShowcaseFileRemovedType._all_field_names_ = set(['description']) ShowcaseFileRemovedType._all_fields_ = [('description', ShowcaseFileRemovedType.description.validator)] ShowcaseFileViewDetails.event_uuid.validator = bv.String() ShowcaseFileViewDetails._all_field_names_ = set(['event_uuid']) ShowcaseFileViewDetails._all_fields_ = [('event_uuid', ShowcaseFileViewDetails.event_uuid.validator)] ShowcaseFileViewType.description.validator = bv.String() ShowcaseFileViewType._all_field_names_ = set(['description']) ShowcaseFileViewType._all_fields_ = [('description', ShowcaseFileViewType.description.validator)] ShowcasePermanentlyDeletedDetails.event_uuid.validator = bv.String() ShowcasePermanentlyDeletedDetails._all_field_names_ = set(['event_uuid']) ShowcasePermanentlyDeletedDetails._all_fields_ = [('event_uuid', ShowcasePermanentlyDeletedDetails.event_uuid.validator)] ShowcasePermanentlyDeletedType.description.validator = bv.String() ShowcasePermanentlyDeletedType._all_field_names_ = set(['description']) ShowcasePermanentlyDeletedType._all_fields_ = [('description', ShowcasePermanentlyDeletedType.description.validator)] ShowcasePostCommentDetails.event_uuid.validator = bv.String() ShowcasePostCommentDetails.comment_text.validator = bv.Nullable(bv.String()) ShowcasePostCommentDetails._all_field_names_ = set([ 'event_uuid', 'comment_text', ]) ShowcasePostCommentDetails._all_fields_ = [ ('event_uuid', ShowcasePostCommentDetails.event_uuid.validator), ('comment_text', ShowcasePostCommentDetails.comment_text.validator), ] ShowcasePostCommentType.description.validator = bv.String() ShowcasePostCommentType._all_field_names_ = set(['description']) ShowcasePostCommentType._all_fields_ = [('description', ShowcasePostCommentType.description.validator)] ShowcaseRemoveMemberDetails.event_uuid.validator = bv.String() ShowcaseRemoveMemberDetails._all_field_names_ = set(['event_uuid']) ShowcaseRemoveMemberDetails._all_fields_ = [('event_uuid', ShowcaseRemoveMemberDetails.event_uuid.validator)] ShowcaseRemoveMemberType.description.validator = bv.String() ShowcaseRemoveMemberType._all_field_names_ = set(['description']) ShowcaseRemoveMemberType._all_fields_ = [('description', ShowcaseRemoveMemberType.description.validator)] ShowcaseRenamedDetails.event_uuid.validator = bv.String() ShowcaseRenamedDetails._all_field_names_ = set(['event_uuid']) ShowcaseRenamedDetails._all_fields_ = [('event_uuid', ShowcaseRenamedDetails.event_uuid.validator)] ShowcaseRenamedType.description.validator = bv.String() ShowcaseRenamedType._all_field_names_ = set(['description']) ShowcaseRenamedType._all_fields_ = [('description', ShowcaseRenamedType.description.validator)] ShowcaseRequestAccessDetails.event_uuid.validator = bv.String() ShowcaseRequestAccessDetails._all_field_names_ = set(['event_uuid']) ShowcaseRequestAccessDetails._all_fields_ = [('event_uuid', ShowcaseRequestAccessDetails.event_uuid.validator)] ShowcaseRequestAccessType.description.validator = bv.String() ShowcaseRequestAccessType._all_field_names_ = set(['description']) ShowcaseRequestAccessType._all_fields_ = [('description', ShowcaseRequestAccessType.description.validator)] ShowcaseResolveCommentDetails.event_uuid.validator = bv.String() ShowcaseResolveCommentDetails.comment_text.validator = bv.Nullable(bv.String()) ShowcaseResolveCommentDetails._all_field_names_ = set([ 'event_uuid', 'comment_text', ]) ShowcaseResolveCommentDetails._all_fields_ = [ ('event_uuid', ShowcaseResolveCommentDetails.event_uuid.validator), ('comment_text', ShowcaseResolveCommentDetails.comment_text.validator), ] ShowcaseResolveCommentType.description.validator = bv.String() ShowcaseResolveCommentType._all_field_names_ = set(['description']) ShowcaseResolveCommentType._all_fields_ = [('description', ShowcaseResolveCommentType.description.validator)] ShowcaseRestoredDetails.event_uuid.validator = bv.String() ShowcaseRestoredDetails._all_field_names_ = set(['event_uuid']) ShowcaseRestoredDetails._all_fields_ = [('event_uuid', ShowcaseRestoredDetails.event_uuid.validator)] ShowcaseRestoredType.description.validator = bv.String() ShowcaseRestoredType._all_field_names_ = set(['description']) ShowcaseRestoredType._all_fields_ = [('description', ShowcaseRestoredType.description.validator)] ShowcaseTrashedDeprecatedDetails.event_uuid.validator = bv.String() ShowcaseTrashedDeprecatedDetails._all_field_names_ = set(['event_uuid']) ShowcaseTrashedDeprecatedDetails._all_fields_ = [('event_uuid', ShowcaseTrashedDeprecatedDetails.event_uuid.validator)] ShowcaseTrashedDeprecatedType.description.validator = bv.String() ShowcaseTrashedDeprecatedType._all_field_names_ = set(['description']) ShowcaseTrashedDeprecatedType._all_fields_ = [('description', ShowcaseTrashedDeprecatedType.description.validator)] ShowcaseTrashedDetails.event_uuid.validator = bv.String() ShowcaseTrashedDetails._all_field_names_ = set(['event_uuid']) ShowcaseTrashedDetails._all_fields_ = [('event_uuid', ShowcaseTrashedDetails.event_uuid.validator)] ShowcaseTrashedType.description.validator = bv.String() ShowcaseTrashedType._all_field_names_ = set(['description']) ShowcaseTrashedType._all_fields_ = [('description', ShowcaseTrashedType.description.validator)] ShowcaseUnresolveCommentDetails.event_uuid.validator = bv.String() ShowcaseUnresolveCommentDetails.comment_text.validator = bv.Nullable(bv.String()) ShowcaseUnresolveCommentDetails._all_field_names_ = set([ 'event_uuid', 'comment_text', ]) ShowcaseUnresolveCommentDetails._all_fields_ = [ ('event_uuid', ShowcaseUnresolveCommentDetails.event_uuid.validator), ('comment_text', ShowcaseUnresolveCommentDetails.comment_text.validator), ] ShowcaseUnresolveCommentType.description.validator = bv.String() ShowcaseUnresolveCommentType._all_field_names_ = set(['description']) ShowcaseUnresolveCommentType._all_fields_ = [('description', ShowcaseUnresolveCommentType.description.validator)] ShowcaseUntrashedDeprecatedDetails.event_uuid.validator = bv.String() ShowcaseUntrashedDeprecatedDetails._all_field_names_ = set(['event_uuid']) ShowcaseUntrashedDeprecatedDetails._all_fields_ = [('event_uuid', ShowcaseUntrashedDeprecatedDetails.event_uuid.validator)] ShowcaseUntrashedDeprecatedType.description.validator = bv.String() ShowcaseUntrashedDeprecatedType._all_field_names_ = set(['description']) ShowcaseUntrashedDeprecatedType._all_fields_ = [('description', ShowcaseUntrashedDeprecatedType.description.validator)] ShowcaseUntrashedDetails.event_uuid.validator = bv.String() ShowcaseUntrashedDetails._all_field_names_ = set(['event_uuid']) ShowcaseUntrashedDetails._all_fields_ = [('event_uuid', ShowcaseUntrashedDetails.event_uuid.validator)] ShowcaseUntrashedType.description.validator = bv.String() ShowcaseUntrashedType._all_field_names_ = set(['description']) ShowcaseUntrashedType._all_fields_ = [('description', ShowcaseUntrashedType.description.validator)] ShowcaseViewDetails.event_uuid.validator = bv.String() ShowcaseViewDetails._all_field_names_ = set(['event_uuid']) ShowcaseViewDetails._all_fields_ = [('event_uuid', ShowcaseViewDetails.event_uuid.validator)] ShowcaseViewType.description.validator = bv.String() ShowcaseViewType._all_field_names_ = set(['description']) ShowcaseViewType._all_fields_ = [('description', ShowcaseViewType.description.validator)] SignInAsSessionEndDetails._all_field_names_ = set([]) SignInAsSessionEndDetails._all_fields_ = [] SignInAsSessionEndType.description.validator = bv.String() SignInAsSessionEndType._all_field_names_ = set(['description']) SignInAsSessionEndType._all_fields_ = [('description', SignInAsSessionEndType.description.validator)] SignInAsSessionStartDetails._all_field_names_ = set([]) SignInAsSessionStartDetails._all_fields_ = [] SignInAsSessionStartType.description.validator = bv.String() SignInAsSessionStartType._all_field_names_ = set(['description']) SignInAsSessionStartType._all_fields_ = [('description', SignInAsSessionStartType.description.validator)] SmartSyncChangePolicyDetails.new_value.validator = bv.Nullable(team_policies.SmartSyncPolicy_validator) SmartSyncChangePolicyDetails.previous_value.validator = bv.Nullable(team_policies.SmartSyncPolicy_validator) SmartSyncChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SmartSyncChangePolicyDetails._all_fields_ = [ ('new_value', SmartSyncChangePolicyDetails.new_value.validator), ('previous_value', SmartSyncChangePolicyDetails.previous_value.validator), ] SmartSyncChangePolicyType.description.validator = bv.String() SmartSyncChangePolicyType._all_field_names_ = set(['description']) SmartSyncChangePolicyType._all_fields_ = [('description', SmartSyncChangePolicyType.description.validator)] SmartSyncCreateAdminPrivilegeReportDetails._all_field_names_ = set([]) SmartSyncCreateAdminPrivilegeReportDetails._all_fields_ = [] SmartSyncCreateAdminPrivilegeReportType.description.validator = bv.String() SmartSyncCreateAdminPrivilegeReportType._all_field_names_ = set(['description']) SmartSyncCreateAdminPrivilegeReportType._all_fields_ = [('description', SmartSyncCreateAdminPrivilegeReportType.description.validator)] SmartSyncNotOptOutDetails.previous_value.validator = SmartSyncOptOutPolicy_validator SmartSyncNotOptOutDetails.new_value.validator = SmartSyncOptOutPolicy_validator SmartSyncNotOptOutDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) SmartSyncNotOptOutDetails._all_fields_ = [ ('previous_value', SmartSyncNotOptOutDetails.previous_value.validator), ('new_value', SmartSyncNotOptOutDetails.new_value.validator), ] SmartSyncNotOptOutType.description.validator = bv.String() SmartSyncNotOptOutType._all_field_names_ = set(['description']) SmartSyncNotOptOutType._all_fields_ = [('description', SmartSyncNotOptOutType.description.validator)] SmartSyncOptOutDetails.previous_value.validator = SmartSyncOptOutPolicy_validator SmartSyncOptOutDetails.new_value.validator = SmartSyncOptOutPolicy_validator SmartSyncOptOutDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) SmartSyncOptOutDetails._all_fields_ = [ ('previous_value', SmartSyncOptOutDetails.previous_value.validator), ('new_value', SmartSyncOptOutDetails.new_value.validator), ] SmartSyncOptOutPolicy._default_validator = bv.Void() SmartSyncOptOutPolicy._opted_out_validator = bv.Void() SmartSyncOptOutPolicy._other_validator = bv.Void() SmartSyncOptOutPolicy._tagmap = { 'default': SmartSyncOptOutPolicy._default_validator, 'opted_out': SmartSyncOptOutPolicy._opted_out_validator, 'other': SmartSyncOptOutPolicy._other_validator, } SmartSyncOptOutPolicy.default = SmartSyncOptOutPolicy('default') SmartSyncOptOutPolicy.opted_out = SmartSyncOptOutPolicy('opted_out') SmartSyncOptOutPolicy.other = SmartSyncOptOutPolicy('other') SmartSyncOptOutType.description.validator = bv.String() SmartSyncOptOutType._all_field_names_ = set(['description']) SmartSyncOptOutType._all_fields_ = [('description', SmartSyncOptOutType.description.validator)] SmarterSmartSyncPolicyChangedDetails.previous_value.validator = team_policies.SmarterSmartSyncPolicyState_validator SmarterSmartSyncPolicyChangedDetails.new_value.validator = team_policies.SmarterSmartSyncPolicyState_validator SmarterSmartSyncPolicyChangedDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) SmarterSmartSyncPolicyChangedDetails._all_fields_ = [ ('previous_value', SmarterSmartSyncPolicyChangedDetails.previous_value.validator), ('new_value', SmarterSmartSyncPolicyChangedDetails.new_value.validator), ] SmarterSmartSyncPolicyChangedType.description.validator = bv.String() SmarterSmartSyncPolicyChangedType._all_field_names_ = set(['description']) SmarterSmartSyncPolicyChangedType._all_fields_ = [('description', SmarterSmartSyncPolicyChangedType.description.validator)] SpaceCapsType._hard_validator = bv.Void() SpaceCapsType._off_validator = bv.Void() SpaceCapsType._soft_validator = bv.Void() SpaceCapsType._other_validator = bv.Void() SpaceCapsType._tagmap = { 'hard': SpaceCapsType._hard_validator, 'off': SpaceCapsType._off_validator, 'soft': SpaceCapsType._soft_validator, 'other': SpaceCapsType._other_validator, } SpaceCapsType.hard = SpaceCapsType('hard') SpaceCapsType.off = SpaceCapsType('off') SpaceCapsType.soft = SpaceCapsType('soft') SpaceCapsType.other = SpaceCapsType('other') SpaceLimitsStatus._near_quota_validator = bv.Void() SpaceLimitsStatus._over_quota_validator = bv.Void() SpaceLimitsStatus._within_quota_validator = bv.Void() SpaceLimitsStatus._other_validator = bv.Void() SpaceLimitsStatus._tagmap = { 'near_quota': SpaceLimitsStatus._near_quota_validator, 'over_quota': SpaceLimitsStatus._over_quota_validator, 'within_quota': SpaceLimitsStatus._within_quota_validator, 'other': SpaceLimitsStatus._other_validator, } SpaceLimitsStatus.near_quota = SpaceLimitsStatus('near_quota') SpaceLimitsStatus.over_quota = SpaceLimitsStatus('over_quota') SpaceLimitsStatus.within_quota = SpaceLimitsStatus('within_quota') SpaceLimitsStatus.other = SpaceLimitsStatus('other') SsoAddCertDetails.certificate_details.validator = Certificate_validator SsoAddCertDetails._all_field_names_ = set(['certificate_details']) SsoAddCertDetails._all_fields_ = [('certificate_details', SsoAddCertDetails.certificate_details.validator)] SsoAddCertType.description.validator = bv.String() SsoAddCertType._all_field_names_ = set(['description']) SsoAddCertType._all_fields_ = [('description', SsoAddCertType.description.validator)] SsoAddLoginUrlDetails.new_value.validator = bv.String() SsoAddLoginUrlDetails._all_field_names_ = set(['new_value']) SsoAddLoginUrlDetails._all_fields_ = [('new_value', SsoAddLoginUrlDetails.new_value.validator)] SsoAddLoginUrlType.description.validator = bv.String() SsoAddLoginUrlType._all_field_names_ = set(['description']) SsoAddLoginUrlType._all_fields_ = [('description', SsoAddLoginUrlType.description.validator)] SsoAddLogoutUrlDetails.new_value.validator = bv.Nullable(bv.String()) SsoAddLogoutUrlDetails._all_field_names_ = set(['new_value']) SsoAddLogoutUrlDetails._all_fields_ = [('new_value', SsoAddLogoutUrlDetails.new_value.validator)] SsoAddLogoutUrlType.description.validator = bv.String() SsoAddLogoutUrlType._all_field_names_ = set(['description']) SsoAddLogoutUrlType._all_fields_ = [('description', SsoAddLogoutUrlType.description.validator)] SsoChangeCertDetails.previous_certificate_details.validator = bv.Nullable(Certificate_validator) SsoChangeCertDetails.new_certificate_details.validator = Certificate_validator SsoChangeCertDetails._all_field_names_ = set([ 'previous_certificate_details', 'new_certificate_details', ]) SsoChangeCertDetails._all_fields_ = [ ('previous_certificate_details', SsoChangeCertDetails.previous_certificate_details.validator), ('new_certificate_details', SsoChangeCertDetails.new_certificate_details.validator), ] SsoChangeCertType.description.validator = bv.String() SsoChangeCertType._all_field_names_ = set(['description']) SsoChangeCertType._all_fields_ = [('description', SsoChangeCertType.description.validator)] SsoChangeLoginUrlDetails.previous_value.validator = bv.String() SsoChangeLoginUrlDetails.new_value.validator = bv.String() SsoChangeLoginUrlDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) SsoChangeLoginUrlDetails._all_fields_ = [ ('previous_value', SsoChangeLoginUrlDetails.previous_value.validator), ('new_value', SsoChangeLoginUrlDetails.new_value.validator), ] SsoChangeLoginUrlType.description.validator = bv.String() SsoChangeLoginUrlType._all_field_names_ = set(['description']) SsoChangeLoginUrlType._all_fields_ = [('description', SsoChangeLoginUrlType.description.validator)] SsoChangeLogoutUrlDetails.previous_value.validator = bv.Nullable(bv.String()) SsoChangeLogoutUrlDetails.new_value.validator = bv.Nullable(bv.String()) SsoChangeLogoutUrlDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) SsoChangeLogoutUrlDetails._all_fields_ = [ ('previous_value', SsoChangeLogoutUrlDetails.previous_value.validator), ('new_value', SsoChangeLogoutUrlDetails.new_value.validator), ] SsoChangeLogoutUrlType.description.validator = bv.String() SsoChangeLogoutUrlType._all_field_names_ = set(['description']) SsoChangeLogoutUrlType._all_fields_ = [('description', SsoChangeLogoutUrlType.description.validator)] SsoChangePolicyDetails.new_value.validator = team_policies.SsoPolicy_validator SsoChangePolicyDetails.previous_value.validator = bv.Nullable(team_policies.SsoPolicy_validator) SsoChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) SsoChangePolicyDetails._all_fields_ = [ ('new_value', SsoChangePolicyDetails.new_value.validator), ('previous_value', SsoChangePolicyDetails.previous_value.validator), ] SsoChangePolicyType.description.validator = bv.String() SsoChangePolicyType._all_field_names_ = set(['description']) SsoChangePolicyType._all_fields_ = [('description', SsoChangePolicyType.description.validator)] SsoChangeSamlIdentityModeDetails.previous_value.validator = bv.Int64() SsoChangeSamlIdentityModeDetails.new_value.validator = bv.Int64() SsoChangeSamlIdentityModeDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) SsoChangeSamlIdentityModeDetails._all_fields_ = [ ('previous_value', SsoChangeSamlIdentityModeDetails.previous_value.validator), ('new_value', SsoChangeSamlIdentityModeDetails.new_value.validator), ] SsoChangeSamlIdentityModeType.description.validator = bv.String() SsoChangeSamlIdentityModeType._all_field_names_ = set(['description']) SsoChangeSamlIdentityModeType._all_fields_ = [('description', SsoChangeSamlIdentityModeType.description.validator)] SsoErrorDetails.error_details.validator = FailureDetailsLogInfo_validator SsoErrorDetails._all_field_names_ = set(['error_details']) SsoErrorDetails._all_fields_ = [('error_details', SsoErrorDetails.error_details.validator)] SsoErrorType.description.validator = bv.String() SsoErrorType._all_field_names_ = set(['description']) SsoErrorType._all_fields_ = [('description', SsoErrorType.description.validator)] SsoRemoveCertDetails._all_field_names_ = set([]) SsoRemoveCertDetails._all_fields_ = [] SsoRemoveCertType.description.validator = bv.String() SsoRemoveCertType._all_field_names_ = set(['description']) SsoRemoveCertType._all_fields_ = [('description', SsoRemoveCertType.description.validator)] SsoRemoveLoginUrlDetails.previous_value.validator = bv.String() SsoRemoveLoginUrlDetails._all_field_names_ = set(['previous_value']) SsoRemoveLoginUrlDetails._all_fields_ = [('previous_value', SsoRemoveLoginUrlDetails.previous_value.validator)] SsoRemoveLoginUrlType.description.validator = bv.String() SsoRemoveLoginUrlType._all_field_names_ = set(['description']) SsoRemoveLoginUrlType._all_fields_ = [('description', SsoRemoveLoginUrlType.description.validator)] SsoRemoveLogoutUrlDetails.previous_value.validator = bv.String() SsoRemoveLogoutUrlDetails._all_field_names_ = set(['previous_value']) SsoRemoveLogoutUrlDetails._all_fields_ = [('previous_value', SsoRemoveLogoutUrlDetails.previous_value.validator)] SsoRemoveLogoutUrlType.description.validator = bv.String() SsoRemoveLogoutUrlType._all_field_names_ = set(['description']) SsoRemoveLogoutUrlType._all_fields_ = [('description', SsoRemoveLogoutUrlType.description.validator)] StartedEnterpriseAdminSessionDetails.federation_extra_details.validator = FedExtraDetails_validator StartedEnterpriseAdminSessionDetails._all_field_names_ = set(['federation_extra_details']) StartedEnterpriseAdminSessionDetails._all_fields_ = [('federation_extra_details', StartedEnterpriseAdminSessionDetails.federation_extra_details.validator)] StartedEnterpriseAdminSessionType.description.validator = bv.String() StartedEnterpriseAdminSessionType._all_field_names_ = set(['description']) StartedEnterpriseAdminSessionType._all_fields_ = [('description', StartedEnterpriseAdminSessionType.description.validator)] TeamActivityCreateReportDetails.start_date.validator = common.DropboxTimestamp_validator TeamActivityCreateReportDetails.end_date.validator = common.DropboxTimestamp_validator TeamActivityCreateReportDetails._all_field_names_ = set([ 'start_date', 'end_date', ]) TeamActivityCreateReportDetails._all_fields_ = [ ('start_date', TeamActivityCreateReportDetails.start_date.validator), ('end_date', TeamActivityCreateReportDetails.end_date.validator), ] TeamActivityCreateReportFailDetails.failure_reason.validator = team.TeamReportFailureReason_validator TeamActivityCreateReportFailDetails._all_field_names_ = set(['failure_reason']) TeamActivityCreateReportFailDetails._all_fields_ = [('failure_reason', TeamActivityCreateReportFailDetails.failure_reason.validator)] TeamActivityCreateReportFailType.description.validator = bv.String() TeamActivityCreateReportFailType._all_field_names_ = set(['description']) TeamActivityCreateReportFailType._all_fields_ = [('description', TeamActivityCreateReportFailType.description.validator)] TeamActivityCreateReportType.description.validator = bv.String() TeamActivityCreateReportType._all_field_names_ = set(['description']) TeamActivityCreateReportType._all_fields_ = [('description', TeamActivityCreateReportType.description.validator)] TeamBrandingPolicy._disabled_validator = bv.Void() TeamBrandingPolicy._enabled_validator = bv.Void() TeamBrandingPolicy._other_validator = bv.Void() TeamBrandingPolicy._tagmap = { 'disabled': TeamBrandingPolicy._disabled_validator, 'enabled': TeamBrandingPolicy._enabled_validator, 'other': TeamBrandingPolicy._other_validator, } TeamBrandingPolicy.disabled = TeamBrandingPolicy('disabled') TeamBrandingPolicy.enabled = TeamBrandingPolicy('enabled') TeamBrandingPolicy.other = TeamBrandingPolicy('other') TeamBrandingPolicyChangedDetails.new_value.validator = TeamBrandingPolicy_validator TeamBrandingPolicyChangedDetails.previous_value.validator = TeamBrandingPolicy_validator TeamBrandingPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) TeamBrandingPolicyChangedDetails._all_fields_ = [ ('new_value', TeamBrandingPolicyChangedDetails.new_value.validator), ('previous_value', TeamBrandingPolicyChangedDetails.previous_value.validator), ] TeamBrandingPolicyChangedType.description.validator = bv.String() TeamBrandingPolicyChangedType._all_field_names_ = set(['description']) TeamBrandingPolicyChangedType._all_fields_ = [('description', TeamBrandingPolicyChangedType.description.validator)] TeamDetails.team.validator = bv.String() TeamDetails._all_field_names_ = set(['team']) TeamDetails._all_fields_ = [('team', TeamDetails.team.validator)] TeamEncryptionKeyCancelKeyDeletionDetails._all_field_names_ = set([]) TeamEncryptionKeyCancelKeyDeletionDetails._all_fields_ = [] TeamEncryptionKeyCancelKeyDeletionType.description.validator = bv.String() TeamEncryptionKeyCancelKeyDeletionType._all_field_names_ = set(['description']) TeamEncryptionKeyCancelKeyDeletionType._all_fields_ = [('description', TeamEncryptionKeyCancelKeyDeletionType.description.validator)] TeamEncryptionKeyCreateKeyDetails._all_field_names_ = set([]) TeamEncryptionKeyCreateKeyDetails._all_fields_ = [] TeamEncryptionKeyCreateKeyType.description.validator = bv.String() TeamEncryptionKeyCreateKeyType._all_field_names_ = set(['description']) TeamEncryptionKeyCreateKeyType._all_fields_ = [('description', TeamEncryptionKeyCreateKeyType.description.validator)] TeamEncryptionKeyDeleteKeyDetails._all_field_names_ = set([]) TeamEncryptionKeyDeleteKeyDetails._all_fields_ = [] TeamEncryptionKeyDeleteKeyType.description.validator = bv.String() TeamEncryptionKeyDeleteKeyType._all_field_names_ = set(['description']) TeamEncryptionKeyDeleteKeyType._all_fields_ = [('description', TeamEncryptionKeyDeleteKeyType.description.validator)] TeamEncryptionKeyDisableKeyDetails._all_field_names_ = set([]) TeamEncryptionKeyDisableKeyDetails._all_fields_ = [] TeamEncryptionKeyDisableKeyType.description.validator = bv.String() TeamEncryptionKeyDisableKeyType._all_field_names_ = set(['description']) TeamEncryptionKeyDisableKeyType._all_fields_ = [('description', TeamEncryptionKeyDisableKeyType.description.validator)] TeamEncryptionKeyEnableKeyDetails._all_field_names_ = set([]) TeamEncryptionKeyEnableKeyDetails._all_fields_ = [] TeamEncryptionKeyEnableKeyType.description.validator = bv.String() TeamEncryptionKeyEnableKeyType._all_field_names_ = set(['description']) TeamEncryptionKeyEnableKeyType._all_fields_ = [('description', TeamEncryptionKeyEnableKeyType.description.validator)] TeamEncryptionKeyRotateKeyDetails._all_field_names_ = set([]) TeamEncryptionKeyRotateKeyDetails._all_fields_ = [] TeamEncryptionKeyRotateKeyType.description.validator = bv.String() TeamEncryptionKeyRotateKeyType._all_field_names_ = set(['description']) TeamEncryptionKeyRotateKeyType._all_fields_ = [('description', TeamEncryptionKeyRotateKeyType.description.validator)] TeamEncryptionKeyScheduleKeyDeletionDetails._all_field_names_ = set([]) TeamEncryptionKeyScheduleKeyDeletionDetails._all_fields_ = [] TeamEncryptionKeyScheduleKeyDeletionType.description.validator = bv.String() TeamEncryptionKeyScheduleKeyDeletionType._all_field_names_ = set(['description']) TeamEncryptionKeyScheduleKeyDeletionType._all_fields_ = [('description', TeamEncryptionKeyScheduleKeyDeletionType.description.validator)] TeamEvent.timestamp.validator = common.DropboxTimestamp_validator TeamEvent.event_category.validator = EventCategory_validator TeamEvent.actor.validator = bv.Nullable(ActorLogInfo_validator) TeamEvent.origin.validator = bv.Nullable(OriginLogInfo_validator) TeamEvent.involve_non_team_member.validator = bv.Nullable(bv.Boolean()) TeamEvent.context.validator = bv.Nullable(ContextLogInfo_validator) TeamEvent.participants.validator = bv.Nullable(bv.List(ParticipantLogInfo_validator)) TeamEvent.assets.validator = bv.Nullable(bv.List(AssetLogInfo_validator)) TeamEvent.event_type.validator = EventType_validator TeamEvent.details.validator = EventDetails_validator TeamEvent._all_field_names_ = set([ 'timestamp', 'event_category', 'actor', 'origin', 'involve_non_team_member', 'context', 'participants', 'assets', 'event_type', 'details', ]) TeamEvent._all_fields_ = [ ('timestamp', TeamEvent.timestamp.validator), ('event_category', TeamEvent.event_category.validator), ('actor', TeamEvent.actor.validator), ('origin', TeamEvent.origin.validator), ('involve_non_team_member', TeamEvent.involve_non_team_member.validator), ('context', TeamEvent.context.validator), ('participants', TeamEvent.participants.validator), ('assets', TeamEvent.assets.validator), ('event_type', TeamEvent.event_type.validator), ('details', TeamEvent.details.validator), ] TeamExtensionsPolicy._disabled_validator = bv.Void() TeamExtensionsPolicy._enabled_validator = bv.Void() TeamExtensionsPolicy._other_validator = bv.Void() TeamExtensionsPolicy._tagmap = { 'disabled': TeamExtensionsPolicy._disabled_validator, 'enabled': TeamExtensionsPolicy._enabled_validator, 'other': TeamExtensionsPolicy._other_validator, } TeamExtensionsPolicy.disabled = TeamExtensionsPolicy('disabled') TeamExtensionsPolicy.enabled = TeamExtensionsPolicy('enabled') TeamExtensionsPolicy.other = TeamExtensionsPolicy('other') TeamExtensionsPolicyChangedDetails.new_value.validator = TeamExtensionsPolicy_validator TeamExtensionsPolicyChangedDetails.previous_value.validator = TeamExtensionsPolicy_validator TeamExtensionsPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) TeamExtensionsPolicyChangedDetails._all_fields_ = [ ('new_value', TeamExtensionsPolicyChangedDetails.new_value.validator), ('previous_value', TeamExtensionsPolicyChangedDetails.previous_value.validator), ] TeamExtensionsPolicyChangedType.description.validator = bv.String() TeamExtensionsPolicyChangedType._all_field_names_ = set(['description']) TeamExtensionsPolicyChangedType._all_fields_ = [('description', TeamExtensionsPolicyChangedType.description.validator)] TeamFolderChangeStatusDetails.new_value.validator = team.TeamFolderStatus_validator TeamFolderChangeStatusDetails.previous_value.validator = bv.Nullable(team.TeamFolderStatus_validator) TeamFolderChangeStatusDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) TeamFolderChangeStatusDetails._all_fields_ = [ ('new_value', TeamFolderChangeStatusDetails.new_value.validator), ('previous_value', TeamFolderChangeStatusDetails.previous_value.validator), ] TeamFolderChangeStatusType.description.validator = bv.String() TeamFolderChangeStatusType._all_field_names_ = set(['description']) TeamFolderChangeStatusType._all_fields_ = [('description', TeamFolderChangeStatusType.description.validator)] TeamFolderCreateDetails._all_field_names_ = set([]) TeamFolderCreateDetails._all_fields_ = [] TeamFolderCreateType.description.validator = bv.String() TeamFolderCreateType._all_field_names_ = set(['description']) TeamFolderCreateType._all_fields_ = [('description', TeamFolderCreateType.description.validator)] TeamFolderDowngradeDetails.target_asset_index.validator = bv.UInt64() TeamFolderDowngradeDetails._all_field_names_ = set(['target_asset_index']) TeamFolderDowngradeDetails._all_fields_ = [('target_asset_index', TeamFolderDowngradeDetails.target_asset_index.validator)] TeamFolderDowngradeType.description.validator = bv.String() TeamFolderDowngradeType._all_field_names_ = set(['description']) TeamFolderDowngradeType._all_fields_ = [('description', TeamFolderDowngradeType.description.validator)] TeamFolderPermanentlyDeleteDetails._all_field_names_ = set([]) TeamFolderPermanentlyDeleteDetails._all_fields_ = [] TeamFolderPermanentlyDeleteType.description.validator = bv.String() TeamFolderPermanentlyDeleteType._all_field_names_ = set(['description']) TeamFolderPermanentlyDeleteType._all_fields_ = [('description', TeamFolderPermanentlyDeleteType.description.validator)] TeamFolderRenameDetails.previous_folder_name.validator = bv.String() TeamFolderRenameDetails.new_folder_name.validator = bv.String() TeamFolderRenameDetails._all_field_names_ = set([ 'previous_folder_name', 'new_folder_name', ]) TeamFolderRenameDetails._all_fields_ = [ ('previous_folder_name', TeamFolderRenameDetails.previous_folder_name.validator), ('new_folder_name', TeamFolderRenameDetails.new_folder_name.validator), ] TeamFolderRenameType.description.validator = bv.String() TeamFolderRenameType._all_field_names_ = set(['description']) TeamFolderRenameType._all_fields_ = [('description', TeamFolderRenameType.description.validator)] TeamInviteDetails.invite_method.validator = InviteMethod_validator TeamInviteDetails.additional_license_purchase.validator = bv.Nullable(bv.Boolean()) TeamInviteDetails._all_field_names_ = set([ 'invite_method', 'additional_license_purchase', ]) TeamInviteDetails._all_fields_ = [ ('invite_method', TeamInviteDetails.invite_method.validator), ('additional_license_purchase', TeamInviteDetails.additional_license_purchase.validator), ] TeamLinkedAppLogInfo._field_names_ = set([]) TeamLinkedAppLogInfo._all_field_names_ = AppLogInfo._all_field_names_.union(TeamLinkedAppLogInfo._field_names_) TeamLinkedAppLogInfo._fields_ = [] TeamLinkedAppLogInfo._all_fields_ = AppLogInfo._all_fields_ + TeamLinkedAppLogInfo._fields_ TeamLogInfo.display_name.validator = bv.String() TeamLogInfo._all_field_names_ = set(['display_name']) TeamLogInfo._all_fields_ = [('display_name', TeamLogInfo.display_name.validator)] TeamMemberLogInfo.team_member_id.validator = bv.Nullable(team_common.TeamMemberId_validator) TeamMemberLogInfo.member_external_id.validator = bv.Nullable(team_common.MemberExternalId_validator) TeamMemberLogInfo.team.validator = bv.Nullable(TeamLogInfo_validator) TeamMemberLogInfo._field_names_ = set([ 'team_member_id', 'member_external_id', 'team', ]) TeamMemberLogInfo._all_field_names_ = UserLogInfo._all_field_names_.union(TeamMemberLogInfo._field_names_) TeamMemberLogInfo._fields_ = [ ('team_member_id', TeamMemberLogInfo.team_member_id.validator), ('member_external_id', TeamMemberLogInfo.member_external_id.validator), ('team', TeamMemberLogInfo.team.validator), ] TeamMemberLogInfo._all_fields_ = UserLogInfo._all_fields_ + TeamMemberLogInfo._fields_ TeamMembershipType._free_validator = bv.Void() TeamMembershipType._full_validator = bv.Void() TeamMembershipType._guest_validator = bv.Void() TeamMembershipType._other_validator = bv.Void() TeamMembershipType._tagmap = { 'free': TeamMembershipType._free_validator, 'full': TeamMembershipType._full_validator, 'guest': TeamMembershipType._guest_validator, 'other': TeamMembershipType._other_validator, } TeamMembershipType.free = TeamMembershipType('free') TeamMembershipType.full = TeamMembershipType('full') TeamMembershipType.guest = TeamMembershipType('guest') TeamMembershipType.other = TeamMembershipType('other') TeamMergeFromDetails.team_name.validator = bv.String() TeamMergeFromDetails._all_field_names_ = set(['team_name']) TeamMergeFromDetails._all_fields_ = [('team_name', TeamMergeFromDetails.team_name.validator)] TeamMergeFromType.description.validator = bv.String() TeamMergeFromType._all_field_names_ = set(['description']) TeamMergeFromType._all_fields_ = [('description', TeamMergeFromType.description.validator)] TeamMergeRequestAcceptedDetails.request_accepted_details.validator = TeamMergeRequestAcceptedExtraDetails_validator TeamMergeRequestAcceptedDetails._all_field_names_ = set(['request_accepted_details']) TeamMergeRequestAcceptedDetails._all_fields_ = [('request_accepted_details', TeamMergeRequestAcceptedDetails.request_accepted_details.validator)] TeamMergeRequestAcceptedExtraDetails._primary_team_validator = PrimaryTeamRequestAcceptedDetails_validator TeamMergeRequestAcceptedExtraDetails._secondary_team_validator = SecondaryTeamRequestAcceptedDetails_validator TeamMergeRequestAcceptedExtraDetails._other_validator = bv.Void() TeamMergeRequestAcceptedExtraDetails._tagmap = { 'primary_team': TeamMergeRequestAcceptedExtraDetails._primary_team_validator, 'secondary_team': TeamMergeRequestAcceptedExtraDetails._secondary_team_validator, 'other': TeamMergeRequestAcceptedExtraDetails._other_validator, } TeamMergeRequestAcceptedExtraDetails.other = TeamMergeRequestAcceptedExtraDetails('other') TeamMergeRequestAcceptedShownToPrimaryTeamDetails.secondary_team.validator = bv.String() TeamMergeRequestAcceptedShownToPrimaryTeamDetails.sent_by.validator = bv.String() TeamMergeRequestAcceptedShownToPrimaryTeamDetails._all_field_names_ = set([ 'secondary_team', 'sent_by', ]) TeamMergeRequestAcceptedShownToPrimaryTeamDetails._all_fields_ = [ ('secondary_team', TeamMergeRequestAcceptedShownToPrimaryTeamDetails.secondary_team.validator), ('sent_by', TeamMergeRequestAcceptedShownToPrimaryTeamDetails.sent_by.validator), ] TeamMergeRequestAcceptedShownToPrimaryTeamType.description.validator = bv.String() TeamMergeRequestAcceptedShownToPrimaryTeamType._all_field_names_ = set(['description']) TeamMergeRequestAcceptedShownToPrimaryTeamType._all_fields_ = [('description', TeamMergeRequestAcceptedShownToPrimaryTeamType.description.validator)] TeamMergeRequestAcceptedShownToSecondaryTeamDetails.primary_team.validator = bv.String() TeamMergeRequestAcceptedShownToSecondaryTeamDetails.sent_by.validator = bv.String() TeamMergeRequestAcceptedShownToSecondaryTeamDetails._all_field_names_ = set([ 'primary_team', 'sent_by', ]) TeamMergeRequestAcceptedShownToSecondaryTeamDetails._all_fields_ = [ ('primary_team', TeamMergeRequestAcceptedShownToSecondaryTeamDetails.primary_team.validator), ('sent_by', TeamMergeRequestAcceptedShownToSecondaryTeamDetails.sent_by.validator), ] TeamMergeRequestAcceptedShownToSecondaryTeamType.description.validator = bv.String() TeamMergeRequestAcceptedShownToSecondaryTeamType._all_field_names_ = set(['description']) TeamMergeRequestAcceptedShownToSecondaryTeamType._all_fields_ = [('description', TeamMergeRequestAcceptedShownToSecondaryTeamType.description.validator)] TeamMergeRequestAcceptedType.description.validator = bv.String() TeamMergeRequestAcceptedType._all_field_names_ = set(['description']) TeamMergeRequestAcceptedType._all_fields_ = [('description', TeamMergeRequestAcceptedType.description.validator)] TeamMergeRequestAutoCanceledDetails.details.validator = bv.Nullable(bv.String()) TeamMergeRequestAutoCanceledDetails._all_field_names_ = set(['details']) TeamMergeRequestAutoCanceledDetails._all_fields_ = [('details', TeamMergeRequestAutoCanceledDetails.details.validator)] TeamMergeRequestAutoCanceledType.description.validator = bv.String() TeamMergeRequestAutoCanceledType._all_field_names_ = set(['description']) TeamMergeRequestAutoCanceledType._all_fields_ = [('description', TeamMergeRequestAutoCanceledType.description.validator)] TeamMergeRequestCanceledDetails.request_canceled_details.validator = TeamMergeRequestCanceledExtraDetails_validator TeamMergeRequestCanceledDetails._all_field_names_ = set(['request_canceled_details']) TeamMergeRequestCanceledDetails._all_fields_ = [('request_canceled_details', TeamMergeRequestCanceledDetails.request_canceled_details.validator)] TeamMergeRequestCanceledExtraDetails._primary_team_validator = PrimaryTeamRequestCanceledDetails_validator TeamMergeRequestCanceledExtraDetails._secondary_team_validator = SecondaryTeamRequestCanceledDetails_validator TeamMergeRequestCanceledExtraDetails._other_validator = bv.Void() TeamMergeRequestCanceledExtraDetails._tagmap = { 'primary_team': TeamMergeRequestCanceledExtraDetails._primary_team_validator, 'secondary_team': TeamMergeRequestCanceledExtraDetails._secondary_team_validator, 'other': TeamMergeRequestCanceledExtraDetails._other_validator, } TeamMergeRequestCanceledExtraDetails.other = TeamMergeRequestCanceledExtraDetails('other') TeamMergeRequestCanceledShownToPrimaryTeamDetails.secondary_team.validator = bv.String() TeamMergeRequestCanceledShownToPrimaryTeamDetails.sent_by.validator = bv.String() TeamMergeRequestCanceledShownToPrimaryTeamDetails._all_field_names_ = set([ 'secondary_team', 'sent_by', ]) TeamMergeRequestCanceledShownToPrimaryTeamDetails._all_fields_ = [ ('secondary_team', TeamMergeRequestCanceledShownToPrimaryTeamDetails.secondary_team.validator), ('sent_by', TeamMergeRequestCanceledShownToPrimaryTeamDetails.sent_by.validator), ] TeamMergeRequestCanceledShownToPrimaryTeamType.description.validator = bv.String() TeamMergeRequestCanceledShownToPrimaryTeamType._all_field_names_ = set(['description']) TeamMergeRequestCanceledShownToPrimaryTeamType._all_fields_ = [('description', TeamMergeRequestCanceledShownToPrimaryTeamType.description.validator)] TeamMergeRequestCanceledShownToSecondaryTeamDetails.sent_to.validator = bv.String() TeamMergeRequestCanceledShownToSecondaryTeamDetails.sent_by.validator = bv.String() TeamMergeRequestCanceledShownToSecondaryTeamDetails._all_field_names_ = set([ 'sent_to', 'sent_by', ]) TeamMergeRequestCanceledShownToSecondaryTeamDetails._all_fields_ = [ ('sent_to', TeamMergeRequestCanceledShownToSecondaryTeamDetails.sent_to.validator), ('sent_by', TeamMergeRequestCanceledShownToSecondaryTeamDetails.sent_by.validator), ] TeamMergeRequestCanceledShownToSecondaryTeamType.description.validator = bv.String() TeamMergeRequestCanceledShownToSecondaryTeamType._all_field_names_ = set(['description']) TeamMergeRequestCanceledShownToSecondaryTeamType._all_fields_ = [('description', TeamMergeRequestCanceledShownToSecondaryTeamType.description.validator)] TeamMergeRequestCanceledType.description.validator = bv.String() TeamMergeRequestCanceledType._all_field_names_ = set(['description']) TeamMergeRequestCanceledType._all_fields_ = [('description', TeamMergeRequestCanceledType.description.validator)] TeamMergeRequestExpiredDetails.request_expired_details.validator = TeamMergeRequestExpiredExtraDetails_validator TeamMergeRequestExpiredDetails._all_field_names_ = set(['request_expired_details']) TeamMergeRequestExpiredDetails._all_fields_ = [('request_expired_details', TeamMergeRequestExpiredDetails.request_expired_details.validator)] TeamMergeRequestExpiredExtraDetails._primary_team_validator = PrimaryTeamRequestExpiredDetails_validator TeamMergeRequestExpiredExtraDetails._secondary_team_validator = SecondaryTeamRequestExpiredDetails_validator TeamMergeRequestExpiredExtraDetails._other_validator = bv.Void() TeamMergeRequestExpiredExtraDetails._tagmap = { 'primary_team': TeamMergeRequestExpiredExtraDetails._primary_team_validator, 'secondary_team': TeamMergeRequestExpiredExtraDetails._secondary_team_validator, 'other': TeamMergeRequestExpiredExtraDetails._other_validator, } TeamMergeRequestExpiredExtraDetails.other = TeamMergeRequestExpiredExtraDetails('other') TeamMergeRequestExpiredShownToPrimaryTeamDetails.secondary_team.validator = bv.String() TeamMergeRequestExpiredShownToPrimaryTeamDetails.sent_by.validator = bv.String() TeamMergeRequestExpiredShownToPrimaryTeamDetails._all_field_names_ = set([ 'secondary_team', 'sent_by', ]) TeamMergeRequestExpiredShownToPrimaryTeamDetails._all_fields_ = [ ('secondary_team', TeamMergeRequestExpiredShownToPrimaryTeamDetails.secondary_team.validator), ('sent_by', TeamMergeRequestExpiredShownToPrimaryTeamDetails.sent_by.validator), ] TeamMergeRequestExpiredShownToPrimaryTeamType.description.validator = bv.String() TeamMergeRequestExpiredShownToPrimaryTeamType._all_field_names_ = set(['description']) TeamMergeRequestExpiredShownToPrimaryTeamType._all_fields_ = [('description', TeamMergeRequestExpiredShownToPrimaryTeamType.description.validator)] TeamMergeRequestExpiredShownToSecondaryTeamDetails.sent_to.validator = bv.String() TeamMergeRequestExpiredShownToSecondaryTeamDetails._all_field_names_ = set(['sent_to']) TeamMergeRequestExpiredShownToSecondaryTeamDetails._all_fields_ = [('sent_to', TeamMergeRequestExpiredShownToSecondaryTeamDetails.sent_to.validator)] TeamMergeRequestExpiredShownToSecondaryTeamType.description.validator = bv.String() TeamMergeRequestExpiredShownToSecondaryTeamType._all_field_names_ = set(['description']) TeamMergeRequestExpiredShownToSecondaryTeamType._all_fields_ = [('description', TeamMergeRequestExpiredShownToSecondaryTeamType.description.validator)] TeamMergeRequestExpiredType.description.validator = bv.String() TeamMergeRequestExpiredType._all_field_names_ = set(['description']) TeamMergeRequestExpiredType._all_fields_ = [('description', TeamMergeRequestExpiredType.description.validator)] TeamMergeRequestRejectedShownToPrimaryTeamDetails.secondary_team.validator = bv.String() TeamMergeRequestRejectedShownToPrimaryTeamDetails.sent_by.validator = bv.String() TeamMergeRequestRejectedShownToPrimaryTeamDetails._all_field_names_ = set([ 'secondary_team', 'sent_by', ]) TeamMergeRequestRejectedShownToPrimaryTeamDetails._all_fields_ = [ ('secondary_team', TeamMergeRequestRejectedShownToPrimaryTeamDetails.secondary_team.validator), ('sent_by', TeamMergeRequestRejectedShownToPrimaryTeamDetails.sent_by.validator), ] TeamMergeRequestRejectedShownToPrimaryTeamType.description.validator = bv.String() TeamMergeRequestRejectedShownToPrimaryTeamType._all_field_names_ = set(['description']) TeamMergeRequestRejectedShownToPrimaryTeamType._all_fields_ = [('description', TeamMergeRequestRejectedShownToPrimaryTeamType.description.validator)] TeamMergeRequestRejectedShownToSecondaryTeamDetails.sent_by.validator = bv.String() TeamMergeRequestRejectedShownToSecondaryTeamDetails._all_field_names_ = set(['sent_by']) TeamMergeRequestRejectedShownToSecondaryTeamDetails._all_fields_ = [('sent_by', TeamMergeRequestRejectedShownToSecondaryTeamDetails.sent_by.validator)] TeamMergeRequestRejectedShownToSecondaryTeamType.description.validator = bv.String() TeamMergeRequestRejectedShownToSecondaryTeamType._all_field_names_ = set(['description']) TeamMergeRequestRejectedShownToSecondaryTeamType._all_fields_ = [('description', TeamMergeRequestRejectedShownToSecondaryTeamType.description.validator)] TeamMergeRequestReminderDetails.request_reminder_details.validator = TeamMergeRequestReminderExtraDetails_validator TeamMergeRequestReminderDetails._all_field_names_ = set(['request_reminder_details']) TeamMergeRequestReminderDetails._all_fields_ = [('request_reminder_details', TeamMergeRequestReminderDetails.request_reminder_details.validator)] TeamMergeRequestReminderExtraDetails._primary_team_validator = PrimaryTeamRequestReminderDetails_validator TeamMergeRequestReminderExtraDetails._secondary_team_validator = SecondaryTeamRequestReminderDetails_validator TeamMergeRequestReminderExtraDetails._other_validator = bv.Void() TeamMergeRequestReminderExtraDetails._tagmap = { 'primary_team': TeamMergeRequestReminderExtraDetails._primary_team_validator, 'secondary_team': TeamMergeRequestReminderExtraDetails._secondary_team_validator, 'other': TeamMergeRequestReminderExtraDetails._other_validator, } TeamMergeRequestReminderExtraDetails.other = TeamMergeRequestReminderExtraDetails('other') TeamMergeRequestReminderShownToPrimaryTeamDetails.secondary_team.validator = bv.String() TeamMergeRequestReminderShownToPrimaryTeamDetails.sent_to.validator = bv.String() TeamMergeRequestReminderShownToPrimaryTeamDetails._all_field_names_ = set([ 'secondary_team', 'sent_to', ]) TeamMergeRequestReminderShownToPrimaryTeamDetails._all_fields_ = [ ('secondary_team', TeamMergeRequestReminderShownToPrimaryTeamDetails.secondary_team.validator), ('sent_to', TeamMergeRequestReminderShownToPrimaryTeamDetails.sent_to.validator), ] TeamMergeRequestReminderShownToPrimaryTeamType.description.validator = bv.String() TeamMergeRequestReminderShownToPrimaryTeamType._all_field_names_ = set(['description']) TeamMergeRequestReminderShownToPrimaryTeamType._all_fields_ = [('description', TeamMergeRequestReminderShownToPrimaryTeamType.description.validator)] TeamMergeRequestReminderShownToSecondaryTeamDetails.sent_to.validator = bv.String() TeamMergeRequestReminderShownToSecondaryTeamDetails._all_field_names_ = set(['sent_to']) TeamMergeRequestReminderShownToSecondaryTeamDetails._all_fields_ = [('sent_to', TeamMergeRequestReminderShownToSecondaryTeamDetails.sent_to.validator)] TeamMergeRequestReminderShownToSecondaryTeamType.description.validator = bv.String() TeamMergeRequestReminderShownToSecondaryTeamType._all_field_names_ = set(['description']) TeamMergeRequestReminderShownToSecondaryTeamType._all_fields_ = [('description', TeamMergeRequestReminderShownToSecondaryTeamType.description.validator)] TeamMergeRequestReminderType.description.validator = bv.String() TeamMergeRequestReminderType._all_field_names_ = set(['description']) TeamMergeRequestReminderType._all_fields_ = [('description', TeamMergeRequestReminderType.description.validator)] TeamMergeRequestRevokedDetails.team.validator = bv.String() TeamMergeRequestRevokedDetails._all_field_names_ = set(['team']) TeamMergeRequestRevokedDetails._all_fields_ = [('team', TeamMergeRequestRevokedDetails.team.validator)] TeamMergeRequestRevokedType.description.validator = bv.String() TeamMergeRequestRevokedType._all_field_names_ = set(['description']) TeamMergeRequestRevokedType._all_fields_ = [('description', TeamMergeRequestRevokedType.description.validator)] TeamMergeRequestSentShownToPrimaryTeamDetails.secondary_team.validator = bv.String() TeamMergeRequestSentShownToPrimaryTeamDetails.sent_to.validator = bv.String() TeamMergeRequestSentShownToPrimaryTeamDetails._all_field_names_ = set([ 'secondary_team', 'sent_to', ]) TeamMergeRequestSentShownToPrimaryTeamDetails._all_fields_ = [ ('secondary_team', TeamMergeRequestSentShownToPrimaryTeamDetails.secondary_team.validator), ('sent_to', TeamMergeRequestSentShownToPrimaryTeamDetails.sent_to.validator), ] TeamMergeRequestSentShownToPrimaryTeamType.description.validator = bv.String() TeamMergeRequestSentShownToPrimaryTeamType._all_field_names_ = set(['description']) TeamMergeRequestSentShownToPrimaryTeamType._all_fields_ = [('description', TeamMergeRequestSentShownToPrimaryTeamType.description.validator)] TeamMergeRequestSentShownToSecondaryTeamDetails.sent_to.validator = bv.String() TeamMergeRequestSentShownToSecondaryTeamDetails._all_field_names_ = set(['sent_to']) TeamMergeRequestSentShownToSecondaryTeamDetails._all_fields_ = [('sent_to', TeamMergeRequestSentShownToSecondaryTeamDetails.sent_to.validator)] TeamMergeRequestSentShownToSecondaryTeamType.description.validator = bv.String() TeamMergeRequestSentShownToSecondaryTeamType._all_field_names_ = set(['description']) TeamMergeRequestSentShownToSecondaryTeamType._all_fields_ = [('description', TeamMergeRequestSentShownToSecondaryTeamType.description.validator)] TeamMergeToDetails.team_name.validator = bv.String() TeamMergeToDetails._all_field_names_ = set(['team_name']) TeamMergeToDetails._all_fields_ = [('team_name', TeamMergeToDetails.team_name.validator)] TeamMergeToType.description.validator = bv.String() TeamMergeToType._all_field_names_ = set(['description']) TeamMergeToType._all_fields_ = [('description', TeamMergeToType.description.validator)] TeamName.team_display_name.validator = bv.String() TeamName.team_legal_name.validator = bv.String() TeamName._all_field_names_ = set([ 'team_display_name', 'team_legal_name', ]) TeamName._all_fields_ = [ ('team_display_name', TeamName.team_display_name.validator), ('team_legal_name', TeamName.team_legal_name.validator), ] TeamProfileAddBackgroundDetails._all_field_names_ = set([]) TeamProfileAddBackgroundDetails._all_fields_ = [] TeamProfileAddBackgroundType.description.validator = bv.String() TeamProfileAddBackgroundType._all_field_names_ = set(['description']) TeamProfileAddBackgroundType._all_fields_ = [('description', TeamProfileAddBackgroundType.description.validator)] TeamProfileAddLogoDetails._all_field_names_ = set([]) TeamProfileAddLogoDetails._all_fields_ = [] TeamProfileAddLogoType.description.validator = bv.String() TeamProfileAddLogoType._all_field_names_ = set(['description']) TeamProfileAddLogoType._all_fields_ = [('description', TeamProfileAddLogoType.description.validator)] TeamProfileChangeBackgroundDetails._all_field_names_ = set([]) TeamProfileChangeBackgroundDetails._all_fields_ = [] TeamProfileChangeBackgroundType.description.validator = bv.String() TeamProfileChangeBackgroundType._all_field_names_ = set(['description']) TeamProfileChangeBackgroundType._all_fields_ = [('description', TeamProfileChangeBackgroundType.description.validator)] TeamProfileChangeDefaultLanguageDetails.new_value.validator = common.LanguageCode_validator TeamProfileChangeDefaultLanguageDetails.previous_value.validator = common.LanguageCode_validator TeamProfileChangeDefaultLanguageDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) TeamProfileChangeDefaultLanguageDetails._all_fields_ = [ ('new_value', TeamProfileChangeDefaultLanguageDetails.new_value.validator), ('previous_value', TeamProfileChangeDefaultLanguageDetails.previous_value.validator), ] TeamProfileChangeDefaultLanguageType.description.validator = bv.String() TeamProfileChangeDefaultLanguageType._all_field_names_ = set(['description']) TeamProfileChangeDefaultLanguageType._all_fields_ = [('description', TeamProfileChangeDefaultLanguageType.description.validator)] TeamProfileChangeLogoDetails._all_field_names_ = set([]) TeamProfileChangeLogoDetails._all_fields_ = [] TeamProfileChangeLogoType.description.validator = bv.String() TeamProfileChangeLogoType._all_field_names_ = set(['description']) TeamProfileChangeLogoType._all_fields_ = [('description', TeamProfileChangeLogoType.description.validator)] TeamProfileChangeNameDetails.previous_value.validator = bv.Nullable(TeamName_validator) TeamProfileChangeNameDetails.new_value.validator = TeamName_validator TeamProfileChangeNameDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) TeamProfileChangeNameDetails._all_fields_ = [ ('previous_value', TeamProfileChangeNameDetails.previous_value.validator), ('new_value', TeamProfileChangeNameDetails.new_value.validator), ] TeamProfileChangeNameType.description.validator = bv.String() TeamProfileChangeNameType._all_field_names_ = set(['description']) TeamProfileChangeNameType._all_fields_ = [('description', TeamProfileChangeNameType.description.validator)] TeamProfileRemoveBackgroundDetails._all_field_names_ = set([]) TeamProfileRemoveBackgroundDetails._all_fields_ = [] TeamProfileRemoveBackgroundType.description.validator = bv.String() TeamProfileRemoveBackgroundType._all_field_names_ = set(['description']) TeamProfileRemoveBackgroundType._all_fields_ = [('description', TeamProfileRemoveBackgroundType.description.validator)] TeamProfileRemoveLogoDetails._all_field_names_ = set([]) TeamProfileRemoveLogoDetails._all_fields_ = [] TeamProfileRemoveLogoType.description.validator = bv.String() TeamProfileRemoveLogoType._all_field_names_ = set(['description']) TeamProfileRemoveLogoType._all_fields_ = [('description', TeamProfileRemoveLogoType.description.validator)] TeamSelectiveSyncPolicy._disabled_validator = bv.Void() TeamSelectiveSyncPolicy._enabled_validator = bv.Void() TeamSelectiveSyncPolicy._other_validator = bv.Void() TeamSelectiveSyncPolicy._tagmap = { 'disabled': TeamSelectiveSyncPolicy._disabled_validator, 'enabled': TeamSelectiveSyncPolicy._enabled_validator, 'other': TeamSelectiveSyncPolicy._other_validator, } TeamSelectiveSyncPolicy.disabled = TeamSelectiveSyncPolicy('disabled') TeamSelectiveSyncPolicy.enabled = TeamSelectiveSyncPolicy('enabled') TeamSelectiveSyncPolicy.other = TeamSelectiveSyncPolicy('other') TeamSelectiveSyncPolicyChangedDetails.new_value.validator = TeamSelectiveSyncPolicy_validator TeamSelectiveSyncPolicyChangedDetails.previous_value.validator = TeamSelectiveSyncPolicy_validator TeamSelectiveSyncPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) TeamSelectiveSyncPolicyChangedDetails._all_fields_ = [ ('new_value', TeamSelectiveSyncPolicyChangedDetails.new_value.validator), ('previous_value', TeamSelectiveSyncPolicyChangedDetails.previous_value.validator), ] TeamSelectiveSyncPolicyChangedType.description.validator = bv.String() TeamSelectiveSyncPolicyChangedType._all_field_names_ = set(['description']) TeamSelectiveSyncPolicyChangedType._all_fields_ = [('description', TeamSelectiveSyncPolicyChangedType.description.validator)] TeamSelectiveSyncSettingsChangedDetails.previous_value.validator = files.SyncSetting_validator TeamSelectiveSyncSettingsChangedDetails.new_value.validator = files.SyncSetting_validator TeamSelectiveSyncSettingsChangedDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) TeamSelectiveSyncSettingsChangedDetails._all_fields_ = [ ('previous_value', TeamSelectiveSyncSettingsChangedDetails.previous_value.validator), ('new_value', TeamSelectiveSyncSettingsChangedDetails.new_value.validator), ] TeamSelectiveSyncSettingsChangedType.description.validator = bv.String() TeamSelectiveSyncSettingsChangedType._all_field_names_ = set(['description']) TeamSelectiveSyncSettingsChangedType._all_fields_ = [('description', TeamSelectiveSyncSettingsChangedType.description.validator)] TeamSharingWhitelistSubjectsChangedDetails.added_whitelist_subjects.validator = bv.List(bv.String()) TeamSharingWhitelistSubjectsChangedDetails.removed_whitelist_subjects.validator = bv.List(bv.String()) TeamSharingWhitelistSubjectsChangedDetails._all_field_names_ = set([ 'added_whitelist_subjects', 'removed_whitelist_subjects', ]) TeamSharingWhitelistSubjectsChangedDetails._all_fields_ = [ ('added_whitelist_subjects', TeamSharingWhitelistSubjectsChangedDetails.added_whitelist_subjects.validator), ('removed_whitelist_subjects', TeamSharingWhitelistSubjectsChangedDetails.removed_whitelist_subjects.validator), ] TeamSharingWhitelistSubjectsChangedType.description.validator = bv.String() TeamSharingWhitelistSubjectsChangedType._all_field_names_ = set(['description']) TeamSharingWhitelistSubjectsChangedType._all_fields_ = [('description', TeamSharingWhitelistSubjectsChangedType.description.validator)] TfaAddBackupPhoneDetails._all_field_names_ = set([]) TfaAddBackupPhoneDetails._all_fields_ = [] TfaAddBackupPhoneType.description.validator = bv.String() TfaAddBackupPhoneType._all_field_names_ = set(['description']) TfaAddBackupPhoneType._all_fields_ = [('description', TfaAddBackupPhoneType.description.validator)] TfaAddExceptionDetails._all_field_names_ = set([]) TfaAddExceptionDetails._all_fields_ = [] TfaAddExceptionType.description.validator = bv.String() TfaAddExceptionType._all_field_names_ = set(['description']) TfaAddExceptionType._all_fields_ = [('description', TfaAddExceptionType.description.validator)] TfaAddSecurityKeyDetails._all_field_names_ = set([]) TfaAddSecurityKeyDetails._all_fields_ = [] TfaAddSecurityKeyType.description.validator = bv.String() TfaAddSecurityKeyType._all_field_names_ = set(['description']) TfaAddSecurityKeyType._all_fields_ = [('description', TfaAddSecurityKeyType.description.validator)] TfaChangeBackupPhoneDetails._all_field_names_ = set([]) TfaChangeBackupPhoneDetails._all_fields_ = [] TfaChangeBackupPhoneType.description.validator = bv.String() TfaChangeBackupPhoneType._all_field_names_ = set(['description']) TfaChangeBackupPhoneType._all_fields_ = [('description', TfaChangeBackupPhoneType.description.validator)] TfaChangePolicyDetails.new_value.validator = team_policies.TwoStepVerificationPolicy_validator TfaChangePolicyDetails.previous_value.validator = bv.Nullable(team_policies.TwoStepVerificationPolicy_validator) TfaChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) TfaChangePolicyDetails._all_fields_ = [ ('new_value', TfaChangePolicyDetails.new_value.validator), ('previous_value', TfaChangePolicyDetails.previous_value.validator), ] TfaChangePolicyType.description.validator = bv.String() TfaChangePolicyType._all_field_names_ = set(['description']) TfaChangePolicyType._all_fields_ = [('description', TfaChangePolicyType.description.validator)] TfaChangeStatusDetails.new_value.validator = TfaConfiguration_validator TfaChangeStatusDetails.previous_value.validator = bv.Nullable(TfaConfiguration_validator) TfaChangeStatusDetails.used_rescue_code.validator = bv.Nullable(bv.Boolean()) TfaChangeStatusDetails._all_field_names_ = set([ 'new_value', 'previous_value', 'used_rescue_code', ]) TfaChangeStatusDetails._all_fields_ = [ ('new_value', TfaChangeStatusDetails.new_value.validator), ('previous_value', TfaChangeStatusDetails.previous_value.validator), ('used_rescue_code', TfaChangeStatusDetails.used_rescue_code.validator), ] TfaChangeStatusType.description.validator = bv.String() TfaChangeStatusType._all_field_names_ = set(['description']) TfaChangeStatusType._all_fields_ = [('description', TfaChangeStatusType.description.validator)] TfaConfiguration._authenticator_validator = bv.Void() TfaConfiguration._disabled_validator = bv.Void() TfaConfiguration._enabled_validator = bv.Void() TfaConfiguration._sms_validator = bv.Void() TfaConfiguration._other_validator = bv.Void() TfaConfiguration._tagmap = { 'authenticator': TfaConfiguration._authenticator_validator, 'disabled': TfaConfiguration._disabled_validator, 'enabled': TfaConfiguration._enabled_validator, 'sms': TfaConfiguration._sms_validator, 'other': TfaConfiguration._other_validator, } TfaConfiguration.authenticator = TfaConfiguration('authenticator') TfaConfiguration.disabled = TfaConfiguration('disabled') TfaConfiguration.enabled = TfaConfiguration('enabled') TfaConfiguration.sms = TfaConfiguration('sms') TfaConfiguration.other = TfaConfiguration('other') TfaRemoveBackupPhoneDetails._all_field_names_ = set([]) TfaRemoveBackupPhoneDetails._all_fields_ = [] TfaRemoveBackupPhoneType.description.validator = bv.String() TfaRemoveBackupPhoneType._all_field_names_ = set(['description']) TfaRemoveBackupPhoneType._all_fields_ = [('description', TfaRemoveBackupPhoneType.description.validator)] TfaRemoveExceptionDetails._all_field_names_ = set([]) TfaRemoveExceptionDetails._all_fields_ = [] TfaRemoveExceptionType.description.validator = bv.String() TfaRemoveExceptionType._all_field_names_ = set(['description']) TfaRemoveExceptionType._all_fields_ = [('description', TfaRemoveExceptionType.description.validator)] TfaRemoveSecurityKeyDetails._all_field_names_ = set([]) TfaRemoveSecurityKeyDetails._all_fields_ = [] TfaRemoveSecurityKeyType.description.validator = bv.String() TfaRemoveSecurityKeyType._all_field_names_ = set(['description']) TfaRemoveSecurityKeyType._all_fields_ = [('description', TfaRemoveSecurityKeyType.description.validator)] TfaResetDetails._all_field_names_ = set([]) TfaResetDetails._all_fields_ = [] TfaResetType.description.validator = bv.String() TfaResetType._all_field_names_ = set(['description']) TfaResetType._all_fields_ = [('description', TfaResetType.description.validator)] TimeUnit._days_validator = bv.Void() TimeUnit._hours_validator = bv.Void() TimeUnit._milliseconds_validator = bv.Void() TimeUnit._minutes_validator = bv.Void() TimeUnit._months_validator = bv.Void() TimeUnit._seconds_validator = bv.Void() TimeUnit._weeks_validator = bv.Void() TimeUnit._years_validator = bv.Void() TimeUnit._other_validator = bv.Void() TimeUnit._tagmap = { 'days': TimeUnit._days_validator, 'hours': TimeUnit._hours_validator, 'milliseconds': TimeUnit._milliseconds_validator, 'minutes': TimeUnit._minutes_validator, 'months': TimeUnit._months_validator, 'seconds': TimeUnit._seconds_validator, 'weeks': TimeUnit._weeks_validator, 'years': TimeUnit._years_validator, 'other': TimeUnit._other_validator, } TimeUnit.days = TimeUnit('days') TimeUnit.hours = TimeUnit('hours') TimeUnit.milliseconds = TimeUnit('milliseconds') TimeUnit.minutes = TimeUnit('minutes') TimeUnit.months = TimeUnit('months') TimeUnit.seconds = TimeUnit('seconds') TimeUnit.weeks = TimeUnit('weeks') TimeUnit.years = TimeUnit('years') TimeUnit.other = TimeUnit('other') TrustedNonTeamMemberLogInfo.trusted_non_team_member_type.validator = TrustedNonTeamMemberType_validator TrustedNonTeamMemberLogInfo.team.validator = bv.Nullable(TeamLogInfo_validator) TrustedNonTeamMemberLogInfo._field_names_ = set([ 'trusted_non_team_member_type', 'team', ]) TrustedNonTeamMemberLogInfo._all_field_names_ = UserLogInfo._all_field_names_.union(TrustedNonTeamMemberLogInfo._field_names_) TrustedNonTeamMemberLogInfo._fields_ = [ ('trusted_non_team_member_type', TrustedNonTeamMemberLogInfo.trusted_non_team_member_type.validator), ('team', TrustedNonTeamMemberLogInfo.team.validator), ] TrustedNonTeamMemberLogInfo._all_fields_ = UserLogInfo._all_fields_ + TrustedNonTeamMemberLogInfo._fields_ TrustedNonTeamMemberType._enterprise_admin_validator = bv.Void() TrustedNonTeamMemberType._multi_instance_admin_validator = bv.Void() TrustedNonTeamMemberType._other_validator = bv.Void() TrustedNonTeamMemberType._tagmap = { 'enterprise_admin': TrustedNonTeamMemberType._enterprise_admin_validator, 'multi_instance_admin': TrustedNonTeamMemberType._multi_instance_admin_validator, 'other': TrustedNonTeamMemberType._other_validator, } TrustedNonTeamMemberType.enterprise_admin = TrustedNonTeamMemberType('enterprise_admin') TrustedNonTeamMemberType.multi_instance_admin = TrustedNonTeamMemberType('multi_instance_admin') TrustedNonTeamMemberType.other = TrustedNonTeamMemberType('other') TrustedTeamsRequestAction._accepted_validator = bv.Void() TrustedTeamsRequestAction._declined_validator = bv.Void() TrustedTeamsRequestAction._expired_validator = bv.Void() TrustedTeamsRequestAction._invited_validator = bv.Void() TrustedTeamsRequestAction._revoked_validator = bv.Void() TrustedTeamsRequestAction._other_validator = bv.Void() TrustedTeamsRequestAction._tagmap = { 'accepted': TrustedTeamsRequestAction._accepted_validator, 'declined': TrustedTeamsRequestAction._declined_validator, 'expired': TrustedTeamsRequestAction._expired_validator, 'invited': TrustedTeamsRequestAction._invited_validator, 'revoked': TrustedTeamsRequestAction._revoked_validator, 'other': TrustedTeamsRequestAction._other_validator, } TrustedTeamsRequestAction.accepted = TrustedTeamsRequestAction('accepted') TrustedTeamsRequestAction.declined = TrustedTeamsRequestAction('declined') TrustedTeamsRequestAction.expired = TrustedTeamsRequestAction('expired') TrustedTeamsRequestAction.invited = TrustedTeamsRequestAction('invited') TrustedTeamsRequestAction.revoked = TrustedTeamsRequestAction('revoked') TrustedTeamsRequestAction.other = TrustedTeamsRequestAction('other') TrustedTeamsRequestState._invited_validator = bv.Void() TrustedTeamsRequestState._linked_validator = bv.Void() TrustedTeamsRequestState._unlinked_validator = bv.Void() TrustedTeamsRequestState._other_validator = bv.Void() TrustedTeamsRequestState._tagmap = { 'invited': TrustedTeamsRequestState._invited_validator, 'linked': TrustedTeamsRequestState._linked_validator, 'unlinked': TrustedTeamsRequestState._unlinked_validator, 'other': TrustedTeamsRequestState._other_validator, } TrustedTeamsRequestState.invited = TrustedTeamsRequestState('invited') TrustedTeamsRequestState.linked = TrustedTeamsRequestState('linked') TrustedTeamsRequestState.unlinked = TrustedTeamsRequestState('unlinked') TrustedTeamsRequestState.other = TrustedTeamsRequestState('other') TwoAccountChangePolicyDetails.new_value.validator = TwoAccountPolicy_validator TwoAccountChangePolicyDetails.previous_value.validator = bv.Nullable(TwoAccountPolicy_validator) TwoAccountChangePolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) TwoAccountChangePolicyDetails._all_fields_ = [ ('new_value', TwoAccountChangePolicyDetails.new_value.validator), ('previous_value', TwoAccountChangePolicyDetails.previous_value.validator), ] TwoAccountChangePolicyType.description.validator = bv.String() TwoAccountChangePolicyType._all_field_names_ = set(['description']) TwoAccountChangePolicyType._all_fields_ = [('description', TwoAccountChangePolicyType.description.validator)] TwoAccountPolicy._disabled_validator = bv.Void() TwoAccountPolicy._enabled_validator = bv.Void() TwoAccountPolicy._other_validator = bv.Void() TwoAccountPolicy._tagmap = { 'disabled': TwoAccountPolicy._disabled_validator, 'enabled': TwoAccountPolicy._enabled_validator, 'other': TwoAccountPolicy._other_validator, } TwoAccountPolicy.disabled = TwoAccountPolicy('disabled') TwoAccountPolicy.enabled = TwoAccountPolicy('enabled') TwoAccountPolicy.other = TwoAccountPolicy('other') UndoNamingConventionDetails._all_field_names_ = set([]) UndoNamingConventionDetails._all_fields_ = [] UndoNamingConventionType.description.validator = bv.String() UndoNamingConventionType._all_field_names_ = set(['description']) UndoNamingConventionType._all_fields_ = [('description', UndoNamingConventionType.description.validator)] UndoOrganizeFolderWithTidyDetails._all_field_names_ = set([]) UndoOrganizeFolderWithTidyDetails._all_fields_ = [] UndoOrganizeFolderWithTidyType.description.validator = bv.String() UndoOrganizeFolderWithTidyType._all_field_names_ = set(['description']) UndoOrganizeFolderWithTidyType._all_fields_ = [('description', UndoOrganizeFolderWithTidyType.description.validator)] UserLinkedAppLogInfo._field_names_ = set([]) UserLinkedAppLogInfo._all_field_names_ = AppLogInfo._all_field_names_.union(UserLinkedAppLogInfo._field_names_) UserLinkedAppLogInfo._fields_ = [] UserLinkedAppLogInfo._all_fields_ = AppLogInfo._all_fields_ + UserLinkedAppLogInfo._fields_ UserNameLogInfo.given_name.validator = bv.String() UserNameLogInfo.surname.validator = bv.String() UserNameLogInfo.locale.validator = bv.Nullable(bv.String()) UserNameLogInfo._all_field_names_ = set([ 'given_name', 'surname', 'locale', ]) UserNameLogInfo._all_fields_ = [ ('given_name', UserNameLogInfo.given_name.validator), ('surname', UserNameLogInfo.surname.validator), ('locale', UserNameLogInfo.locale.validator), ] UserOrTeamLinkedAppLogInfo._field_names_ = set([]) UserOrTeamLinkedAppLogInfo._all_field_names_ = AppLogInfo._all_field_names_.union(UserOrTeamLinkedAppLogInfo._field_names_) UserOrTeamLinkedAppLogInfo._fields_ = [] UserOrTeamLinkedAppLogInfo._all_fields_ = AppLogInfo._all_fields_ + UserOrTeamLinkedAppLogInfo._fields_ UserTagsAddedDetails.values.validator = bv.List(bv.String()) UserTagsAddedDetails._all_field_names_ = set(['values']) UserTagsAddedDetails._all_fields_ = [('values', UserTagsAddedDetails.values.validator)] UserTagsAddedType.description.validator = bv.String() UserTagsAddedType._all_field_names_ = set(['description']) UserTagsAddedType._all_fields_ = [('description', UserTagsAddedType.description.validator)] UserTagsRemovedDetails.values.validator = bv.List(bv.String()) UserTagsRemovedDetails._all_field_names_ = set(['values']) UserTagsRemovedDetails._all_fields_ = [('values', UserTagsRemovedDetails.values.validator)] UserTagsRemovedType.description.validator = bv.String() UserTagsRemovedType._all_field_names_ = set(['description']) UserTagsRemovedType._all_fields_ = [('description', UserTagsRemovedType.description.validator)] ViewerInfoPolicyChangedDetails.previous_value.validator = PassPolicy_validator ViewerInfoPolicyChangedDetails.new_value.validator = PassPolicy_validator ViewerInfoPolicyChangedDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) ViewerInfoPolicyChangedDetails._all_fields_ = [ ('previous_value', ViewerInfoPolicyChangedDetails.previous_value.validator), ('new_value', ViewerInfoPolicyChangedDetails.new_value.validator), ] ViewerInfoPolicyChangedType.description.validator = bv.String() ViewerInfoPolicyChangedType._all_field_names_ = set(['description']) ViewerInfoPolicyChangedType._all_fields_ = [('description', ViewerInfoPolicyChangedType.description.validator)] WatermarkingPolicy._disabled_validator = bv.Void() WatermarkingPolicy._enabled_validator = bv.Void() WatermarkingPolicy._other_validator = bv.Void() WatermarkingPolicy._tagmap = { 'disabled': WatermarkingPolicy._disabled_validator, 'enabled': WatermarkingPolicy._enabled_validator, 'other': WatermarkingPolicy._other_validator, } WatermarkingPolicy.disabled = WatermarkingPolicy('disabled') WatermarkingPolicy.enabled = WatermarkingPolicy('enabled') WatermarkingPolicy.other = WatermarkingPolicy('other') WatermarkingPolicyChangedDetails.new_value.validator = WatermarkingPolicy_validator WatermarkingPolicyChangedDetails.previous_value.validator = WatermarkingPolicy_validator WatermarkingPolicyChangedDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) WatermarkingPolicyChangedDetails._all_fields_ = [ ('new_value', WatermarkingPolicyChangedDetails.new_value.validator), ('previous_value', WatermarkingPolicyChangedDetails.previous_value.validator), ] WatermarkingPolicyChangedType.description.validator = bv.String() WatermarkingPolicyChangedType._all_field_names_ = set(['description']) WatermarkingPolicyChangedType._all_fields_ = [('description', WatermarkingPolicyChangedType.description.validator)] WebDeviceSessionLogInfo.session_info.validator = bv.Nullable(WebSessionLogInfo_validator) WebDeviceSessionLogInfo.user_agent.validator = bv.String() WebDeviceSessionLogInfo.os.validator = bv.String() WebDeviceSessionLogInfo.browser.validator = bv.String() WebDeviceSessionLogInfo._field_names_ = set([ 'session_info', 'user_agent', 'os', 'browser', ]) WebDeviceSessionLogInfo._all_field_names_ = DeviceSessionLogInfo._all_field_names_.union(WebDeviceSessionLogInfo._field_names_) WebDeviceSessionLogInfo._fields_ = [ ('session_info', WebDeviceSessionLogInfo.session_info.validator), ('user_agent', WebDeviceSessionLogInfo.user_agent.validator), ('os', WebDeviceSessionLogInfo.os.validator), ('browser', WebDeviceSessionLogInfo.browser.validator), ] WebDeviceSessionLogInfo._all_fields_ = DeviceSessionLogInfo._all_fields_ + WebDeviceSessionLogInfo._fields_ WebSessionLogInfo._field_names_ = set([]) WebSessionLogInfo._all_field_names_ = SessionLogInfo._all_field_names_.union(WebSessionLogInfo._field_names_) WebSessionLogInfo._fields_ = [] WebSessionLogInfo._all_fields_ = SessionLogInfo._all_fields_ + WebSessionLogInfo._fields_ WebSessionsChangeActiveSessionLimitDetails.previous_value.validator = bv.String() WebSessionsChangeActiveSessionLimitDetails.new_value.validator = bv.String() WebSessionsChangeActiveSessionLimitDetails._all_field_names_ = set([ 'previous_value', 'new_value', ]) WebSessionsChangeActiveSessionLimitDetails._all_fields_ = [ ('previous_value', WebSessionsChangeActiveSessionLimitDetails.previous_value.validator), ('new_value', WebSessionsChangeActiveSessionLimitDetails.new_value.validator), ] WebSessionsChangeActiveSessionLimitType.description.validator = bv.String() WebSessionsChangeActiveSessionLimitType._all_field_names_ = set(['description']) WebSessionsChangeActiveSessionLimitType._all_fields_ = [('description', WebSessionsChangeActiveSessionLimitType.description.validator)] WebSessionsChangeFixedLengthPolicyDetails.new_value.validator = bv.Nullable(WebSessionsFixedLengthPolicy_validator) WebSessionsChangeFixedLengthPolicyDetails.previous_value.validator = bv.Nullable(WebSessionsFixedLengthPolicy_validator) WebSessionsChangeFixedLengthPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) WebSessionsChangeFixedLengthPolicyDetails._all_fields_ = [ ('new_value', WebSessionsChangeFixedLengthPolicyDetails.new_value.validator), ('previous_value', WebSessionsChangeFixedLengthPolicyDetails.previous_value.validator), ] WebSessionsChangeFixedLengthPolicyType.description.validator = bv.String() WebSessionsChangeFixedLengthPolicyType._all_field_names_ = set(['description']) WebSessionsChangeFixedLengthPolicyType._all_fields_ = [('description', WebSessionsChangeFixedLengthPolicyType.description.validator)] WebSessionsChangeIdleLengthPolicyDetails.new_value.validator = bv.Nullable(WebSessionsIdleLengthPolicy_validator) WebSessionsChangeIdleLengthPolicyDetails.previous_value.validator = bv.Nullable(WebSessionsIdleLengthPolicy_validator) WebSessionsChangeIdleLengthPolicyDetails._all_field_names_ = set([ 'new_value', 'previous_value', ]) WebSessionsChangeIdleLengthPolicyDetails._all_fields_ = [ ('new_value', WebSessionsChangeIdleLengthPolicyDetails.new_value.validator), ('previous_value', WebSessionsChangeIdleLengthPolicyDetails.previous_value.validator), ] WebSessionsChangeIdleLengthPolicyType.description.validator = bv.String() WebSessionsChangeIdleLengthPolicyType._all_field_names_ = set(['description']) WebSessionsChangeIdleLengthPolicyType._all_fields_ = [('description', WebSessionsChangeIdleLengthPolicyType.description.validator)] WebSessionsFixedLengthPolicy._defined_validator = DurationLogInfo_validator WebSessionsFixedLengthPolicy._undefined_validator = bv.Void() WebSessionsFixedLengthPolicy._other_validator = bv.Void() WebSessionsFixedLengthPolicy._tagmap = { 'defined': WebSessionsFixedLengthPolicy._defined_validator, 'undefined': WebSessionsFixedLengthPolicy._undefined_validator, 'other': WebSessionsFixedLengthPolicy._other_validator, } WebSessionsFixedLengthPolicy.undefined = WebSessionsFixedLengthPolicy('undefined') WebSessionsFixedLengthPolicy.other = WebSessionsFixedLengthPolicy('other') WebSessionsIdleLengthPolicy._defined_validator = DurationLogInfo_validator WebSessionsIdleLengthPolicy._undefined_validator = bv.Void() WebSessionsIdleLengthPolicy._other_validator = bv.Void() WebSessionsIdleLengthPolicy._tagmap = { 'defined': WebSessionsIdleLengthPolicy._defined_validator, 'undefined': WebSessionsIdleLengthPolicy._undefined_validator, 'other': WebSessionsIdleLengthPolicy._other_validator, } WebSessionsIdleLengthPolicy.undefined = WebSessionsIdleLengthPolicy('undefined') WebSessionsIdleLengthPolicy.other = WebSessionsIdleLengthPolicy('other') GetTeamEventsArg.limit.default = 1000 get_events = bb.Route( 'get_events', 1, False, GetTeamEventsArg_validator, GetTeamEventsResult_validator, GetTeamEventsError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) get_events_continue = bb.Route( 'get_events/continue', 1, False, GetTeamEventsContinueArg_validator, GetTeamEventsResult_validator, GetTeamEventsContinueError_validator, {'auth': 'team', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'get_events': get_events, 'get_events/continue': get_events_continue, } dropbox-sdk-python-12.0.2/dropbox/team_policies.py000066400000000000000000002147501462737130500222340ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv class CameraUploadsPolicyState(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.CameraUploadsPolicyState.disabled: Background camera uploads are disabled. :ivar team_policies.CameraUploadsPolicyState.enabled: Background camera uploads are allowed. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(CameraUploadsPolicyState, self)._process_custom_annotations(annotation_type, field_path, processor) CameraUploadsPolicyState_validator = bv.Union(CameraUploadsPolicyState) class ComputerBackupPolicyState(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.ComputerBackupPolicyState.disabled: Computer Backup feature is disabled. :ivar team_policies.ComputerBackupPolicyState.enabled: Computer Backup feature is enabled. :ivar team_policies.ComputerBackupPolicyState.default: Computer Backup defaults to ON for SSB teams, and OFF for Enterprise teams. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ComputerBackupPolicyState, self)._process_custom_annotations(annotation_type, field_path, processor) ComputerBackupPolicyState_validator = bv.Union(ComputerBackupPolicyState) class EmmState(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.EmmState.disabled: Emm token is disabled. :ivar team_policies.EmmState.optional: Emm token is optional. :ivar team_policies.EmmState.required: Emm token is required. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition optional = None # Attribute is overwritten below the class definition required = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_optional(self): """ Check if the union tag is ``optional``. :rtype: bool """ return self._tag == 'optional' def is_required(self): """ Check if the union tag is ``required``. :rtype: bool """ return self._tag == 'required' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(EmmState, self)._process_custom_annotations(annotation_type, field_path, processor) EmmState_validator = bv.Union(EmmState) class ExternalDriveBackupPolicyState(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.ExternalDriveBackupPolicyState.disabled: External Drive Backup feature is disabled. :ivar team_policies.ExternalDriveBackupPolicyState.enabled: External Drive Backup feature is enabled. :ivar team_policies.ExternalDriveBackupPolicyState.default: External Drive Backup default value based on team tier. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ExternalDriveBackupPolicyState, self)._process_custom_annotations(annotation_type, field_path, processor) ExternalDriveBackupPolicyState_validator = bv.Union(ExternalDriveBackupPolicyState) class FileLockingPolicyState(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.FileLockingPolicyState.disabled: File locking feature is disabled. :ivar team_policies.FileLockingPolicyState.enabled: File locking feature is allowed. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLockingPolicyState, self)._process_custom_annotations(annotation_type, field_path, processor) FileLockingPolicyState_validator = bv.Union(FileLockingPolicyState) class FileProviderMigrationPolicyState(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.FileProviderMigrationPolicyState.disabled: Team admin has opted out of File Provider Migration for team members. :ivar team_policies.FileProviderMigrationPolicyState.enabled: Team admin has not opted out of File Provider Migration for team members. :ivar team_policies.FileProviderMigrationPolicyState.default: Team admin has default value based on team tier. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition default = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_default(self): """ Check if the union tag is ``default``. :rtype: bool """ return self._tag == 'default' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileProviderMigrationPolicyState, self)._process_custom_annotations(annotation_type, field_path, processor) FileProviderMigrationPolicyState_validator = bv.Union(FileProviderMigrationPolicyState) class GroupCreation(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.GroupCreation.admins_and_members: Team admins and members can create groups. :ivar team_policies.GroupCreation.admins_only: Only team admins can create groups. """ _catch_all = None # Attribute is overwritten below the class definition admins_and_members = None # Attribute is overwritten below the class definition admins_only = None def is_admins_and_members(self): """ Check if the union tag is ``admins_and_members``. :rtype: bool """ return self._tag == 'admins_and_members' def is_admins_only(self): """ Check if the union tag is ``admins_only``. :rtype: bool """ return self._tag == 'admins_only' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GroupCreation, self)._process_custom_annotations(annotation_type, field_path, processor) GroupCreation_validator = bv.Union(GroupCreation) class OfficeAddInPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.OfficeAddInPolicy.disabled: Office Add-In is disabled. :ivar team_policies.OfficeAddInPolicy.enabled: Office Add-In is enabled. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(OfficeAddInPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) OfficeAddInPolicy_validator = bv.Union(OfficeAddInPolicy) class PaperDefaultFolderPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.PaperDefaultFolderPolicy.everyone_in_team: Everyone in team will be the default option when creating a folder in Paper. :ivar team_policies.PaperDefaultFolderPolicy.invite_only: Invite only will be the default option when creating a folder in Paper. """ _catch_all = 'other' # Attribute is overwritten below the class definition everyone_in_team = None # Attribute is overwritten below the class definition invite_only = None # Attribute is overwritten below the class definition other = None def is_everyone_in_team(self): """ Check if the union tag is ``everyone_in_team``. :rtype: bool """ return self._tag == 'everyone_in_team' def is_invite_only(self): """ Check if the union tag is ``invite_only``. :rtype: bool """ return self._tag == 'invite_only' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDefaultFolderPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDefaultFolderPolicy_validator = bv.Union(PaperDefaultFolderPolicy) class PaperDeploymentPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.PaperDeploymentPolicy.full: All team members have access to Paper. :ivar team_policies.PaperDeploymentPolicy.partial: Only whitelisted team members can access Paper. To see which user is whitelisted, check 'is_paper_whitelisted' on 'account/info'. """ _catch_all = 'other' # Attribute is overwritten below the class definition full = None # Attribute is overwritten below the class definition partial = None # Attribute is overwritten below the class definition other = None def is_full(self): """ Check if the union tag is ``full``. :rtype: bool """ return self._tag == 'full' def is_partial(self): """ Check if the union tag is ``partial``. :rtype: bool """ return self._tag == 'partial' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDeploymentPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDeploymentPolicy_validator = bv.Union(PaperDeploymentPolicy) class PaperDesktopPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.PaperDesktopPolicy.disabled: Do not allow team members to use Paper Desktop. :ivar team_policies.PaperDesktopPolicy.enabled: Allow team members to use Paper Desktop. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperDesktopPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) PaperDesktopPolicy_validator = bv.Union(PaperDesktopPolicy) class PaperEnabledPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.PaperEnabledPolicy.disabled: Paper is disabled. :ivar team_policies.PaperEnabledPolicy.enabled: Paper is enabled. :ivar team_policies.PaperEnabledPolicy.unspecified: Unspecified policy. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition unspecified = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_unspecified(self): """ Check if the union tag is ``unspecified``. :rtype: bool """ return self._tag == 'unspecified' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperEnabledPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) PaperEnabledPolicy_validator = bv.Union(PaperEnabledPolicy) class PasswordControlMode(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.PasswordControlMode.disabled: Password is disabled. :ivar team_policies.PasswordControlMode.enabled: Password is enabled. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PasswordControlMode, self)._process_custom_annotations(annotation_type, field_path, processor) PasswordControlMode_validator = bv.Union(PasswordControlMode) class PasswordStrengthPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.PasswordStrengthPolicy.minimal_requirements: User passwords will adhere to the minimal password strength policy. :ivar team_policies.PasswordStrengthPolicy.moderate_password: User passwords will adhere to the moderate password strength policy. :ivar team_policies.PasswordStrengthPolicy.strong_password: User passwords will adhere to the very strong password strength policy. """ _catch_all = 'other' # Attribute is overwritten below the class definition minimal_requirements = None # Attribute is overwritten below the class definition moderate_password = None # Attribute is overwritten below the class definition strong_password = None # Attribute is overwritten below the class definition other = None def is_minimal_requirements(self): """ Check if the union tag is ``minimal_requirements``. :rtype: bool """ return self._tag == 'minimal_requirements' def is_moderate_password(self): """ Check if the union tag is ``moderate_password``. :rtype: bool """ return self._tag == 'moderate_password' def is_strong_password(self): """ Check if the union tag is ``strong_password``. :rtype: bool """ return self._tag == 'strong_password' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(PasswordStrengthPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) PasswordStrengthPolicy_validator = bv.Union(PasswordStrengthPolicy) class RolloutMethod(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.RolloutMethod.unlink_all: Unlink all. :ivar team_policies.RolloutMethod.unlink_most_inactive: Unlink devices with the most inactivity. :ivar team_policies.RolloutMethod.add_member_to_exceptions: Add member to Exceptions. """ _catch_all = None # Attribute is overwritten below the class definition unlink_all = None # Attribute is overwritten below the class definition unlink_most_inactive = None # Attribute is overwritten below the class definition add_member_to_exceptions = None def is_unlink_all(self): """ Check if the union tag is ``unlink_all``. :rtype: bool """ return self._tag == 'unlink_all' def is_unlink_most_inactive(self): """ Check if the union tag is ``unlink_most_inactive``. :rtype: bool """ return self._tag == 'unlink_most_inactive' def is_add_member_to_exceptions(self): """ Check if the union tag is ``add_member_to_exceptions``. :rtype: bool """ return self._tag == 'add_member_to_exceptions' def _process_custom_annotations(self, annotation_type, field_path, processor): super(RolloutMethod, self)._process_custom_annotations(annotation_type, field_path, processor) RolloutMethod_validator = bv.Union(RolloutMethod) class SharedFolderBlanketLinkRestrictionPolicy(bb.Union): """ Policy governing whether shared folder membership is required to access shared links. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.SharedFolderBlanketLinkRestrictionPolicy.members: Only members of shared folders can access folder content via shared link. :ivar team_policies.SharedFolderBlanketLinkRestrictionPolicy.anyone: Anyone can access folder content via shared link. """ _catch_all = 'other' # Attribute is overwritten below the class definition members = None # Attribute is overwritten below the class definition anyone = None # Attribute is overwritten below the class definition other = None def is_members(self): """ Check if the union tag is ``members``. :rtype: bool """ return self._tag == 'members' def is_anyone(self): """ Check if the union tag is ``anyone``. :rtype: bool """ return self._tag == 'anyone' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderBlanketLinkRestrictionPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderBlanketLinkRestrictionPolicy_validator = bv.Union(SharedFolderBlanketLinkRestrictionPolicy) class SharedFolderJoinPolicy(bb.Union): """ Policy governing which shared folders a team member can join. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.SharedFolderJoinPolicy.from_team_only: Team members can only join folders shared by teammates. :ivar team_policies.SharedFolderJoinPolicy.from_anyone: Team members can join any shared folder, including those shared by users outside the team. """ _catch_all = 'other' # Attribute is overwritten below the class definition from_team_only = None # Attribute is overwritten below the class definition from_anyone = None # Attribute is overwritten below the class definition other = None def is_from_team_only(self): """ Check if the union tag is ``from_team_only``. :rtype: bool """ return self._tag == 'from_team_only' def is_from_anyone(self): """ Check if the union tag is ``from_anyone``. :rtype: bool """ return self._tag == 'from_anyone' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderJoinPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderJoinPolicy_validator = bv.Union(SharedFolderJoinPolicy) class SharedFolderMemberPolicy(bb.Union): """ Policy governing who can be a member of a folder shared by a team member. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.SharedFolderMemberPolicy.team: Only a teammate can be a member of a folder shared by a team member. :ivar team_policies.SharedFolderMemberPolicy.anyone: Anyone can be a member of a folder shared by a team member. """ _catch_all = 'other' # Attribute is overwritten below the class definition team = None # Attribute is overwritten below the class definition anyone = None # Attribute is overwritten below the class definition other = None def is_team(self): """ Check if the union tag is ``team``. :rtype: bool """ return self._tag == 'team' def is_anyone(self): """ Check if the union tag is ``anyone``. :rtype: bool """ return self._tag == 'anyone' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedFolderMemberPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SharedFolderMemberPolicy_validator = bv.Union(SharedFolderMemberPolicy) class SharedLinkCreatePolicy(bb.Union): """ Policy governing the visibility of shared links. This policy can apply to newly created shared links, or all shared links. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.SharedLinkCreatePolicy.default_public: By default, anyone can access newly created shared links. No login will be required to access the shared links unless overridden. :ivar team_policies.SharedLinkCreatePolicy.default_team_only: By default, only members of the same team can access newly created shared links. Login will be required to access the shared links unless overridden. :ivar team_policies.SharedLinkCreatePolicy.team_only: Only members of the same team can access all shared links. Login will be required to access all shared links. :ivar team_policies.SharedLinkCreatePolicy.default_no_one: Only people invited can access newly created links. Login will be required to access the shared links unless overridden. """ _catch_all = 'other' # Attribute is overwritten below the class definition default_public = None # Attribute is overwritten below the class definition default_team_only = None # Attribute is overwritten below the class definition team_only = None # Attribute is overwritten below the class definition default_no_one = None # Attribute is overwritten below the class definition other = None def is_default_public(self): """ Check if the union tag is ``default_public``. :rtype: bool """ return self._tag == 'default_public' def is_default_team_only(self): """ Check if the union tag is ``default_team_only``. :rtype: bool """ return self._tag == 'default_team_only' def is_team_only(self): """ Check if the union tag is ``team_only``. :rtype: bool """ return self._tag == 'team_only' def is_default_no_one(self): """ Check if the union tag is ``default_no_one``. :rtype: bool """ return self._tag == 'default_no_one' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SharedLinkCreatePolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SharedLinkCreatePolicy_validator = bv.Union(SharedLinkCreatePolicy) class ShowcaseDownloadPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.ShowcaseDownloadPolicy.disabled: Do not allow files to be downloaded from Showcases. :ivar team_policies.ShowcaseDownloadPolicy.enabled: Allow files to be downloaded from Showcases. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseDownloadPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseDownloadPolicy_validator = bv.Union(ShowcaseDownloadPolicy) class ShowcaseEnabledPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.ShowcaseEnabledPolicy.disabled: Showcase is disabled. :ivar team_policies.ShowcaseEnabledPolicy.enabled: Showcase is enabled. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseEnabledPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseEnabledPolicy_validator = bv.Union(ShowcaseEnabledPolicy) class ShowcaseExternalSharingPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.ShowcaseExternalSharingPolicy.disabled: Do not allow showcases to be shared with people not on the team. :ivar team_policies.ShowcaseExternalSharingPolicy.enabled: Allow showcases to be shared with people not on the team. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(ShowcaseExternalSharingPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) ShowcaseExternalSharingPolicy_validator = bv.Union(ShowcaseExternalSharingPolicy) class SmartSyncPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.SmartSyncPolicy.local: The specified content will be synced as local files by default. :ivar team_policies.SmartSyncPolicy.on_demand: The specified content will be synced as on-demand files by default. """ _catch_all = 'other' # Attribute is overwritten below the class definition local = None # Attribute is overwritten below the class definition on_demand = None # Attribute is overwritten below the class definition other = None def is_local(self): """ Check if the union tag is ``local``. :rtype: bool """ return self._tag == 'local' def is_on_demand(self): """ Check if the union tag is ``on_demand``. :rtype: bool """ return self._tag == 'on_demand' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmartSyncPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SmartSyncPolicy_validator = bv.Union(SmartSyncPolicy) class SmarterSmartSyncPolicyState(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.SmarterSmartSyncPolicyState.disabled: Smarter Smart Sync feature is disabled. :ivar team_policies.SmarterSmartSyncPolicyState.enabled: Smarter Smart Sync feature is enabled. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SmarterSmartSyncPolicyState, self)._process_custom_annotations(annotation_type, field_path, processor) SmarterSmartSyncPolicyState_validator = bv.Union(SmarterSmartSyncPolicyState) class SsoPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.SsoPolicy.disabled: Users will be able to sign in with their Dropbox credentials. :ivar team_policies.SsoPolicy.optional: Users will be able to sign in with either their Dropbox or single sign-on credentials. :ivar team_policies.SsoPolicy.required: Users will be required to sign in with their single sign-on credentials. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition optional = None # Attribute is overwritten below the class definition required = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_optional(self): """ Check if the union tag is ``optional``. :rtype: bool """ return self._tag == 'optional' def is_required(self): """ Check if the union tag is ``required``. :rtype: bool """ return self._tag == 'required' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SsoPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SsoPolicy_validator = bv.Union(SsoPolicy) class SuggestMembersPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.SuggestMembersPolicy.disabled: Suggest members is disabled. :ivar team_policies.SuggestMembersPolicy.enabled: Suggest members is enabled. """ _catch_all = 'other' # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition enabled = None # Attribute is overwritten below the class definition other = None def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(SuggestMembersPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) SuggestMembersPolicy_validator = bv.Union(SuggestMembersPolicy) class TeamMemberPolicies(bb.Struct): """ Policies governing team members. :ivar team_policies.TeamMemberPolicies.sharing: Policies governing sharing. :ivar team_policies.TeamMemberPolicies.emm_state: This describes the Enterprise Mobility Management (EMM) state for this team. This information can be used to understand if an organization is integrating with a third-party EMM vendor to further manage and apply restrictions upon the team's Dropbox usage on mobile devices. This is a new feature and in the future we'll be adding more new fields and additional documentation. :ivar team_policies.TeamMemberPolicies.office_addin: The admin policy around the Dropbox Office Add-In for this team. :ivar team_policies.TeamMemberPolicies.suggest_members_policy: The team policy on if teammembers are allowed to suggest users for admins to invite to the team. """ __slots__ = [ '_sharing_value', '_emm_state_value', '_office_addin_value', '_suggest_members_policy_value', ] _has_required_fields = True def __init__(self, sharing=None, emm_state=None, office_addin=None, suggest_members_policy=None): self._sharing_value = bb.NOT_SET self._emm_state_value = bb.NOT_SET self._office_addin_value = bb.NOT_SET self._suggest_members_policy_value = bb.NOT_SET if sharing is not None: self.sharing = sharing if emm_state is not None: self.emm_state = emm_state if office_addin is not None: self.office_addin = office_addin if suggest_members_policy is not None: self.suggest_members_policy = suggest_members_policy # Instance attribute type: TeamSharingPolicies (validator is set below) sharing = bb.Attribute("sharing", user_defined=True) # Instance attribute type: EmmState (validator is set below) emm_state = bb.Attribute("emm_state", user_defined=True) # Instance attribute type: OfficeAddInPolicy (validator is set below) office_addin = bb.Attribute("office_addin", user_defined=True) # Instance attribute type: SuggestMembersPolicy (validator is set below) suggest_members_policy = bb.Attribute("suggest_members_policy", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamMemberPolicies, self)._process_custom_annotations(annotation_type, field_path, processor) TeamMemberPolicies_validator = bv.Struct(TeamMemberPolicies) class TeamSharingPolicies(bb.Struct): """ Policies governing sharing within and outside of the team. :ivar team_policies.TeamSharingPolicies.shared_folder_member_policy: Who can join folders shared by team members. :ivar team_policies.TeamSharingPolicies.shared_folder_join_policy: Which shared folders team members can join. :ivar team_policies.TeamSharingPolicies.shared_link_create_policy: Who can view shared links owned by team members. :ivar team_policies.TeamSharingPolicies.group_creation_policy: Who can create groups. :ivar team_policies.TeamSharingPolicies.shared_folder_link_restriction_policy: Who can view links to content in shared folders. """ __slots__ = [ '_shared_folder_member_policy_value', '_shared_folder_join_policy_value', '_shared_link_create_policy_value', '_group_creation_policy_value', '_shared_folder_link_restriction_policy_value', ] _has_required_fields = True def __init__(self, shared_folder_member_policy=None, shared_folder_join_policy=None, shared_link_create_policy=None, group_creation_policy=None, shared_folder_link_restriction_policy=None): self._shared_folder_member_policy_value = bb.NOT_SET self._shared_folder_join_policy_value = bb.NOT_SET self._shared_link_create_policy_value = bb.NOT_SET self._group_creation_policy_value = bb.NOT_SET self._shared_folder_link_restriction_policy_value = bb.NOT_SET if shared_folder_member_policy is not None: self.shared_folder_member_policy = shared_folder_member_policy if shared_folder_join_policy is not None: self.shared_folder_join_policy = shared_folder_join_policy if shared_link_create_policy is not None: self.shared_link_create_policy = shared_link_create_policy if group_creation_policy is not None: self.group_creation_policy = group_creation_policy if shared_folder_link_restriction_policy is not None: self.shared_folder_link_restriction_policy = shared_folder_link_restriction_policy # Instance attribute type: SharedFolderMemberPolicy (validator is set below) shared_folder_member_policy = bb.Attribute("shared_folder_member_policy", user_defined=True) # Instance attribute type: SharedFolderJoinPolicy (validator is set below) shared_folder_join_policy = bb.Attribute("shared_folder_join_policy", user_defined=True) # Instance attribute type: SharedLinkCreatePolicy (validator is set below) shared_link_create_policy = bb.Attribute("shared_link_create_policy", user_defined=True) # Instance attribute type: GroupCreation (validator is set below) group_creation_policy = bb.Attribute("group_creation_policy", user_defined=True) # Instance attribute type: SharedFolderBlanketLinkRestrictionPolicy (validator is set below) shared_folder_link_restriction_policy = bb.Attribute("shared_folder_link_restriction_policy", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamSharingPolicies, self)._process_custom_annotations(annotation_type, field_path, processor) TeamSharingPolicies_validator = bv.Struct(TeamSharingPolicies) class TwoStepVerificationPolicy(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.TwoStepVerificationPolicy.require_tfa_enable: Enabled require two factor authorization. :ivar team_policies.TwoStepVerificationPolicy.require_tfa_disable: Disabled require two factor authorization. """ _catch_all = 'other' # Attribute is overwritten below the class definition require_tfa_enable = None # Attribute is overwritten below the class definition require_tfa_disable = None # Attribute is overwritten below the class definition other = None def is_require_tfa_enable(self): """ Check if the union tag is ``require_tfa_enable``. :rtype: bool """ return self._tag == 'require_tfa_enable' def is_require_tfa_disable(self): """ Check if the union tag is ``require_tfa_disable``. :rtype: bool """ return self._tag == 'require_tfa_disable' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TwoStepVerificationPolicy, self)._process_custom_annotations(annotation_type, field_path, processor) TwoStepVerificationPolicy_validator = bv.Union(TwoStepVerificationPolicy) class TwoStepVerificationState(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar team_policies.TwoStepVerificationState.required: Enabled require two factor authorization. :ivar team_policies.TwoStepVerificationState.optional: Optional require two factor authorization. :ivar team_policies.TwoStepVerificationState.disabled: Disabled require two factor authorization. """ _catch_all = 'other' # Attribute is overwritten below the class definition required = None # Attribute is overwritten below the class definition optional = None # Attribute is overwritten below the class definition disabled = None # Attribute is overwritten below the class definition other = None def is_required(self): """ Check if the union tag is ``required``. :rtype: bool """ return self._tag == 'required' def is_optional(self): """ Check if the union tag is ``optional``. :rtype: bool """ return self._tag == 'optional' def is_disabled(self): """ Check if the union tag is ``disabled``. :rtype: bool """ return self._tag == 'disabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(TwoStepVerificationState, self)._process_custom_annotations(annotation_type, field_path, processor) TwoStepVerificationState_validator = bv.Union(TwoStepVerificationState) CameraUploadsPolicyState._disabled_validator = bv.Void() CameraUploadsPolicyState._enabled_validator = bv.Void() CameraUploadsPolicyState._other_validator = bv.Void() CameraUploadsPolicyState._tagmap = { 'disabled': CameraUploadsPolicyState._disabled_validator, 'enabled': CameraUploadsPolicyState._enabled_validator, 'other': CameraUploadsPolicyState._other_validator, } CameraUploadsPolicyState.disabled = CameraUploadsPolicyState('disabled') CameraUploadsPolicyState.enabled = CameraUploadsPolicyState('enabled') CameraUploadsPolicyState.other = CameraUploadsPolicyState('other') ComputerBackupPolicyState._disabled_validator = bv.Void() ComputerBackupPolicyState._enabled_validator = bv.Void() ComputerBackupPolicyState._default_validator = bv.Void() ComputerBackupPolicyState._other_validator = bv.Void() ComputerBackupPolicyState._tagmap = { 'disabled': ComputerBackupPolicyState._disabled_validator, 'enabled': ComputerBackupPolicyState._enabled_validator, 'default': ComputerBackupPolicyState._default_validator, 'other': ComputerBackupPolicyState._other_validator, } ComputerBackupPolicyState.disabled = ComputerBackupPolicyState('disabled') ComputerBackupPolicyState.enabled = ComputerBackupPolicyState('enabled') ComputerBackupPolicyState.default = ComputerBackupPolicyState('default') ComputerBackupPolicyState.other = ComputerBackupPolicyState('other') EmmState._disabled_validator = bv.Void() EmmState._optional_validator = bv.Void() EmmState._required_validator = bv.Void() EmmState._other_validator = bv.Void() EmmState._tagmap = { 'disabled': EmmState._disabled_validator, 'optional': EmmState._optional_validator, 'required': EmmState._required_validator, 'other': EmmState._other_validator, } EmmState.disabled = EmmState('disabled') EmmState.optional = EmmState('optional') EmmState.required = EmmState('required') EmmState.other = EmmState('other') ExternalDriveBackupPolicyState._disabled_validator = bv.Void() ExternalDriveBackupPolicyState._enabled_validator = bv.Void() ExternalDriveBackupPolicyState._default_validator = bv.Void() ExternalDriveBackupPolicyState._other_validator = bv.Void() ExternalDriveBackupPolicyState._tagmap = { 'disabled': ExternalDriveBackupPolicyState._disabled_validator, 'enabled': ExternalDriveBackupPolicyState._enabled_validator, 'default': ExternalDriveBackupPolicyState._default_validator, 'other': ExternalDriveBackupPolicyState._other_validator, } ExternalDriveBackupPolicyState.disabled = ExternalDriveBackupPolicyState('disabled') ExternalDriveBackupPolicyState.enabled = ExternalDriveBackupPolicyState('enabled') ExternalDriveBackupPolicyState.default = ExternalDriveBackupPolicyState('default') ExternalDriveBackupPolicyState.other = ExternalDriveBackupPolicyState('other') FileLockingPolicyState._disabled_validator = bv.Void() FileLockingPolicyState._enabled_validator = bv.Void() FileLockingPolicyState._other_validator = bv.Void() FileLockingPolicyState._tagmap = { 'disabled': FileLockingPolicyState._disabled_validator, 'enabled': FileLockingPolicyState._enabled_validator, 'other': FileLockingPolicyState._other_validator, } FileLockingPolicyState.disabled = FileLockingPolicyState('disabled') FileLockingPolicyState.enabled = FileLockingPolicyState('enabled') FileLockingPolicyState.other = FileLockingPolicyState('other') FileProviderMigrationPolicyState._disabled_validator = bv.Void() FileProviderMigrationPolicyState._enabled_validator = bv.Void() FileProviderMigrationPolicyState._default_validator = bv.Void() FileProviderMigrationPolicyState._other_validator = bv.Void() FileProviderMigrationPolicyState._tagmap = { 'disabled': FileProviderMigrationPolicyState._disabled_validator, 'enabled': FileProviderMigrationPolicyState._enabled_validator, 'default': FileProviderMigrationPolicyState._default_validator, 'other': FileProviderMigrationPolicyState._other_validator, } FileProviderMigrationPolicyState.disabled = FileProviderMigrationPolicyState('disabled') FileProviderMigrationPolicyState.enabled = FileProviderMigrationPolicyState('enabled') FileProviderMigrationPolicyState.default = FileProviderMigrationPolicyState('default') FileProviderMigrationPolicyState.other = FileProviderMigrationPolicyState('other') GroupCreation._admins_and_members_validator = bv.Void() GroupCreation._admins_only_validator = bv.Void() GroupCreation._tagmap = { 'admins_and_members': GroupCreation._admins_and_members_validator, 'admins_only': GroupCreation._admins_only_validator, } GroupCreation.admins_and_members = GroupCreation('admins_and_members') GroupCreation.admins_only = GroupCreation('admins_only') OfficeAddInPolicy._disabled_validator = bv.Void() OfficeAddInPolicy._enabled_validator = bv.Void() OfficeAddInPolicy._other_validator = bv.Void() OfficeAddInPolicy._tagmap = { 'disabled': OfficeAddInPolicy._disabled_validator, 'enabled': OfficeAddInPolicy._enabled_validator, 'other': OfficeAddInPolicy._other_validator, } OfficeAddInPolicy.disabled = OfficeAddInPolicy('disabled') OfficeAddInPolicy.enabled = OfficeAddInPolicy('enabled') OfficeAddInPolicy.other = OfficeAddInPolicy('other') PaperDefaultFolderPolicy._everyone_in_team_validator = bv.Void() PaperDefaultFolderPolicy._invite_only_validator = bv.Void() PaperDefaultFolderPolicy._other_validator = bv.Void() PaperDefaultFolderPolicy._tagmap = { 'everyone_in_team': PaperDefaultFolderPolicy._everyone_in_team_validator, 'invite_only': PaperDefaultFolderPolicy._invite_only_validator, 'other': PaperDefaultFolderPolicy._other_validator, } PaperDefaultFolderPolicy.everyone_in_team = PaperDefaultFolderPolicy('everyone_in_team') PaperDefaultFolderPolicy.invite_only = PaperDefaultFolderPolicy('invite_only') PaperDefaultFolderPolicy.other = PaperDefaultFolderPolicy('other') PaperDeploymentPolicy._full_validator = bv.Void() PaperDeploymentPolicy._partial_validator = bv.Void() PaperDeploymentPolicy._other_validator = bv.Void() PaperDeploymentPolicy._tagmap = { 'full': PaperDeploymentPolicy._full_validator, 'partial': PaperDeploymentPolicy._partial_validator, 'other': PaperDeploymentPolicy._other_validator, } PaperDeploymentPolicy.full = PaperDeploymentPolicy('full') PaperDeploymentPolicy.partial = PaperDeploymentPolicy('partial') PaperDeploymentPolicy.other = PaperDeploymentPolicy('other') PaperDesktopPolicy._disabled_validator = bv.Void() PaperDesktopPolicy._enabled_validator = bv.Void() PaperDesktopPolicy._other_validator = bv.Void() PaperDesktopPolicy._tagmap = { 'disabled': PaperDesktopPolicy._disabled_validator, 'enabled': PaperDesktopPolicy._enabled_validator, 'other': PaperDesktopPolicy._other_validator, } PaperDesktopPolicy.disabled = PaperDesktopPolicy('disabled') PaperDesktopPolicy.enabled = PaperDesktopPolicy('enabled') PaperDesktopPolicy.other = PaperDesktopPolicy('other') PaperEnabledPolicy._disabled_validator = bv.Void() PaperEnabledPolicy._enabled_validator = bv.Void() PaperEnabledPolicy._unspecified_validator = bv.Void() PaperEnabledPolicy._other_validator = bv.Void() PaperEnabledPolicy._tagmap = { 'disabled': PaperEnabledPolicy._disabled_validator, 'enabled': PaperEnabledPolicy._enabled_validator, 'unspecified': PaperEnabledPolicy._unspecified_validator, 'other': PaperEnabledPolicy._other_validator, } PaperEnabledPolicy.disabled = PaperEnabledPolicy('disabled') PaperEnabledPolicy.enabled = PaperEnabledPolicy('enabled') PaperEnabledPolicy.unspecified = PaperEnabledPolicy('unspecified') PaperEnabledPolicy.other = PaperEnabledPolicy('other') PasswordControlMode._disabled_validator = bv.Void() PasswordControlMode._enabled_validator = bv.Void() PasswordControlMode._other_validator = bv.Void() PasswordControlMode._tagmap = { 'disabled': PasswordControlMode._disabled_validator, 'enabled': PasswordControlMode._enabled_validator, 'other': PasswordControlMode._other_validator, } PasswordControlMode.disabled = PasswordControlMode('disabled') PasswordControlMode.enabled = PasswordControlMode('enabled') PasswordControlMode.other = PasswordControlMode('other') PasswordStrengthPolicy._minimal_requirements_validator = bv.Void() PasswordStrengthPolicy._moderate_password_validator = bv.Void() PasswordStrengthPolicy._strong_password_validator = bv.Void() PasswordStrengthPolicy._other_validator = bv.Void() PasswordStrengthPolicy._tagmap = { 'minimal_requirements': PasswordStrengthPolicy._minimal_requirements_validator, 'moderate_password': PasswordStrengthPolicy._moderate_password_validator, 'strong_password': PasswordStrengthPolicy._strong_password_validator, 'other': PasswordStrengthPolicy._other_validator, } PasswordStrengthPolicy.minimal_requirements = PasswordStrengthPolicy('minimal_requirements') PasswordStrengthPolicy.moderate_password = PasswordStrengthPolicy('moderate_password') PasswordStrengthPolicy.strong_password = PasswordStrengthPolicy('strong_password') PasswordStrengthPolicy.other = PasswordStrengthPolicy('other') RolloutMethod._unlink_all_validator = bv.Void() RolloutMethod._unlink_most_inactive_validator = bv.Void() RolloutMethod._add_member_to_exceptions_validator = bv.Void() RolloutMethod._tagmap = { 'unlink_all': RolloutMethod._unlink_all_validator, 'unlink_most_inactive': RolloutMethod._unlink_most_inactive_validator, 'add_member_to_exceptions': RolloutMethod._add_member_to_exceptions_validator, } RolloutMethod.unlink_all = RolloutMethod('unlink_all') RolloutMethod.unlink_most_inactive = RolloutMethod('unlink_most_inactive') RolloutMethod.add_member_to_exceptions = RolloutMethod('add_member_to_exceptions') SharedFolderBlanketLinkRestrictionPolicy._members_validator = bv.Void() SharedFolderBlanketLinkRestrictionPolicy._anyone_validator = bv.Void() SharedFolderBlanketLinkRestrictionPolicy._other_validator = bv.Void() SharedFolderBlanketLinkRestrictionPolicy._tagmap = { 'members': SharedFolderBlanketLinkRestrictionPolicy._members_validator, 'anyone': SharedFolderBlanketLinkRestrictionPolicy._anyone_validator, 'other': SharedFolderBlanketLinkRestrictionPolicy._other_validator, } SharedFolderBlanketLinkRestrictionPolicy.members = SharedFolderBlanketLinkRestrictionPolicy('members') SharedFolderBlanketLinkRestrictionPolicy.anyone = SharedFolderBlanketLinkRestrictionPolicy('anyone') SharedFolderBlanketLinkRestrictionPolicy.other = SharedFolderBlanketLinkRestrictionPolicy('other') SharedFolderJoinPolicy._from_team_only_validator = bv.Void() SharedFolderJoinPolicy._from_anyone_validator = bv.Void() SharedFolderJoinPolicy._other_validator = bv.Void() SharedFolderJoinPolicy._tagmap = { 'from_team_only': SharedFolderJoinPolicy._from_team_only_validator, 'from_anyone': SharedFolderJoinPolicy._from_anyone_validator, 'other': SharedFolderJoinPolicy._other_validator, } SharedFolderJoinPolicy.from_team_only = SharedFolderJoinPolicy('from_team_only') SharedFolderJoinPolicy.from_anyone = SharedFolderJoinPolicy('from_anyone') SharedFolderJoinPolicy.other = SharedFolderJoinPolicy('other') SharedFolderMemberPolicy._team_validator = bv.Void() SharedFolderMemberPolicy._anyone_validator = bv.Void() SharedFolderMemberPolicy._other_validator = bv.Void() SharedFolderMemberPolicy._tagmap = { 'team': SharedFolderMemberPolicy._team_validator, 'anyone': SharedFolderMemberPolicy._anyone_validator, 'other': SharedFolderMemberPolicy._other_validator, } SharedFolderMemberPolicy.team = SharedFolderMemberPolicy('team') SharedFolderMemberPolicy.anyone = SharedFolderMemberPolicy('anyone') SharedFolderMemberPolicy.other = SharedFolderMemberPolicy('other') SharedLinkCreatePolicy._default_public_validator = bv.Void() SharedLinkCreatePolicy._default_team_only_validator = bv.Void() SharedLinkCreatePolicy._team_only_validator = bv.Void() SharedLinkCreatePolicy._default_no_one_validator = bv.Void() SharedLinkCreatePolicy._other_validator = bv.Void() SharedLinkCreatePolicy._tagmap = { 'default_public': SharedLinkCreatePolicy._default_public_validator, 'default_team_only': SharedLinkCreatePolicy._default_team_only_validator, 'team_only': SharedLinkCreatePolicy._team_only_validator, 'default_no_one': SharedLinkCreatePolicy._default_no_one_validator, 'other': SharedLinkCreatePolicy._other_validator, } SharedLinkCreatePolicy.default_public = SharedLinkCreatePolicy('default_public') SharedLinkCreatePolicy.default_team_only = SharedLinkCreatePolicy('default_team_only') SharedLinkCreatePolicy.team_only = SharedLinkCreatePolicy('team_only') SharedLinkCreatePolicy.default_no_one = SharedLinkCreatePolicy('default_no_one') SharedLinkCreatePolicy.other = SharedLinkCreatePolicy('other') ShowcaseDownloadPolicy._disabled_validator = bv.Void() ShowcaseDownloadPolicy._enabled_validator = bv.Void() ShowcaseDownloadPolicy._other_validator = bv.Void() ShowcaseDownloadPolicy._tagmap = { 'disabled': ShowcaseDownloadPolicy._disabled_validator, 'enabled': ShowcaseDownloadPolicy._enabled_validator, 'other': ShowcaseDownloadPolicy._other_validator, } ShowcaseDownloadPolicy.disabled = ShowcaseDownloadPolicy('disabled') ShowcaseDownloadPolicy.enabled = ShowcaseDownloadPolicy('enabled') ShowcaseDownloadPolicy.other = ShowcaseDownloadPolicy('other') ShowcaseEnabledPolicy._disabled_validator = bv.Void() ShowcaseEnabledPolicy._enabled_validator = bv.Void() ShowcaseEnabledPolicy._other_validator = bv.Void() ShowcaseEnabledPolicy._tagmap = { 'disabled': ShowcaseEnabledPolicy._disabled_validator, 'enabled': ShowcaseEnabledPolicy._enabled_validator, 'other': ShowcaseEnabledPolicy._other_validator, } ShowcaseEnabledPolicy.disabled = ShowcaseEnabledPolicy('disabled') ShowcaseEnabledPolicy.enabled = ShowcaseEnabledPolicy('enabled') ShowcaseEnabledPolicy.other = ShowcaseEnabledPolicy('other') ShowcaseExternalSharingPolicy._disabled_validator = bv.Void() ShowcaseExternalSharingPolicy._enabled_validator = bv.Void() ShowcaseExternalSharingPolicy._other_validator = bv.Void() ShowcaseExternalSharingPolicy._tagmap = { 'disabled': ShowcaseExternalSharingPolicy._disabled_validator, 'enabled': ShowcaseExternalSharingPolicy._enabled_validator, 'other': ShowcaseExternalSharingPolicy._other_validator, } ShowcaseExternalSharingPolicy.disabled = ShowcaseExternalSharingPolicy('disabled') ShowcaseExternalSharingPolicy.enabled = ShowcaseExternalSharingPolicy('enabled') ShowcaseExternalSharingPolicy.other = ShowcaseExternalSharingPolicy('other') SmartSyncPolicy._local_validator = bv.Void() SmartSyncPolicy._on_demand_validator = bv.Void() SmartSyncPolicy._other_validator = bv.Void() SmartSyncPolicy._tagmap = { 'local': SmartSyncPolicy._local_validator, 'on_demand': SmartSyncPolicy._on_demand_validator, 'other': SmartSyncPolicy._other_validator, } SmartSyncPolicy.local = SmartSyncPolicy('local') SmartSyncPolicy.on_demand = SmartSyncPolicy('on_demand') SmartSyncPolicy.other = SmartSyncPolicy('other') SmarterSmartSyncPolicyState._disabled_validator = bv.Void() SmarterSmartSyncPolicyState._enabled_validator = bv.Void() SmarterSmartSyncPolicyState._other_validator = bv.Void() SmarterSmartSyncPolicyState._tagmap = { 'disabled': SmarterSmartSyncPolicyState._disabled_validator, 'enabled': SmarterSmartSyncPolicyState._enabled_validator, 'other': SmarterSmartSyncPolicyState._other_validator, } SmarterSmartSyncPolicyState.disabled = SmarterSmartSyncPolicyState('disabled') SmarterSmartSyncPolicyState.enabled = SmarterSmartSyncPolicyState('enabled') SmarterSmartSyncPolicyState.other = SmarterSmartSyncPolicyState('other') SsoPolicy._disabled_validator = bv.Void() SsoPolicy._optional_validator = bv.Void() SsoPolicy._required_validator = bv.Void() SsoPolicy._other_validator = bv.Void() SsoPolicy._tagmap = { 'disabled': SsoPolicy._disabled_validator, 'optional': SsoPolicy._optional_validator, 'required': SsoPolicy._required_validator, 'other': SsoPolicy._other_validator, } SsoPolicy.disabled = SsoPolicy('disabled') SsoPolicy.optional = SsoPolicy('optional') SsoPolicy.required = SsoPolicy('required') SsoPolicy.other = SsoPolicy('other') SuggestMembersPolicy._disabled_validator = bv.Void() SuggestMembersPolicy._enabled_validator = bv.Void() SuggestMembersPolicy._other_validator = bv.Void() SuggestMembersPolicy._tagmap = { 'disabled': SuggestMembersPolicy._disabled_validator, 'enabled': SuggestMembersPolicy._enabled_validator, 'other': SuggestMembersPolicy._other_validator, } SuggestMembersPolicy.disabled = SuggestMembersPolicy('disabled') SuggestMembersPolicy.enabled = SuggestMembersPolicy('enabled') SuggestMembersPolicy.other = SuggestMembersPolicy('other') TeamMemberPolicies.sharing.validator = TeamSharingPolicies_validator TeamMemberPolicies.emm_state.validator = EmmState_validator TeamMemberPolicies.office_addin.validator = OfficeAddInPolicy_validator TeamMemberPolicies.suggest_members_policy.validator = SuggestMembersPolicy_validator TeamMemberPolicies._all_field_names_ = set([ 'sharing', 'emm_state', 'office_addin', 'suggest_members_policy', ]) TeamMemberPolicies._all_fields_ = [ ('sharing', TeamMemberPolicies.sharing.validator), ('emm_state', TeamMemberPolicies.emm_state.validator), ('office_addin', TeamMemberPolicies.office_addin.validator), ('suggest_members_policy', TeamMemberPolicies.suggest_members_policy.validator), ] TeamSharingPolicies.shared_folder_member_policy.validator = SharedFolderMemberPolicy_validator TeamSharingPolicies.shared_folder_join_policy.validator = SharedFolderJoinPolicy_validator TeamSharingPolicies.shared_link_create_policy.validator = SharedLinkCreatePolicy_validator TeamSharingPolicies.group_creation_policy.validator = GroupCreation_validator TeamSharingPolicies.shared_folder_link_restriction_policy.validator = SharedFolderBlanketLinkRestrictionPolicy_validator TeamSharingPolicies._all_field_names_ = set([ 'shared_folder_member_policy', 'shared_folder_join_policy', 'shared_link_create_policy', 'group_creation_policy', 'shared_folder_link_restriction_policy', ]) TeamSharingPolicies._all_fields_ = [ ('shared_folder_member_policy', TeamSharingPolicies.shared_folder_member_policy.validator), ('shared_folder_join_policy', TeamSharingPolicies.shared_folder_join_policy.validator), ('shared_link_create_policy', TeamSharingPolicies.shared_link_create_policy.validator), ('group_creation_policy', TeamSharingPolicies.group_creation_policy.validator), ('shared_folder_link_restriction_policy', TeamSharingPolicies.shared_folder_link_restriction_policy.validator), ] TwoStepVerificationPolicy._require_tfa_enable_validator = bv.Void() TwoStepVerificationPolicy._require_tfa_disable_validator = bv.Void() TwoStepVerificationPolicy._other_validator = bv.Void() TwoStepVerificationPolicy._tagmap = { 'require_tfa_enable': TwoStepVerificationPolicy._require_tfa_enable_validator, 'require_tfa_disable': TwoStepVerificationPolicy._require_tfa_disable_validator, 'other': TwoStepVerificationPolicy._other_validator, } TwoStepVerificationPolicy.require_tfa_enable = TwoStepVerificationPolicy('require_tfa_enable') TwoStepVerificationPolicy.require_tfa_disable = TwoStepVerificationPolicy('require_tfa_disable') TwoStepVerificationPolicy.other = TwoStepVerificationPolicy('other') TwoStepVerificationState._required_validator = bv.Void() TwoStepVerificationState._optional_validator = bv.Void() TwoStepVerificationState._disabled_validator = bv.Void() TwoStepVerificationState._other_validator = bv.Void() TwoStepVerificationState._tagmap = { 'required': TwoStepVerificationState._required_validator, 'optional': TwoStepVerificationState._optional_validator, 'disabled': TwoStepVerificationState._disabled_validator, 'other': TwoStepVerificationState._other_validator, } TwoStepVerificationState.required = TwoStepVerificationState('required') TwoStepVerificationState.optional = TwoStepVerificationState('optional') TwoStepVerificationState.disabled = TwoStepVerificationState('disabled') TwoStepVerificationState.other = TwoStepVerificationState('other') ROUTES = { } dropbox-sdk-python-12.0.2/dropbox/users.py000066400000000000000000001364721462737130500205640ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file """ This namespace contains endpoints and data types for user management. """ from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv from dropbox import common from dropbox import team_common from dropbox import team_policies from dropbox import users_common class Account(bb.Struct): """ The amount of detail revealed about an account depends on the user being queried and the user making the query. :ivar users.Account.account_id: The user's unique Dropbox ID. :ivar users.Account.name: Details of a user's name. :ivar users.Account.email: The user's email address. Do not rely on this without checking the ``email_verified`` field. Even then, it's possible that the user has since lost access to their email. :ivar users.Account.email_verified: Whether the user has verified their email address. :ivar users.Account.profile_photo_url: URL for the photo representing the user, if one is set. :ivar users.Account.disabled: Whether the user has been disabled. """ __slots__ = [ '_account_id_value', '_name_value', '_email_value', '_email_verified_value', '_profile_photo_url_value', '_disabled_value', ] _has_required_fields = True def __init__(self, account_id=None, name=None, email=None, email_verified=None, disabled=None, profile_photo_url=None): self._account_id_value = bb.NOT_SET self._name_value = bb.NOT_SET self._email_value = bb.NOT_SET self._email_verified_value = bb.NOT_SET self._profile_photo_url_value = bb.NOT_SET self._disabled_value = bb.NOT_SET if account_id is not None: self.account_id = account_id if name is not None: self.name = name if email is not None: self.email = email if email_verified is not None: self.email_verified = email_verified if profile_photo_url is not None: self.profile_photo_url = profile_photo_url if disabled is not None: self.disabled = disabled # Instance attribute type: str (validator is set below) account_id = bb.Attribute("account_id") # Instance attribute type: Name (validator is set below) name = bb.Attribute("name", user_defined=True) # Instance attribute type: str (validator is set below) email = bb.Attribute("email") # Instance attribute type: bool (validator is set below) email_verified = bb.Attribute("email_verified") # Instance attribute type: str (validator is set below) profile_photo_url = bb.Attribute("profile_photo_url", nullable=True) # Instance attribute type: bool (validator is set below) disabled = bb.Attribute("disabled") def _process_custom_annotations(self, annotation_type, field_path, processor): super(Account, self)._process_custom_annotations(annotation_type, field_path, processor) Account_validator = bv.Struct(Account) class BasicAccount(Account): """ Basic information about any account. :ivar users.BasicAccount.is_teammate: Whether this user is a teammate of the current user. If this account is the current user's account, then this will be ``True``. :ivar users.BasicAccount.team_member_id: The user's unique team member id. This field will only be present if the user is part of a team and ``is_teammate`` is ``True``. """ __slots__ = [ '_is_teammate_value', '_team_member_id_value', ] _has_required_fields = True def __init__(self, account_id=None, name=None, email=None, email_verified=None, disabled=None, is_teammate=None, profile_photo_url=None, team_member_id=None): super(BasicAccount, self).__init__(account_id, name, email, email_verified, disabled, profile_photo_url) self._is_teammate_value = bb.NOT_SET self._team_member_id_value = bb.NOT_SET if is_teammate is not None: self.is_teammate = is_teammate if team_member_id is not None: self.team_member_id = team_member_id # Instance attribute type: bool (validator is set below) is_teammate = bb.Attribute("is_teammate") # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id", nullable=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(BasicAccount, self)._process_custom_annotations(annotation_type, field_path, processor) BasicAccount_validator = bv.Struct(BasicAccount) class FileLockingValue(bb.Union): """ The value for ``UserFeature.file_locking``. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar bool users.FileLockingValue.enabled: When this value is True, the user can lock files in shared directories. When the value is False the user can unlock the files they have locked or request to unlock files locked by others. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def enabled(cls, val): """ Create an instance of this class set to the ``enabled`` tag with value ``val``. :param bool val: :rtype: FileLockingValue """ return cls('enabled', val) def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_enabled(self): """ When this value is True, the user can lock files in shared directories. When the value is False the user can unlock the files they have locked or request to unlock files locked by others. Only call this if :meth:`is_enabled` is true. :rtype: bool """ if not self.is_enabled(): raise AttributeError("tag 'enabled' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(FileLockingValue, self)._process_custom_annotations(annotation_type, field_path, processor) FileLockingValue_validator = bv.Union(FileLockingValue) class FullAccount(Account): """ Detailed information about the current user's account. :ivar users.FullAccount.country: The user's two-letter country code, if available. Country codes are based on `ISO 3166-1 `_. :ivar users.FullAccount.locale: The language that the user specified. Locale tags will be `IETF language tags `_. :ivar users.FullAccount.referral_link: The user's `referral link `_. :ivar users.FullAccount.team: If this account is a member of a team, information about that team. :ivar users.FullAccount.team_member_id: This account's unique team member id. This field will only be present if ``team`` is present. :ivar users.FullAccount.is_paired: Whether the user has a personal and work account. If the current account is personal, then ``team`` will always be None, but ``is_paired`` will indicate if a work account is linked. :ivar users.FullAccount.account_type: What type of account this user has. :ivar users.FullAccount.root_info: The root info for this account. """ __slots__ = [ '_country_value', '_locale_value', '_referral_link_value', '_team_value', '_team_member_id_value', '_is_paired_value', '_account_type_value', '_root_info_value', ] _has_required_fields = True def __init__(self, account_id=None, name=None, email=None, email_verified=None, disabled=None, locale=None, referral_link=None, is_paired=None, account_type=None, root_info=None, profile_photo_url=None, country=None, team=None, team_member_id=None): super(FullAccount, self).__init__(account_id, name, email, email_verified, disabled, profile_photo_url) self._country_value = bb.NOT_SET self._locale_value = bb.NOT_SET self._referral_link_value = bb.NOT_SET self._team_value = bb.NOT_SET self._team_member_id_value = bb.NOT_SET self._is_paired_value = bb.NOT_SET self._account_type_value = bb.NOT_SET self._root_info_value = bb.NOT_SET if country is not None: self.country = country if locale is not None: self.locale = locale if referral_link is not None: self.referral_link = referral_link if team is not None: self.team = team if team_member_id is not None: self.team_member_id = team_member_id if is_paired is not None: self.is_paired = is_paired if account_type is not None: self.account_type = account_type if root_info is not None: self.root_info = root_info # Instance attribute type: str (validator is set below) country = bb.Attribute("country", nullable=True) # Instance attribute type: str (validator is set below) locale = bb.Attribute("locale") # Instance attribute type: str (validator is set below) referral_link = bb.Attribute("referral_link") # Instance attribute type: FullTeam (validator is set below) team = bb.Attribute("team", nullable=True, user_defined=True) # Instance attribute type: str (validator is set below) team_member_id = bb.Attribute("team_member_id", nullable=True) # Instance attribute type: bool (validator is set below) is_paired = bb.Attribute("is_paired") # Instance attribute type: users_common.AccountType (validator is set below) account_type = bb.Attribute("account_type", user_defined=True) # Instance attribute type: common.RootInfo (validator is set below) root_info = bb.Attribute("root_info", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FullAccount, self)._process_custom_annotations(annotation_type, field_path, processor) FullAccount_validator = bv.Struct(FullAccount) class Team(bb.Struct): """ Information about a team. :ivar users.Team.id: The team's unique ID. :ivar users.Team.name: The name of the team. """ __slots__ = [ '_id_value', '_name_value', ] _has_required_fields = True def __init__(self, id=None, name=None): self._id_value = bb.NOT_SET self._name_value = bb.NOT_SET if id is not None: self.id = id if name is not None: self.name = name # Instance attribute type: str (validator is set below) id = bb.Attribute("id") # Instance attribute type: str (validator is set below) name = bb.Attribute("name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(Team, self)._process_custom_annotations(annotation_type, field_path, processor) Team_validator = bv.Struct(Team) class FullTeam(Team): """ Detailed information about a team. :ivar users.FullTeam.sharing_policies: Team policies governing sharing. :ivar users.FullTeam.office_addin_policy: Team policy governing the use of the Office Add-In. """ __slots__ = [ '_sharing_policies_value', '_office_addin_policy_value', ] _has_required_fields = True def __init__(self, id=None, name=None, sharing_policies=None, office_addin_policy=None): super(FullTeam, self).__init__(id, name) self._sharing_policies_value = bb.NOT_SET self._office_addin_policy_value = bb.NOT_SET if sharing_policies is not None: self.sharing_policies = sharing_policies if office_addin_policy is not None: self.office_addin_policy = office_addin_policy # Instance attribute type: team_policies.TeamSharingPolicies (validator is set below) sharing_policies = bb.Attribute("sharing_policies", user_defined=True) # Instance attribute type: team_policies.OfficeAddInPolicy (validator is set below) office_addin_policy = bb.Attribute("office_addin_policy", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(FullTeam, self)._process_custom_annotations(annotation_type, field_path, processor) FullTeam_validator = bv.Struct(FullTeam) class GetAccountArg(bb.Struct): """ :ivar users.GetAccountArg.account_id: A user's account identifier. """ __slots__ = [ '_account_id_value', ] _has_required_fields = True def __init__(self, account_id=None): self._account_id_value = bb.NOT_SET if account_id is not None: self.account_id = account_id # Instance attribute type: str (validator is set below) account_id = bb.Attribute("account_id") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetAccountArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetAccountArg_validator = bv.Struct(GetAccountArg) class GetAccountBatchArg(bb.Struct): """ :ivar users.GetAccountBatchArg.account_ids: List of user account identifiers. Should not contain any duplicate account IDs. """ __slots__ = [ '_account_ids_value', ] _has_required_fields = True def __init__(self, account_ids=None): self._account_ids_value = bb.NOT_SET if account_ids is not None: self.account_ids = account_ids # Instance attribute type: list of [str] (validator is set below) account_ids = bb.Attribute("account_ids") def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetAccountBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) GetAccountBatchArg_validator = bv.Struct(GetAccountBatchArg) class GetAccountBatchError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar str users.GetAccountBatchError.no_account: The value is an account ID specified in :field:`GetAccountBatchArg.account_ids` that does not exist. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def no_account(cls, val): """ Create an instance of this class set to the ``no_account`` tag with value ``val``. :param str val: :rtype: GetAccountBatchError """ return cls('no_account', val) def is_no_account(self): """ Check if the union tag is ``no_account``. :rtype: bool """ return self._tag == 'no_account' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_no_account(self): """ The value is an account ID specified in ``GetAccountBatchArg.account_ids`` that does not exist. Only call this if :meth:`is_no_account` is true. :rtype: str """ if not self.is_no_account(): raise AttributeError("tag 'no_account' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetAccountBatchError, self)._process_custom_annotations(annotation_type, field_path, processor) GetAccountBatchError_validator = bv.Union(GetAccountBatchError) class GetAccountError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar users.GetAccountError.no_account: The specified ``GetAccountArg.account_id`` does not exist. """ _catch_all = 'other' # Attribute is overwritten below the class definition no_account = None # Attribute is overwritten below the class definition other = None def is_no_account(self): """ Check if the union tag is ``no_account``. :rtype: bool """ return self._tag == 'no_account' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(GetAccountError, self)._process_custom_annotations(annotation_type, field_path, processor) GetAccountError_validator = bv.Union(GetAccountError) class IndividualSpaceAllocation(bb.Struct): """ :ivar users.IndividualSpaceAllocation.allocated: The total space allocated to the user's account (bytes). """ __slots__ = [ '_allocated_value', ] _has_required_fields = True def __init__(self, allocated=None): self._allocated_value = bb.NOT_SET if allocated is not None: self.allocated = allocated # Instance attribute type: int (validator is set below) allocated = bb.Attribute("allocated") def _process_custom_annotations(self, annotation_type, field_path, processor): super(IndividualSpaceAllocation, self)._process_custom_annotations(annotation_type, field_path, processor) IndividualSpaceAllocation_validator = bv.Struct(IndividualSpaceAllocation) class Name(bb.Struct): """ Representations for a person's name to assist with internationalization. :ivar users.Name.given_name: Also known as a first name. :ivar users.Name.surname: Also known as a last name or family name. :ivar users.Name.familiar_name: Locale-dependent name. In the US, a person's familiar name is their ``given_name``, but elsewhere, it could be any combination of a person's ``given_name`` and ``surname``. :ivar users.Name.display_name: A name that can be used directly to represent the name of a user's Dropbox account. :ivar users.Name.abbreviated_name: An abbreviated form of the person's name. Their initials in most locales. """ __slots__ = [ '_given_name_value', '_surname_value', '_familiar_name_value', '_display_name_value', '_abbreviated_name_value', ] _has_required_fields = True def __init__(self, given_name=None, surname=None, familiar_name=None, display_name=None, abbreviated_name=None): self._given_name_value = bb.NOT_SET self._surname_value = bb.NOT_SET self._familiar_name_value = bb.NOT_SET self._display_name_value = bb.NOT_SET self._abbreviated_name_value = bb.NOT_SET if given_name is not None: self.given_name = given_name if surname is not None: self.surname = surname if familiar_name is not None: self.familiar_name = familiar_name if display_name is not None: self.display_name = display_name if abbreviated_name is not None: self.abbreviated_name = abbreviated_name # Instance attribute type: str (validator is set below) given_name = bb.Attribute("given_name") # Instance attribute type: str (validator is set below) surname = bb.Attribute("surname") # Instance attribute type: str (validator is set below) familiar_name = bb.Attribute("familiar_name") # Instance attribute type: str (validator is set below) display_name = bb.Attribute("display_name") # Instance attribute type: str (validator is set below) abbreviated_name = bb.Attribute("abbreviated_name") def _process_custom_annotations(self, annotation_type, field_path, processor): super(Name, self)._process_custom_annotations(annotation_type, field_path, processor) Name_validator = bv.Struct(Name) class PaperAsFilesValue(bb.Union): """ The value for ``UserFeature.paper_as_files``. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar bool users.PaperAsFilesValue.enabled: When this value is true, the user's Paper docs are accessible in Dropbox with the .paper extension and must be accessed via the /files endpoints. When this value is false, the user's Paper docs are stored separate from Dropbox files and folders and should be accessed via the /paper endpoints. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def enabled(cls, val): """ Create an instance of this class set to the ``enabled`` tag with value ``val``. :param bool val: :rtype: PaperAsFilesValue """ return cls('enabled', val) def is_enabled(self): """ Check if the union tag is ``enabled``. :rtype: bool """ return self._tag == 'enabled' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_enabled(self): """ When this value is true, the user's Paper docs are accessible in Dropbox with the .paper extension and must be accessed via the /files endpoints. When this value is false, the user's Paper docs are stored separate from Dropbox files and folders and should be accessed via the /paper endpoints. Only call this if :meth:`is_enabled` is true. :rtype: bool """ if not self.is_enabled(): raise AttributeError("tag 'enabled' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(PaperAsFilesValue, self)._process_custom_annotations(annotation_type, field_path, processor) PaperAsFilesValue_validator = bv.Union(PaperAsFilesValue) class SpaceAllocation(bb.Union): """ Space is allocated differently based on the type of account. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar IndividualSpaceAllocation SpaceAllocation.individual: The user's space allocation applies only to their individual account. :ivar TeamSpaceAllocation SpaceAllocation.team: The user shares space with other members of their team. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def individual(cls, val): """ Create an instance of this class set to the ``individual`` tag with value ``val``. :param IndividualSpaceAllocation val: :rtype: SpaceAllocation """ return cls('individual', val) @classmethod def team(cls, val): """ Create an instance of this class set to the ``team`` tag with value ``val``. :param TeamSpaceAllocation val: :rtype: SpaceAllocation """ return cls('team', val) def is_individual(self): """ Check if the union tag is ``individual``. :rtype: bool """ return self._tag == 'individual' def is_team(self): """ Check if the union tag is ``team``. :rtype: bool """ return self._tag == 'team' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_individual(self): """ The user's space allocation applies only to their individual account. Only call this if :meth:`is_individual` is true. :rtype: IndividualSpaceAllocation """ if not self.is_individual(): raise AttributeError("tag 'individual' not set") return self._value def get_team(self): """ The user shares space with other members of their team. Only call this if :meth:`is_team` is true. :rtype: TeamSpaceAllocation """ if not self.is_team(): raise AttributeError("tag 'team' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(SpaceAllocation, self)._process_custom_annotations(annotation_type, field_path, processor) SpaceAllocation_validator = bv.Union(SpaceAllocation) class SpaceUsage(bb.Struct): """ Information about a user's space usage and quota. :ivar users.SpaceUsage.used: The user's total space usage (bytes). :ivar users.SpaceUsage.allocation: The user's space allocation. """ __slots__ = [ '_used_value', '_allocation_value', ] _has_required_fields = True def __init__(self, used=None, allocation=None): self._used_value = bb.NOT_SET self._allocation_value = bb.NOT_SET if used is not None: self.used = used if allocation is not None: self.allocation = allocation # Instance attribute type: int (validator is set below) used = bb.Attribute("used") # Instance attribute type: SpaceAllocation (validator is set below) allocation = bb.Attribute("allocation", user_defined=True) def _process_custom_annotations(self, annotation_type, field_path, processor): super(SpaceUsage, self)._process_custom_annotations(annotation_type, field_path, processor) SpaceUsage_validator = bv.Struct(SpaceUsage) class TeamSpaceAllocation(bb.Struct): """ :ivar users.TeamSpaceAllocation.used: The total space currently used by the user's team (bytes). :ivar users.TeamSpaceAllocation.allocated: The total space allocated to the user's team (bytes). :ivar users.TeamSpaceAllocation.user_within_team_space_allocated: The total space allocated to the user within its team allocated space (0 means that no restriction is imposed on the user's quota within its team). :ivar users.TeamSpaceAllocation.user_within_team_space_limit_type: The type of the space limit imposed on the team member (off, alert_only, stop_sync). :ivar users.TeamSpaceAllocation.user_within_team_space_used_cached: An accurate cached calculation of a team member's total space usage (bytes). """ __slots__ = [ '_used_value', '_allocated_value', '_user_within_team_space_allocated_value', '_user_within_team_space_limit_type_value', '_user_within_team_space_used_cached_value', ] _has_required_fields = True def __init__(self, used=None, allocated=None, user_within_team_space_allocated=None, user_within_team_space_limit_type=None, user_within_team_space_used_cached=None): self._used_value = bb.NOT_SET self._allocated_value = bb.NOT_SET self._user_within_team_space_allocated_value = bb.NOT_SET self._user_within_team_space_limit_type_value = bb.NOT_SET self._user_within_team_space_used_cached_value = bb.NOT_SET if used is not None: self.used = used if allocated is not None: self.allocated = allocated if user_within_team_space_allocated is not None: self.user_within_team_space_allocated = user_within_team_space_allocated if user_within_team_space_limit_type is not None: self.user_within_team_space_limit_type = user_within_team_space_limit_type if user_within_team_space_used_cached is not None: self.user_within_team_space_used_cached = user_within_team_space_used_cached # Instance attribute type: int (validator is set below) used = bb.Attribute("used") # Instance attribute type: int (validator is set below) allocated = bb.Attribute("allocated") # Instance attribute type: int (validator is set below) user_within_team_space_allocated = bb.Attribute("user_within_team_space_allocated") # Instance attribute type: team_common.MemberSpaceLimitType (validator is set below) user_within_team_space_limit_type = bb.Attribute("user_within_team_space_limit_type", user_defined=True) # Instance attribute type: int (validator is set below) user_within_team_space_used_cached = bb.Attribute("user_within_team_space_used_cached") def _process_custom_annotations(self, annotation_type, field_path, processor): super(TeamSpaceAllocation, self)._process_custom_annotations(annotation_type, field_path, processor) TeamSpaceAllocation_validator = bv.Struct(TeamSpaceAllocation) class UserFeature(bb.Union): """ A set of features that a Dropbox User account may have configured. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar users.UserFeature.paper_as_files: This feature contains information about how the user's Paper files are stored. :ivar users.UserFeature.file_locking: This feature allows users to lock files in order to restrict other users from editing them. """ _catch_all = 'other' # Attribute is overwritten below the class definition paper_as_files = None # Attribute is overwritten below the class definition file_locking = None # Attribute is overwritten below the class definition other = None def is_paper_as_files(self): """ Check if the union tag is ``paper_as_files``. :rtype: bool """ return self._tag == 'paper_as_files' def is_file_locking(self): """ Check if the union tag is ``file_locking``. :rtype: bool """ return self._tag == 'file_locking' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserFeature, self)._process_custom_annotations(annotation_type, field_path, processor) UserFeature_validator = bv.Union(UserFeature) class UserFeatureValue(bb.Union): """ Values that correspond to entries in :class:`UserFeature`. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. """ _catch_all = 'other' # Attribute is overwritten below the class definition other = None @classmethod def paper_as_files(cls, val): """ Create an instance of this class set to the ``paper_as_files`` tag with value ``val``. :param PaperAsFilesValue val: :rtype: UserFeatureValue """ return cls('paper_as_files', val) @classmethod def file_locking(cls, val): """ Create an instance of this class set to the ``file_locking`` tag with value ``val``. :param FileLockingValue val: :rtype: UserFeatureValue """ return cls('file_locking', val) def is_paper_as_files(self): """ Check if the union tag is ``paper_as_files``. :rtype: bool """ return self._tag == 'paper_as_files' def is_file_locking(self): """ Check if the union tag is ``file_locking``. :rtype: bool """ return self._tag == 'file_locking' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def get_paper_as_files(self): """ Only call this if :meth:`is_paper_as_files` is true. :rtype: PaperAsFilesValue """ if not self.is_paper_as_files(): raise AttributeError("tag 'paper_as_files' not set") return self._value def get_file_locking(self): """ Only call this if :meth:`is_file_locking` is true. :rtype: FileLockingValue """ if not self.is_file_locking(): raise AttributeError("tag 'file_locking' not set") return self._value def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserFeatureValue, self)._process_custom_annotations(annotation_type, field_path, processor) UserFeatureValue_validator = bv.Union(UserFeatureValue) class UserFeaturesGetValuesBatchArg(bb.Struct): """ :ivar users.UserFeaturesGetValuesBatchArg.features: A list of features in :class:`UserFeature`. If the list is empty, this route will return :class:`UserFeaturesGetValuesBatchError`. """ __slots__ = [ '_features_value', ] _has_required_fields = True def __init__(self, features=None): self._features_value = bb.NOT_SET if features is not None: self.features = features # Instance attribute type: list of [UserFeature] (validator is set below) features = bb.Attribute("features") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserFeaturesGetValuesBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor) UserFeaturesGetValuesBatchArg_validator = bv.Struct(UserFeaturesGetValuesBatchArg) class UserFeaturesGetValuesBatchError(bb.Union): """ This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar users.UserFeaturesGetValuesBatchError.empty_features_list: At least one :class:`UserFeature` must be included in the :class:`UserFeaturesGetValuesBatchArg`.features list. """ _catch_all = 'other' # Attribute is overwritten below the class definition empty_features_list = None # Attribute is overwritten below the class definition other = None def is_empty_features_list(self): """ Check if the union tag is ``empty_features_list``. :rtype: bool """ return self._tag == 'empty_features_list' def is_other(self): """ Check if the union tag is ``other``. :rtype: bool """ return self._tag == 'other' def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserFeaturesGetValuesBatchError, self)._process_custom_annotations(annotation_type, field_path, processor) UserFeaturesGetValuesBatchError_validator = bv.Union(UserFeaturesGetValuesBatchError) class UserFeaturesGetValuesBatchResult(bb.Struct): __slots__ = [ '_values_value', ] _has_required_fields = True def __init__(self, values=None): self._values_value = bb.NOT_SET if values is not None: self.values = values # Instance attribute type: list of [UserFeatureValue] (validator is set below) values = bb.Attribute("values") def _process_custom_annotations(self, annotation_type, field_path, processor): super(UserFeaturesGetValuesBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor) UserFeaturesGetValuesBatchResult_validator = bv.Struct(UserFeaturesGetValuesBatchResult) GetAccountBatchResult_validator = bv.List(BasicAccount_validator) Account.account_id.validator = users_common.AccountId_validator Account.name.validator = Name_validator Account.email.validator = bv.String() Account.email_verified.validator = bv.Boolean() Account.profile_photo_url.validator = bv.Nullable(bv.String()) Account.disabled.validator = bv.Boolean() Account._all_field_names_ = set([ 'account_id', 'name', 'email', 'email_verified', 'profile_photo_url', 'disabled', ]) Account._all_fields_ = [ ('account_id', Account.account_id.validator), ('name', Account.name.validator), ('email', Account.email.validator), ('email_verified', Account.email_verified.validator), ('profile_photo_url', Account.profile_photo_url.validator), ('disabled', Account.disabled.validator), ] BasicAccount.is_teammate.validator = bv.Boolean() BasicAccount.team_member_id.validator = bv.Nullable(bv.String()) BasicAccount._all_field_names_ = Account._all_field_names_.union(set([ 'is_teammate', 'team_member_id', ])) BasicAccount._all_fields_ = Account._all_fields_ + [ ('is_teammate', BasicAccount.is_teammate.validator), ('team_member_id', BasicAccount.team_member_id.validator), ] FileLockingValue._enabled_validator = bv.Boolean() FileLockingValue._other_validator = bv.Void() FileLockingValue._tagmap = { 'enabled': FileLockingValue._enabled_validator, 'other': FileLockingValue._other_validator, } FileLockingValue.other = FileLockingValue('other') FullAccount.country.validator = bv.Nullable(bv.String(min_length=2, max_length=2)) FullAccount.locale.validator = bv.String(min_length=2) FullAccount.referral_link.validator = bv.String() FullAccount.team.validator = bv.Nullable(FullTeam_validator) FullAccount.team_member_id.validator = bv.Nullable(bv.String()) FullAccount.is_paired.validator = bv.Boolean() FullAccount.account_type.validator = users_common.AccountType_validator FullAccount.root_info.validator = common.RootInfo_validator FullAccount._all_field_names_ = Account._all_field_names_.union(set([ 'country', 'locale', 'referral_link', 'team', 'team_member_id', 'is_paired', 'account_type', 'root_info', ])) FullAccount._all_fields_ = Account._all_fields_ + [ ('country', FullAccount.country.validator), ('locale', FullAccount.locale.validator), ('referral_link', FullAccount.referral_link.validator), ('team', FullAccount.team.validator), ('team_member_id', FullAccount.team_member_id.validator), ('is_paired', FullAccount.is_paired.validator), ('account_type', FullAccount.account_type.validator), ('root_info', FullAccount.root_info.validator), ] Team.id.validator = bv.String() Team.name.validator = bv.String() Team._all_field_names_ = set([ 'id', 'name', ]) Team._all_fields_ = [ ('id', Team.id.validator), ('name', Team.name.validator), ] FullTeam.sharing_policies.validator = team_policies.TeamSharingPolicies_validator FullTeam.office_addin_policy.validator = team_policies.OfficeAddInPolicy_validator FullTeam._all_field_names_ = Team._all_field_names_.union(set([ 'sharing_policies', 'office_addin_policy', ])) FullTeam._all_fields_ = Team._all_fields_ + [ ('sharing_policies', FullTeam.sharing_policies.validator), ('office_addin_policy', FullTeam.office_addin_policy.validator), ] GetAccountArg.account_id.validator = users_common.AccountId_validator GetAccountArg._all_field_names_ = set(['account_id']) GetAccountArg._all_fields_ = [('account_id', GetAccountArg.account_id.validator)] GetAccountBatchArg.account_ids.validator = bv.List(users_common.AccountId_validator, min_items=1) GetAccountBatchArg._all_field_names_ = set(['account_ids']) GetAccountBatchArg._all_fields_ = [('account_ids', GetAccountBatchArg.account_ids.validator)] GetAccountBatchError._no_account_validator = users_common.AccountId_validator GetAccountBatchError._other_validator = bv.Void() GetAccountBatchError._tagmap = { 'no_account': GetAccountBatchError._no_account_validator, 'other': GetAccountBatchError._other_validator, } GetAccountBatchError.other = GetAccountBatchError('other') GetAccountError._no_account_validator = bv.Void() GetAccountError._other_validator = bv.Void() GetAccountError._tagmap = { 'no_account': GetAccountError._no_account_validator, 'other': GetAccountError._other_validator, } GetAccountError.no_account = GetAccountError('no_account') GetAccountError.other = GetAccountError('other') IndividualSpaceAllocation.allocated.validator = bv.UInt64() IndividualSpaceAllocation._all_field_names_ = set(['allocated']) IndividualSpaceAllocation._all_fields_ = [('allocated', IndividualSpaceAllocation.allocated.validator)] Name.given_name.validator = bv.String() Name.surname.validator = bv.String() Name.familiar_name.validator = bv.String() Name.display_name.validator = bv.String() Name.abbreviated_name.validator = bv.String() Name._all_field_names_ = set([ 'given_name', 'surname', 'familiar_name', 'display_name', 'abbreviated_name', ]) Name._all_fields_ = [ ('given_name', Name.given_name.validator), ('surname', Name.surname.validator), ('familiar_name', Name.familiar_name.validator), ('display_name', Name.display_name.validator), ('abbreviated_name', Name.abbreviated_name.validator), ] PaperAsFilesValue._enabled_validator = bv.Boolean() PaperAsFilesValue._other_validator = bv.Void() PaperAsFilesValue._tagmap = { 'enabled': PaperAsFilesValue._enabled_validator, 'other': PaperAsFilesValue._other_validator, } PaperAsFilesValue.other = PaperAsFilesValue('other') SpaceAllocation._individual_validator = IndividualSpaceAllocation_validator SpaceAllocation._team_validator = TeamSpaceAllocation_validator SpaceAllocation._other_validator = bv.Void() SpaceAllocation._tagmap = { 'individual': SpaceAllocation._individual_validator, 'team': SpaceAllocation._team_validator, 'other': SpaceAllocation._other_validator, } SpaceAllocation.other = SpaceAllocation('other') SpaceUsage.used.validator = bv.UInt64() SpaceUsage.allocation.validator = SpaceAllocation_validator SpaceUsage._all_field_names_ = set([ 'used', 'allocation', ]) SpaceUsage._all_fields_ = [ ('used', SpaceUsage.used.validator), ('allocation', SpaceUsage.allocation.validator), ] TeamSpaceAllocation.used.validator = bv.UInt64() TeamSpaceAllocation.allocated.validator = bv.UInt64() TeamSpaceAllocation.user_within_team_space_allocated.validator = bv.UInt64() TeamSpaceAllocation.user_within_team_space_limit_type.validator = team_common.MemberSpaceLimitType_validator TeamSpaceAllocation.user_within_team_space_used_cached.validator = bv.UInt64() TeamSpaceAllocation._all_field_names_ = set([ 'used', 'allocated', 'user_within_team_space_allocated', 'user_within_team_space_limit_type', 'user_within_team_space_used_cached', ]) TeamSpaceAllocation._all_fields_ = [ ('used', TeamSpaceAllocation.used.validator), ('allocated', TeamSpaceAllocation.allocated.validator), ('user_within_team_space_allocated', TeamSpaceAllocation.user_within_team_space_allocated.validator), ('user_within_team_space_limit_type', TeamSpaceAllocation.user_within_team_space_limit_type.validator), ('user_within_team_space_used_cached', TeamSpaceAllocation.user_within_team_space_used_cached.validator), ] UserFeature._paper_as_files_validator = bv.Void() UserFeature._file_locking_validator = bv.Void() UserFeature._other_validator = bv.Void() UserFeature._tagmap = { 'paper_as_files': UserFeature._paper_as_files_validator, 'file_locking': UserFeature._file_locking_validator, 'other': UserFeature._other_validator, } UserFeature.paper_as_files = UserFeature('paper_as_files') UserFeature.file_locking = UserFeature('file_locking') UserFeature.other = UserFeature('other') UserFeatureValue._paper_as_files_validator = PaperAsFilesValue_validator UserFeatureValue._file_locking_validator = FileLockingValue_validator UserFeatureValue._other_validator = bv.Void() UserFeatureValue._tagmap = { 'paper_as_files': UserFeatureValue._paper_as_files_validator, 'file_locking': UserFeatureValue._file_locking_validator, 'other': UserFeatureValue._other_validator, } UserFeatureValue.other = UserFeatureValue('other') UserFeaturesGetValuesBatchArg.features.validator = bv.List(UserFeature_validator) UserFeaturesGetValuesBatchArg._all_field_names_ = set(['features']) UserFeaturesGetValuesBatchArg._all_fields_ = [('features', UserFeaturesGetValuesBatchArg.features.validator)] UserFeaturesGetValuesBatchError._empty_features_list_validator = bv.Void() UserFeaturesGetValuesBatchError._other_validator = bv.Void() UserFeaturesGetValuesBatchError._tagmap = { 'empty_features_list': UserFeaturesGetValuesBatchError._empty_features_list_validator, 'other': UserFeaturesGetValuesBatchError._other_validator, } UserFeaturesGetValuesBatchError.empty_features_list = UserFeaturesGetValuesBatchError('empty_features_list') UserFeaturesGetValuesBatchError.other = UserFeaturesGetValuesBatchError('other') UserFeaturesGetValuesBatchResult.values.validator = bv.List(UserFeatureValue_validator) UserFeaturesGetValuesBatchResult._all_field_names_ = set(['values']) UserFeaturesGetValuesBatchResult._all_fields_ = [('values', UserFeaturesGetValuesBatchResult.values.validator)] features_get_values = bb.Route( 'features/get_values', 1, False, UserFeaturesGetValuesBatchArg_validator, UserFeaturesGetValuesBatchResult_validator, UserFeaturesGetValuesBatchError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get_account = bb.Route( 'get_account', 1, False, GetAccountArg_validator, BasicAccount_validator, GetAccountError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get_account_batch = bb.Route( 'get_account_batch', 1, False, GetAccountBatchArg_validator, GetAccountBatchResult_validator, GetAccountBatchError_validator, {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get_current_account = bb.Route( 'get_current_account', 1, False, bv.Void(), FullAccount_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) get_space_usage = bb.Route( 'get_space_usage', 1, False, bv.Void(), SpaceUsage_validator, bv.Void(), {'auth': 'user', 'host': 'api', 'style': 'rpc'}, ) ROUTES = { 'features/get_values': features_get_values, 'get_account': get_account, 'get_account_batch': get_account_batch, 'get_current_account': get_current_account, 'get_space_usage': get_space_usage, } dropbox-sdk-python-12.0.2/dropbox/users_common.py000066400000000000000000000043451462737130500221250ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Auto-generated by Stone, do not modify. # @generated # flake8: noqa # pylint: skip-file """ This namespace contains common data types used within the users namespace. """ from __future__ import unicode_literals from stone.backends.python_rsrc import stone_base as bb from stone.backends.python_rsrc import stone_validators as bv class AccountType(bb.Union): """ What type of account this user has. This class acts as a tagged union. Only one of the ``is_*`` methods will return true. To get the associated value of a tag (if one exists), use the corresponding ``get_*`` method. :ivar users_common.AccountType.basic: The basic account type. :ivar users_common.AccountType.pro: The Dropbox Pro account type. :ivar users_common.AccountType.business: The Dropbox Business account type. """ _catch_all = None # Attribute is overwritten below the class definition basic = None # Attribute is overwritten below the class definition pro = None # Attribute is overwritten below the class definition business = None def is_basic(self): """ Check if the union tag is ``basic``. :rtype: bool """ return self._tag == 'basic' def is_pro(self): """ Check if the union tag is ``pro``. :rtype: bool """ return self._tag == 'pro' def is_business(self): """ Check if the union tag is ``business``. :rtype: bool """ return self._tag == 'business' def _process_custom_annotations(self, annotation_type, field_path, processor): super(AccountType, self)._process_custom_annotations(annotation_type, field_path, processor) AccountType_validator = bv.Union(AccountType) AccountId_validator = bv.String(min_length=40, max_length=40) AccountType._basic_validator = bv.Void() AccountType._pro_validator = bv.Void() AccountType._business_validator = bv.Void() AccountType._tagmap = { 'basic': AccountType._basic_validator, 'pro': AccountType._pro_validator, 'business': AccountType._business_validator, } AccountType.basic = AccountType('basic') AccountType.pro = AccountType('pro') AccountType.business = AccountType('business') ROUTES = { } dropbox-sdk-python-12.0.2/example/000077500000000000000000000000001462737130500170125ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/example/back-up-and-restore/000077500000000000000000000000001462737130500225555ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/example/back-up-and-restore/README.md000066400000000000000000000024041462737130500240340ustar00rootroot00000000000000# Backup And Restore ## A Dropbox API sample app for the Python SDK # How to run Make sure you've installed the Dropbox Python SDK by following the installation instructions ( https://www.dropbox.com/developers/documentation/python#install ). Then, find this line in backup-and-restore-sample.py and modify it to include your own access token. ```TOKEN = ''``` From the example/backup-and-restore directory, run the script. ```python backup-and-restore-sample.py``` You should see the file my-file-backup.txt show up in the Dropbox account you used to get the access token. # Description ## Functionality 1. Back up a file ("my-file.txt") The my-file.txt file is a simple file that could be any kind of app or user data. In this example, it contains a simple string of text (initially "original"). 2. Restore a file to a previous version (using /revisions) # API usage ## New v2 endpoints This app uses the Dropbox API v2 endpoints files_upload, files_restore, files_download_to_file, and files_list_revisions. See more here: http://dropbox-sdk-python.readthedocs.org/en/main/ ## Error checking This example also shows you how to do specific error handling with the new API v2 exceptions. In the backup() function, you can see how to check for a specific kind of API Error.dropbox-sdk-python-12.0.2/example/back-up-and-restore/backup-and-restore-example.py000066400000000000000000000073151462737130500302540ustar00rootroot00000000000000""" Backs up and restores a settings file to Dropbox. This is an example app for API v2. """ import sys import dropbox from dropbox.files import WriteMode from dropbox.exceptions import ApiError, AuthError # Add OAuth2 access token here. # You can generate one for yourself in the App Console. # See TOKEN = '' LOCALFILE = 'my-file.txt' BACKUPPATH = '/my-file-backup.txt' # Uploads contents of LOCALFILE to Dropbox def backup(): with open(LOCALFILE, 'rb') as f: # We use WriteMode=overwrite to make sure that the settings in the file # are changed on upload print("Uploading " + LOCALFILE + " to Dropbox as " + BACKUPPATH + "...") try: dbx.files_upload(f.read(), BACKUPPATH, mode=WriteMode('overwrite')) except ApiError as err: # This checks for the specific error where a user doesn't have # enough Dropbox space quota to upload this file if (err.error.is_path() and err.error.get_path().reason.is_insufficient_space()): sys.exit("ERROR: Cannot back up; insufficient space.") elif err.user_message_text: print(err.user_message_text) sys.exit() else: print(err) sys.exit() # Change the text string in LOCALFILE to be new_content # @param new_content is a string def change_local_file(new_content): print("Changing contents of " + LOCALFILE + " on local machine...") with open(LOCALFILE, 'wb') as f: f.write(new_content) # Restore the local and Dropbox files to a certain revision def restore(rev=None): # Restore the file on Dropbox to a certain revision print("Restoring " + BACKUPPATH + " to revision " + rev + " on Dropbox...") dbx.files_restore(BACKUPPATH, rev) # Download the specific revision of the file at BACKUPPATH to LOCALFILE print("Downloading current " + BACKUPPATH + " from Dropbox, overwriting " + LOCALFILE + "...") dbx.files_download_to_file(LOCALFILE, BACKUPPATH, rev) # Look at all of the available revisions on Dropbox, and return the oldest one def select_revision(): # Get the revisions for a file (and sort by the datetime object, "server_modified") print("Finding available revisions on Dropbox...") entries = dbx.files_list_revisions(BACKUPPATH, limit=30).entries revisions = sorted(entries, key=lambda entry: entry.server_modified) for revision in revisions: print(revision.rev, revision.server_modified) # Return the oldest revision (first entry, because revisions was sorted oldest:newest) return revisions[0].rev if __name__ == '__main__': # Check for an access token if (len(TOKEN) == 0): sys.exit("ERROR: Looks like you didn't add your access token. " "Open up backup-and-restore-example.py in a text editor and " "paste in your token in line 14.") # Create an instance of a Dropbox class, which can make requests to the API. print("Creating a Dropbox object...") with dropbox.Dropbox(TOKEN) as dbx: # Check that the access token is valid try: dbx.users_get_current_account() except AuthError: sys.exit("ERROR: Invalid access token; try re-generating an " "access token from the app console on the web.") # Create a backup of the current settings file backup() # Change the user's file, create another backup change_local_file(b"updated") backup() # Restore the local and Dropbox files to a certain revision to_rev = select_revision() restore(to_rev) print("Done!") dropbox-sdk-python-12.0.2/example/back-up-and-restore/my-file.txt000066400000000000000000000000101462737130500246470ustar00rootroot00000000000000originaldropbox-sdk-python-12.0.2/example/oauth/000077500000000000000000000000001462737130500201325ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/example/oauth/commandline-oauth-pkce.py000066400000000000000000000014201462737130500250250ustar00rootroot00000000000000#!/usr/bin/env python3 import dropbox from dropbox import DropboxOAuth2FlowNoRedirect ''' Populate your app key in order to run this locally ''' APP_KEY = "" auth_flow = DropboxOAuth2FlowNoRedirect(APP_KEY, use_pkce=True, token_access_type='offline') authorize_url = auth_flow.start() print("1. Go to: " + authorize_url) print("2. Click \"Allow\" (you might have to log in first).") print("3. Copy the authorization code.") auth_code = input("Enter the authorization code here: ").strip() try: oauth_result = auth_flow.finish(auth_code) except Exception as e: print('Error: %s' % (e,)) exit(1) with dropbox.Dropbox(oauth2_refresh_token=oauth_result.refresh_token, app_key=APP_KEY) as dbx: dbx.users_get_current_account() print("Successfully set up client!") dropbox-sdk-python-12.0.2/example/oauth/commandline-oauth-scopes.py000066400000000000000000000064051462737130500254070ustar00rootroot00000000000000#!/usr/bin/env python3 import dropbox from dropbox import DropboxOAuth2FlowNoRedirect ''' It goes through an example of requesting a starting scope, and requesting more throughout the process ''' APP_KEY = "" APP_SECRET = "" auth_flow = DropboxOAuth2FlowNoRedirect(APP_KEY, consumer_secret=APP_SECRET, token_access_type='offline', scope=['files.metadata.read']) authorize_url = auth_flow.start() print("1. Go to: " + authorize_url) print("2. Click \"Allow\" (you might have to log in first).") print("3. Copy the authorization code.") auth_code = input("Enter the authorization code here: ").strip() try: oauth_result = auth_flow.finish(auth_code) # authorization has files.metadata.read scope only assert oauth_result.scope == 'files.metadata.read' except Exception as e: print('Error: %s' % (e,)) exit(1) # If an application needs write scopes now we can request the new scope with the auth flow auth_flow2 = DropboxOAuth2FlowNoRedirect(APP_KEY, consumer_secret=APP_SECRET, token_access_type='offline', scope=['account_info.read']) authorize_url = auth_flow2.start() print("1. Go to: " + authorize_url) print("2. Click \"Allow\" (you might have to log in first).") print("3. Copy the authorization code.") auth_code = input("Enter the authorization code here: ").strip() try: oauth_result = auth_flow2.finish(auth_code) # authorization has account_info.read scope only assert oauth_result.scope == 'account_info.read' except Exception as e: print('Error: %s' % (e,)) exit(1) # If an application needs a new scope but wants to keep the existing scopes, # you can add include_granted_scopes parameter auth_flow3 = DropboxOAuth2FlowNoRedirect(APP_KEY, consumer_secret=APP_SECRET, token_access_type='offline', scope=['files.content.read', 'files.content.write'], include_granted_scopes='user') authorize_url = auth_flow3.start() print("1. Go to: " + authorize_url) print("2. Click \"Allow\" (you might have to log in first).") print("3. Copy the authorization code.") auth_code = input("Enter the authorization code here: ").strip() try: oauth_result = auth_flow3.finish(auth_code) print(oauth_result) # authorization has all granted user scopes assert 'account_info.read' in oauth_result.scope assert 'files.metadata.read' in oauth_result.scope assert 'files.content.read' in oauth_result.scope assert 'files.content.write' in oauth_result.scope print(oauth_result.scope) # Printing for example except Exception as e: print('Error: %s' % (e,)) exit(1) with dropbox.Dropbox(oauth2_access_token=oauth_result.access_token, oauth2_access_token_expiration=oauth_result.expires_at, oauth2_refresh_token=oauth_result.refresh_token, app_key=APP_KEY, app_secret=APP_SECRET) as dbx: dbx.users_get_current_account() print("Successfully set up client!") dropbox-sdk-python-12.0.2/example/oauth/commandline-oauth.py000066400000000000000000000015231462737130500241110ustar00rootroot00000000000000#!/usr/bin/env python3 import dropbox from dropbox import DropboxOAuth2FlowNoRedirect ''' This example walks through a basic oauth flow using the existing long-lived token type Populate your app key and app secret in order to run this locally ''' APP_KEY = "" APP_SECRET = "" auth_flow = DropboxOAuth2FlowNoRedirect(APP_KEY, APP_SECRET) authorize_url = auth_flow.start() print("1. Go to: " + authorize_url) print("2. Click \"Allow\" (you might have to log in first).") print("3. Copy the authorization code.") auth_code = input("Enter the authorization code here: ").strip() try: oauth_result = auth_flow.finish(auth_code) except Exception as e: print('Error: %s' % (e,)) exit(1) with dropbox.Dropbox(oauth2_access_token=oauth_result.access_token) as dbx: dbx.users_get_current_account() print("Successfully set up client!") dropbox-sdk-python-12.0.2/example/updown.py000066400000000000000000000207071462737130500207060ustar00rootroot00000000000000"""Upload the contents of your Downloads folder to Dropbox. This is an example app for API v2. """ from __future__ import print_function import argparse import contextlib import datetime import os import six import sys import time import unicodedata if sys.version.startswith('2'): input = raw_input # noqa: E501,F821; pylint: disable=redefined-builtin,undefined-variable,useless-suppression import dropbox # OAuth2 access token. TODO: login etc. TOKEN = '' parser = argparse.ArgumentParser(description='Sync ~/Downloads to Dropbox') parser.add_argument('folder', nargs='?', default='Downloads', help='Folder name in your Dropbox') parser.add_argument('rootdir', nargs='?', default='~/Downloads', help='Local directory to upload') parser.add_argument('--token', default=TOKEN, help='Access token ' '(see https://www.dropbox.com/developers/apps)') parser.add_argument('--yes', '-y', action='store_true', help='Answer yes to all questions') parser.add_argument('--no', '-n', action='store_true', help='Answer no to all questions') parser.add_argument('--default', '-d', action='store_true', help='Take default answer on all questions') def main(): """Main program. Parse command line, then iterate over files and directories under rootdir and upload all files. Skips some temporary files and directories, and avoids duplicate uploads by comparing size and mtime with the server. """ args = parser.parse_args() if sum([bool(b) for b in (args.yes, args.no, args.default)]) > 1: print('At most one of --yes, --no, --default is allowed') sys.exit(2) if not args.token: print('--token is mandatory') sys.exit(2) folder = args.folder rootdir = os.path.expanduser(args.rootdir) print('Dropbox folder name:', folder) print('Local directory:', rootdir) if not os.path.exists(rootdir): print(rootdir, 'does not exist on your filesystem') sys.exit(1) elif not os.path.isdir(rootdir): print(rootdir, 'is not a folder on your filesystem') sys.exit(1) dbx = dropbox.Dropbox(args.token) for dn, dirs, files in os.walk(rootdir): subfolder = dn[len(rootdir):].strip(os.path.sep) listing = list_folder(dbx, folder, subfolder) print('Descending into', subfolder, '...') # First do all the files. for name in files: fullname = os.path.join(dn, name) if not isinstance(name, six.text_type): name = name.decode('utf-8') nname = unicodedata.normalize('NFC', name) if name.startswith('.'): print('Skipping dot file:', name) elif name.startswith('@') or name.endswith('~'): print('Skipping temporary file:', name) elif name.endswith('.pyc') or name.endswith('.pyo'): print('Skipping generated file:', name) elif nname in listing: md = listing[nname] mtime = os.path.getmtime(fullname) mtime_dt = datetime.datetime(*time.gmtime(mtime)[:6]) size = os.path.getsize(fullname) if (isinstance(md, dropbox.files.FileMetadata) and mtime_dt == md.client_modified and size == md.size): print(name, 'is already synced [stats match]') else: print(name, 'exists with different stats, downloading') res = download(dbx, folder, subfolder, name) with open(fullname) as f: data = f.read() if res == data: print(name, 'is already synced [content match]') else: print(name, 'has changed since last sync') if yesno('Refresh %s' % name, False, args): upload(dbx, fullname, folder, subfolder, name, overwrite=True) elif yesno('Upload %s' % name, True, args): upload(dbx, fullname, folder, subfolder, name) # Then choose which subdirectories to traverse. keep = [] for name in dirs: if name.startswith('.'): print('Skipping dot directory:', name) elif name.startswith('@') or name.endswith('~'): print('Skipping temporary directory:', name) elif name == '__pycache__': print('Skipping generated directory:', name) elif yesno('Descend into %s' % name, True, args): print('Keeping directory:', name) keep.append(name) else: print('OK, skipping directory:', name) dirs[:] = keep dbx.close() def list_folder(dbx, folder, subfolder): """List a folder. Return a dict mapping unicode filenames to FileMetadata|FolderMetadata entries. """ path = '/%s/%s' % (folder, subfolder.replace(os.path.sep, '/')) while '//' in path: path = path.replace('//', '/') path = path.rstrip('/') try: with stopwatch('list_folder'): res = dbx.files_list_folder(path) except dropbox.exceptions.ApiError as err: print('Folder listing failed for', path, '-- assumed empty:', err) return {} else: rv = {} for entry in res.entries: rv[entry.name] = entry return rv def download(dbx, folder, subfolder, name): """Download a file. Return the bytes of the file, or None if it doesn't exist. """ path = '/%s/%s/%s' % (folder, subfolder.replace(os.path.sep, '/'), name) while '//' in path: path = path.replace('//', '/') with stopwatch('download'): try: md, res = dbx.files_download(path) except dropbox.exceptions.HttpError as err: print('*** HTTP error', err) return None data = res.content print(len(data), 'bytes; md:', md) return data def upload(dbx, fullname, folder, subfolder, name, overwrite=False): """Upload a file. Return the request response, or None in case of error. """ path = '/%s/%s/%s' % (folder, subfolder.replace(os.path.sep, '/'), name) while '//' in path: path = path.replace('//', '/') mode = (dropbox.files.WriteMode.overwrite if overwrite else dropbox.files.WriteMode.add) mtime = os.path.getmtime(fullname) with open(fullname, 'rb') as f: data = f.read() with stopwatch('upload %d bytes' % len(data)): try: res = dbx.files_upload( data, path, mode, client_modified=datetime.datetime(*time.gmtime(mtime)[:6]), mute=True) except dropbox.exceptions.ApiError as err: print('*** API error', err) return None print('uploaded as', res.name.encode('utf8')) return res def yesno(message, default, args): """Handy helper function to ask a yes/no question. Command line arguments --yes or --no force the answer; --default to force the default answer. Otherwise a blank line returns the default, and answering y/yes or n/no returns True or False. Retry on unrecognized answer. Special answers: - q or quit exits the program - p or pdb invokes the debugger """ if args.default: print(message + '? [auto]', 'Y' if default else 'N') return default if args.yes: print(message + '? [auto] YES') return True if args.no: print(message + '? [auto] NO') return False if default: message += '? [Y/n] ' else: message += '? [N/y] ' while True: answer = input(message).strip().lower() if not answer: return default if answer in ('y', 'yes'): return True if answer in ('n', 'no'): return False if answer in ('q', 'quit'): print('Exit') raise SystemExit(0) if answer in ('p', 'pdb'): import pdb pdb.set_trace() print('Please answer YES or NO.') @contextlib.contextmanager def stopwatch(message): """Context manager to print how long a block of code took.""" t0 = time.time() try: yield finally: t1 = time.time() print('Total elapsed time for %s: %.3f' % (message, t1 - t0)) if __name__ == '__main__': main() dropbox-sdk-python-12.0.2/ez_setup.py000066400000000000000000000240741462737130500175760ustar00rootroot00000000000000#!/usr/bin/env python """Bootstrap setuptools installation To use setuptools in your package's setup.py, include this file in the same directory and add this to the top of your setup.py:: from ez_setup import use_setuptools use_setuptools() To require a specific version of setuptools, set a download mirror, or use an alternate download directory, simply supply the appropriate options to ``use_setuptools()``. This file can also be run as a script to install or upgrade setuptools. """ import os import shutil import sys import tempfile import zipfile import optparse import subprocess import platform import textwrap import contextlib from distutils import log try: from site import USER_SITE except ImportError: USER_SITE = None DEFAULT_VERSION = "3.1" DEFAULT_URL = "https://pypi.python.org/packages/source/s/setuptools/" def _python_cmd(*args): """ Return True if the command succeeded. """ args = (sys.executable,) + args return subprocess.call(args) == 0 def _install(archive_filename, install_args=()): with archive_context(archive_filename): # installing log.warn('Installing Setuptools') if not _python_cmd('setup.py', 'install', *install_args): log.warn('Something went wrong during the installation.') log.warn('See the error message above.') # exitcode will be 2 return 2 def _build_egg(egg, archive_filename, to_dir): with archive_context(archive_filename): # building an egg log.warn('Building a Setuptools egg in %s', to_dir) _python_cmd('setup.py', '-q', 'bdist_egg', '--dist-dir', to_dir) # returning the result log.warn(egg) if not os.path.exists(egg): raise IOError('Could not build the egg.') def get_zip_class(): """ Supplement ZipFile class to support context manager for Python 2.6 """ class ContextualZipFile(zipfile.ZipFile): def __enter__(self): return self def __exit__(self, type, value, traceback): self.close return zipfile.ZipFile if hasattr(zipfile.ZipFile, '__exit__') else \ ContextualZipFile @contextlib.contextmanager def archive_context(filename): # extracting the archive tmpdir = tempfile.mkdtemp() log.warn('Extracting in %s', tmpdir) old_wd = os.getcwd() try: os.chdir(tmpdir) with get_zip_class()(filename) as archive: archive.extractall() # going in the directory subdir = os.path.join(tmpdir, os.listdir(tmpdir)[0]) os.chdir(subdir) log.warn('Now working in %s', subdir) yield finally: os.chdir(old_wd) shutil.rmtree(tmpdir) def _do_download(version, download_base, to_dir, download_delay): egg = os.path.join(to_dir, 'setuptools-%s-py%d.%d.egg' % (version, sys.version_info[0], sys.version_info[1])) if not os.path.exists(egg): archive = download_setuptools(version, download_base, to_dir, download_delay) _build_egg(egg, archive, to_dir) sys.path.insert(0, egg) # Remove previously-imported pkg_resources if present (see # https://bitbucket.org/pypa/setuptools/pull-request/7/ for details). if 'pkg_resources' in sys.modules: del sys.modules['pkg_resources'] import setuptools setuptools.bootstrap_install_from = egg def use_setuptools(version=DEFAULT_VERSION, download_base=DEFAULT_URL, to_dir=os.curdir, download_delay=15): to_dir = os.path.abspath(to_dir) rep_modules = 'pkg_resources', 'setuptools' imported = set(sys.modules).intersection(rep_modules) try: import pkg_resources except ImportError: return _do_download(version, download_base, to_dir, download_delay) try: pkg_resources.require("setuptools>=" + version) return except pkg_resources.DistributionNotFound: return _do_download(version, download_base, to_dir, download_delay) except pkg_resources.VersionConflict as VC_err: if imported: msg = textwrap.dedent(""" The required version of setuptools (>={version}) is not available, and can't be installed while this script is running. Please install a more recent version first, using 'easy_install -U setuptools'. (Currently using {VC_err.args[0]!r}) """).format(VC_err=VC_err, version=version) sys.stderr.write(msg) sys.exit(2) # otherwise, reload ok del pkg_resources, sys.modules['pkg_resources'] return _do_download(version, download_base, to_dir, download_delay) def _clean_check(cmd, target): """ Run the command to download target. If the command fails, clean up before re-raising the error. """ try: subprocess.check_call(cmd) except subprocess.CalledProcessError: if os.access(target, os.F_OK): os.unlink(target) raise def download_file_powershell(url, target): """ Download the file at url to target using Powershell (which will validate trust). Raise an exception if the command cannot complete. """ target = os.path.abspath(target) cmd = [ 'powershell', '-Command', "(new-object System.Net.WebClient).DownloadFile(%(url)r, %(target)r)" % vars(), ] _clean_check(cmd, target) def has_powershell(): if platform.system() != 'Windows': return False cmd = ['powershell', '-Command', 'echo test'] devnull = open(os.path.devnull, 'wb') try: try: subprocess.check_call(cmd, stdout=devnull, stderr=devnull) except: return False finally: devnull.close() return True download_file_powershell.viable = has_powershell def download_file_curl(url, target): cmd = ['curl', url, '--silent', '--output', target] _clean_check(cmd, target) def has_curl(): cmd = ['curl', '--version'] devnull = open(os.path.devnull, 'wb') try: try: subprocess.check_call(cmd, stdout=devnull, stderr=devnull) except: return False finally: devnull.close() return True download_file_curl.viable = has_curl def download_file_wget(url, target): cmd = ['wget', url, '--quiet', '--output-document', target] _clean_check(cmd, target) def has_wget(): cmd = ['wget', '--version'] devnull = open(os.path.devnull, 'wb') try: try: subprocess.check_call(cmd, stdout=devnull, stderr=devnull) except: return False finally: devnull.close() return True download_file_wget.viable = has_wget def download_file_insecure(url, target): """ Use Python to download the file, even though it cannot authenticate the connection. """ try: from urllib.request import urlopen except ImportError: from urllib2 import urlopen src = dst = None try: src = urlopen(url) # Read/write all in one block, so we don't create a corrupt file # if the download is interrupted. data = src.read() dst = open(target, "wb") dst.write(data) finally: if src: src.close() if dst: dst.close() download_file_insecure.viable = lambda: True def get_best_downloader(): downloaders = [ download_file_powershell, download_file_curl, download_file_wget, download_file_insecure, ] for dl in downloaders: if dl.viable(): return dl def download_setuptools(version=DEFAULT_VERSION, download_base=DEFAULT_URL, to_dir=os.curdir, delay=15, downloader_factory=get_best_downloader): """ Download setuptools from a specified location and return its filename `version` should be a valid setuptools version number that is available as an egg for download under the `download_base` URL (which should end with a '/'). `to_dir` is the directory where the egg will be downloaded. `delay` is the number of seconds to pause before an actual download attempt. ``downloader_factory`` should be a function taking no arguments and returning a function for downloading a URL to a target. """ # making sure we use the absolute path to_dir = os.path.abspath(to_dir) zip_name = "setuptools-%s.zip" % version url = download_base + zip_name saveto = os.path.join(to_dir, zip_name) if not os.path.exists(saveto): # Avoid repeated downloads log.warn("Downloading %s", url) downloader = downloader_factory() downloader(url, saveto) return os.path.realpath(saveto) def _build_install_args(options): """ Build the arguments to 'python setup.py install' on the setuptools package """ return ['--user'] if options.user_install else [] def _parse_args(): """ Parse the command line for options """ parser = optparse.OptionParser() parser.add_option( '--user', dest='user_install', action='store_true', default=False, help='install in user site package (requires Python 2.6 or later)') parser.add_option( '--download-base', dest='download_base', metavar="URL", default=DEFAULT_URL, help='alternative URL from where to download the setuptools package') parser.add_option( '--insecure', dest='downloader_factory', action='store_const', const=lambda: download_file_insecure, default=get_best_downloader, help='Use internal, non-validating downloader' ) parser.add_option( '--version', help="Specify which version to download", default=DEFAULT_VERSION, ) options, args = parser.parse_args() # positional arguments are ignored return options def main(): """Install or upgrade setuptools and EasyInstall""" options = _parse_args() archive = download_setuptools( version=options.version, download_base=options.download_base, downloader_factory=options.downloader_factory, ) return _install(archive, _build_install_args(options)) if __name__ == '__main__': sys.exit(main()) dropbox-sdk-python-12.0.2/generate_base_client.py000077500000000000000000000046171462737130500220660ustar00rootroot00000000000000#!/usr/bin/env python from __future__ import absolute_import, division, print_function, unicode_literals import argparse import glob import os import subprocess import sys cmdline_desc = """\ Runs Stone to generate Python types and client for the Dropbox client. """ _cmdline_parser = argparse.ArgumentParser(description=cmdline_desc) _cmdline_parser.add_argument( '-v', '--verbose', action='store_true', help='Print debugging statements.', ) _cmdline_parser.add_argument( 'spec', nargs='*', type=str, help='Path to API specifications. Each must have a .stone extension.', ) def main(): """The entry point for the program.""" args = _cmdline_parser.parse_args() verbose = args.verbose if args.spec: specs = args.spec else: # If no specs were specified, default to the spec submodule. specs = glob.glob('spec/*.stone') # Arbitrary sorting specs.sort() specs = [os.path.join(os.getcwd(), s) for s in specs] dropbox_pkg_path = os.path.abspath( os.path.join(os.path.dirname(sys.argv[0]), 'dropbox')) if verbose: print('Dropbox package path: %s' % dropbox_pkg_path) if verbose: print('Generating Python types') subprocess.check_output( (['python', '-m', 'stone.cli', 'python_types', dropbox_pkg_path] + specs + ['-a', 'host', '-a', 'style', '-a', 'auth'] + ['--', '-r', 'dropbox.dropbox_client.Dropbox.{ns}_{route}', '-p', 'dropbox'])) if verbose: print('Generating Python client') o = subprocess.check_output( (['python', '-m', 'stone.cli', 'python_client', dropbox_pkg_path] + specs + ['-a', 'host', '-a', 'style', '-a', 'auth', '-a', 'scope'] + [ '--', '-w', 'user,app,noauth', '-m', 'base', '-c', 'DropboxBase', '-t', 'dropbox', '-a', 'scope' ])) if o: print('Output:', o) o = subprocess.check_output( (['python', '-m', 'stone.cli', 'python_client', dropbox_pkg_path] + specs + ['-a', 'host', '-a', 'style', '-a', 'auth', '-a', 'scope'] + [ '--', '-w', 'team', '-m', 'base_team', '-c', 'DropboxTeamBase', '-t', 'dropbox', '-a', 'scope' ])) if o: print('Output:', o) if __name__ == '__main__': main() dropbox-sdk-python-12.0.2/requirements.txt000066400000000000000000000003361462737130500206450ustar00rootroot00000000000000# Dependencies required for installation (keep in sync with setup.py) requests>=2.16.2 six >= 1.12.0 stone>=2,<3.3.3 # Other dependencies for development ply pytest pytest-runner==5.2.0 sphinx sphinx_rtd_theme twine wheel dropbox-sdk-python-12.0.2/scripts/000077500000000000000000000000001462737130500170465ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/scripts/release_note_generator.sh000066400000000000000000000007461462737130500241240ustar00rootroot00000000000000#!/bin/sh git fetch origin --tags last_version=$(git tag --sort v:refname | tail -n 2 | head -n 1) echo "Getting commit history since $last_version" num_commits=$(git rev-list --count $last_version..HEAD) echo "Found $num_commits commits since last revision" git_log=$(git log -n $num_commits --pretty="format:* %s %n") linked_log=$(echo "Release Notes: \n\n$git_log" | sed -e 's/#\([0-9]*\)/[#\1](https:\/\/github.com\/dropbox\/dropbox-sdk-python\/pull\/\1)/g') echo "\n\n$linked_log"dropbox-sdk-python-12.0.2/scripts/update_version.sh000077500000000000000000000016171462737130500224410ustar00rootroot00000000000000#!/bin/sh # The script is meant for SDK release on Github. You need write permission on https://github.com/dropbox/dropbox-sdk-python to run this script properly. if [ -z $1 ]; then echo "error: $0 needs a version number as argument."; exit 1 else set -ex NEW_VERSION=$1 git checkout main git reset --hard HEAD git checkout -b "tmp-release-${NEW_VERSION}" perl -pi -e "s/^__version__ = .*$/__version__ = '$1'/g" dropbox/dropbox_client.py perl -pi -e 's/(\?branch=)main$/\1\v'$1'/g ;' -e 's/(\?version=)latest$/\1\stable/g ;' -e 's/(\/en\/)latest(\/)$/\1\stable\2/g ;' -e 's/(\[Latest) (Documentation\])$/\1 Release \2/g ;' README.rst git add -u git commit -m "${NEW_VERSION} release" git tag "v${NEW_VERSION}" -m "${NEW_VERSION} release" git checkout main git branch -D "tmp-release-${NEW_VERSION}" git push origin git push origin --tags fi dropbox-sdk-python-12.0.2/setup.cfg000066400000000000000000000003561462737130500172040ustar00rootroot00000000000000# See http://doc.pytest.org/en/latest/goodpractices.html#integrating-with-setuptools-python-setup-py-test-pytest-runner [aliases] test=pytest [metadata] description_file=README.rst [tool:pytest] norecursedirs = .tox .venv .venv-* stone dropbox-sdk-python-12.0.2/setup.py000066400000000000000000000053131462737130500170730ustar00rootroot00000000000000# Don't import unicode_literals because of a bug in py2 setuptools # where package_data is expected to be str and not unicode. from __future__ import absolute_import, division, print_function import codecs import os import sys # Ensure setuptools is available try: from ez_setup import use_setuptools use_setuptools() except ImportError: # Try to use ez_setup, but if not, continue anyway. The import is known # to fail when installing from a tar.gz. print('Could not import ez_setup', file=sys.stderr) from setuptools import setup dbx_mod_path = os.path.join(os.path.dirname(__file__), 'dropbox/dropbox_client.py') line = '= "UNKNOWN"' for line in open(dbx_mod_path): if line.startswith('__version__'): break version = eval(line.split('=', 1)[1].strip()) # pylint: disable=eval-used install_reqs = [ 'requests>=2.16.2', 'six >= 1.12.0', 'stone>=2,<3.3.3', ] setup_requires = [ # Pin pytest-runner to 5.2.0, since 5.3.0 uses `find_namespaces` directive, not supported in # Python 2.7 'pytest-runner==5.2.0', ] # WARNING: This imposes limitations on test/requirements.txt such that the # full Pip syntax is not supported. See also # . test_reqs = [] with open('test/requirements.txt') as f: test_reqs += f.read().splitlines() with codecs.open('README.rst', encoding='utf-8') as f: README = f.read() dist = setup( name='dropbox', version=version, install_requires=install_reqs, setup_requires=setup_requires, tests_require=test_reqs, packages=['dropbox'], zip_safe=False, author_email='dev-platform@dropbox.com', author='Dropbox', description='Official Dropbox API Client', license='MIT License', long_description=README, url='http://www.dropbox.com/developers', project_urls={ 'Source': 'https://github.com/dropbox/dropbox-sdk-python', }, # From classifiers=[ 'Development Status :: 5 - Production/Stable', 'Intended Audience :: Developers', 'License :: OSI Approved :: MIT License', 'Operating System :: OS Independent', 'Programming Language :: Python', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: Implementation :: CPython', 'Programming Language :: Python :: Implementation :: PyPy', 'Topic :: Software Development :: Libraries :: Python Modules', ], ) dropbox-sdk-python-12.0.2/spec/000077500000000000000000000000001462737130500163115ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/test/000077500000000000000000000000001462737130500163365ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/test/fixtures/000077500000000000000000000000001462737130500202075ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/test/fixtures/Costa Rican Frog.jpg000066400000000000000000012645111462737130500236670ustar00rootroot00000000000000JFIFHHC   C F!1AQ"aq2#B R3$b Cr4S%D B !1A"Qaq2#BR$3b rC4c ?If-}žX&($7@,@-s<≲^'wKƃCNTwP:4o~jwqZM;]HHnj{\r9!s;v8 *n.ڶQw+pPu}űA70yAYt74UPM%lr`tq<"ʧ#hm7ESQΈ\Un΢em,5JG"cJ"3[e =F_TMD }l(@d`Ccoب[Y8삒)Wf+ۍ50H ʴ$= ۦb5 5[>:Q6Ow݇C}Hp_itk 1_B hBTuu1xpvv n!4*>l]eM'kﹽuli&JeRˤw}T`fV p=wK(݃Jz ^1ĞxVCeZˊIU;x{N-*lXF^ FH;~}gJHQW[t$݄ $HK k!7N6 F{D<VxηIoq'<$l9Y`?yhDd[o}$k?.Ɏ7e_#I%᰹8)}f I !t bA)B#2663H܀6% K &3:Y_k+`!Y1k0[eD|F`̏7x9IgX\a5-DNw[I عӧ_e-6Mci ?DRos,7o<5 (IXw۹mQ9MԐ@ ]o ^;Ll $I;^!kŦt_2J`y[ܷlZc9SA-EAZR`#S3kũS ., HM}4:xJi>"Kd zwmq08w򘪣']9ZcV1*2_IVݔ\2|5aՐe1X&zm^BK$'Ucӑ(3*0:I{txrhv5"[Fn0*XSa@}®8ToRX co Tt+oZ@!E m)m')-r QoLSZ`rPMM'M6:z`EۊƋmϰg/+NX @sG֞T>sQpL<Ñܟ;]xWVeFm.{eMgM҃VʽRъ!"ݢRo_8,hC}oӡ$%0ご rxcrw=oA }$.Wnz|F~q`u7)E4j7odK+hR-`6n4Ah =Xz(hh:Wa AhnzgKl aPP'iH{)6Zy ac*BoskGd;^?m8r" M"+~8<9 d4) |z_;sIg,jd `W`'X XCI[[>. ~0߲cZ0*"g#(/^JhB*]D&3,f p٬Ǒܹ`دT4Ϟv io=WS|~9)-~h '}=N^IE3L4 .:]FE5< ku> sfxblt9)sWev2jvem!M cg_3r˟?^KF \v>/kg#ܐI[Zm*Fm8 `H]T_{w]9GO-žL0;ӺQm e{ ɱh{(wo&Bv$o˕u<8L eT!Cӷ\M_&1(y(,vAJAuc[SH"Tvk#Ee%ըs5rVE ìZi6u#ԬBtƫO[B8ƬDzJv-kw7C Yac{_X2n&jxtS}:O==mH| [%⌫?TxT2,ǜM^3iXC΄iG{طւ)dVҊ=={%^+AOF5 #,$VwIŸUpEg(UY0; (?ɴ㗌{(:9*6k^`{ʽQTJ耛l?m C`ߛE:x#Hkia7p"X&I0 c#~\ B\~D&B kl!k^,eЧpָ߯,9,rnQh-;Xߟl4[9Gr'ғl0?E3KZ6 ޖÚ,asO4NUUSqkA?< N-Kc)`G3 +MGCHd`n6 YAJ y}o\7Lڕ%aȋeA 왒1fHMC! &J{Qy?DR [+u`V7<&K!]d}1`;UuOs"Hr-9Kl9W.,d&]Mӵ:;%2k7P*PV נwNpjA`EQXG0_J*^!cܓ˟N(veVcf;~FO[\Z9|%ArduO"Za/;L5![h84YRoN7Jkkn-{TM0ԱI7#c5 2jz{p- jTm޿,!tB?c^!<d>c #cG67 8%B0ok߿(`%"h`e7 zaۀ-11&_}߁q Lcu.E#0EL ^߶ oKš`vz-̣d9K] =O%)͵*66KIY{>j^S:{Xߧo~`v,psFSLAcv{TZM\Jzu}ZvA{֐xM ;0cM!@b[bHwm6]INkAlyKD2]$H3tkLOp9CKtpjuTm|/=Ud7eBnv]FG VH.."ԁYL]hO2UX485* }>"FkUmVl=LMvQ 4R+1k_{wl! D!? Q@lpEh߻60UR%U1;5n ) T||Ǵ Ͱh]! dV}7\ w(`B6I[a,e$(V to}mqYe4ap$t&6Ii!G#؊D=W;܅XӗT8FF}-ۯ^Y#pxa!66=8!pV@  R\9% Cq?Glqw ^E*@:v.Ak#(A#& [wgTRgPyOH-;ǷeVBܴ•Y=b mCVM?E=c24XC܋݊v;RMIy6cӇp7w "<9.a _0/xLvцPS2<(Qɯb\(f&bMǛu@9DHҁ}2G} pNy*ʳ22QbbY(&+\M%Dw.z-h% њ$P؎}vSCeBw_N_}7c~gàQeiLd7^@GavQam`^3(!}0tvqf#}-ɢ?9@*uSu{ӷEd \ ?n|SNɨ:H:E˟`}Hڮe{VۯuToIRDZ_$:hI e_`Poj;j:*ƈ:GE_-Cbp$|Wkn_$p4 :RjRu7gߧ=Ԧ!(.6ۗPvI,K!Uk~m這d5>̣Q#.xJY?$RVz}z`)E\p E;=1 yv{mj5dBǘ;Gq6nIXQ˩@6n65NM-5$ryfV|v4R{b?}q)Su!9 n#s e(!fB Yh|1!K70!QDĻA߈v( t'sYvLN# T~!(7ٱiֿa{ߦ5{je:Jۥm8^™ T[Z8<ߜMQ*@q\.GPQ+W HM+ s\<'DbD'sɇ)4ju )̟$4a62PH$Fı$\%->quͺjF*RĨ7 GaȻpUeet v@RhmhvU}~n’M$ac7=A10J'xzp t-ӵq8nmJI$7 +MyrMb$cEwlֽr?_ FQ51{;ȷWtT5m}'`Emw!L-,%9֕fx5z~6JmalY$z&x^;䭋K] oR {UI3}A |(W6TM#ݽÖ&J[J0Eu?:@@1!PZBzdSۯQ)aTy`67ł`.Į;)9U#7eP,1N9||$NT4X-ۙuڑǛL8aÅ/5"Ѫ ~GAKI acIn/m};"{d\#_r\( r)亅ߦ<(J@k82XD4PҪH !Y`)[|mēA~WZ=0u!i6uanOoRȳyoYc/<̏ߌF7I2ingv7/p:~&7o~}90쁄.y(Op[~a%8?LXEaap-wpvJBDm~[\X2p02[ܰ"! Mʾ%épKP <Js64e#>} M "=`w〤67҅[ߗF. ,Y_ k-:yɵ1]YMD^ Ήm7W86FU恽ȸƋsq+оUabj4Bfb [l]Ɛq‘*_bSHOǓ*}B<ٍf2 8Mp ZM~x\CI];+A$P[ z8TQ}ŠHDyr6JSeܨr6Ýz9 "vJݯ`/YGvi# 9IRǹ4jxj$utJ QAqmS\Ѵ }'44:YΛ\ _"i]${(v7<|G!IbU!  b;ܰ$l^ 2x&v ,jK$cn9aAnD%Ⱥ.K/f큺00}!>$eͷۮ aMu+n(Hk[Bsn)2ǭZH([% ^)bU~=1Bgվ6aM(.ǀ0V `.d >HeVۗ8<559~c|-xT9=j.xdrMxiI$6!kpovEq۔τr @lBۯϦq. Ҫy@m{ľ7"pNٴ:$ \Z( yEȗ pl EeVTeH߯ DKovO€@[%$PECr%]v~gk|E™$$ PuT.NeZ8c neZ樕5~"B\{|KGDZWp؂H;}vŠ/jdU[؛~؂;(o?cB_-Մ[t˒V{m { )`Hۿ]荱COust2f[y:yy;` ]DeEu4EA5qQ5صUcHD[ %#I|,e{aܘ\t,"u5-w``yoj'/d,n (m .F퇴#zQBu{r%ӑ]yJM5UE#_F Ź,2HZV;%nRJb4bIqu]8. V }(3߰#߅7RN$4Vs9 v8s`&#[y9Ɣ;'j$$Ek8TIHu=7HHyn5z(>pL2xA5>@H]({Au <-wfO[fTC~"yR*ji" 4v^&KƵ0щVAP$0eRd  xjQ 7`8(}טH`y46mklmanX(m] 0UM@cc)쑆%wSa~Xa8$CO$yk7f|TVY#/(8*X{!(a0@A[ ߥ m5ήP%YUg$>\nmw,h /J]9__!dkRd`GS`iX26 #bBslId5N8J`-$!yH#rp&6k(9w緿X 5aO 9'Oc)'kq0CDXSap8 K}9a2X>.hAk >K[ l?"?^6[q9X?n_!kl3qD.R䞷TPA'ױk}|qiW3~_[`[TB텹&$ 9<+ yۄD F@F7mk.sw v?|<4-ܬ=8R=%v| $^,H5azm0bnFĔknA77݆7p8@ )ߵaP|#\؟nš8SNMA@bM:xqͳaق,l yF@$Xn.6>u.5rxP-cӗ.?vV- y`|"&;jX{^__, 9.m&-X&c^'&P84z? n޸pi#g$*(rW.HDk xc, ߮ ." %m$g")Mw PF9[*hj.<ձXv~א"T b|y*&Yy>Iu8'AADbt!hYo` G(9YYG[rSiu)2nPzs.{XXɺ; }.B\f{iOYBx/-Oܮ/`Vz?=툐D+#+7.|W< /S f{ X[_pLZǢkvqs25-q&[D AZ|y4z!sI KGYg־kBdYESKR$PWUů0֖DgbjEPpU,WQ2G® aly8E&ܙ(?RIy';Mnm6ޛPI>-u8mҳBqݣApql7Hthj"X,B؋}ww<.-?CMc* ipLE4rd, ?:ͧYWNQtܓQ*ҤoU">x&LIQRGbH.ln kav^W)C}?l8۲)mhia`ӗ k;;|a\$.3r+m$$D&jKHg\o `-T7&_Wa,±[ 6aĵȹ  6*l1G>lsE.$Z@VxrKTm\-|\.\&s^޾AjAk17Vy{b_`pl ^ND$TsJsm-;q| o[pr-yP"*i़S!daabyeSfBX.Оmą]ԍF`wFG)AnAmkiYD 6m;|0Wq$màGcn털4 N?[\)Ia3Z円 d^ں$$nMH{bG K*rE6Vl*8"#r0U)-l̯=icf7"8˒eebӵ4r?/b.uo l7\KV6 `|?0-q27?*K "#A`r#e`XN02Es^(j;)Uo0-5Riñ-HvsNI!]潬qcvg>heSD—kAF/ {@UB:Q߾.FI&`-8Q !n$ Ep-#- m%1qdn-й,ch[&/ۮ8;OpLL96o(nb܌0N:PG%6HP<ݻsT4VSB%jEZLHydSVtsۦdOS#n؊7aA%,o}[m OUYT+r޻~*]ݷ7<%l=`ACgU-R,UZX }p% j)+$؇2HV?jm4y<@`]fO;NзW.5BH z[5c1vSPÚ KFc"Rycq–ь:`ڑ bWDUiY:HeoV;GhXk_GZbH_+S-) hT#" =61.O疀GShJ(m@۾߾$_;PUHHU!lۨ5۰i$S,'GPX2ӱ0hʀG){0+mH#q# jEUUВ_w(7~HAT`Uu6܏oX+zvU")[m򟇮8: B̍+`vPFXK;`" o\,/`G*U=6x",I;r7V$ 1 }{2Fr}qFK[^PsFpyo[B(Rb-H5P$i @>Lف5l04pxE |$׻( NӦ`v]7G/eHʖy; @=!X8؟Y|(pϐ`vۿaKh%:4f.AbQ  G_k~}PTsxnc=B $o矯iLӒBɵ/|*Z'BFs`.Tok r5KixMd6=m'D5}/|+@lvmG5_U^PBid"??%М'Â9\[ w* .F~c%*F8}>gSLWuو ]J*Ey>Y]$E>k_/( Fmr~!"?]}Η^-S~!]8m.Q!Tq{p,t旈)QgUnm1bIOe a͎dZNNֹpIbKQGwnSf&aeò1Bs?Rl" C( ϧ: .sN(I{\)q`h9!2ѵ(zJZˢ!-|.$`!#cz_sC7PBP B7IP1NH7!*XNIS<|CӔ[BF?/$**kAbwmD CI+" G_r5Pv# _^+U%.Tri-wvꤰ ͓qjV9è<;y,Af,<ÆF&24]H4ҘeP+阂zwˑҬ6[  ѕ$kqۿN4QW :?Lk XؑȎsg&CR[A2<]%;/!-0XI^HM|fp Ml@D =)]Qdt[بt O3a˾ Ƿ[b-þ 6~&~|&:)G u|`!^YK.H~bLNm25Qu/ * jf׸6< w HAI\yU`װr8F^kۋ{ÚF!0yCV욥%M*Zr:_D08-Q)k|4F=Vd}#![a1#G+W?o)64t6xbl Gny}m :79** O kj]7 yxF%dUySװ;zt4Z]N*)/$:]~V_p+<ˡ1&<1 ͢ts5E7:RhMJ, Ci̎v5y8pHoG|sqʍ4ȁ9W*E?Qߋebab{]T2@ }'R6<~|N--cMDBui n- aH iR$R ACm6r5i>" n Xszvm$Ħ (9+r\(C{qQ! .,l-.,BX$_~]~U"ޣqlr@ V߉*m. f]MI c}7.Xk,Be'QPKX_q|H>\卋2 n~_]qԤ ;K M-@cf!U>&ܼ1 }'5`1+b W6x7"FN؅:s'X*e7UȌr&O! XsOC%N[anyK0r/,ƚHH9YձBNo&k}8Iۮ7M<#SU/*U&&M=:M)V)k5_~Gu/BM pbj˩@h&vf6=O[zL=4ԗ sg5(EAal*JrF)F%LolfR^]#@# 1. 6ŵw q8P虖$i$F1{c*=`$ c&N\yH1 fc1`tBO"/!.LHMؘ‘9sr\&Lm:HTlB3YG;rz;:V d=\MivIJUm}#8I\lOClwX14wPcG-:㌘Sds+Y@{8!i -061t0x~hpWI6S H._;sw+/e%uX}uғ@e2KpU=,-aml L2iE6|KrU{=>XhʳbdJ\e3p'(yR:Cy`H )Pc{߾)l16q(p)vr{c[M_=H};i,A– `^ǟL3Փ hxCmIsUôj&9pź@ZVW ]ҭ˓ŊK{ {b'^r*h mKA9Wui)ZlE;{I&:ȲP"`,)cJF#cmגCbr!px!$Bܛܞxc]a*N,$%f^cP/S(po{7c9۔XYʢ4"m[+ ~Q).|l";X[sadW(iBpYJlw|>Z` r5c!y[@\40VW6bCϪI`X macc^_@nsXkVzz)]GkrmeSVhWn0u}!0*ڍ'v-_-Fc}~q_g[`*&mK4$XWǢP$J{$uLU^y{Nv*$T~3;]0?`&bsSi <|Lo  y^#.BHe:0zeF`Ϸ, 9L4&@j[ZlAo,cX# M97:—R4׽|񰽹 UZx` D$~c{_1Dž-B-kms#]VME,` >4e%#Lby`.}#p("ч>fr C_wgWM>Xn09@6-=8d`oӷ1מ,F6EPK+P03@׶@Ch0ֈEQ#Zӟ\y_M1NB[fIٳ ENm;jpӐ2xF-i ia-m> p!l‚6x.vbMT+(ܙ [e y+]nD$5{(I-+E N*.=G}>*f0.GA'#t#8Ç>TT< H-Mm<6پP/i"E#{.#.c^Y}=ǀ;Gd ͈ޗ841Om(l:xLgGw206Mij%@Ga iI%,6)°4A6˷H9{}G M)1kޜ|vl)u vopR|lBkzOtAeTIebuho`#ۨ6!̤FԻ)|{!(3uaveGe oȊC)`6xzҀBP]bd`:~$jφɵsk_I`^_)HbTHmqĨ r4 >d.L*]ž;F@ \[V a@I[{z~S dWRى%^%cK\@ ZI-4de0J8I$>gx=)XH`mV1mX Z6ֹݾHҮ7~$YL^q_<@yW_*IRT Hp,31~[؛Nè mhTwb@Sɠ:@!seݔ4EO c4a4l'Yz|eވCR;HQ2m@Wqr >+t,e]VXoCI9SnoYDH$0?ث6;R%[;&x'&K^ŗL:Vd+5DSt=*>}O7PQz{|h3QBK{^a16fF{K@i(*d a[hnS5$Zm q< 0RFs$/!+E6; Ӑ=sn@ɽǯ\9]gax+ t:`]P\tN#g 6abKƒ#8c[Z]VQ"Rl,<;l>ZM`m_Gk q#irLƺciv*$ֱsEl4N{OvU?3bE\rϒǕsKWEg|i%O^[]g_76PGYAH-7$0m 9 xAvFanw8-&8CF"vO}wA&z^yM'`vF5#kPf+pzFvKSgH7>cc軥x#1ҁo t&6ZYߑ=|@$7&#t-4i;Kao&dfG\`-.ܻqεzv{靈@!DŽ4Ak`GwԒFIm_/ $ܖRm&k~/I D&JmE. FE;BQ`A)#؁51{!Y<ΊP\os㶃a0b[!<w9P<$gdmu ([Js$oq5ݔ^SYI jrlWswpi)_C` u) wP_}) YB _p;wqJC龛n_ 7k,?ԿbwvF)cSrk.ǚJ .,w`-Q !_kA;%v",W\nYXOHpWjhqMvN{L ԧ9-A֢hxىG簷,Tr*A-͉\\X(rhb*^ߟg-FT[l9wg!9k,bs)?\aҌ΢ e?# !R@S_;"sS-@6ծ{#Vn4/ %H ${GJ=neSMAAK5MdƐfP% );Ru:Ʊw_mYu)euFVcde؂vbmzcM- ߅5iU(H/F]FuqXkB5 {~&TO.]ͅCO0ۡ{9WX}}EI-D(sWi>{8_UW\_!tGOvV2DL8֊"$%L YVA1ea. CXhk$ lci^qo\Ef;XRy5toͶW3/74o$~rcO>aθ&i O DcR;⎥?ҝ¾^~ ꭭gNۻ~▞/^"iK4r A)n\Λilb7|{@3Q<4{TZQ uB*Fc]z|9?> ~C1wh<= VT _D8=׾=s3vuGIG U4TRfra5+#sk_h> *YùY\<`'DjJ@ߟݔ%E [@!traB |(je6##noY4oNG rz⾣JDŽ2F .l#PGYJʼ߽ܔ9xB>S+xw] ܬ <WFfR%lWpM?%]ÚQ8t@F)7zz2dNʉu|/h|02zO#Jnn|(/Œp. ~hp96=1 v^)^>E[si)Ńi]EK|˜Ef~'٘Yy}pB}T d u M"OtB[? "RFlu\&ҞAmGPSݎ-J6뎢I:㵍t פO>{kY7$kq"* w\0XIRQU=˜O!!Xy }Oks(Su-lv;{oZl [ ໦^Q Xm{n\T+pVE;r;|0+RFj ̅J6,'`ؒv,wckk[݈]EfF'9nX68^ثyO˶%rΒK<?bI\ #M;UC\[܇\rK 1K7 vBME՗W"m~c)@Y@7ԛmqu g^Ѭ .#7F?a ZU [mpVz) uFm;DM+]HZ1.a맹kigi8άH&?)I{MS +=J,n/qۗ,9R,0&nd[>&o졭RU`Zۤaco`YP++l# kBEb8`~02@[G٧*,Q|Qt˷ #r;p }0Ie ks:6$p/a,Yu\9 _TFOfțm ՠ4x 1rw_4tf _6_l ]Q#Fa1%2Lk=9`a A5)o6R|3HrE.؛ Dt c9 cm!gRK7kl{oiF{ÑLOtJI;~^w e%ܝC~dX}_rW|ˬ{7z`<%9B$ ,HxjPk۟LCd-{! ƒa>ĕkG;}?\pgpQ,RKX7PȲ U@9K.%?OWSN ?逓N 8el^\AU^vVGVtJ8]wm8\RW{c9qys~,iAͮj*/P\ism%NJyPG{%$gefPP0`á醵Knֳj`}zmLNG$; V]4qKWbApOQjJ” WSQ:n\ qw5{/iLIDiTdٔj5Q٢b >e|wG9z<ځV%m12Gw1(ge V_ y-e}9+DşS~%ejj9țlygNtT_u\Ü\g}!ɳ<(rΣq| KjўwoU@Q ~ks<0ʫJ з!RH~u>Xw>DYu-[6>U369rۦ16`9^S@eno匝wK%TiAkrÙPg4D a˿_ěb7HE4s!3D%#6Vb4N{wP{qRCQy~G>aFс0ԅ2;t^UqbXjrO)$(I#C\ԇs\|5>=ˈ/\Z8O5!<`B%Xm.; @,r2R ,I|׾9Cl/35rAFvWIV"|rVu&BA Wn:!nKmEFGW*( w2< 6=puψaI%zHfo^@#G#Cp.o)/`)(w؎CAYX sϠXVS~@+e~c[(&1@d Nj!qɠn/q~i<5a$G_/m/(F{؋[B(_1}cYGܔ}H&PFǷnx=ZHTylSܧqJ6+;߁ǜ,Qfn\N1 5 @ }==%rn3\Qs]/j]EAi7V܀nB[ͭ;ҀK)6'' J nCE֓k$ Bq pvĎ-(.mAm Ѥj#o_ J tn6 6]2msň-4Pl,Mqa #a du>GGaٍ?]$5ڙUTwt'PMf2[S[mtۧo ͡E!K,koߪ4v`_+$.\vWE<>,{߁F-sfe!#!sZ< o#.װ<~=^8MTY{vۗ VxD\Իi>S<6? Q >\qkp 9d0[\($|}>l`7`huWwվ ^܂;'Du:ԛ-.X:q'zOtnǢ3>$R+}}SN`$DnxܓDo꿨G`^V>0 Ƚۋc֟pc _?NΫyh0WTxr:k*A<9cYf_γ_ԾZhY) ہyug54%Wy/  QY o_\_` Óiu7hFnt.1!<) I!JHL ؁ \i5++ ,$bĪE^JC(%q$ehaF&Xٴǿ*JѬ~$y_vN֎y#fmo,4zY߱ceTSS^Q(fvC;xv\;YEP,T{!5!#p6?+~$`Ijd =g|7, 4B\**b-eE.ϖ6 M>3[AQ!zD`4 -%"slUx QF8c{z:1@a!Y,I+ѻX^E  ;GFTRO@\oq~4 $ GI)ks׷0Lp \rkKvǹ,^yO(Or{FtI~w/dB{ p0a.YO)W+ParKͬLbZ& nxP7pBn~탔4'~9.(ncM!J(={o-D{0%sQ̗@NRfxSt┴uT2 2`Hp48Rǡu67LJxJ8VDk  B}DD1*5Zc,qF &UFb Bum8gJw{+I$_+JBZ,@ rWk C:7r[b )ҥ0yciYKӤ\1;i،a ȦZ}{ {"F)  _W9\(旆&tߕ#mpI1i[v{%6p,i=*<-Q7ʆn؞WqjD ̽zSIʊ$8_2\X (ke筏\.H{&EX(Ld^cWQ9t-986iu'Ǧ3g8 @eW:'P , 1. g d:ln-k_YItvmKFH.5>,X@' 0B$Fh !kXh}V6c ^JYn_ka\CsTuDI%¡f ~ ̗.TdxelNb_Ò48|+Ye{kF 76_p9Np&LJ !oyI@<-")%wh姄os  =MyY,B+wSE#bxI>_0;Z=}u գc,=qxm_9(c)``JޣuNFɹp Ly_F X[s>D28XIer}F^OʅucHm†JBw0lRȫeB6;s TMl"s"ïu8)ߚI;k>v7S:B@qskۮ0l&fypџ5OHpR)+/+ t o-D<$YH79Rc7`rN+mW3}lgɧx9t,-OQOXȌl tѮ꜑pǧԍ\bg[JQ.p&ʆrԻo㱷\9VDU_:}eC|5&7!"zN1|k}pv٫[itYG&\L"ǭ.T-rA`폖_ mζ/$dǺ߹#qO ey]zG"T$X(æԴx ?pxim-¹)feO_Dfg2S%#m i/y`4+HeYU]q9vuK3Vd=4pIծwE,Yw~9=Iei32ܻ>rSI4qLY-mٖںcG\a-M\t3ԟl7fi-e>YZn{ֱ5|L7J[ kGS\CAfy\4A%Nc,ӊov(P7]EIFJ=*Εpga-VOwIpܹVYOJqWhիTi0:Cnէ<\YVG?u_[n*Og= x xl] 9~ҧ#<WŁ M-Ou*L’xOH =։<𿩟lX͂;eqѢfhP/KFz},ԷAn2X\~VٿzWTLԠ%oKbf9(8^d' ďQӶpr 2VU$qckzynFV\r3El֧̩7ەK#xY>e4܋GJ9M#*X苡s{_bV$C,l\1?19LBFVS}?,7yv>JGkA2<7l-ʼ&L8Ye;BhvmJpvhq.xLD5k=Qײ繶[FerbUI[O[ eM3RS*n . ]9 #pHsΔwK- a%0_ED-AǸL<˴XH^LlPTnnLw0b8[$" jV/{ģ=p,$IMZlu|pc q@7UPd$ t_<T`FFŖm?EeѰ~wせNFWI ]o>$lіRAW=rM%,iŦ^BEP@ 1*pIBԓ4 k^gw7hn*6Ja(:EӵDm4PCNc {e-}};d}[i}5(HOs8?[Gd}UЮ_H%ح;1iёpЄXa$5?#yC`Y۝q K *.-u=}?I@pOmwSǙsձD <=qSɤ!qqDIRX No1 vJi`0@mآ"Ry":RK=?"(سcJͽKH0–5S`AXܾ|)KK[VݸU9OY͹^޸Alᤍmۯ5 ht(?ԲC\` }{v(U3Po('lfe(YJwp&w h[ce@PA#co&6Ny܃~FnŲqxQK.@`wZar].t ؃bw^6$tJ['&IKxWp/bm' )@K)bl+3i,@ ~GAcrvS5={հIGI:"I;ײ7 ,+o BK'ʥZA0/[EQ@# *Tė0${X|ϰ 4YxسN6YHYI*3͠ړg(mpwxZw[ҖXH 5;4rZ{ X, {UN@YCf7߷?LRD`*Ƈd.ژ5?OrhMPWz>(},DT{~xt;NG MN]nW{ntݑA nxOflBQ Š@E܃q&x`]j|m۶ LNTB3b>X(COxbGCP6M:(pN7~EyNG%øfw0Hʂ;}ɤߋ?,uP]ƍ&0Dmd[ؼ'N|,'5G+K!@,؎|.*ꐬ2r,0FwAےB  h̥"6 X?`lv6[ /' ŏC==|Ș%tsJ461[d[u2 !@b 6m#.\(*&q cvv|UA*X#\~;8+2˪l/s'K>|~Mu?go~}fm1v>Kgd<Y9ueRX(Pyj%ߵ<ܲɸ>e~ipp )e/i&&`>-F>eA$MeCI6uOKy y){G{IͅɵsWV)qQSQ#8%ͨ2<[/IQb_PtgS}c=e(# X2:\ێr~#7hi$c*DZ72XD58ot>$vRqiQW NYL@t??1 "G`r>}V1n^?E ܋(ɳ ʍեZWWWqCInb,t[fr$@DNTSqM}M^cIENϗ+@bDklsw#6n6#W/S=eL9R w.UJr}g"k'̾61wY))k?mOfyOVA='/ÎOxBsepl|+d} q 䬵1$H9gָ%e4yE<;kY";) @K f{m|5<wX &5 +9_`[\\SH{a{l hHhV-ȷ{svqMiS'tkO/kP1U,х@[f<sI2X؃ D`1c #(Gvnjuv=0ؤwd'Df܂ ͽml;x9 lx' eQI9mu+g.B8n~[pbHS,U ~8uʍ$>֎$3`BkX_LC+[k xT qPgn~U|yF[*)~=xܨ rۗ#KB[\C,4+k`-~޽]Ugi Z*ؤ!gm¼=R1OgU!Hkv-`SE%!Aߞ1yI\! |+~`||B0obt #alEƞC.qs-ٰSN؛'!%E[ $ݒ#ylqqSlKz`k6lnq;nQ"^կV\@^Pwѷ-o[we &m}ðT㔴 mEE?\Ϊ*I`Kߟ݅JJxX^܍q7yT# |30TW)[[cz5PyK ðK*m~}%P]ϑqa^H$bh`,F;OAĄ]n (ߗnggPw>AFy2\[{Z=:$*#< h@[bUJFo/X(֐I=|qVM%ͧܭ<`$DF2FFˆT䄁@+[O`(q/3JHfs.+)C?Ӓ2'ŧG\O -+Y=1$5DXIeD cmwPe#FONHFAd p2hڈBm{\"X'*u#ՏQ{[twyGI#RvLk&=ZV$nF\k"B`@^S0 Wqⳋ-K@$2JziA#{#m{o.}9A5ېmW6=dw\\rTTBAA!j&FVb+# pO[o T0y0 bzN~<(q?/%JΣV}g9 "ܭ oМb) KW[E/xm< !p |I@?ܝZPRK^1 L O\BDV<"4R!$^GMdi"Hߟa?fYkuNef ^5Ux}YQe'>UHI,wŚC2IO,O UfOQX!IL$-r+^$L{k#O>/1R!a[6Tbмu&J66=[Ql#owfn5)r! fD[MUW&XPC4 t3#W۫)v3RURfI-b,^˪h]o ~5HӽSݠHWNx?5̸fAİ^*Юbv2.]7z9kp/berOTV&K Y6bF%c84w|$,륜.i%CZCcڌN[1ض4˱co,7!NmeEt/ i}+q7ϳ9k},H N9AbHvFDS:WU|/lIQ__WOgS9G fҘ2By8=$4Nsh 7^i=A4xM 漉*Pymdr 7]gh4PJ!YM%;oǞ~H*=;3;ƤiVXD 'm;rʓ)`Vuc PL l-w IJڼn;s?,yyi }za}Q#yKc9R}Ha l}?_

PuxE)wF4fnlAaF`N,G(TYI;N׫=av 'Ky !5By,qʚ@m/r|1 V*4o*6}_fvSby9AOE4čs  F,ee-mV~%w| ͙, ZW0S%f" a>C_$`'DbT"v{ <4qv:Mk4- zi7!ò3yE'2ДX-[RXoLwoJ#e7M "o :#t (Akw\1։k,9]!eCITzl/k]kVS *חm#*76kn!4Bo$i=\ D$leIo#COY"?/l!ZW `ZWNı-Whk(RRq1`3==Ӹa[(X?]M+l%:xRm_O(:iv-a) i:N\ Ÿ na "b l,:;yµ Z6$X@ŌoH(Ш.#'v’m}|,< B򯙐!í,3% f7[XߞB"EckEF۝ߧvJ6ОS?CE[Y3EQltͫBI 55㊎p$^IE 3<o2HIϕ=VbJ($o{ande*85i mN:#hRʩT9[t™㆜%}Im-z%"i5N_Hn\ENƘu/^cGv AW)ȓ)(xů)=.48QS:B1br~` p2:% |ޖ`dHA<'@rl0 "\O6X+0oƼPdA=fefB;^~1%1 CZ |;${|C0d FCqk>Sb03X|VknD[ y$Q0;^{n}$D,K!xݏſ;Emk  _QoL$r옒eF}z`dp6BE:JcȒ۰r^Q-V"3s{7Lclr*&3@9n?nclYc*M!gYUJ=<0] gӇüG$pGQǭ?|a: Q(%TJf[Oߧ`8H䥑q"{yy-20ܫ惜aFTܞ1/ *J=ޞ(mwYP!M|e,T(v!kO a=Rc#Lk&y q/0H#+~ƻ jr Wk.w%:]TmVPTubM}~[j$.܇|M(~>v%BQn̑@Ű֥dm\0cJIkQ5`@w+棗 XQIBo˝~X]!p"Cnny|1ɖ.'C,`Lp#R.-a{1k{6 ?v% )A 69c# ѥICA8E*^C߅2=V@ b69d'[k_LEzYM܍Ԑ9El,*6 z(ɧ7>:']!">$_,I#rZGd(t! Pw)WRTc<&a7A5RdI:VÕߙ%md!7GLswb5b JvP$qpl.k.K꒱MH; HmIrQ[]sry^ xc@C7c{.?f}eJ凞$ܜex]x-SB߈%d@U@ڹ[apİTm<`Hۯ K@ǵ }o2;9w iIrʍ ]<>x1ՄNu&XbF\=eCD(Ø]oʄ6nn,mよ= v:Xnj)fNQm2,-{8ȴ[j'):{۷. ?K$ K\go}<87ܢ@F]<)>o05c=o H-!v[P6-k.+ZSBH-?\} qaeBu]zp)p4Bك_x{YU!ZzHkn<d%8vPw =87yМ v߈~0j?v|uy.\))'橤Jux0gVwoaI4[c~k8'쨹A?<4Ҽxuk{ml:=»` H񋝵Sx^KG L O,\sKW&07$64[TN{>+uI/u7eO9{_}sixr$ [Ln.Pu\xF-+-eI4%zoDzcpQ^l{}fR*^9#dЗ͏Ag8F"D_ĘKs[d?*kI54i*vt1,OAO|op޹͞82q~MS9TI蠮ǠQ=9[u4VY槇X?qjt#HcCu!2šFWQW BS]-`̕v L`j[$Ih}U|+R*-{ vl$k u1TkO{dB;!Q{տq4~UQ- l1q e&ZUWuUU{<_!Z3ueFvOd{&!{۾nNt4zEp5HӦ`.OUL~'NA} ZZ\^8Ni\v=Gm]ShyRX˟1ŀC`237qN2[.;_1(il__WUչQ}kaeY*<4E4{xT=-4Y燸 ~ aY({}~Kmji8[Z ґkܩ< ,N\w铴m{SMHVXmٿe5\4!N g\GdmvmHl@#{n1[Q&Hku ++ω}Q/p0'ڢWݱ/GGVb^d<-yE.GY&Q$6haTD ndĸƣ\)oOE,aidhH 7@j%"屰I!|BysƮDd0AGH^Ĩxr*)V6z̿-!J\q؛*q81 44BOeY[ESOI]&$Rd/-c,≎ %Ƿ+KMMXT)̲9rzD_'wBۘ6´.i;{EeFw{[|OEļ5f)$QqC&\9Z= vOx eچ8~>kۛ28* ν{ 2 ➘VǐZ Mà7vվ !ۤs]_B_/3ƕ9E[x*  u?{De}4ђHiT @7߿銚}Ao9r2Ud*U#kQeC)*[AU];nqr9A\#„RRNRF'oS1m=9Ϻ4㧦؉Ma%VE$z[N;_6Chtd5(;+32rzb)e Y?39py_-{0xH7ap⍥D.RT$t,烓P妗te&G(&ܰ==gc/ssm]ĶGv*/6Zi4Isf=mL KFGZMi5Tqa~kX9CɊc,˩'s7pt[G=Y- 2G,꾑SoZAʀ}Tl"r'GLZc p.d4K`zspZ42P*ey FaA#}9: 8(*e @=;c#UA B}(4irji2ߦ=!^$ӿ@~xYbBv1Ȫ \?}%/: SF}Ck =ߖ8)v)Q^A.%*'pPw[_‹hZ"2VUkw+Iջ^w9rZ6ߖ }Dvor?-bTߪ[]|yl>DCY̌ ʞԼ0un[c(@5:mpeq _J vR)@m!~!otXXUlWQJu (!NAy.7TcYY$y {#)c6m p 8 /~W+k 'GP-.O爫CO1U; [m -J{6*`FYF#RDEt߯.XK%=&:o#ani摋& umk}m-†0Ƅ܀<“%sv:C%qWAa1UbA ϖ;M<#S16FֿF!h$ԛͱzJMv0 i},'L4<(k #aoEXT62H7awt%tp ,2,@H c˞! pX75;^!;}<@I* 5C_,C@^sh }nX׌2b@"v2%!D 77_b?ʚDې)2=oK,:Yԯ}ǻkߖ@]1wCGFRv"߾9hتGku mwnFJx,]o"aSKߐ0DshgHtk; "jPM0saqֿ&aTEv*-_'@ҝqq 76⥡԰$bctϋXR;u4q4{$Ojx-ʸz#$ME}T&8'sonKq~O!u4w+ُ'fY[(O\Ҫ*蠜~uWSkCG`W枯%I|9Ip NxVZ|X3H)L-z'Yg]#$_c E<\uE&L pV=$97 PTf|j̾ Xx":IknH,; l:sE\64:^HY-6uMUMTeH@"i3-;Zq#ån<.hY֊Z42'$*f7ic]L |tg9 N+rξx:Xr,I tyh~4~FH4mTf5TY뿫;!ŕFv65ڝg$<sTߧp%>P9mMx{ȴvQ#lG7ez Z0d.-eWGTE!_IWEA$U`2 ^?Mq  #lVHji1=K9DP$o'/# 78u+( 1[NbI-/uvVKgԠi>c-NTTkSmSmm5Vv4 ʖ2ʵx^;־ -t-!邫k땹A*Jdb}mtr6ca s䵎s+>agq≯-QBJܞ#ӿ`P!DE?JH:3o3j a V8w(E#rMiIxe{ m`I=~'Ã]X*:x%Bַ<8p#~d%n9ktǦkVzi mk_q$MEGqe(ƋlrF~g9AR:7Ȩsi@`Zr0G1`M(//KiQ;@c!gA$VklI|OjRqFu }O_{JW7Xgmsm$';12vKl@No![}ŐMovQ:^~'!,;ܑD)[U{0UIMO!J ̤ 9/$ -m|A6 D.7HvpP4ض?v Rz57s(99N&!I~eB\vaU-:+1Jϟϖ")k{u?؊@\?)mm@1O_^u+n%u6T7av/ MEYU^VǞ#ҍY5Z#S ZXo1=\5'䔂G-p}`KE)܃cmoo‹@morpJNuRlMXpT9ׄdU~^酖HtcG\4XBA>^ {( %JS[QZwⳣ!VvPY|R60 aoQXQm`/s{qCRxwL4&b 3 9 Ui7c/ף!1v;%nncaϮH)ze.ooXk^&°XZ8T,6=kqi*ϟm!C[*~x]1NH6n,t.6)+u@ Azw—D=d$(kry K+ m} 8‡WE\my=y ^ # &սU[R^/ v6؞%#[TU.QC][{sicTz6үTULZM߄<v9Xf`At>~8% Mډ%]$]? QoG" :,vȞ 0FB{KdYx2ߘⶱc$tF͸l-L`[o>~qǪ8JA_2e,"wY1ܷk .7nz+̚Æ~~ޫ6ϩixDZ ;|Yx޻)(?Ϲ]7K//E;Ec) scc!_q'U8iW:jg(# r$y,gi\wH9]EOBGMA*,]MUll7`-6sH$+-XWU#CW(%3K[${tXwXS]Uxή0 v`n= ;MgqnۆT OUEM&l԰;TA<R@ n@'ŭGcuU,CZ2U0y@$"Ʒngs`FS'%GNkYm ݩ$jᢍ61.msl?ᗵ |Kgl)ܟǀeKh^wmJH8as\?̡Z%%W[HCfcrXwƿLЍKnOQMB75n Fa>[O%Lf:YH8Vҳ.+uQZ%jܮҒ)`w=7$cʷItNkl𖱡ׁJYu(b3)3 tydرB[dt0Aʴ6IeմJS eFtKTSuHg@XnD\mbzQt#N(rZ68\Nf/r* P[r/ya$g85FaePS_UC-`]{cRNY2UfJhirI+2I+)Ԑv؞b?3GH^ܗoeYɛL8L·4:pZ:cW*E ې/ݰ;Xd;rTՒc j¨D`zAakQ$1.QmI <2|y*e;hx&?<|:3)X>!$Y {Ոiy}~9UC:]#tem]v.@c`mݢ"jZ ̴Y;x+iPM9'gvy۱^$)Juwb7[Xۿ,7CtOwz"==TK0H0rtrO4ԹkFQ6')EE(oH{ hLxsbQd~SfYIy3P[f]<?; .ШsK\+_敒d<-O5v[DC"UԄq&q̍a. *eF]",DZ{_4#y4ʌjUF27Se'׍cJy{cO7,&SFN94+\v0<v04@:K\CHqy 5zhգakG">7|Iyx`aF)dc`!@ wF+\ZaFYB+!a lxQE"ibiWǥ*\CR pt[|N 8 Lz$MX`x6 0WvW`HX{ #/ 4 JwqHd}s@ *YI9 \r6ߕ%הVy7׮%`iHooQ1H`v9K@16VV'E+G;w(=RX>c{w>fr #~GiO BFd@myA6S6{4Pn,̷APIJ!:鵇SںUPkwqY7c㽭$*6noʚ NUkQ;_X6cZ/溩[mQbmǻ0m!n`8p7E:$c@Өu;zcA|čv .11=`k dpeI!_u0SPqԉ. EFÕ Oڷ#˿`I=HxXE Krkt1kle:l ^X\%~_憕ӚǗN7$/* \0!d#eu`G;oZ V!d"d] [Ose4,ە{,BW ?,qv_ $p彉.xRx^I]{/m.GCUvJۖ 0EFѩ^xjsU/0R턂yD%J8Rde`c ,]ΛXe@x!DuK܋h'!`mwFI(F~[-ɾAt5Z.Xy5rQFS,;;X +xW6!%#  u'$VplXc~% p!)v,;Z9xI~#o m6`=?:Y*&2FW3c<쬠}$i V+e*@yOP5$4%w 3M,oa. (y5fZ*`̰ edEo,Q/3NJS'*q}ϲHs:JL™aDXU.- :FdUI#K1qekhwUkm uT#Nff'ߵ^n}ޟ) {"J¢LʁXЦ~<<)m[t ӗ:ib¡4F^jc.7]kU^CV2 XvS#+\TQ}I0'=Q7u=T%M"x~xwsņ?{*ow*.b5kawT(/* }k}|7Y(J!aeЏ w- ťsly`wY:XipwϧM,I} {_N=Ԍ0:|۷l)5aCJSi6y࠘ z*Dba~&e^`тrGHUچxeIsIa[zi,A&aGgp* nRAF'⵭ǩr\辿}W5_kӲx]e*xϋ[J9,|?"GYB/ [Sdmk)"-li*&j` v77$ˡ@u+TETukYՇofBvaYDYb:Xd X6iT*biiP{6״h Ix҂R0qJVGY }XL롩M/3>+AcnM?8v:,IBv˿\[>ѿm,-Uuk4{ksǣǺsOFP{r:;a˷87v0*).NZ;#dµVRka5hDH6eM;{?9r}4j ȋ*G)X$G[-+U-aNj2!dg;傳T5A66-.xpx%!t rH6u4bvRтA߮%ވea V?oARn n5魔bARP>R@%af[[X>QuqON[4}wZ_vR uMJ-Q1EǑyo{+qhKH|zoz0;]ERw|.Fp w >I2d,t&t6 `ULSSѥN۟fw o/%l;wS}ԭ4B0NwgrK\8{sN)(3޲d-$1U8{5RQm2Hp}?; }q)>5Ha}U Ȧ}qߍ4PtL{ Ծ" aC='.MARTiL`[取x@\~˯3;uEH~j"9CHwb=,bjDđU6Օy@T +Z7#7 9ƒvj%O VSQTK2Lno/FФܞ],?eeq (4`vqT\"\vud9XQQ!)%vu-y\`1aۧրqEfW|oU7O6`j +{olVQj^cNO]VԼ1R HYptD Cj(-IYy Ƚ_影/2l`W')\֨4w*"v=S;dXwo.{WH8hĺHo,r4jOa!A~%Gd9*'5U9lQ;[S 5\ ۶( Kh\{R<UɗćŪF ,b?zv8Q2VAo6QI DGeS=yix`Me\p{eO19B}pvWetqSgN8v/߈c8!.&[zm [.^<$2YgZcߏ 4$! Y.й87͖fS)(kߞ2{[-=fvQQ-nSfR-f4tʵP驯_m)As\2u9VZ g"Tmkz6$%.c{K*xd󱱿ւ0~Rl^+*^_F;J&eSFT E<3$HUM<\8 +&A] >X)2Ί:yPAFcm[Sk W[jl҄T)ܛv\o.7y,`4h*>sG?*##3؋l}/F6B[[Z(HU3k7ݱsH%kDpQXD$onp*NAg݃$5af.,jzvo%#`!Dm.' 6 a;ۻfwGpBm5$upґQLVA}ab.~map4 )sR:z;ޅ1PdKjVv/-=d-I+)z940>!4c"!R'q'eE (* Rق[;)R,Q!^k;6 ݓkӥRBߞ>yĆiөM{ɶ%ދ-yN7#cR, H1\KU#Xn6Lr`!%I`-B ao-ȸ wװ~x%$2Kt [oNi24.z646mIvRsLE!R`o~vK T_l>nr w_.ol*-a8}QXVA,;{ct$\rqԙfTw}؊K)e`Mm߉#SͰ;WJF-rm^*=U'lv?VZK)>PN'SvSBPK\zbTlrۙmSP} ~D?]K+ Mpq$4[N3R10$"l/[cPeQ@&kr9ԡNA|2^UFv!!a=Jro߅Xu$Uے{ak!\rEدJ\lR/C н</V6ߟ7Bur:]R«27c|C5!X`‘ U cçjp<;k;⽤iu܋t牵u*ry_8V<]+|vk(Sa;/Om'w,6bW8z%%=8RvG,c{0mYD fW$&:4eN/[}8W(+<`7 7%(C]:O 8PIRNw6>>IdJ4h< ~㯧kdۗ!66#tiK躔{'uwEĤϕŏ8y?8#}`s~cTf^o -m􂧠 p<#iڝYdPڊb XO܌z; ډI!tV&xm 6=lqVSjTP0['*-9)hYYA,F\ߌ,lR`@:F:o8VR_Vz<H ǧ]RyW@x/'0#8#A=Uf$=V=<{hz7'#3%}T ysX{ߦ?>|S񌺳i7J_YxRWCQQW-6yk;N+WdUĜf&XÈ5,bWn$#dݚ Reu9roϭIJT%$y\<'1|Xl`K[lZw1/aĹmv+3 Sҵ$"37 [*|oWk#:(ff Q4tPeœRQJKTP{wNc` h<R50n > WaWLl8#ɯmix;]NE:/ϧ qjZ(_62Ys#UE3DCP`H亯{[I| `j ە+YU٭oTULb1ucpUT5AsllX79uEWQbON4ɦ?č3>gP4>ʜJ#|j2۽5 l9L/<Gc{:[m=ꛣBZ::EhꖋMS;2$>">i@>P jZ"Ug;S ­k_ ʡ-XiJ(HK[ao2u,I8/|ڻYClrICWD2k@kD,* яavzۦ @Mf@bi(XRݢ[ĝkt Zk O.jRJGQKY; KM{Xد?Vh(@y@3 3}s!Tg!!m=H]CW9l3<`K2?I۝ԘCw=v ײED#+ 4Z JCc{pF^8`svQ*WDISӠcOEΟvHwxX͖iXwi(kk+mZD/«˜ #.Ii$,DTi*m{P}NX+ .>gJAICT'$qtV'QfMZ=T.n5c=CO))j!xS}yaZmlH3pe4ș{FIIsCw~U/evQnRIb9X/+^cOQNֹYl7"ڡ[3QF,,$R캀d?Lt-#ĞÁ*3L31QƑ݇ YoiUωfOj <~i3h.ēQQ`yl@q^|8O^ɀxVccf9ͳ,D%a ysc[$,/I{buiŞ~i]ԉ(ui+_ `q]J\׺Agݯρ☶6=ϢKo0ٿ~4Z@>iЖNπl?}i8ُq,F`˗̣`'sZY s5>ǩ?6Vrn(Jl#Uۘ1/bK&1%d<N˘6\R?[>;c hurٌtPT[%@m}w\OsNu+]2)7_oi8Ӊ#gV?~r?'_|}vꑡ}DȀZhe[o*0;zㆉˍZ)@ʇɣBA"].ms~,³Cl QA]- o_ct\ڍ0tUYIToQNx@k化Hkcj#p˅ڮTiCj_t/ڴ\Xq3 ܔ҇-1nlm)IM=LT͊7;v8媴MMDfKF?ByĮH2Ud҆sFлkoof{ŞBW=:\6Ÿ"L{AQrм-3FK2]a՜h`6ܭoŏ/V=ذbI u ҭck]8A`,G{A!snr:7@շoJ4{/R)( 'fRY%kαTI` 6Q!iVB1_{_{{u۷p[sCȥ~ ,J8*l)y^:P>s<9FfE4 %oEwKzQY,wžɄԦy ;ҥ{ʧiɊBǀwCაWU(ɳYeA̞ЈNLs5E 7{do UCGG,SRƕfi]D 'q.c9?Ӆ ))2l=uE/3N`=&d S"EX&˲ ZDtqTCWH'ma|dtޓ>]k9YΎJ/ʲ󜿁Mt%7m*uQl2/]{g=07ᡤ*(2ihYtS x6U6]ํӲl~'k7 C $QMTU=uzD1f&Ƞ>PJdN-gU/s|3i咎 (,*1SV * ZC}S9>sM= |xo#%c1"G#s ƨk# H򹤞L|u&c.YUj:Z%E tM#[ o ӰUٴYUn_5)lTo"m|a3K+v q] 󟒫KJJysIp{M `[bm9CXX@I90V`.tbP=&M X$PM/cQFmci`^(rsm&#[0K\[IL d nV97`YФF~[[ x)Emkzt#RM oV#[{תY \?דp0SKSR,[7צ3u:ѹ g~K_ﴚs:2KM{pzu>Et_76˲|tB@; eq'dh/.OֽQZjX$kmkHƷO"t$?~]OT*I&˲$˦5ȶgJSM5o_Ut;|DpeMHuɬխW%1j?zK`jρk\ǂrk|CP*s*MQR ɽp]&Hfbr{W^X |4Ee&6i# d}Da>H=iV]3qgts -1Jҋr݁g_|Rю{E8:SDXtgG̮fInvizʾbbZtuT:n/ ctL& Uw7mZika78e-~*̑[Q\_ '=AMIrhϘrÙ\54q=EOޙ$hP6r BHc_EhÁ]yX^G\Ə,-L)bJʭ+f;1% X,J$>59f-5URfP[(K 绛 NӸFNO,8'QVSEks 5,LA :z%8ӛ#5Z4I!˝X\Id9}[ot2KG=9KeKXhhtBӨ_j;cWs?(sۑ\J2FEOs)]__5!`Qe SI6[wDS{_$[Iha30Ji%+nm=Ep72APUg&YFM>#~>M@ ,gTresnO* 7eTuo%K[Mc=/K d ]!JyloJ+hhXSovE9 #qdN;t[S#~FF;3h'keFڰgY+YMCeÒS̲\4mu#[KelZ=㌷*<(Z ϠƬBu${c H.{A6nVqϴJoiU2ꌮC$HةuO8@^H2yֹ]~AUq %MNY*FbA+HEء;h&Nҭ;Wh{[V8\kYM>SpF!4Dwd;.obqv`k6K=0ǶGǵ]?͕{3g8g*Q@m@KR2Pd\yCNƫ81}Gƛkm 4O3ҫNu6kœ' d9mY7?Z,"9ܫvcl69~AC w/7CneõTuL¯0Xdr9s:̤R6CmC+#T._Ù#2TTn zmjZ}9zpߩ&v_1rzXslƮfQO(QsL/Ic&IݵYWfvG FMqv;7ĆxC^t@ ex㈳gRD) ΝqOcK#rNц!ª#vlnW|}3PxY ͧm=F@e5%3:)Vak^^XTa #%{Xr߃lB'tTT=;8]$!m|0am@hj],,A{ؼ[$)Y A!1:k%2쿉o$)y=((mfM9JPXS6AߕXΤf"srY/bċ}YŴm}%8N+*@X ,k{$1wF쾿;' źB6|F5@z^|J",RǦ9"Xŭ}ȃI`@ź RQ JYz`Iw)-BVT]ir- ~|eN$!$;~.C{^tap/y`orqB{y\BY0zq4NSX!y^_.얃K)#>}XvW[;O!AŢfpN6ȿOr0ԻH@a< 29_$ڋ=ʮM,({ $bUzܛ y"@7bORv65wsle86m|c 8n ^2 !H&T}}sEKT@UnX [Y/dPYQ. 1QO#/2}Cm((ډفV< H.w~8.qUSr0<| @x%vܰR3(:Hoq}mQ| NQw\\bGazaEUhٮ޾ose<" LmȟS?L-6K)̫ y |q ѥΫ+> է{X6u!!#,Ef[oϾ (퀝6mtvD,m]](MfLLXX_sKxiܷ?War?I h)V"ݶ*ԗٱ”L]Fm7?h\1QNӞ'ht 4( + ϦCfGn.L(UO=lNvuʕ2ВYsķV,%PW:~`@@iyU”%jkFد3|[ F%.@:|a^%146Oea*6aK ulχX~zqRA?f|OǙ6OeU"tMkO\c. #Y/d 8*1'TC%9ۡ>!]TO|e?}NX*sl,ӄ1!*,9]:NوtcpkIv(J>2ik᧫]/hY4aPcڨr5kGp~[G[U.OH9ل s9k4lT[UƆ1/@i l+β,Ƶg[9Fcu80g֣.̒X4U.LA'mǞVW[MpM4WqMOuLӨ)qQ[776\\Zԥjk斡G=ZFʦ'S9l?IfBUf$Z߼KU$ TLjp"iZAPw${a/DK7PTuI¶]-N&&4*X[ &KD6<42RY`ƸǪ̫Yha8i6i*v#W^w7[M1`T3xfidFu<`u>kX[o_sٷuf1KgR"Up4hx.b1wf~W : zz,\GRcb$ʒ̣Jbmk +i١jʡjPv~kl`6]&Ź f9m%i)i%WZ Ṯp =̠3I;|1MvZ0< g2poc8@,۞9@klrcF - ʝǦ9 !d6SZDmaPدwLrڔ҆s i7{џv o\rJԧRN9~BZFm/ar.xJ+as܇j8W ĥnYpI  :v8F*6Vun`m#i\Z+~dؐug#`DZ=R[P[ob-C`P OQ+Y#asJ1NHږ -ԍ'4</Hȴ ="71֥KXRq,1o O)s̑!pP<'RؑqbOCp%"ߞY e&?_twE؍Ne~2rzn6B6t 'bMۡ1$ݬB@`ADH+ASp׹@ t  .H^ĝK)/A]NuNq7= pYOu!-:O{ ߮ Y68NN:A$ꅏpcx5"AJ06JNB V q N!!f-f ) 슎0-ngA&A #_āA[^vsXƨ3#l.%]ѫKe S&Ԓ9)36Ž-Ĺ\e )rswUm:BFCBUK OO|KK[’c҅w zti^xp: R=-c[l-3fRtJ7oy.W "YfI=j(!pBRڹN1t:!&ڱAy|c%lj'Zj4DXǘ]5b94}?ʻA^yDT5KdJKC ۪U]U4)ӹ/(Ye}!oNC9:PǦ+j 3/V!҇d[z-;EP]dmGS\X Qa14&$"{4&е 5sHPZ7gR`2жEiT";"MG67r{g]Łx)dӭ|)FvZmA/+eGGY}FKGO-s'N}zzΞRq ÙuZ\ltٴ\ l46|tG2w=i~Zf)a:T)Cbè|FYQ+G=|Ϊ3B e>I ϢчQ(f|TqO̲\ ⣑T:OOTM<(=E/8;yq/p/YY0s5C.n׿blsOɛUęLuRжlm@r^{vz'kUwGi>fCpo:,8D $4Q} w8f}A*dl} [겕#!vU?ǥiژ~p9IԺq54[Rc ܄[- +0%}q_5#Ieyczr.g;g$~_?# xwfT/F_,c] HZ݆/Vie|K~W8!p$s}ևNڡiGKGdz/cs^?sܔ`w ۙg1r|0 x˫G"`~+H42ShF+.Za`9#a'9Q㺩ǡn}m|VNrjX ;|84fY j25˾ɻjw+*BH[_,3~d%5*cxҦ\u_x+Q/$s.#y6*6w~x6V" c'#.:(e-QU_n}1XqcXst صTƒ؁k"qƃ@Y-cIIL6I٥6BR?cU%9WLGI-ٮ_KsGIv+̭|:씸ҍYRD(\۾vU`&MR$ QY/0./4`'_XHVŦ?iה_ *&Usu[8/fzyhb4+#S,6!W_7\NccXIr+/˦\.$Ε"2w7|yIg=@<-Abhj#,/$m)Rwqߩ6 "/0Zx좑GR$ nK[d|;Ckw*KTff3GxTbj}oXL-Kb䵹LiKF]M"K 6w{H -nZ𙨣i#'L9oBoB9[.jrƩҚ÷mLA/}&Z$V~esϱ`pЦe{ƥJpHoGsoǿeCk颳6Wm_okgRdrI$e7 wƤΝ?HPɮn(i5=^s*Zycj>4ԺBc{7|?mȵ8)Lxjً%N18_G^5 D{ 9GWzXO;z[_%g Ȣ~7Ͳ5PnU_3ҝچӽB[aދ{=>鯰~5~|--3ŖKQչlx!.;=%s8!?'Ikrx5e͛IU4^mV:A8%Ν&E?TVȳ쇇l7j(3,YCxt yjo N^긅hsĞ'^=8m*TӬO*`ڴ;uS{sƑ֘5 Fg?Ufk*B?ɳ]dYM%$栭 &N9X2:ƩKhнl-aZ@jfqR@k]k3y[޳8 x/xj6tzY `FcC^8;mFq_gx3MvԀUIv;`e~W᳧ceeQdc_/Y:PDuSe y {X!a~%?3WȊ'gyQw%|;<s(}^9GNy&O $RIX70#Z#C-xfr[S!buk͎ѣK̴ѩv!s˅ Lijp`}O}0ʒzv05[ lbQM$м.U+ k䣆GEU2_$b?^g0NkP]veM# <+SQhk^.h`T/,jxgeP4DobF)6XjLLzl?,0IrP0[xݐ#kpJgFv@NFZIfNBkzx8¯٢͝ |_I;,aO@R]bH=ќ`,(o˙BEۻp1ȅwNY ӰXt#YObiA Tl Q;]J Hʝ 8wX$^`mw9,!k8]QclrGtU7`BIհ$&m)6k[o$'pG׾\r6XX@כNTۯq^x^`ʛk㔒jVn{8!| y:5*30n~#ܡ HP (}o|J؎ )>\BRsC:XAq`J`J,{VĄ.9n|[kGn "S@~nK%Nmn'ap mnX5BU:ZߎJrE{@\ 냈Nh\.}9.nć;8Vj^< P8E]bA7>V. }j\iB$~~'Wx{nm끮郜#X` ^_~;>_E N.؝ި'cV lu ů x!Z%=mKtDlt6B 4HCFz"brwX2u3WVӾL6-\g%/p)A#{ ͔pʝU* .1Ywuʚxys1][K9OJ Yk[mHSsH9 muq S]TF[ 8<pu=npE@$vZGߙo lf Gdy`-_ rx@{n;bvC%LSu*`Œ@r=U)v@kq`y-KI[ǧF'K5ϱIʌ:7;r̕_O9r '݁xGe8m# 8W'j쾞L²RR59> uisAW؆_h~ai.hST/$m1[`ڻ-4/ _WM w\-8~"$(ŷ 4l6\rKeqP)j(Dٔ cm<{!lJ^GkxsJ|&h#l:M#ΒHdr7{[2Ͳ>Xi3*HA1,O=v[YÑ;^ {6=U+G ftP8|c%|q %1=v.syFcm^93= D 'J!oL50~,k6;H#41=idE#(dZo 1Xvw_3x[X\ʎ-oHՖ4y.V0IČ-jv~/q:UtJEsyERM$ojxj"7n|[.VjcXObjk,;▦"L5"iJ}fD޸M2|X=YFf"DŽ3n%\ωi*8G/83X*fV*i%yΥWif Q['&)ks~Uͨ뫫rG$3l%M}1]&.ţX?Uy[QYvS>I~^L|FiSTQ{uMvyz-ƨpsqdTp&fXm"+= X)4uڒOku9cUG0|`w8sB׳lAvJ3,2t=5z}M=e9o.[.rmU4qU[S_ki:KDbjd; ,L^-c6Lx]QmLntL37K/0j ľݸ0_vv/-ߦ>8v4k &|G Gduyԟy9#;1scIzoLZp #X\~JJ* *9kXc㚟piKKfO>=zJ;:ܠ lm_ Pi ,wOH`Ӽ8͙tĚja7A+ϜP^im3 gq>MqMfYVF"@ka[@Z_H^ Ω8sxZT)U?Ժ'WO? v~g'~a`r30 R4Mn{\PY_Sv@)Z$DO&Gvp鿺cEmƧŰ+2θW*EJK ܱ} j|VZB<Ҿ[{s8tkIGhb"O6_tR.P9r7r,5U7#wap>^78dZ:L貜3JxI3"2oQ4DF~pT܂l޻4ɸ2#uUŴ_q;ŽD/裦޾:yT x8$QM9vX}X_f7v4 lk43l+棒 IjR_w<[{haHs gA'{X6,Re$|0ֵ݃Q YhP`\Z) H)}8D{& .1ˁKeq ϞD^Sny}u.$.ʨӵ]q%ܹH(AU/p/Y ڔtJOdlJ9IaQ:@uKR{/1~́dp/0-b9KWy^o\r +R5dfF;ߗ7A ;^8X0kNr mz%@˪H9nfQa%AvrZ-o,J+fmouuaTi:X}0D$Qw;~EcTH}Zæyt4Y." Js\2":φMy|C(++((mbZl$)xhʼn *`۔7^V*UR,;~_@ò>b耓)ٴc{ b p,l67ܱJW•s-H!1a;[ndi}Tvk,5.`e?ُP/ߘ_!ʜJpĪݿ|Dn-[P0,u*w!~G6G}SX( Yo& R\M1SH9n)+J%Mqdl)pq_ ,QSphЊ!(a2PY) mmϢOp5"=CrN u)䖳4-1F-PGn,i%qĸ/#n;.A0 ϐReP^V#u _t3(v vϱ}-qճ}K?RU]*L!z6cO[sAsm{dogZ3\҄Sl? %ڢL,^FRAGN]Fљ0<6@KBG+jGVes? Rvup@1FL5_p_]?9NS7̳ʜ*Z@t1P9[s;szϋMGO,;Zauܒ/uÒ[=6a-:!Fsq˭CHZ A6|~F2%W ?/ZX3.%Yy( AfM4-#Et4?lRc>2{!WDMUn^~v߸_CL? /_,]gKRbV U>ɹfL| O"r4!i$8w;~7UVVᚢ&ym&~c 14_In\_>dOPJ14ԑ׾> MX^w_ jکiݷ,{gLwg}Vy{uX*i 6NX)s=3PSqצ97im%0y,N8#G%|?=8=0vJCU8U +~vmG )"w! s ${гPŠ/?7Uoe&\S!գ$G0:bR+~vK#S|hàߟ1 hK 'Hũ5yQz>#տme2GotxC,nVC2ECx(j%%o+ c#X.,Me徬jG3p ׌ȅpzrŗg$+qjn((@ƒpN؊{ EvY]5C{7~|Wp7⻕aFJscl}(8YxAw$sq4TmYUͺ 0D-Dno㛞9AX:N>x/ @#i67au4z\wMB"_m BPE{.wI /y(A, V* Ŭ c6k3fa` b-p^.}E~{%"Kr{˃k$,/\[N 9+ȱdPlG;v;(8Kb<MZw앦۟3*L 5±6۷\sW4*A6čcK Y@- O\@z6f* (}UԵ=-ZZJvz.<"._pʖ/Jh]~X lPEqMa1ͩ_m>xYwd.$PxBZ[ч lzw9-ñEE{)lVn"(ɏl.[0e6y"rS%@E;c;E`wn-b E:u\l-#o sTPePBJ8eHBPҶopbPv ^2Uwk؎nHR@1'aLviX[wPq6xO-0Ҍnx#5O.WCJH5h:@\\_6Q&y F uh[bC^Wu+* w*FK%yBAx&>݄cy‡HKrb2 J\=T-1*no xQ8E[WdRCEphUVm"{N)VzU$* DqQp,R3@:cn=]ݞA:J\v84P7&|Q$$[k[wZ YZVB؎_$I]ҷ{~JJ(E[qӾ9hX)FPxdsF;v(M9r Z\)(6jjːpoԹfKCSWQ$QB h*ڽSX!})- .I^)<\ #1sanſ8Nh/>qnk{<\q*-N;.p ru-lQ)8β 4Ԟ qfdߋc NЩ@#*0jwsxS $X1EM{3QA~S͑h(45L:nm7&I$9[~9rF}.j1T9<r%A m鍭~_ ,pVN=C3ʨ>0>kz k+HuPO7,c|d(~1z&+Ht9[o`TbPccmkX UڔSrzFcILGKMv%[۝ÊY r=Gd4Mkf/8gLH"~Mമ6H3Dy"Hi 2Tec2X&]aı' DzO&d]n yH[Gkf9ukfTlfxhnM m[lTkD/!4"I#W3 ,:撖ML#MO`v滎Dt}LF/Y7/ PqPj*'/TwGl⦶A.gi)^И Ru.ym9W]-\ÖϕMS2HC/BH],l3sG+j#;}-Pd Gs/4["xL{Y.GvC։墙ՒhF"I9iCCUdzUSS-/sJߺF{ o:fy݅-̽dO5 R1Uy Gg[J֚_?R#?U=&^-S Ѓ̠H=ƴZ;MӊLM,5u}Ù3gy.O_ Xkۧ,}{nJ&~4_?Xas=Փ}Ag|qt|vd{%DLܷۗ,x]#~3Q+ }/=%iT*z m2vuc.j*7ڿ7{C<2)29EJo];Eu k_>SZPz='*P2DmTUmZ|3_ oT{af-v~"R>81œ3[44UQOtմ\z=dEzz/u/ Jd8b7J.YiLt17#R$ _ 'lk‚ᬺ>#Lv#TEnfq]B<+4/rc"zZGN\=iItaflI=-7e%49|A:6V?QN f8,JY^JHyQpwWuscS3LF9¢bOW6]>EP) \&-Ɯ]u+@aS#)=Dr$g^1 W׵zሹ/k_gP41OK[ I=:SvR ʊIbMc-;!eHFʉRJ]?/󥸁QmK; Aӥ#upl!Rr>]m$W*U}7<,0?Pn*3ܿ : $Ӆ+MyRMDG0#9r 1 c `\B]dsY rO@{)p͘]1*6<:4Yfov `\PX̻܏,NBݮ/˞9p`^6!t01_}|Bsp:qWexJ[&, ,ŗS {&Ғ8}#k\$Qo)5nX;e@9n b]'P]ZA-;smCV,un&|z&UvI_dKOYY) yCtPjlQZ Nsn(΢/'/̲ʉڒ(5K(7=zӳ as>`GVͳXC,ƔѰ-GmwGU/$Ӽ:,L<{*4GKĮ}:\DcsB|U+T~*hk4p$⧚h.1M$$APG;˵nWV7pkuB&>g'=e9IY<"Jf:V*]dM?Q'x͞Ch=bdph3\$ `Ix+ܕvo|GOe{ 9J5`bF^ vpBL߄wZ+\0sIbi-I+ '#o늒qjt$#%l%h  3$ "rႲ ,yS&l&]`s xQ"8j)S:YN3W[bۀ}~wM8؎8(EjNY$ŭiy~Ȟ7jp*㕣HFv-D:bqҶ[{>K8k /r0=H^LQw]V=ęI]TI5̤6}jjE7OQ/N j}`gfpM߫M+o>ɨId4yoc_8^!6edUΐ:m"[IűVXY" ѧ-@[k< Տyԩ* mt>02iXgL =׳n/3jܮ'5+>#:OR=W}wj`L2ۯ .-s??>տX)W~_]MsQRPE_%#7 돎UM>"t;_92> {uG)/RHe\~oTf=W=;&JKϳrfTIK:61!$\wƠ5[?@ꃛMʯTGep3HԤq[Y_?DK>g_f95N_Te4`*itﵷ_xğ :heՐW6gΧ.sJJ93Z*aLLByes#~9 ƈZiZ^Ar'Z,xRZʣXV(tme/pTi7PYڽ'|( È+*ɲc2,CmrMP G~UtS{-u?^2-NcCKpܒ-UTTs|劚6~6"aѱÐ} ''|/1̲IqC=;q?h^=QľѳȽWfynkk*/[HrMQpq_i x[ Tqj6*e1ޗNZkWmqk3 S;,\) B3BM\7k4݅{7#`qWcHO.8 $Aa"؋Mn--% EË _LV`ke$ܗlp8݌s虫XUPo ^\pp(0[ v9\e ua RS ]J ,M~y!68Uv C^p*}R*Ҫek-sp-ثNH;|yۦ:;'J]J͸m.7TwOŋ)ran.n:l ^c]Nh_P uQX Y:6EYʒt-ϗ&5Nm~?5HVB,#a  S$x^qG'8G:p! _=:Wf=Ϡwr"}2 ?YOYƲ38q{ ?5Gٜ[~uxݻsǛ]ùYc)*aߖ<]<8{^̩2 .%sxQmnO wCxV%9Z*{55_Ӊ[wMx+ ;Ҭ4&ͩn*8L4ɰf#aJ?«-&ǰV*6.26W"4D@OP [t5쑮1sjJ8)Z=<˻&Dw5o2@r)8%*&Z +[-[ B _[.nն>۴ v@Tg͒UMV33F Yj#خ w#ccVN1[kX{6/hYq pYV$Ա8V +Tmn~ -h~+8{gkhx f51[+pm!sgjKǸ^<>mQqTe55',0bFfX*!CjQP?8M #5[UlŞ/gqK8x.--8Hb2ǥ'7bEcScyk<8VaFoG.3fG.y|tM`dv*іsyc퀼[f;]mEy]u4-J|**}|m"O_oV9_+oCCm98W0姮ɤ4ZC.VND `@*WTeudEfJ»Ìjzh)C.|koaG|! #q^9^KLx{7k]GQOWsé*G;M*kO)!̲|rrŽIBI,HVKՠ{up$еlErN"k:2Whnz% lQd8K{V2AuURY^iKiV<IǍL|?~walx\m$Bi*tj",Q1p-m5&-Ӷ*ڪ\"MR[W{{?,[,`|)S 삤ϔ*ʞ~ڣ+KIu.y~8 iIp.>H3H_?EN Wۏ6{8f9V -8W Y~?=0Oܫ],;#b -oj8~ҺuE'2D'ZAu&i=Ct~)kf n:YRgd|eҬTf^z':uPvC/7w|"αF˺M9egRn ?v/ @,Q.6u[g Ӆei`BLx麄Cl>t[uZG# WnyGΨ*JfTïH?| /J^C_'sIGNlTr } P(op/[K ,𡽟uT)mϦ7%-|s٩ 27^;W<8=STi5Zj$m{_BŮjִ6<_oNr9fᕙ+԰_ o>-t5KpD$}>ufGKe.ke2憚9K,ҝ) nt8LZcno< X4cj6^(]BQShhB"f]nډ;a$~,4FcfḲDԙSXfu,ڐX_oA^Vzۂr$ԹG >+jޡ"Z(2JBN>:p WNw+8g}}xY3jƪ?R5=noi/A&xLо${lP[x!ʳ$YjmWƆWw |FM͹oG!;Z`?NVXZ6| OAUlcmߧ~,@z)FXA3*csgFHpEAo66=.fGY8!u뵎<e]ў\l v 1/O&$d$5j"1D̔ [;nGߋlKd7d}P a~|/OHMI%گ`\3 7ntRxp=ޘA46prPvlUutTX_ķi$~C±sˉ2頭 + zh] 瀫fNVMNuŷy9ǿ w6q!=_Mv; 1fr,D _;OR.Nʾ턿DW.mYaQȺ3cklvbGj^0h&*0G{mL2>Ҹu`}^Mz6ڴsT&giY:Zf٘F !?P&% 4S['`0v s d:X6zK  *t#~_97x8ts=1ָ>9M^{ z^r.Vwm;JIǶu.Zp@<~{t$. A*|@[S72oN%8^e" .";z^V zt2=1CD% ^U}9h<.˰,66QJ-"T;M\AJ8GE 0B-~[DP^F:dQwn=p)7 ceF<J>(JycQp]r;&:d(vm`;QHMm* lA끒AHZy*ri-}l9{\ 9Ě4ܹ:Uo->]VT ]uRTonXC͌#ra]N%ƓӂP6B!I,a6ZE$(JYTⳈ<@6+M@q-rU]*IiE~-9Ҏ \ 1ILYH|WfVᛵ1Z;Z{& mW:GrQK ȣvp7C3*7[5*7$,Bk|Pmڥێ֤ F[W^ڰR3EgPO^\<#Oyhܬz^\ly 3xe$s?w8WG ^\ 8$s"z 7}7猎[~#gUZFcϲ[L&\q,i$[b9uFQx{/*K+V}˞,Hdm)Inzl%8`P:-Y8 lH8dk&G `39fׇ#I2Ɩ8MWǏj[N }ּ4 "V=Y W%lrFx7=:u۾-tWUw=sH8CeYe5D8W4QQ0M3AsEB4ԙMޡ6(툅)ӇC8Tfdq<.jR72voB1H&mߺfl8TgOVdyFsL y_w勚y߀_Ϣ0<ݐ}>'f#{;_SW#2Hlw݉<6r퇡*.һ#{%i_@KT5tW5O{F˲)S; ?xOíh(n_j|l;c}վ%!eÖ /<͹c&H<ݗ;vNqFθt3dױ `!tߺ YytHNJbB}=W^颈 E_IJNN{ek>.5WREHt6w.H폄cP;߷VEeI\'U[=FT}9moq`?d|=֙MT2-U&\L$?lzmGJ ֹTˌ30og)y#h+]5UyҤ*uv@Eg_4?xJ30-TP@qދ| /{ "84/sJکFU+*Ǯ߈ Q rJ*e]c6m?,v_7S/QqFW %Coo~#I1*"3oTKBDbٷtGna&-X^5'p+H7bj,9sY)n*Q4pm]xkZ,l$*>w%"n7֖G)+|]p0#: "o<֢'1a"X\Ӽ.U&Uk$['c?$vT@Ky|o\2;Ͷh}IgHQdxu=*rWn9]|mtՏȺqFK 9y7դ8%UnLDM`\^ Ilռ)(C@¶b<df=YhT$#AUehʧD ;E=o!`)܍WvzV\yTf5RXƌ}~Q _"ISYʛz~⭎n{6pNsnmc>eXYUTo{+AQaC\ ;ŖkSۮgr!mOö5lSi) m)`p- ӖaC M)m/bAb)‹*'M)M,CRWlK(nW,rE 3k_9KUJv׿ wPr#9AE fat_A(DGS1{'ú 8Mq"TR .m?V!8Eנ24܋[݁qQ6 /Cm6 ?IŠ),.69J#J1 k7m)c IAQ'( n? GA$QٿWe)O<|z9ú_qa/r?s>TT0 acV`?< A%:)d ܍2;$K$(1n=>KKǺ}ѐlP#(—1d1ks|cP\)ML0I"K\ ֐OGOV9=G`aB6_\ӸwU+;⑂ϘoHȻʖ?6OBO?,V.ʘVJ^0^!<`"v~h&md"%W@]*P4=ԭ=1Q}|_Ųmsd-@ r킊bpyK.yF} YA6vG \QM?z!hg Jɠyoq$U [w'p0^ftp |57 {ŐdS\M0 z:^`EFv+</Β3P$zSk$ ^WUu;'wQR5]$1LjXbz\LӹPlUxC!qI\<0T+Xm4:vW9O7: ʌ5kj9'<WlISOl2w{O*S}9Y䥣\f ۖ88Sf`]}!ځFpvpTGE5IX4)<{.|=:Mϑx9NqQq&e\t-ag ܯuΟlǎqZsBb ׹UU'pPIYe3I ,{Xfhv떭mČ9+OPfWǘ_T$RF~"lxQ7VPlSY' LUyu> , g@o6!iئYRpGfE|FkіZtV]%ksᮂ ;{d~#ˢ<8x$W5@S2EJL 5Øϕ?OE%k;Ou^(=VNAò-SLj$SqQOd%]cCӥỸ=2n-g?9oǗhT*eJxu<Yip &jA h( ASO]Q>p\݈`[HXw ZgY.d̓6>'6]` } ~qKELasqEz-ef)^r rɫgaLgoG u2ᅴ/[$-w_а 6n<θ,%,|AYJ+M$9nl>YlŎh.w]@p8F6cRp~y/B/y6 ?q+Lu+9h֗ԆdSM6TueTsKI jZV3bP3~SDo7jjyz͓*롓H0NV ^'.6ku>3q% }J4t?<3r$@m.O{(Ɋ܇~kspké™~YUG9ROw"VKg+wM{o~KMGq㯻 }y=Gϖ>;ԁ3[Y_>X۾پnC-1 r 'D_6?úD`vWE9JDIJ9c⚝>h~jOI/aKj-@Sy!E_lp2Jdnj6dT|ͥ㵮j*rX{l~ \S4m4lC{s覺ȷz(fWI7~&X+6]y LdVB?(kq8(3Q#_asLI;Y[B?#ˠ39_o:g Ͽb4S)qY ? nxۥVnڇmx||SN8x|G^e?={tчLqvM6US4~#0yeCWke9 o+ |36[v.ipG7kaθZZڷ7Hy}{xWǧgۣf pg.]nLr^AAo_r{X^_ F;^m|I;&eGFtvň2 3z욺:qWYfq-\[D_q}lwM&3UcmK-#cq޿6ӵwuH(YAHU 4∛@Xp<.v7}x9s@\ZA!$9N6^};an#ҝYI+o'~wH }YZBI-vߟ@b=u +2-b~?$}pdc3E $aHp{𠍬O>|&jpIձo01HdiRhea*ƝC֍e[^ n={K&֗}rǒb}8Ji 8?"(qbw Ҹ ~J}QFm;-ucDSDDm[_{--#qkE,27oU;qpB<ྟ0=15J!-o@>R=,7pMYG4i4 ~7SЋr=ʲX_- M5J.tzۧ_~3qѿ{EUekoL"V̠C-=O[ootZ# %=*ڦdS }aGyϥ*}ԿӁzt"|guINwXZӑK_Q>=1iV HymsțoNAX[Xc}ol)pP0hp* ccItxDUjyb|F I*GkmnIdVJ:84X,ՔUT0+"+i c{u0P)Ӫqaz)ߕNSҡElT2YIjVzEu+hǝ-&Kv1ek߯OOBe-R J5 r;v<-88J4_c#Am&b("2 hıO>RfZJҊjK(O{lUe .RC !-뗮CCpM@Xُ){XYX9@ARQeͤ4u6?{[@ v@9\?l)`f$;%_b'O.N*벮`,Hr:zJd?'OJ y|29s\8ز&XRLc1/ 7o CiN-2[8_4CHnom߾)#qʏh9T|˔U\1@-Å$ -}c Vi[_!눥H2ܺo+g+>a2yt0Y A&Qpt.k"1G߶Vfnm>u]31գM}b&{5|=HBU3Z 3(j)Z!3CS%Lm4sR$㨹a*j4o#V}zh'W 8{.tM _Ij<ׇЭY?5t~EA3ZǝhZy仐ё^DZ8xpO4{cNe ʞ<\/O(XR0eZ T‘$09HvCn|1(qVhf4RUy聢U2F!Ǚ]Ef]>98os/gbSѦITUS'JchZi0=R۝mbLc@yb|fgzURT3}ڒT:)_$}tsv7_)썠z-ATdaQI41Qj`t 1#ݼSmXc\eMЬif v U7lfׇ0ӊ: 8oYGs~ hͦyfi)eoS{Ǟ~$]0U ̖*2gY/#jr4U}4:v}֤1n@R45ጻny')W-,.2Z<]xg|BRqm=\͖}ήK 4'!,pHgLлJ0ZPNow_Tpg&[0Y5pd.]}s|l9<_ǜe͈m#Aϧ]Ir)?4BH̟ {,jFry>|ݣrw=ve&e[ϽOPHaZe#{DcskctH 6N'touW <f|?J<ێg]uu@gR>ѯA=-S}5P$y ǐcnm_N0A+b*#8|ٳ8Q`Q/q`:vdQ.`}q`$VQFӇR8%`s9i!;hkcs8"դoߖ35ZB D ~#\ QLI|q{xO?Fj Yi\sLD>6FN4S YHn oc0wL~qbv#A7d`W;<G0Fob7|{6vڤjqS-Vߋc &Fd 1Np]-%V [p >_,sw_)97) eqPĒlv16)A j*m}zࠐ0=0U/B,f@jN\GuUspS&F#?cH9 (`Er~\|pP9Ivۡ ,T5q<MsibJe-#kcH!)'Y`x˼d݀I=Z77 } @:>6ss q@N)Ҟ:]<;{LC Dq,'t0p {$0^/EG 0rq;OXT̲0O<v+ vZwjCP'r,^2x46owI{N NȻ\qe]t$i.NsX48r{,ŦmVU*uc_q|+s@Rt*)$)6bdaU@NT4 aÿOK\bʘ(9:@oAّJQKiF;8tT5kH[jC8ORp/2bH|1ͮkl%۸ bMpFɴe좧X1@c.FGU9Q f vĀjV H* 0G}tJ)SMNΠEL:)ӿ4o :j-GݐQx {n^'3eBOo-c܃܋YT m(reH#Sf;ZpT<" .,.\|QȜAGDA#Q_ x)D-Ns >L&GVRn++yAa~TcvH.FHk NRtߞb*ΖRQfqoT-'k-R3Vt6WA~FǦ/8\_y!KALw@ nCئHԉI# KLu:Z Rѳդ/L(rPyD$I.?o 䓫l)8 i[/;]ڒhTQ uϮ5&CfӵY-8mò Od$ķ# 2}ښ "n#+ƲI)huVG{rne!jWi861qR*{wp2PjM <#ik 724P, 8w@~jM/ f:QoOŏ(+xb{C0U,l_,P&?tآ,e+I-6Z!?֢!uQkHo[X̀]XFi+n| Fmk⺇%ORQ+ا!ʪir@$flj|\M1mϰf99.mz2T 40c8=Բzio||WCIbnǑ|&ft6n%FePV} [#e߲#. ljv2SLb~.mkeyO|. i5k8'0qP 5:z#ncuoipLsh3:We7ߡDž|rp!3/U-ѵ|YEL90ύ  FF6OcFfG o BGOq%QZ1q4mstv#D=-ht]wʾk>W1RUKHvn/MտGcc{[5.h3&˳*y#o d'hhn:\'dm#͏|lgxZ*ͪs\<Ȓ$p,s*+|o wS㽮,ꤩ5|!+!()S%Hav+A*ctl>'q~l(hsY, k/$Rܘ٧;=w>U^-aMpx{I$>mqL4=ַ(/05Q1H ȱy˩jbdn'iNps܋+NYdySPRPq,mȥڊ$qsxx!b&KԿJ~sŖ C.hiOigG9T.yCPf4K8_ +›*TC2TlJadnCs 펣8e#*`TTG0mxZ$'fӠ }A[Q_tٷj6Xm$JCژ0;bZ~cVhbɸ+pEM(,`E{m?W #ϺgRsF}ɸ2Jȓ4+iD)n=3w9^jR+{nF8s/3HKx^k𷉘Ua$*6#mPu k?| Ϊ[=qAXarDfm3 7i5Z۩VQSYUՔ>Ɋ_>1klћYdHTh-VPN}WIxx; 3[6#˨\QgL-s0BOTS5#Kb|V|T2⩖5elC:>n+[0#3^19J#ƎE$g]4éhsJ59,Ll}?k(g GxgJ^̠ȳj*ǫ[fiɸ7xJ0rHhSPw˝xž@p :HWV$ ȣ8Z$yfdg@n`>MD2w첤+[OރٿO@IS^0 Y^ײooKc|9f}x^߄̯kP~ٟ+&xVM\42ܝ@rҴ=)[ /5|uOkdzl,Jts>017.Uw`M`{o/ <$wbPI ^ݿ\t."F^Wys[TRKù(! $g =N*VWu￿9@V#U2>-|q`Oep>4kWM7d;sTv?*Z\,J&@Io>liXAeKpp5iiE:-mN\S,{:kv6aw9ƚ⨰}Rr:7'hRC U,\zb-7~KWq݈ ٻJ IPI߮mj3N<%LQ`,7'4eSKGC,ڊ"#H'0R\AёSf'm:_醺6q]&A R/nC~RE9EG,CiohBvۅ| XI~GN݃DQR5ӧfks0~} Tdk\u`ҳՖV^K-n8d')|hLU5,́nv==α&xwQ¦]/*K%@m|&Qe&4GI薑_% U9&v7 ux짘(Lgi=F Sq5UNG h ֵǻ\RsUo&c#犛K,,j`-e, ӒR5XsÜN RѶMommA-P\B-U\ tlb&x%?k#hMh9 PuMOX"U4Ļbvqe*X̞T{\7}#o#_HSӑ0ȏjWZ Ab-r~K-@h$F4aqVY|9(#p9(i#$ԝxs%1 ӗb$mLư9Vii׽|\|zhQ+mFtRux NVOΫ]>c=F&mj$[_F MnJ_ F6˿+m;4VSR_ƔNz1|() V`ּ֒gurPR)6 ^s&QByVk'lZ yC=:,nܝoA#HX/{7 :vB3J'vQm4(K)HmV}U `,؀F1M*pY {*2ӗ?v(xUid=SlU?ڨ\o At\%+)Ԥ kyzl;C&'p#PC(%%5;m/)(dt{r3=rJS+8y6Y˜Z`w.SNہbqΓiEM#QkJ5 p{7HGAMoQ#{aBaC‘Z`X؎xSðTH&N(K#n]9 G,Hsm1N&7Ǻ\жçc-4[}-JF Q큑cI.NiAvJX68U@q#)iw_|'Ǣ; !Q-q;a;wXxtN|qS StE|M+[SңlU3_H˨qIl-1_pNqUVNMM}q14P;c+ٯ=sL2rl3j鉦/3t }[eTB6>[v(Q8>vpf_@!Fa s,^Z]a{ʲE*)KpG3aш5o:fp}hB<_H‹xpϴr5]4*շ}y9unvV qftI!:"'cG_los%m )aZ*̡Oj>kWOD$em6C"h8hnֹYi1OLza-d\՘Ԝ3yVtn oNs|yM3TdN9M`EnLm>m],2C/u+g&kn΢\q5{vVf#TuE`4gQ|AskYyVZϸ>s:|/D- FBz^Ve_.uIVbxUv91> :xӉr7 .%>;&/ro=.8CDwb"n^ꟘpfyY|R-YY,gSM0" R@߅ifkhk@Y TbK3&gVm=/NYSL|&0Vjx IޜmcbJ؋?d{*=Bo"+:O SM=K5u5DfA!@J]qdDZj姸^K\üHp Unw_e,H!i)e!v7cz|1 _7R՝Ť8l(ϟhj'ՓdٱխdCTtuJӴ`7cqִ+n|>:<0.m_C+EfUӊg+!s]T뙡 ta]AcI#ik|ryۂA婐dE[S5kOS)Gxks1DFGkvxxv Wz@ a\[U-U5f*㿁ryȥ;щ|5uJqy8iquNiO%41!زЍ^FX@vl߶?%f'Ȓ$7¿  =8wk!aJ쾖f$~6c@4XZor'jVZW:vVt Jo+Ylp?e>*E;]%im>kr8]kIč-5\W#&Vk^W#>=-p=WJ~73=5d'@%>XO{k_{\x's;_+!=q፞R(}'(&!;]#]u+sM&j|>kKbi\2+wxu؁o4dab1Dѳyn.7;'om4>jTjv3uދ@\h5|?ҷt}ǀ1Ti3ip=DK}?j8ZnJUr7QeMI$=[rMsX_'۷|5!浮Խv[v 5~$b@Sq#|"Cfd4e'񓭉ntmg>Gk]KOٿfYFe fE]i"$Aȷ/KG0/$s *2OMǤtwuՠQyeZϲVܭ~W8_M1iEB]a~_\@ 06qkָ,;o۷U#amPUq9>&>!zh*1P uF0=2p& ,!AHp22 nu{Fja+1^$,TQT;\x߁;lvY> i4LE[i{+PCNEKl[0WW@"#m%4 @e7;[,sUýPueHb@HuR4t>aP8RkAd<votN  pYCZM0#Q3-[7͍h#Rz ĆU3)秡uKbi9HkhFc׌g<؟X%5{#&O@ã ܨP 4S/Vؐo˜y7:B [!+0I<W;Y7d!dGկMAZ3$ZӸaQIPQ4lB-^0{{$d})SI1kM"E<;4$mЎx0ևdmZrn[@=c8w4f>ajbUefsm >'sK{R# !\HQ;׹36X4mG&6 6M#cZ{XmɵAQ!9߾ lJ|`!$g<i6(w 4M$Gðæ%*^9PӲH$EKvO|2 VN桞8 ufl=5T֝%GG7A<xn ѢB6*NOH@&Y)֍T v;4<'9+1Ƥ"o 7ܐV.c\h ơس7h9o%Iavyhм&&$T!l|?>dmn0x9U,ҩ#W!U܀oO49WerU5LC"_ѵ%h19W=noa@.dS EjKaEiZ@5`r~'#&.-HG ĕߐ zЩId d)T(F ս뽽ݱ"N!&,跢Rl76was{`e6ď#ԩK(jSQ[?'[䉠D8$2xO r*#[α0S: lŝޞ*k-LA=S<4PVFu6byo<7;v.Håz[1\.H|=WXo}qWUzZqؿoc<? WՔyg+QfU=]k7>Ըju"f%¨piŴ~Z'jtMM '^ju3vH{+RB"c$g9._G=8U:q5-ng$l'PTx1]j,C9ʗL9̿$7df;O]sF?$_zc_[еZm;.8>huNk+.]ębgAEfoO_K ucuIJ-2C+b+دN95vI>jZ4Ejz"Jrn. jqG sLʚ:<ŽhL )f$gPǮ59x>t$T4EO qVTYDj`+H6s [b x/VBc6~q< \9&E6\Ť0,T~=ނ h$6 G/dWK“ *`+ i7[E{7? }/hp1;.iQGXΏ1t6nU-.r$ks?DHK ܍ɹ!:??3acJ"ZxdG&n~27oJ̎`BiUEnqršCev=5 < 5)l #rGy߲@KA4iGkGd\ǾrYΩ倱vz']N\]Nj./%tTBCA+Ӑ,j>[[#]Sېf#)٘ <8/ѽIO7.6y<$7ϣ?ET=LnF܀bOǦ4<xt8c'ATpW/ \[O\lPopG f >!-7u=s"n$. ,wy$ u 櫷 : <,É]VPշgMqS-aԼv=8 S `Y쓉=x4rn\A=j})]lMD2!G{TpT]{{8{ࡓ,#L4ۗ1=}q9OWkax8_)=O}f9eU0Q AE]yhx`E|u5Vg{*Vŷ8 a V~JX7:h&b$ ? kԠb`?m-aC-2yK`vn R(!v$yN8v8L3DUw8o[{Q1 7a,dFEyBGM%46 s^wJ:==KTJ݀:h"n?S<)!-`HP<~.}1`;3kiTJoQFu@O_LzG50X~ ^AVFr0ʠxvmo2߯ ;ue-n)+1EO yp_ 9`I'F1"ZE2;~->mE&H@t}r䙇e\G{{w`%4,(2b!2mIzr8e`գkCJPɽa}f?4/ՄSG6.7vj,o ,]ﲎ@C2l+p7 pqᷙ9wmah(YJ8S)Nx&ƊXaaL\ssK(k'犧TVsQpQs-*/~ZNR%Zh^! ̿_]خ W*Jr؅]as>6~`#(P AЫ\kʊۑߦy)/9M U 0ouY#( SRSet #s4%]c҆E;X9 Vit( W&MS< R [vncݜ.LOAHHUЋ$>Ka4 MGab;s$nk\-DbHK Hg'`O$kAkGwаPfu}D9k0:9/Jq^rFf?Wm- m^W j\/u';22QX(EU1#0t}(dub!gY"ft:4 ]HӃ&g"{%2Yde.s,T0QsD\е(+g̣IH\_K+\0l}>k_%/J܇t7湟ogmĹa:P|I6An59E~E\ xzgX8Cs ca~[F]\oW`Ϝ/͒{C⚪I* Qi@jW' y_>G0${!laLU@8cl4)-zV6_.bkvlgj-јwͳϸ{/.a&)odC,% %؎X%:!&S:IA ixo8kFPxg)g$ض@~#yOKN1?[9{UqMCI%$Vȱ%RBRB d`"cY&ԇ9xӝ;H=CO N")iCG,P4)P#r#,{Z2Y06z=? sAN\޶kn*2^8cGIZ9buE]V79}4:{zw\I<3O䙧p\2 χQ87OoJ_XI檹~]9|^MpJ2MjvET`^A6[W r1>\b. ;`\ZӅmr\=>IƼ8*ơe/߶0v)bNQk ^2 qZy``Pv@Hۘ$#(NvU{/V\{v/k(D}pg z :pTj`}1:>PZݞk?TphCwͯ͏:*W++Y㨀a@@ߞ?I%ΧB~1Mxi2 'TFYr],Hmd |&j0y]їWq~GAQkE=~QOe̶J?>7:,oy&=V?ڇ g9w fuIWMKU$>Qδ2fyjFq{oA3ID )Z_ZҚ8_LÔlM|h2Ye%qX(7ԮGYSՔ%h4ZD9+ǯzW9Gx %=yE T`,L@VVR};2F֞>X3j6 Fc(-zѠpFkAmk7ttehEAQ y7 XR Y?p >얤۞(AKv M+iD ؍z\R~vmRv8)JY2ٵj-:|qOQ&|6r'gxCToB3%?mkZ3TO-%?@| "B, F)-ޘ$p_S@jTݘہ$77<)st^I[I&8;v4 rg]r-cz&8.|DC0 ݸ%VM*|b|P~HX2O酰ߟ26ea#y^db8cK&ͻ$DFV;3^\ƻf2Q#D4A4m<6Il5o݁3D HybWhʡF8[R\@pk)$"{ wAVdqX1FnGCHrIc%DRt۶0˟.7{Ý(+WI =Mϩǎs$bX_ *׹u?< ,`zvl%U |9̿ł==mJ0r dvR)q}*7݇눍;4kn'FEPN+0 Fy8[5ۈ V_-= d5ԈdpW!UR$+e{7[+CIklO9wDÔ|vktadQ䨷 o! +(h65k /<(µ @y oB(lZ5dilN6zaiB®H<,'M" *o5^QV<KcqՅG7K\H到{e , w탺)횆V5Qb/)A2qs@;&V-L k۷ I+I(Jc'#:si ?P5ґ$ye^Db˖&o+]7!|DžءPT)^_m-^Յ%OBIq{}|q>#@€ԥ5 ۔EsûP6줡` ͮ-q$Hز [Xnm~Ĺ#ɺK~ø*L8U_u1IFf[9;ء9ƆUY5jJ[N_kesqJ`i;(r;]@ҏE}39mѮDX (@G2ofU))Q ͇3ȯq])i»(@/~Ը<5`w]${dwTdqaʲ# ,l/}>cN1)0J Udpf ˦ ZK YU pd!߀j2 yVZ7EA }m}ٿvc[J2`6'DAsέṛ-6e5k1OO3Q+tz_y,,`=B9x 9`5jwԳ^&Uc>x%k2 kcO Ga ϋ(zZERn(}3wrV}-gi*rH+*cKIbϸ팾ԤPEVVS |@rJ<* Z(~HC+mnL:5 m9#Y Ņ$m]4BE*x$2uk.=>N@Y ?v;Z|A5c\EYu`mz_tmhxϺg=M\&yLB6y`r<{Z׷ufxshLZ 7|U&0B.bE76#䑄8Q|ŤCux'd8j3UetfHJAحGn ]omN,uUkWCJ%SzW]|.Ue$.@Nq2[SCOK*90KFy_{߄c|Rn-nk3u -8@<{6_\yUvK!+zQPZ{`9HNܢFiّY]GbqcopcQ5E\Tvg\sPM:Sn6Tqkh/!sU@y+R Wr6'r-[JY/j(TRl-0))Q`9ft< [-EˁcNW'|V6 @CNe6^ˡqujk1ks aP(iP}$*vE&<HnmөD#cvRK*ܟq͜dGSfPwW [Z>P".~!⼔*ȦkI~u y{@&&sF!cD? *)oPȵ{ St ]2>9̒$3i䍉]4,,nn ~Z*TY|+T{2$/$j+2"##1O:]cDXu~\xo:k@4@#{xϲ-ͧ#c&hCX܀} BCn74:a%rzv&78pǪD#T,%ucrO+F #4]Wͷ= ]C FsՅ2-ۃo_~+1T10#(I Ia.b/NWM\I Fn,p hTpTXkyXkYF~\'msƺmOYӯXOAVh 7AĚr4^:P->=>x OvIz5)DM%@Diฎ=Qx9 .VeԒH T?G,؛5 !{ZU/e,vzop&7^zFPSG-(8) 伽{5ʗJeT!"0])ʑAasq냅ǀuVfE@k`|F5ҌQ uu`s[oO!_ Yn~8s }_(hSK@l-bcÞI41H䩙}Ohx͚y-A -6@ٍ][j_)ܮ8ҊV>d@|˯~>xH̢% b~WچIlm"U7<|q8i%cM 7耒 6$kap(c*A}7ĶBNɡa=<.A 5)؁1m=_ ^/lh˂ݙU +>sL=@ _KtꔳeT8Qcae7W %-< ;PE6O@K !?1%2iI@ov@/ܿ,@VGW6JmaEv>O\pP6pvRч*n|0࡯P!V*kͪFw^S;kPGJ~uF ߶+6K<+ Xr3T.ҁp$TPI*ċONx4.mRI7uis8KX@7#|U?4Q8SN8o&!$Z@:o3Jh}8#U%KEH"' cJ mt*)1\\K!\)bG=<"}WVI'+q4N lOcx`θ7s*).`Tu=u'8ҧ_@G vQctOfj/K:2^6W;<2)$"Ԝ}u/C0і#jbӶ[i+%g%Qu9w'וjwDVe0eU4t\yn—tX %&I}ܰ|Vf^9em9ʩǃ'F A=L6 *FUCrѸ6iE#r9z,bCM,9ʳ> ̩jhѕZ07zZ+5OBwPs"t-KGR"jwQܑd]8;rv-ѭKd@_hAIo|}ΌAUhp2q^ҧ9 $q`$.܎>.Ս>3=FS7rS2IhB,FfNBN?*KvV6^Gy>@c_e/UfV235LXanͤ^ӍA)PrfjzVbM+:مƣ{(SAʩaZ\Zx_Q[ҭUB+CN#te_O\{}Myk+MgN[IBh%zSx!D@pU\\kC(>)}1rj 00Je{yro[`㕱 A gngA86+ܧa-O΂*\9$QRA.h+Zp]vm[Up'Dr䛁[wcwG)F[]=E%\&Jj_ӄxm k@<ɫVbX6m^VYuẙfߪyN]O$[WWC*F$Xy$ttd4*Ոv+_KS f U*y)'g Ödnp\ELKSQ,,M>[ @0Ney1Yp%+G;`$4Lda,&ڷ)/4@7[ _r97h<'i-^cQ $(z-ݹNSu곬ºEzK\w+t0?+@.GkV@$܋_c ,n\m @탬"pŘВ;|c)Pt[W{v c 1h1P[bC()*co;jG!(A4 ߧ|xBמ[Y6yba|(yBim%x\Kʳ+9XR.-o| >˪$JiUңr 9al{l-(؝evt[O=-dU~#D]sf:~0Z0[]C4%t#cS7Uԭ#UVBOƈj~3#̌1 }_(3AfjZlX_4_P2,d^*J,k 1ơ#.K]›,B4܏ߧI (sϗRܲeS`;w 墚0QNyRС3.OKZQ`"#i>;dU͉{lɴU_,HA4a3j pýI ҈-H"l 9-9z)%pNoߥ kqLcpI$aa` )mn lF~^Ƶl$0*FРnॏs #k7PDBu7|L%meVj :>`"]%&@ OATSJhK=o/6pC24N#[\6?+K2Tk9 =  B U`!_򈹥hy"(&Ӆ_5-8k~( _= =P/(nŻ_J= b`Qq`zi 亵6m?/"FP 8Zăs}o#Q8pxY5صp6/u'wp‘+ZNc_9wtJSrE݁ ~)ӋD.?Ir- &\TCuXɸrq_-u]pRbYdS?Q¯#"cT֒_#x1YO)bQHEB`on|p"BMPSDvŘqT\9;`do`)Xr ܾxVjw#: _%͔TTl4)߶ W! ^IABŃ5Pztwy$n2]؇U:L8JkJv:K)qrl*GIH7`ښiR}<)MQWeNI,F- bC{G*-?atݹ$BtS1m~_'Z+PE;vЫxe]JT ȟO6645@ vدxfł75@@9CMjhj#$VǜLpL4ⱏB8 T7ɩjNSWPav5)J[Z'Ǘ'c@Wc/E xE֫y^[GfFk]f'QYg"c!>_XH<3^}6Bkx4Vk._JihJGRO1rL9: XUȹ?_g[ORvϕAEJCK+ -6w+I=StYj2s8*f)Wϐs2"*FE\~; {N\*2 .2<@۲+:U&I4n۷ji 6{9?M9ozƙtm,pU%]UWysզe5e#ܡ]F07؎*w5bsȥyt=\55Jc{w?16=Yxn )-CO±qU&Q2/"NWAl- 쵡\P?{Aӹ}m9dy9;^6X/Ndޝ;w!hl2Y &9fk dG4}{;kiZ,l76T̾$QNjve`w.؏E -M|qE&xz5I3`46oRvZ7l%-e<3~w -+sXE;RQ=Ʀuooޕ YٵMY*ZwC߾4FÄ6@.܏\41ZMNNO+X\$7pOyߙHouEiEmI ѽYp0D]XOl62)KXKűR^ݭ⻍W9KC,F lj~a&^ƁrZd{,Lqw"X,|[.kp֐1-vۍ*g&bdfmС52V$2ZcaE6q׸bUc}-enqC*$H ߧ@; p4S prJ5Snx{nқ,]xTRmuo銲O;$xOx; A[lHvd)q.# Z㯻3sDH,IFӧ| fkЈ톹QԢ2 Hu%XBEoDhpS݌k \^HH//<< ʩ@v6c;N=RݴM%9r@qnǯ9 P-xK4CsB{bap29墟yAUP blΑr/E}Pm UIVݎ(]VC7 o`Р@:GX4HB؏xL5]=O:4hI;m!V' o9_wUnhC*I+H|T7^sO9 qc(WŰ@: !>U/>:zex`eAA/F(/ҴgTWsK" >e)IbA-z&<(e-\~ғ ѩ~V|-s+=XryJs2 qaFX47nwC (!ړb*&Z%$˯ձ<ӟ#]\zr> đH]unn{v)1d9QH+| Q f]q5(i7r'Jk#֍4 `p:–|AT*F`lnsNŽeV I,GA*U%XryFN00Ae tQ{aC+NJF` 9إc@EA?q 2xRtyצ+Ia,KwsRKNF!nzGZp*_T3lw߾(7  ""bkYUpʚ-έ2\8 p T_ lMs kz5;Vv^ߖn- xtyADsb1WlQzbҫF%>vDFX#;.i&Wȫ3zj BS{߯昱uZ ǽ?b_4YeKPef}=qZY\/:^ޯe:j5X\(^$J)xMs8|E"ݍz4K9z4z->?\f 7kbZ?NRa]jx5YLF #m񏯁EvºɜHIi(^domlKyE9Z5 dUX^Ws8L$<otca|IdV*v#u)evְz(ե*ih#cfg {[k)<7yO#̉*b#!hRWFwGq?mQH7fYH8GuZ9y)e?V!WUue=7RQݯ DJOZmlN(ܣ%H%4`١:`]LO|vZw\OGUT<)fmчl~oP#~.cR[ x9rZ~hŅ=U&+)mҤN]jYqdcg{O]?P̬IF Ǣ2h}mDLbִe= b#̎eQWʽ폗]|~q'/N Go.f|N`ͨAF(*۴_hH>(i8n1Z7Erwx?rVC GW:p\,L/NsE%DSI+)BVI֒>ohUx3^xRꠡ2y]t v(QY;cj $;/ osP84̽q}.[UKjLb ۦwfygM-^Tǝfprܻ4㤈IUu+ ;TP-Ƚ6$|hicVĻ\д\KX(㻏oUOc=7abf 4B6 mA0\B(|%֧9*dq+QIW:Xാ8Ѻ@֯|?UeUO7_Q则9C\JE~)Fw^Mb!:Er_H.5;1w<} :=F˒aOb rj0WS9{I5?ތ98 n:6^\(1)3?evCC%ؿ{6 dۨ9#J",O ci]y 8Y$rT8%]" nc+s6A7mszOHjx$GA[z6-`hiz+j,YJW1 7'شG7D,5W'wFF,7-s70nEICwPH:A:ARr8T1$s{ZChlR-}^\$v)kT &3,y|5" k_H !ir<[s턆GJYDfP-Ϙ%?8Me\u1͘Y ܞA"wQ^FR? Ż%rNy1>vS#1(VhُwĽdxI/܍*[|sxu9XKVt.̶tκDmɳ.#;W 9CdE"]`j]mᎶs3x &׿ l$Iv&Ћ[o Jc %Ucm";{Usg**Py ›Xw_ <*JQNU34D1%}c!(fhc^Т'% rߋ|agi_`yJ $Y|Š乺[~ɳG,XEQ> 21/,Vx5DMIDS"upqaPB-b!`}4_-n磀I"]!=Xl(l,4@)^0"jT9s$d@,H`2#4DM$u/"61q,3!*QV<ᴛDGI)GPXs^N+Dā$Wa#fb𛦚H(($ L~!ǹRZN['hDQY۟q3#p)ApDʤ1`mrzXmm[k T)< ,Uj *.X!fەq7H[JM8Y-0;[cߥ|e&:q!Lnvc=}0W6{?DiD/[ #Q/=\a;IfTo<"xTcI7(ecq `{II&&҃Ìh;d_G J*Kn)g ;e]7|pe6pMBHP@;[bߣSbyQu 34uj 4\1E jY,GQcKI"ӴVkZѥmhA$ߐ15M!:il}0m;OT|Ep[Ð+yBˢr]#ifDE nw;w  ό֊)GK6 8I R%, m”df(I wb(PTx >BZ"R遚]G4ʪ %l攌TzNzwyfvKdZncK5,"J/M)l{croD\pyK[6#˟Xʷjf Ž;@mOriNSmp\#2e V:=A fCz]=(Cc`:厌P>J3CPOr6.{?dtTtv8]tJLSR6%+b˹USYZmt@,H|M!X16ޖf8,0XР ~ؽO’*OP?>`dR;[2,jH[XFq~1=gw+mg蜊2䃨 l.I V)тjKرm R{|)R.Q /GmI\pufbmn}|0x䖎_[ej&!2 + |y݈꽗Lv_cbrDrnXm\@zwh5-8娫1-V(Oa:>S4/`3A.0~3*3 h1O :As@/ L\T M7 6Rcis 7Ykio6YU&e/2Tr;RSjkZY&t*V81[41< (#XbZ~×H{N{+-`]iT}NT dh<8ۖm%?R|2CEp5P;̸K5\(zZH<?\UđvΏT_٭M%+ sǥEY.uyg+]8`svfXn3k~c0yqT&adp4UQ I4-M*<=P=.1(a>x1PוIYCG,xVmؕoq#6:͑e5jҢir.jy "? @gR{foGlR(32qN Fs%5@h|ESemi 3v *ٲȿ rԇD~8Ct`Nֺ[6ۀBm/ZVsRf6K9U@Ρw;:tsA鍮 R4N{B]FmT4?eGSYE}H \n/۶weGʗ3qnj&**Ghǜ <sҠ𩽗Л;N>jF:-dy g6vhAtfޝzJyQ#U'݇?mq n2w4*Q 1"WGx6u1F< pBo\7~k5P3,J#lcd40 =ܸ Ts{+B.GdR͠Xt!S񻣖zNpUs;ٵ9U.]q 꼃FEQOĶv9K"FEShhA؃`cO ^q)V4Ƞ{~ 9"KM!Bw( R2)TnۮTdFT$l9~qq&u#lvK^si-.7 #ʠv@N+\&mϦ-uemEd+{yyRaܭDecw!5k]6plpY5H < ULw#>eSn[{ƪz֩ .G`nb4PR, 9v66yG-k {difݰr!bm/ qyD("F~Z?lVpy*%uw > j&m5hq5]A=[GnX8tJ~*jhxIo+ k}n{2|ޢ%v}q?O'+2b*ٜO«BME;(F=ʣ~UT8(~8]DWh!? ~]1}TRp+ 'kwxwMrBqߞ)vV M`Z &;l\sUTGYu- 9 t;M4P5+BATM&$Z aq؀#cNTUU ӓbI?ւqdAm[<ߘ?\nvJ̃R"|.D<`%~Nkz$/ | 8`M]Ϫ'FXA&to5hd#OB^)2fTon[Ӯ+D<ȋ6SG0vR4vc{4~ d*G-|D43iq}#'ۿ]/{Aw 045<-&meIMp ]K{_tۚ k!{,NXnF*nPR s{ 6naDV 7aNk]؃ `a섆> I-rx!nn'HoYUISHHn+DkB&煢*3t8{0ܟى9ҏ<cG Ť:*B׿L5I.ZDşı[Vя@!5l<'ye yAKM`y}w,d/$Oqa9O6%@$E(M֡qug\k+O'e.U[q eIELM͐1nq$F4rӻ8U>g*X% 1m:z@i2]qz FE>`ꠄ?OGr{$xU7.@(`oמJv0kRYG4hihz%U˷4&=d$ [vpiVIGH|![,sv%[]@z"X6׷70Cr[Gf = 3ZRQ5V-&CILLD4L 8AHb6]-b_p;;mi$ۯ!n靷uڙRll;ŗ~,Klt'w}G`w>28`|xJ[6</™G9M-pw  g9^o_v@x.[STOHP (j2ɥSm}:*}8sl?uF_*u,snSWy8G)ih"];^o*}ɸ #j$u[t#M~z=Z8|g21ɦ$~/B} c˯p DT8Ԩ5?ݏ->UhpV*bc2K=)4ӯZYNY&d/w^[s2ߨi?Wը[Xbxe:Tئۡ?{l{'1p%EKBwUQ 7I!F^(מxQ*?1m08y#Ne~RIi*I ]Q3ҲqX=M<ҙ1+qpQKdqx&aQh>xHkn:n+KfǓߋp8C-ϲj6knGϪM86^te9dAUVCQ.H5i7ǝ5 {-F]LTޓ 5"TG0%rݵ{;b[I3pun6WT [SgYh n34UV1@mCc`y[.Y yDޝ(d|ڿ+,2֟&̾jֲwS9I-tF5Z};\)<6f=%5 iz0fxEhݯDhN`$C۸l5u3fʧθ5z L6S x6=9cL<*G!d{ @<_VP.}UDCQdiE[VύVH;DWϤ nDbYWH+*r\ΦY&wJpjd27 {HMdŎk˜K"X9Ϙ-:Vl-χM<2C+'w!գ#loكGLc_Sh9rN*|s:O<@H0ʣ A\mh$S\>%4?R甋VVC%JAlnߞw8wO$"v a3\ڗZ(ȒM ,fVO{Z,%s_Ԋlij920Z3)dSA6[ц=lNF=$zhvmhZǵ) qIYELU Y̲qSnX=>P^o`tNͧ0z̫^oIo-.K pEU$Ҁ|3`lߞ=Lzp^8zmUXURI~F|Eљ)ҕl {bCw ڪqNs<-RK[*j$ 9^{T 6G;ۯlf,UvJ2,○7́V#NP̫WfzKL亡mUA&Mjd:oo78x_?ħb[W/aaTs:7*. ra D31qc_[an*7>uw1?'<4R>lc,CopR甝#0`Ő\zAempQq}(̱sHb`H80\Kn7@,:L 7˄) 5 8K\H5a*  '2=$5!n:K RLahștH tmW63+k~ ;a^d`Mm68hvwGǮ8 `JR ؝]}q>Ew') t酖ot~dn(i+ݰq>R#*ӟٯBegVWEia{rxPuf&h㼈Apc"1ÔM_MK;@ ȃov(4;2]LYw?(j,* 7e>=EG7&M]ft#"5b@n9|:~R>ʷM,vTkqU8M;y#TȎ ReH!}зmnnJ.)iWð=\ZӪ4E74`~JekE;ņ6y=omm>9HX?KUY+ *"EΡy@r-P+;Iy#6XLĊ?$܈-z9uH2 OO,<۞׿M< I?)~!4Ox{5Gbá .t9!Qn.:|%0T~;HR E3 ?p\O傐nCF>aQtQc珒yl!Jy#)$~u-E }TNr6O%B F@7# nSc|4ͦG=2"Kpn]cO~)J rUy\A; !{Z߶KM-7UĒ5c{_|pS}Ef>S HrӖ1%.?e-Yau4_Mв6<6J($RA#a1+˅E`p(# *k!E9  ױ煵MۚoH)ja}tsK;2{F w8?:azVy(*&[g&hYPt78PԆ * hemsBR6"wRp^/C6>"2pۈrJun78J2MDt |!@xYqj?XCCk@ST? Π,(t ΍n^uF|(d4 &|| xͥANi-7E9eK*j9UxC=Kn# ՘]F>kynי^bnrx,y-e #rة8 UKd\OrʺPiBHjOcX(4Zhdj֘F9U >gS,($b | +u;6ǩXϠYsi?uszJx pe(n叢(kMSNejf>UHô+7O`QAM# m8S助JHVo ->ފNmg$EVa;zbX:@>8+KK;{}_W7pd P8QOŒe&6Cao.ۦ$]`+Z7m IQ/\3E+:65’/YBsZykB^F'vpwyrh U/Oo6|ex _ʫڡI$)_2|R EMǘzckATߟ)FS  L^ݧqrJٵ7,(3u "ԏIA-sۖ"Pa/ʑ5n6;ssEW_ j7kh(NH_SlF7۰xnT^\ suI[YICeu5Ɲ+Eaӿʑpp( YněxP?\eF.;~|hC $ae #IPv-yܫf"OÂT3*)FY]g;!s&ma.S4H҇cap~\ 4Q; D@`:6UwRte,6c @?hT1@8۟O\U|d0$n40}$K߱ۗltD _BJ o/ňG8I4L ߟ{gu 7$g?3A> Z?h9I*LUn6ߨƧE^%C)&Qy_>_,G"%UoY!ZGSK hݧ`Fw'לyѦIuOO\rI۟\RYRtnuFUVıorQ2! Kkۀ#kp6H& ϯ|i#pnza4i 5,/$Ni.\f5TYlǗEcYu[puHc^&[m{,qai(N..{ [cs[omk@Ŭ4$VߎPQťloJYˬ<CS{9kIm m8^%Mo|" TS݁( |Qs~ޞ6{=):_~p BMN:Z"(˲EY h89P6 !G77Ļ !`*W&'b|,q@7eE~[^.=Uͤ3]lnTa1$7T 1RnNM|toKk]R.^-%8EDZޤ=}~؂Eh 6`K?`9Ιop[KIAUQ G:6d;kW>~Z?E| ao(_XsM2曼-Te0y' ,kzwtⱀ-X]*paajg?ct WvU-;_0#]猧Mc;I";"qjqK,uk-oF1:UǼ6tO /h|:Zj0ίu*dGSii;4B|$rxgoViM0|XeśjE=BI*a*dx&M>$z 36Moè|mZ)/O y4Q/s[FVhcN}45_Bx;ʳ'C@WA>:)CTn'gͨꪊ^-$3>e&8N۶Gꀗ _ȩ2Y+(kTm4NH stI40 M}|URͲWMWR.K=;H)lt;cH0>U%EH㼵#iz*,#&c._2>lg ҁ:6yE?}֑]SKŔ.O .ZL8_Bl]$u$SDŽ>;!{ mq_UGfU.azH<瘷'Pthu _4;m=,<?᧧03L|:r*++㴺cA?9{X]+BPPqFi_YtECASAUWܥof}0,cRQ5}4mgDzpYKUe3D翮+Kov-C&[Zr6)+1 IfФe<>*h0 ,4nkޜ+_ٝF~3*jhR$,0˪ǣڸ[6 cM##pϙTZi*)2Ux%+tMA-nG"88=~X[vB9-:͖kj'J: ǩ'KsApXvG(^=\/*V2JJMWQ?eX+{lv8]:+8.o KfmJgPx?uڝ {אC vӟkBe9f],"H ,jě{sk{Io>PQ bFЪ>,+ rCPowwrc-T.7aLZF}2ֽ{mRÔ\&;m 7<{[\NqqD9k7@̍1Wx'2N|){{{҇=g O \pBWE4 `6_~_ 7fZpclEKɽqivvr6JJi|EY 0>fFlp/nlph O{.irUڅNsq4XPr$m׷TS[eIpOE6r51]WPqAsVY$wt^omYC!GJTjjYZ*T_pvsLYL %{h'أJ1ep<ǯ\dz) ;[K@m}'aR{x#DJb%f+##z]]nv":mF|H̚nؚߘ#Q}R/ ^YCّ\83)iWl{R'[D }_݅oBe5بVhcDL`ߟ ;-u~̒xe7:QjO_(%$OQ-|o>/!(+IVvg *5JkOܫ,[6gp_S|54J@)U E{_*N9 n,$ d ǯ4ۅ*r !t>>5hrs|/z_\Z =ݱ甹YG׻gx<[bV]=(Fwu4,.]x6'ab2`s]QO4Q: F'#D06 x (\ w 0͵;evm,߄%K~+X44Ox X3+}..WIH8Srৌimk ϥwH洇 stp:Lov*@"c4x()/maRnG)0Xou`Iw$&?)lFq ylq.k*h$B#:{H|sg1I.Y۸텟|o򥢉! ^텽 ] ,yU_;D!Is~[Ny~J6%"i&\hvBÃ]Qq`1o@Ԕ`5 >x^ƓIFq|RB\k Ct.6MVQnG%0`bv!ſpwǴߪ49)n Q]F/ݷ–G(\W+a-sxXECoڗQRQAfT;lbi N1e嚲R%<4\]OlB#g w _F_.׶_i@yK{㟎aBtzl$z0V἞rdgj'P7a9g}W͝qʫg%C$!_v1:kIe"69إWAP ߑxt+$H4V2zzѺI 80e˨rꬣ?)ccO+\97o=245zv[pOf1GPv]v>-nPFqC˪L͜K<C}UbzىeyC& -4Q5pּ͗Ѭ5t$fǨ`Zsw۾'7\Ҋ:$}E|4\Gxy)ZA:JO%&pǡV1Q ˓e0eg4y|Fg*wXHXldR4w r3.s^'9\svVU/,n4o`{-y߶?;w9m}g˗ew2R,$SC'>?ڧm.-Wyk[:!czkY _s;\;Ef]9$jʧERgwڥ?J`/mı*N]Nh~[22ڌY \9u ~cVx{uǕwO1½\bwg\]yE.gOJ2HAeaޘfA3CkׄCd+i.$8#1'֚w:xrWUBdՏto§4^rN3+81FT%~PE+% W"p|~nY/R0oTggy٢Jirhefx x8 WĚ_G9DfKee-wO+5^8j9:EV>KZ$]:cC{x?ihr3x-ɳz 3)(`dĀu"ݏl`NLRX ҾJ™V};{$e%$e!,6*7g)lhi7’k3T_~K_洼pXe8gAH$ \c6ߗK1v=?xZ =$˨.GY#7\ͤ'iH P4˒8. b^|7TdrT$S%mŠxuՏ.KڏprZ s4}W)Df{RIMX% *uNw@-otO)ڎˤQ\]fmU&aT=D夸}/˦> A+֌>mf|2긷%r CjӕA=lȤ4?lV%-C*D@HZǰ4И<ܴ?oSR"1cNC9Q$2P#a)Zl+CZd1 #s1zEFㅴ%]tM>x4W4w ᴒv071PPPv-r=$M#Ǫ7K-p఺5=GOcmιׂ9=jFq}84$$[biB/kvŽ lJ)bI,A?vp8w^0]Wǧ|),;’q"a_O$ ’F!GoZn ,kJ9[Lٗ`Q@3^i#*jK0'[s4*L@Ϻ6Xۖn}} [s&JQ\m=mJ{F*.Rwqo_9ﱜ~?zG7pƼ7u`q)ߨ\ǼY.}TC` Mc[h+sI9RbIԽ;~-V!K%`w>㆚i0y\{ѹ%v8Tk.|NHvn4{]sxdM` +a<-ࡓ!O a{1fRA]#GD1Bߗ_OO].kjRX(cv[Jec/D~KG#.̹3 ͳxZ^4%l0@|".@n>5 wb|}V,KE':WU^GT2zC9fA1bP!s^I}An 8-s̒+#X*jÁЕֽ`0CM T+ e?#V;SǛd}A*Ohj QPRG01&&x{Ȣ/ -=>;hlVEƹ8+˲f骢 L$ 0Skȶ By؆_Vtf2Q8x;È)IXUHo_gP1Aaw? VTwl/x~N)'F%]DTqML괦GbYG2\ƒ0=q}r8` ,te;8XZ.!6{*>$H >^byhAg]8k3lv])#~߆Kp!թkDQ-EBx?$H3,5f\1I9;X^8ֿOI-?J0yTymSQ먦ɖ|(Ԏ6(v>tzsZZ^x%,σnoPM4z8v ?`8+]4y^^f|QRQh-9-WzYwrՇ[0iS2,5م /ߖ=d -.6q 5~ZOI)gcX h#%}?Cb!.17WMSKRK)EpX ^wǼ<.ƤG @qI#|.3(.~x?}dmk M3[4we~x=ᚚxeazdA }z7ŏk{a|V>\Ğĸ4s"Ɲ>a:4omj F@7ʁyM5UDԢ?k(i+tƿNe!ptXcO-|2GH 7ήĴvE*du;v2ʐw6E a.W!vQsB- ]:'{Ӯd20W@U$*&Ea.l8FeksA$'o n@ۖ=Ff:8n(wQD65:(Ag9FxḬ$;GؐEowLw{(up}vŷA`e.y$<"3*W~]~Xsq4A74Ut!79X:_N m84d! )[}`^&Ø#/T x@]mcCߌ|S􁩉7\q]\Ȥhز$/Hkf(Սd@`uPE5;kQj ri{ҾE*-=߸ebC5GLKpimx4*n[K"mJ+,2[{NI˰FS kk幷@kqʒ{ 3jp$mbn־ .T7B0%[#MlC읩d ((MaΈ7,Sa"؅ !7?8#U\9-#)blv`[38R-m7{o|V8u4=TE%{|7a(k˰? /{/f߾M+Tph&$W*GRv#q2R٫OS%*ȷ/K= RAJe ]*E3 ʃg, 8NV4W+]p.yV)r<⭔!ۘo}~[>ʳc=J #Sŏ_\V.Ÿ$#Iۛ^_54Q$E *Xē} >ȥ[_s؛2n.`JZ4*{h4lN E^H60P?%*,/; D7. hG̢<-ۏ[|< m f#?G,V"GW[IOcAma(ArJ 1tB(E܋bwܓ9 B>`)4#-oa)>B &V1 .k8=6W^BtN_K-D8):A6oFR6Ϣ"~yevo+ֲݒű2>gyvoVR۝= M>y/@p.FeSЊh.Ì3A0G59UfUfv?*>s4%|W<Նxrѳ-Z8!UcFkRJ$%ypof{F\[}כBpw+ pf9VgI{N6}I*^-m5pФ/-+$F/_#![^h[v"6ˤTJF% zL ì%CZ)$Q8tna|m.`-5誖7q~j_T$A6_3ʷBũ {#:DGі n2*Iec #{ 8}F kBVT~Ef6j(4S>a}>";h 2CYG!83JG ipMyU%tnDqG/+ƔOe!)d~T W?|-l⦓1d  ܒ ><^8$la:?Gh9?e4y YUe0]GEOKHs\YNQd0|1]{AO)4 D3kj(ۡ$5rqmzg8O̪}F}ny9b bit݁5m|=lq2*C`oʌȸzLIZUf s`Aqtku v>F F0,QOK@5Tr>1ݰ>E i˲Z9ON%Ո\C3 D-cZD!Q|ऌφ.whd8f 9M }*opzň7ɽbq`{M+k+2̫%2j'W@kAЗ <ɵԅgʕ?p|mh 6/5IPO-W[٧qШKKRZXi?By# iߟu{EU*$*ϣLHj):GymeV3!lڶ,?$-D<~Et:G /~-5eZǮ9*" }ӧ|}K.1>$/Ix[?"\%LsJef. nt=(}PʮnEEK%%6d/a|UF\p_CMMDD<ld -_զlqd=W?_Eҡ'w+Zd~2.2S2E}ڹn~X%.]#JՒy%?~% 뺖->l6o+zw"1fR=q`td4Q+fMFZ"0d EnMOđM 1]s%Er1ϊdіqpGy\1Ye50ZjĕC!PȠ.ۖFt9"%YE#/--c0)zpܔNee-Nh2"ѥ61o’i3̪_ۦ+iI*!]ʐ^q‚e-2 a{r;eCO PWJh)(Bg{ {|I8lx 0][v<Uc*`n:c:Ath=攬Ž9j:6Xuō,.xzj١"cZac({U|4pG啦R,l.SF Rh"=4KIjxh+LC$ԡGK [;6xRQOU r#T44glcogOTl|ׯmpB<]2眮c%ez]ܯ A~O%]p?xeZ[:Fc^ſ:Hf|GxB~y* 3->'ᾭt '~}I{n jh~ zVbN -ױ9q6SRlY#P2HX?뉀d.n_K$nzcJHIz1",m˞,W.- ?@jpKltpyJ{R,i?n-k\CTIi#g,z@*:H'ۖئMPEr RK8ȽeU.qEKtZo/p<4wGF$9x@f,v `sAeԒ a# CDU[1,ߊ͚2lV67[a[,yVE3xHHڶo0{~Hy@TƒD1SQm#rwUq.f[58桶z)_NG4Y .-l) G+zGpUU]J co}cF7Wjom|Ͱ/koSn i?>lU4Tpm}bU!<ҥ(tO 7$܎C 2Z0I!Sg[ qɐՠ۷'` xI6۞S\ V\D$\5_|5R-wr,A{{|qVP1ByQ~%-zmAB(_cd~kĉG VF^v4Ia#kEZN~x\A#j]h;|'W,nTwgIdS]"<\tm`0j\U4;YَMs|z1KG#i,,/~dEt÷*~!#>c9n覇Tj^VwFgZtnH[hd$C&ǯ\2 T+ M P<HS)Hk tae0Q)$+4Yu8Qu X!)+rN[bxW.p Z4.Ӿdp]yF,Eaw:fW'ʕ5Rt !b߻^FHDv$kv In5 ĩ_޸KNhpFA DFnwMm ZP5j( f&V~j ! sC;COg[b6_.$ q+U-O~_R04U7,;q6ۘ_( o*R[&ߡ09T].6, {5V~N!0v[u#H_vUWjKߢL3^$`5~G3$gpEK9]**PSŶf6R]B$c_x8`+MIGNĀðw;z{2qNO,K0Mw.gitƫW:5ՔO5EA ;xE#MpO%HF>Lw^'mnO6('qY fc]Zdfܨ.0T4mMc˨Ho&tyW="MQMNI'qtH3@F [z2@|*H\\ӻ,a\0<-O̐tTPꩍ#fiobyx݀2VAZ;4^]%MXǐvK!swzUcǕd^4D0ղ݁Xu$ohm?i+ZUxjc, 3[8¥$.Y U] UK;\chRޥUӶ+d+M#S7 09ƠN7d#y+NvJ6!)1--\F />>d=.Z5MA]@r}u{-`pXFvֿC!8wK;}eIf,\[GբJ<;WMv-{=}<=f\UĕykUTyl+WQG{5^b? @c\ӖmYm*',Ø[&z(0\_1M߼»Oڵ&C<){Wм 3%%KtB#8J-^'Hδ|JC|Qf7Gt2Ib^@/sY{LN8==nq?eiõqPGI /$LF~ڱ:m<["ԹUV >*x*ܣ(QF`fevGcVcϪ<7'H2Ӄs> *<-zǍi'r$m Bfvuq%GXOhٍvwC}6kF Jͫ[ c1Ir# ۪U)x' e+g~i*f F(a/YC5yM)SGwa(mk/$ײ߲lۏD~҇ӗHiKRWqt+Ú1^ߧ;o sSep-C;dY4?Y(~z/]WaU&,Spw}b޸߃bdꗨ_coEԚ6b%R,JX89Xmzm_.Ԍ_Y5MvYl©-tn?sl+o14Vʸk Au >;u8d2H|<@\U2X;J14clw?)}b|a_dkckm0~X6(iғĭ*<傇H1ל{!Pr.<;̚/hm7.>e>*ꍒg%VƉ?>*ܾt^j$=4Kq"i 8e6i6$qXmˁ0NnA9$e$dﵹa2P)LIVsv2aEưM87<$EK -{cE%EpQn{ kwU {E rUc|1/JTp"f"ή?o~x~NQ3 _kp89UQ$H4`~?O󆇸 ~@Pfwa}$ lGl.z,-r~~}(yj(fP)ن澿l'A@aUvDzq 6O5;1..Ekt=a0eqdAck=&m~]qh+E46%L"+9!ߧųP>Cخ6n/s\ J0゗He,f=pqqM#!uDN!EZ\Ú i*BZ8QՀnX3D<$)f3۝_rIch4bGU"RR7*c i6b4h=JFLzu"opy!K}o1C{>!,SB;\:uDƆrx|֥bO)*m~C>gH CNg H|1- %:VXER> !mQ0SY}v v&0+9Hw򎉼 U 7__湮;Ky)2J0;.[s1/PqӳR08˄{"/0Ywa;m'G&(V=Zc"6F1T>G7'dSq P#[kepH S7Ts*G}T>#m{XnRQ#2 7cQ!7ǻ$aV v7Q$d 1RC;S{ӱq 4HAGfLȒ0.w l{Y4]-Y,4ԵݢP煽e5ʖ +psC'StЃlB/ w8U+%5Aհ}w9 n(nK_r}WQ9 ݩ8#kZ-dYQi7t1`J/8+sTJJn auN8T< _umS“!>fBv$^%Xk* 4wu ܎\<.SQ8X\;ەƜ1rl I.Jۭ?i'6jI,gK"uƛK8 w*CH 1>P93hSYuQbz^%G[=1_l?d9wK߂ZzZ Ek[^C`$<49FW xƏ)J(E>#>]zP=y\[IQuiM?>3Ŏ_񎳨2LK‡/4Izz`5ӆUe2, bDI=uYOyho1zcCQ  *pitZz9&+S_\v7!$P^۾dysOSdkqԙYzi4F0%e~"Vf`ѲG>`&;WuYS QgW8褏1y# 3qq{Si5众YS,-UKPTRmAK&#k67M UtEřmDhX HyCmGov*$lJډt|ӮmF u^BHcc|6q׬9<9U-jJܺ9L 3Iz;  =K_Lͭ&}?}<c\i5s6_]Ź^Y89cO2Tm!{r~US$4u9dgJ̇I{94fw ܅D/mCM >"0oUT.6/D^^XFU2Gͩ!ie$L zV*U$2Ҁ8)㖀6MweL{%'/i4]#TUv7]MjagP4K DfK,C M!¬]| tkt +~<]87og99KCG;͡3V:ieUb5م12V|ףtce琮a--KvStk,Ks[pey<ڄ0[Z2j\!Ǣ{?"s X3̶8XEl@ [Km:uKFy^i-_4=y6^$̨4CI%G6翏8Bѥy'e¹VWMN/r}w^pőjIPC߯?}^c\ErpMۮHxEQZ2G"%z6Z!s]V)&e0P$%@6t9ۿru.MR2ǡHkݏ%_Vb'l[cK#>טSu9G *?pxG(\lᝧψz)wj\mL#(ڭܟ[{qܼK:NmeXi}fRҕDe'(Imn $R3:6V4$Q<οQʻP5/-=ܔE/&wqdF9Utq%A@^48Kke %;S ;08B '̜> e"lq6l4`$mD%\,V)J^=yo9‘,∘:X|vrYA 4+bR6#-GR-=ԔJKZrdF}smҬ-ԋqbt29e^kL-:6I#~d@-,Ba'bǗHSwI"o\V[I(TS.\҄hp6ߐ<IJ= AA~ôFܴ||3[#ŸXJ:zЕ=\s"-yt0iX?xcs=#:KG$ݒMu:FA  H{,OxE;H9K?'S؞]Um+]T{6Q R!<ޝM,l .\Wt|rxҖ~آUH9{LǺk[}Ƌ+GUXX4qF059KVowN v#SP곁 n\ TeejnM.nϦ#Aﲒ$K_W0}s[,R1;nS3Et 6Ap @ hxX75s8*~٪kU_I*?@Ǜ{{O?J"SFW -"H]?xVZ9[;7j*9)Ɛ&`6۷Likn|}x4oGsb%<$(#iy}~#ꍛNi-ux6c%eE<]&"džvM)a0xӍ8M(cQͥ*rFM}F?/k5P |WU^<,γ8C83-5tM6*G'Oq댧.fUcdc`i*T|9iMA#TPF"w$ɥN\Qc۾=äz]U>iYՙ5>w9 trTKNcSM}kۡoۿVt=9~/ueJ*r 8V8/0 A_Py\iaGҷ Cuv=VO>iYpq]¢M%l{wb1:?_wKI,߿k2g) gPe*Ye-8hmw:6Ԇ8>FVsYK`s=ώ']yFQO=eJ9[o|{-7J4;/u^w)"ɳt]' pclkK"mai&Խ\GښΫ.vHLKCrv%At& \uH|.>5Y%u=R'mH;+eЪGs\^YUĜoٔY6S(_ 2JZ}q|to[}NsLZ&O ըx}o{t8{ FM&\gQA[ :.ltocVHtZ(m>kaֱ3J$_ DZK{^8VWpY=Q ]pm>>OzѤ{Oi9\?훆ʳ##Z(Lv*C){^2: l“Zvkspynm2]!ssdڥ۶u;e\&ŝR`Gnxnu8F|%Z鱊Łpy FDnF?9Uv4!Jt8| am&w?0 n@vGG纷L~(U uhe`'T=ҧ. &n6fZӧ Zz# ^kͺS"nNpILS-q..y-ք2aljjXH_,VZ[s18 ^aa䐠 7@+@>}xhU6mXH\v*͐p}ncRݘn늚ep#AWIϱ|ҥ#?rð!ݽ1]TFVR@{>~0TSeǜZ8^|m#l])9S+Eּ~ˏo^W0u?feMFZO- /gE2LeCÜ_ V Xܱ_:~1tVn.G#,Z1(tnt=q(d-+Ook,a.]PvAR ؓϯ<E! ك~GfPcMzkI>Lk~j  b ucbNj~DR{9|WDq!KӓHX6X6N\]6<I!2צ+_p\QMKc';%Xش%T0y{+M,,C߶"ۻrVv$$UoiE*c +snUl #(sr-}QwTO%mjton+ipoF0FN~*>6I ͐~ ]f4,)L,5M'X$ 'O9^i f(W{gS-۾{eLң8*ZGvXs/orUaq/ GFtkO=;[T1dVZ<5`,_ Y rX .Ԫ. \ RH=Q?wBt"0&=$=8KI9x^M, > vVoLOG!qqOﲔfImiӵvpI>"ك~`Z. :h;yUfr # E?[ Di&p`^B\_Ӟ8^Fm>lxip9k@ۋR~CjV?׷iX ۩ F5܍|- K0i¼9uQռ\f!~jْRB)AD -~xk M(gѬ<}%Iscvh+_Nb >p8yJɢ> "2OxCG*)LEث+?(RQlt^wKjH.3g gfʙ+6zaLhh{+>W 5[!j$ںR_Ie-3!88*TQX/Ŗ9&qH}ePxVU]%nKW}0c< 6iZ[m @y~|@?uTn})F&ڏ:aM´@cRElǯtd~=gT}H5C>ҷnWQ1st?Pp^] :q@6H i>@5rgy0}qədQKt7y-$>+~(028cUէH]1ẏRS!{ͫVn#VZ8ͯnUv8itFՃO޴FSyBfRnZ5Ҿ*o0N)Q3#2-]JCD[O'ǎj &JvVaakpV_Ifed#e<|.wN]k8 J7꠳)`"s 7fʆSa"󺎢>"$FmzN ,8Z}pERV1eZtCua`-_u2co.$q^2y2jGG# JY:qp!pfCkYA&"O:RFR0g5Һ^z!F '? OP3T'˨p@6&]Ê .8VwUYVI>S4PJlyLXd2oµy ӺCwxssJCwؿ>%H;e43-s\]eqnQ@5YDҥA;mON |S<3 pHfR'I.pk#mF-Z?{sUNq):b:oݔq\U u'OŹk+,;d"K'ԯIs\B_/˖e47 3F˧=> ]<6:mp WRb!]Vb%]O 6珶,p>OZ6U7㚩3ij+Ficߗq|. KH5w=ETUǪ5v#=4? 807=էsA Qq%wB; .ǧ3ǭ|'pcGN3S&H sp.O^ͣЊ-~|>]N]B>}OO~A7=UI IOCJډ|pb]d-joep~޸6:j<0jT=gX>gNn2Ox:~b(/ڿ }krix:$1#Z0~?e:Zm0cZޗ$򗇁W`g L¢4#)7D3BA6#}C돃|qCFba ٤^^˦.(2qUtK>VHuh;XvKwn+xTԲԔXR g#N,s܎/J'tG|jgs胇2zP=2z mk?o\ |>W=4-k}'O$w\Bϲ~]UxS&V"af7P"K~佞`Im^ªsg_&_["Ɵ}@~A!.?{\q2X0*2Ƃz:؉GXʼmoLz4r7{ ĞE86S!Ӿ*Jh-VHë<~2ޘ_d$S<ȄIUy\C5@+ך]ι"TiPuУ.=:m1pa"U)e:mk`ҜjkrJS~Qڝzt-PtXQ`~ k_!XI(~¡ixNєsD~㋱-o:MrJ↻\+kpSN&f* 2ED,B^c˫8<|S/\[+ZˣR3ߙ <;p6?5-_NLnU(KJx1Y*Ƣ³Y3mB 3KxPłAQ,5Ȫ;ϔZyiJku!wۭRha5*B$&;]%`|-o[f!`TQC@*h?ZC~(5S^g臑62"Oz`U2@RJO quU\ⰵǞݾa~Lz4jQ~`F*0u[R!okr|@ >2AU g)Y#HFH:MMcqQʡk(P2x ˜߹h\44@nշ ;ly|"vrd 8gQ.ͦ.k'? A)!//uN*5M9# dX6UgkON%A$m_6E'8~sIaɱ_>XBڀxl$ xk4 UYTqeP ݭk<\0sD ̅IKm OlW$oBv߅xȳ-{n>_shz..X2"$ib6,Rlz,0ַcS-2$W"-cT/n*wvUUYXĹ򡕢tac A$߷q#xJEY[Ktۮփ b&P#Jp7?ΣNҨA  ZL<5'ٗF@+b<2F D5 iN@!v`<[oq ǔzx̄LP"-mc yB\QfSQ@\v5z6=PZɸ8QqSZ>w8{K(jt{b7>&Vdʨ(hة[/I$1^8H$JsSp(t74lQe, !|`gӪѱZc1)2>rtAr7#be7૖V_ ;}kW(m*qbB )[؅bbϺ@of6}}ӿHUbm']qzc(x]w0zK\AN[ jrqhi4n_gY̨dZ`ɋdeمzzؼ|cӿetɽdDq Q6ԟK1+AÑ$t(5tƎ3N0 T j0̥cS|/%y+q$An\⌭0U!wW~o=4WƮ<ҵ>8S+*Jlr9/ ݢ ݻ XVR̕UTVxJw@ǘ':FÅ[:$(E-g9=3Kr0ԢTm69T&ZZf2Q@f- jO_7Dx^,Ns,z5(+% )."_fzk,YRfֳ븻#::]K6ZyP #tU@ S%@ncİIÕYLQS‘"5i=7ƗSPE2錐H SqgOC.]N2bW6;neiٵ]VT>kHguӭFFKNR$ηtYE$oocʩ@;C^/9&YPOCM=BH /[u1[=ֆ&Mqn},42QoII$f,w:VkM,c5|O]QTUŒJ*s!aE6<j hS{[wn'x긢*|W)>-PRn 𵱻>sq߹^|h^Ô%VC6gz!L9h?ETE SSv7A#kB>IiN!+LcO*BDKdcp7A|K[MKFpV9}f~C$xd;zsNjbb>1IJєqw/j<>D8xhKϞ>%ͦ}#4:>:qkOeQ{>Y)xrvX gK%f=IWU[Ĝ/epdkVzO~#vJ=@w`0pI- e ;`ѿk>2iO|3.o/l8ax^~_jercE.yNk),XNܱ M%wUk ̩2\kTȴZIbT}FuFSM xzf%8 䴜eIoi٥b)J4HvWKEҙwŝoS5>/җɨeSwst ˼٥Ҿ d-N+cUE6{dUS++'HE }nIi}{}aǾ(}5ɸ^QoO5 Fp*Y[`#=p1`amDz%~sôD?HM[V$ bnIktpI2ַ T~g~YQ1Ϡ =otό49꾁~,!Ǻ }p>]{)qV]#jy~Ȥv[Ѵ (CA3i w[$uuW1.4gM<@N~}ע4sEg LMetؤє*m;if 1=[7)URsЍh5Ň,}wCP@-]S 0V/Skt[cԚEoS5UrK]{u[.hn.XiO AœGSKM 1G0[Kly6at>ݵoևVRki8V%+h{:Y$~$aQ<RV0t.I7/c89pSaIPD [#JahdιA`ϕal`N,g苉DP˿pfE}K&;qӏ!RxJ8W ]K^E-h q4hym`6}mh*z DDVq=iHѠٙ ܯO &g( $9P6b=`צ8pkbk~#%qZ4SWmQ4%Qe85<}\*+&R0ŵf_-I߇hࢊ)Q}Y^|Իp$FarKh(f$P[JlIYZC"Z'[o|Z)Q¦.I "h3-Lji!kO!ϥ/}5h[^?0O9ۀܭ~H-%\ySTõl{>Mw_RV̍$"yia5j1n6>U;Ao׺`k]`qh')9PSTe*bU{4f7paeWGNSPC}6jV0GaXy;6vA]OGTV4^ݏB;X,~}^ΠZZؤ/ TGtaǖlFh˨2NpV O|έ|?'roa]c p|Otd>[\$V6ana&H݁q[Ytt"UTԎSçy&7ִ.J=)ʳڬaFǤcqxɆi"%UKyUѻWLh^$O;agDǢ9YK3Ns̲j)j&&?-FI-L! 9TggMV́㧠Zocn펝Zdlj8.E6}9%cIlZCcfe=H#=A/>%Zv:5*J4xM|σ%0_\q4GAUTRZy%ߧhC/-<B<7kE%d5tϐWhܲ~&+t_,`s(iɠ H,3*ŵnG=4i];R/;--fKhX n FMseYɭʢUV1kN>u~ke{-ό\=R<O[WLm Xy|?ჴz'y4jWx'>Ⱥ[\ [}KѵS2,ڼSR ~M(.z鵱֐nهjHL?Rܖ~ʴ'q+_sƹ/ p9SB^YU| ti?}j&=EDp8 :Y)}ԈRIċrǮ#?S?Rx17<%-5%`jv<8_LnNZ\,*NوᏒOH$5=N[_ja#q.MDYȁ\|[0٧?eSM=q4=EKS5lI<匉:nT`ՉIǵOoye].u1N:'~<(#S/lqOh~8UDԼ9LZ<(\5U1Kb'%/A!8YZbf5͕gُj,5. .ҔR/P#j l,$+ppAgy?_~ q +FjdP3<8͟V<_ȩ(n$sUb@T۵_^ s\hWYmS-]3xϩ, vy?jWv*״x+ޮ1*"l(A4Aq-M'^ϰH\觲/hMgT+SuaǡۛǶ ' 8Ϲ}V[ 3%>Dcǟ>z?\PqǪ;q/?5N%j 6oAhwW|v;~˞սNxCt=cWо$jk-@e54Eer\p1{θZ* U1-NJ]EH\ Q&aʪZbI7:rmf rI˪bLDd˕VʎE\+ap9أʢ r%{G@˯L<~ z`W6ë!H%=Ѥ88 Uyf-ũ ziGr,7)DuK=#+}2d*ha5٢rPT$k G?G4{yʒ0#)P {ﵰr "`IcHr][a.au 3r=A.$)@ܔ;j6RSkፐCO;[M|mZë̛oi 9B I[[B L7Zڗ s6[/im1ZߡQBVJ +OQ:"EI&ୱa?if7}-L0Js׳ӗwy@ɀ}_֔ʮ3#HIqye-?U]P' -Sf(1Scu-IshXTWoy9&hZZv}vA#(#y ۗ)d91,ߞ&ڜQDW} o6inA1ܳ)$ oӟ{ ɤ lcsտZ[_JnIg>1'mDUpŽySIi$ƠGMgui X^ի|Dhm#DKZ Hۗ`.v|z縆zvvt4-P7')=gS0BU^GPm5YŮšH8ʺyۗH$[zT)$kJÆB9Eb:u6E Q6 .1Q W/.ʻMV@.Pn .zvkUwtVUUF`A}?| 5AS # @<&]\4Pń kEYBmm|44^-LWNTm,ր23I[*t>8< J{4Y϶~'Dʃ%4zχߺBEԏ`/쟆ণ$HΛ<л/yNжOSI }L6Hi%x}šʖ@U{j'7G <*k0X@ mrn;*GY*@CˬZa(贠9HqYKyX;[o/?NXM:6ZN9uc<1 |r ɋE(0\qդ Ho87"O0ke2}++[k`@3 *ڸ[#7wT+N&Ț<صfuMDqSx|F]V#1J}O gRF-ns&IUjU_,}qQ!Ŵ G[Ev-ORo /T˱B6$~WUM|4TFc]e9.kfR/%Z?sOhn-g\MR watur?Ѕ6y](<8zX Oq=E=lsѮ^Ǐk%n\o#OYd44sFn,;lX4V}yHՉmNtpwe55$šEwq;1ސ#`Zu,)넣Lޢ - j7B9|7Ǡ~4e>K YbxRmDUK[W3SPbT`@;8FuӲ?/i<1жU~սPYf22kSH+݂|Q$rTgsN]# /=e_fYc{\c|;x +|Q,RrG{lI=Z/dѓ4MVo*~?Z-E켗GNpWqEf`%m/#]k_Eq}tY_} X+TV~Goc:/VӷsA'输O Fh.5{V59^QnUI*^JYB܏.]GL] u66O?$wRv>ߊtmۖv_}{NiZ\#iP#bMDf3g2OR<;1"|mg5yGX}uĻLa5ʝ\Z$X$e5c˕贲=l_qERȠF3%Wai؇/ofٗzR@vs Ve9ƫ_SJ+$0>6"f?N?!d-i`?O}K οٯY8'Q]aAh\ek_15L_S◅=pQ2mA`<?Z~KNF*Q< ǓGY &9 :/c׹||O[]C1q׎}(s 2hyMAY j`籱YH.ʢ w!|ES' ->IU js#eBK †oQԃdgK ?l9/q\T#,G8yZN4[U\U{<3v=EZTQݦ?&$_<9jZLsY,'oS! u*5ST@ }? ㉲383*R qS~|f3J!vIZIeicSq&c\Zʙs TyV/eVH#o^LpחB3xw>1O+je)3<˛144oX_$s"p:LjŃcbs̃hi*s sL1/p voUPs+SqMŭP- /Xj?+_5F=Ǫs)lfjy~eOJqU;0^E~HzX_~\w87yV昌^~kXqiU,I>د{v+Z[*3>iig jC`}·VwU::hx)Γ9(|?Td o/[~^I,Epoxj?Z슖:z)[t!9{X:ֺR<72Ih*Z{[{X+jC].i]etmATT$V'5Ϟ8 Gm6Rd9fz|n5gciCWL?Ofs^ RӸ:ڊX"Bv?S#x _Hˊ}ӸβevQ[c߶>DA h ЂVMN@*O%g1MʽXe 6(͚^)x /܎ܱҴ rH^7z+G[%٭{gjwt+"SIM$lmá9IVU$:W\aN9O t*pr y@#*HD)[5\y|pq8M .US} 0N gOIx[/Sc#>ƤNوb|.K|бs)Zx;+8nPtT=($Jѭ?.@;peVk]hiH)77wOkN@ '}Q:n9n:R<A fH }{ -CguZ-;0䃱‹ALl6c$ n9r\˜T,c.7ŒwPD S GlfHc((I;sb6 CvB@2fX˷.+=f $#Gp}6h10K3r A[J뉄8%HXԬ@#/p8WsqD4"&R`6 L y?ʱr~ŒMe$_{u0nw4 aVJ$!hVKFputY|3ƎHJ5Hx+saqi}*#  c\#4) M[uFT{XMeUQKOBD@ĊsF$uDd}{HhO CWO,cVǛG78V:jI:>([t돑<++m_߅Yቔ)Qe؁eB3'Bؖ[6=VVtahhЧb%)*Yַqmp!KqROH_¨:gϻ)$縴 ȁ4˵=}:ac+7VU!7NsiRi/I*YMd)LRTf$i wI(&Ȳh!Яt>W;mfM"e~XLni1Ock!rB~J[n7P큍wH#" 5ݷqͅG NPJ'£-Hm曦[xd;Anر ]{%hƨ5S*r_:ƚ$Rbc]&3ͪ#QvCǵ $_yys\O`F/=ƘM6{o擨gh1L-`,__~^HT!DK^]+q#ceCylH=@Ƭ2;12ʵ|K2ݺ[ vNpwV2^)2inKqIUF|/S<%rfVn{SGʊ+) !u[9Ϣ{IObY<9O^%aRy{]7>.|}M_IQY rg9+X*`;bOSMcyW=_g1v[&-8 y*/YN/7a J _gCĞ}p]Z./!٬=qcDq纎B댧8*8Zs@tBͥX<~w ޶2eSO2OUT4YaO:U+nn0 n{q7/m^r"%3 jeYr ]$Xwh`bq]3LDoW癇jztOpc>_+md\cχk:n08+.L4sO3p6;c):6hwsy]=9Zk&{8$0>ʗ ŧb9kl~"pﳾQGL[HQ²dYj z NLN׻hWtځڗEx[s Fe]^WRi⮺oߢtZn0 ;)+"sLRT qbMId)23̥˳ZDHcֿ)'l8Up*mT~bU:s<25y[I5z&tK?O`fTf4A[5Z֜v* =IY =qJyIPCAy~P4bf6#3G8TAZZ$%A 9 ٺUd}S:.qk᠞FNFMNAհZ\((/9-4 _.7V;|bxroK!Rumӌwa/y#P%Ok6l0Op"IKI4E;nÖ!.nr»kJ2/+.;X|?|$A\a--Gn p;/Q9:BM?(EaD,;b>ATQ &[OCG@Z\7#YĆE7yjH $XiJ1{_CaW!!!-ݴ;t7>A:I31w.XtU $ܢi12>K˖ KϪCF\,QacX$^; 5Bkbq Cbc?q"3H!5lxO7NHϣŋNr$? (47>qn`0=nw|בMvMUY G~{@=Mib'}BWu+`MYiiN0{(CAtL9.ێ㥏`k!%h£R7#o\^DH?P] t۸OSgyim'$)MtC'R"cˤحi9M U-P- HFwC6]jl,7꿨"a/hYBϚO"0*X1'ݏWmU%Aue87nMdc k$pNR+nf^$Ue,08U70gpI4n\mcǤ$%V_Z=:w )r2T8g .mr0-)LAίb\TBAsr*:-A yT^y{/ qo"՚\}D^y{]לmW^γ ,7Y\*[_si懜L_a pugP,y=9xV:GOQqLTm*Vvœ8)2yxNSH'▲`ęp)(VJ\t8dmf- KW6#=GOõ< ^c=PG.xfq!쳦TR._RzRJ1 ix1#%dYtDn8D(UXaj:l3O(J2uzE[bGۂr8]xH*G"pú,CYNopj4nޞz}-,L`nG]L^+՞O}X? @eUۦ(3jW |G=xS("f5t>Ոb"ik/{о L\_g,F(c7ygRZk3-tC wo1 5nؕ> o_x,|sgkkjM`hT0΋20Z\`{KeZƎ],׶9t_Š-Ek88ZQ<ʎt0b?|}c|"׶Q<7+]9Ug4@![.u/M1KDz/:rfSuYf?5t]r #/Y؛aϭq8 ? f9]"zgUϘpyM&Z{/" خ1u|1?hU]& Ljr:\./ šj4JV-{Yjx|g21FG ƔY~yZzx4g$iă% @_6x8_+7ɸ<4>$D ᛒv|xOۍӭY4]y\>#3e9iE<7/B2v8.հ‰b08_߷,=(,ha;,,H #V`ccЭ!=:<3wUA,T dܢ2&=$BR|CGY챒='\?>&gd>8ڀ'p~{( SG'KPւ\?$L\o)̟vg=u\oMgOIK*X>5v׊#TXMž8n*+Fjt!+pDvů״ #B8mURFwVMqkfn*$RbE%$XJwnG ,G{G?QOR[DRZ l1_l[?!rjF4IPܛl;8uih"'1J3H8MH҉+E/b0)PI+ Pq LDH~W&&Hsѡ%1K`I$Ļ_^?R}Ш"6AalԀ/ 8Go!hM/<}jX";-}.>Dh\HV/o6X)p;1bH$D *5ZXm{ۄ;qEɹVW,6uo <쓱P.r.X$ r )Gp7o4;Da#CF9񋦕38fBafBI& y y#TTws#2A#b$aM1&=¨גpXOol2mV mRԹK(u-*-$IC?۲jz51QE8؀>PfTܷ-=kZ J /j^J k~xA:'cRK-ږj 5ɹy0RʈX4|[Lq")>!5xV:;Eot64}KũG F ~oJSt;0~V<^}S57F\]3kKIڏC[Ub[#g=ꛆf2:HHm=;jWZ:*[+˪櫭+ 튰5~ I @1vY Ml4;M.+klFYWW}6;op?Lz7A$m , V;Wis3_Qe8YoYsZaGOf*!9 t䱺6G;UT6=zij!**@quf\OT, `,a"j`mǪ-SkJ j)w1Al`f1IpI̳&g(P~5l?(~ո|s,*jZ)&$DĤl{;j]m@{N!p> O4r@ܒ;#^҆i5$g6IR`v8}'E3@ezZr*YlXDJW`U ;c#I>kdE \F~Q)IFޠCN*j26oRPͣI}xWn H[;jzb>N=/'ÚI MNMR#4\u]u򺞚KvI YU[Yy5oiT1YPPscle' [*װ[ֿ~-N}Vӭܖۃo{4jQA-z82J ^ [ ch=rK$qh1M66ٖt8'8^"`dC4o7覛QӴi6Ik9|AMs*arEO v*>MysG$h-[VPpUGE֖c7K^+]x :V87WY09Xk=[z;=ms \2GCSC©U*;Xpcoxokp=UR2x2zY'.H:|=I2BJcJ %)i+ZēdiBOQ#Yu:RavPH(̛.Qk_kUz-PϺ&l,xUVf~=NQ?}# ƼX!B!i>c侉4h.%~v*E%-Al_ ?~叢JvRID /}v=/{βgv9WzS20tUZId+#J]VQ1cY[o(\EeUKQqJZQnO+M&eiMOR[́?ԝI?>CǿQk0UxNj6n];鋃%Ӻk|ִp R|SU9TO_pOgIwB?kjiyG##J pU U [X~`3"=-J~ks?K^%D$~8RK #_ 9ׂn9*L*Qʱk}?t`gw 4: k{򻇳-}|#>7KGvҾֺ,z#/ʗڇا{ '2ꄋo{H ߏ}?X魕;9_>%bnt)p.qY 0DHkդ=SPִ~/[VzWLvN[>k9nA :zck yܾzvs3[r};gQt[dWDQK"c~ ]6 PjCqp9tV6vڴyREE^IW%BSS"[j>,yMVkEi4̽5<ʬ[O!+0ycG67^ny]A}8)q]HUb%"($jRu oE@!N] _1<'B"Bq^ELN x??ڮ8Gj|Jb2sPv<}GnZZ1L8_58,1J7g!q97k!<m@#TFE%lgۮ9hS 򨈛_u{qt,i0~I $]os4wSUD IkX@ZIR"0YDtCMԖc96V1-1؋t|FQ V'<9wFU3"yyseiq'kmaWbmibsNʻr\ wupٟՒPQv zcB'i Jr TA킚Z߸W`HX(`.†E)7Tߧ,6<溬}CKa[& #?lWdBFdbBT\oӞX}J19≃7Gm%o #]BFʗӞ9-;{%'e=ICxI iD+%$r4*M6:ls []F2 j3q s(h*ڣO9c |:s ϞXX#T(4U 6䑻?09)fuI7#R^NH,zY1$?iY=o\%;jkobE[ƌ%p üDl-c;1[L4qa. }\40 EV/4V(H0E8t"ԲCv0=%f\\&xHom|*7g!ekMKeꖣŰXp^|fy\T]}c!ZM~~_Na "ӿmR0f.e^F͢߿%LGNu 1X\b {G ͡قwMRfG0X;hBM#v w(C MTaXDI`>TK,RR\6čM-sY˜ !I\ptl!ey~}0Cb`4 ?/`HGI uÞ͌8OJ,5 Šg߲*d.+Z ҷxDDWM pݸŊ-O81S$~>f4""W1vƔoxuWT ï j-dDiJ6ƼYR%ˣ6F"C:[RCIߧnc HVFTT P{{ڑHY&${^} 4Te$ VJ6:32[bx I 9[$ a!mEn쾭2xaY Mͅ﵇c1 @з {Krjx|x-M}`lg gt]N<8|C{\r%ia=i)j9 'O*ej,Ϊj2olfF턇}XvʺdY@ yMraw Vu.|%AF!hRPq6;Xr~F8k)eOXEH6]=nt{ij2$UөnG?ElgԵg4ԕe@8ɓmi{\[KƙUُ#WH*c`@4^` 6e7ڲ)\8tDH7&/_@aU><;~GfÔKkrǒcO>piiz?r*k3);$ig+G叨;jZXk׊gǪQE;DmL \vMPY?&׹\L/X\*л_Izyi7b>q34q;CLrӆ0ЩuJZFZu>XJ̗[0PCF:piUF+;(@U H\#f#kr=;{˂C?XZޟ H }'4b<@u@Mm27N}%6$oˮ `]"BEEC]GIێ[LT9{ k+g+ <$  k-l+]YWGR đ9B]auࠒ[ӄ}q'(KF=Zht-}.sG2QXf[{~#'7~8ciBUݘ'>F͓>_nE-p80YCD3;&n&./C nV~WmEepLkX>X|%BN 5b]jZoy-bUTSOQSCU#11#[G,tL䢸2y]Y/Ry|RTxqc&Rt clej-DoOm!Ùp{<}[MBg [JױL?KaӳJtkDW,>': ,QZD91 4Ȧ O@YϧdT(LU_ǻgI$z1@0YIEQ2HUXRCHmرB̢L겑OART:,^) RS5Zy,q~^T&$B q^Ӷ8ie$0-͌XFO.cbGnu'!G~!/r LLwʙOdYbYfh[~cHS3xXEԧe6a@F$J1$!.@/=ycSيbz#3F',%^ 2V"Ƽ]3}ڝmI¤f7Dd󀏍IIlYN;a-7{Aq.HB_LU;EϖÞWnnџt .c_ iD R#l*攺A&$3|F6?[bݻ%2ek+),{~D}9/er !#qX uHG&D-*M_nL!پrh@T$zA'{[뷻#eہMfw oUQ uo#{ysw+Fn:Ss!nܾܽ1iV͡ m=F۸diag6qYۗM6e,,ц(# tN ri"1C׾ش֎9?`ĈO!XPFpRM{&+1 F6ېpIGtvi (W{D^A#nh"^0[^4Q-*6` dhg`C +~O,Ӛ@MAK4љf&e Z2y]i)JJDWqI|պ6rITU)I@&NyU pĠǡ=mkV7J5 ԕ.lLd>~BwH-;Mna'VREb5~[RioC1%=L8M| kH""`i/]}W*5d0p@qDTtqGc>дyW*ii¸,[?I 3SZ' GpymN_ B`t}[e#YR߁r3sE-S^=g~<*6Jfm^?E4@JW3ey;N}&pmuU,=%4B 5GVCZNW7Igop|gkb^E((8yZ#.% WRJ}ص'[I֮@ǸZgڲ&w沮VqT)?G۔׵էyWx&3 lA i[tƯѓi ɪM6%$zer]_KU_UC\vRt>Yj&5Ũ5zw>h9sL>iGⰸߍ8/uqlOՕ,nedEd]I n]*ɢk ;8ʎ5h<2a~冶  [ p$kCxrCD3Xh-Gv#C ݽ!pU&.JyS1G?q'SUWVL: 쾾,!o;j{K} d7!mXQ5 MW+`C\sT2sHm}Y3j3fA\ձ姅,mkJdI l+rE 2v1 =;^fA=Ǹ%]r iN`uŽ?Dav[.n")sY_Cwv}_KsKE7ֆCweiRTw%~d5 ˶㏣i|:6HwJi/ڳ8'sډ&y߮NVUIdmFYe+9|Dո8ײ?l7s[Gp Lߨ{U&L R͘U߲ط ~-ϸAS֖7QHZORH]ݖOKGp b23?e^uZFc|l.P %4;E9XS5 O%?ۑ\*h^,dKլSF Ӗ3ݽa)U5tJrzexeS§dpT<'v?~xT@2JWf1yI;tbqJuA&fe6MXҋNUjM*M]9qN \:HvSZ5Ur7 Gfz&pm?r9;Kb<[s*py I0EǪ9K !&5qƂ˵=~IG'쫿U >nl6p5a{y$;PG𤨲7_qapy_-3[W`uo)i*1Skmk|m40s0eWGV\jK!-cɪsH42f4c;R\q VPR%L ]ͱ^آd'U9:X,m*aF& ?Pܜ@WRSU5 JT7-g%t MDCm wӹ;W/w?4SMJ,lEs8ϧd#wSU50wM u3> WA.iCƝU"4H/ޘi4lXHC8(׫J5ľA_f免+U/os!IQP$fT*=;uu 5za,,x$@Oq}!KX,7;NJAI }硶;QY8M X_[QDUd~7`d΍i J"YQYA:;v7T鱿p]PKqVSXŹ/מ.;wDCO*0vRy69]7~._זaigv,JƛMaV5 0M)QOϾRBpR9|s+iRU;8<发ƫZq|O3YnqOk?Q'˙UOmgVe&Jk_׾ |;Ѯ!o~9 ӯ׶iŐ59u{~5m?]SM4J|;wZyN }ÏOsrT>{? nQWP3Ԁ$>z$aq4c;sc ;"~i.Kt63xLlAșмa2GRnJ_:DN4jeyKjdTErMV z?0?-ÿjg8SPHNxχkfQ kjeߝ}{,>I;` TS4?^Y$nT!}b.xI @Bkc)B%s: Aao]qr0nO) Z'|{I,[yu+=ŦxGiۇh%>mYRF@85{ʙ``e S\Q:mv~|cz%fjݛFT 1噮m,)uv}VLbxuBֹ?g7P0¢r ʸSуj+Ʌ]A5d%x2FI6շ~߲+~jN VBߗ1} 27%7>DDT$ۑONxx;X&e{ߋ 6B[ͧ! #]~FNجcmQ h;z$C$`Fmj\+IYMdΎd j4*q`_֩P2Ti_ XqEhQIm#pp%>8CFE݌e?b!.a5/E "NdkjQ֢R,;r{Pꛌ"1{wۦ/UR84r'Qu>q;d#iDITçcn l;R̩ lcHH4m>_F@}~4mOkIQaLbEo~6)+-f/ ngDUG(Vm'zea{H ELDgKH;\2;>Z {#)-NfhSzzx(K4iT*=?~\Y`QiЎ%C+NCo^m_[kk>1&$yݷ/LW93GxN40Ep aTKI$p0bE-8Tx 03}%ghNTi}0E^WeY=Ĺ&mcu"\>vv7 *U&ApLws1iE | &h;ME'Ta}-k[cm7ǪdP9I&2z#u|y(o, 44 sog4ݓ[2Z_(d1+;30Xm=F,q5 Dew$n@Wt`/iU;I6;9=``}C~ x]1Rd8 v=o" Q=}Rݣ:t-aŠ1MH)>r=CEwd_lH =ر1ho(r zG(H"Qݭ;Wg~ pD nmcs':`<|D3jJߘq/?"D9Qibd)P#aw*fyr,erC6vdف@i"P~s)sScQp!^Ϥe)+ku;ϜP%rBK ߟncO8R2'MvpѧaWg^u`~ao_Kt剡~`8z0չ#r7hZnRH @`[`{IѤ:*Jo㏩PZ@wu)rU<|I{(YxWZǘ'][R@ٕ=TF6 ,(n8R3Im'`zm߄lWjkeC"nl@k>yk_NjlƓzg=TURKRw+KEJ({rNqxE^ү8*v͒44aLs!p=ekW4,!0w  t*,ʨ,Ī= o@yBKz +7eVQ#@/[۸AU4 z-@N߅bYCm{#Qv^pxyJ-/vOhPYډmu:74vV T_3)L#Ef54Lx~Rw 2/-u#W ~.ztrxx=qjlj ɼwKOz;r\_w@ E"s'=_ʾ@OG4auΖ,i 02+䡠n)8*FBP[A]fV4tK<"뵏LX#sj څEI9"T[dh=%SQD#FPylqoCZwVNcN猠堤uhI0-Î6v ]ۆ[W?ˤZۮ3ѻlگo}U&vyi6^Zw؁ۖ*J?5IRMg|vq# 6nh߆lJKÕWCSlǛlX{ð[iKX$(LUTbl {>*I k(U uv |Bۘ PhBp<j:UK _q\D Hrf1Tpvqv;a {: <}3e:zq+T[m do4sFqB+*jb+F s[VB`$"8fSŘR,kѼlwG=7wHjH UA,DG+/ l9Vc nIŖk8Q22;]V>ō&$ zDzJjڂL3>nXn'Q3! lP %JFO"uNGb)id 0GLCUSzXyP;̒& f @/_"/cQ xy BMG]lM?Bk`8 ,H:_{WR6;cN&{lV],R /˳,TᫎmpZmƌZ5ϧVHfGt$WcYyػH ﭏgj-m~'5崯ּG$ ȑӾmJehi2![ 1Kz|,pGٛN@# rݕIozH $4v}T]mȧP7 ]6A^A­U Ϝ Ź}8ʤfT$`Equԭfov`7#-РQ&vx3b^VŸ*M`w!ABww]XU<!۱cI M+c؍r t$DZ D]IE6G\\@FEE=} YjGy_f$×謽-dN JyMlii|/sa"̒L)<uƜ-Cfy\SG/X,mq~F rr<J}ՊW%3V1`HmC3AiŔr/QYP̠rߞ,n "[_HjsLt%R9G0zi9p蝌Td`y[^x ֒5Chq0DqU!A69_^C ~jaZ@VxzĈ95oF0AE3yW`&HFyq]wS{}IURw#aoy~qyIOy$"U=?~o?77w3Li&Fϸ'nr#)sJ=:kUu##$2qp:tcsn+#x 3E!Cà8jჄ򇪨Ӡ{1;jlӬtDbtեߨ~; d $u4Bg|0N ."92Zpm{^w=1\FF\MeXhh!%"r o*<3aZRtǶG*tqep@)tzbɐ.f5Zmz|"V{<r8vvFE`8e*wv˲n$\Ȓ@.I(EmCN-{6qr;]k!c{}Ϟ9.% m/sO*JӾc(a}? i5Hb.6Ӷk:Wde m- ;>>P.4oQD[`Yf,T6r7|Yzdw W-2ȍ@pOm n֋ $i'e\'Lḿ.,%cy"닂;qqKlSFOVHEz[8\vwEĔ .ys /GٻG}%? tI:_ 2&s$o jfxH wm31y$t;Iqr7s~XR ;sB J$i@]+;pK40Ay 2sfr <^$ev:HⱔnIAfHepB -r2f.qa9G x2A\ l%XE: ,ܓZr 'JKjHįi+́)]!1K=  _}l嘽M *dph4*rYc} ӆe7ֳX_LijcCA$&4)-3 d)!Py,1(a"=ùi=UL)[ TCm  &3R*!d٬E4@!s@7J{G+lnʊR``e N3#gJ{{")T=D&}qOSXdw пq qFHa]bQʖU;esȚBnhQ;pI%GyY.Ta#U; yO*fF}*6Oc0VehqR%o,݄xLO?& tjprlyߐָ(\"3\5lG"dq;Aޕټ) ENj<3K6ܹ_X-1Ui悡ښ1K.OFߌh 9ɜHd`)Iu*Z<`ż'#!n{~I΍Ŵ;{SH53IG >@k7MDJk7JE@PN ^2ChKst;_ g>Ci#x#CQIP^}O&ѹluS7p`jZ>vcvmp^tGXez8d<WmF}37e]9bZzd \A#^degjztb(/5z*h$+8F zqR8#E)ښy:*hVW`kБ|/OӁs!CNE*WT<$%ҲG#.:,{gimujI%UGB)<ڗ)gc1vp9H%sr {(~c43ey\qYi@Kksۘ#>qΘGjIkpU[GZ(H c+ȎGwJ>6G<u.a駣ښ8Hq@7\mAN2t^S_lԋZ'B62 j&[`NafVňv hBO햘U*Hծf*'dďs DNYKI4<@Uٵgzc hKN}8&-fNOz:kÕ?ho߲ܻ߶Zg&!P9THPH HucKuDNa$H]J+${C"Woǔ%;Y6h"+sIOK46?F|K:y f Ƃ2rMB?2>4u^-§UR>cՠ8x ^AaFPnno|5wV*WP6"åHOl‹ QLns6_1~O)ڎ<<u ݰ5b\oO d!;?Tێ˙JNVKr7l[oQXO=DvRFtԏܱ+_4{xϗYHyί 'O2kBe!An}qB]c~[%|8dVRMxI&jdFw(\d-lQtViHI,*~v4ۅMڏʵPR/MQ0}\pJ Ah!ߊQLs V 8] Lsa6#=Ŏc[`^ӴPnQQepɿo%Ӹ!i9"Hɷv:S#xsK *h=suҙ od2kZXٛ!<䵴53Da/I(~A !QFԷן#h,gCE,: 49#yL87"S ln[`pē8'DZG.4zu)6*e)_<3n (T:@!O"9Z*;mx SWԚH;Έ(, P򤍩($ /;oiM;Ď.#0&V &!:-Aute|;N͗VRa'}(Ht${)G#Or*-c rA'[!!7<oSq_nN܅E{+k kXy"  L`؋v'n6vp(%|&Ӭzc3Y$cE .@sSL\ y ntC]WK-a[hV1RIG{<-!qo>VJxlXZbHܑdP<;6-{n7f7f 4:rߩ pa> CnA`f()y9NJF1r-Jiŕ% 6'&}V˖@?5Jb.-컄s.6Vl1Iᩇz^CX\Jfa xR$+dLTz+ߙ9`M|^Kku>O%Ufeh⵶2^=v+;4UR%7Rq`zbQ3D^$0h4U9,:CW` RKqKD涋C25<^B.*jBu8xYl)7Q R˹q7:|vYEF(_+ 4y}i,؛@鼌~wjlq%bUY;tdDzc~fSA,2C LY}M%A?K%?n_=> ߞqKŴ۶zXx'9l/ՂJg)7ԪM mpE飋B s&wn69kw4߂*ʫi,yRTP^]t7#$!V4 VK|!Lih* o!Se뫶1wIaeҼc 䌇l0,0BAJUQK,r؞ί'j68nP}מvt{?ĹemvyYURx'u#wC.͜۽+.湜]ٔ&QpֵVO ZuXue[cZZMo8_9sإOW4KKm5/99Si^ERTJNrƏzhgl~? 26\ n+Y< ۋm0XtҰK&ǪS e"@}SAe_sƠE.cǧ|e|;(&! vÿa$}lRG>9ܘL|7]Jۛ `JӒTQNTr8˟RAUIm8+_gfch1~WG?$-֑~茻#PȱX\jPB@](hBz ¤}Y &wXX\W}qZIhީ,VZLX%y:ۑ8KjIsϘM&L#'Ŀy?::e', jZ?%]VzjӪVk;)ۣS[ #iS<+<mkHr|09ID-I1m-sD \dגL5b خ߈Mͻ́۔ԄL{kHn_/|7VÅDj:BEߖ/M6jI}"ZH>pm"0V/S#JHu);|H[uamAϺ8ւDMjnX c@> /v׷|tR5c95)!2H6_FFn쉊3-mn^V;@tA$݄ps 35màccnp$d.u-: C`G0zy`⌛/uK;e<She0)Fm[q!ꪵsecBp|Eopi[@f_y5W * B`7:9rd*m;Oi4lӅJtJw%m>Pwiv08]# + .é8 Y)w1o1cxa-$Ҥ"ƮsAAs01BI[ltmu?+\h\icѬ&mMm_ ) yN{\MQX,"%5ߍi{4?|T5ۨs D!LDE%9yy{prǎP I)$(aÖC-ԃ=עW dOGzME7ۗaAs z&Kx$+_}78&TD?t׉%6#0lws '䉤Ж1BPNMMa`LԢ)3їUU^;`tvԼՍ$" 09^37vAT3T6[kcI#d)q.nO$qA,6GLU.>$ Xo._&F[ p!OɤH "I mdzϿ"-d 9Bo.;n14Ǻ6F*3k<#ٍ>()?u-_E&P6 w[c+8OqZi3N-{=;GXR ?mF's–JQNA(]7 oa1J)cA$kASm`[+8)sd6;^`Ch"ӉO$'| ζoC斑 o>uїZ5 rOdn?'=B"JKokmF]0PiReh7_'<J\ULe"V2|? Gm*#voײ*to-+3Noh9Sq+M++obcb4ӐA-ԃ[IPZ_ F:.2V0N J4It ãXƎϺ=rsTMSEECƖ9 |TܖzR?ʦi.O<'kScE:wT7< ٳK,|tVM4LQ8)Y;ſ2I9qSFX|$ɺ;*0)fhFG3ҿ*27pH%KOְmr ^Z<ߕ5&@HmBsN.x(c6y/FS|@Nҙ7֬ds%3£@ҶZj9ly[˚XUw8n9\ }5M"q΁{6#p/-=G5 aw1jJ$+w;ozsG-75BŹ}\9dU?#]^!PVT4?!ETY"yHWB%>j3Yx$÷ndɯf4GV4uaf>%c)d k JR^93AH+C` ]6' Xh!q'oH#$/HK^~7H|V=DOxr3DuV~P32j OȢ7T0#PGKNGY2m;<&bg(sosJ[>_m3h0~GEgo.{r'|ZLmJI)ֲʺ:oP{{D ;9 ii@~F07] 9]P% xߞ/%c:ZʡԒER7E.@HNnybLԫϔKLbR256?GJhˀnы@^7 GG G/31om,A!hk s{1l[S<<*]\ nΓBKGqOk3{<,JjKVe,uspEŀ ylkKCSRI bkݔ"[{^2b!fmۖTViZ4# i1Hrahӈg"%n}}t$rA,3*8 +MOе͌Kϸ+c2w ^|*y *Uxmcm mp7mi:kI6A=6:\(<*rgʖ98$!tوÃ6P;˫ @ \},-i—@m]84t?%m(Y{5ULмULĆ[qCXˋA$!$Il6"ݎG.LTn-yp Dī+\LZt-ҁuE'Q2mfSZ@x;^S%TH@%=~X+sps?LKJEag?[\4 6Q.m{ 6݊NcMzA6&7Ss G`?4eI̠!&[n:MxPnH#q(U XAZ~_-eNt=bӈ|T_ >`|,so/;pI塎5T;E#fȘv药ogXP-51Ҹ[&mB"7CpcD'xRPDhlyiޛR0D.y. :kIG:ro>s 6LeY<1j9@F$Xᙪ2uL>'8pSqqFƪ+ m<ͺ)VmڐJJ:2@7+=إ$`E# guZZ {pFq籐ƃ|W=ǚ%b8IJO"/maf\xCn 4T&U jVRPbe036Ӟ院hqH~O+o atafpCAG BVXe:9VYY^?Ű 筿O:FGZ3E z,L Xlu߮Ub_u/p*,j񓵽4lY$*M.P& X]BOcf6_ڇnWŌRbm1.HSM%3iee/>;v?D- 0Y,I8j?dB ?j!0A{<Z9v5gLm+Iq~`zt>-kH.vW AQïΪkѴn'?dMUK,JY@~X 2Jh-rm?B!lk 4Yvg4UB$RlIM"ׇ@)͐H-:a̳ziL3D6p{8EW'kh5`>ƗhsSWS7M&v)F[QEmҏ0@a3D~~n:WckymnQS]4¹-wrG3(on9:)$ ;d.V:ڞ+ʫz*5Ԥ^4w !bnxL?GR`_Hd~Щ*$zH8+45\@ Gl^'6c$Z!yuY䧱ԡh/g+A dK-dPho~Dw,1.,-?僊X-Zj*(:uq&m{exTHK_SpʪaFЃŰ`xa}T'hWuʞ*&0+#I):1=AG.MOp$*(K5m%m\L2k{YN20,7OU:7~)Ayb$fT>k Kml^L3쑂8?MOIV<,,hg+{K : E@x('ǨyVy 6*X ^K{*ڸym4H1"99{Z$Jk+3c$+ f])YyP`;[@HLB(3 7Aͤ5=NGuRmf{4ќKGUS幬Y4.ZW]:WC4t]8zބ*E dԕ3 lʍLdCȒq2@"tRɣ,{F"T:;]E0vzײD2 ~˫g,'_ʼn6ߞ TPSvNj4Q tɠNE ;\ !0ڒM<ӿ_>5BLx>:_ [hbcC0ĕRIԸ)HF_DrHLp}5{!b|ֺH^97F-cΓI85<&iter8?S34tWs{,!f6R<ʃ RHi)zYcH P5ta˘oM8ş^~l`5@u7?ZʘQH!ҥh$V:b5y(S%%TĀ30u\Ht]@ ݓ0Ii;I'.MKG],S3PA]~gT^IS]̹4桞@%CtŭpG>qd:gCGZP<sv['ʲbYHT@t N{xnۤ֘`v{c#)+aESfE yK\߶*i@xfR%b/9.wYšHꑚ'GUΒ{-fmgO=HTh|Q֚hbAoux& 3vPZ<#ӕ.{xV!Z Kߟ>#-&(DFЭ4sƫ:6 lF$&ʲP2rjX{ֹ#I)aEb9I$_y[NL09OEHx5˟b;3d=MR)H<&UŰ9 p^0eehyXGmh}, Ym̷okHNH Rh_u!8  .eHo)+XtkbaE%JGSbv>`9V >_ݧ> W~c[Xʮ&q0eKik 6 ֏+R]Z?4ee~5EO}#$soLXI#/AiYdāVD6BG'Ґ`7(mкڜJ\/ڈ݌T@!E&u1hjb %Mkz0M{.8K4l㔆]n{ >$VhDr +(kٍ)z{4W|Q =[J|(CkXϮ+!V .ʆMC!jL_0mb}mU\ H$πנ]լ]n_$яF N! v=ch\tI }?ܞ ]ѷp6o>ȸ5l,t_n;ICa),/ $VHP\hSQ20Ͳ io tK6Ʒ0)ѩ"2,`[$1&E`31bLƓj= 2$?Xl~X&Z=S1FwX+M {M`:2! dB?;mn쪛GT#j8s )I$ǥKwEG^7D{$Chfv+'u*mdrCYWӤJ)ٴM;z|+j|'}់bG'}BuMv_!mq N?t~ȧe/Ts7d#Pп,{[/Df0|DF;*{9Eǣ͑ɺ78_#axN˒4CM#`WJy0F5LMی}sF͑++J"]I"Oz/m@}>DjA.#Qx8+8:QN<إj)b_b) Wg)o=FW9#^Ǟǣ#ϕfMB$vZg2,o>#1ijLdTvMᬾJX%'xiaScm 3MҤc;QG,K}}Mx+j+&B3@F}HAۇ%Lq2OQOMJi#λRn>1'v‰z{ٶ|2cWt+@#\Mu4 i zKs)/=塒dkwq7U.?JU5^w3q>LYDqM2%:TmMkvIc+փf'WQɫ $`'H{ߠ;ƬR˥xr2>kL$O"c0V%GiIazkD۹*Εߛ]}%@y%Mq($3iȌ nVSC[F)f^+@h!槫e"]S$kN\aGgpDFgj݊,lf:I=MbSlok'?ajZK|I_2)d^Hl tx o*3L )3Jɳʥ]]eaPsnvMn7SM0a'Cc0HO\0iekh wu$:Ԟ޸<2Gn5N&M!Gda f_fL)O6 b3ǑX?D-ci恬b&sjYA87.HzpH|3ڨd{y uUtLTQE԰ @DB=N;iV# |y^&=E}%g\sE!H5@EJ+g~2|:2HhV>da42Z8<ҞYꦤ, Րz|jdsCpVêz4 T2TxԕVp,Ii,!Vc_(h-2zU5SC-u:aVKIDQFGWMSSfe~2w:dMŬ1ک6W"Ǻ4&G5U)h36Z[ޚӚUr,H&7îE#?Qo#)fI#eQKa˞aʆF駖 O(r  QJdbl|%'jwy 7P`BӨ)@``&hȪ㪤kXۑ7n(pKG{YiNq&CuPNI7}0B4LE{򹚯!xC:ʫJHAtido&9_~|"F { D6-kFjP ZVV؛d| (5F$# U1U@#_OcCM3ۻ*ax.Is;DJ H/Odgyk^Uhf1߹ T=3zrD@Nշ\/k0C)O2ȱ!O =#Aṃyqx &5[m=((Ci6V6H)-a=i 7!rf$)܎!Ӹq;2#8-&-dq X{;YBgLprmv_ vZ?@7H W+I3Dm鈄aXܛ13 PO?B~#ҬK]۰Z0B)$7c O]v DqJi"f1KU@/{llgUj"O#"7 o>O6w/aiˆ!&!Bmq5Wxv -NFJp7{ewkkoShk>X2;aLqMxI5Qo5c{[`I?W/U-Rv ޓ\]ӳGa"RxdR۞ B" 8hL~PIGlcKFA@MܨyRxZYd}d"[Yݮ"ftcC~k[NʙI9D7&n@+h6K z.A&dZgQ Oи(I@E{1ѭ9R76ه;}myEۆUESLC2C]kR:uQ Nݴg\STTR݇#m0%iXS|\u3eI!¯E Z v-^r/N+ib A{mݼg)OVqsE4A/EL$DX[vU$b qk+;>)f]ͨ x,q`Gco* ^-QC)P[q],"ڀA8,=D2k={ulTrE!\Cf' ˙nkHm78ԇ)XamQuؿdg9M ty#V珿>?: t4NrQӒ1~̾5A >kCqQymVK}:/gtg_HsjΐW %HNY0cnꗰ%'D0bg7{e?@ `f4Cp ^KӀm4[,FPK2F`ɇ7U2d5)l5]ȷ\2ѵ٘7{}nњ/ V{+lL q|1<ˤ"Ƞ[zb~wnN4R`76{.O{DGq qe,I.n [zY4f| Q~6s}4Re4kXc 7L?YtwLV %>V``t ;zv7aG3Ak;EJɪ*r(*O+yc巻]85ИpG!'OҤsK*c6"j!wFzɿLP$n-ttAJI2jZ6I[e.6t]RM/S}ǹ< AEEI"yP*2Q7gYy 6 q3đI v ~ 0ֆc# (/52LNk2Sdn9_qal~3>iꂒt0Fkߝ>Xo唺Mx8H_LH`}uX6FZ[UWj|/cS;ix*Wb+k_#LDzR,al^)T^DY , 1N#_c.b[uGK'SV]M>f\+X0#Hu'&ڒ\**A3nx搶X)}Kt!ǭak{ǰʊ3jP$6L.ÏNV0 >J +xsYY?R6iАAm},~ැ'?x,iI}>V(3'jg'S%$ҡnǮ3:Peݢ$5݂\Hv7gr|2ڊ 4+ RrXqQ^;呵^ q6MYUCQ5VAIHØ}p:8=Ǣ z䘗5RSOMWP,rﶴ:+ƻ]?ڙ_4ՙP:~!zKi?c-h&w7}Jfy&2z?GPA4=!PKy͵byb^mTdnM;FTg%G_Y5.aAN 4Ty>έc/Gj)P26]G|@.GͪTUKTE:MϦ28^|$>VU_l-W6I- F_0JM6o:αʹ˥vڮ\q?e9%}FYG^A2NۯNخ51x `kON$QW_zU28i+S,Zc?N).ە~ n=W:{Fda3Y}e/t'WCċ+~-9!~i"h&1O_WVe\?=k<ײo+;t1#UeZJui'"F$M XvE.Be;'O2-?us]`hhՉr'=큑QݑSD3 ѺW:H&o+AU”h^@€im?!'yv1Ik "m.>@xBytQ CVۗw͒F8Q,LMeSM[RH8T5p%Ihs \ڎ\lICiZ *J7Ae5OP2 :_E fS%ɏ}ۚL4y"/w#䧷s}_0,Rm[.&H\)Ⲉ r5fԷ#;q]fE PW>lX81H䦦1RFAxO#"9ۏeHI5.$] '-Ϸˎ쌧/r, J7& IXeA;\Mj hժDn |U <{.iSt*K3 "c<0D a B$hmc m3/AWcC"k~ L( G=hDl[m=O.9WFSq3D/>, IO\%P/ab0 ~Qт|YO>Hib9{+$ T0?F"~HkjGpw|J"XҪ+-Fs{Q˜u6iXBDuj܃8 oFWL#G F&px AT?DpCMFߗ1c)b-Õ Yɚ&U.mm#F[G#*h;3K!尵Iƿ5SI|G=ІvXAWa82,+)#h܍@S|}oZ %2(7%6&^#nUoO>d|SgPYft5 G<'B^]9՞Lq(o'l+3PJ@=/6-CchHvJAkm("g[d,qғ}Gp015% %11nA[x4 BT*[Gqk~g276RtO䙊JҊJM#q'L: 䢨e)bǨ!8Z+eh>W2ą0?{_E*fLq\/ۗ e|_ㇳ%="[rZLMpOg|_aGOspvwd7/f`QQUķpCkǴ`9$$[51W ^^u;OI5͜VК@- nmsnsk:nV&?`4ӲѓUL_Qdy(hYx5B-[Q]#Vh[ iK]p[. U9u ȋߟ/v)j>л寘T$sWL8~G9l$u L7:'5UO_Nr/o88C2E4Uh۝q##J灧#[G}1̨igrK@N);olbHlZxV<߈342!h[ܯcd`OQa=I2W45 &!~1#8ɆY[v\(`3 YE#[Fd-nB*`/lti+5Ãj_SM=4#~)fiېS=aG3§k6DPfNT Jq iS/G 3Џc3dq˴y. Tq y%0fxΊgHܥ6F6z\IqA1v`%egx^od0sma al{Kf1Cf_ĕ9t=HSVS@e~X|6@85JWSZ(4Za8Ƒ!P.sybdts59vIklbBF;qwM17lSp((諒*V&ie:cI+$A>9E޶z|6j슧KSUfam~g mv4 ֵ|K%L (-T/!}cS%{.;G"²Qq&ALWSPS jX䶶kN[a ,my-Un?,̳ *eq+D/ `b;wo_\p:W2G/M }Q:KJ8fRvftN=p3֕F1Il0ʨqe.̟rc>*-#1pD:)ER\q:j|;YQTx2E.ڹbA-i i4dX_6#]hʳZr*('n&!o|z> dk\]J[|Zq{/s Q̶z/ ,d[s2aP g݋1wP cT#KWb[Þ,n?7pE2KO&#=fC@;*J#Qrg "ߧ@ 242Fz&iyVP4U8Ly0Ž`_WCN("Xmm{xRS0OMP#HѶvƓif>#h@bksvxT.8 @k1,.(o`[R W (_Khbrnۖ8~vR01JGj©PXlG/-G D~ mkr|r_Fr^mD'/G;-;kqWJIpeH/F!a"gߟǖ +Ȍ#Wiu닞Ap7{@?UQDl/0_ѫIqiX[NE ۺ Z(fPeczMu?T߁%6T@6Q~xpy?$)*O[n <02HH=ww Ѻ{$4ȚEQUo e L-_/Ȟ#$KGu%ü_ri!v mEAXuؑ6tzBmDgU29'}R0P.` ߾)|[ӲѓUpyKPut$ XybY˗AUeظfifS! fZEknݥ9@#\|3pcSUdxY[}$lvߖ3du$IXiU 72}&=ߏ I%YK[_w6`FnK?ws%}6UX?D6ׇV&3O$Oou :mzaZw_kN,+Ы-coqwۨcIqw>TU@HY^r@yᲰiIYJ͋XX}uRXNJ8d.$Z&o ;h6Eo'ܴ$xi`M~waN0:ZRK2o:ĶCJ2pp6)vY" /mbDq!?O'dDUܭPqpL6?fO UKk'k~H4mZI9L,cH_ uQ<ӆDY\\[ ,k.F#2?4—%9R+O# ()gU;w${!k4xZWmW`$.۶FqIqg?$2P77RۙƜLdЪ}áv$v/~~^qLFQfܴ?tʛ'V;4ڭa~>_YS} V}J*+78gPiFB];bq%?NuOM=tJHCrq14B~aI3Cɫpfq.U*2Teh0UbД9E-x{_Ng_/X]˾ .a+Aɀ:j_Nn’ T˵} ]7^[eKGOdqCۿG7xƾϳ2,U 2/בǤd;p+zP6+h~ɸxv6CQ$%HR7ŸĵA2<EjO l &kIck2/'sISCz><STqaSK'!v _(j:J,t}Ҧ }ab\G{<̀*P2`>k |.l*!${Mұ5@2pviùH^JvZ%=6#y?*И_`XAC[9-S+ξfoC&odgT\3^i2so>x1d A_5 5vn-d|(!@ku&yY! X۝ 7nFޗ,mG+T7 5`3$~EumyIl B"$ f]]fU97 L}܃fe[n-,> $aGa讞0qZwxSŕ&aq r'©%V'2,p_8V⟴["Χ&ɩS5D4TT9;ğR}1txh}!y7ڦ )ȠJ_h&"& k+͘^'}Ӻ |]:D|Onyv[O-R3ݤFߦ=}9_p7&+ێs*c5#p/ef^7l-v[W X8Ply {aj 'B>nEdj'QFA]/At st5{AS@ЁZ[> !x*ºQT,ZHm7ܱL4 ,R4X+H׹^@fm;M"m.-vU>$+ĩߟlb<"CI{?,LMSxLRT^3:+l-m$ DHe%*lհѸVy-) &G̲Dt<ߞ-D8*{)48Pi .kH S⊾N,qӐ:y/o l[svIÎHEK +Źop8vNZ4FZܦ!iZ(ݼUŵ"!!]"3 n1rv]AI*4w~cnViiT54}i5!7DKI>85Dw yozJC葵-' ceهb;04}2r 3 f]C3O_ E7~prqM5ֻ`Jokp^c;oLYhlq= ZB(S㯦$V_~'dz*`1#cZ 7I?G/o>@ijIV y,э@1HrM]'%wd&kn-:MWt;K@ѻӔiHqr6Ǧ%m+MhsND N\@.TjSLcHf#Ck9ST$qKT9Qvm40[1ol$-";![e}#s?>- UU٘v0mNUQV43yl ;as򁥻|LRU<6)c4%! Ԣ3R:llO~wS(J!?OOQL$q:E XQ|dkmLDDrwNDc΢_ccfB kWMA{W鋠6t60cP6}i ?w)p1|7`ckly7<9{ Ui[KjI@꧟1V2'! DYAKGiꈤKULr; )Na`g.O=~X?Ml,֐3,aH )DՁWI|xR pJkJ >!iiW\z e/GAރ[Z9>QUR fwn=F=Ty[5lg={+"8_3 *YtupmyJE `OqAe12n =@4Onk~kuzSe^W:=w,bZ]8[>ˢLލЕ:=t-Zǜq[\_DX-&k5:^SQ+І߱:XhKd359wC$;;Z'nk-UCMzOdn'̳jjm.H⑭mEXV[2n8!]qW qOew sD6/2|@E+>Z]g}ESIY\ǠU6*I^a';1). P_d\O{UY=tUWYe['U솸.?W;n>3|V{N*jI\(|*wTСOگ\UdU[™J"nJ15 S"m.bhOftkyUPHj3'퍯O&K}hi׺PgNGW&Ko9+2 #wva"d}@+Z B }xG!*ڧ:5MWQB}5LsnKS~/A> v?^ߒ"QeYO[e*JwmqFk\ HChsCKB 7q2*EP u|*9 CN1Od 3ey<25mn U$p\,4S^v XHc-+"-ZkڏKIy|qF快_ x>YyFIٛɨ-aacLN &RHX%d|1c^Ӱ~jIwh_ ]dX<\. PRYThb$$Rkznybq^I~,(驪ڊlG4Lp }omn zRk+1w>H$d3>xXpM'{wD,DE3iq~WDQ(.ELLYc&Ɏ}G鎓/8ii jWw l/~i~h㋤XsB6 7,8qc9`7eճ[<ߞ,&̈́Q qi•I˪RlEЭŽmҹН?5ym)k|8َQ*q 劀Γ`z{ 8{ %*W~ksp%7(C4ਨfXRo1X{s)*U`3΋k8y-y0P2,đ-%/7CH*ILu[l=^b-;n$@IJ`]L5 _gqSՓC.ZI [,hY^JsZQQrS] TQ7o\3yN=?|.mW'8x~V9 e {4cNV$ , us;0״W5uhղ5ªΌ~v<4ݰ󷸰m+%*HvA]O~⦣L4)A*Yt* aD`ͫVz=rtDHZcN&V}=PI 'P6r6\t3UU m$vv}2a#WJxU2HQk}TE h',z׺ ѤVė‘ ,P REsrUHͫԆV]-q$ehie%BAHVom%Yq;MJeJXA] ,{3vr̹ xif=KF/Fl9=ia](ij!H)*V@F:y[&`Bxr=P UK=_}G;{)qx Z$eF;ǖZݥa4`}r)ěr=//#"%>m k|Ĝt# )Vbc1Wm'~b'V@DLR ~Z늮 Bd[;Ĩ| -fw+g-uϒv*amlz67en5*\-۟Qk$z;&F2zuBWS&i"#Yiin7SN.&7"OB'BVd*K lv=w?\c暘ON*{l$ofyt̕yz3\slVhI4=ϵGMDZ*\0QFWx4,ȴAwwG |-t.om7]W8W/ڛؿgZ}枮]%uajt;/D޿c].|Ob<#xxqSUH@|1SK^#m/ VIH[ǹM ",t\ Z<0A>E۝_GdmwL{X^%J+R .Eѥ-eu*'${Eʒt]UeS$ۋ1G ߪJ Ե |"Uh\ڷf1u/&qv;rKez{,\B$.7-9G(8*ҮfTo/mn_,[Xh[!7H9>#55}M3-Ď EPð(ZaQ,$ MHܜC̎xkkdeIW4Um38}'-ng֑WnY}} c0O]&dy(n!ӟק\0w*˧@= *}Ӓ8ƞ-UQxb@-|q^qd;ϪIR^F+arEn=r![qXGؠZ =)۹Qy5:բ0ר&79ƲSP<0"=qVq!Yhf9Q 6$X¦x*h(cH'TsvY SxUJ^zm} uH [dP? ;`0~9HkZIk6R̛5G~gW}?707=KoS#Ȇ$ɇ/gA_T-5; 0Pe \_0Ϣu(EhTPQfP9[cA脴(]wg/b%O? c3v8e-tdZcگJUǛx$."˂0Ẩ)c}{bynbts6> n+ጫvUQdf+ @EO،lKl*h9kgjsBVٗ; VHvc䥁m<&Ozkuhp>k%Llz<27:40v$EJSND20ߑ8Y`#?5y#f.Xr|; $Y\\G6&Y!MI z/m߀l|01l" Kֿa(q$r[Ǖk5?/(pHBemmxo78m-tCO=b$,7e?(Yps 1,h 歨틑H^R @$fm߿LW.7c8(gH ĐF<߿?q)Īf@N1SkZFm:0[.!A` smwRwubfyU߯`&q,D ek]D"t co'4$)4&h`s[:)kyU0Q3"N\wCwvX}EԆ؃8@*U0(MBJce7OSHJQxSkg@ 9PI2K6m)mn]ᑕȤ݉<e8~in9VLAxIn!Kvq~Ylc|"v茍V[\ a{\M4l)Ji%Pv#LGMDBH mCYkFӟSMDsj\ o2h_T&ARQVNv Ƥ]0ӼM~f1EmK)o]'n剥 FGJuV/\/i)X䉀ȶ.2/ khh̊SXa/ݪ جC4le{KG6s@O2zsMG6JDmDH'([ SqLKb/2?~+hgk )O*J-E7nSbaI D:Dp20O=,>X\o8CGI,D W ~IȎxR"1,O;`fhTkxTH*䯂T-߿\Bma(C< LK$kpw{xvAnf<7N$f8u mcOO@qGY ]{c,nj2>nc1 6v:>BGTO6=+r5\OPhk8hQCamPA=IԆj713f?l8xni)LݐJم'lzRpMF/ ieۇOf5tU_X̭ zd ȱCYǎk 旮jmw|j?n</hWZp 3$5ﶓ酻>pn?nּCAi\#9ܳ4ka2fL*l<"T\IRJ[y{ɱ)-J[Q/`#ϲoo)w I6ڴ":>Rϰ'^mӣ?Y2Zoe=.dyv+z=[ub+#ۅ'f5gh(`<ai xV^}j 91^QE`l,]TL X-nv?yg68Yr׻ڬ{U}T)5l,ej{Tk\.~& FV'@\\S>(m$Wz|g.{I6>?Fi7chBdpX\W|䕐 {x/3d)s ȭ =l@{APG22+i{>9żmQOOAGS9{5C {1!&Wo쾛?W:3c8W_prlOխO*?2|KP=BG`5?XELܚ`ʠOQ6I}?;NoOp EK*TPCPJqо;둿xtڸu:VssOC`Ɯ䓞 ؿuND5-~5.|':WZKҥ/}H>AM2 ;= 4̉5ث 7u1^c4y<+ mTʅHAbݜr2IPtMfpq뽰.6S$EZ7 (h _wmn#~PE_O *C"/]9_|XS37^f0P}^Q[/d.@'m'(45ؿNlӒ2j< %cg;9sk3M_GJ$,$;&UTC525 91(ݑ_$cm8VfxFmߨ,!߈)[4lK ѐ l;u|~TBFo}6ł>&oS< U=GsiemhB5J!a{_U4ۓ1bm.,5`+S[m6@ f8ۦ*vqi4!'zi?A0 {U$chL-sZ{ILB r6"XC晐bJe#wND|q]C6Z>, l݆=&EHqG H.¤FMɱ #PplQn9[cfT@^ߊk()> yi-+d\r8"W!f`%ww^IK<8HXirl:{|[*[)u4"dc%,d][#h$,PVbxt=Ϩ;A=KёrյaL<Բ剥2+kR~;|mǸg?4rn۹MT=*{hckK9DN.oߒ]*`d@bA 3\@p Pm!%tք ) n({+Տ%"2&G aiu |mFߡ dqѲ HS-jpnw6(+y"3qOQ E$u!A=vo*VQ"ibdb ܭo2W)#4KĐiW~c\y= nG%R"),DQwl˲7%EO4dD6\9>ihDPq u_K@=`ֹ=}09AƩbFnZ:۸'$. SM#3H)Cۅ]}O}\?wcOv\0F^"DN 6ERHm,-۹;em$1Cfm@[1im;(C]4 ܠuxE6sAZ2iH\?;ed9śp?U=N0y .B&kI5˛Ej6 $1EEyMF TH79nF=틱?8H0h NєiŊ.c'_(&F?ܐzasU9KY4#KbX2>Q4jAt'݃1]BOQV"'!W>2mT2Sc| ԃ%CAiXG,HB@9n6+lgh|ϖul`@"Ǧ5`iHLp6?dj(i0 *=7?d18_n뇗%&[K YMV~X4!6n3\O"c(hfd9drE&آ߭{n}o9E Ɗ5@C r)k:SALu$-ѓq}l*b`\8tΛ\wW<(w$(<7' բ2xluvMbeWeK\_ΝtCFҾ47'ǗK8YӃTg9-C +5\>xɗ@KGEi1N᷻lfiWO{ƛU|x8!_ב`@e7X< q8: d{W~::zIN;ivXʼn:lH7 ;.ekrU*e2zPHᯆa҉'\z$8Gfm/0t+mw>p;iZHuqVgGQQC( _t52Fݡ\+kd- _)4j)Du&:!\@rU'-ܻ+i bDHo7<|ZƟS;rY¹N[Qęuc Qkkz %FHWup-=DA)R I1UϫEΨI/NU%Z51" l~^t퍯0E G;g^.In*BփKX"M0,=b\ H+NX%|aϲPi梛= !{r!b|-Sm$2 8cRu{c۞ 55|z,-)y9 2.A@XFY{]=^mKXs֊x,ʳ ^Rܿ>_ !qafV4:[N H_"ײ3;xr"=("EynZ}_S;iWq_0_pWC<.3,YU-1;8mI۷n8e?{}=<{Gp3\$4a۟l_AuU}/EcO ӺíS+=]B4 6ֽ"mT?شҚ=RqVR@B6H$`zdzJ+0y<#O!G꣔ Ecm j ?A~K.hNո'?ji'(Ty+K<ѩnsդ$0SoHX}A++ϙqD^38m"MYXV>olx|cպ9NƞͺQH.x6=.,g~n4T!N'=} ƞJj@=ٿ]#lo -c=U6W]EGG T+ğZGK]{R;=q|v4IZ+-GfhUu$HY(|z>W):;Ռ:1@rOeL M)$e~Vi]3y}D\Yi)xpT |/.Vm0rn.:k]sjDwm, 4 &+47a?c { "ZVętWrUAuᰗ4yGh?W-mkz%6(g^Lc}z*`,*MPu5 |G,v%nT+4cV7c009mPs&c#!&߿?\=eHZhMr<gh6kCc[ M2_K08[N`X8NSI$ZyX8kn;68) xQH P6}G 5%&7P%}kv1]w^UCZl#3IY^6 r>|VӌL $`I۝źϟ\!7l6Bpm8>|Ar8ұ%$e2i&"-9ۋyqt1@j2pv¦j $F^9sGa qnx}gJ@d~jn9+HӪM,Y5yTr/ \ۡO,YQB7{ X{͹h;_T9c4C"ls3$قn d8zp7{\2B]>In۹H6SKJ  9:?6ג8YUX ?K<ɒu U I!V^Xi#g6ef>Pľ@G?4 cdﴮHX|[ǿFHJ@3hOTT/0v,IL:VknD -(es*.x+OUx{,`""#@Y0#swvB/ v}OG 刖Z 'T+P肵e:ΡpGl@laۈ\m;"D*T[7bn>& p$%Y0|@wɿm-1PrDڔFы^o] A)&1$R"asz!LJF#xrVܓX ]{ %,TCo3ѩ<<<_ICl$!w,70<ϺbZEyɕm$[>2[LS CAL婝p~V&daaG:'oJMX-dT}P.X_>Gp`!b-i :U,Dž`thbhݗP:@]S7nj麫kۅC^#a7So:?ʑp𾲁qcn\lǭ-(5ȼx&,m@.`h_y8LCWUCT,K]Nؽio'ʸY't?*64fl0$~.E>N\|BN?O٧-M:?NV_gIhfLJ"G@ADž iثcAM˼{t,2,SMUN iE;+<S۵#C<'s]\]o&c2xi_V%.A*zGqH][!YoCEegY}FX1*Cu<~֯qo⯢/g?ebj0BI5-2Ks$#EAuś+uN$&_=#PCAP_`G'^jkuEB9*EA8aooLl5WkZ~/A#lm|L^?~%ͳ !!ڨ1 y]ߍ).nǿ{ 4,<']-cEE]+t^I3M{Al(Ys EJcAQay~nZ#?")iE< {J%~/ti vOhKTMYO8iêԸN=SKYBi*?7xSڴ}6b |႒MB]`OXicG>`:!~(eiew#ד efQ́d\54<,UC4rNсT2i*uoO[v>n=1x)Shs)i gsD?y%U_Mo>`IY]{$*˹߯~Zi㔹]NOVl+}gUN@[~r~ʬgR|irڧXPL7w7R k%yvh*ZryLKŧ ҐTDU٤t&Uq h'ʮB Fѕ,5M:`{ 6GsԚYbc $.e6ƓgGt ʨVWG LX_4 e3 -??끧`4^ Vy iX~cFn=θD)"H:ǐ[m7U"wAq$o1NPs5oi ck#CGeZI" {" -}w [$$$i`H<#Q#(Vj`Xe&I$JTMuYÊ 4E#dG墙JdBH0JyZiK^SYf0;~[-e7rVto`Nܿ+{. ~GNh=ZWלDs-{N+%kyQh:&BkO'vƇ>{r)ŹgpRE#gG.~,5qs[+}Sq24Sn.Oч7s‡恣"FT@Upkn)`em_ ,m1bD|lmL &E xw6:toϞ.x` !`yJi:6t~XIk)}v$-q#`G+s 24ۺ1rneFv54[F,l"k3*XVY nM|͔0akHS(v?WK^>532Z[߸<,7dIuJrsulVG]^ ApڟjL4macC=gF 2*kmSՀ "صmldEi+ޛ2F6e=AXD*@Ff׷_ƋEI <dE*wl%ki0,rBoks}yahp#41xS:|:h3v=颾jWCGWa{-hp;=Q Ј' iRԪ `}qTͣuYq-ܗUFEH/n@ 6bY[qXX+m.w9?ieD Z:Lt([' *5Q3 W2)EB4s,ʠ&-> kQ.˰4p5:ƴԡV|pfh~Wq~V ?uFͅʼn q s\pHۏAIƫ)f@cu0o-}&Z1WFxEƶ䷣֐\r_̲:,Z?P8UهYV\Un'A1+ScqrcN=[@¶LJU+G{2%•24eVǕ,dutK2Wu>z[&퇇<Žd;;y)}+v$eNΩ#!Kڏ~SV"))lzhi7x?SX}~?_g^n`cc`/M=۾y/l\C쾲W|ڎ:xN;q|}kAR@p gMk辰{)Sd\] 8txa<לFv;6v=ք:INϿ{5)t;*_OCܝh,w@ԐZI+n8W, ᪩w00Cp-akwƬkIZzXիx#2;sǖ?_ vtFp.?eM}:q[QhED_£_'G@N#L]@e}>GDyviqfITTSN*qvƏSv9%6mDL^2)`rXA]qω>7@@q:M?Nf<;UPD$%|5ung"Y&H(ppǙGUBSt {ޑwO Wg61M*#rI?We:=k;--@ɣFl̪bVFԍ # 9*Z:1hNG灚VKBJ<,ҕrb-V柲L"442@\-PzcJb~EKK RXY֝&$L3=hVƸ$" (bZ"9mHNSF+,}5/:sa&8 iN<1~~ Vcc+?1PH' l ev xa)2nï/ֳ&]&6C7iv> sS$3 NGR<5K<` pF^|β05c $#`,CY6 \H#q aBR%@ 3,;Nkb+d #Dʇ[Vۨߗ|0X]wJiKGQMHwk ч+F&ӊ<'Jn 1h9W <Ã%}hcˑ7o|z{U$_lspnIL,8ZaO)-?Bع;b;WFE^OcWýߝ>>l`HǚqϲMl6ݾ8oH;Z9i& ;[alq6\EGSmQ}M̛[烋Z "lx'E7e/$LI-E8@2\Kxk zm9=}9"f }ګDMI*HZU꥛O9N*`M.RkCd"ZG31tomӇg欵<Jش)m}=ñ+2^3PąlI˨)ُq?/UcQNǯY#HUFR-W"$;mrdjc$$Q /eV1@kw7ٶ51gJjM{ⓚl?5h@LڇOKAΥQ҈ 4n*`n;[ӀOݐh=4> @b}O!<sŻ7izdo,;=jZ` "c `A--"Ϫ(fm#z4JR jG ,wa6W pDI5BĐKI6Ᾱb Ȃ <%hQ^Ò~[~HH%cc oøcaiqsKpScT^ LR7ض#i*KD4ҫ`쿈 p-˱ʷ F!b%Mqe($EFYUoǿ'qq-'`SI$R5-0if s:o:77'he /.Waaa BAk @3PI ;FUMӺuIlިm<- }ًI H|CMʸǾnHHgtԕ0  2.ŷS넇9Lp"3Ǣ~Ha 7fmb{|F0\(d 3N$ZX[|pe8‰ꑙlIc Ǖ?db9/:2*2yn#T-&Mz$B է},u:[fo@ݼ YUFm~?U1Uͮ?!0!Zhi9ѡϙT7pyzqo\zk۸d+J^;uʼn.ȼ.T:k;YyG+YCs(̞-2lE,Es{ZSu|269t٫GG:n+Jz3RMDeU1>:Y>/zRuHx%};2H)ii`)c_R:!{A40m1][^n_)7HjicF;qOQ׿N }+'/EfY6.,"(HWT{ uGѴ֗_цXc}j^ͫ L/DU ]uɠfفg 0ہ ̓c}<L* 7珧O$ᩋtҲ {TU+5:֤}If _ 1겗r;QOi)7Ձi? iJ- KC`rzFlRK Ǝi<ܪz1+r_Li̾(oa4.f=U+TY9kރ>B[:OPhJ7tdc|_PqViGUE45V_M~?{,uusLNU Y7>~ht}Cf19Q4Fz0:,ՇOChj`򬲮cyPuf">qq-\G*t!o'K}m0/IҾ7GLpfʥtKnyk::/c5+Vy)><ٚ䄔c|W-@@WhI}C#ϛgbg5Ev?QHMAV%Dm,7YfU%ێ_}'Z _5~(2EMc3צΫܑ+mCҙ#+]W=T$<ҫe|myM|yuFv9;~dl{E,:ѐ<ſh?> hbJ@k5-]?8ee9mk~, ^GyUS=f qkP--AՇ[r=9cî!}r?{TYuRPs2kk^}yWfK`#_j$d]GdS)@d-ooXUQ?Ӑ{ֻRCU2*Ŭ96:*<ΣSҼCz(30Kx*/*Yrt[]7f+q 9.,Ew 1C/ͳ&xT$+WGLn#D"ǩ|i}IU TSToeA3;ML#o^L6!ޮhqگɧ>,\J1oخDXԒ`}#T[n683҃`_Ȫ=6ᦦb g˹M^nF H[Q<+SM;&&9dсXelz*L!.1N)2VVSSK0XYI6b\Y)2C9[%I⍖xq>-TFxPm ʟKb򶩧=t"P,:F"O ;bj.2/䬐'6rŘ7Í6@H"cC@*J:i`F\ >qnFF\/O#eR&?">5%4CZp0$qmt"ĶHnꥻ+F3-oesZwJfY l rG`O]pFG9+mf5b4j]&2JȺ!jiJ>id Yr8sHPN> ihDHNo\+O8qsV1ɡCV2NXZ$[:PiN|.9D qf Dg}zF5X#TFƠKsHGpםXUaPsR:ӿ-v=G CSڦPd߇ns\ʓM8GaZfRy[8kc% Ӕ17Q!kSQ,b{RFձ].6=n=:7b8P4Xw uNџdSanʽed-J1r^q7E?$1\{@tq|/2h~|bea`U#mFRQLxno߷,z_1mi8GIKhCw?®Z8JXN#+pa!x+4<}ՑE__JqK.8BenywccF|9$%? x9ew 2اJeRN=:~KGǁDwR#snnwXusӸjjMC+rR8wײ&5>zF{UFe@P˘I>]`3B)j2Fwy]ǖ1k>}պ``KtIP&i%tTc Jln46bTxظ$w^X409h/2*ص>֏LnAw% 5n~u@t;rQ]ȶ, ?O~K KTp ,okbc?FKE!qkDV iPJZSE+ކ5N'-/ !Aa頍$:ztr4=V:5$=9H֤¥:!sEIGhRPoH? sӨ+GL ,F}8h}\C>Iyzy^9Vk8JkpSod49y{ݷTC+Z"#m6kwH9*,m˂̾a1C[ 9 jŽ5gQ=i ]{$K;&wZ犲ֶG0C(;,sFr28W#fDFaE,Z?E.~f m7F8Bou_*fZ0Eo]yGpŽ#E+X%sA_]&dk2:\r#XonW¿mn- i4xNA+۟g _-b#WW@#̬6!}-_@_FfHZT_Êq kiexcD+nC}>I>鬅f/ D3<йU-U>'Q6#폞$a OL//Bo-8E2AJ ip 6.ڨ.^FtȘ?0s_._lN0K G֫kH?o1-DtGsoEomto+}On"ZGpVH܃n\{ꁓg4QTue.XP/bG;u3h2 r߂)zgBIkmu[C/1վ$`s|lū'|@/ :z#YZq}/s~:~gVB3i>oo' o|1+>aQ #qPm- PP꽰q+RO4 A/暗4$jmc|X=LvKSZ5KЄucp$~-0KWIZ3(롹$Zsyg+SA񎙟ʓe^U=FQYTd=.:b_ I#VwZs "%x\nuUVUHMu {}65]oSPI*fpK'<\nwœ HTXZTJu|Ne w:y Ŭ (Xm@]h]lse;ss >.jk}j0 esx%w$t>Eb!H@ҁv"}8Yڹr-:9sbf c;]PݲW^heߥymwJX/ֳHߒ;˷ o^KXꎇ:!*+jꪞIs$Zg1젉uw&ݒyQk|}0.F@ph7s>+(Į`"_p!^iSP+$/t+nĥH0ʲX, b©.B6\`U/ 1ݕCQ8GW,,_lUpMynW: #E|VQlroھ9*x6\WgFD=TZr.xPocDNU4ZWid\71צ"ITjLj*tavmmMOFIW[ P7Iد*^bJH]P`udmhPḜK$z U c߷b{nSt0ѯн@9nvog'3E1m1vX(%fK8>:.mQ.On}W\w5Ҿ 'eռ?Y`6t ;F&H0}UbQ\gyOêH=-Ӧ0ck˂Drq꘦)ILI/0ݻ_[%n㕧a}GXҴSL-k:0om|2Y0 H9$Tp9Ժ7=\5?E ӞfVyCPYqwZHh%xdfC}1 x-RӃKN먯0G9?$K-'ݿ?DZUIݜ*zO :g|I#;20z[řxFqMElZQ-~^\bǔ6ڢ%aDUQ*_Hg}eH4hc'%d Hn F!)p$S<77Td1VG,ZsS,`1Vpfs6LRI -"up@eY6H54 2*? Pn+#Ѕ6(}BQ蓷!%E 4SY,u'yzahpr5Y%FV\Op$lx8CJeO?ߟL$_V EZqGa<~lhٴlŠT3 ]܎byrGugFU]ZR4mp '~Dn86o)řTi$"Ps >!8@cK[A߾oPpWAdΊhܩ4($lr/xS0Ȫ` `C?PۍTL")P7.GFyq$.m#"JX;ߦDFEC50~[0Ǽ,7M}sĮv,Z}qp_Se&Q\ ͯ- zadm/$Ɠd4>ɞI2]_k6qp27]ִ*Υ [snAx78ϓ}iV71=t'eҰFT$2ؕorxS$$#yi9cRG9сg*Z9F#<lR3($b=&FmEv+ o{Wq#m Fϧ֐ý;/?(|QOgu*.gtVX91Mn#>M۶E'O!J"0 w; #IHm#UNE$Y~_5,~,yp~kPѳXp_ @6(џDM%0E-k ]^|f[$9y̫!Ro.E?pe pFͼ"YkWX@s\9x.ƕONo}7Q2&BD;u,ayd@96ܹ{x8QyQƖfXls!qtJRB:f)ا2W߸灎X,RI ˷1lSԷd&p*JPʬt7V~x 9!5(7}1EksG IBojs24űrѹD Z^Fd0J~<6h%Xd]Qk@7G +q?&`p`rsaI`$!? >@;wNT$R oY]_{wlJФp$URy7}ϑjirX*O'{r=ϼc9 wX7&D9nkLpw$D ?WGPPg_8}q~,|8:(d@4qZ@;a14?;#ׅY?gk\Op2ʧكWUTfr&^W%ߟLz>*p|#\sdPU^6 $vs {{b)N hXe`-IM#m/Ou3e\&93 fQq_uo-#OvC(J@eYʷнc'FO+|Z4Jl7WSy^cQI+i8'Nnqi묑Z{7܎̢uBVw<'_B k;r3ETkƎG9J5O Q)y!fmǵ4d5^OO䩙gͫ"xʩ7"k^:FCw{/R5{A˨(xE!ޓGG W*zt S^߲GmxӺ9gYY]@c3Jb+]GSL i{oa$KoY^Ð`pX峖< s[`^©(QJxl׷Nx0hoDyk!|)xEǔ,S0KX\&#$27 KfkpM^C1FSȋ^˗>[DrQ+ʒ^ ԁܰ3yt9%C$nH6:0CG9@gtY%GhPћ؝\qYڼ:qxJ9MJpw~X?XGr(9e.=љ(lHI{DM&AR=ʰ b 0/Q))3Π$*Ku=KvOy,6*jfF&a+bXxMH2nwr=9HvtU-`FȺ2o[lRX/ :Mi9 b|QYݥPT(+Y$,"HF 6V7KV$ۨ- mR 0eMj'H]FY su h|ѐ\3G&[#݈? vo!Xn|4 //$*om;#kH&EE EF\bd7i'3BSgyl;ͩmibUpEH",[3Ugʀd[1oϟ,Ayفv2DEk]1h0G]4P&p+]YT - DI(X؍շb_-siI*Ѣqdyoܚ>#6O[ {e@JTTC [ zw1F); k)]s؋ZHl[Q.{MG[ar0߈_(=! YPe3?N^x7INBhN=UuMrTQ a7>}0qINCi*32hT(Gw*ڭk=#5c$:>&!h+)G"ڷQ'Sm:ykəsH7O4(ڻ:[C[~ı5O?dqmȵ_"{[B$u7hm熲ʍUk]7~.9NJCc->w j]ǰ& #?Tm[BH ^w>b4g쀠vHR+X~XMUw!Ԯ4m-$OC,NvƳk4! IJͺ+ $ XE;f9i=mK[\K(}ѳI,Qq /lWs 9 R^WUMQB8\yncQ0ST;Ƅn_kP s5F]2D(?'x1 Hn9Qu4YvIӿ?3ݤd8ȤPhx%ݎ,'Olg^cQHGQnDJ\>]ZidIX)"o)l'.X8ׇfE)xiCG|dV SM-DA@qcV=C\F2Kᕚo˝AaŮCG6iJl_],ڿ =[ u,[ n5S {t3)p B#~ \~[v?| PKr~J5îKD9#axnWk|q^X$+0NDBO.`%AyifV`-~cl"XsD}Sh@-q +Z *6:ݯA;Il,&DwTxgJS^;z.)g |5tO K(ӦC/߈/yb2asڕha:ZaAD.cۖ u0O(ƽs5$/+tƑ~W{XZ WjK10qxݯ0N@PuyF hv|-21[8n#+~w[pNܨƒ!#PN]_mjCM=є4]|D~p}oX)Rj8VjVRI]}׷oמ(^CSyp+٘kt' OLm?}5oX !"Xf0khDZ` B>|4(N;Y" qR"1PL">Efv א{)nBjÝ]w'V=NY AVXb QPzۜ#@D ,E]eX80G S[WRۑ߮(3iYp9׳Q4YVӰm9b4}n9Bqh^I""E vFmA@FÐr7Nu$4+sM|2)M jNNVױSRY8S4$Hbc:G/qqnBS#Y!LFoɅ%ۛk|GUo V0;A/ߪQCkzX~Uf(?BRKnMvA닔##Ģ\r!z*8wQBmק^K)4pb kv[qVёLm(5PG?6-% ;"u:UTa߅PB˿I, Ȉ,ֶVƫ\+qK(}, LK\ 8c= krLZ 9^hƠc ٷ21=8ʯRJ^2NwCq4BԮaӱZcuN>3g!td+ק{)`CŷÕDL \A-,+lU!7An~9LSߢm.I(Ii~osh*b "˫kokOâs| ^ͭ PWNO,$i`7O {B5ۚJR9wWEʷE NFdrv+݆1l)+R1*!KA뉕Lt3Qc +a =t뉍‹j4EǎV!hͭ@'KG!i=W/-?ӯuUpH81;4~JA'XDIk`:. y^V#U6 {\K@- /~|ZrO=s!gf! {!51hHu}Pj"hko׾!tsEk;/ D[uۧM26ꬶ=̦e%2@.C6~߲#ôz jcܴvc8 c#}Ė@SL2%U?`3[&3ۅMOyr|Cbq'#*E/Y]=Yܺ#sm*AJ߱e>вĢ!ocֈ6Q*_B3uRZo[cW < `ԳRFC ^ZH98Q3z*YG;˿Ns$ QM&$DUEnԤP"ᘗ_*K\[mGJ!]f0؍M1pX]$f ]_\v=i_^x.<J<`p1kETmV;XwENRkhzHŖUĐ93~/׺e2H}@ۿL^ӳ`ʚJwPACf摋EEO CGYq5\a5=!h**R)$ߞ3VnJ nyZn%XFӐc"ôFyDQGOF低~X,55JA$[vE>uT$5[Wy\_t[C,& a-}S0A#ijSA ?!=U+}%]bsIr)bҒչ.XZ2$œ6],Ż@ǒ=0,^D*.|U~h㉮S +l5ȌG`W;Mqam[bԬlyUl`Fmъ\c&Y.%HYU\_8hI4R)T;/`m}%6Io*+TDNmchZ|;2e4DRD#$H=P0#n*<] !<3ctĶ Ӱ u裪aJ@Xc v#2<$[G;n;%&*/mDgnzJ}Lk#:J%$n pw@r A%*JAp'a/Dr XRTCRG9TTӿAbu,hx63zJⱩXT5"ױ~ft+u/n x!|ڎhBq w=ZI!qspSA Ƥ~_<{ 'W^k*b׽V&h5$k >anc1N#T}WB"lnI;Z~AmTU+xD!\bGCaszPxQ 5?)AxRoAxj'ЎxwĖ%67UdBTsf^Vc8c2aIe95I5Ni n&HC!=;[:PsP6sdᗆH$np?,T~UQN) +%+7e$hunq)A;%C2=c/O B11JrRV:`tca1*S"6̽ǯ/`kA5M?%!A ouN;zn<Bi+ 1If91KRZ6RjSa]O sX\ u-$VIJ-hEebߒnFCsnǺ eGUG:v6bqv vn6@a򈣋ТE`m 1m<{6Zw 5U7k-w7>@Z "(r Z+Pra8\{G zIuDp,-so:-E8>swN,J*F9om-bvTV29>Z`4GFFDxjiĶ2v#c/BHs#uCQ3N/*7 ǑKh XwP%p& tFivkӑ_XfDI`o<r^6;)u%R:J;\3TlrDKI$qr)h王 YNuHʋ"]$\ݬ6{G³ڪFWZ'񐍱"Vh.ϊG ?T;$fYL?t\ߕap0Y.E$ukowxVWH|HT^b5i r$[n\v/>FR_ \0%D0,dܵ؍\Ϻ?UeFm$.ژX}t36R͠H.4MI=IZz>Fˤo{↞I6GJ裎Jju_-Mb5o>&=ԩ,m[y-x='A6"eW JF3m`Y-NԒ6"F<01 OB +-ydrtzyKL(f.P}\$*KZ1 2 A$IZČ-`mkc)qx1<2\u[x5h"s@7MJ0BIt.ICGRtbP>n#3y RrE͏g X+]LBԟ4P=ҠD(%В 2@QcOv%s`°/"輿6'fGjp%MϨ=ppdn,8|0 G po|1`/kuV6ij8V(U)i#sr QL 07}0].ߦ]1鍤PWSt׭o-cNJko;l}apuv?\[n9IuAlU$e 'GA~=rP\Z0?>d]Y^E8<M4n>B]tM7c:'~J=2bfoS33K-U4hE-mf=q;HDѦËñHGluϢjj#c < "ǰ +B*L<=tC3xJlʕLn? NXIf֊ TOTRUiуH)Fg> L;SFq^{{=N\%23cqk8Is&!gđ5A<э}ö0!R;8N@E33FqRf> @;RI#.u\\֕G򨣇i XlzcyW/S$܁?5 ԃnij(*]!ׯ6qb2@"2U.48h>j=Č,yǿ${-#?gEW-g $I_5_{[ᱺ6^~ѠUC"@ -2vBǒ+]E_o2X}pcױGfKB|ObWy\v8XC^>}p ;<=k< \#*#Jt\6p}Qrsk,YN˿;~VƐyh R&e-E2#Rةm%կmXP2mzE ka;_`=0бO ,ۿWF4E+Z h6¥i'ۭC2e@﷧1NhrZF ǧ * ki&NL惒7rKS#r_ !}hyF@xK-t=~8W_%Ai2'U rMSpn"6X䘼"1`Pndz$#D°*F䄰SOZiY i 7i-aax>c:Vc "> /OyGM%E< 1v;q|+6<&XYu>f^DvyG>@ᱸK7 , 4f?c?m|3KO ~|f OUˀh3 yL07bZ Vk\e|+D6,` ] $ȆhV(۱ {cd"-M.O[GVC5͕os>`2&VB_fO5SXM<:t?ЀSNVƒeuQiW̍k6!7.SH*Hm짨qq6R(`6~i, 3/{yS<{'%=!Ůui!R]YR1̬ZB=L!®fȿ @fBW~ccbV`ZG!#|} rFY_%*)dEm#u=+Ī&.,44BCw0U{rQdg&<>sDeUTzd5;HA0/ YβRg#ØKGRSv$!!2J (lOaXd8HiX"+"߾¼Ws LqOTM~$}ԥhʪ/˩MoU:wcZ(i]!Qkk;v9w ?:I T[po~@@ z)#GS M"3-߈`m\<>ȟ?ܝ}=0ЫSe2fy[0?ٶ~v?#qSҸ=8/$[Rj]սc-X- e6_V%HTztFI2&?[s1ᇑ?z_)8D)'j ^}TMmY68<Rd lMX8;|D(r4Xcn;P?m) x#=3MԶ<~\$$yR8SNk7B{a9ySA>(ԮoPcp-d;Ic8>#9̥SI=~YNJpxF=CŢ#Fe0n}X2DNs(ʔQ Ԫ;'oxľ&Ðv6%D;|6֗[n3nU6=cHfkkpl42~FG&KN=: O)pjS|%Վc|%BFA6pzl0i(jkǢ)ǢMfu}sA-.IRX$gjeF~?;bۋy@5ID6X.ab 6'qmyL6NWTZ%uP_ػ-'r=!)R8#X*Ryʊwgj#uwp-%WMRڦcBAqChLݶE%O=RM,rhok{! ݷ欔i0* voG`$M JrV+ư6% Hkj'3,vK~!ןoXd/lm/ҔhW0HzmwPS Ro|a?mz[ÌqY5}V]Dғaq{x4:$8F^@6P8!{?:P H'4fd;q[ p/#h>HPZO:RvߖcyybH]f~;7"+ؼ!I7۵?b.|3x[0 ~ᅺM%9ZT,B'qY6xMײdZp͠KmDs@)18$HC/Փb9%ۖ1\vUye*;#7(Pj܍O {+yiEP qL񼭲m p.#( %BO-$ , 5]{yiܢȠ-i#[[%@)@읆=(t!hߘlRuǿV{lHmbn.6b2 7&V=Т漽LZ YHTčJMXvE3T(lۋo]~kCLt 9YFо#xEk#2U{|e&TxXY?|Ok|TAUIEq 75#bh4@T>!eed:}Aŀ)[H$⓲7b}[Ap~/[ 5RL*Wv oub A*Ҿ~a`ං,ua eUAߵ.&۟r=%)H;,"X/{k*c?r!?/'`pMm\>@<|LkkC) t}ĠP8 K)uS݊3=;HH`cN AIGkTV ;_&_J=Ti¶䭺^H냬p%㌷4 +7,z?Sipܼ.=SyOS"wڌ K+a2MO[L $4\v\vaKTC[lzg3.Vʋ 2ŻBֺY~Lƺ'V nv6v=c1(D'#qSTMZ\CÎI q݌+05V`V'n&2 n ԑٛSÙLnҎ7ϲ2LHjSƎQu~VlyM`S ..LrΦa6"M\xy͊N2{v zSDTvyĆ1j"\VԬVSHi.*9{`85`C\`(w+|m.{vV%&#RײXߘP;t=ߐ8vs7 u #} ~+Xlmu+6#%AZM=;X;U us*/uI1t^k;oeUMC<$qg7ONXۂXt.'I)ZH#`ؕ#~_ xNb1o~v Ync(aXhGRanxғm%agE*᭥s[<{VjU L(ӡ]H78熍iH<")-mcs{1^Aʀg,G-1k-ϖD:; +Pet.@WL;6-|\W v@A-_4M4Dh(IXYTP{7(.TLHwH6qub|9v629Ugc*F Bӯkv:(o 3z؅{\vłg6OS8 "$.T_xq&e9D+ZQԸw0lixW7NU G* 5[8l_uc_%(aӪ#G d#FMyYXNۿ|_C{TNpOJ]U -{\VC"*zyN,]majlO!8+B U%d4=a\Y]TUvm}$n/˖_=.)Ǔa˪%\u-C{=R fHܺ'Q>ɯbyd!TFnO~\8Jiǿ$60~JY䆮QXXlOλ`w8 L)!Z} k?L^t=ڇ @HxFuע+sa9Ԡ-50&TZ:ymϯ]@#dAJLB,Ņg9m샑8 r$23ά2i×{fb^ _WÄ~\PO 7GhDp67cH5/7d$u)-ʝ&_7L!Dw>D2qKʤckc ۓ^ͣi@$Rrn\}r].v>яq|৽ÓV4h,Qv'| px6J^5\n#=K5IF0=6 c\(akNrVjqmm|KZ4i!\ha3,N/S`Y%xPeaio.ya%{B"9ɉI 7.8N%=J'%v_9w> ɛQ5Dr0Uյ1R0-EVȪmʞʼnA. ;LpcGkIiJ{ O M53iO.BX85܅Ae$a턴5Hm)f*0?GVWH ,3#gH2'9-l6dd z5xS.Ґ of P9$#XI$Db.diG@Uj/ >X\qpw?1!RTL<1` %u!3%lwdH.ֶvuLƊ.,@ +w\Howव^8U V&$_i)"ϪO2I Y7NXkn-)iuhq3WY|OS{U:_T]TSOMG qqbӜ7v'<ݕ)sU*v [a˴m'ssYn\v2@ϗXǝ~ _Dbm;N{qn5e__L},h#Uwo_LeQ#}_K,Z{QWXn=u=8]Ԣ) U̧spnBzރD;ʸ)x&rVu WX*Gp 2/NqašOi M\W O~ߧᅬjzj9^6ۙ83)kG%E$mM*JXnA+H#f / 88TڪWu/ a:<1%Z1WA,oe'%`qQ˦ 6siTK8ŸLamI2Ŏ0EF݊B"o~8M$O3 =oiWx+V_TxbOb){χMxS1u2}LbZzH\HT.NͰcyFSˉmI1Yf|~6e"toc`",S,0ukct[]UsI(k\-PΰO#ũS3H-š9 o(+7M3.GpcuCӕ8ҝE WI#INgc&vI{F;ER,獬Yz晨vI=1S( ` kKy'ʈz< 9iD@<(vVeuZߑamm!.V=SgF }D6`zʔ}𜪦)oL65 k$ӹbAs`_4(FQ#bOql(kKۚS"Dȉ7M;vǍ(C/TѯnĽӘ8Abʖ`A޿4_x4} */㺉$imꀳeWHI!g q}Hvd{"2 mK{l{[?J~`\E4vT "ٽO˶5otNEP<ʍdp߅|pZS m6ʤGv7ʱO$K4꤃{ㄽK*^&fP_g ~ DZ Yԁ}7IE Jl}Ja*TÑۡs(y6jyXr -Q:WLTj%ƙ0rtm_sN-hi|,f1xNLmvXc-:2Y\:.cpa7anqƆOcvQ&XČ4(*R劜:‹ӵhI}98 ӡhPߊߖIsO^SD%4 탗׹8{ӆBSdMJ( 6Xro-^ɭ)⯎ȊL**h)+8k죘GDuC X1RNߘ=h;^~d<;)9d ;mcc˹v5,w|1eʪڄI;\lt0#‡6E!TPޏ}G"=,=kʗz8ڡbV#ݯ۝8i)m{!U. V+#op!Xhs8Z׀Ҥ᜝!7I,$Rvm~ wRv>qmgMGӽ5lNJ#WQn|v8*'Ix$eK#dWkEq^SAfSey34S\Ӧ1:L@ef쬶k'Z̚;x2Y "]C Uvbhc_\l}ǩǦӋnJC Se1`J'`:fS*J-;J;~x nʐ\ RvE#I FQm7ňSZs\1ڑP50$^q e5MPT.b@][ ud{kQHъm oL6)f+9$Gx>\[dp3HMi4v'R, :%p ^9I)O!;0=z`"-f'sIOxcG$MjN-1*T\UD{#jigB<7[${6k4~I4Z7?C8#[Å(2Tmn!4NW/R1:DWO0|.S#|ej3LpW=zQ q@jh]RxS/OjJ=ҺрFW6}7àdaIѱ$zJDY%Xv+}yB2TId=0K.evW.DwSs>iCC+Mdt mn}q)B]QR^=)e3QQ],=[;Ӝ(tѺ;q=wTV*/bܹߧ#:~PKa,[Q؁>aL'諴ʒ2.pXktƓ9I9C 97ܿ?Wxt}JJY A$t Qѷ"VO_|2&0,Pt9R.@'{|,dg<'M'j4s"P ؀F+@mENKe"Lh2R[M4L8.|^n_aVez%YS@i."zVW Q{r@)D@v`prF%P.XYcqFb٣q9&] cQ#jLׅ_nҵIHPPF1T 0i Nz,}OhqkC9)"D!^ `]ly~)7P7B'Zu4kN7 yV1̥ ~_ǓT$` c$s6#턗sFj&e-,a{߮: F$BSEhW ۱9;Bcqm&jXt )lx4gq&eNi!{zצ1-W PM fu5J jS}[ƌqɢ=uܖQVEVɿ:<ʵ.c𸧏l.士ˠP[RᏡ<|^X`siQefQK-tV]}1Rۍc?ԇRI`RXz-8A2J@@|I05sۀciW[UF( t[~W7shx%x_"UX*t FxcxM"فZ}?cf+G"h|%)6y[VZ@aiY2Qc'ۿ¤ش-T|L#&QH! lgeesZ4Nn,8t/?Ndx>JD<1|"JvCbRw |Vc˸x-I.bv:e=&lGOR*L>noϯ<^RTm(?F(ǥX5!LtHIZa7 N'7e`˚9䊡V5[iunL:Xс#489Vi)HS#.|qjhEwOlm ( #,k!G1ߞ,@2}Cm(ؑ2ĵoxՉ"ƾ2yWcn"Hl}$J/l߁3m]R4QG&>3\+a ge[e6.<7R @AXiRy[뱵xáe `WX8Mq1) .|^ʳ**M}zeǚ*84n4NAWO ::Uy}X\UmWŽqr07c r'KDץ6Rf#i7*'U؂ "6᷻K-I9U't%zr ^=6-I*),H߾~Ko'۲QJtXtyi+ڭņ6trfKS _f"p}3i7,0@ qXn1J&Q;dLc UC}_q4 qFZ-駨fMNHO+XakFZ9۸{"U7G[_4DTw c%e+h !',?oFvB3u%b Xn:_60O)ؚYD!6\X?+L-y)[<:#mZ:s h=mVPаrE_xlt҇6{NS.n^ַ~x5җ`̣hHǗ.8ۈBHg *cU_[nm`l4c TnIbw{Dv}-*vŽoǬ{jT5Qӈ#)/MtLF/ `i(3$pC$pG58odm ^穨=#6I aUr63$,2}6 KlM.N t& H?8GW E:XԂmQ YN?}תS.m7|]Ēn?5%דIg^X{ў"YF`@|6Ÿh8~h8bN5Xl,mb=vŘi5 t6/_kL 7W2`7IRM,z`-7[r?|"6+DuF%4=m' k RU+>aIO # W\FC!6UX ŝGYI{řXm5]FEL:Vj;u1C(1DE"q8GBAr7mp1)!.uץbPa}zqyUϕ˕dv!0eisv9F G zsq'kKETl!%> q<r &x dU$$d>G|%|S4j"mVE2#1[+7{u ]'x'}W1/Q4{i+k-]2k,逳WUZMIQ";7@!Oozl?2C5i錧$ov Vu=i`Hɰ$yŝ6(oC s)!Dŕ FsBZMn`9j:š HUP$thPJ#ݿڲA)؜fgBK~ݡ{AY)idf[Rkz⌠1K Q#%ySA7{\  /O$/$aɎn/h3/K5}]5Iqct{cZr`FH*G[$s5?BOmf0m.[Ǻ1CX"a>k?ϠGq跆[QlSMP~z`RZ~j:қ)e1TRcai$v9c~ڠ/ ~>~ELazSDoq~?'dn8Ss5R~BŹzcBM; -]9‹\)LQ g4|h]O'#"kPBc$Ұ2@ʥ|kƎ8Z63TO_<* "MJpjkH.lM/~/U\ 8XNP&*k ykYƺ6Ea{o|xXvZ'AYqan-웧2wGG#R2HLԄ Z֖B˸*ejCĭ=672;zol ),R T2 ӡFrdz,CXy"h!We aNX/ *][bW 4CsMmxICsHUK%ʻcbM 4Rȳą78#18!si:C`t|6=&oS0jWԶXuŗ] `YJ5R+ k#:o o l݈߲=e,1s!t`HcR洉U%^t~0u0xXK+Ȫ+`MX5Ibѐs'b$X9<6Vh!Ip/7K7LXmiMN11iDed"m0B 9tD MZHѽޣ N m|b!xcPͤn"9 ݩBzD!_0=mncURifJ9o6CbTB8aKGTJ%)B1,ƽ4es-wRp/zYI'_$֖:_&JC8pnXT cG" ᶼƐ:D-}Ìhx`>cS4 (*@Kv{pȁiw쬆7(*z9c!==,^)$=5'y3{GµRVEr# C˾1HV5m"] $MK"?g\lNSWUEʻ`VE# Ǔ(Ouq" ~xAv=ڊYY")% n ncvA ! T(*YIϧ\;I23];Al9( g, aJbPJ1m,$3c*QTcugr6wݷ|2Crh,^ek\pr{c4r>ɱI1k$Xlokl@"`h;vm/I#˶\`Y\۔J6 OsP7 [qHI`̤ n1 *۶MAӹQ%lp'?@Ӷ9*ʹ 4[ʺǦجA%lcʐbߋ;Ŵe3 J&kd8|)!۹ijCuXnO<\3@E6X `O0?#,;[jGr_[ېbXǀ&k>gTk?aʷoo(uG"4ܷ cHxwȖk߸\(5К=A& kh_$14w%1m%X|5w[{&hG8U۱LD5ēF9 9|0W۶{#ECn4Dt[CQ+!%'9RGC9(hro׮8{+&]Jcߖh[G'N\=pK\cMkWo$Pfs)b]gH3ʳBg텔iKIԅ?>7Ǿ  pb_Li8 k}Ө6I!uWPew -:k e|]Vr#f ^zmgjUaJV6 ̻㑻ifMڴ'pU\mLm3>9 I=}0 i"peSe0F $GzaoorXK&.97#:pEUC~ Xy-%nB=Sf״w!dG,a3NѸnS[kƂKd_v(nj~hxs1fA_ D6?ѵ i˲\}7!YRQ$Z&퀗NoSj_ĥEX'[~9Ҵq\"mxjg^`{moLd-F6Vp4g[ov<밧R\4tYj %nHۚ_4dgyY`NY=qZ} -af$m}1oaY i%z}JA}ie $㲖XZWT|H|$WXŠjebo([OO䡱+XŝcO`$~Ixi S,nagVp |{wG#ҝ!G&<}~LzfYhv) V\9`Hۘ1Fm)s4XW0խ4_Q9BnA;7*=Ǣ3J eKԑS6=%U' FZ6˃M ^>ˤQTikGż{=B[Q<-EWU#2dS7V%U y@m,^++X, Cⶶ >䂤y \m-/L!5)~ %4,i6 ;b#۩a+. b*q>{g`%#N[a a:B&=*ig2@Ev$>#K{BDJ<@zy6y%{`[>"EV.> E4`}SMKIDpch;؏㎊RM|eJijLda1r1{ tGk|Fk?V)6S$i(|ӔɢKBKb߿|]a(]vcmHs]q ʴ&55䴙5Lq+{\7k,#4R}E z}q:SO=C&1]iPC#Wdտ͍OsIpyRHkb;>8Y!‡JmRBh_IvÞ؈ ˲}iAFDQ۸uo) b- 8$?, ^1m^2y‰KF 3{ a[5MA*i2zn?so(;;''(@h9%Ҵΰ@ ߟ-kU`݀yY5Qs]#!?!4L<ͅHiO21(Xټl {|3w ܌g5_%WpWSdu犪05lkAhu ^`Qocsq5"?ŗ@ *[=$"VW[ KgḾϙ  $c;aV.+TÅ^ d6l  zt=!-߃ 64E6,emc0XUaWܫSCZ|&<=ߪ,׵T|02:\Ȟqo3yvI"dU'LDa_0}DNV\7#⣵C(٢>J Ԉ˺scLR. Q w8i2=9ݸ(+I/ᵀ"0Zf$dj<ԕƖ=37]Dv4g\ip]m&d3˦C/,x4'eI -P#GGAjeh@VL|R[?dA椨iQM,nxFSNn!k[7M@+XQoE$äH#0$ 4cx@s8o&녔4pŦ6X"&nCZ9ےxE|?p${l~qh\X~,MXS!;i\!;2zgPA [G '=Z&xPa?v_>Ͱ0ۼT"H,.bPα@X-mƙ =`5(<N;HPwEjVwR@&{pFy|MdYyI0O-JF.%sc),ok|VdsհRzQ@!w{q5P9#$klE8)Knd̦8tꉄ4oL:(m'#2psB񟾋/VNC<4'n(ݙ*U5n,޸]H/>ؐt2  ck~jfg`[_ ^GBZluRRW=CIsT4jױ_9Kaqv;WJ$η-~1mpUE굏dTR6kIZmc{%5sl>~JotiHurƄO+Qey $yܯ%̅>Wc*%U>}|,x4-.k V;8TMjLƨ8$B0%qnfԒE d/0o1-DAaشHEP,{tl[Md,$riM 9k˺ IXDyjt'~ޘ(ύd^ZZEs@7D .9kyࠗPQH#(ه;u.GV,oTϬy=15mHyBj*28k^̭),-8SUj܎Zǔ:H#r |2F!tOqCK}*0%.ǟ>X.a-V*‘S=.ƥm{lw눛Rkknt,Q3%nm,rו])<37 d첋rqi>5,(DQ[ vG l7c$NNWƌI*j$hcxaާ2XR=?xtoqxᬲLbOv#oMg 3Z)rjB̌9^L:XRd]fai _lhd); :V/pxc.ۏU#jdAo}v|hXɒ8U@[ƒђUV7;?a Ӻj䢗MJp̞ ,c6ȶovՃ!)Y+GJr_#|9ث% M=逖`~Y4jZgBi!cl[c˜\^D]5ޖ|>IdMӴk,at{߷R!Š~*9Ac>=~THtfNK,lHky?ݦ>YB:bpH]˽{!'{O"Ѵ*  pR|8Rf0r`}?[6U`"DzHCyV-疊Fh,44M2mСQr %mXn a&h TUZgw=bNJgߍ@AG0!D#8 D;W4LeJԪD1(Q+T{ 0 buŵݖ1$ 8\P@F[_ލ֥zX1]h3!Р1S\m@@q@)Ԫ.?x<,#4 Z GYD8kH*E H &06id?*n,Pv22-<g8f7ٷ2䛦вRii5^5 h }73x=dE Z9E ̲Hgxuz)^CV1JQ`]ѢtBt{ޚ Mj /Vx홏“O}ʙ{C`@bo#H1PVdX J #&iAP$ ( B?zqc {N74TMJR 9-Ҁb7s] l}jʘ "gE3\K!{mۙ#F-(M6Q͇5J)"44 ʓoߒ4}\Nu{r?H9_C=vIX>1z?_$Ykd(l܃41mDB F"*6&߿( ru>k2AA>)v+>ܺpq_GG G(G HeQ1!HB 6"R m'88CƚKKu?K.CM57oנX@}!0PQy#L c%# @dD1C12E\0$L}"u/9JN!i90/pۍI C4GR˕}W/MM6.Cd@F'QUh0 9MNӮLpݡMG'q͔L\JK,̋3?%D(|$Ўy~Fpdly -:}\oVFtj,VRSb?snea9U3 N A Lzad~vMs)b)FU|CC-Lk)a׋05N G*|j41ҙXe\N}'XPk1V#$ӾM<(ݯWu4XYޭxRnh|u9:NuD<?eO۞`Yɑp9!"&m&Gm=K6~E2?[)AG{T@C֍^ Zkdڃ7JBx2rUB^qkrSTZa8)cwHc[xаtʄY[^o#ɟV{-f̹-Ϡ}O4>KJmZIF}8fڰ$0nB"C`VM ,UEҤ4._R_GO!nT7Cݜ+|*Z9.L@I?6j(-{pZ;2Pĸ{wAK RI DT5 Al"LrܐAtN,kEC`:2Xmd! v|ۢ|Oaw Zg3sqO˅?"b8]5(>ujw6j♧?QFtlmm:u#[2֡F]B`}\p: "&0&'k@59s[6\pNq(Vk5t6ޣw21袯}LJNJfyM>2Ϧ_2,Gw{Ț!Pk2x 0?VIĒ B #"AruW.e>TS>JqIg/Nǣno+8Y`lɁpqֱoշbzb!S9aLȖ>4H޷5UC4LD@DGVNaHʀyjQ >p(%'0G\B @0$0A1%6@Qv*s}4'YJKE@Md\,NgWn,e(/`W&L>[78+B Yՙ{WXj3uFopײ "#ǯٗx2G=LJm:s[^L>fAIyᵸ3SxOD]wwLV_ qJNlB#|qg+G NŔs>hY$uOc``rFx Yi* $mcrPbIʢ)IsrU|BL NoL]omi4%W[ǫ7RS2N4:f<6*&GDž23rJlcQK݈@eώb`]$Sc)A alR"# U jf+:-1<3}1:~OWҀT"ٞo*D[ƥ ˅VIeP۝{6me5EJv)@'icKkZ_`` Cp3xc&E25#B A`Md }A1x\0x @  ];h,|_,lLJTJc69$ ɭx|*u6gu**Re g>62S[֝KCvIAh\ KOIM[a`PӐ~@QG$VDZJW}߿k~eoM^n4I-esФ8b4<5B%dK(hdC Ec.%-ZdRNYDR4JYQki2IV4[gMQԈ#=ʍ`rPV`G ÈEP} d`6B]݅In^ p}:g7F+; ;, Ab"GﳧY3r d@2%Mɒ, IMuu"ku<ȍzxj{+4 ]|?3i6m _$ Ld$/ @8S `{$%8L =Y.P0FLE2b5zG^;IբH;7ROlW}usw_VI>_^3U_`?Vb@<#`RAbyH*0)Ԋ# #t}Re0aP .Ad%Q jPG.@N` 8;ɀ8aƑ*- (  52f3f nX"<r(r,)2Χ~Κ*4}"ןaH\KJ l*d&):Y5+lC \a?KV?&Ft@@]QC&jkCWNn E %k.G $KѦ(`SS Z$(Ʀ ͟07xl ݶcŶ`2 Bi^jHë獃/` xD(g JUI晘լݵKj|1<C-`4ԛ8B`"6=mJ"(A.6 Qh.dvaA[Gbv3Ȫn ̟wv?.B0Օ8hBiD4nZ#B'NvJ:qSD0{a&]9j, 6AHzԤ(ȫDe('h*`>urX0|MޯY3.C=cux8.8jusDi2G Ju#׍+LfdZ6r NK^!d;Q"?'ZId{VIu-ϴXLyqx"b#h-sB`@j??JZla(1DxsPin]2?E. dW`գ`wp!2}>,oC3FD^QlN0T^O#qozS H)/?Z趵VE4\8%1ӪHl]'̄P'06!Q؏qC$Hd9 ݜfo_ΰgA1TR@ahb2ǡDH4GĊ\px:CL̆˄Q=!K M֓;-V_ZnGZ tÞ)opBZh)$ʑBh)Tcg4?`@֛8jAp=J\užq²h4&IY9/0wRr@?'t"Af(^ h3X.&$D;1DtΛXJ&PyIz 5A}.vv֏NuE%um__}#6׶ÒԚ ):0rP X E A=PHI65,]""+㜙T'S"7"4TFR//EGj}k2K>d(+ڊJE'w}~nuYb Cc6_~Mx2pA#?D3%qn`K KGk./ir8η='@ *( ^K<e{ = / $Eg@uZ5 @ Z}w}[hx8T[\sr؞7T(k5e d7YP 7JAB*hb@^ht훇_Bʅ،<VZf4!)A(Ƃ$q\g"bS2I#}$Vi{M)MZݵL5tÿkڽH-k4 S&LEZRA8P;"`'nc,b_M@Տ!I1* |cNQƘX`YMBJzm#rXcj?4wI͋Sk D{}jSUobm_]5;GDc(\`Lӛx: =8;NmK(XfS\fCK xU>``8!r˅3wU :qظmk*zY_Q>A7tX\OKש.\epT٘ȌK*ٟV۱teG.1Y; `m1\ eh!~_OGNu:-~Ǻ`NSx*?#p=J 7Vm`K(F](_DIDjNyn9u,+0eU3!N ±>\6:F<ƳfVnG+|*!u0%det z~9'/X`$HZl~$m8EqʟIT2+Ij1-0yoU֐dBȨ΋X=qp]۟ore,0'`e`s78T0 C*4A"T {IŅCJ[-xϒYh i(ĥ;uh~@"f9|AV@ p(h0$R1ċB?@z}RF`Q%_3TΜdmv:u\EY(T+Xhh ݅_tDiTiFJxmbOdM!fY]w>7+hZy{B)lb߆ Ed^!a.w D xm!J,ՍC7Mƴ^A%'(‹zC"fwe'fF2'B1 :,TYQUčg`7e v.M[EmOm`LXApcJ51TlK*=(W7 X AxAu'__';X̦Gu*42:MfYcH]*,OK S{/PquJ%kww ΤVN:b,>3uk{ٚG3S B8ʡI bKl|dC\3Y9 8tႎ檅 wSݬS*h(a[V_WF'ebE=5CI̕0X [E-s;dmC j:hQ.> [Δ2ݿ2H#S*%S&>l"T '- 9gIBFX 8KwfhSƑ‘Q?܇_kcurC37iXe0\B[cy`LLV/*C=J/Zlk (DG=aE>FGJ}E/'a:]ڡQDBM/릙I{3Z 8cU("wqce9q{ #8޿C컫Ra &ek,B{ +PLYdP\ ;R0e`HqSxzvl3Dۀ^cXVH[^Vkse37-z/˰N`MV8*B1JM\lKe(E;{sw"D3f4uǁa@Mxf*7arBjӗ`[Y}##iH8 8˰W}:Q[XpӻTy̳_0\|4'jOQA5F(4&PY…i?~ <4g{OgNLX=ڕ@WTeB#Wt<@x+r8,MqA9=" 1vNdL~ &yT}vbr?OPcȿTFeՁi%_{4r쯢0%2H}8(q%#KG~`JV8*Azp=8Xl᫁=( B`RMP>E"jy1g:{:@xۏpFB2 VI j_^}LvӚY + J#+,8ߧ$u Ǎ5Δ,(-{ adWއp4 XBːXl 6Nu'i@v|CWS m5U .$,s([fC4 ˙q@a$00&ےWpd2L͟lxE[z*l)6_,v+ݦfj G<܉769ㇳl/b]SLAƜQ% L!?D>=gڴLjJK* 6!LǎUC"fIO`J՛X*:p=JKTmh(WHPYhtETelZD#D8V|Ҝ+5Ҏ$U$MR$AX J)K ?$ac*,UGYC"dE"Q1/Lwd >r Ds@h<ŵg>Q j]ϰTqNd"0 ՜W5Jo^B#ۘdy̾ /F1 ?",_+O+\q7"˾AVs I/NTİY2 ¯Hk.`¥#_RPw~?\5 pxjE @8BQwh &bχ^B0+wZ0v`MY*DCZpa8)9Xlk$a(a-'~^*ˀ6'ARWna0벥q!صtt=?}3¢u$C稷qwƿ9־wW)WjV?O]t]?K%wPi&_v V6EխWRzp$GG9wjk?gtwSR")yZ=Q) D=2& fa<4w@BM !g\ X$L]OTڄY@gEq N*>vYR'UwUIڥ=޵&*!I"dqœS!sT4?D8mQyV9ڒa?Os㴻`L2UzWZa\ Tl>KeM(]&al*L"|d0 / jN.q}JF2w-* j(\#v ۴4I#\#8%A y#&Az7ZMRuno)( l<(Qv@- @*)]*vajc&0hLZ;{ZQ+ԇ $Rf#1\?0hm'Ki$]ޔqQqK!KMJpYb\8Xc}Sgtx'\0gE豤頻R]$uIAn^-?,Fc\a\tm0Q03Cx0IpD9Z,*Di63ì]+u. g-ʳIZ6ƍ`.3US=J PTl>ki͇0.r>7:.9nk5H1|flz˹¬lL=x$_+2|LЬnݘ>үllIUe-l޽;28o~w`>uVsu :J2Q <0˜{/b (8E/Z2ozRJ?)GTI֢Ԫd*j;N.qR ʙG( xרNIb{<Ж- 3B-WٹݨBtAq?o[Έ>]ֺ 4r1@PվʝͲ<,Y'2>U!JiJFu3JٙR!gG`QW89=Jm=ZlKj(=RT=äbXfxuH-%$J"k8XI*a8/zUgA@a,@TYóKԝaW\rucȵ-? Df{[\:8ku~n:gŅ1Q,7B V,o Ys>I:SKt}_Q4!uLw@J?. YČG8b*,Crر0 UsfIY"+TjV#sw!c ԭ2jSQ0c`11wӑ4eSW_ͬȌ,̏u5yd=A8EO8 <~?MC dAi|ixP#m(d`O8*?ڴ=J=;ZM`K(CxR2ECh $٣űD [*3rȧٍ}D*J4{7_Q4J2Re e07 av"QfDS1~JE[nHdS5!rԏ.GD٨o =dmO,PGu2[QoLKZPVimʷ(n2uP$Q$9L3JЉjze>˖?>~rȶF#qJKg(R킕S/:nݚt `= ]۶u#q.9 Γmnm}8:[odˠ7&+"eWwے?U-(~E 86$"`]Nכ8*C=J?^lK*=(F*3b>ʚ_2(3MHou0Ek7ꃩG86tv7aG~QpLwؤ"Dn1 j^g:2Q`]+ZRX"C@H kio+ScYی0#5 Zլ}U= WXvg F86Ұ4 &ڌ2_2嘍$<QIcZ,pIs;tME奓c+M԰pb IU_,ħdc+)Kjd.8 pj1i┐/nFԂ1?۔Z%'?rpǿM `M֛XG=JCXm`Kj@(8`@b^c (K)Dd=ω0҂(Aa2^%^/s[4|c &46D(O{d6&K7($ʱ5 $qѨ!37{x!呄PI'YPA+/`"H'҄,jٹ_:H%d5t1o&-kg@aQK2`~ɐ B<'`Ck#жj:ӛJw2ާGWͬ9|+<ҍ.bC2 !Qdu죤JZ>0$s_t ߐB90d:nP)[_;t.ٱ_f*TpQ`ÀMZ*G#paJ?Tmd$iA=({Eg|ڗ]hz" -~ ]4 *ɞ`[SX5"y݇cͪZyC/Q|14j G9Lg>tV,&XhiVC*0Z9+&j届[E&cРZ>pxY`{RvJ,D~U`s 'tob cRA i!ԭ] )ӕm5??=dKPFћKV#+:19Y{YvD5LTgs@0dI_?Ƥ@Ʉ*[ xhp F 9 /Z=|L+4RnoF=v`R֛9*B`aJ MZm`KjQ+/)- D嘟w,Qޗ5_1~j-S!XRQa;Tm]Mro؆CH.atwD.8% ߬t5 b,(I y]Z= А sd?u/ND$z}0ީ{~t? f8(`;7(6~*>";: *=F֊ϽDqy)_8ݹ.su2z34芢s) 5խRt),ggZrOM3]4dF.(*m4؄[*a25(EܭRuљտ-I`?T`VV8rE=J[XlMA(˰7ܳx\tLX5%S6D:h4ȹ V_)z~qgOlf%;z`716E LM[~Efkh$M7Zja(JL0oEM қ=BP+5_a9pV̹6(9AFVWM2gV N\&ߘo:(o*c GrD|1tHeYۜ^]Z|( ,.M mrݦTTҜ7-v C.U$yݤBa)SpMS_٘}׻ïq7[ntʬZJw*H:;̮)h&sTD/EzNӪ ܌5##Kڂ'3MӮ V(JТ<,:,^cKzzW1%`TWJD*cJm3\m`K(Wx FÌ߆Q!A(d#5γ6 0\ѸeFJiԱ2K{UV ajpL=C] )ALtUA7#Vۢ "佣](6 ʋ n0mTF5~o?lww*U|*Zn-0AfRD`I G^&3EFtq8/#qQc\i4!kKR=0G9Ō!г* U|!Hh6Gn_Ҭ tD"C)`6dk$玧Cũ} F5\Yeb;V"&u33?d64_6)l"l;UϬja ѩ ~Ca2aVLҤRx~:;޼B)Qd`ÀSV8;aJ%Vmdi-(t3,FІ/d^\h\*ZԆ0Xu_jb351/Vo2Xs֥8uTGR9S(qhfo+P܊0;l?S8vc _6rIbu U몮_98ovȑ)HQ9 #C]aK}Wz ,l AɅ P'hq@yJ;tdF3 P0]SzUZ*H3MS_bIUb~aDK(b`; 6@זV<[=ġKSS~S|f@!8gt 2.\\ /?[Ж5(u-`I5u2Wa?%gF3x@RgA(@p uֽhޯ֒6>h3:O7e.ZK=Ƚ(ԗ=ӫ$!N #? syF`تƔ2 $2$``L0Ā'"LjW߲)#HZ+dV3'&b԰&X3; HZpzXhѺ(6C!Oj ]X>5;<4Waiƛp,42. j\O!)D& s?lN 'XGK(bI8setWJdAgXpI# 6.~P@5Ka3zr48dƞY1l tc2_oG`o!@ȸZаY `=V/Fz18Tl  g`vPH̷S+]BV0 B6*`)iQBЦZYԚraI9yb,B1m\]A8 ug]]i" b*?|( Nx ؘpTA7(`Rd$ZchuTثzM=囬ÃAp.ѿ JQyc}Ld~`NY>Z=8?PmKH(W_XR-ܫJ?ٰ̙hh::Y*fx%[Yex^e$^UY$*WiAW+z!r)Ņ^0a!rP#fiTA%E7VVvVw1P񔤲qa1u@ٷmח4a`p904uK KtkŷEJT=2 RR6h=N@Qc d2'D& D]AK5C $ĉNfhNԆh%8 @-@#3BLfMԑ}hL6AH9&"mZΔ1b2 !aVd5 qm1<슒P_d@M_h1>o Xe`NX*DڀcJdRmbK @(W[/YY/.9|c ȀG¡$1u$/28VN)b[ tzb1Wz ;%bwd%]ִ:5Y+V<M2؏K;^o7G 8F N\ދh1 v :wX|% ygHf@1X6 A(kNeNru9`V9,>P !ձ/E(MTTm@vb<=kiMJӲ[S @:h)>˫[t]j &㈤ϝLginOfs ^DzwcEڏ3יjAC=Ja`laK@a(Ǵ;S * pjԡq$}-ŀ#K[6Z\/ͩdaXֵaOsOy9YsOxeUt J}Pj(Q5KSkgB( JD0.zOEKzH B@s 0vCo\AfCI8_|pƹkd\5%+y09m/SIdd H,@EUl{ۣ/^.=JM Ž<,ce-oFb%Kʯr1n9LPԢkud)\P&8SǠ:}5cOu1R=M:R6>EN0Wr~XԊ9.MM ETN1}`PVC#1JMXlKI(lduSty1`DqSI'1 Yt1ZR -GXi8L;J}IrLRq?gOGϟXs>>HB@ `VS JZ;w}@(hjDsHM4 b 8` (C  eD"-I 53)&mI5)JJb wV~puT1MrE֕*Ӳp w7l!)Ƒj_ӼՎ?0b8>(`U9D`?Ji#Zu i±1~2 I#/&e* #ax0B0>t%@ Ȍa@oRMZI4:AkjLjˎ? >eBl@ ʅ h"!0|p R%( !1xHE&!$Bh1&fHoZ77uJZ[ ̗_K6݅I/S:Z_ÀXL:yK ^%U3sYST2>HmvvݝLAZMS2AL\cAee0@͐Y=R  (\|CjT"m9Up"ăr3u]iOq7>u>~MZTTʀJ9T6ԙyoNN(#CX/Ch2g 2i%~*븸DB+gbF2r &"H˅ n(l!oUnAd.LZY^pư`=VjEp=JcVlmr>ujdp`I o`jT,C~ƻAAWt%Q ӡ]0$\Yhv樯nB82Os)E"vvr!Ԡ'(Q#NH ʙa{,aB֍)7Ą(*%êw~wFXF~:X`Pֻ8D=J?XlK("wu3t@$Be5j*#ar a,%Vu3LN&\ H$OVu4j'C:8P rǨBQ/OWyYK2شVF),ezjG0jH=8 k@)Dh"JI ;ꦮJ D yU!ybŢDZjP6#Dh( dȐJc%MMHR;5"Kg$օOԑFKBD9%^u]ڡP2]VVg8Ha/׺+eV@|9pf/U3'0wHJS2]7e v.ܭӜ^W`PՓ:*Eڐ=J 5Xm`K'*a(>cP ,$U%oW1"A:P#톔)O(PnǀYIcƿ F)ftG5n~@R~r.1,́]ӻCUPz(@gtg?ܓna2x}$$@ī2Ї8ww~D5kg]T ~,sPhZIHn ڴM.S)4z򟵳DMU0ۄ({Z's΂oPl`8n"`O՛YJ$*?J ;Tl@a([KӖf堹NBr@͂V@6<GƫgAaHT6(f@@)oX.* ʼnEÈGTMڤE(1Jv69EvTc._y%THg~ZP4fL;`əa=Gt9mԯdLadGbD! N#(a.4_7/F0|wTIܧzUrUg7sNdB+XC]B@HY6#2JJ|B޲B]5jܥ;sjj tjsL ;}!HAZhXɱ0|w\ Ke㑞+%xCh*.Tr%픵qwq(ְzGY/ _Oc\AȇDE|1Y%Fl27&0Tێ2"sFm -oOc9^R!eyC4U*`RTX*@=JNITm<A)˽M ]Ot͗ 1alf(/ʙ!_@!ʢK[wٵuw~RZ]Ϩ`S1]0 +52^Ys%n `^YJQs~w\L zB 8yr쬰+!d3 뛩/\C/N"}t&7FܽC ۩9 { 0JO]9u4*;x*ECQ.Eі fed d-Jb}vҥԃ|s3C~H ]A&H};QGU1W0T-* @ p-yEhXLP|(Fh<}J(D`R՛X?cڠ1JOeGVmmYt w-EZR"`>1 6rҳm gץPJOcWnͼ$H.tÅ0:b1lw}5rYh!IBy}*$8LpoSETof.5)GD#YwI1#9=W\R2Ev2 BY6 o=I$^o8"dΎ@dp=O`PZGSn4u^e-΍h* Du]pcD"rѱ"anJDuczB/+J҂f{'Lh1N꒹xC]WL=w?[܍2TִXNtG=/ D,?9CYPy)TIt,G3ִRz`LԛX*F=JY?Rma  (?5H޵o')$VcIjgnⷵ#w_'ᰅ$1(12SINZ$;$4AK'E/$QG]K~!Dڎ29]TSyzBRY atOX@j 5gr~jwF򕵨rk V㋚ Iy{h梶QpRR:lH0f&.Qtq>E0.sQBSs3g=!ړoZ⚼T\0i0?wQt#uuT@p\7c<Ҏ *9HM<oMkrPWmzXnG`MԛX*D=J5Rm=  *Lyad IP7z\6L2@2bi%\OAPJ""  :I:=tܑF^Vx (V"8C)UQ"=ݗRT^fWg!TzQÄvU!]7zƘ v-/ōmUaKKZ8'JGYu* /RcA`:NPIXIm'=``K҉Kp MӒ/?V*3b~ae ieSn.i08f 2tH&dCR)RWKe]sPp׽N?tq_z_!' U vMVOB-Cɚ4"07.G{"1\sBI`OU/*CڔaJXl A(%$.աJ(l+Tv^> e`aY1|$3ٜYjvD`Vml&B@yRG^t{;~ݝֱdwe_[2HHSe3YR+X_afۭ)sH?)̪u)*1XܘfmƤ~zo%!j!$o$v2b<@Akd =5UdkH,:aa IEK]hR^h p%Lui>ngo]wS$dL"7H4~5fXL( G$Mmb}O<'pEUn 3mj0g)$`EsSłu!\H@`7M{[aC1vn$Lb h0"N\AcȽvv͐4fdA]nDR'?&JG9RUM ( XR5O/HH>UI AS-`=8?#=JVmfK ja(no?nWɝd1|뒪'C!r RQ3̥g72 ƓNQN)2Nc)&0avT }SMڿcdvϞz֮(&:t`6Za?آ(á^fO8?]4E"zў^ßg|k;w@ U0tBc#<0tYLp.*P/(t$i0 Nƃ/7}כoe$1^#RU)kjoMt=u2.o(eSɱURh{?FϽCp S qՒ2lP_C0u? нV'"Ez~]}avF` D՛9<#=JVl髁j(Kܬ WH r-niAUb!RgEuCϤ `؀q<#AGO#WItJM ҩR:dENKZ&Db\UYD.AA8.tx\4 -Vn1$L&v̳`}F/uBLuXghQPӃ*p`ȗ Ȉ,5ەAL9k%lۏƝU;n78r:K: HA6$q,ZT֪h=Zd%Koe-@88]"0$&`z.ZY+݈WV*OkBPp•R`>֛8=ڤ=JXl᫁ =(e}CQYXj(gqŏ-( #aDx[z؀aljJ^. bqV$A߸DWT5AG!w[e9&YʤR_E1"&3.|9~.ͩ=0%*}lfQ_Z%<\pLAs6=~`\VzGUr/<&("J _K| /*rzI%Q8u{|4l ]D-Ԟ>o6b?[yv%o*s{6N{xj."6uHTS\AD!'u|R+- 2`UBp?JPVlki,=(i,^(.9!:5TYHqv.xE${X%⌗o4g,{5^ yP!=w[?Q7zop4@ Q@tc֍aèTś &D yNg~7%ZZK8"DVjJjNӲ`.ټ (T! #7w.*^MbOZ/SQȬ$dPE5M![&̪VAS7f\!j  QG_8.W \% R=-DJ4nQu=.әksaאF55Oސ_rP `2՛8zF?JdZla"a(xqW˟/7 n!lXP0P8@{+q̈K&T5JؑȸEWn)M7O=85.7_.ű `0Ҭ6Tр(?%sxbhhT:SaVgkNq)Z Rv ktcu,7fmF[ҙF\꭬н2Kۡܦ]ha'A+%!@+pa`Md F9*dL% _X~rt' 437}J|KϽ?d~̃on:IWU ­[]2JQak Wom|CBBpZd1`<zG?JPmc Ij@(HK )ધW՛ڳa} ɜVegGYg'B[ZᕯV.+*@@.jɵ7*ή_{K A"f&@ȐAT@Ak ?4xwHH%s-f].t "MJB5>!,gfmq`@BQSWqX: #@IE7Y&o[HT PldE+7C[0uE2/\>:Q{@((+8Pt03-F[uajJ5"daq U8.: #T,Z`8XZDڔ? JXVlkj=(tOk7`)12Q^-ByN4 >8 (5߫\!@G; 󪾊h3j6FbPD %H-9[-D&S$PuM!?/r:ȧqwæ@lΗ~X8dd(aLCGQAc0RC]ǻJ|:[R6QE^Nm@f{" #CxMu|Cx/g TN"/2bxbKh'fs(h"8<`j.>_5xI;3*sPfFIW}>W? f@oDX$H(\78"@$֍/s slk P`5՛/RBcZp?8Tma (d鰧Rݐ80D{&@ n _2DIz+T iv꿰+ɊSP I28ȽYLņhfޮO̧!e\Gu ꠙI {+[+ ۜh ^$X54HI׳!ޕ -\6$ WK+P;JF|@e^(xS%Ѧ9D≽s N?b^Vf|2EihW;rBDŽCNVɧ\1c6SDŝ؏.Dh R BzZa@ o_Ҍ\nxRO~$Hr"F!Cm{ej z(;%=W\*`PX7=JOXk -($f,@e-D@)-5a@X#@ŏWh4b %H%}oV8l XU?|K"__\. PU)Eb:^DE H0ڍCb(Y]䫴tH>c?!OpF@*"Pѩqx#$ϋ9z@$JB( 4H5215"VSĤI2  4Ap X)k(u4bȹE|@5H01E etS'tOΡ]Isw_d['M& DZuUZ|BR#j(L1(9%l/i`$N8AZp=8TlIA=(>$+nFA KڼL `#llu "q":A5PDP^pMEq%4cL rڹ}'VE(8ݯVCt1w/w+SPEڴAHTx hd e5J`U]gੁm:M\PDɭ^JЃ-k|fl"!=+kC:Kj`TU8Dp=JU Xle =(J@#'n+Y@Ԩ;NICB(#iCqM#ռlS% 3'~:ԓlz˫ly2I@Oj7';̈>:Gҕ1xrBKF2/L0pȎQRElDp~KSNt9Z>+C*r0!;\3D#1Nа,rJU!0plEjI(Jtf'"dS]xYq2uonCK.!ʘRCE cTx,C8hp&@V(窮[Lu#.7\_@B `N՛Bcz=8O}ZlakPWOLɣԔj@z8MX(|J"*!6X(EFw1BS\g_Pr}}rV'f-n:bIG#FMhd:%ffo,0YmxQphD-X- ']M71CcYD%D[թ<*+D >2?O(n:bFye`-A q1P)ɀ th$숥B+bHiǻ6P|.@fCٖR޽gfvg3AR)3=Z /#I%))'DP;-8PO3#cԊ7zKEtK՜ >5Pաy\4`NUEp=J VleՖɐr) ],#huSP**"p<ɒdGf8# #RPw81LO4h(c"Tk04Iwη4uYZ*vugg%"/1>4"( z;zJML=Th A"mגb 8њXP B6T3\ gݚh ɿji2ƀ8ь+Z?NP6i4˦j;A'(.]u.I(5=ݪLbʳ05bsx8gGBehj<t轃B,b: >:`~(AT:n`BjBz`a8dRl髁 @(Pb &-ڎ,eBP|,5eKԹUxfKYAU0k_K=j赿ӌ_ d %Di#d-.7Exy(C.P3Qچ.xFv0=FWdY#-K Պqc8][[X;oGJ'A6TU4W=q&T;-k1$ Z:lӬe M DQ8 f|ktyI2RO[D}s2D[n~LB^oEwۮMU 0t$<2m=ZPU\!M5!ew(葥Ȃ3D'(+է9Y`50UjbYdJcJ VF1kh(c^-'vٟBÄ:1`úZ,4P?V#ָlq2S9IGZNL=i*кA]lM&g[1hy|g jzd |%/))3!Al HtNߨhQg N=% >XafQ8pu  z^/ԤUüǔw^ڀ ]iuSw50۔e"ljrV;bX iĀ-qaouWws{YᆴkKȧ`&l#**#bc9,Y m ')v)cdiY f< @UOEoKmPڜl=8e-`58jXZcJ 1Vt׷-)U$ 'FBzbQ`2ǩ,b? ap(x\ҠXF&AJ*CSO1DFvHjjCrvspTnybtUr&3*c|of44gmMm&Jp񙪩왐 % S- RCWRIEOMI=-"EI^4#`jX4u pD=Z|CBSK"i[24nJzH"^m*k4QV 1YRaT&L5͖F Bێn.HY)~l,}ԈFWK}INq?r,,GQ+p6R9&\Kc*аF&P]}U}35Tb)eveVCvU,S>G<68 ".%tjdGNcH̭3-sę:U :!-h8(R :Zk)ۺ,tip=Vhqi\ؚaҮԗR Hg 5'`U^Mcį7qWᯫsHuyu9w qpՏ7\?IYgS];aֹsZM+߽Q*`NU8=J`=JVlkj(`B1roI|zڪ:_x.දe·Ɯ9tܓC{qX=bY$0* tβ8{$75Uj\L],a0:L1AY~5`]ǙFK $a= '5;p;g"LԿ;_KaZ=s4 _↓X .΀flx *==O86shvh2p6 fTĆ}*婹z '-ma,f5 gNKr4e UqK\duWvH*! MF)9yS ^~ne ,tjmͼ'oa)s Clh`?T8jCdZp=J!)PlK=(z`6>BJڬz si]BdZ}U}Lj5Е*[ho8I#q+zy\= *bq>,2VUVۢ,СQ)i_qS)jY@u<>M[8#*2&h3T snl<(b%&;KM?rݭUyVP=щCcxf@S5 c5j[UITL0Oԃlv0 QƖ"j8wCLKv{%z} ܒ/׿62^fn'\oOֿ*Ve$1@j_C3M&"=3iIή CtsYgg5=[e֛1Es3ƃGՔd&8._^2eJy mL[#r%*ջ`rMw7l@?tHyÍ3X革!ԚB Jqd"_ $$5 y?ek$ٍ?|͜yq$@̧=en;2b@L*/D8HpJRXwk¾vpBT]aƃ@=fQ|'Kc`M՛*H$Z`cJ1Xlki)x&,q obQj,(ΛC/liY&dĶEh}Vv/gT 1g.0PU9c0@$"SթMwUbW))u}JQ"s1[9qP&H@>euh <Rtݺ}ݸMV:Ӎeŵq\7mQ%QԪvՑ${; ?Ѩ pID.v%2L$`a*M8Fr8KYL0Lx\[S0{%:i!ƈ:J=5]DL*- ;qkK i FcG4QR%(,F!_`6a$S`J8E$Z?J-Vl%jA=(DEG ;^|(F#5M4L9xLiCP)*9PI%8q-R6I }#5}Q1R;޾oevLH̽hOX#>h4XJ+EZ߽:qkI[ ;"^( 1fqįPyc.Q܌;tȇ 7Qcd!DjEF(=F+Elӳ˯]T-A1RNZt]\Ԣb,c)OaO֜hpTLCd`AD,I:vpZa]rG\u5 L7^\`</ZIZ?J Xl=*@(fdPX`YRR@Ktr[e.2>Bѩv^Ύj*0\HNj9qkzEcEdк!*d'uIJ((Q @:ħxXJpP }VL>d4őMs G\lB&qA-&H}>EcGk`R62Goc;Q C֬AޜbD[\RPNNBb] 8~uSi'ԋRIݍZꢼ>.:GWnEjFB!(T6K%]A 2P7P'zE0)@hfӵnC@l4ӏ7ם(e"5X_Vw`Y?V:OZ`cJ Vg=)*豈N7R :B" hI =.f!%+Su&`ZaROR`Q*0`)IT+_4AVUhTL<$q1!EWF:+(GPR85@A$ _8cHϳvJX\Nˎ rIF<QʌZtUl˗3 WF t`Bȓ C P8}CEHXY VÅ(7wʶFv'72ޣ͉rqY䊏y~%fR.ԭx -t~@D1^ hd&Xg*a(^ l=x:FGp,RТsvO~`l5ԛjQJ=JJl嫁@ 07],v:Js(b)f~Lef 'R)|C@#8 :oo6IYԕCkM MOV( C,{szٜGi]ZUWꦚnXhx>&S%7&MXN~%x'ґ "$FE&WD]=Q!59jmg+;5eRw4i9d,@QUR5_*qaH4[!<EԙXT4 2)iwYN^!.JY#uEn3>̺8<Sx&.qa B$X(4$[HAWյo؊FK5Wec W D~+=UMWAxXa#9<;Oo]`5ӛjEJ=JLlA!jL0Xf^ڋR,QL%t35`gn+# XD)B 16,ˤ\' 48L8Y"S4BpՕE#/DPfSrE5I-'6ӓ(~rG{:^0͊%WVRmim?l Ko D%d :q*N)eRˀPr &c^p$|Jm;d2xZ !.T"^@|3-.9謚6V'FLYlfq0HUӺ,iT]4Mm_ ]1\(Xp]D4eD&`]2&`T!u A`:ӝb`G#*2A^xր*!x/CC< 陗B&_2& b)-#솲eս1cB(AJd˞mCo8ɷeڣ9ӆ!pt8LHضVeOk3PMp= ˙Νns;ȅ{DέOJ ve1V-5-.-ϭ-:ͷa|( f ZH*mc~ZT FjDa^lzRURD(I}Bvs%Ȳ4[jXY Ni`WNٟ%`HZ I/fF0k>a(亏zuWjl]{:W*_J/MZ0 [j/<I䛦nBh-"x_JAT f6%C"(@o}gMl:=ͷL\2vYi{*a$*`&w*@``UpUuRf TiRrBnI)"OB}ex4-FƱ ]Y9Zzݘ.R@VhkFpI]r:7f^LƂ}IX6*nk3Jzihvr?/cYTQ MCw\tR5$V&X`?כZBJ1Ju;ZlK*( 1pTL[M"AU鞰8}4IHO$Z`j.ǨT5<Ԫa`#{1HFӅ aC7(qÁc/J?>*}@h >< $HJ2eCɎsZVP5ozDsek-_r†jv'q!{t%ﳃ@;N[z sSiukv{A#)ū #]Wa8;Ֆ>k/%Ց\ N_$VvgT*0-#]?[m}ψ?d"_ΰ /e/ϫRY"JFDd+1GZ]>FEMDgY|Z=HTٔ\)Q$u`yݙ2!bUY:.?X]dGQ6C>f yp!m'N0 HbD 0P᷍_ t`RV9FJ=JEEVm`KjD(@@GEU= ~JT=h PίgV8Ehێr%.Rcل7I>.̔%g]ɚoDơqL(d0# )>_<% ajfxj+lԁUp234l%5M-NWQ7S@,/l~pS_t qWQɩO!4WVL:SHIn[pfU22l,Nv wy<:cJ;1N+G"F))gF4)+oӲXO=KoC\w,Go\L3h,~c#'q@ed;{N`QUXFj`=J?RMd *(W_gMMU1$`ni<F-ԆS _`ktN ~̦Օۯ*1 +ڇ(,'>XQ" ̪g"/ЭTGGjAd\U$0MAsb4AOki4;lsGdcg y2_O Tsֳ*/6d@\TiaUH K\qXWbaDq`/M{Z[ B3Ѯd `E0SSTUB!R_-|׋l$)]zW"lO T}mJ\B!S%fS7E`PUZ*E=JUCTm`K*(L[{=%u4fR; 2 l5"&, )8}ݔ~2rik.S` =4l:pDg_lG-^>FVSޭkIzP("O.A7-8rSSҝ &Hz+;pDJ f֤W'Vzj$6`AD^Z)Ӱ UR1`U+±CI`NԓY*=#=JUATm`j=(>sE&D䛘 \GRؽX%tK=.ٔ͆X j "QNIuF%l !)mJNd0b@]ک`$"!\lVf( z8b`pf<eMvc/,CI1nuXiGK`L%<\d[U|؄,.CJ*%nA/hPWu3О1C4n'#K3:5A]n&IjLcec†J\5b=ZbXM i?!V2]^SFn'zD>0 `PTXDJ1JDVma*(}` k 6t ,%(@XcAq~@u2Ɔ*1PYl^ʟL9Uv٢-Pqm3oᛃ3zO8)^>fد{jpkCgX/RfRAI$n4z|g(I.}a_XU lO򺽠vDl\_uOMwq/*p)  1V䲐[VFVH0UJNj/PdሾZgJ"CmlP(5ϦV%@ ]M= k⃃0^_r}}ʅZ.5h1fLѧހ'= 6f9Q1`SԛXF=J%ARmK *A=(zI;Ǟ/l[SAM "b,(b w &p,iE\j>cX5;:eupX䦽ܫw*jUf;'zWCR`aIr^ͦ+GWG"1.Ni'ՎOw (OvLk2򊥌;*&;i~iQƩY$ )iFNZ yF 00!A3e=M-%t=8ODz_NRaw=2zQDF,ݭf?vI O.oh` *F &%$$,NL,X:(HC̲{pg`O՛8*?$JpaJ;Vlk)(}4@-̨k[Lp!9W)FFJn,UBD\\)frx=wonVRе) GuET@ 0zlJ|$9/Jz,qA䑕,y4M٪slpNhi8 :vF"k(D&v[ϋ1wsGvL%q=oƏ.!tMH%a"bΙyXJ9{[-HŦN)[t?Qma9o~9E94ЌfyYv0DI߱_i+^Ww# <)@ h)Gbj!\D E*g+i׺`&UY*;dJpaJ_VlMj(VKڳ=  UЧ8K@4L:b@\gX p4qHtߋE\i^@"m!Źj͏>.ԤYJgEju1M$޺kEg /o_WwY%cwN!3V<#t |H!Q@u@!%6թ+jMbx8ڴ ;f\3q"O NY7TNF&VMُ"z =ZAuMdGT Ƅ_Kᬿo7|{!Y_S/̩\Z5W3Ug^VDe~%F5p>˱T(WRQj 80O*'`?YjG$ZpaJqTlk%j(ݵs&@']8+ 11̍UjR6qGEMe*nvRvpe/|zZ(yf =3sAtC rMTfֺ;UԕI&U 5KXAe% Pԓ zl WrEimvNfEcM pݍ&ibA<5Tfu~R~DQ~'Q :~_seVX3$_J嫵:.{p|sL,_@)`)n'[4A#r+e$qYz5^-[SO_t#IK$\ %VGKɷ@NťeQ+a'*r{n|Xթq#@|Ly`@9RC=JO0Vl+*@(]@>!,B$yRS0 EL2,܂X!0.SP "W*BOҾ v"žSFYX6HQަ@#sh$삙tY Ե-H)QM7G3[3a.F(f?N 9hC8]QjN?\fD k3I%!x}uޙlP@N67M!V Hc_BDҗ:'zqnе_6JQ7&BF =6bZ Rz<^5N(I]6$RߩkTԋ'HH0 ֏lumмV#frk K*"/ J~S,3LxhK"r`?TZjBʠ=JRmaj@(׼]{[Tw%5BG,d f|5&ko;u]3ʥ|kf ԊWZ@cMR U<'lޣ>z$F }OZԥ-kHZugg47} 8rty|nitHڔPO_U<h2C@z3|(yD ܅Q`I; Ubegel۝d_S vhdsI cޱ[ǿdmU`%H9FDHhj[W$h`|.Op TNQ*QPS:d]?Z&Bԧ`S8[C|˙̬lzE-e΢B@9fE?}  -B q>bWϖR̸"~}.X`RTXEdj`aJ5Rlkj(@>:8I1&Vز(MXUȬc$ -HQΰa#֓&($,RAaӘۖ&FԹ~y‡`p-קsPqt ECMe32QH=/] QrFZG#%*SHBfDML X OHa\!$Ѡ , :q*#`JUCڀaJTmaj(9RKv'{bӀ6(8808pEQuYjnSIm?X*5uޞIH"#skgGs6bҜr}^zDDec*<꣓Zjz57gz*H7: F`8HUBVN(L#b9$bޞxmA*Ğ+kȟ; 7CyH$8qykϟSBK2Pϙ!5%xeH52}*P4N䱨4z@ ,ۅʜGe nzd!bn#8Gsk3T`I)yޒ 1T2>ݵ/ G$%jU,{C*A:BQI<:7P-`i`MXEJ=J5Tlk*(m7߂_&g*@}DZ3: KJSJnhb 1U1F_TZv,1*ü^$* LLe)U)&dQUt[Ik^do:=EqV\[/:J\Zu3ҿ(`U֍o9++wnc;\s?/8Fb:憅N^1c/c/!BѮiĦ჉OȩFթ`V gcd%͓bI@TAvjL(H47'խ,Nw `dZ=J5Vlk*A({}Ġ&*DXk̉ B#0D4F Hpc4>w%8z i48S)ϐ^NIO-參<ׁ@`g(mG-ϳڛgvܫyeS4 356f=f/ϊJ: ]Cx#H+`SV2=dZ=J Tl髉 i(w#5I!V$Sr+F([o[ɯ<ܨ]_aȳ@DZ{[ LBifǪW[d?Gm_ږ3vebT}˓AfѿT2 \׿F9@@Ezks20$(i_hD@䄢D6΢P57!0isDԿhYhkf7s$?T0R)ǕP0d$@IQIG:Mѻ m5'cW={}hj_s)Ewɪ3Zt9lVt%q|ZXg]Ծc ͗Eņ^RO| /`Q՛95J=JIVlK*( a$oidiLby|D+< ONs}[!1B$e찴 ;W:Q$-2YB-LL?9&6CgN6X6%<YH![8l>!ptBFP|wQͼuy/i+r`TUYFJ`cJTl嫁j(4$(#I7e"g+l" A:q}@}FaS^TËT.m^$D9nNJ5TAfmޕ5.욒w`sܻz^ *-S24yOS`M{ߧ|3#SZ;riE/`IW/_61PŷFj*N x.!LےYW,2qܙssiRwPDJʽs {ȈFգ֤D@eCDza& $矖TFU;ov^܆idxq?r ~`WR%X$X]g]m`I՛8*FZcJ5TlK @(I7jx8%%%M0ZE-9%ˁSMfmK)od7qblt*Aܰg CgĒ1c)hc;TA! "j1ҍfjuZ΅#jy89[tX^d#Esd-:F2] *Hi\c8$Ywª :!hX4M_#H#&b`< Rx 1 1 JRnԷ:nפԃ4R(%s)QRhQ&6ac*Iev/ZR/A~#P&@eơ5~l,b'rJ*Ʌ[Uqs`LU8F=JA XuꂞZԤ+f*7P6mK(F H9)rsI-.X, ce818Nˑdx&g IX]ɻѨwnuJSo5/Tm5 FY4X@4:rCˆKFL$ "FɆ тirYRGMwYQY T&Ck1b9ۯ>JSU3Q)_.*7Vhi0rrETo%gUPƐujǹ֪m~+b˶5mbF+kY[H*d"8V'@fb܀f{m#ww)R @Y5@ Ǩ \|vkϞHd@J}b魫b!λRӮθc/|bA"8Blb.0K4k˶م`|^*%վG/4vG&kXEpt lSe?cjkgA")MaflGl{nIqCqq 2xb7Ee&cD[[Lʥ:HN{aưpMᖍwF>0`@[d#D\څ5%fc]O^v-dK9ÅSCY:nE]Uy+I^mfp|f餙>^dF|4qY~|pFMK^> WI d`*MdrAyz(Hbi|&Pv$P-&xFށfATK ˹[xlݥޛR"5SciP_"^1.WȆ*狞)f"+z=%(d$j#sK-зuWU@Ft`Cʻ|)ed ڥL lLCٽ01pU jk3dKR|1y 26zf`Wٙ(rOZPcJ yiMU)e( yG%ϲ坫@6w8l00.X*6*n緆^4j~?NZL˧hq" ,E3%^z/ y|?Cq u\w(+#T{!# mb49ׁ#K$U'Ҋ@ M ZZ(,/c;?IKűKJaX usyŔip5o{fҙtiUWS'9%v4-?9Aяt$;)$c]U!E _4An V}l^ۚiڸuD+5Cۂ[4] S9wO||2:__Qm&UM 5%oN}W:Α2 o=+^lYNJ)dYipV%hVj5[eNgQ-,az> @m]I8оE%D@_E,H[eK̦^77~؊t<]mG+ևEX)Xk|)mXi83 7i X\Jg…3XKT@(v zYz)ѯҖpcBQ5g%3( -@zGj!7b`FWXrOJcJ u+gEkuiAa(|.=f@)mXOBExjd%_!F۳H\]$IaY]6 \%GZVG#VfyWFw_i`3KŎ\څvX.u|!X\rq;aZJ3RNޜ* !O0`HLEHBQ-]2iTSz %4 /̲h Q]چɵ>ȭu:.)FHUe2F}F憂C+@+~@(肂=B[ HPxk"8K{3^&u)1(;΋`?V8:FZ=JZl嫁*$ (@E0~cc-M+%q+BASDru8Szt~<㻱D_|B "ʯtȋKi*)g !4,}|bFW!pCY8@T>z_1 ߑ쾸Ä[ :PrŒ/r~%{}? 3q|D " [DwÎ8vyNgo܍fuӥ6W<  2I}hUH餂.7Eh-өt3P $lQؗQa'Vb+8]:l%CE$I<8.]N +j`?֛RD$J1JVl嫁 Ǽ5TL`8qS*iL  Ɓ>4&jzZ4hNFQ35)Z !!EF(,d̊NuheYA##Ȥd%)I;$`˾u[Ys=O&QX2v:KWK=2LF>AC8 NyehEnu4;lSh cm7z`)ϕAS ^SӥaHa|Z<.wHRHx4 .j̋Zn==e5!VxIhq'X/`!o iwd]!R t{|>z,ҫD+9BTq?4߀-`@:jGJ=J=m&aC-*P_UJR@J4dJ8lI[ֲ&q2)/,sNP@4IJ}Tr\h{*)`n}Y%+TRI5S ,F]@̫٭޿lF@="صM+]=jd-F!SCB™sI_ k\ EVt_O窵ld&S*5F'6.4p:= asd d8;GL:m'=rh^T4;܌;ӕ`<XjH=J ATl*ǽ*-"ۣ@'Td OrAER5"op-sx5j-; ;KHZn4Uբm{YiHy˽"Ҷ_@D/k&chVV>\aTz2m5kӃ#4>K?H.6ܫaL,ǡq9D({>?c#zo9Ŋ)O^)mNaJ!KUR'=~SrE/E %.f}[1E%Ŵ(` X*>^个.rE+_0 'M*Q"(rNRd?kG@3֓jb=\ Zla~k !0.πF_ŔY/3^&ڈa!ܕb$x(,8dXbNr DuiÓdo4t^T$n=x W[;i&ԺiٵBk dbתh@DbT@bo_ x'P Lhlpy![ID_`<՛/zFJ?JRmak+*wtVX`5$ 0U @ fvʪ=ԦqntSq ډޔ6|Y>yQ53ZKteAE-k{y@WGdSJqҎEPd!"f K.A֯uKM`g+ch# Yu]yxxm區V!H^@1N#rʟZmZ|Z J`cDŽSi1w4+\6*=AK.`N)%tɦE EiqęidJF_~ vg+FT`HӛYEZ`aJDRlKi(' o, ;ڹ*a#$ a$%A8D<$$hbS80Edlboʻ_t8ٵ 3~^(|%v$ B(GWJiA#gݽLhyʨ7; N*FP֯&f)Pʭ;8\ŀFF &hp nRc i}^pK]50ZI7 ]l5JtQ I"y`rb!/ &(uAG[ L;E<3 m^U>Ȳ%`.gX`=YR@DZp=JDTl᫁*Q*;qθ9"I@k҃|%vT{SCq ,N@!2cs?mQ~:4%$)PZ&)Ma!`xt>ÛY1$L6#-ݠ&A${ʙWhz_LA G܌-22ZHZ.I!vӨ -U  n,tYtQ\΃bD7 (8S>HNYx52Z?FfS"Ӫ.%M@;۫X@ SR5M< gra1 35 \Y&̈8O턹"[z8i`;ԛ8jJJp?JPMe i=(ws{J )K![=s`v䴙nځـ!fKVfUY#.ݕw>UrR=|rEm1R8)T!Ҽ_ ) Qx%U[- $uͨtev(ym%"Ė fXJ+2d 0N*ۛS  (ۀ4XݹsV0ġ){;}XILB~Sv2‎.c+򏄑)G"6vX+:><ǻET3Q`TU8DZp=JRlk)(qCak_mO7%N6T aeF 1Tc (D~.龤AXg jS%цa_'AdT1dؑQs宕V' ( gF n 5zMڋHKKhK/8Aa$S__Jqp9M5÷PހԤ p FԠBFޅ.{]NfAruBGQ1vͭ٩O (v\.FFF [U7UoѲ&.z*{ t4chU.rTD_ G J SJzK<܇p.> `1T8j`BJ=JRma ͞nN"UdhN@T_]- Gg05gvFlz_+BNγs!+<4Eep/'oTץ[U5E}D٥E~܈ 3Y>GA*;3e5U%a#FsGE\nf_R> v}7{ cP aXKz |qy^ш̠0Q"MKp2Y)$jL5@&'l02AgZpHYF[f3r+ H]q)"t0渕dBF+hӃ*@1Y~, J ip&Xl2喝Fwcnjjty0y,vSBgfw'ܩIQPlL5/1ћϫ!Ǒk%~O0X smu[ zS9UAwx#C^oQ"U;W3ɕ&UCY ƅ޹=>~S+`2SOjB=JPmaK+ (\'܍N!.LYҍtnh0CǙLLB$%9I"g.)lAZE#$eԾgZ2)oLeXHcz*‘CkKE2H{#٨R}f(j=nDm4K]!l)U{ A,PԕFYHˌܔu:tdk\OVXZ5YƸTHV(i8p`D10E=BusIN?a#G4i+b\;K @&N*]2Hޗb+_t-s|Hl.`?SXjDz-8JmKH*;rcP]7i5 AtǠNKAri+0ӌ 3yK;sX3lb17ޒ.|=<Զ,xAP^y{Gt0S)I;IoYNIȃXSO#9'e,>hlȭ+PD B+B+KZr8Y`.-Z NA35&T‰%`G򚝦p/mXSDiYoa ɑ zFÍ@YO?P +,`%@K}Wd[fz79Ac2,:Οwv-ҼFlY()9!`Xԛ/CrFZPaJVlᫀ))_YlU&mHL?oJYHBG?+W2J|:jO<zp­?92_&+L7, (r2Cg_ օga1٬A#tȦb[Ņ(xcO%`KR( 6RGA` >c⁉]"| H9^ɉ~{p$[D(ɻC+W7, =lڍXE[҆Su52k8SĿHBa疖_JŞKi:Y+V3rg*U -[ݨo<<0{ulNv.0U}>h2&LD!b#J#>VpO`a-`I֛*:Cp=J'Xl`K(VVkKL 2aVP[1f[X(,d;Wb|}oI,10t(ax+Mh}L]7}jMtys@“DS.MKm'J[>-[JHD_㘪GC3Zb͖r؜+29 W~9z9a"QfQlmMh NGr ]ȕEd-[fQO)iǘkՕsȧ~W+֮Q(ǭ9?wЍ5um()jt/xcl*#cdEYsUR$EWT`X4pq"hc̈́7#iGit-pړ=EBWWw72˪ZW`W8+pEp=J-Tl`*)%Nw/]ۅo@j{Jm%̿H̯NP.@\Sv թWc;A&K{ڦbZ_ƌ Y#4H sY\UR!yk{VARYp,&iX+GK-L?4}s %P Hhm*)QxnxP4[/YQG$BI9Q!}VS&;9`%qA/\#@& ֺLeִ64H{8ԥE6H2wip7|m8os!* "X!L됾!f9yV*m3ˏl1ѓČ`XTX+pE`=J)[Xu)BLwO@BoOJ8Ixa`2ǀ@%@Ia< !C|,:F#:;D8qcSE~Wٟ1Cҿ$"[l Yp;8!7B,!ؼbT0\a`[l[c`J#U~s+QbA0#X:&@&NHi6r'D!u9bzD0dRh*l>A?nU,>qʹb.}NZh"@y4UXNG?c :\^R6!? Uvq9;(tФXJq.b|uF:Zj=e<| 1;;j=?@Dԍ4Kč oo("aY##Fh9)+M @)%۞^g4u9^&LutYءhߒIř;Ȉ!lHT;Tå`K8*5cj=8 Tl= (WٛԆZGK ʢmR4+wo٠'IK}0ev nޥJ3P- X& oOU\)ؗ&"6] j&)$+3Jj[2{AO LsT͢l`wK0B!jw9w}խU%#2JXMbDׅI3J8:Z-7)EOTC%(B6,m6L]q] 21"SyR6<9 ͇)_Eԕש5)=ٖ&c]IYf+_Bo=X4sOhBp+O}ѫPߦNws:u,(|FQ(8w`Q1/jDÊ=J Pl=&p11/zwR@whm- fUƣ5!ˡP^9/GMũhmj175 40Pb\%goڟ /W.}$' wzKYO@dX9B:k]sxh ,.M8P$1ir%7alKb; a~$k$_(4vV~ ,VM'%UrఘQ$BTE2k$9Vʑ\ڥpqʸNLَ=g'eXz&}ڝ4 G*pX`@]J5 33ܔ֜VXJ.ݖjOSQ7Ã^)n-hM3R`CUBIcraJ/Vl++)A=(-Pg%L+I<_KFX ӎboa͓ۦ RMh,ʎrX&@ ґ͍A!:ii?Xa^S 1lÚfPuǺ{.*pԓG,CN̜?J(at@S5v"b= 9>X V،e*M<''XqޢWbE SڈQWC+C3ZZ򨷌m;U42bԔUŎ5^q5΁)Gaq fUQJsX17꿞ƭ>S_Sg_(|3}Ȱzx*RoU !N{}7 f w|X`B֛/J:ڀ1JTmak(D `觻cmqo2Kafb s2A-V_VI,2F%//nB]$]^$< A!J2ȗNM V#*ir:.iTUi*x~Dsw@pVZ $Sѓ7r[VG$|Z!*](w)7&S%;B0}_ #ĤO+VA::;3:T/-wUd֕3yV3>"ܸt)_ٺi6NM!7qQu29ǡ4 YEGґ2V1+iTNV! e>ڬɝQ% ?Py,P`jqa_#CV',‡6{O0u]S9-Eh#&bΣ:FO-sfp!X7r608&r3CL 6T>BMV"턔BukR$oq8S" WcH_ϙӤ櫟y`TT>ZaaJmTlP-$d+-lwfci;]i\p@eB'jxwX=`KKpe@985Gs'2 S$2%VQq)MQjY %IP0#xF{?&h$՛p|Se3Yv)l5B0'%!w%0Q#/zt*DDpI M|,9'cjޠTVaЭ/)1zHP`USf4G`eW+rK$ 0=J oZgm3)=(1:oIl#3p(%hɵ0&^컌Oe顪3E)֫þuHyf/aw_}DO }SwA&|` h1 D8%7 GDbiHCQf"ºTO4ix8SPz|j 6TCM"2J~5/{NA4}@rn)ƁԚͦj,&و|:`|)RܷY&vå&S,C5<- {:t*q S,w1 虜u-|Y(Mn\/J 2aJ0 ($(Pz nˀ$T-ko*r֚M`#br[JgJ !\gmXa(A 2B)p6۶cNpPb?bT,+ ';/uHrJsKtT1.*LlKFU9V,`|[֙pUD*cJ w\f,mDa(4TP!K_H\yTj4nڦ0WqqmG[q\[5,-"rj}vD"rRN~7ܚ[/zW*zy]N <+@D$qljiN@[/Rd.TYIꅎ$Gܶksq l;˹"FI-zkۏ.dopV}i[ţf>7\sg547'JZLzk ~n١(m",{7OQDr&OeP˃ġ^'+c 7 ,2vf i,`s?w)De#`}[pKd 0=J _Zgm?a(׽ݿ㙺A#U |<ʺ*%.QC˱ZL`Vy^3>ʾjlO3RԢaF GjSbiڶ+L30a`$'yr;6b-r'8*z3,甦~@o2 HWD`^UrMJ cJUWTlH.a&qKi?ӹh A;UVjF`cJVmei=(s0#k{ޯ(]uH-Rȗ[ eBSURsv`З ,0٬)6H@5+42 z m ` PDWVqfMN czsa{t*L2iQ?fEgHזj . qΟ_֧  ]ǡaeeoM ];DM,[-cKiz G)N_L9$QDr'7DԳX6:2x!$,f~@XLz-3Eo]LɭO"JmiֵӺ{tt9q"EJ 0& Uc%b|ڴc;5üwrsJȗDj ݢ`@8ZA `c JZla (st8g@%kDR@hpȰ(uU]@(zUf' l烙Y *K=Z<30DQ|?1˦LE5R[d,EcƛYڠiU:T)tJi/~ Zy_zeqX؜#fa7G% R.oV_mE,dGѰ5&%!v"_03C\% "1 5A ITt-KdV]eψ r AH,GhKZij͉;^YG3OUrU-}rmNj)ذ)ͤ8 $taԡ%ʝ- fѵz h"`AVXZC`cJUVlk)(5N4KFkf2B1E5Q#XWEX2AUi, 'LJet`#zdu MH$l(:AoHvZVk0IYk41K6 @{%cF .*/tL&I99p0&)B$22`JԛXB`cJ Tl᫁)A( nqQD"!YWڟ&@,U$V(q2a,ҡܝ,W@u.baZᗉrz輭(V p d]֑(H%AA$S-]kZsT3*@\A9!e?]JU>^Jg}[5RD[qo5'a})Z:2z{?HhdEX xI\TXL,8t0Άbb-qw`(GtW/[š"W&݊=˩oK.^ ^1z<\'RӌExmLLES)|cFx$is8GRYi.qfZnz@fw&(u\ytr} =ZJP+z0 •jR)(3QT8%㸳ztN}:EL]L5X:8M;) SRe rrBkp+F1 F< bL0wzT*rg*~#LiONz E),FHCqV^h݉K &jo5Yk^+gB)9H7. 4J1[*$(>>Oy<لT 3VJ_Kvj|Zv$:ׅ&*DjiQ=1}T5_YiNV!=͚fR'#\A xA}F>.4tXγ-#djU~x-a)h~Ȥ8,FԎZ[#`?/:HcqaJ PlK7i=*_|@KڐQx^SPP}} n TUJݖ (be唲 e֣2ք2X+ *'&I)HZί_Zw.ޚƭ"JR hf!R6窘GQlB?̎P F#Z@&u0g3DA*v$g ^ P] `ΥGȻ2Bxu3IPLK<%dM91ӽ]TEN%޿44SEVcuŲ!@Yyi`oYt`z!,</Te|0'm.0@y>+5`?RXjD=JNl*=(+R @HUMPJ4bD(XY\r{͝I&pbcPWr[#xYv QoαrU*"ͤ= ޶ڍW(d7]c󃄜_G~ε!& X_W!#؁2ʮ:cQCi2'0ٝZEta 2T,#13[m-Q2u&@:mna,ŕ;}!geS̔q &Eh廗QG ͲAOۢ!(:IN(P<,/}You P؅hn;h?Ʀh?jb䖇,!c 1ҫ;\'e V)#uIt vʺG,%oWv<]`1ӛ8jM0g/JO4Ll *+oz}@BA)~sc-Xk(H[e݆XJ.c(M "u=!H.*R\pHȆ0Ŗ9{}TTjG3vY6pCXl9&ŷ$x6QrC4%VZ(H*f \q($SG|E½_(FH043qZ\RQHX|՘`>R9RER=JLl DZI=]dVWjha7 }ߖ|uHYKqQkT5YK~:9g(˺Y:'#&3$$-IK1ŧH=(﹭[ ɩSXA͕KX ps̑XEpYc((4 Zi:aKjbc8>ZҀ.02[eEѲ~QU )R M9pxob7#5e 0Ćyze_GbJY'EFE:mvJg*pP&V1`BBu-Ő } b; kJqc {r48 $zo#CdW"i`I8AAaJϘJlK(h3W(.Jm %@$լ};*knгf/=H^ԭtJf" `S AYYRuӮ_W}KŲRpPYl`h*>p"sݶ D1);ֹ%%*RJXM1YȢ r9b|fd>?W[[G^|V[([OP Z"ݬss"JrNpsieIğѩHz΄n(mP) H,/a$`MTXB㚀=Jy;Rm`K=(C WHzf a473 "ׂ a^GۊQ{8yǨ89IQ3dHvsoR]Œ@_y?';8!Qo upA0)TyURЦ*9!8.P{0(aLmQk<[9VaAӻ*S ]@@3̗4IxvmA("xUq$SY '^12oJf%, iVhY. i:`>ӛXj9*p=JTTma(Bt[.S5+.`)pCA6cEn5i0جBs0ӐEp3ezHI㵂'B_ ,f0i oRFvWHiUn;NjFuo@ Cj0JcUk .sΤI,䱲Y'#%Jl)\{brd2ɋ L$\ T:! t!HpaTT-)䔼xW&SÊ~(g'b61YҳnSkut,hyDqܲ`<̖9:P\bSԶq5Q蕽lL0&A8H}'(Yڑwx3:ۅ$dL3`AԛXjCcpaJ==NmdD0DJރ B"M\YK AIwZPQ(.27=MJ63lqOCCˢ#D.$_ILҶd) FklK $IF؎<:eS´`;8ä/SDžQñ/ w`(Z#X| űȵjE,>a`pFc| >C[P' gM=aU(w3kF:HcwY-LvT`Jn~a2/=\g++@V?*ɰgDF/?=(,1P%k7 uϑ]xRQe>b*(}Lja`M/*Az=8;Pm`K 텢d@!P4xCPT#D.L:+LY 5Z{Kδdl]NԻ)Y _ʊQ=uleTޚ֒ e}+qtJ8 b>{ aOW` ? M14{+idsoeecǹlDmA ?E/+" ¹E(@ŀksPn(-+p9&lAh!x֭;!/n*:{h*NNHyu$X>2C ѪTm]5"VӘRڴ"'IZ ҾqGu^6`CUXjE aJ5 Rlk)b`c4 l`BK@ "Ð BQOFbcrӕb>P2V?Z;G- JCFN_1wkoֳuztW9Zӧ 4:a*;…E@RKْ)dx qIh3 `8 ( "kϙg~Ï.gksl %DZQEK> U0a4DZ%AH0Tlh/&-p\u{fD6ip|~aS$̉bymzlT9Kq$kI ǚ{cVm|xb3x&YKȕ.8ȟ&obJeoi~y>`V.Gd~[Vh`?S8ZCc`aJJlᩁ*rd_y],XC 8TpvڒDka*m>ѹG75MwRnq53{.Yfjϱ4&!SX0}نIVYԃgFZ'L`442&ٔ Ļ7jsvxiL$p(`2Q9RFf=\ Jla'0{2.]3nXH T )0ViIj$q7ݗ.[!22pItaB6@HMbTs%Rji|'?RQgCkK_G@͍!D"! Fѓ[I#,jR)e) zf=#M™YԚ?߷篿$/ \QEU/Zi$G|>Y/͝W $|4:he~=َ+ЀZL4SRZ]ZKgS+F{9a* ,(Kഠ. _b0}h<1񾴧i\%k7sd>KzܚRwcŏ8gh"=`Z.Sj`RƊSa\ Rl=c(0Q+363CHɩ)a`xZG&C܏GON )^O6Z kY."OGhu)II,[UN6鳫Px߹ VpHeYexr@ueɢw463 DO4VL; â3>`u"]gOԑOn$B $gg=p3\a"U8bՑӷvv4\M&ɇO2hT]K}7HƨdxcÍ`RVUpc)!手 E"rsdeZ8=,z+MInOI5LcG;d`-3TjWa\ Pl=@*Lp{/z Y(*kQAb̩(Ft'X0,NOH BKd'QsP)Ds$: hS:lݎn]Ի@@, ʮu1Y(|Rl"S:Ud(hCzA$7 YʞWP,.I1iLk+ҔS1{!d^Km%C'n` י- дCk14:#cRdk|@Rr"]NvZhןخ?ƳחT].ԃ|hHX9 Gz!S]]iş$c N4ܕYuqw5mЦ`.Ry`b4Tj[=\ NuzZP7K7Z@OHbAkY('\. h@ppwa"HX{` :`"+r|$D䐄D͎h@B bxf!(IA'nuSL$T 1'dY2Et׳ 7wnMˈz;9qHPf/4ֻI"bN>gAPVX2;˞a3 D#Ě.53ge;ݴz4pғX2. z8: `v"h08i4DqsOw[ Nz{`TR`T )Ü Igb| 1C_筵?bdՌ7<¢c/ΌݝnR ΰkhEeP`E5Nt_r!f SF9 2ռwUI69l_εz)&T,e|WJNPʸP3&c@ 0XOw4f-Tɶ%%Tkr+7,׿0OW2d1VLh*HxLɆvqLL]YމUnS1YK~5k+7 iKySTvu3Fwk+O|鱤U]}l1p`:F݌4TEIAܜd߼,`A՛BA*`aJXla (n}B>ڦ_Ks4*: j=6y9XcC5 H,ܜbT4@)qCA,Wve_ u껌b%ABa*C:^;>Eb,$[olK$S} nboڔ^7>fl|.31 p%9@kW"P6ќJ-+"eAo&Dmk=I3N4>QYΚ ;(T@PQWv,] &F@P!/#FḐ!AKET6JIF)3&AI^jKUâ9Sv{y>ފrl gV_`BXZ:bPa8 ZuOpKb4@*2tLȬNب ml1X |7U/|]l{O55Ĭ3(:( `(<@FhJkB<ϫNocɘ5իUa̷oVɷib_ {<' V1q%$z0"ZeӧQ6 cqI!Ofh֊YKRWlY]7o]R_mHײ,I]T:ZZDX t"C T驲E4:/LWI[n3)4NR-wR.vk`~@rZ4r ɴ hb} m~OWQ u߫uIbAcܺ\/ &LfB~E+BRu:,̤dE֧]H 6@vJ.͢p-M "o> k=O#,leڂ9ٹ4rRGbSiČِItjwu"]uI7]kҲmou2= HGYbv(d@ aʶVV*V.0Jbbl^HMS.Qg{tIuBHru׃KnJR{6!%4_@z E)!ڪ]=kHjU,8C A u!E꾺~Oq"a(6d>Zb h=ȣ+`>Vj<#=J \l=k*(DsrBMTI`WQK$[)$R%,ƺ}pI Yhv?$VHs"ZJ#Ita&ġJ RDDEh*59?E@J/U4$**RB d W'[4.)eO˂ٱ%^s}dLBYN`]؞!hd$,&!T GGnNyKmx:kcNh򤨦nicqaXX}ޥw]+9Ǧ95da9ax桥?mu$ʦ3Q|RjSM6#A(g)N'zW⦪r9`eNV/Ad =J Zl*(#Ew7Y*_4K ܏ m:U AVOҶԋ!"0؂+ 5qiK{;J4* (u%1__mKVq[in4rTnjc)$ TS(\`jSM^VCìĤ#qmȧsRu7OH\w R-++QKXKC*E?xzkk6  И6I[d{ յ((G6gdV'z\F)0(g+ 8 *3]УQJs1Jӫ++Ka*PoHqb\R7==,mo :d[Ng#F*8n+pyJ<`>V8BA*=Jq)Rl(cZ׍kϤQ(4u"f3N:dJI}D(\jKEoOԔɥWݩ|Ёb,F?ѯjz(hTs;Rʈ̮h|yq5d~yk0D UPԊ)z:AǸ1Á wde!!o |Gzv0zי$x69HD\V Zޙ F X-ZhfԠL@4!f]PIpOJ5׏p~l֗#',knwbznEU%T4Bx+CKRfFϳavȜesE? 3F4.Bp>Mx˄mx)]|O6Xw`L*>cJp=8Rlk(~kH6 .O } XHA6&DNL@,vJQ$n,np%e{0-\.nM6q0^j []tm֟~YFV-IXTg7:e[T^яy }W3pY|ŋi9T J^9M2__Y7@s@wn"F{1~$Lz9x=E6dG8 THGr:!x+,P zM|jt1@&i0is@=5`M!JUN [,YlZ~K!»6F(,P `{.u D*Q|i jgi( DZ m13\F2Y񟮊$I~ "]N .#yt{"٩ÙmaNNԑoPa% ;She d v\ʈ9$(n.|4 N[l=rf46qB#]i?!撁|t- P`o2fo͸,1m9rIm_xk)_j)J@V2ae8= 9$b?1$ $h ܼK cr\X,T9%"ԙ uIjS 7tN2i͝t*k-VZnɳskI(jӠ̚_A싲jOlA "džD`S2TaT*P`&A^xրQ,)!"qӄD3.PT& $SC9G0?}{El1%i쭌BPdD{gߖ2[Nׇ77Q06?îwmtMZӲc %s6Ш5z6 |*HebCf- $)Xų-T Y)VJZdJQ/ܔh&GPu ܮ*FS0%3WF91/lȇIUr.e!sCsC`PNY1#T5"W仧ʽO).C`\؟a`B$<^lK @MHG’ L׹eC -4$_ZPy^2͂jhnRN $==*6yjY~V2W)ĿOΦs++4DrP Jz;u-iُs -\ 0M4 3:OE<5dä$} $[1NuZ&İ#BiP2`dm/Aăi~)=_w[g!P.6dh~iVԧ}+g60R) h Hh$%%"E?teFCD莛ffS6m( uR.4l/}m{W`I֛=D*`=JZlᫀ@(E V80Yd,mySrF2gŮz 1ɕZGK7FOA.n҄L =Rnvu08>繙K*XcT5^J=Ո(lq;]Ob&SCȻ, :BNF=,C`NQAn:ܢLhHi:Pe@n8-3?@ _*("'GѲ v kjr1Tn ^&m\> /  ˳W 4`Z5&%yLP dۆO0M `aVrF$*`=J;Tm`K(H5[=2:xį4Qhp2mh&j$ ߕME-_>)Vy:V\P\vm㪨L$dqå.L [= P.'C& z…_AJ8HtzOzXE8HZ>/N)g׀QM>@87塠kE9lECǃxd'(xt`9ֲ̙r_\aOH+HTq ܡŃmmt.E})ϧ2oB8 %?"gPEf7hjNiNߑ<0]JYИ0!{YG}x%qWp^:GФ`;ZIp=J[XlI,K?A֭Tڀ8Vnx(@mȆY=/w+˾V`I&1St5o{ w*1G4J`W5kr ƴ [i\5  ð  .S<9C)%ߞF!FCҦ'(LQܻe8OԳo|M5|bYKoƻ8cd{w4=1)$'PpLkTI`eU hp%V|g`LwU:E ( L!-BjF N@jEi:K0)pdY#k ؆KRkx'Mμo\wzV;J*4E6`vJٸZ:*p=89ekDi!(,4a`N}1%-& KU;$>GhP U//&I[9]<8Fa,-'U>뜴V[vMjڥlt|NhAv$5'j|WOH5hUs2*LY66#>:0 1J$q?ˆB ^ףn,(k~wq[@P\fځE,ˋ,~!EHsr(,uűƔ$mFZ_Ou\k֬ZtPae6.p( ;"$86d Z2vmƒSR`IYZ>j=J 9b% @ǽ(HS1?߼B@ӷ#& F9`k"imn%0b!k,%>r>uSPi+r6&e>NVb(Eay>'v< "111?tvBIM=3!t~8FF׫1_HP֣('XU v}ĸK=ӯt|bx6۷E:*'Tm~GgO*o2@4N Ʌ@Z ..{?(,-r5C['fAK="OSۯX`=W/B>=hJ`l=k+tq&Pr2GB!'qo%LۄTA(UHLY NmS#ݜ;PL,| X້665LnV2f & 'GHw\K@ufq#|՛/m"4jRY}$dWCiTc' nUwrHG<%GQ!0z\* n z=\wʒ_`%,)~2G`--1|մW\q'B_u}2۫7|eT@2=dmIZ _)W<;=?``)K֛XBA%)JiSVma )h(R.u;F7z[ ahHxQ /r瘪I.qyl]Ŋn7eLeRSU7625U9*Ԓdtߤ]$h;eHZG5E (b"SH4єXDh݄(>֞ :R<+'n 6o+җhF+9lC%cڢd5mKvMO*J` e4՘2l qTB mMYe>m*7pZˈy}][[6}}`QR$Sp6|qIqЩ%9'_*J W,0`A8j@cJZlak 댔as !Ϙ, $$4|buo7^UM;WB1j2d 24BIFw cyMgII1ꖂkRl,ͦhI:ա ‡@ddݠ E}mW1-e./(qf!);pHaB5Dr!3TwS-\ieҭjRV뢩)^VjMPKB=!JG-_Ht ;!uj/NV>"F]b+pڕSYRjnZ*ꈡY`=XjC=(JTme kLġ(( ҏdbc-&10sm |L)䷡蛖Q}Hl.u3RL/mԿw>v[cY=zӡ}^uVn눅M3N`rP\E / دxj#@BPuUVdH;6͹$ĂLc)D[zw-ʡpbh*܁"DPaM#iRX!Fi!pj~5zdF;R";`Ӈu-i-ڴSB3)=*LvO蠣'Y=o,@[Ub$y^SӤ C&J0e,ѼATd  UnߪZ`5 o?A@C:frba1UU17? INHF p6f.,7#"H\F\:no9LCCU1u1S!06.x T@dmwBQ`vz@1􆗬5*&xiQ2S3~tܾ66b'?' &N`?8ZB#ڣ=JPmKj%(HjL-8@xLq%1lXlJ@a!#C9^oGf<uQPyɨ qVx1j/yKU܇^ͺ; z0xB$Ȃ0##wPUU@GTV 0$E>Ca`ZJO/O&]|]ISӻ//I8S@Ԝ1 70,%5 ъc/%FnW(VfLJUn6Ӿ' HHh͒7UԟMwoRM: tQ_*.5Ej1mtBnmZ( !B%d܆W>U٫'p0%Eyjes;`ITODaJPm᫁(5_;Hy?Ll3FOh`I0j1O*i2ڻ,lB?ahMPiZuH'fY.c䜊잶UBvfG,Ԉ-LoWj` GVCJV2cB/-11hT 'LYPCJ^$VϿ.Q>! Ms[ ;mG fSM\qjޔV ,&e)3#ZH3ҟUk^I$$-WmWVYn雈Tqraf/c~frP = m#*Թn|}Pץᗕ2cRITR{oP(Gg4ЭI!vE5f1i(3:M V&\Wnt0O_]A=( \dez"b qci8+p?RI4%Boo%aȳ#1GWBJ8D܈T H%(M?Rev-!fGߨ T)gaDw59R`ƵҲԎHk )-'~Y67`0JgMJPiքu )fo;sW/ePx8B+M=m`@ԛ8j= `=JI;Pm`A(j@ LElPծ9]%|v -`H HoΤrAPH`H.҆2p&7 YÚpeH1jMh%5SҾw@F8&F~8shؐL>^[ Y4\FG"S!L B4NJBG@eafo>I~/Try&5(572X W`=1H6e /];G>Hoͬj0dhNM^]>JR_46vʷ5SZoxHzd%`Mx6z`a8VuB~ ku_z'(ĝnLsedr!` x=0 s*qaJ(gR-"KȆ:DCu C6aOm @@`ȁ.6C :K>bXBSWcˏ12y$䴑J==v1$߲vb0bCwo/@Kצ`NV8>`aJM7Xm`K(i3`|RF-[5:P%FOţcjd[V 3VC@Gۉ3ȅ}LqmQrFr8_":qwJSQ4uRjc>qhnPh2$5(4\EUx!_#b!A^ R'H瑆q^ O gB9~' l`xÝ .RnZi5dC3*"Hj9L!f"ԡp8>mO=y\C"},ׅR!J=aFT<\mJI#T1(:ZnE3fVZ`L՛/EcڀaJ 5Zl#Vl D32@9#MsЎnȾ&U`]:!LYلU=G+G7+a`y\V/rCpeJ MZlK)(ʰ&"8p_HdAc5 mRܘK=pNgH``}tk7ABy[YOn[JQV˥ )~0RnĩGFT5BJ\@j8H5tdx6J`A=fv D'JHրM`Qо) t2M[nˏجa7KFGRݩw9Nk[LAKF];` `S@i'I0QJYSqv.kdl10/Y M[߮R!WyZ}is$PÝW (pB~VSXJV봬j f2+Oㆳޟ(Vki~ 2^KG9͒?~и!T$Q TfpJg6( e@[y;r.0w98T@6?J`P $*B$uMb:(FlϽ#嗽>a:],r^[krм;5BԺ"kK#EU+B,&b:5f-:,P;f,," Unʔ ph[bL2UG0 µj(Eg$lznݥqu?.ҕ Cڅ-`=V/ZF cJ3^l0,遌=(Rh8Kl*gyGt 6y{>w|v-g!)YZz)fݫweڪ]>4DOt[gd2)P{ lLQbTgJϠ0N *=K4DLQp 7It/P\aPP_)++8G+\ĦLXp}tlt{;P' i)@䓫JdkZ2m`>~@u9­$2? M+|$5سѴϖ'm@qY@`3bBc࿌fe) 9`h 랝~VaKu0`õuBvzY`)BY2Hj`eJ 'bg!( ^*#Emځan\֨ >mw+艉9ql%g1Dzc7P{/U~ϟ0&$! vgRNagW3o).[VQ)umu"R C`Y4yE$!J{V(>/N U9l9 r)>rTJ_FNmUa5(g=5)#5ֽӎjkpvh`CITY"`EĠ޸fzDG (6JkGy}Se{v:ޏˌtU t%Nrn=Мny MI-`Nד ZIDjPeJy=`l= )(}"E[p0: ;@*хWGAPqn\qxN]:q`mtQa@חԺx{t[֚uSm9$$L.1*I35_ 5?BgJvZġGͻsDaQG:|d[_p@_ +C02 J%` ƀh_%a+TlS,BJpC^EAJ3۲~B!ʔIHY-!j2 t'q*n_<< dz_r0QCi 8TÜvyDb 7Fi)w`2N݅'6L*XhYR*b(ٔ$5`!m`<֛2Czp=8M;ZL*@(rc^d0dϡ4Y/G]I2hnMK+0AU҆L/q-f % R1!#2])ƨ;M% jƌYzMRGwk8_5llMIFb[wVm!͆bzyi~1ޯ /y_v:y}@U87b݁Fr}%b0l5z-/#XŐ rC2՜ 0 Qߘ^QŭNhGtSj I Nrq2&( h;w{A$ Jn!O{tN8iKΗm}pOB(VcNUb`pHS(#SOe{0*ޝ~P)9`j+788,6Y#s ~Zv%ljr$Sk7$=e(\~H[Fy,K#,_ڒi4$"ZnjhltҜwfS۬`ώGW;"x-'IM2FU:B`4%oW?CW댱"Ш4ex`OV8*=Z=8!Xma *(Yk2*pdA-@rӂ6 H²Q)`+A0Zt6E? V{mZoM1bW&O3]@SМoߜO)U9W,aGLDVTY ԒO9\PLXMbVy jUUfU9&7vƂS,%ŗ,8]XCg66Xۍ/8bёpiC 7h7jhl}ui`^uOPX)@@ hu%eR& ] buONG_ЂO˯k#o5) I kB"n@>ʼaxӒ̱2'Ҷ33}owGh*n4A ZF|LA!(/~?(&!TxySq-(K5\ީ̻֙:jAV?j*"XS  N_&a0o;I"#Ihk/xiЄNIpbR<A7D7XdRt$RSXjD&Z-e\Pma!([d8u\t 伮AkC'Dih"$f׉G./2PK A¤JΤҲJtuT{15Lj'Q{vz^.M~o\Ca P%hS6nNYY1-pңOہ-LWiMvjp67x \z}'sЍ8FAYOUct6Zh.FyGKɪ(^߹nk S|qИȨ5tUHu3A-6_mdqME(QXw⥸FcD9SN&z!& b_Jq"ֹvW`SX*H#=JlRma **cЦ i-OB)-XRVIFޫ3~U[xU\VR=ۿac;('#ԓ.SvM6]Mn&kQ.nСMt}Y.,MK^& p@1A(HV鰻+D}HPtb FUQ3䷛XTI+7Ͱ[r"h@ gGvF`#/ P!qȗ«^FRGEU PA0^?=ni „,aYi=Ee仧W۽tfɵ7[gڐA{Ѹ4;5El&l큹M3i̸ᩖԢ҈@P=!a*Z`A8jBZ-8xRl++ _e-X2-c'iaa !6l"2.2|:Xit|{D*"< 1rYIFI$gvS֮^1Fʭ>ejL,:mكHe;PwE+#'4@$a,( : 24 d~[+[iܛ]ܻL7 ctӻb($`^5HݑiZ6ԏ߻ iԳ7{5*{\HP({Tz% I|6d'eS E-Y0#uܢ?Ч ot5`=TOjDj=8TlᫀjD ]RBI Hd!ऋ4$p*%-wcChQ; %4^]H t}53=k$ RAO4Ԛdx̾ejjfS頲 8xAbJ8w<Ҝ鈽݋`bsf= 5՘.\-w^lw'HVGL6;467?bߪb3<.C4Gl卼P,V j! Uoη:&=lETjc?_9g=GUK-{΃-ۭvPAJ# ã!A0A5˝j8"ԫ{fL< fH*cB* xeYWJ˶Ҿ>hi;%K`6>j7z=8_Xl`(S2$TKIy $'uj:,d$ &,+a?,+NJЪg1ߘsVʂ7J[KOdS#%a69S#?ۍ.xAAZARo([:(kD>9 :G Nu U*\sEa-x౸ Ym,_Ru[ S8#8"ekQ'R< 5dLH@Q TU7'ҼY8Ne"QD嗕f8ҋ'e0[ĊYs?_&iZt;H wj9 VbN_ȁe1βM:}?ӋɭBEȂhZ.*")U)_n"nuԑ>h`MU9E#paJ%]VlM i(=_WC'u ޫ>GBNC (q BDÐDeN7alJ6\zptYk꫘ctTK>OonNS{Dgc;`D80hON|ܨ?OYHDȔ50@ߩNwWy<䟎>wڽN@4jtC? Ĝ`ihLFm*y܎3 h+K>U9MRje }HgV[[)Vb$$; 4(XO1?Ц+VKG{l5*3ʘzVŬf#7`B֛9Z>=J]#Xmdkj(Ӻ -aPTt2\tdTd pf^JzuE%-q\*-4ۘ, Xז;RI햽jVWGi!Yi@0in_Ei Kb/+S\W7u' DbABƂI_P*6tu:]/M!p;كIP" G 91HJ]pS2Q Ս*v)cM-C3ptކ#wWGgEs՜cq+վft\K@յ*tt<²ބ9 *^R%RLI&91&g 2N`C՛XBF㺀aJ7VlK jǽ(UJGГJ 5ohʑ}Ixחn76DNG(n1:JGC+$=8OGl&kdQe;Zm5]4V%Ȳ*5>8pڀχ5"psՋT, $!2s_E=\[GE2cHw"j>.ۻ2B)d J@ 0Ҁ0&IJ ߺVp i'*rOl6ޑc5ܑ7D(b&^$H16辁ejR(%[ZI$)י_68jhT@me* +:-+v]+!'$v`?UjEÊ?JYRmf+ &SGPxC6wѵ`w=8#;сƈgAT yVDd/ 올Uolap* BZnGZ7{>n8S.nxUVxQFXm r. X`}<>I hЁhW3%r%RDI&RO 怮" E%݌r(PB3}s"e bjaZQ#gbVia )^KS`j<\"m߷{v'[]h]aA"ʭٳ @{QN C"+{1ڍdtԪM2:{j?iO$-䠒&@AD[>{dZ`ABG㺒=JݣXg7A(8sx9=SZ|(CMj H -$Ŋ@e= Xa2%Kn:8ObvUǞTٹ̾ 3ULɂT̀qq bR%vT˿IOjpc<BZ/ҏ4fp]څ.G}2"1Ltj.bv[i~ !ζ,qw$z4zxjV^iTr[ߵr -~ZCڪ 8DbIG%D&2:t@QPn9!Cg7 R:`dWrG`cJ diVG )A1(X:B0=_ڼ؄c tKt1ocw# `D?.jӱCvgYxZ3BυMR~)L5~O:+4?6V^? NjEy j.#z9+T볁Hf^F/V"%FlYX_&NF_e:&YzDU؆diGCׯZP&>^E/ߗb2@59R42#)]jHlWgM&giɃ*wyW {I&ɫ!N] :B,AK8"յnl j]P`2bؙrH#`aJ MgF k4)(p WECWij4tKm*W(t-e|Ǚlh܌b!֍l/xs& >֦V[M;dPi,B?Sm]!@a2-Ε{)UuX{#Ol|/[tiO#u4S*f.eelVwFYe&S޵H"STǻ9\zްqV"c䲰mZtÐͦi#mKph0ZKaOaFvuKA0tf36w<+7*:@AÎ[,}w%`2 N4Ld<@XCT 5KnU'jثQBCQRgy\M,ifk{4H9MgS [@v0 :0-1L"$- zzʰ`JU/*FcP?Je'Xl`Ki@=(ֿųM6$"WlD̰\P2O aƃ_1bB28mH#PtlΙ!Ir+Ku*wN(ZmSRT&Lf:na:hoPe{F+T0>[y0;-zx'HeUK(PU"JFsuj>v/%Su&(@HR-;:NvTޙ &oơ(b8܎V脚bV٬ʭ|*a wT7bl$cg9єDO1Cԍ`\[6ncBS#@0R &fH B츛p$fۨN,V)1h7KgmC`F՛I$*PaJY)Vl`i(=m_,^[%!>@?cqЄnQ׬v`刌ay[J3P6@q>(7RD≆jktYjwZU`Bwug钃IBBloщk+D֥ |!-`}n*櫫˼|ƶGѕj0T!S@B;rT:UiFgZdd-.LϬ)Gv+%CP1V4mg^-?Py@e_j H+Sx}HFhTN/ dzrEA<(t1kCZ0\uZ4c U’`>ԛjLD PgJ 7Vl0pv&7l3vF:<:9o!OXhfz+4Qy4?ymj_`?T/ZG#? JU;Nm`KjHǽ*z]H} $8_)t+nJ+.݇bL<4QLvp9AZ M2C9o (&40?ԕwY"HԫOyL>M@ݿq&!'K=jr\l4F94.ϝ@v\vG-$bY4LRBQ\}~FE{ʠ{^V5uG#eR|rRU5W7-\V2M0|1:,99TqB\%ކX3Yʤ4s .V]+du4Iif):Y^]Fɭ[ǿ>g`JӛX*@=J)Lm` )*eX 1 ċ\\j/TURx;X5`64 8s6*ĚTj˚40Q5͑1ӄ'|r*øxH/ַC* $7Bl"*f.wȃmF(oGA[FE1F&O*1 2b=9񬥪:E^p -ERbM鲇,Lu͚aga^oG) cXW.og*EKbĚ-E>"i{~\@v]Cfه ljCIP6_3c`NқXDzR=8+JmdK H(*%XLk\D:o 2!`iĢi'ܸFrf!|NMTX_*zzonsb eپ#ddK͌DČ]([ߜo{mh րiOr# Ld"yHqCLR >D%Rש題LM$pTu>?t,̵-rN jvoF/Rx';HSDHalD@I۠]s*Q6V`I8Cd0c-JmRl i1(pN̘*-%h $sL=3z9VuQqeQʀA0'cؾ ?)bBH`4{Ȍڬ9bqZP!/M)g)i z1ؔ4cbaܛ]8~波 5+e]ap$?2ux%n׀E3icNAq'GV) tɧq7%et$$֗naJkMYA?%EZ$(JF͜#>f8`G՛8jGaJ1Tm`K)=(!ZW}JC .4)|˒V b Q6GuxRH@ջȃM?Id!bie{@#-U,HSN?Rp]馶/#9,Vp#H ӡݗrGC+.^"ϭ]^C!\E&( X!3e](T͂MB@vfm*ܛUJ%Ybk5(L`>֛8RE`?/J5TlKiA=(&GU 3>fZ4i !lE_CY#Sӑ?уN8OT噸[r@{%ps*,q #[΃Mm_fS$M ZD: O8Uh!8H5er[V4M CdBM\Rndl&2OOɛAF-PUz@6 6C V^d*:]FW` ZQ5<$XCm]pE2$*!sѺj7Jk+M߼G4ƱuL""[rKul<i˩1.:q)$ce^.@)1( oCeta`0Uj`E@cJ RlaKA(& N+FJXKCDZΥPȆ|MA K2{Wɪkԍ!&GO4Wd~u$>4^WAsE+Y(E`eS^Y2yK]ҩ3lkoj's5+5!<)Xݖ,ӧK'6rΘ6 ˴49BRj Xtye΂74@]'(Xhf}~_۸LђRYk=3N5[fӟ][:kkj=Ra1&,  %4p拣Y3ie&i(Z7%;iN*),iWFb`P8FĪ0c JyNlekh=(:YG4m^FG1N !^cmEihj (Al5 ;>[5.yw'yEw~ڪݶ,P|zя.@2_J{8XG!g1{gj eБH޹LnRQ{B]fk9Bʜ{Gd+f:7t_#A W 騂]e N.SbOܳ,oژ Qǒ$Su<`)T}nM%:zY9Ǫ:U+PV]&$:3 _3( z6?\B2rFXjY`28ZEc? J Ll᫁4) =(-='ܯ@?-R@n;)i('JZHPBu0r:=IHr̬8%DZǁ'̂z}NZ SQK5Mɿ$8^#hf֋Bi-A44&]!VU)~ M*`u>4FinnU2+FF/c)=)OoH7A^@ɸęA 9AxOX \D\u/|H> r nX bFyEPܜq7WؔFHUX_fg" gZoc1c/ RڄeWiwmPц*L'AvJL7wS LŐ_ nNnHV[{ AMNd`82ӝePdc`APy8yH*ڟH[pG `+1!P)Xa |L2r3H;M#DH*7ŲE$o_˂%D Ʒ$n:GUoR|D=_)N؆[(␫5D4<_| VU:n>#uKUke Ilggȍi"B 5 ¸R"pzKZF̨~yWY eRe{ i]AU`1_kʔU;LVZR4Sxn7g3zZ/-kcޚ `qPq2ewWS(#ɺ3o_OU}`Z\X%D$0 u^gi1(PK&ZcLhJ,r19\RʕPH1g LΜ5+Ƒ, Mó7C@ ظ@J:0LMDh h=լxā?ї5o$ۙ?ܗ.AB>gf繍Lm1qk5E..y}]@' 8Z2X.@@v\&c"|G3LÚ%Jt%NWo S"`D#5v۔KgkٔB[.Sdg829ZYKQj Fñcٱju%zgա5f홅mi?4xi!jbwk@`@XZ>@=JXl )67K/e dnZ4þJ~o\""@@Wr*2\MwPpބ]v> 4?WHY8Ҽ넪T5 Wn ֥)Pz. )jEId2QlYkk@(T (M2"PInqfJ+$$'00K[D[儀? 4#n_wZJM![<1]Ea+Z+"h9B%$r[˰sTfrO8D0*daaf?-D[.ObڛCԔ;?pXC7,TP؆#65EBIoI,*C`?՛Oj;Úp? Ju1VlK@L) $_@5b6:B"!lB!#hlj,k1UP-bD)Rˠ@2eܙpk8(c@Hs ],g9J+ȻX" 8b2PA S*AMlwvz#Dl ڈb)&W#N8D@ ,tP4r`#qkkq$u_IL%tq `o"HrViӪqJj9sllZ؛oOgq1S1ggPCm KA9v` LUX*@=J1XlK *(H GS(%yH\Z"K "s_֫oaxFdmH'U;tMO76$hx"l/%DeZ\i+e$+;E]Tu25`;aO\C[cf$W7lAE X oYIX$FP+Rx$Jwt1N9N.!H_N>KkMԧiϢ]8*˧qDYJogMB/(r·(NdpAAd \s]԰ @ɛ>Jc5 v[CG4V }Xlm |urA ` N8B?cz=89Vlk)iŇ(6yL0ec8 عJxA XQ~Tci !O2.+`D㮷Uf-Q=,Bf+iG}*WMPc=EƱ`@#+_8VcM\ J'.2obib6DWrl+t fnF9?g `#xTҐWbEȁNW"Zs+sR)m]a)ZF:O,?*tQ iz#ضUZ9g}fAY!į Pk޸ 0=cxPtU K\i-tؘnz^E]{̰2ʜZs`MT8Czc8XPlK$(ǰല@ȀY<ƉW"$%'l9%()nm]Ek"0?zpHb٩ ?oT7u;ݷGz )k8m5FTߩ @. $=/K%A6ni[c㯘;qJ>(ܬlbQZFd7f_6[4qZ?|^` 5 rHB:^e=!wL#vCæ ? ĭHHr]=ǬV\Xx5nfo}0H_q$ڶY {k@0f$zPcԈ D*yhdH jQJY!hQjk>s9`<ӛBK皣a\ Ple 6iɇs ջ7'f !9[n#rw RԐ ~a%v$z]MuUۻ[I:)$7nYcܖp>#sy }ܚ;oWv~k|:ገǃ2 }hQ[a^!,x.?.̃V 9! `ŷ&ÔFݣC}]sW}x! lAWm6dY|zΌb3g>a;ҹŦ9$$]XSKߗr@h=Bcskg!D|՚s/|Td"(F89X*Bh\la ʃ0h2 q`Sj78%hTfRXγ,֤/ʵc:LRuи63]`+]3zQ*@k/J a^G3i(@&tGSqV +=GB!T>8u#8B/*%չП\sZs\–$98PIuۗk}[dM_[|P³_#[4: 4`4B !n3 y`ǂr8=<4Q 1fmb]8k+.␄"G/;|"i/X>ڵ|v~ָ%QDk9R;՟/t>/ dU$-/y]tcBt(LE7h jP6ǓD6eMD=T0=ZޔZ@$'d rw@HuNi G_n`YWrW*0kJ K`Gkq=(S\DNrjf8=٫z؀2҄g.xѯ)!ѪPȼ꟯a ֺCf>. :ѣͱV;ƫ,Z!?Qn9tN;G܀0rS;MC_A""R'7<"6@dުw8*AyD ^JB7FD_ԏg`×`Z4,LpXNƥ5R7Rm7x f12 pM\xy|tIsz8D uTUFYNu&ց/*jD3,pRO`):Dq{G{lVn@Ԫ2z͖QK$ ls]A2$ /m 0ᅇQ8K ~p݆h1YCO5.5Auc Fb.:)K9a@!"Te<뽿#IVyO} cO8zΌ0g l`Aڤܮ 8D=27}T٬`AOj@=8mVmaK* xOӻl ڠdOWxiRO$q7`#v*Q!OR-sr h]߶Lυz eJ)+j=gL"oHvNt~g6 -}W`8? SŚ/ 5w6vmPF'7ʹFv8J@HdL3Կ&Ui-I{#!Dyd}rP W*<1iD꤀ ea gU.6GKU$b=8XlK *00  قD,Pʏ>(~Qv(d(U"D[ x~jkkP.Uv) }dW49ш ֗oV3N(vEeefЬsrж_QJط2 Jp@j{"n0dƎ8[L~ӨH)9P. ^?Ȁi-J"̈́KX =lC$dYR$1ǑAu1H*KYכIw^./QhB ԙXz8̷5?\^\\_@;Lg81EW8dLMfNJy)#K4>Ly-e v[<5y%)Kб `P/BGaJERlKNmv[ٸmWF5j  ;EyC|kkk[ P: ,WSf#Aүl*[KeĤnHsET.$ݏ5YTI&JN ;‡E `2/jN*aL|NlAIj(*T,0[ճp\ wq=S$}GR۰Z*AI %A`@U-H.A5% T2J$T'MF&.'s JF^,ߺ8*m xj7K$OhHK]Zp1bV}`BM+?nmyvpZs2PBO'%(HZmրGRHfBK zjHE$Ԟy?mAP8pӐ ZU&*,S|} ۿ %0YhQĎ# $rRܵF\R:c"WJzHu`2ԛjKaJLmai (ߨˀ6]fF X% Mh""40IdֶJ~` _R)RQj0ptXZi~s\BdEJF(/9 sNC9+{?KARo3>Y10gc:^9U({R\hKhOϋb8"{m(ffhn$KB1ZCqwt>};ţKSÐ"c!(uQu~u?팘_ǰJg(׷,}AJLU{gw9Te Kdo/$O}|A_<LJ *\ P:  U8`2ӛBOba8 Ll ?)͖<6(m^;H{P6Γ LJ^M4|l9C[[O&5qJ`2) D`ATeKJs<A`yH*C( _ĔKhhsP;F@L#ipcEA̖L&GHzt OwŐ+UzxчVWBNBRH(fP"F'CЌ9vOA JrU&  5sY8I5QD(I9dAI%ć2SF=!LnQۆ_br̠IX.`MJ#\1KmWvFإcAiojwz^z2q!,p^ZtAC:{r?]{A:ʥrhf|RDK "e֗va+?*۸M12?k ķ$nd`J,M*PMe hgki(Ksf~%}9Χ9X *,tQ5jHa:. ٵĬ$ڡ, @1Egm=^}OG&wU:,;g4wRàmyu]m"[Tۚ&n?(7/gDb`AP޽yFAs$pSSX齅yh "'UdB!U15,9\ Jbep?e2(#-ED@/yg*eX@<~fdTfpJ4+- ķu8q]}ooUη]&sPp,0s7xbp$X$dA^ieO[`@ؙZ!7M2NGV,~zC{SH#shUIPu,8%~2,egoO!Б؆t!1&[]Idj+,XVa(X:;72mV8*q3癯oԋnw;&xk wk4WM?=*dd@X88*ƀHbh`MWBzpe8Zl` j* Q;(a4%ެc0@**$%+ձqSS>y*B/UAP_Ƌr=Xx"/!aVIyts޷t7vmi'kZ854\yiv_UD^C1G Ɣaze$JEHC e)oE.gpZ]^}ǞGhTwo)\`>W*@zpe8 \l ۣIlYlb"VkvOEʁı Z"Rp,RX@^ֱ|EB"1)1a)Љ~#2]yQܱcUD|L_z<ӧweGWw9cObe؀zDG.0&x4Y )#hx{Yyex/!LdUS? Z9ܜ"G?}6t9+0 :[  ;SJ$:[)k1cM]+[Dpm/fj[ BT%)}u~BA l>dRtb{22(6jp*GD5h-b1"Zt+2czŦm !lgt\ `@VX:AJa8/Zlk )(w? "PАtH[p2iO%B\%`[82!)o"uDjGs.UFSo*HmxIå% wдZ+vA@P0BCKt6U/\>\JJXsYe[>Rs.6qǪtʶ!]Lm̷v軭y*hH|BH.,Jv8:I&Xaa0+#?} ?K$ HclF`LVFڀaJOXmak,j=(&PVcBG N̂Ax BaLd!4%:M<ڵVnU.;L l, G9.䔏~{kkzZ?KuNMNk9 emW`H(6D#q1h[2ŁR=P)+cDS$f('Q13{3M؀/@\Cuh_e6z#(7%SVÖ-V*/@l G7UKﮙONuïlө},,?PIx5\ASI#@|U,>싥n??ސ(9`?՛8BAÊ=JNTlak=(~v!;`N|EpE;H_p1V,7u!smcƿnM[نZE6(mQ;o26ㅻ5׮q3\E{w#Ax: oƤ ! )9L{F: |沵= x0 ڋ% 盥$t,ʹ'(9bT7*ڱKISw FY3Q%;k 8T])qpq_=mB0nȳhea ;pk4NI%g4`lN("[)[7'`[۪ ٤K5~Yifg4nv ~Gw}qUkBa!ؠhkm;tH;tg A:6hTl;pT(w5; SNC^$`=8RIJ=8Nl .j!( rbD̀wpc2[ʢ2IVNB, ),SHԥbsԚK*XnQH¢ QhIo\/j?,QɼȋńG2._n/ev󢣳G) DŽ;"]-M͆{v3#.zkCVɉe}f+SN0gL\ŦP kSPH :LTiw* hr%4_1*Eenl*(LB>a)W65֥oЭ#DS 2i"* 6L#l@̓^_ uFh)fRm"qyIg`a*'%9|s ȶ}Z`g2ԛZPza8 ,PlaIj(k5j7VJÎbH8eޗM@0d80KtQK׫z!S+ l Q+[l1Q@0a@I]m褒 6sp0xbC%A`ЙfjVOO3v@PھCQX~Neգ$nT'bmc 0 0~QdDZ)u9Oo8jt`A4TRRڢ=JTl=Pp̀ ,.)l _L)ٮEF7U*],vΞo$u< =s7?_zO4jxB^>*4CČ B'›!fF0ۺ}}:MLi㘺+]:q oN}7u?~Wħ!Cd5L  ~g\`x,8ļ|tâ[KA/GaًJ%4.$z`a8Xli=(>VrtJՙpHĚ DIY|X٨(KM@QmjPi,j$O.~EiG1[V~_1.M?#%jA e6HkNe wOw6诱j+v2ĆԭwH;snκw31 s;'0†Mo~$HrcAkz+,ip)&'# dKxnS39wѹ4kuZqIC({+6l8(Gkw1Hd>m9Xm+! 4cZǣͿw-bD@y:H #T@l-4qϮQqBغ[>bPG q1`ZV8pDpcJITlK( <~<7Ռ@5UP!ɰiN!5)Qtle3v3r(HOj vId+ DB.dF1d;YJBf5-aT"B%9t-ͅ#A0Hʃю`9%Yavrݎ F]DSY<=R'E䞑+ ^u $) $(8ť{/xK$#2 @pE&0,-msl5ZF'b H'~F/KB 1_L:lE$&+,\ :b*V4$}S)ޕWO`TVEd*=J\lak @(07x%*fDEԆ$MnFPH,RJSޢnʂYvi;F'v,%A?|stMuUۭN]ZL[t*L}NִSI4( RKej\ҏz>#>Ly3WpSQo$.{WˌdwIlE?hJt?=]($a~~[͜V@gb"cmz}aE,w%0l@6Yi-L1_mFqǕRMYD-ʙ-{QUo!inlʬWZ3y1*D+ɞtJ!ݙBw7𤶂w*M%KlUgiSYޱV7ΛKT*>6QX 4l`AV8jGʀcJugZlM*@=() C=^5ş;3N%ifnO3)f.)GfmNYװ۰ L\m>"Uww]fzZl‹akdAc8ܡʤ878QϲY:n op|+OGr `_|o, =#:eƏvdcCp"bGb")oߨ`FeIJC˂ŢN`rRf dYwakQk{0qO$QМ; D<P*n$ygxD2Z'ןdLf \t4N硠xdH,h}nE&܇p H%+Bȡq\ ЈSvvs`ZVXrDc=JZl )("OO}#@hL2-%g !ǥ.FvmYj: SZvWm%6r%+&LY]l>ڙ}uÝSPQWO%S8z9*gqVmJ\LT ;.-tbƩ~p |9qq9g$>y[޺钖%s AB+(`!ӈr.H4H hBN8WoL`Rn&jrIH[3Fb +u=ЎGou;!fR ~OvAf1 I*ʬB6`msWt=N>29Ρѭ:`AXZ;#=J9TmdK)(ǡ@D(70TDP1PEP=)'X#qp$jcؑFy .GʨM#wIa`1He0t-J[!Dz1{oUruAӪGpZuNLL;ԙHZ[PD0R /yg0]L6 #@ RDv\ l#fG3iOCHU"O"^JN-Ku\tf(K{e W)^YC2[+)S3pE=W'›~Ɣ2~UHcIAqasbYJ D)h-{b\+`A՛9*=p? J1TmdK )=(IFYo d yt&hIդ3?yn5 y{rW{Y%w E4Ĺg*U c ،S;%f"iY~FXZ)cC0 gM^nCü8*FR@!JK4n|@"W1 VsAGKrj]ϼb"H;4ҸbOKSDi *BH|:㢵#e&hʠjMNe3)j -fdynYUF+k{eCqVLB"-3JvFVZp.$@ %{@W`\V8pAcJZla)(3@=HUi*twe( -ڤfeMF;-t6N.Nѿ-,iÓJhaY1_̮y] Eer 1_/Ou~ &0E ŕ!i/Ȑ}!3`9eRHl3ph3 a.E4z.'mQy8 1QBϑ(.XCH|0yG}DYDJfb3 cOd6~eQj}~Ǚ3d ~PU~`)w\8o1wj#fK)VUӟh)i}@e@YSA%u;2ҰWai`oq^`[VrDʐ=J)1Zldkj(Aۥ@@5NLP9BtdpO ]8C"=0v$q3iK8䵨I)MX:koW #6T$qTrbrihT@D:=}|T"U!Hqc,WL[BKU(1QިG#6ye!AJ̯!eŗZtPO"5gkG"w FbepxN6t%֖Dsoe17(uJk  /پQQB'ӡv )n.%5HbUpV[\X!O($iִvffj)!u}(u'3]f!glcQ  x!+aJNu* wBЈH`QXB*p=J%kVlMj*YW TJE\UH$D!aǪզ6|Q\)s^:hf ~ZM$ Tk8_㉖)E g?vvwN2)[n6&9 /suڰ{$ĺe:)H=nc"3]A*N$k۷ !3Ƨ`%oɦkKZsE\{;OK"XmNt8 kz'Rn*$IJ^ -Pb̨1VqoܳZ5{^X2,)x ݦ@ej-֧Y!K/+3&$ΔIG/,PBHB:hc a:oCm9ť Y s@Y y`N8C`cJ/Vlk=(Հ5}g=}RӚ2+ ă a:=k)ަx.b"v\lO #loqv-/,RlY'7>Yc+@Tͺ(C"J4`'q`. E?x\=߼8?~-Dz }.:@Ft9dwKA4(Ğ _eu%HÆ>>_T웊u\lc"d_6MַlÐLȕv} +rv Vz-h ܺ )Rj7a/d/ɍi?`B8BCcJZlk@=(MLEJ12 Z`1TG!!eMGe mT3BC @sZʅ3{I n,q[ *z~諹ٍcUTA$dES2eb"Ԩw׈ b_6r뷂[Az;|rjd4aMG 007Y [" j=cឩ)W}F^p'Y>$`ÓHɈ x)ĸy\&:kDa%ˏe2y mh]H(yZȫEr5^"k8R2ySQ:Ŏ;T^AQ3]o֧\oE2뙈}pݵ'j9Ѫ[Ɂ [`uD% -{~X֖VM}oPDB^5 gDq Ě>W_`LXAʐ?J Zlk*=(9 F8,T!:_Reg3%,(SsV9e÷fzh9mXt0ph}. q-uڣ &3 atB/*#XszL !D=F 0>MڮUZBeRWGr2xÔqP$N]) 3ӊX( 5 ̯oSnթCLv)Z9|I~'ܫNK;3aG^Wk[OHwj)Έe} J9PE V 8EsPI 6bY"! eA7egRyhA ŇJiA,N;w&a^`BUXBDDp?J-Vl`K -)ZI>@veN@2a9@HMTHʭIZetF @r*m;ӍܬJ5\ D1K32#jFĹ>֜Tb2ZZJ6U_%RS$mzQM̥QE#赒AԖϞ \zPg_0)ۓESFb:E[ص9B Ըd sHjD- XAhT0FѢPfr!5Im"#=J(XleK*DZ*YkB\&H! 0bW ֔ojCpv41í]KZ>Dvr#%jWttlmtT-- ]NS kSEHDht>rݵI'Ԏ#-R,˧n['zT1ZS_o뗎?\[4^h'%4V,LE P:  8P& ǀpNԈ_ܖ]Ph:iBbfZ/b TgAA17_ObO:I qD9J^}*^jZ-uQgW-ϡuXG-w$S'"PG͋$PY|F"%٭5PomfvU.܌޺Н>-e :#w1ir] Bj6IWk7(P )rڷ卋@N#j275 ӨNO# z6Ԣ7@Zpw(`BUYj;#z=8OeVl 遇(2rJh>R`И`dCK YV$mhܬ.yBѦK,Fv+/WOT{ R ŕЋ6B3jg3 D"LYAfPh4n&*g-'J HHGtJu4sީ.EGErLӜ&̸5;@"r2T#lfZT~*VYKNOl}X!lye`A֛ZCc?JO9 Xlk (I+YFԨ&cz!@pPjZ4*[d9ӯ!jPEט:F"@&G"2hK)s9E4 R %KZHm -3,w+~~֦KkioU}H!ַ/fa)Cb#3}E<F1ʮƤTNrTت?O=Uf虔f"(*7QTeļã\٥~(#!`A՛BBCp? J'Xlk1(՛=39+ީ*,݊.(tLٛ&(ɮPI}{ +9 n,EsS.bCEK P~"|X# M҆ !h/ի,}V '7y;FձiS,FA?/aMtHdTRQ"C0[M04[&pPl3)^nVyD[S9dx=/ye-w{;QwSs4ۆ]L15/|>]?*$QP&HM8t%pRyw?Wf~ ;ngh儞3E)?;`@U9ZB#?J=Zlk*@=(|z[t` y(#޸3)g@~hd $"IgK_Y[\ ~jW_8teTlJ47J)ַm֥IѭnRT:0.#@Rxbz`k-VyKK]}+r`:;ye3X)⒌PÌW1rQv"k  Dө0aA%((#OtbQ7]+\7zW6)/!q2ɪ*6V8jCC?JVma *@=(%PB3H_?:CLݨq|>!EG 4dN_(Jy(+_[L>7sk9[_5[MKp`&r鄡idG5xg@O0D$,wW$呚l=`DYRD#ڀ?JZu*BMd9[E]̑7(<$ h VafFDARj rzS+G=Qe^vY0yTJ2ΟcsWA0;C c% .]Xeaht",5.ZF$Q+$>2Χ&$@ʛL- AҢWd^2ItZKvBc2t?.2R>7?P@@J8( Hz9S/]kIns8f.XB4U@Y¹S%obUp@j[4r 4 ) `} e!lEYɍ 4kޡ2w=|_4?_ԱfNLKbtr[{֘ZdenkJaDvp\4B˚ӅK66Vޯ#Uw!~`7:.  ?9vic۫]݊t[+aW&b(@.qHs![\CJUT %L,G%hW(s!;vƅ 2!F>t3c/}U},. DƌFXx J:Ë JGkt[ EMB_= Jîr1z&Fјε14hw`SWӛSAGI9=>5P7AhnuhQ H[`@*?p=JNIVlK1(ersPB-˟)"4!#ڱ(j IJ HR $2Y7yWi2DTCLIl"QҕS1*uuKsnci45tU'ÆDys/#%6>P.8†n,ZiHlʼn寜y`l֯޽IsÂ!J j;}ncYshKfWYDV/c" &ScGWR~d'Kh(YnLZ`@VB>D=J Zla =( |-"o˨U\*98Rdb T~0[j дG~Y+fuڜ+9S I'چ+=TC)Uc,3S="]v[1[ Ͱ_I&81^;2)]⃜M=dk΅鲚U) 9+`gbYY2ɿKdC9lT@y7ŒɊJ^>ok دK+Å ^b/+RS֌B/c~La\,ܺc+48Y }#w&ٕu[, 7cTu/}w_%8呌m^qS3^y%:T|A^FF#:bʲMg;L*^m9ÃyYy.wIYZ,`@VXZCC?JYVl`m*@( EYm@@V_m&DNPt9{.1ʉFdJ&=x&sr']>5[ 'f2A$Sԕ5ւAuG%oP z~ #PKh「s @_G7Q&f봩`FDa)^!B=T'qH3mQ;P2|@ LC:>N0CL D Kϕ=h&%29 ^OM+D_u5Hb?XȰ$tPlN ʩk[ "\=Zu^quӶ.G+O+1J3U!LUt@)y|}zx4@XpY( `@TXjA#aJLVma*@(=b{Q\ޢ'@LSF3P#Qg_C?VCHGզ>niw;M*r7DVa`ҧM̆oʚ)BrLسR4MOJmr5.{gFY\M=*& X*H}wTwd(F"ꦑ5x2 2-JBbg.Ѡ-`RU9E ?JNXlk=(I>_bޱ)K/Xb5FF.(A}F$c:iɻuj匿'ѮPC97$FW@J x9Cu&}u5 taQeNj2 su>zV3rC ]◺J W|ڊR]}17ZXT&at_&i#;P*j cNA&H,$BrES h4O܁gRӲ)C&س`, *RBĖ 1RHUkfvfٺٖ+kvdLU&MO7sĀ5)cu&"1tI Hbv^u[BXNZkt|/øn$l`@՛8RB#ʀ?JVmaǼZ/@b)F&-z*e8Ba@5ߋX=4Z4uM? a ȟB*0(/=g: `̥3kw[JԚ`ŠkBADN7D`@ivRIs!ՁIi۰ )MKh*`o{Q*_g (LI>\D -F<忮=v]ֆ+͡};i#փk/}j+mb*UŘݩ @`\‡ <z2CMT_ipF{poj\=)s.H`?XjC#?JXlek)=(ڀʮCРմUt:5-xxR\Mubmʆb]7U*Kҫ.ntB7-T X )fY<&+&fiha:{?`Yviid=ݫr @:̚\ZXD1e3&,+a0S{Ä~Җ6Lk64H7̊m&KH1)- \eМ'V>GNgGn Uvvl1*v1;Gb{cW6$FjW%-]]+U:^:8@J0(( oO\iѠD80˴V B]I,]kўI^5C@|``RV8?j=8IRlK(vՉj+R@Q4Uja.r΅ O\e0IeD!8܏ }2uG)P?59Z1vQM$j3ؙWe ъ)Lpe:Z~ڻ+ÿE#Y;o7 MEެHa>úM{|P><_:jR%Y냂H?B%X,~ רuE&pPB%B=xu:+c,[ܺj "]EJ$2L4Bm!1\З1nPx}9tްԋn a/322c蔏fj]ٕkԣZ+AֶE*}gGJM= A& . c9/ ڼoHX!'886!ȴbمU =ϸz=J54ECAy ٜ1>A/(%4=d9Bœ0#L$UYZ6X<"Un!el:zz,4j+vJJc2&c:~F{8225P%CrmFpw-"Q]ګQ7k*&Y|y`U8*Dʀ=J5WVm`K @=(",0 uU[IcMʼZ'+uܐ׽NRe]WhznD炢"|dLxOKjfڵ޻-ul-Uf(ЮZRL`Q<&:cM2k`f@ [MܓT{|'N}*׉.[є\ZZxngPH굞)Gei ~6+, &X̪Lg oXG؍GեCBl:ӬgpgfWtgW4.uH%\ǓJRl%'FF9dŞ^}sLC,%., 4G*峷TX6u+gȬ~Skr{ѣp`AU8j@ 1JO)KTLK `j~Rul xVw2!O38FT|Pr: -'QYLj~nKzb_ܑwcn@- R5z\|5l%Ќ7 fW,ތi35#XBND92V3џu-ڹ+N 84Uv(idmc ^bhiPS4ŠE3d<@&!Z&aHL%Ӓad04VQJJIamk^Rt_]c_/ Ȩlɩt˜,c+S*@@:THaY=:Cplm'Kgȋ,;D2O a@\$(`HԛZB`=JORl )("V{KI.x3H9nE"t y{uQ]b ϩU(gy*Mz ioJjRgykzDՉS%]ᑕewUZ%taȯֵT#D6- hZ_h*94襵G5ń˝*@-9EjSHN EZ1!8|fs)@DyF@ϲ#a/&Up? JTlૉ =(of0Ĵ$VÂ1F R@ U hq9z ,NzHCs M;;0\ . ܢn'yxM+wN5S:Vަg e⣘Hi#+$4anYC#1`F=E6T21HR{;YiQk8> sX>tB9M +{J d$(\!~0FK-1;i׃\ܦM߀H~@O..7D533wqJ|>OaCͲmdLZ8PI! o->@̙tV>ad=Q)ttⅾ: p[ X`DՓ9BD`? JOlXlk*)X-O.LVj`@L2 J.4 ,M#n [=UƩ-,JOd۝+<).w+glEs 7VttXL!`NXDʀcJ?TmdK*=(1H*ϭԚ 7`T2$!F )i1 I!xdu^_Kn=/=ڛHmơY<4DMFZT-IuRM*VIu-LZl 3+􁹑eRk/62pL^g$VأStd=r[ /s3y,)'D?AKT', P8A6Q&Q:~ HNjv:׮ opoWN̷O}ݏrJ]WSbWἨ9Ɋ4Sޗܪ^{Ir90]l!Y]7XBF:z0;ڬ/r)So+4Ct! p`?Xj;z%8A?Vlkj=(z;dait8ixE/8D))]QN<jJz̆/>ӳ8iDyl$z6+'̾X2/lw[[[AۚpytgG8t* &u .)1͸1E% ?u⹪Łi# RV]P"/3P̀œ"i!@(C SE4J!\֪cD)@qsemkpA - ;1uu濣'uzD|c*: ea(t0T[v6-BWms)esK^U+khV2tC`A՛8Z>=JRmaK=(7PKJkHH.J'+jQ)Kh L`f[BnW\<L@\!¾DYs&MM3>SklEM[K G6n9@dP6t`}=mƐHrD]!cOL;zs+8bj҂; b"QK0"#a$J4ZX F-(`*Ku} ؖK7!~%$b:8چ*橇IuJcF` u=PB QFM)0 e 0KqQ&Ɂb\ħ.{'r ֥^j\B`?U9ZCcJPc8OVl iA1(tb:327K4F]\vT@'P t"11ɓ݅Dj`f7zyD5`&G`ԔINx7QĶ.8QHG[bYg1 _u5EM(qGS@bR}5Vf2: Y'uMh% @_m}_s\J`Bs. "5Å[B^0A23u)7:bND7m~R?Fƪ?ix㹿qA[s&Ȃbu`x=-N"2! `-&DX5H[e3c&;#OP`A՛8Z>*`? Ja RMak=(ZꮀR2U,"( # PQ2"0~Mղw^V;O'r2^eKtRqG?< n;M.WŕۨFK`:hkKQ !iQO% QgB !E#nI&MbC( j@&؈xqK?F C`ya( 8CsjK9I䁆C梭Bz홱0N!.d솥+YgrlqK{27I؝99U+`AU8B?C?J Vma j@(H`jXRePItQ@". *] ;%,iȞH9bV5x|HNdk㦂"NtKgFIj0J4![,J0Q_0Ī+Bq>!?#E7t6Rx5F5J|Wc3Q 2s dBT|H8$e.0Oᡌi+G^uV$L IZu=4E\B0-zyuX`Xz^)影9 H8x9F!b%)_O%[W,KJ֋r`@ b0JdYU.=CRW %cR)Rn/fM3Wkr7.;Qlߴ&%| ОWUYc/ӣa .f42{3)\gҎiᅽ hd'jJ`;՛8ZFC`? JOaTl )A=)ZF@#%%-"Yl0`[3EaH3b'^ MnaȥK*Bkqg ZR'DrYC%ԛUKu*J+P.pr[o"rEOL!d+ԉ"(; (ņ7yOdi+Dw]FCN> -5N%-"@ąGr#pcN3*$LaE|(&%Lܳؤn I27CUO<~Rdt@k?&1 DF  9z; ^KU f`ࢡ "*_SNl_M#RkvCbBP*051HxU+QЋ3 `(#b@G ͅS!<6nF!ܶ Z'%}U%'lIsfjh?az$LPVF|PRD%rEjSw'fO޷~:eaL-)<䇗ѽdf|_R]ƗC#Vtu"3|Q2$NK(e73{Taiy:;T`AUY*?D P=J)YRlm iA1)QDj?޹f4/" 8ZMD0:[wbr*zn֖c/ FU9&wl˦*հ.t1 wfVk"vk$Ќ2UInB=4Z] $#BMRD_d;7.vch oՈ2k 5ŬsuE"2{Ù̐'XW#XR2EEZj)ˈ'+ZUp!k(!a(.K>ZI-q!+T'8z"(-zڴQ*KY't! Y &b?Ќs{p z:PxBD @LX=`Hn7;E{6GCVBgjr4`SYA`cJITlK i( s SԻ@0`FkhK)o48m)XojO:,QŗDn;r&eu˱.茌1TbYv]LvIIċvcwp,\1n#Qxi$QR,j^=nBj!Yd*TZOd}s `F|/HF~n!>o+Bt(EFBbMkaHdPP9v`;xCYa?s rpFq HJh5nj:^F[VHAm|?Љ͍+( %ܨ,e>3'!DZ V#H8pajH[APJ`K8D`cJTl 1(; 3jfsp@rM4o R% Z[#J +_jۖQ 1Z(1b jRS 褚׏F#w\֑kZ$6zU-.{ސ!i0!=f㹼KDS=j^TR7^ ,qerm8=Wū,.xz Ӄ AarUB0ّ>1"◄1<l˲{^x_}MWΤ3"bSZ5xE-sfeKc- j·j]n0$NG G'1y(_ ,cf"Qn$w wB}`C9- }9g9GRt- !ںCVCM6i*{Գ e^^]Ubr; '}-I xF dp@ 4'O&< !vK:g9Ξy*bz2z9JgdgJBf1y\C,ʷtr`ʍbNIƅltm'Ȟ=vRN|<ش"dy `IUY@cP? JRmeK =(/ sW,@"¢6b.j'P^&pR+S5s=ʠ"R+0ӁRQL>lRYwcY ")O]uWCBEr#nsD\Mw-=n nkUbHAa / k6dݽ9#D6 `֖TL0=m m0UP$HC?NytB1R79e6Q%;A P'.ܡyƒ*>X# |[n8Sszң-=|y$to,"ThLt?wd 6c7XcԔ!Xo)jp%o$` QZA0cJPmek-((V~R@?>bo@i*""BC*@P19z%:%.0L U#*M?śhQRNWVd^l55_RG&\άF²[QAT4)S8kq2P"5 bcl4ۆ]EN"ܛ I1 <Jx'9 ~I%:6P+R@bBn!VU؃jN`&@yjVbX|bw׸e'ziRz%HTɧ"򪔸 r";7_ w!\5v$w;SfS#\JL*e,5f[  -dS+PFz<:f!d0'd+r$>4U>M7I+VJK~4 S.59UVEK2΋,7%")YY Y@=L@e%a!?Q'ЀTaO=p6ȼ~3U At)ݮe:J3NJcFf_Vh#x ne f;J^DcGWUr^1:mWT_` P9CCPaJ3Tm`K 1(*ajc٘uj[d4 0EHAK& #9rK^]U(6,^:ߎT-mMr9}@:q,sp__ϧ}7{]D tf'j$F*FX $JEA: >JWX4o0]S%-B"4͐)\@Ļv7N5f*eW1}anRIW-,|^MZTYR+O ISMhpV$D#NcXV씳z:4z':%)lBDzQ&􉠊 $UQT8`gZV(f,^Vk\ Ao`=U8Z?dp=Jԛ8Z@0c JTmeKi-(Ǩ@0ZBBƘp E.rB Qvƨ@ř{Cߘ&5l+-qv)s R/W.M#•!S&?ȭ J5T !JhPpK3UMڷ\5(d:<Z^TRJɯ~_mnPF H@( L68(a cq@54, G[ ŬO] ھ 7YI"K{ٽ︞NXX "VHThUE년e|Ͳ!Zan'@46<rEb7\@^ei>mrv*}yU@`*]Q?̒&.cBq|:IOca` niO̻21 * e-=;2e~R›!v/.M|eWZc $)`>YZ@`aJTmeki(@Q*OňLf:YGy BvDq[҅Ȓ^uGiCJ0S+l-b?+oHp< G~e56RvXus(a#XΨ"=k  KUv;BF[B $脜0,D`U&H4O3^CTUe+ gMqUŪ)ɍ HR1`$itE$YP]%@吚jxAL`b̦5lףD_Q}='ܼ܃!OϦSB D,uI S#E)fKsG{lƛ"ަeʦDuA-LwH `'XTYpD$*q=JdRme i=(ir" >`$ \g'zgU "bly}[f-n׫W[rAja4mVSNO?b侽|ɊyEM 9ş<$δ9V4>̨>x?Ol)fП?tv[.};1MEAqZ"P<*V^)~okK>wa!=̑+/0qCu 8szT"h?RV.dV-]Ok8i~ '{Q`{ yI?`LSZ?@? J#Rmdk%(;b8$(*# a@L9T.0uohӰM]ooVi蜋 6= Bc*M!scy"uյT'N%:tQeq%jFeiXUTCVlKuk1;IHNsTf$6ޟ"96xt DVDP dL92nCaO$*Dq8ѕ6+\ZUKOc {i+͊Eel04 v= ~돟y&*ki:uOJT@F-yÁ=2?3V|\;/p(35kE_%9E)^ Y=Y{dӒxԲ+bkqҚ;ɨgebWͪV6Z7FG&28W20*?hJWZ; 1 :$+MH>^vJe??0Emu63` CYZD c J-5Rlk)=(T[9sԧ E@KLyPȚ3T͠RlEPf%BuH~n{0Ix1h+AZfK[d kSRl^ AѹLŚ*7،(CAXDdvئFuqs_uȎ[L{BK ^$-u EjI:Ҵ_//W?CHHT/њ( 1E,Fy/|LmEX($E1WVb NL ife \0Ģ#q%;@aOi۔<1 ܮ/WfXס2q$2$")=~ԙZ:HI΃!Ha*e=VG4 a9 ֖7G _q?4JDN`A8ZBC`=J%PlK=*3zoaҳ<1 [@D#KA).j:Z=j/2NRK%֗R0`).F/u)H&Nԝ֦EltꦤM(?.k(MiԺKCgsUlH=9`C *޸ü,4v5|VOmX6N< …SFP DGm"B 6ҕ3W"nnG1/;=S_yL1}UpR1p3 XL"IY\aK}AWmԳ C\s{vŇʓRMI6|??Dv. 4Br`>UXjD`cJ9Rm`k)1(ڂ]22xT&B X@dXW#t\8 %~8re <@e3o# @0QiE$%3[imh^ǜ(<PY ؓZǥ~̺h%8xL R8-%&jidunX'V,c͐m /hzz5ՠ 'xt| )(H!0(Ht^ B.3'J#T0K?g-v]AKjL6 XeʂCL29Cd``EKaINb{{v$\΂^*QE5(abs)] t%] =.aSմoYN8jb4tivo6S Jɣ5L9֖ -zidJ/*7>Bʇǚg$`=ԛjB`?J=Pli=)hݨ09Oi* !a:+`/ -tcP[nqw[|!p\bymYU'"̦`l90=f\I=Zn{Zn7Ult+QSG9mXuɼ"'gt)29eyfW{_u B?Qk wt@1nk ‰*`_!*@I *.^Apmz66 N ݡS=nPH- h<2aS{Ռ_[+ou} :0xl"9J. .4Y0Xjŕ0|%SW,((N;I밍(a͌Mӽ0Сy `@T8j@ =JP8PlK @=(<m#SXUTryBD2p%iŃGz̢xO;P-5/%eL|OKc#gOTqrðVeΝ~Ǡŝ"248X@yI.ܧ\Օ '>C#iRx1p]Nur1bmk1ڶ3 +j:7]tdo2U,i XPBALx^C45\eUqЍ<Y?vO~bO\3gB'a0Hy96؋{ u}W}~϶cښl4ҦGsw?;t{ L*ajX&B~:$=DU+t IB+\y`Aԛ8Z;`=JRlkh(ī(AWb@R;YCd(Dt7&D YX!2&h*qZa ׀{k/X*H+)c!"p:O%(ts0TO;_|>}O|]UKLE"[ aucՋ=fk^ʯmUZfb_`%eRVq\0E\IwHtHu@hz`"bP[ɬ5yK;o4ͬdB0S;Ǣ5UrHH^e#cHZw,G@)t( +,n/_.€ԢJVE#$uXrHԄΒr@;E(sKcD @:0Z NZV jqT5$AԮ*?[j?-ICCRU{bu \7a`W"ئ-D/>_geN?tIw{`@ԛj=q3JM?Nl(bۤ 1 :`D(6 A$KX }TSH aSr1Zfuq z桶~ӯG g{{mN>X]ݿT=J9u瀤ޒGP yVu c3뮐{U)b[͐owCy`$P@xVN8DWB2lu^YИۖ_R^:j zj!yez|`V!5P"9㻥IwRQ,^%P> [kLva 1ɋ? \ц ]3r˂W;y`7r4w5CJ23Ji N` A9Z<P=JI7Nlk(o1֮ DI"K ;B&(JPW U~L dLŴ|s'm,wṿkG^/^ODA o)d3DH竿zi9g_q0T,bȹP_LA4Ȅ(Jilgc9^Sȓ|DcvTLH>Ӊ'+"6)%N 0-1ɈA ^%Bhh8UFV2;')z{'VPSK-8ZJz$Kžt32)+=[>s0_%T-LCHC,ӷ0a޵8] X/Scl嶌Cv$m<,=zU!WRs`MX>AaJ=LmdK )=(=n,' ڄވ!d$$!A~D `<@IXLQq˝_$sd1Z {8b=νԅ]7ۿ뫭uRIN2$wb%x~}׋GNHAW@EY1xG,&K"xaCFꗙިL֫?.H~ӛ8jC@aJ% NlA(>Tu`4\E 2[gDPBI+ cz7q,)ۣIQ̱PճpGrD|ʪGK5UV'3UǜG'Zl`;# U ԣWJhg weSXS5` 1>){r8Wc8_H/Fu9ٕUMWLsk Qq/PlԠ5fYH %#pRꢥ @f`/vP+;9IR9nvWch`ՂYpA  ŋTbĜtS W&eTnj)lyKM Q"L `Lӛ/GPcJ17PlKi=(~+fr7qHp[Kf޸ NB `p"sKJVY8MlF󇕢Ae4%o{J笳]4YhlrįD`Nԛ:F$*q?J5PlaK)`=(׊OitF! )VW8$X2_Ŗ,V^@ai4pSXٽ}GfeHqDLɖk֍k=IukNtS̵A/3'rCG@6ky XP!^Ρ&`[lC6I vܿ)=/7]/A)]5I$ECsDW eO-贇 tAP\vReZXa7 G\Ctc$B* _x2z۱KSeb^E̙i sE3NAЁ9ədr3t"$Ui_uiJęRYu`AқRG0aJ5Jlak h͇(Y^,e¨9(}Da틫G>lEis٦Crhxʷ=S69ÇJ-SШy޷jV]K}E;s*AVZHr2vj V螀4V,8㍽![%J IN` h\s=ڲ>Mֶr@nnvʏ$ gJYL~ }-F"+@ߞ),*[A473@g֋(J[?%){.WjK{2'dPMCzV>+szlԀ5ƨ)Ku =f QWb6 ƌӦn,n,3ܩܛ rgp?S`L8ICaJ$Ll᫁E(͌=(ߏ7nrvSUހ_e\Jx8 $Rwż8ԆRzKkpE ğ.X -W8+#/yj"򑩢&ϪdQ1^NDb\p >Yb܆jN:5zWEr$e #b>܀IJ˩F# Pi]e^V 0epR_7`V3R:JÊcaJ xLl=&=(i¤e:HtDQSemLzm;ѽ檀&,e;V):$yQiA,R%2>~E癥U*Qf`FOF(=R?R) Hoc }xw*7FM(PTj%q`U#e bG>ӗo8 = zzn< k_OR PU?`Ͻq;ԐsXd.:*s&! znJ_02510<&`1 V9 J26D.Aw޵7R-|PTn?Z#ϥ(Zl^!pJW!sp96A7ʅBBF`Qo.uKSСH Q[4lDvQ:`:R8:OS=JJlᩁK͌(.lk1=s7?)4R9_UCn)~W>֯ ԁ);jC/عC/m!BMtB@M]Z_YZw]tB"B"Ԛ*80܋ fzDQ79sSi5&, 5!OKR"i-(H+!C̟A0CCdCf\c AHsfw`cáH.L4I2(mԿr݆XBQ!OK@#۪c/I5G#?/לKhcN{`y@ӛjODAcJ3Ll&!=aTD6)ƾoFʿ:z"1ӎE0ͺr#+ Zs[fYwFIz ¥q%w$,I~Q~1~֩j^Ō= HfbM8G Q`W!ЪfiYSQOD &g+tӝM(BgϩH~~P+2;Op9◛4` KYؠ.pf sqΐfÉҊYk}]xPą`*0Lι?;V3xOw/l,F3*9ɹ/JĤ𧙠g`0ESb@ aJ/Tl= h5((;'A2Biɧ.-NNfh. VFj%SfY7f=5<%Dk9P|ZAicjifcSv|98?D,4QIVUPwEBM>{MoiN1h+U@!-ŞtWCLuBϪQqkXF I׮V"NTu539r }l! 4YQFL` pzZ=J?QWC".b哺(\la4C,t CqyE^EG-4UٰUE6CG.NSx%`񺑗8݀Ab/aBvk{PR6Hy|{`M֙BA aJ -Vg -(Vu%ɬ'eV<QeUUgj z=߿+vy0s5&2ܖjI$QXZm\4K[^_Se^?q CD%+ThyrRcM( y Howj[篃M zlT\)'>ޚ(uҘ @+ZJ g) )N' {D'=^:MEϴ^|]P _g*B@i4,Յʫ!* 3(l17}7Ƶ@:H0-aXEox߶ r&DVmL`j7/&\TWJ`IUJL$gJ1UL-+%-(  YF#w4SW>ܙ8ڪ}KNnS/. ,bwa KU4`:| t??vنi_>~\kFATexJ>amZDWm ̉HgN) `pC/ p\dᑢn#$c^=q[nːr@/<>F`e$-mmv/Y3s3F};kV=X}% 1lxe?7gi}޼ޛmݛe~ff́ 1„BWOݔ ݽk5c 5W aV)K;zas[U{_A5DM;]cK6`IԛbF$aJN%R虋(A!1Ffo ix@q҇yӑ-Bduh1"$7E\L5O%@@$12YisQ&*۩UL۫O>WՐ1:^xy.>(|-׬@;_b,V!+tk .DžEܰ+b2(vuU{?[`v}UϳVW[k6z ӭx[?:tq _8z '}sugo]lޟϷ9wTXg?S<Bӳwvn_YR"M8HguE 4c2 ө3]I+\ېVj`OәzEZaLU Ll!$0^`1z{AȮS:~^j"DzOj< %ؔoPsUp e:~7WwڻO F+n(wIA5U( xd4Y8&=<@WombqOv],J)y|&1?"P@uWX`|XT9KpO&aLM'Nf! !0 \ll]m\ h&>Z^a<\$TA5,ϢYQ%3ݞ =FB7(L|(jeKݓIpO+XÎU4^E*J P{uy=_P1hl3bBBc>gMh>n#T]n>x89&m8!X/$ydͻ{lV~ٮD*X[[ΫU"!ĽV~?`CQ2Y&a\ I Dck&q2XulO !PY;aAt1WӛSPC}>ȳthY݌"'w^WQ4.\20A4ͮ%)C{ɩpFQ5!ŀxs,ӽqs@8%| IUK-\{1ٌ+SVTQm,r(@0daVY OBH.4H\$C:&r2w)t"# 6-M('}u7w0פC( ?Z5T5{"lDs+;JF@H yMyxskF9`%Js޲8%@DTf4 .-'vޱٶ\^m]RYTVim27) ia%'x`@Pee\ Bf k}&%pk# &-xAv1^VDXd#UnqvwEKs--E ܪP95o=nobJS{ZS_^[ns`:ɊqAO/hg 1f@0hv|g#6W4YOx)#z3 R8hp`E b8%Qlo&|}RMzę1\ڈW8 &X]D" Po ("?`]=2Va(\ >gk- q?. dǹS,ʬfcp2Vlyi5f e"+fC^Ev1`YQsr}\5/f\-NW6GR /Lű h0.^SY".`Lҕ7=Ϸ~@21J`hٗa\L,'%pj MC}=`zP&( Hpt"l-ixiٗ=ZdG4mcb%ͪ?Ew\. ) _y^HIBDPg9׳m2㐖Gݳ*1̌~Bv,P@qy`"r֦K*LH d=J5,#Ʋ>h2@fikt~W[(>}f|߿ۉT \7XY8ttj ,ٜt)Ig?M* >}322e. w/W}(P<[u鬙"pKLY4HRn=X˹`aIM+Ty`=)\ 2gˉ>%pXVΦ W#V8rSBG6w}3Oɋ퍒wn Yӄr*QrOSmo]LPLuDL/>]G*hBڒpD4M HJN}d۶z׭ҵʧWY;,*5Bm)h*&I7e;GĀKFd64G8/ή]P 䣭K繞'{9/!ڈ :vfM+J_=ܴ,R-FoSMǿiqg<4\qH-JM@$9 <]*uZ~Q-ٻ{0|re]d~BWרj˴vDt`J2QF9P1,\M[2g CeD%0֤(s4=@(w .>ru-AF<|=N+ZOPCYt#lvJ]&wS5xS};>gz2'_B͵8͉ävz"%i &gb` ;J)9쿶/=^*ȫ(v##9Tj+*t(yUܩ ΐz_P§xqacT$hkndvq\rջ#ʤ`SsL,K:%'vZvz*_%3!Bi$}~YNfR!L{`6v:_^׽ͽ])Oc\,-U2p esjXE'+`+N9(RF)Q=L MC0gGq 2ַ1Fp!N@0~  XaaݵG+])3@h &I"qB p#k[ͷFD+zv m{$PeYƒgu(٢p7_vc>N?-/NOJAw%cn5|Tv3 JPp{+BR4@Lc%*n?(dBK/*|cZvrOZ˛zO~i;4mK (`DDDȒhR2}N(Iu5`@ʱ2RR= L Q53Dkfd%p.b,?5zσicע@‘f۪:Um|eV] K 9e5ADHyntԩP/S-~:J[Vg(i\ٍv_Y^?*Ul|?AD10h.}SȚm&v,a(rv k@ Ȑ9YT1Pz=¿w.;M=Ī- aA>Zxb|il쥚66x A=^y Uzl W8+ $a`aMsyJu[#q䅶&pd-0_X <=F%jBBb"`=HҩzE+6I aĨ3I&,^Mۛ[3w>h9zs7;3,_=4oQF=a@rdɬqIÜKקq)Աz{y \l|#f#5j.CI'&E hWUDN2&f]H# c jPkpe7MsїL 9^$LوL9[[OlOvy3 B@VpV;eZ,uSCC=u/B D|sƐH9b}kkY`WJ3rO10LO(,2p&V(I#+ܥUFdN \Uf)?ڭVDz.)Z\;`GB =zoY{5qw9/{7ʨ{<긟ػmq V Zvp0af'Rzu?N[\ B F<TJm/S$j5|6N]U) {ŅJ._1RF6si?V*F&2J<7b jzƈ,uO DtNQL˼M~Xmj|W}΢MrgUM[W= $kv Jk$h e(Ǿ?Mo5WRg(L5CeU+?in4&H2CPz&rї7eXR,77653:|ܦSw,D>'%)zZ Z;K<ж hS(a); !\Oe QԥY]y7HAj2yI Jbs:9;aaH՝}U}b+P3_- |`~~Zvaׯ߿4y1GMar ƥ;qpPL6HUVdi}`qBI92Oy&0\ $f$ɉcH0J"R)8U@<mtGJKε&=t;]T=E  St$ ,$̌j\\ 嗣ٯvbѹ@?@&<6ZpdB@Pk` 9q:K%jblpN v).wR-vQ;.]C]~dvKvrΙOܸ& ۸VeN;x|ܧ&iA )5xSTki/vmޯD2u`LHt(i׸_ھݿivl=EM$Ry =2,<3.3.3 dropbox-sdk-python-12.0.2/test/unit/000077500000000000000000000000001462737130500173155ustar00rootroot00000000000000dropbox-sdk-python-12.0.2/test/unit/test_dropbox_unit.py000066400000000000000000000510311462737130500234420ustar00rootroot00000000000000#!/usr/bin/env python import mock import pickle import pytest # Tests OAuth Flow from dropbox import DropboxOAuth2Flow, session, Dropbox, create_session from dropbox.dropbox_client import BadInputException, DropboxTeam from dropbox.exceptions import AuthError from dropbox.oauth import OAuth2FlowNoRedirectResult, DropboxOAuth2FlowNoRedirect from datetime import datetime, timedelta APP_KEY = 'dummy_app_key' APP_SECRET = 'dummy_app_secret' ACCESS_TOKEN = 'dummy_access_token' REFRESH_TOKEN = 'dummy_refresh_token' EXPIRES_IN = 14400 ACCOUNT_ID = 'dummy_account_id' USER_ID = 'dummy_user_id' ADMIN_ID = 'dummy_admin_id' TEAM_MEMBER_ID = 'dummy_team_member_id' SCOPE_LIST = ['files.metadata.read', 'files.metadata.write'] EXPIRATION = datetime.utcnow() + timedelta(seconds=EXPIRES_IN) CA_CERTS = "/dummy/path/ca.crt" EXPIRATION_BUFFER = timedelta(minutes=5) class TestOAuth: def test_authorization_url(self): flow_obj = DropboxOAuth2Flow(APP_KEY, APP_SECRET, 'http://localhost/dummy', 'dummy_session', 'dbx-auth-csrf-token') for redirect_uri in [None, 'localhost']: for state in [None, 'state']: for token_access_type in [None, 'legacy', 'offline', 'online']: for scope in [None, SCOPE_LIST]: for include_granted_scopes in [None, 'user', 'team']: for code_challenge in [None, 'mychallenge']: authorization_url = \ flow_obj._get_authorize_url(redirect_uri, state, token_access_type, scope, include_granted_scopes, code_challenge) assert authorization_url\ .startswith('https://{}/oauth2/authorize?' .format(session.WEB_HOST)) assert 'client_id={}'.format(APP_KEY) in authorization_url assert 'response_type=code' in authorization_url if redirect_uri: assert 'redirect_uri={}'.format(redirect_uri) \ in authorization_url else: assert 'redirect_uri' not in authorization_url if state: assert 'state={}'.format(state) in authorization_url else: assert 'state' not in authorization_url if token_access_type: assert 'token_access_type={}'.format(token_access_type) \ in authorization_url else: assert 'token_access_type' not in authorization_url if scope: assert 'scope={}'.format("+".join(scope)) \ in authorization_url else: assert 'scope' not in authorization_url if include_granted_scopes and scope: assert 'include_granted_scopes={}'\ .format(include_granted_scopes)\ in authorization_url else: assert 'include_granted_scopes' not in authorization_url if code_challenge: assert 'code_challenge_method=S256' in authorization_url assert 'code_challenge={}'.format(code_challenge)\ in authorization_url else: assert 'code_challenge_method' not in authorization_url assert 'code_challenge' not in authorization_url def test_authorization_with_ca_certs(self): DropboxOAuth2Flow(APP_KEY, APP_SECRET, 'http://localhost/dummy', 'dummy_session', 'dbx-auth-csrf-token', ca_certs=CA_CERTS) def test_authorization_url_legacy_default(self): flow_obj = DropboxOAuth2Flow(APP_KEY, APP_SECRET, 'http://localhost/dummy', 'dummy_session', 'dbx-auth-csrf-token') legacy_default_authorization_url = flow_obj._get_authorize_url(None, None, 'legacy') assert legacy_default_authorization_url.startswith('https://{}/oauth2/authorize?' .format(session.WEB_HOST)) assert 'client_id={}'.format(APP_KEY) in legacy_default_authorization_url assert 'response_type=code' in legacy_default_authorization_url def test_authorization_url_invalid_token_type_raises_assertion_error(self): flow_obj = DropboxOAuth2Flow(APP_KEY, APP_SECRET, 'http://localhost/dummy', 'dummy_session', 'dbx-auth-csrf-token') with pytest.raises(AssertionError): flow_obj._get_authorize_url(None, None, 'invalid') def test_authorization_url_online_token_type(self): flow_obj = DropboxOAuth2Flow(APP_KEY, APP_SECRET, 'http://localhost/dummy', 'dummy_session', 'dbx-auth-csrf-token') online_authorization_url = flow_obj._get_authorize_url(None, None, 'online') assert online_authorization_url.startswith('https://{}/oauth2/authorize?' .format(session.WEB_HOST)) assert 'client_id={}'.format(APP_KEY) in online_authorization_url assert 'response_type=code' in online_authorization_url assert 'token_access_type=online' in online_authorization_url def test_authorization_url_offline_token_type(self): flow_obj = DropboxOAuth2Flow(APP_KEY, APP_SECRET, 'http://localhost/dummy', 'dummy_session', 'dbx-auth-csrf-token') offline_authorization_url = flow_obj._get_authorize_url(None, None, 'offline') assert offline_authorization_url.startswith('https://{}/oauth2/authorize?' .format(session.WEB_HOST)) assert 'client_id={}'.format(APP_KEY) in offline_authorization_url assert 'response_type=code' in offline_authorization_url assert 'token_access_type=offline' in offline_authorization_url def test_authorization_url_with_scopes_and_granted(self): flow_obj = DropboxOAuth2Flow(APP_KEY, APP_SECRET, 'http://localhost/dummy', 'dummy_session', 'dbx-auth-csrf-token') scopes = ['account_info.read', 'files.metadata.read'] scope_authorization_url = flow_obj._get_authorize_url(None, None, 'offline', scopes, 'user') assert scope_authorization_url.startswith('https://{}/oauth2/authorize?' .format(session.WEB_HOST)) assert 'client_id={}'.format(APP_KEY) in scope_authorization_url assert 'response_type=code' in scope_authorization_url assert 'token_access_type=offline' in scope_authorization_url assert 'scope=account_info.read+files.metadata.read' in scope_authorization_url assert 'include_granted_scopes=user' in scope_authorization_url def test_authorization_url_with_scopes(self): flow_obj = DropboxOAuth2Flow(APP_KEY, APP_SECRET, 'http://localhost/dummy', 'dummy_session', 'dbx-auth-csrf-token') scopes = ['account_info.read', 'files.metadata.read'] scope_authorization_url = flow_obj._get_authorize_url(None, None, 'offline', scopes) assert scope_authorization_url.startswith('https://{}/oauth2/authorize?' .format(session.WEB_HOST)) assert 'client_id={}'.format(APP_KEY) in scope_authorization_url assert 'response_type=code' in scope_authorization_url assert 'token_access_type=offline' in scope_authorization_url assert 'scope=account_info.read+files.metadata.read' in scope_authorization_url assert 'include_granted_scopes' not in scope_authorization_url def test_OAuth2FlowNoRedirectResult_legacy(self): # Test legacy result result_obj = OAuth2FlowNoRedirectResult(ACCESS_TOKEN, ACCOUNT_ID, USER_ID, None, None, SCOPE_LIST) assert result_obj.access_token == ACCESS_TOKEN assert not result_obj.refresh_token assert not result_obj.expires_at def test_OAuth2FlowNoRedirectResult_offline(self): # Test offline result result_obj = OAuth2FlowNoRedirectResult(ACCESS_TOKEN, ACCOUNT_ID, USER_ID, REFRESH_TOKEN, EXPIRES_IN, SCOPE_LIST) assert result_obj.access_token == ACCESS_TOKEN assert result_obj.refresh_token == REFRESH_TOKEN assert abs(result_obj.expires_at - EXPIRATION) < EXPIRATION_BUFFER assert result_obj.account_id == ACCOUNT_ID assert result_obj.user_id == USER_ID assert result_obj.scope == SCOPE_LIST def test_OAuth2FlowNoRedirectResult_online(self): # Test online result result_obj = OAuth2FlowNoRedirectResult(ACCESS_TOKEN, ACCOUNT_ID, USER_ID, None, EXPIRES_IN, SCOPE_LIST) assert result_obj.access_token == ACCESS_TOKEN assert not result_obj.refresh_token assert abs(result_obj.expires_at - EXPIRATION) < EXPIRATION_BUFFER def test_OAuth2FlowNoRedirectResult_copy(self): # Test constructor for copying object result_obj = OAuth2FlowNoRedirectResult(ACCESS_TOKEN, ACCOUNT_ID, USER_ID, REFRESH_TOKEN, EXPIRATION, SCOPE_LIST) assert result_obj.expires_at == EXPIRATION @pytest.fixture(scope='function') def auth_flow_offline_with_scopes(self, mocker): auth_flow = DropboxOAuth2FlowNoRedirect(APP_KEY, APP_SECRET, token_access_type='offline', scope=SCOPE_LIST) session = mock.MagicMock() post_response = mock.MagicMock(status_code=200) post_response.json.return_value = {"access_token": ACCESS_TOKEN, "refresh_token": REFRESH_TOKEN, "expires_in": EXPIRES_IN, "uid": USER_ID, "account_id": ACCOUNT_ID, "scope": " ".join(SCOPE_LIST)} mocker.patch.object(session, 'post', return_value=post_response) auth_flow.requests_session = session return auth_flow def test_NoRedirect_whole_flow(self, auth_flow_offline_with_scopes): authorization_url = auth_flow_offline_with_scopes.start() assert authorization_url.startswith('https://{}/oauth2/authorize?' .format(session.WEB_HOST)) assert 'client_id={}'.format(APP_KEY) in authorization_url assert 'response_type=code' in authorization_url mycode = 'test oauth code' auth_result = auth_flow_offline_with_scopes.finish(mycode) assert auth_result.access_token == ACCESS_TOKEN assert auth_result.refresh_token == REFRESH_TOKEN assert abs(auth_result.expires_at - EXPIRATION) < EXPIRATION_BUFFER assert auth_result.user_id == USER_ID assert auth_result.account_id == ACCOUNT_ID assert auth_result.scope == " ".join(SCOPE_LIST) assert auth_flow_offline_with_scopes.requests_session.post.call_count == 1 token_call_args = auth_flow_offline_with_scopes.requests_session.post.call_args_list assert len(token_call_args) == 1 first_call_args = token_call_args[0] assert first_call_args[0][0] == 'https://{}/oauth2/token'.format(session.API_HOST) call_data = first_call_args[1]['data'] assert call_data['client_id'] == APP_KEY assert call_data['grant_type'] == 'authorization_code' assert call_data['client_secret'] == APP_SECRET assert call_data['code'] == mycode class TestClient: @pytest.fixture(scope='function') def session_instance(self, mocker): session_obj = create_session() post_response = mock.MagicMock(status_code=200) post_response.json.return_value = {"access_token": ACCESS_TOKEN, "expires_in": EXPIRES_IN} mocker.patch.object(session_obj, 'post', return_value=post_response) return session_obj @pytest.fixture(scope='function') def session_instance_with_ca_certs(self, mocker): session_obj = create_session(ca_certs=CA_CERTS) post_response = mock.MagicMock(status_code=200) post_response.json.return_value = {"access_token": ACCESS_TOKEN, "expires_in": EXPIRES_IN} mocker.patch.object(session_obj, 'post', return_value=post_response) return session_obj @pytest.fixture(scope='function') def invalid_grant_session_instance(self, mocker): session_obj = create_session() post_response = mock.MagicMock(status_code=400) post_response.json.return_value = {"error": "invalid_grant"} mocker.patch.object(session_obj, 'post', return_value=post_response) return session_obj def test_default_Dropbox_raises_assertion_error(self): with pytest.raises(BadInputException): # Requires either access token or refresh token Dropbox() def test_Dropbox_with_refresh_only_raises_assertion_error(self): with pytest.raises(BadInputException): # Refresh tokens also require app key and secret Dropbox(oauth2_refresh_token=REFRESH_TOKEN) def test_Dropbox_with_legacy_token(self, session_instance): Dropbox(oauth2_access_token=ACCESS_TOKEN, session=session_instance) def test_Dropbox_with_valid_online_token(self, session_instance): # Test Online Case w/ valid access Dropbox(oauth2_access_token=ACCESS_TOKEN, oauth2_access_token_expiration=EXPIRATION, session=session_instance) def test_Dropbox_with_expired_online_token(self, session_instance): # Test Online Case w/ invalid access Dropbox(oauth2_access_token=ACCESS_TOKEN, oauth2_access_token_expiration=EXPIRATION - timedelta(weeks=1), session=session_instance) def test_Dropbox_with_valid_offline_token(self, session_instance): # Test Offline Case w/ valid access Dropbox(oauth2_access_token=ACCESS_TOKEN, oauth2_refresh_token=REFRESH_TOKEN, oauth2_access_token_expiration=EXPIRATION, app_key=APP_KEY, app_secret=APP_SECRET, session=session_instance) def test_Dropbox_with_expired_offline_token(self, session_instance): # Test Offline Case w/ invalid access Dropbox(oauth2_access_token=ACCESS_TOKEN, oauth2_refresh_token=REFRESH_TOKEN, oauth2_access_token_expiration=EXPIRATION - timedelta(weeks=1), app_key=APP_KEY, app_secret=APP_SECRET, session=session_instance) def test_Dropbox_with_only_refresh(self, session_instance): # Test Offline Case w/ only refresh Dropbox(oauth2_refresh_token=REFRESH_TOKEN, app_key=APP_KEY, app_secret=APP_SECRET, session=session_instance) def test_Dropbox_with_only_app_key_and_secret(self, session_instance): Dropbox(app_key=APP_KEY, app_secret=APP_SECRET) def test_check_refresh_with_legacy_token(self, session_instance): dbx = Dropbox(oauth2_access_token=ACCESS_TOKEN, session=session_instance) dbx.check_and_refresh_access_token() session_instance.post.assert_not_called() def test_check_refresh_with_valid_online_token(self, session_instance): # Test Online Case w/ valid access dbx = Dropbox(oauth2_access_token=ACCESS_TOKEN, oauth2_access_token_expiration=EXPIRATION, session=session_instance) dbx.check_and_refresh_access_token() session_instance.post.assert_not_called() def test_check_refresh_with_expired_online_token(self, session_instance): # Test Online Case w/ invalid access dbx = Dropbox(oauth2_access_token=ACCESS_TOKEN, oauth2_access_token_expiration=EXPIRATION - timedelta(weeks=1), session=session_instance) dbx.check_and_refresh_access_token() session_instance.post.assert_not_called() def test_check_refresh_with_valid_offline_token(self, session_instance): # Test Offline Case w/ valid access dbx = Dropbox(oauth2_access_token=ACCESS_TOKEN, oauth2_refresh_token=REFRESH_TOKEN, oauth2_access_token_expiration=EXPIRATION, app_key=APP_KEY, app_secret=APP_SECRET, session=session_instance) dbx.check_and_refresh_access_token() session_instance.post.assert_not_called() def test_check_refresh_with_expired_offline_token(self, session_instance): # Test Offline Case w/ invalid access dbx = Dropbox(oauth2_access_token=ACCESS_TOKEN, oauth2_refresh_token=REFRESH_TOKEN, oauth2_access_token_expiration=EXPIRATION - timedelta(weeks=1), app_key=APP_KEY, app_secret=APP_SECRET, session=session_instance) dbx.check_and_refresh_access_token() assert session_instance.post.call_count == 1 def test_check_refresh_with_only_refresh(self, session_instance): # Test Offline Case w/ only refresh dbx = Dropbox(oauth2_refresh_token=REFRESH_TOKEN, app_key=APP_KEY, app_secret=APP_SECRET, session=session_instance) dbx.check_and_refresh_access_token() assert session_instance.post.call_count == 1 def test_refresh_token_with_no_expiration(self, session_instance): # Test refresh token is refreshed when not given expiration dbx = Dropbox(oauth2_access_token=ACCESS_TOKEN, oauth2_refresh_token=REFRESH_TOKEN, oauth2_access_token_expiration=None, app_key=APP_KEY, app_secret=APP_SECRET, session=session_instance) dbx.check_and_refresh_access_token() assert session_instance.post.call_count == 1 assert dbx._oauth2_access_token_expiration def test_check_refresh_with_invalid_grant(self, invalid_grant_session_instance): dbx = Dropbox(oauth2_refresh_token=REFRESH_TOKEN, app_key=APP_KEY, app_secret=APP_SECRET, session=invalid_grant_session_instance) with pytest.raises(AuthError) as e: dbx.check_and_refresh_access_token() assert invalid_grant_session_instance.post.call_count == 1 assert e.error.is_invalid_access_token() def test_check_Dropbox_with_ca_certs(self, session_instance_with_ca_certs): Dropbox(oauth2_access_token=ACCESS_TOKEN, oauth2_access_token_expiration=EXPIRATION, session=session_instance_with_ca_certs) def test_team_client_refresh(self, session_instance): dbx = DropboxTeam(oauth2_refresh_token=REFRESH_TOKEN, app_key=APP_KEY, app_secret=APP_SECRET, session=session_instance) dbx.check_and_refresh_access_token() assert session_instance.post.call_count == 1 def test_team_client_as_admin(self, session_instance): dbx = DropboxTeam(oauth2_refresh_token=REFRESH_TOKEN, app_key=APP_KEY, app_secret=APP_SECRET, session=session_instance) dbx.as_admin(ADMIN_ID) def test_team_client_as_user(self, session_instance): dbx = DropboxTeam(oauth2_refresh_token=REFRESH_TOKEN, app_key=APP_KEY, app_secret=APP_SECRET, session=session_instance) dbx.as_user(TEAM_MEMBER_ID) class TestSession: def test_pickle_session(self): session_obj = create_session() pickled_session = pickle.dumps(session_obj) pickle.loads(pickled_session) dropbox-sdk-python-12.0.2/tox.ini000066400000000000000000000031731462737130500166760ustar00rootroot00000000000000[tox] envlist = py{27,36,37,38,39-dev,py,py3},check,lint,docs,test_unit,coverage skip_missing_interpreters = true [flake8] # See ignore = E128,E301,E302,E305,E402,W503,W504 max-line-length = 100 per-file-ignores = dropbox/stone_base.py: F401, F403 dropbox/stone_validators.py: F401, F403 dropbox/stone_serializers.py: F401, F403 [testenv:test_integration] commands = pytest test/integration/ passenv = DROPBOX_REFRESH_TOKEN DROPBOX_APP_KEY DROPBOX_APP_SECRET DROPBOX_DOMAIN DROPBOX_TEAM_TOKEN DROPBOX_TOKEN DROPBOX_WEB_HOST DROPBOX_SHARED_LINK deps = pip -rtest/requirements.txt [testenv:check] commands = python setup.py sdist bdist_wheel twine check dist/* deps = twine usedevelop = true [testenv:lint] description = format the code base to adhere to our styles, and complain about what we cannot do automatically commands = flake8 setup.py dropbox example test deps = flake8 -rtest/requirements.txt usedevelop = true [testenv:coverage] commands = coverage run --rcfile=.coveragerc -m pytest test/unit/test_dropbox_unit.py coverage report deps = -rtest/requirements.txt [testenv:codecov] commands = coverage run --rcfile=.coveragerc -m pytest test/unit/test_dropbox_unit.py coverage xml deps = -rtest/requirements.txt [testenv:test_unit] commands = pytest test/unit/ deps = -rtest/requirements.txt [testenv:docs] description = invoke sphinx-build to build the HTML docs extras = docs commands = sphinx-build -b html docs build/html deps = sphinx