# pydantic-notion
**Version:** Synchronized with [Notion API documentation](https://developers.notion.com/) as of **November 18, 2024**.
---
## Overview
**pydantic-notion** is a Python library designed to bring the power of **Pydantic** to the [Notion API](https://developers.notion.com/). It provides type-safe, schema-validated models for every Notion API data structure, making it easier to work with API data in a structured, reliable, and maintainable way.
This library simplifies interaction with the Notion API by:
- Providing **strict Pydantic models** for all API data structures.
- Ensuring compliance with the **latest API specifications**.
- Supporting **AI Agent integration**, enabling smarter and more reliable workflows.
- Making it easier for developers to interact with Notion programmatically with minimal boilerplate.
---
## Why Use pydantic-notion?
### For Developers
- **Type safety and validation:** No more guessing data structures or debugging mysterious errors. All API data is validated against strict Pydantic models.
- **Rapid development:** Integrate Notion APIs seamlessly without having to write boilerplate validation code.
- **Error handling:** Catch issues upfront with schema validation instead of during runtime.
### For AI Agents
- **Reliable data exchange:** Ensure the AI Agent's understanding of Notion data is consistent and predictable.
- **Plug-and-play integration:** Use pydantic-notion to make Notion API interactions a first-class citizen in AI workflows.
### For Everyone
- **Future-proof:** The library is designed to stay up-to-date with Notion API changes, providing versioned compatibility with the latest updates.
- **Collaborative:** Built with the open-source community in mind, this library is extensible and encourages contributions.
---
## Key Features
- **Comprehensive Pydantic Models:** Every Notion API entity (e.g., databases, pages, blocks, properties) is implemented as a Pydantic model.
- **Dynamic Parsing:** Automatically parse API responses into rich Python objects.
- **Validation-Friendly API Integration:** Ensure the data you send to or receive from Notion is valid and complete.
- **Namespace Organization:** Part of the broader `pydantic_api.*` ecosystem for standardizing API interactions.
---
## Installation
```bash
pip install pydantic-notion
```
## Future Plans: Expanding to pydantic_api.*
`pydantic-notion` is part of a larger vision: **pydantic_api.***, a collection of libraries that aim to normalize and standardize data interactions across various APIs using Pydantic models.
### Examples of Future Libraries:
- **pydantic_api.github**: Comprehensive Pydantic models for the GitHub API.
- **pydantic_api.slack**: Standardized models for the Slack API, enabling seamless bot and app development.
- **pydantic_api.openai**: Rich Pydantic models for OpenAI's API, empowering AI developers with type-safe tools.
Our mission is to provide:
- **Unified APIs:** A consistent, type-safe experience across all supported APIs.
- **Better developer experience:** Simplified interaction with complex APIs through validated and self-documented models.
- **Community-driven development:** A collaborative ecosystem of contributors creating modular, reusable libraries.
If you have suggestions for APIs you'd like to see supported in the future, please [open an issue](https://github.com/your-repo-link/issues) or start a discussion!
---
## Contributing
We believe that **open source thrives on community collaboration**. Here’s how you can contribute to the project:
### Ways to Get Involved:
1. **Explore the Codebase:** Check out the [GitHub repository](https://github.com/your-repo-link) to understand how the library is structured.
2. **Report Issues:** Encountered a bug or noticed something missing? [Open an issue](https://github.com/your-repo-link/issues) and help us improve.
3. **Submit Pull Requests:** Contributions for new features, bug fixes, or documentation updates are always welcome! Make sure to follow our [contributing guidelines](https://github.com/your-repo-link/CONTRIBUTING.md).
4. **Join Discussions:** Engage with the community, share your ideas, or seek advice in our [community discussions](https://github.com/your-repo-link/discussions).
### Who Can Contribute?
Anyone! Whether you’re a beginner in open source or an experienced developer, we welcome contributions from all skill levels. Together, we can make `pydantic-notion` and the broader `pydantic_api.*` ecosystem a robust toolset for developers.
---
## License
This project is licensed under the [MIT License](https://opensource.org/licenses/MIT). You are free to use, modify, and distribute it for personal and commercial projects.
---
## Stay Connected
Stay updated with the progress of **pydantic-notion** and other libraries in the `pydantic_api.*` ecosystem:
- **Star the Repository:** Show your support by starring our repository.
- **Watch for Updates:** Enable notifications to stay informed about new features and releases.
- **Engage with the Community:** Join discussions and share your insights.
Together, we can redefine how developers interact with APIs—one Pydantic model at a time!
Raw data
{
"_id": null,
"home_page": "https://github.com/stevieflyer/pydantic-notion",
"name": "pydantic-notion",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.8",
"maintainer_email": null,
"keywords": "notion, pydantic, api, data-models",
"author": "stevieflyer",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/49/ae/a95017ae75f008bfbb5dd6b5b85f43f4dadc345f684bcbacc90f3d54d652/pydantic_notion-0.1.0.tar.gz",
"platform": null,
"description": "# pydantic-notion\n\n**Version:** Synchronized with [Notion API documentation](https://developers.notion.com/) as of **November 18, 2024**.\n\n---\n\n## Overview\n\n**pydantic-notion** is a Python library designed to bring the power of **Pydantic** to the [Notion API](https://developers.notion.com/). It provides type-safe, schema-validated models for every Notion API data structure, making it easier to work with API data in a structured, reliable, and maintainable way.\n\nThis library simplifies interaction with the Notion API by:\n- Providing **strict Pydantic models** for all API data structures.\n- Ensuring compliance with the **latest API specifications**.\n- Supporting **AI Agent integration**, enabling smarter and more reliable workflows.\n- Making it easier for developers to interact with Notion programmatically with minimal boilerplate.\n\n---\n\n## Why Use pydantic-notion?\n\n### For Developers\n- **Type safety and validation:** No more guessing data structures or debugging mysterious errors. All API data is validated against strict Pydantic models.\n- **Rapid development:** Integrate Notion APIs seamlessly without having to write boilerplate validation code.\n- **Error handling:** Catch issues upfront with schema validation instead of during runtime.\n\n### For AI Agents\n- **Reliable data exchange:** Ensure the AI Agent's understanding of Notion data is consistent and predictable.\n- **Plug-and-play integration:** Use pydantic-notion to make Notion API interactions a first-class citizen in AI workflows.\n\n### For Everyone\n- **Future-proof:** The library is designed to stay up-to-date with Notion API changes, providing versioned compatibility with the latest updates.\n- **Collaborative:** Built with the open-source community in mind, this library is extensible and encourages contributions.\n\n---\n\n## Key Features\n\n- **Comprehensive Pydantic Models:** Every Notion API entity (e.g., databases, pages, blocks, properties) is implemented as a Pydantic model.\n- **Dynamic Parsing:** Automatically parse API responses into rich Python objects.\n- **Validation-Friendly API Integration:** Ensure the data you send to or receive from Notion is valid and complete.\n- **Namespace Organization:** Part of the broader `pydantic_api.*` ecosystem for standardizing API interactions.\n\n---\n\n## Installation\n\n```bash\npip install pydantic-notion\n```\n\n## Future Plans: Expanding to pydantic_api.*\n\n`pydantic-notion` is part of a larger vision: **pydantic_api.***, a collection of libraries that aim to normalize and standardize data interactions across various APIs using Pydantic models.\n\n### Examples of Future Libraries:\n- **pydantic_api.github**: Comprehensive Pydantic models for the GitHub API.\n- **pydantic_api.slack**: Standardized models for the Slack API, enabling seamless bot and app development.\n- **pydantic_api.openai**: Rich Pydantic models for OpenAI's API, empowering AI developers with type-safe tools.\n\nOur mission is to provide:\n- **Unified APIs:** A consistent, type-safe experience across all supported APIs.\n- **Better developer experience:** Simplified interaction with complex APIs through validated and self-documented models.\n- **Community-driven development:** A collaborative ecosystem of contributors creating modular, reusable libraries.\n\nIf you have suggestions for APIs you'd like to see supported in the future, please [open an issue](https://github.com/your-repo-link/issues) or start a discussion!\n\n---\n\n## Contributing\n\nWe believe that **open source thrives on community collaboration**. Here\u2019s how you can contribute to the project:\n\n### Ways to Get Involved:\n1. **Explore the Codebase:** Check out the [GitHub repository](https://github.com/your-repo-link) to understand how the library is structured.\n2. **Report Issues:** Encountered a bug or noticed something missing? [Open an issue](https://github.com/your-repo-link/issues) and help us improve.\n3. **Submit Pull Requests:** Contributions for new features, bug fixes, or documentation updates are always welcome! Make sure to follow our [contributing guidelines](https://github.com/your-repo-link/CONTRIBUTING.md).\n4. **Join Discussions:** Engage with the community, share your ideas, or seek advice in our [community discussions](https://github.com/your-repo-link/discussions).\n\n### Who Can Contribute?\nAnyone! Whether you\u2019re a beginner in open source or an experienced developer, we welcome contributions from all skill levels. Together, we can make `pydantic-notion` and the broader `pydantic_api.*` ecosystem a robust toolset for developers.\n\n---\n\n## License\n\nThis project is licensed under the [MIT License](https://opensource.org/licenses/MIT). You are free to use, modify, and distribute it for personal and commercial projects.\n\n---\n\n## Stay Connected\n\nStay updated with the progress of **pydantic-notion** and other libraries in the `pydantic_api.*` ecosystem:\n\n- **Star the Repository:** Show your support by starring our repository.\n- **Watch for Updates:** Enable notifications to stay informed about new features and releases.\n- **Engage with the Community:** Join discussions and share your insights.\n\nTogether, we can redefine how developers interact with APIs\u2014one Pydantic model at a time!\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A Pydantic-based library for Notion API data models",
"version": "0.1.0",
"project_urls": {
"Homepage": "https://github.com/stevieflyer/pydantic-notion",
"Repository": "https://github.com/stevieflyer/pydantic-notion"
},
"split_keywords": [
"notion",
" pydantic",
" api",
" data-models"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "89bc2e68b2130a7f37836891c0a14696cd40c0a15b324ad6cfbb045a843d6351",
"md5": "31fc67c6d8bb5e16dc593690a0071077",
"sha256": "3926dab9cf988bd3a1580d4c171f6843f4045ccd788100d630ecf6e82c7dcff2"
},
"downloads": -1,
"filename": "pydantic_notion-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "31fc67c6d8bb5e16dc593690a0071077",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.8",
"size": 27393,
"upload_time": "2024-11-19T05:21:30",
"upload_time_iso_8601": "2024-11-19T05:21:30.704134Z",
"url": "https://files.pythonhosted.org/packages/89/bc/2e68b2130a7f37836891c0a14696cd40c0a15b324ad6cfbb045a843d6351/pydantic_notion-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "49aea95017ae75f008bfbb5dd6b5b85f43f4dadc345f684bcbacc90f3d54d652",
"md5": "293661abb253b572bf6d51c3a221787c",
"sha256": "254314271d82317eaaad8998d002e0f5ece2528b7b9038d5dde3e0aac438cd92"
},
"downloads": -1,
"filename": "pydantic_notion-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "293661abb253b572bf6d51c3a221787c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.8",
"size": 19064,
"upload_time": "2024-11-19T05:21:32",
"upload_time_iso_8601": "2024-11-19T05:21:32.712378Z",
"url": "https://files.pythonhosted.org/packages/49/ae/a95017ae75f008bfbb5dd6b5b85f43f4dadc345f684bcbacc90f3d54d652/pydantic_notion-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-19 05:21:32",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "stevieflyer",
"github_project": "pydantic-notion",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "pydantic-notion"
}