• Get Review Board
  • What's New
  • Products
  • Review Board Code review, image review, and document review
  • Documentation
  • Release Notes
  • Power Pack Enterprise integrations, reports, and enhanced document review
  • Try for 60 Days
  • Purchase
  • RBCommons Review Board as a Service, hosted by us
  • Pricing
  • RBTools Command line tools and Python API for Review Board
  • Documentation
  • Release Notes
  • Review Bot Automated code review, connecting tools you already use
  • Documentation
  • Release Notes
  • RB Gateway Manage Git and Mercurial repositories in your network
  • Documentation
  • Release Notes
  • Learn and Explore
  • What is Code Review?
  • Documentation
  • Frequently Asked Questions
  • Support Options
  • Third-Party Integrations
  • Demo
  • Review Board RBTools Power Pack Review Bot Djblets RB Gateway
    1. RBTools 5.x
    2. Version 5.x
    3. Version 4.x
    4. Version 3.x
    5. Version 2.0
    6. Version 1.0
    7. Version 0.7
    8. Version 0.6
    9. Version 0.5
    10. RBTools Python API
    11. Module and Class References
    12. rbtools.api.transport
  • Home
  • Installing RBTools
  • rbt Command
  • Configuration
  • Authenticating to Review Board
  • Repository Configuration
  • Per-User Configuration
  • Team Foundation Server Configuration
  • Commands
  • alias
  • api-get
  • attach
  • clear-cache
  • close
  • diff
  • install
  • land
  • list-repo-types
  • login
  • logout
  • patch
  • post
  • publish
  • review
  • setup-completion
  • setup-repo
  • stamp
  • status
  • status-update
  • RBTools Workflows
  • Using RBTools With Cliosoft SOS
  • Using RBTools with Git
  • Using RBTools with HCL VersionVault and IBM ClearCase
  • Using RBTools With Perforce
  • RBTools Python API
  • Overview of the Python API Client
  • Tutorial
  • Resource-Specific Functionality
  • Module and Class References
  • rbtools
  • rbtools.deprecation
  • rbtools.api
  • rbtools.api.cache
  • rbtools.api.capabilities
  • rbtools.api.client
  • rbtools.api.decode
  • rbtools.api.decorators
  • rbtools.api.errors
  • rbtools.api.factory
  • rbtools.api.request
  • rbtools.api.resource
  • rbtools.api.transport
  • rbtools.api.transport.sync
  • rbtools.api.utils
  • rbtools.clients
  • rbtools.clients.base
  • rbtools.clients.base.patch
  • rbtools.clients.base.registry
  • rbtools.clients.base.repository
  • rbtools.clients.base.scmclient
  • rbtools.clients.errors
  • rbtools.clients.bazaar
  • rbtools.clients.clearcase
  • rbtools.clients.cvs
  • rbtools.clients.git
  • rbtools.clients.mercurial
  • rbtools.clients.perforce
  • rbtools.clients.plastic
  • rbtools.clients.sos
  • rbtools.clients.svn
  • rbtools.clients.tfs
  • rbtools.config
  • rbtools.config.config
  • rbtools.config.loader
  • rbtools.diffs
  • rbtools.diffs.patches
  • rbtools.diffs.patcher
  • rbtools.diffs.tools
  • rbtools.diffs.tools.backends
  • rbtools.diffs.tools.backends.gnu
  • rbtools.diffs.tools.base
  • rbtools.diffs.tools.base.diff_file_result
  • rbtools.diffs.tools.base.diff_tool
  • rbtools.diffs.tools.errors
  • rbtools.diffs.tools.registry
  • rbtools.diffs.writers
  • rbtools.commands
  • rbtools.commands.main
  • rbtools.commands
  • rbtools.commands.base
  • rbtools.commands.base.commands
  • rbtools.commands.base.errors
  • rbtools.commands.base.options
  • rbtools.commands.base.output
  • rbtools.commands.alias
  • rbtools.commands.api_get
  • rbtools.commands.attach
  • rbtools.commands.clearcache
  • rbtools.commands.close
  • rbtools.commands.diff
  • rbtools.commands.info
  • rbtools.commands.install
  • rbtools.commands.land
  • rbtools.commands.list_repo_types
  • rbtools.commands.login
  • rbtools.commands.logout
  • rbtools.commands.patch
  • rbtools.commands.post
  • rbtools.commands.publish
  • rbtools.commands.review
  • rbtools.commands.setup_completion
  • rbtools.commands.setup_repo
  • rbtools.commands.stamp
  • rbtools.commands.status
  • rbtools.commands.status_update
  • rbtools.hooks
  • rbtools.hooks.common
  • rbtools.hooks.git
  • rbtools.testing
  • rbtools.testing.api
  • rbtools.testing.api.payloads
  • rbtools.testing.api.transport
  • rbtools.testing.commands
  • rbtools.testing.testcase
  • rbtools.testing.transport
  • rbtools.utils
  • rbtools.utils.aliases
  • rbtools.utils.browser
  • rbtools.utils.checks
  • rbtools.utils.commands
  • rbtools.utils.console
  • rbtools.utils.diffs
  • rbtools.utils.encoding
  • rbtools.utils.errors
  • rbtools.utils.filesystem
  • rbtools.utils.graphs
  • rbtools.utils.mimetypes
  • rbtools.utils.process
  • rbtools.utils.repository
  • rbtools.utils.review_request
  • rbtools.utils.source_tree
  • rbtools.utils.users
  • Glossary
  • General Index
  • Python Module Index
  • Release Notes
  • rbtools.api.transport¶

    Classes

    Transport(url, *args, **kwargs)

    Base class for API Transport layers.

    class rbtools.api.transport.Transport(url: str, *args, **kwargs)[source]¶

    Bases: object

    Base class for API Transport layers.

    An API Transport layer acts as an intermediary between the API user and the Resource objects. All access to a resource’s data, and all communication with the Review Board server are handled by the Transport. This allows for Transport implementations with unique interfaces which operate on the same underlying resource classes. Specifically, this allows for both a synchronous, and an asynchronous implementation of the transport.

    __init__(url: str, *args, **kwargs) → None[source]¶

    Initialize the transport.

    Parameters:
    • url (str) – The URL of the Review Board server

    • *args (tuple, unused) – Positional arguments, reserved for future expansion.

    • **kwargs (tuple, unused) – Keyword arguments, reserved for future expansion.

    get_root(*args, **kwargs) → Optional[RootResource][source]¶

    Return the root API resource.

    Parameters:
    • *args (tuple, unused) – Positional arguments (may be used by the transport implementation).

    • **kwargs (dict, unused) – Keyword arguments (may be used by the transport implementation).

    Returns:

    The root API resource.

    Return type:

    rbtools.api.resource.Resource

    get_path(path: str, *args, **kwargs) → Optional[Resource][source]¶

    Return the API resource at the provided path.

    Parameters:
    • path (str) – The path to the API resource.

    • *args (tuple, unused) – Positional arguments (may be used by the transport implementation).

    • **kwargs (dict, unused) – Keyword arguments (may be used by the transport implementation).

    Returns:

    The resource at the given path.

    Return type:

    rbtools.api.resource.Resource

    get_url(url: str, *args, **kwargs) → Optional[Resource][source]¶

    Return the API resource at the provided URL.

    The URL is not guaranteed to be part of the configured Review Board domain.

    Parameters:
    • url (str) – The URL to the API resource.

    • *args (tuple, unused) – Positional arguments (may be used by the transport implementation).

    • **kwargs (dict, unused) – Keyword arguments (may be used by the transport implementation).

    Returns:

    The resource at the given path.

    Return type:

    rbtools.api.resource.Resource

    login(username: Optional[str] = None, password: Optional[str] = None, api_token: Optional[str] = None, *args, **kwargs) → None[source]¶

    Log in to the Review Board server.

    Changed in version 5.0: Added an optional api_token parameter and made the username and password parameters optional to allow logging in with either a username and password or API token.

    Parameters:
    • username (str, optional) – The username to log in with.

    • password (str, optional) – The password to log in with.

    • api_token (str, optional) – The API token to log in with.

    • *args (tuple, unused) – Positional arguments (may be used by the transport implementation).

    • **kwargs (dict, unused) – Keyword arguments (may be used by the transport implementation).

    logout() → None[source]¶

    Log out of a session on the Review Board server.

    execute_request_method(method: Callable, *args, **kwargs) → Any[source]¶

    Execute a method and carry out the returned HttpRequest.

    Parameters:
    • method (callable) – The method to run.

    • *args (tuple) – Positional arguments to pass to the method.

    • **kwargs (dict) – Keyword arguments to pass to the method.

    Returns:

    If the method returns an HttpRequest, this will construct a resource from that. If it returns another value, that value will be returned directly.

    Return type:

    rbtools.api.resource.Resource or object

    enable_cache(cache_location: Optional[str] = None, in_memory: bool = False) → None[source]¶

    Enable caching for all future HTTP requests.

    The cache will be created at the default location if none is provided.

    If the in_memory parameter is True, the cache will be created in memory instead of on disk. This overrides the cache_location parameter.

    Parameters:
    • cache_location (str, optional) – The filename to store the cache in, if using a persistent cache.

    • in_memory (bool, optional) – Whether to keep the cache data in memory rather than persisting to a file.

    disable_cache() → None[source]¶

    Disable caching for all future HTTP requests.

    New in version 5.0.

    Keep up with the latest Review Board releases, security updates, and helpful information.

    About
    News
    Demo
    RBCommons Hosting
    Integrations
    Happy Users
    Support Options
    Documentation
    FAQ
    User Manual
    RBTools
    Administration Guide
    Power Pack
    Release Notes
    Downloads
    Review Board
    RBTools
    Djblets
    Power Pack
    Package Store
    PGP Signatures
    Contributing
    Bug Tracker
    Submit Patches
    Development Setup
    Wiki
    Follow Us
    Mailing Lists
    Reddit
    Twitter
    Mastodon
    Facebook
    YouTube

    Copyright © 2006-2025 Beanbag, Inc. All rights reserved.

    Terms of Service — Privacy Policy — AI Ethics Policy — Branding

    On this page

    • [Top]
    • Transport
      • Transport.__init__()
      • Transport.get_root()
      • Transport.get_path()
      • Transport.get_url()
      • Transport.login()
      • Transport.logout()
      • Transport.execute_request_method()
      • Transport.enable_cache()
      • Transport.disable_cache()