• 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.sync
  • 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.sync¶

    Transport for synchronous API access.

    Classes

    SyncTransport(url[, cookie_file, username, ...])

    A synchronous transport layer for the API client.

    class rbtools.api.transport.sync.SyncTransport(url: str, cookie_file: Optional[str] = None, username: Optional[str] = None, password: Optional[str] = None, api_token: Optional[str] = None, agent: Optional[str] = None, session: Optional[str] = None, disable_proxy: bool = False, auth_callback: Optional[AuthCallback] = None, otp_token_callback: Optional[OTPCallback] = None, verify_ssl: bool = True, allow_caching: bool = True, cache_location: Optional[str] = None, in_memory_cache: bool = False, save_cookies: bool = True, ext_auth_cookies: Optional[str] = None, ca_certs: Optional[str] = None, client_key: Optional[str] = None, client_cert: Optional[str] = None, proxy_authorization: Optional[str] = None, *args, config: Optional[RBToolsConfig] = None, **kwargs)[source]¶

    Bases: Transport

    A synchronous transport layer for the API client.

    The file provided in cookie_file is used to store and retrieve the authentication cookies for the API.

    The optional agent parameter can be used to specify a custom User-Agent string for the API. If not provided, the default RBTools User-Agent will be used.

    The optional session can be used to specify an ‘rbsessionid’ to use when authenticating with reviewboard.

    __init__(url: str, cookie_file: Optional[str] = None, username: Optional[str] = None, password: Optional[str] = None, api_token: Optional[str] = None, agent: Optional[str] = None, session: Optional[str] = None, disable_proxy: bool = False, auth_callback: Optional[AuthCallback] = None, otp_token_callback: Optional[OTPCallback] = None, verify_ssl: bool = True, allow_caching: bool = True, cache_location: Optional[str] = None, in_memory_cache: bool = False, save_cookies: bool = True, ext_auth_cookies: Optional[str] = None, ca_certs: Optional[str] = None, client_key: Optional[str] = None, client_cert: Optional[str] = None, proxy_authorization: Optional[str] = None, *args, config: Optional[RBToolsConfig] = None, **kwargs) → None[source]¶

    Initialize the transport.

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

    • cookie_file (str, optional) – The name of the file to store authentication cookies in.

    • username (str, optional) – The username to use for authentication.

    • password (str, optional) – The password to use for authentication.

    • api_token (str, optional) – An API token to use for authentication. If present, this is preferred over the username and password.

    • agent (str, optional) – A User-Agent string to use for the client. If not specified, the default RBTools User-Agent will be used.

    • session (str, optional) – An rbsessionid string to use for authentication.

    • disable_proxy (bool) – Whether to disable HTTP proxies.

    • auth_callback (callable, optional) – A callback method to prompt the user for a username and password.

    • otp_token_callback (callable, optional) – A callback method to prompt the user for their two-factor authentication code.

    • verify_ssl (bool, optional) – Whether to verify SSL certificates.

    • allow_caching (bool, optional) – Whether to cache the result of HTTP requests.

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

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

    • save_cookies (bool, optional) – Whether to save authentication cookies.

    • ext_auth_cookies (str, optional) – The name of a file to load additional cookies from. These will be layered on top of any cookies loaded from cookie_file.

    • ca_certs (str, optional) – The name of a file to load certificates from.

    • client_key (str, optional) – The key for a client certificate to load into the chain.

    • client_cert (str, optional) – A client certificate to load into the chain.

    • proxy_authorization (str, optional) – A string to use for the Proxy-Authorization header.

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

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

    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) – Additional positional arguments.

    • **kwargs (dict, unused) – Additional keyword arguments.

    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.

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

    • *args (tuple, unused) – Additional positional arguments.

    • **kwargs (dict, unused) – Additional keyword arguments.

    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.

    Either a username and password combination or an API token must be provided.

    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) – Unused positional arguments.

    • **kwargs (dict, unused) – Unused keyword arguments.

    Raises:

    ValueError – No username and password or API token was provided.

    logout()[source]¶

    Log out of a session on the Review Board server.

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

    Execute a method and return the resulting resource.

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

    • *s (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.

    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.

    __repr__() → str[source]¶

    Return a string representation of the object.

    Returns:

    A string representation of the object.

    Return type:

    str

    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]
    • SyncTransport
      • SyncTransport.__init__()
      • SyncTransport.get_root()
      • SyncTransport.get_path()
      • SyncTransport.get_url()
      • SyncTransport.login()
      • SyncTransport.logout()
      • SyncTransport.execute_request_method()
      • SyncTransport.enable_cache()
      • SyncTransport.disable_cache()
      • SyncTransport.__repr__()