pydantic-notion


Namepydantic-notion JSON
Version 0.1.0 PyPI version JSON
download
home_pagehttps://github.com/stevieflyer/pydantic-notion
SummaryA Pydantic-based library for Notion API data models
upload_time2024-11-19 05:21:32
maintainerNone
docs_urlNone
authorstevieflyer
requires_python<4.0,>=3.8
licenseMIT
keywords notion pydantic api data-models
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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"
}
        
Elapsed time: 1.04655s