Skip to main content

A client for interacting with PTT AVM API

Project description

UNOFFICIAL PTT AVM API İstemcisi

PTT AVM API entegrasyonu için Python istemci kütüphanesi.

Son Sürüm: v0.1.3

Yeni Eklenenler

  • ✨ Stok servisleri eklendi
    • Toplu stok listeleme
    • Tek ürün stok kontrolü
    • Sayfalı listeleme desteği
    • Toplam stok sayısı hesaplama
  • 📊 İlerleme takibi için callback sistemi
  • 🔄 Sayfalama desteği (1000 ürün/sayfa)

Değişenler

  • 🔨 Import yapısı basitleştirildi
    • Eski: from pttavm.client import PTTAVMClient
    • Yeni: from pttavm import PTTClient
  • 📝 Daha temiz ve anlaşılır API
  • ⚡️ Daha verimli hata yönetimi
  • 🎯 Son kullanıcı odaklı geliştirmeler

Devamı için tıklayın

Motivasyon

Bu proje, PTT AVM SOAP API'nin site docs ile verilen ultra yetersiz dokümantasyonuna tepki olarak doğmuştur.

Kurulum

Gereksinimler

  • Python 3.7 veya üstü
  • pip (Python paket yöneticisi)

Pip ile kurulum

pip install pttavm-python

Geliştirici Kurulumu

  1. Repoyu Klonlayın:

    git clone https://github.com/selimkosgen/pttavm_python.git
    cd pttavm
    
  2. Sanal Ortam Oluşturun ve Aktifleştirin:

    python -m venv venv
    source venv/bin/activate  # Linux/macOS
    # veya
    .\venv\Scripts\activate  # Windows
    
  3. Gereksinimleri Yükleyin:

    pip install -e .
    

Kullanım

  1. Çevre Değişkenlerini Ayarlayın:

    .env dosyası oluşturun ve API kimlik bilgilerinizi ekleyin:

    cp .env.example .env
    

    .env dosyasını düzenleyerek API kimlik bilgilerinizi girin:

    PTT_USERNAME=your_username
    PTT_PASSWORD=your_password
    
  2. Örnek Kullanım:

from pttavm import PTTClient

# İstemciyi başlat
client = PTTClient(
    username="your_username",
    password="your_password"
)

# Stok işlemleri
total_stocks = client.get_stock_count()
print(f"Toplam stok: {total_stocks}")

# Tek ürün bilgisi
stock = client.get_stock("barcode123")
if stock:
    print(f"Ürün: {stock.product.product_name}")
    print(f"Stok: {stock.quantity}")

# Tüm stokları getir
def progress_callback(stocks, page, total):
    print(f"Sayfa {page} yüklendi (Toplam: {total} ürün)")

all_stocks = client.get_all_stocks(progress_callback=progress_callback)

Örnek kullanımlar için examples/ klasörüne göz atabilirsiniz:

  • examples/version_example.py: API versiyon bilgisi alma örneği
  • examples/category_example.py: Kategori listesi alma örneği
  • examples/product_example.py: Ürün bilgisi sorgulama örneği
  • examples/stock_example.py: Stok işlemleri örneği

Özellikler

Mevcut Özellikler

  • ✅ Authentication (API Kimlik Doğrulama)
  • ✅ GetVersion (API Versiyon Bilgisi)
  • ✅ Kategori Servisleri
    • AltKategoriListesi
    • KategoriListesi
    • GetCategoryTree
  • ✅ Stok Servisleri
    • StokKontrolListesi (Sayfalı listeleme)
    • Tek ürün stok kontrolü
    • Toplu stok listeleme
    • Toplam stok sayısı hesaplama
  • ✅ Barkod Kontrol (Ürün Servisleri)
  • 🔴 Ürün Servisleri
    • AktifYap
    • BarkodKontrolBulk
    • GetProductsWithVariants
    • StokFiyatGuncelle
    • StokFiyatGuncelle2
    • StokFiyatGuncelle3
    • StokFiyatGuncelleBulk
    • StokGuncelle
    • StokGuncelleBulk
    • StokGuncelleV2
    • StokGuncelleV2Bulk
    • UpdateProductVariant
  • 🔴 Kategori Servisleri
    • GetCategory
    • GetMainCategories
    • TedarikciAltKategoriListesi
  • 🔴 Sipariş Servisleri
    • SaveInvoince
    • SiparisKontrolListesiV2
  • 🔴 Mağaza Servisleri
    • GetCargoProfiles
    • KullaniciTedarikciBilgisiGetir
  • 🔴 Kargo ve Teslimat Servisleri
    • /v1/get-barcode-tag

Hedeflenen Temel Özellikler

  • ✅ Kapsamlı dokümantasyon ve örnekler
  • ✅ Kolay kullanımlı Python arayüzü
  • ✅ Hata yönetimi ve doğrulama
  • ✅ Tip güvenliği
  • ✅ Otomatik test desteği
  • ✅ İlerleme takibi (Progress callback)
  • ✅ Sayfalı listeleme desteği

Eklenmesi Planlanan Özellikler

Henüz eklenmemiş olan ve gelecekteki güncellemelerde yer alması planlanan özellikler şunlardır:

  • Stok ve Fiyat Güncelleme Servisleri

    • StokFiyatGuncelle, StokFiyatGuncelleBulk, StokGuncelleV2 vb.
  • Sipariş Servisleri

    • SiparisKontrolListesi, KargoBilgiListesi
  • Kargo ve Teslimat Servisleri

    • /v1/barcode-status, /v1/create-barcode, /v1/get-warehouse vb.

Değişiklik Geçmişi

v0.1.3

  • ✨ Stok servisleri eklendi
  • 📊 İlerleme takibi için callback sistemi eklendi
  • 🔄 Sayfalama desteği (1000 ürün/sayfa)
  • 🔨 Import yapısı basitleştirildi
  • 📝 API kullanımı sadeleştirildi
  • ⚡️ Hata yönetimi geliştirildi

v0.1.2

  • PTTAVMClient ismi PTTClient olarak değiştirildi
  • Stok servisleri eklendi ve geliştirildi
  • İlerleme takibi için callback desteği eklendi
  • Sayfalı listeleme desteği eklendi
  • Hata yönetimi geliştirildi

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

pttavm_python-0.1.3.tar.gz (14.8 kB view details)

Uploaded Source

Built Distribution

pttavm_python-0.1.3-py3-none-any.whl (14.1 kB view details)

Uploaded Python 3

File details

Details for the file pttavm_python-0.1.3.tar.gz.

File metadata

  • Download URL: pttavm_python-0.1.3.tar.gz
  • Upload date:
  • Size: 14.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for pttavm_python-0.1.3.tar.gz
Algorithm Hash digest
SHA256 2af0232f2bc33e5544488f5f8d8f384dd17a8687ad19a5573574381bc709f4a9
MD5 5ea6c7669d303d5c4d1e05765115fdc1
BLAKE2b-256 56b3679c2696a2f81e721a1ac072c41377cd2bfd529aed34f41edeaf36709af6

See more details on using hashes here.

File details

Details for the file pttavm_python-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for pttavm_python-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 0dcdf0b5e059ce80c885ad28a920fe8826da466379e8492080fcac2814426b6e
MD5 96cd9dcfe3e3e60430a12558d1fb7bfb
BLAKE2b-256 2668d6431654f7450f1e23536f9694f68044d90919222b351508d40fd6cbd3f3

See more details on using hashes here.

Supported by

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