verifikio-sdk


Nameverifikio-sdk JSON
Version 1.1.0 PyPI version JSON
download
home_pagehttps://github.com/verifik-io/verifikio-python
SummaryOfficial Python SDK for Verifik.io trust infrastructure platform
upload_time2025-07-15 20:11:50
maintainerNone
docs_urlNone
authorVerifik.io
requires_python>=3.7
licenseNone
keywords audit logging security ai agents blockchain verification trust infrastructure
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Verifik.io Python SDK

[![PyPI version](https://badge.fury.io/py/verifikio-sdk.svg)](https://badge.fury.io/py/verifikio-sdk)
[![Python Support](https://img.shields.io/pypi/pyversions/verifikio-sdk.svg)](https://pypi.org/project/verifikio-sdk/)
[![Downloads](https://img.shields.io/pypi/dm/verifikio-sdk)](https://pypi.org/project/verifikio-sdk/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![](https://img.shields.io/badge/framework-CrewAI-blue)](https://github.com/joaomdmoura/crewAI)
[![](https://img.shields.io/badge/framework-LangChain-blue)](https://github.com/langchain-ai/langchain)

_The official Python SDK for Verifik.io – audit logs you can trust._

> **Also available:** [Node.js SDK](https://www.npmjs.com/package/@verifikio/sdk) - `npm install @verifikio/sdk`

📄 [Changelog](CHANGELOG.md) | 🚀 [v1.1.0 Release](CHANGELOG.md#110---2025-01-15)

## Installation

To install the official Verifik.io Python SDK:

```bash
pip install verifikio-sdk
```

For framework integrations:

```bash
# For CrewAI integration
pip install verifikio-sdk[crewai]

# For LangChain integration
pip install verifikio-sdk[langchain]

# For all integrations
pip install verifikio-sdk[all]
```

Verifik.io provides secure, immutable audit trails for AI agents using blockchain-style verification. Perfect for teams building with CrewAI, LangChain, AutoGPT, and other AI frameworks who need SOC 2 / ISO27001 compliance.

## Features

- 🔐 **Secure audit logging** with automatic hash chaining
- 🚀 **Developer-friendly** - Get started in minutes
- 📊 **Chain verification** - Ensure data integrity
- 🔑 **Simple authentication** with API keys
- 🐍 **Python 3.7+** compatible
- 📦 **Minimal dependencies** - Only requires `requests`

## Quick Start

```python
from verifikio import VerifikClient

# Initialize client with your API key
client = VerifikClient(api_key="verifik_live_abc123...")

# Log an AI agent event
response = client.log_event(
    agent_name="data_processor",
    action="process_customer_data",
    inputs={"customer_id": "cust_123", "data_type": "profile"},
    outputs={"status": "processed", "record_count": 1},
    metadata={"processing_time": "1.2s"},
    workflow_id="workflow_456",
    status="success"
)

print(f"Audit log created: {response['id']}")
print(f"Hash: {response['hash']}")
```

## Framework Integrations

### CrewAI Integration

Automatically log all CrewAI agent actions and task executions:

```python
from verifikio import VerifikClient
from verifikio.integrations.crewai import VerifikCrewAIHandler
from crewai import Agent, Task, Crew

# Initialize Verifik.io
client = VerifikClient(api_key="verifik_live_xxx")
handler = VerifikCrewAIHandler(client, workflow_id="research-crew-001")

# Create agents with automatic logging
researcher = Agent(
    role="Researcher",
    goal="Research the latest AI trends",
    backstory="You are an expert AI researcher",
    callbacks=[handler]
)

writer = Agent(
    role="Writer", 
    goal="Write engaging content about AI",
    backstory="You are a technical writer",
    callbacks=[handler]
)

# Create tasks - all executions are logged
research_task = Task(
    description="Research GPT-4 capabilities",
    agent=researcher,
    callbacks=[handler]
)

write_task = Task(
    description="Write an article about the findings",
    agent=writer,
    callbacks=[handler]
)

# Run crew - all actions are tracked
crew = Crew(
    agents=[researcher, writer],
    tasks=[research_task, write_task],
    callbacks=[handler]
)

results = crew.kickoff()
```

### LangChain Integration

Automatically log LangChain chains, tools, and LLM calls:

```python
from verifikio import VerifikClient
from verifikio.integrations.langchain import VerifikLangChainHandler
from langchain.chains import LLMChain
from langchain.llms import OpenAI
from langchain.prompts import PromptTemplate

# Initialize Verifik.io
client = VerifikClient(api_key="verifik_live_xxx")
handler = VerifikLangChainHandler(
    client, 
    workflow_id="qa-chain-001",
    log_llm_calls=True  # Log individual LLM calls
)

# Create LLM with logging
llm = OpenAI(temperature=0.7, callbacks=[handler])

# Create chain with logging
prompt = PromptTemplate(
    input_variables=["topic"],
    template="Write a short article about {topic}"
)

chain = LLMChain(
    llm=llm, 
    prompt=prompt, 
    callbacks=[handler]
)

# All executions are automatically logged
result = chain.run("artificial intelligence in healthcare")
```

## API Reference

### VerifikClient

#### `__init__(api_key, base_url="https://api.verifik.io", timeout=30)`

Create a new Verifik.io client instance.

**Parameters:**
- `api_key` (str): Your Verifik.io API key (format: `verifik_live_*`)
- `base_url` (str, optional): Base URL for the API
- `timeout` (int, optional): Request timeout in seconds

```python
client = VerifikClient(api_key="verifik_live_abc123...")
```

#### `log_event(agent_name, action, **kwargs)`

Create a new audit log entry.

**Parameters:**
- `agent_name` (str): Name/identifier of the AI agent or service
- `action` (str): The action that was performed
- `inputs` (dict, optional): Input data/parameters for the action
- `outputs` (dict, optional): Output data/results from the action
- `metadata` (dict, optional): Additional metadata about the event
- `workflow_id` (str, optional): Workflow or session identifier
- `status` (str, optional): Status of the action (e.g., "success", "error", "pending")

**Returns:** `dict` - The created audit log entry

```python
response = client.log_event(
    agent_name="email_agent",
    action="send_notification",
    inputs={"recipient": "user@example.com"},
    outputs={"message_id": "msg_123"},
    status="success"
)
```

#### `get_logs(limit=50, offset=0, workflow_id=None)`

Retrieve audit logs with pagination.

**Parameters:**
- `limit` (int, optional): Number of logs to return (max 100)
- `offset` (int, optional): Number of logs to skip
- `workflow_id` (str, optional): Filter by workflow ID

**Returns:** `dict` - Paginated list of audit logs

```python
logs = client.get_logs(limit=20, offset=0)
for log in logs['logs']:
    print(f"Agent: {log['agentId']}, Action: {log['action']}")
```

#### `verify_chain()`

Verify the integrity of the audit log chain.

**Returns:** `dict` - Verification results

```python
verification = client.verify_chain()
print(f"Chain integrity: {verification['isValid']}")
```

#### `get_stats()`

Get account statistics and metrics.

**Returns:** `dict` - Account statistics

```python
stats = client.get_stats()
print(f"Total logs: {stats['totalLogs']}")
print(f"Chain integrity: {stats['chainIntegrity']}%")
```

## Framework Examples

### CrewAI Integration

```python
from verifikio import VerifikClient
from crewai import Agent, Task, Crew

# Initialize Verifik.io client
verifik = VerifikClient(api_key="verifik_live_abc123...")

# Create your CrewAI agents
researcher = Agent(
    role='Research Analyst',
    goal='Analyze market trends',
    backstory='Expert in market analysis'
)

# Custom callback to log CrewAI events
def log_crew_event(agent_name, action, inputs=None, outputs=None, status="success"):
    verifik.log_event(
        agent_name=agent_name,
        action=action,
        inputs=inputs,
        outputs=outputs,
        metadata={"framework": "crewai"},
        status=status
    )

# Log when agent starts task
log_crew_event("research_analyst", "start_analysis", {"topic": "AI market"})

# ... run your CrewAI workflow ...

# Log completion
log_crew_event("research_analyst", "complete_analysis", 
              outputs={"findings": "Market growing 40% YoY"})
```

### LangChain Integration

```python
from verifikio import VerifikClient
from langchain.chains import LLMChain
from langchain.callbacks.base import BaseCallbackHandler

verifik = VerifikClient(api_key="verifik_live_abc123...")

class VerifikCallback(BaseCallbackHandler):
    def on_chain_start(self, serialized, inputs, **kwargs):
        verifik.log_event(
            agent_name="langchain_agent",
            action="chain_start",
            inputs=inputs,
            metadata={"chain_type": serialized.get("name", "unknown")}
        )
    
    def on_chain_end(self, outputs, **kwargs):
        verifik.log_event(
            agent_name="langchain_agent",
            action="chain_end",
            outputs=outputs,
            status="success"
        )

# Use the callback in your LangChain
chain = LLMChain(llm=llm, prompt=prompt, callbacks=[VerifikCallback()])
```

## Error Handling

The SDK includes comprehensive error handling:

```python
from verifikio import VerifikClient, AuthenticationError, ValidationError, APIError

client = VerifikClient(api_key="verifik_live_abc123...")

try:
    response = client.log_event(
        agent_name="test_agent",
        action="test_action"
    )
except AuthenticationError:
    print("Invalid API key")
except ValidationError as e:
    print(f"Invalid parameters: {e}")
except APIError as e:
    print(f"API error: {e}")
```

## Context Manager Support

The client supports context manager protocol for automatic cleanup:

```python
with VerifikClient(api_key="verifik_live_abc123...") as client:
    client.log_event(
        agent_name="context_agent",
        action="test_action"
    )
# Client session automatically closed
```

## Getting Your API Key

1. Sign up at [verifik.io](https://verifik.io)
2. Go to your Settings page
3. Generate a new API key
4. Copy the key (format: `verifik_live_...`)

## Development

### Running Tests

```bash
# Install development dependencies
pip install -e ".[dev]"

# Run tests
pytest tests/

# Run tests with coverage
pytest tests/ --cov=verifikio
```

### Code Quality

```bash
# Format code
black verifikio/

# Lint code
flake8 verifikio/

# Type checking
mypy verifikio/
```

## Contributing

1. Fork the repository
2. Create a feature branch: `git checkout -b feature-name`
3. Make your changes and add tests
4. Run the test suite: `pytest`
5. Submit a pull request

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Support

- 📧 **Email**: support@verifik.io
- 📖 **Documentation**: https://docs.verifik.io
- 🐛 **Bug Reports**: https://github.com/verifik-io/verifikio-python/issues
- 💬 **Community**: https://discord.gg/verifik

## Changelog

### 1.0.0 (2024-01-14)
- Initial release
- Core audit logging functionality
- Chain verification
- Full API coverage
- Python 3.7+ support

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/verifik-io/verifikio-python",
    "name": "verifikio-sdk",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "\"Verifik.io\" <support@verifik.io>",
    "keywords": "audit, logging, security, ai, agents, blockchain, verification, trust, infrastructure",
    "author": "Verifik.io",
    "author_email": "\"Verifik.io\" <support@verifik.io>",
    "download_url": "https://files.pythonhosted.org/packages/f7/40/de09641982ae59d587bb64677fe7d53302eb38e8d4baa802572af4648876/verifikio_sdk-1.1.0.tar.gz",
    "platform": null,
    "description": "# Verifik.io Python SDK\n\n[![PyPI version](https://badge.fury.io/py/verifikio-sdk.svg)](https://badge.fury.io/py/verifikio-sdk)\n[![Python Support](https://img.shields.io/pypi/pyversions/verifikio-sdk.svg)](https://pypi.org/project/verifikio-sdk/)\n[![Downloads](https://img.shields.io/pypi/dm/verifikio-sdk)](https://pypi.org/project/verifikio-sdk/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![](https://img.shields.io/badge/framework-CrewAI-blue)](https://github.com/joaomdmoura/crewAI)\n[![](https://img.shields.io/badge/framework-LangChain-blue)](https://github.com/langchain-ai/langchain)\n\n_The official Python SDK for Verifik.io \u2013 audit logs you can trust._\n\n> **Also available:** [Node.js SDK](https://www.npmjs.com/package/@verifikio/sdk) - `npm install @verifikio/sdk`\n\n\ud83d\udcc4 [Changelog](CHANGELOG.md) | \ud83d\ude80 [v1.1.0 Release](CHANGELOG.md#110---2025-01-15)\n\n## Installation\n\nTo install the official Verifik.io Python SDK:\n\n```bash\npip install verifikio-sdk\n```\n\nFor framework integrations:\n\n```bash\n# For CrewAI integration\npip install verifikio-sdk[crewai]\n\n# For LangChain integration\npip install verifikio-sdk[langchain]\n\n# For all integrations\npip install verifikio-sdk[all]\n```\n\nVerifik.io provides secure, immutable audit trails for AI agents using blockchain-style verification. Perfect for teams building with CrewAI, LangChain, AutoGPT, and other AI frameworks who need SOC 2 / ISO27001 compliance.\n\n## Features\n\n- \ud83d\udd10 **Secure audit logging** with automatic hash chaining\n- \ud83d\ude80 **Developer-friendly** - Get started in minutes\n- \ud83d\udcca **Chain verification** - Ensure data integrity\n- \ud83d\udd11 **Simple authentication** with API keys\n- \ud83d\udc0d **Python 3.7+** compatible\n- \ud83d\udce6 **Minimal dependencies** - Only requires `requests`\n\n## Quick Start\n\n```python\nfrom verifikio import VerifikClient\n\n# Initialize client with your API key\nclient = VerifikClient(api_key=\"verifik_live_abc123...\")\n\n# Log an AI agent event\nresponse = client.log_event(\n    agent_name=\"data_processor\",\n    action=\"process_customer_data\",\n    inputs={\"customer_id\": \"cust_123\", \"data_type\": \"profile\"},\n    outputs={\"status\": \"processed\", \"record_count\": 1},\n    metadata={\"processing_time\": \"1.2s\"},\n    workflow_id=\"workflow_456\",\n    status=\"success\"\n)\n\nprint(f\"Audit log created: {response['id']}\")\nprint(f\"Hash: {response['hash']}\")\n```\n\n## Framework Integrations\n\n### CrewAI Integration\n\nAutomatically log all CrewAI agent actions and task executions:\n\n```python\nfrom verifikio import VerifikClient\nfrom verifikio.integrations.crewai import VerifikCrewAIHandler\nfrom crewai import Agent, Task, Crew\n\n# Initialize Verifik.io\nclient = VerifikClient(api_key=\"verifik_live_xxx\")\nhandler = VerifikCrewAIHandler(client, workflow_id=\"research-crew-001\")\n\n# Create agents with automatic logging\nresearcher = Agent(\n    role=\"Researcher\",\n    goal=\"Research the latest AI trends\",\n    backstory=\"You are an expert AI researcher\",\n    callbacks=[handler]\n)\n\nwriter = Agent(\n    role=\"Writer\", \n    goal=\"Write engaging content about AI\",\n    backstory=\"You are a technical writer\",\n    callbacks=[handler]\n)\n\n# Create tasks - all executions are logged\nresearch_task = Task(\n    description=\"Research GPT-4 capabilities\",\n    agent=researcher,\n    callbacks=[handler]\n)\n\nwrite_task = Task(\n    description=\"Write an article about the findings\",\n    agent=writer,\n    callbacks=[handler]\n)\n\n# Run crew - all actions are tracked\ncrew = Crew(\n    agents=[researcher, writer],\n    tasks=[research_task, write_task],\n    callbacks=[handler]\n)\n\nresults = crew.kickoff()\n```\n\n### LangChain Integration\n\nAutomatically log LangChain chains, tools, and LLM calls:\n\n```python\nfrom verifikio import VerifikClient\nfrom verifikio.integrations.langchain import VerifikLangChainHandler\nfrom langchain.chains import LLMChain\nfrom langchain.llms import OpenAI\nfrom langchain.prompts import PromptTemplate\n\n# Initialize Verifik.io\nclient = VerifikClient(api_key=\"verifik_live_xxx\")\nhandler = VerifikLangChainHandler(\n    client, \n    workflow_id=\"qa-chain-001\",\n    log_llm_calls=True  # Log individual LLM calls\n)\n\n# Create LLM with logging\nllm = OpenAI(temperature=0.7, callbacks=[handler])\n\n# Create chain with logging\nprompt = PromptTemplate(\n    input_variables=[\"topic\"],\n    template=\"Write a short article about {topic}\"\n)\n\nchain = LLMChain(\n    llm=llm, \n    prompt=prompt, \n    callbacks=[handler]\n)\n\n# All executions are automatically logged\nresult = chain.run(\"artificial intelligence in healthcare\")\n```\n\n## API Reference\n\n### VerifikClient\n\n#### `__init__(api_key, base_url=\"https://api.verifik.io\", timeout=30)`\n\nCreate a new Verifik.io client instance.\n\n**Parameters:**\n- `api_key` (str): Your Verifik.io API key (format: `verifik_live_*`)\n- `base_url` (str, optional): Base URL for the API\n- `timeout` (int, optional): Request timeout in seconds\n\n```python\nclient = VerifikClient(api_key=\"verifik_live_abc123...\")\n```\n\n#### `log_event(agent_name, action, **kwargs)`\n\nCreate a new audit log entry.\n\n**Parameters:**\n- `agent_name` (str): Name/identifier of the AI agent or service\n- `action` (str): The action that was performed\n- `inputs` (dict, optional): Input data/parameters for the action\n- `outputs` (dict, optional): Output data/results from the action\n- `metadata` (dict, optional): Additional metadata about the event\n- `workflow_id` (str, optional): Workflow or session identifier\n- `status` (str, optional): Status of the action (e.g., \"success\", \"error\", \"pending\")\n\n**Returns:** `dict` - The created audit log entry\n\n```python\nresponse = client.log_event(\n    agent_name=\"email_agent\",\n    action=\"send_notification\",\n    inputs={\"recipient\": \"user@example.com\"},\n    outputs={\"message_id\": \"msg_123\"},\n    status=\"success\"\n)\n```\n\n#### `get_logs(limit=50, offset=0, workflow_id=None)`\n\nRetrieve audit logs with pagination.\n\n**Parameters:**\n- `limit` (int, optional): Number of logs to return (max 100)\n- `offset` (int, optional): Number of logs to skip\n- `workflow_id` (str, optional): Filter by workflow ID\n\n**Returns:** `dict` - Paginated list of audit logs\n\n```python\nlogs = client.get_logs(limit=20, offset=0)\nfor log in logs['logs']:\n    print(f\"Agent: {log['agentId']}, Action: {log['action']}\")\n```\n\n#### `verify_chain()`\n\nVerify the integrity of the audit log chain.\n\n**Returns:** `dict` - Verification results\n\n```python\nverification = client.verify_chain()\nprint(f\"Chain integrity: {verification['isValid']}\")\n```\n\n#### `get_stats()`\n\nGet account statistics and metrics.\n\n**Returns:** `dict` - Account statistics\n\n```python\nstats = client.get_stats()\nprint(f\"Total logs: {stats['totalLogs']}\")\nprint(f\"Chain integrity: {stats['chainIntegrity']}%\")\n```\n\n## Framework Examples\n\n### CrewAI Integration\n\n```python\nfrom verifikio import VerifikClient\nfrom crewai import Agent, Task, Crew\n\n# Initialize Verifik.io client\nverifik = VerifikClient(api_key=\"verifik_live_abc123...\")\n\n# Create your CrewAI agents\nresearcher = Agent(\n    role='Research Analyst',\n    goal='Analyze market trends',\n    backstory='Expert in market analysis'\n)\n\n# Custom callback to log CrewAI events\ndef log_crew_event(agent_name, action, inputs=None, outputs=None, status=\"success\"):\n    verifik.log_event(\n        agent_name=agent_name,\n        action=action,\n        inputs=inputs,\n        outputs=outputs,\n        metadata={\"framework\": \"crewai\"},\n        status=status\n    )\n\n# Log when agent starts task\nlog_crew_event(\"research_analyst\", \"start_analysis\", {\"topic\": \"AI market\"})\n\n# ... run your CrewAI workflow ...\n\n# Log completion\nlog_crew_event(\"research_analyst\", \"complete_analysis\", \n              outputs={\"findings\": \"Market growing 40% YoY\"})\n```\n\n### LangChain Integration\n\n```python\nfrom verifikio import VerifikClient\nfrom langchain.chains import LLMChain\nfrom langchain.callbacks.base import BaseCallbackHandler\n\nverifik = VerifikClient(api_key=\"verifik_live_abc123...\")\n\nclass VerifikCallback(BaseCallbackHandler):\n    def on_chain_start(self, serialized, inputs, **kwargs):\n        verifik.log_event(\n            agent_name=\"langchain_agent\",\n            action=\"chain_start\",\n            inputs=inputs,\n            metadata={\"chain_type\": serialized.get(\"name\", \"unknown\")}\n        )\n    \n    def on_chain_end(self, outputs, **kwargs):\n        verifik.log_event(\n            agent_name=\"langchain_agent\",\n            action=\"chain_end\",\n            outputs=outputs,\n            status=\"success\"\n        )\n\n# Use the callback in your LangChain\nchain = LLMChain(llm=llm, prompt=prompt, callbacks=[VerifikCallback()])\n```\n\n## Error Handling\n\nThe SDK includes comprehensive error handling:\n\n```python\nfrom verifikio import VerifikClient, AuthenticationError, ValidationError, APIError\n\nclient = VerifikClient(api_key=\"verifik_live_abc123...\")\n\ntry:\n    response = client.log_event(\n        agent_name=\"test_agent\",\n        action=\"test_action\"\n    )\nexcept AuthenticationError:\n    print(\"Invalid API key\")\nexcept ValidationError as e:\n    print(f\"Invalid parameters: {e}\")\nexcept APIError as e:\n    print(f\"API error: {e}\")\n```\n\n## Context Manager Support\n\nThe client supports context manager protocol for automatic cleanup:\n\n```python\nwith VerifikClient(api_key=\"verifik_live_abc123...\") as client:\n    client.log_event(\n        agent_name=\"context_agent\",\n        action=\"test_action\"\n    )\n# Client session automatically closed\n```\n\n## Getting Your API Key\n\n1. Sign up at [verifik.io](https://verifik.io)\n2. Go to your Settings page\n3. Generate a new API key\n4. Copy the key (format: `verifik_live_...`)\n\n## Development\n\n### Running Tests\n\n```bash\n# Install development dependencies\npip install -e \".[dev]\"\n\n# Run tests\npytest tests/\n\n# Run tests with coverage\npytest tests/ --cov=verifikio\n```\n\n### Code Quality\n\n```bash\n# Format code\nblack verifikio/\n\n# Lint code\nflake8 verifikio/\n\n# Type checking\nmypy verifikio/\n```\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch: `git checkout -b feature-name`\n3. Make your changes and add tests\n4. Run the test suite: `pytest`\n5. Submit a pull request\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Support\n\n- \ud83d\udce7 **Email**: support@verifik.io\n- \ud83d\udcd6 **Documentation**: https://docs.verifik.io\n- \ud83d\udc1b **Bug Reports**: https://github.com/verifik-io/verifikio-python/issues\n- \ud83d\udcac **Community**: https://discord.gg/verifik\n\n## Changelog\n\n### 1.0.0 (2024-01-14)\n- Initial release\n- Core audit logging functionality\n- Chain verification\n- Full API coverage\n- Python 3.7+ support\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Official Python SDK for Verifik.io trust infrastructure platform",
    "version": "1.1.0",
    "project_urls": {
        "API Reference": "https://docs.verifik.io/api",
        "Bug Tracker": "https://github.com/verifik-io/verifikio-python/issues",
        "Documentation": "https://docs.verifik.io/sdk/python",
        "Homepage": "https://verifik.io",
        "Repository": "https://github.com/verifik-io/verifikio-python"
    },
    "split_keywords": [
        "audit",
        " logging",
        " security",
        " ai",
        " agents",
        " blockchain",
        " verification",
        " trust",
        " infrastructure"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9b0f722c15b154c2ecc371a645ca02678c26a6e66526a494ef1ae04ef0a979b9",
                "md5": "9a45e4a9085ba8e771f2b1f6b97fddaa",
                "sha256": "e862bbd9673595c90e831eeae4bda90c40e63412252e3ffc7c59778c2f314f20"
            },
            "downloads": -1,
            "filename": "verifikio_sdk-1.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "9a45e4a9085ba8e771f2b1f6b97fddaa",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 15988,
            "upload_time": "2025-07-15T20:11:49",
            "upload_time_iso_8601": "2025-07-15T20:11:49.548046Z",
            "url": "https://files.pythonhosted.org/packages/9b/0f/722c15b154c2ecc371a645ca02678c26a6e66526a494ef1ae04ef0a979b9/verifikio_sdk-1.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "f740de09641982ae59d587bb64677fe7d53302eb38e8d4baa802572af4648876",
                "md5": "f8784a69a05a42a1f515d80fac2e3917",
                "sha256": "57f12be6ea590ce031fb7fc93ba63fe7daa9303da996407bbb8054dae07c7780"
            },
            "downloads": -1,
            "filename": "verifikio_sdk-1.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "f8784a69a05a42a1f515d80fac2e3917",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 24978,
            "upload_time": "2025-07-15T20:11:50",
            "upload_time_iso_8601": "2025-07-15T20:11:50.736209Z",
            "url": "https://files.pythonhosted.org/packages/f7/40/de09641982ae59d587bb64677fe7d53302eb38e8d4baa802572af4648876/verifikio_sdk-1.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-15 20:11:50",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "verifik-io",
    "github_project": "verifikio-python",
    "github_not_found": true,
    "lcname": "verifikio-sdk"
}
        
Elapsed time: 2.00753s