Skip to main content

Python client library for Proscia Concentriq Life Sciences API

Project description

Concentriq LS Python Client

Python client library for Proscia Concentriq Life Sciences API.

Python 3.10+ codecov License: MIT

Features

  • Complete API Coverage - V1, V2, and V3 APIs
  • Multiple Auth Methods - API Key, Basic, JWT, Session
  • Type Safe - Full type hints with mypy support
  • Test Driven - Comprehensive test coverage
  • Modern Python - Python 3.10+ with Pydantic v2

Quick Start

from concentriq import ConcentriqClient
from concentriq.auth import ApiKeyAuth

# Create authenticated client
with ConcentriqClient(
    base_url="https://app.concentriq.com",
    auth=ApiKeyAuth(api_key="your-api-key")
) as client:
    # V1 API - Core resources
    image_sets = client.v1.image_sets.list()
    images = client.v1.images.list(filters={"imageSetId": 123})

    # V2 API - User management
    groups = client.v2.user_groups.list()

    # V3 API - Modern features
    studies = client.v3.studies.list()
    seed = client.v3.image_sets.generate_seed(image_set_id=123)

Documentation

Installation

pip install concentriq-ls-client

Or with uv:

uv add concentriq-ls-client

API Coverage

V1 API (/api/*) - Core Resources

Image Management:

  • ImageSets - CRUD + pagination + filters
  • Images - List, get, download
  • Folders - Full CRUD
  • Annotations - Full CRUD

Data & Metadata:

  • Metadata - Fields (with cached lookup by name) and values management
  • DropdownResolver - Translate between dropdown option text and IDs
  • Attachments - Upload and manage files

Upload:

  • upload_image() - High-level helper: create image record + upload file (single-part or multipart)

Organization:

  • Users - User management
  • Organizations - Organization info
  • Templates - Template CRUD
  • Workflows - Workflow management
  • Orders - Stain and recut orders

V2 API (/api/v2/*) - Extended Features

  • UserGroups - Group management with permissions
  • Modules - External module configuration
  • SavedDisplaySettings - Fluorescence display settings

V3 API (/api/v3/*) - Modern Features

Authentication & Security:

  • Auth - JWT tokens, API keys, whoami

Research & Studies:

  • Studies - Full CRUD + fields/users/statistics
  • ImageSets - Seed generation + blinding for research
  • AuditLogs - Audit log status

Configuration:

  • AnnotationClasses - Annotation type management
  • ChannelGroups - Fluorescence channel groups
  • AppConfig - Application configuration
  • Users - User settings management
  • Images - Image metadata

Requirements

  • Python 3.10+
  • httpx >= 0.27.0
  • pydantic >= 2.0.0

Development

# Setup
uv sync --all-extras

# Run tests
uv run pytest tests/unit/ -v

# With coverage
uv run pytest tests/unit/ --cov=concentriq --cov-report=term-missing

See CHANGELOG.md for version history.

License

Copyright 2025 Proscia Inc.

Licensed under the MIT License. See LICENSE for details.

Support

For issues and questions:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

concentriq_ls_client-0.2.0.tar.gz (131.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

concentriq_ls_client-0.2.0-py3-none-any.whl (49.4 kB view details)

Uploaded Python 3

File details

Details for the file concentriq_ls_client-0.2.0.tar.gz.

File metadata

  • Download URL: concentriq_ls_client-0.2.0.tar.gz
  • Upload date:
  • Size: 131.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for concentriq_ls_client-0.2.0.tar.gz
Algorithm Hash digest
SHA256 a2aa0f49ee36fcb31915f802ad671026cb4223068252ece72c4d26e7416097e2
MD5 822d51307d53a81e35d6aaeab4141d7d
BLAKE2b-256 e22db17527cbba80b600029ef37f777643f5aac29f37c376981767a6dbe20ee4

See more details on using hashes here.

Provenance

The following attestation bundles were made for concentriq_ls_client-0.2.0.tar.gz:

Publisher: publish.yml on Proscia/concentriq-ls-python-client

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file concentriq_ls_client-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for concentriq_ls_client-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a98b98313b6cda785742591a2252e6d9cfea1bdb52842a5ca90840e6c32c764b
MD5 f76fe74c82a1e9e6e6c6846ed1050cd7
BLAKE2b-256 333b5cae41dbbe6f2519b1d0639e836b788d43369e628447862929cc0c30f5ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for concentriq_ls_client-0.2.0-py3-none-any.whl:

Publisher: publish.yml on Proscia/concentriq-ls-python-client

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page