skillfed

botbuilder-schema

BotBuilder Schema

botbuilder-schema v4.17.1 1.3M downloads/30d#4,036 on PyPI772
Permissive license MIT Abandoned released

What it is and what it does

BotBuilder-Schema is a data serialization package that defines the message structures and types exchanged between bots and users in Microsoft's Bot Framework. It serves as the contract layer for wire protocol communication, ensuring that bot applications and the framework can serialize and deserialize messages consistently.

The package is a foundational dependency for Bot Framework applications written in Python, providing the schema definitions needed to construct and parse bot activities, messages, and other framework entities. It requires Python 3.7.0 or later and depends on msrest for HTTP operations and urllib3 for connection handling.

Use it for:

  • Building chatbots using the Microsoft Bot Framework that need to serialize and deserialize bot activities and user messages.
  • Integrating custom bot logic with Bot Framework services that rely on standard message schema definitions.
  • Developing bot connectors or middleware that must work with Bot Framework's wire protocol.
  • Testing bot applications by constructing valid Bot Framework message objects programmatically.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides serialized data schemas and message types for communication between bots and users in the Microsoft Bot Framework ecosystem.

Yes, but with caution. The package is stable and widely used (1.3M+ monthly downloads), with no known vulnerabilities and permissive MIT licensing. However, the repository is archived and abandoned, meaning no future updates or bug fixes will be released. Install it only if you are committed to the Bot Framework ecosystem and can accept that this foundational dependency will not receive maintenance.

Install

botbuilder-schema on PyPI

pip

pip install botbuilder-schema

uv

uv add botbuilder-schema

poetry

poetry add botbuilder-schema

Installing botbuilder-schema

Before you install

Low install friction with only two runtime dependencies (msrest, urllib3). However, the repository is archived and marked abandoned as of the latest commit on 2026-01-05, with no active maintenance.

License in practice

Licensed under MIT, a permissive license allowing broad use, modification, and distribution with minimal restrictions.

Quickstart

pip install botbuilder-schema

from botbuilder.schema import Activity, ActivityTypes

activity = Activity(
    type=ActivityTypes.message,
    text="Hello, bot!"
)

Requires Python >= 3.7.0

Verify before relying

  • Whether the abandoned status affects compatibility with current Bot Framework versions or if the schema remains stable enough for ongoing use.
  • Whether msrest and urllib3 versions are pinned or have known compatibility constraints with modern Python versions.

Package facts

License MIT (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 2 — msrest, urllib3
Maintenance abandoned — 221 days since the last release
Last repo commit (repository archived)
First released
Downloads 1,335,412/month — #4,036 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: botbuilder_schema-4.17.1-py2.py3-none-any.whl

Keywords: BotBuilderSchema, bots, ai, botframework, botbuilder

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3.7Topic :: Scientific/Engineering :: Artificial Intelligence

Tags

bot framework schemabotbuilder message typesbot framework serializationmicrosoft bot schemabotbuilder data structures
bot-frameworkmicrosoftarchived

More Artificial Intelligence packages

litellm

LiteLLM provides a unified Python interface to…

permissive · top 100 on PyPI

huggingface-hub

Client library and CLI tool for downloading,…

permissive · top 100 on PyPI

langchain

LangChain provides a framework for building…

permissive · top 1,000 on PyPI

hf-xet

hf-xet provides chunk-based deduplication and…

permissive · top 1,000 on PyPI

tokenizers

Tokenizers converts raw text into token…

permissive · top 1,000 on PyPI

transformers

Transformers provides a unified framework for…

permissive · top 1,000 on PyPI

botframework-connector

Enables Python bots to send and receive…

permissive · top 5,000 on PyPI

jschema-to-python

Generates Python class definitions from JSON…

permissive · top 5,000 on PyPI

botbuilder-core

Provides the core SDK for building bots that…

permissive · top 5,000 on PyPI

botframework-streaming

Provides streaming protocol support for…

permissive · top 5,000 on PyPI

botbuilder-integration-aiohttp

Integrates a Microsoft Bot Framework bot into…

permissive · top 15,000 on PyPI

mypy-boto3-schemas

Provides type annotations and IDE autocomplete…

permissive · top 5,000 on PyPI

microsoft-kiota-serialization-text

Serializes and deserializes plain text payloads…

permissive · top 5,000 on PyPI

microsoft-kiota-serialization-multipart

Handles multipart/form-data serialization for…

permissive · top 5,000 on PyPI

microsoft-kiota-serialization-form

Handles serialization of data into…

permissive · top 5,000 on PyPI

avro-python3

Serializes and deserializes data in Apache Avro…

permissive · top 5,000 on PyPI