Skip to main content

isgenai

Python client for the isGenAI check API. Send an image, a public URL, a passage of text or a piece of code to POST https://isgenai.com/v1/check and get back the JSON result: AI-image and AI-text detector evidence, Content Credentials (C2PA), AI labels in metadata, saved generation prompts and known-copy matches, each finding with its source.

  • Standard library only (no dependencies), Python 3.8+.
  • No API key is needed for the documented public endpoints. Record checks (Content Credentials, AI labels, saved prompts) are unlimited; the public API allows a few AI scans per day per IP address.
  • Paid plans (from US$5 a month) add monthly AI scans; pass the key from https://isgenai.com/account as api_key.
  • Checks are private by default (privacy="private", public_receipt=False): no public report is created unless you ask for one.

Install

pip install isgenai

Use

import isgenai

# A local image (PNG, JPEG, WebP, AVIF, TIFF, up to 20 MB)
result = isgenai.check_file("picture.png")
print(result["public_result"]["headline"])

# A public image or page URL
result = isgenai.check_url("https://isgenai.com/examples/saved-details/with-saved-details.png")
for item in result["evidence"]:
    print(item["class"], item["outcome"], item["summary"])

# Text
result = isgenai.check_text("Paste the paragraph you want to check here. Longer passages give steadier results.")
print(result["public_result"]["summary"])

# Code
result = isgenai.check_code("def add(a, b):\n    return a + b", language="Python")

Every function returns the parsed JSON as a dict. The shape is documented in the OpenAPI file at https://isgenai.com/openapi.json and on https://isgenai.com/api. Useful keys:

Key Meaning
public_result.headline / summary The headline isGenAI shows, with the caveat that applies
verdict The machine-readable verdict
evidence[] Each finding: provider, class (cryptographic_provenance, declarative_metadata, explicit_disclosure, probabilistic_detector, historical_match, ...), outcome, strength, summary, details
disclosures[] AI disclosures read from the page or file
adapter_runs[] Which detectors ran and their status (available, not_configured, rate_limited, ...)
ai_scans Scans used, limit and remaining for the caller
receipt Present only for public checks (the public report)

Options

All functions accept privacy ("private" or "public"), public_receipt (bool), api_key, endpoint and timeout. check_file, check_url and check_text also accept deep=True for a slower, more thorough pass where available.

Errors

Non-2xx responses raise isgenai.IsGenAIError with .status, .code and .body:

try:
    isgenai.check_text(text)
except isgenai.IsGenAIError as exc:
    if exc.status == 429:
        print("Daily public scans used up; add an api_key or try tomorrow.")
    else:
        print(exc)

What a result means

A missing Content Credential or label is not proof that a person made the image: metadata is often removed when files are re-saved or uploaded. A detector score is a probabilistic estimate, not a verdict. isGenAI reports exactly what was found and names the source of every finding. Methodology: https://isgenai.com/checker-methodology

License

MIT. Not affiliated with any AI model vendor.

Metadata

Release files for isgenai 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for isgenai 0.1.0
File Size Uploaded Provenance Actions
isgenai-0.1.0.tar.gz 6.7 kB Without provenance Details for isgenai-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for isgenai 0.1.0
File Interpreter ABI Platform Actions
isgenai-0.1.0-py3-none-any.whl Python 3 none any Details for isgenai-0.1.0-py3-none-any.whl

Total release size: 13.4 kB

Release files / isgenai-0.1.0.tar.gz

Download URL isgenai-0.1.0.tar.gz
Size 6.7 kB
Tags Source
SHA-256 checksum
How to use checksums
f6632534e685c39654894eea5a76a3fbdb49b262c3b7a5d6b03f223e028bfff1
BLAKE2b-256 checksum
How to use checksums
8a5db2c0a565a853864e5d96f6ecc57102e0b8b5daee9e1f6a481a811c6a702e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.1

Release files / isgenai-0.1.0-py3-none-any.whl

Download URL isgenai-0.1.0-py3-none-any.whl
Size 6.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2d2a4c5b6d95252a595526654ba23c14a8f1e20c446b33fd136d2d297428e13f
BLAKE2b-256 checksum
How to use checksums
57fb58103db8a6793aa009f0a207617b626e21313dbf3df63aeb330a7386029d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.1

Security for isgenai 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page