Skip to main content

Official Python SDK for the Metalift web context API

Project description

metalift-sdk

Official Python SDK for Metalift — turn any URL into agent-ready markdown, HTML, or structured data.

Install

pip install metalift-sdk

Requires Python 3.10+.

Quick start

from metalift_sdk import Metalift

client = Metalift(api_key="YOUR_API_KEY")

result = client.scrape(
    "https://example.com",
    formats=["markdown"],
)
print(result["data"]["markdown"])

Get an API key from the Metalift dashboard. New accounts receive 1,000 free credits/month.

Configuration

from metalift_sdk import Metalift

client = Metalift(
    api_url="https://api.metalift.ai",  # default
    api_key="YOUR_API_KEY",
    timeout=60.0,
)

Environment variables are also supported:

Variable Description
METALIFT_API_URL API base URL (default: https://api.metalift.ai)
METALIFT_API_KEY Bearer token for authenticated requests

API

Scrape

client.scrape(
    "https://example.com",
    formats=["markdown"],
    render="auto",
    only_main_content=True,
    strategy="default",
)

Batch scrape

client.batch(
    ["https://example.com", "https://example.org"],
    async_=True,
    scrape_options={"formats": ["markdown"]},
)

Crawl and map

crawl_job = client.crawl("https://example.com", limit=50)
map_result = client.map("https://example.com", limit=100)

Async jobs

job = client.crawl("https://example.com", limit=20)
completed = client.wait_for_job(job["job_id"])
print(completed["status"], completed.get("data"))

Strategies and protected sites

strategies = client.list_strategies()
protection = client.list_protection_types()

client.scrape(
    "https://www.walmart.com/ip/EXAMPLE",
    strategy="retail",
    formats=["markdown"],
)

client.fetch_session(url="https://www.walmart.com/", domain="www.walmart.com")

Session cookies

client.seed_session(
    domain="example.com",
    cookies=[{"name": "session", "value": "...", "domain": "example.com", "path": "/"}],
)

Errors

API failures raise MetaliftError:

from metalift_sdk import Metalift, MetaliftError

try:
    client.scrape("https://example.com")
except MetaliftError as exc:
    print(exc.status_code, exc.detail)

Links

License & distribution

metalift-sdk is proprietary software licensed under the terms in LICENSE. Use, copying, modification, and redistribution are not permitted except as expressly authorized by Metalift.

The package is published on the public Python Package Index (PyPI) so customers can install it with pip install metalift-sdk. Publishing on PyPI does not make the software open source: the wheel and source archive are publicly downloadable, but legal use remains governed by the proprietary license.

Do not commit API keys or other credentials into your application code. Pass them at runtime via the api_key argument or the METALIFT_API_KEY environment variable.

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

metalift_sdk-1.0.1.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

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

metalift_sdk-1.0.1-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file metalift_sdk-1.0.1.tar.gz.

File metadata

  • Download URL: metalift_sdk-1.0.1.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for metalift_sdk-1.0.1.tar.gz
Algorithm Hash digest
SHA256 49c45fe6d3e4914551b6a80fcc56e5e9679566c31ee9ff18cecd2f2243fb2bd6
MD5 37cf3535dd8fbf3f2170f331372ecdc8
BLAKE2b-256 772a050351dab44ff7042355e8afe0a9f2aff39d2f8da1d0a7e02c6b9bc0c6d7

See more details on using hashes here.

File details

Details for the file metalift_sdk-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: metalift_sdk-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 6.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for metalift_sdk-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 791f4d275daf8ea1274c299eaf56aefc54b857ccdf5544ba08f69ac534eee2c0
MD5 5ae6c0b3d078660e43aa8f1cc0300730
BLAKE2b-256 649ac3919f392560bf6c756114a598df3c6a6e85d1c7153e4f11bdf0e15b756a

See more details on using hashes here.

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