Factorizer/Cluster ERP WikiCluster ERP English
Ana sayfa / API referansı

API

Subscriptions API (subscriptions)

/api/v1/subscriptions altındaki subscriptions modülünün HTTP uç noktaları: yetkiler, şemalar, durum kodları ve hata kodlarıyla 20 yol.

subscriptions modülü abonelik planlarını ve etkinleştirme, duraklatma, sürdürme, yenileme, iptal ve tarama içeren müşteri aboneliklerini sunar. 20 uç noktanın tamamı /api/v1/subscriptions altındadır. İş anlamı için Subscriptions modülü sayfasına bakın.

Grup olguları

Öğe Değer Kaynak
Temel yol /api/v1/subscriptions src/cluster_erp/core/module_base.py:37-38, src/cluster_erp/modules/subscriptions/module.py:41
Yönlendiriciler 2 dosyada 2 yönlendirici nesnesi; Uç nokta özeti bölümünde listelenir src/cluster_erp/modules/subscriptions/module.py:33
Uç noktalar 20; register_routes ile bağlanan yönlendiricilerin yol dekoratörleri ve add_api_route çağrılarından sayıldı src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py, src/cluster_erp/modules/subscriptions/plans/routes.py
Kimlik doğrulama Bearer başlığı veya oturum çerezi, get_current_user ile çözülür; bkz. Kimlik doğrulama ve başlıklar src/cluster_erp/modules/auth/guards.py:85-167
Yetki koruması 20 yolun 20 tanesi require_permission bildirir src/cluster_erp/modules/auth/guards.py:205-240
Hata biçimi JSON gövdesi {"error": {...}}; bkz. Hatalar src/cluster_erp/server/error_handler.py:33-46

Uç nokta özeti

Alt modül klasörü başına bir satır. Yönlendirici öneki temel yola eklenir.

Alt modül Yönlendiriciler Uç noktalar Yönlendirici kaynağı
plans router (/subscription-plans) 8 src/cluster_erp/modules/subscriptions/plans/routes.py:25
customer_subscriptions router 12 src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:34

Abonelik planları uç noktaları

Plan kayıtları, etkinleştirme ve emekliye ayırma.

Yöntem Yol İşleyici Yetki İstek Sorgu Yanıt Durum Kaynak
GET /api/v1/subscriptions/subscription-plans/ list_plans subscription_plan.read yok active_only, search dict 200 (varsayılan) src/cluster_erp/modules/subscriptions/plans/routes.py:42
POST /api/v1/subscriptions/subscription-plans/ create_plan subscription_plan.create PlanCreate yok PlanRead 201 src/cluster_erp/modules/subscriptions/plans/routes.py:65
GET /api/v1/subscriptions/subscription-plans/{plan_id} get_plan subscription_plan.read yok yok PlanRead 200 (varsayılan) src/cluster_erp/modules/subscriptions/plans/routes.py:74
PUT /api/v1/subscriptions/subscription-plans/{plan_id} update_plan subscription_plan.update PlanUpdate yok PlanRead 200 (varsayılan) src/cluster_erp/modules/subscriptions/plans/routes.py:86
POST /api/v1/subscriptions/subscription-plans/{plan_id}/activate activate_plan subscription_plan.activate yok yok PlanRead 200 (varsayılan) src/cluster_erp/modules/subscriptions/plans/routes.py:99
POST /api/v1/subscriptions/subscription-plans/{plan_id}/retire retire_plan subscription_plan.retire yok yok PlanRead 200 (varsayılan) src/cluster_erp/modules/subscriptions/plans/routes.py:111
DELETE /api/v1/subscriptions/subscription-plans/{plan_id} delete_plan subscription_plan.delete yok yok yok 204 src/cluster_erp/modules/subscriptions/plans/routes.py:123
POST /api/v1/subscriptions/subscription-plans/bulk-delete bulk_delete_plans subscription_plan.bulk_delete BulkDeleteRequest yok BulkDeleteResponse 200 (varsayılan) src/cluster_erp/modules/subscriptions/plans/routes.py:133

Müşteri abonelikleri uç noktaları

Yönlendiricinin öneki yoktur; abonelik yolları doğrudan modül temel yolunun altındadır (src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:30-34). Dört eylem yolu add_api_route ve ortak bir işleyici fabrikasıyla eklenir (src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:110-148).

Yöntem Yol İşleyici Yetki İstek Sorgu Yanıt Durum Kaynak
GET /api/v1/subscriptions/ list_subscriptions customer_subscription.read yok customer_id, status, search dict 200 (varsayılan) src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:51
POST /api/v1/subscriptions/ create_subscription customer_subscription.create SubscriptionCreate yok SubscriptionRead 201 src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:76
GET /api/v1/subscriptions/{sub_id} get_subscription customer_subscription.read yok yok SubscriptionRead 200 (varsayılan) src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:85
PUT /api/v1/subscriptions/{sub_id} update_subscription customer_subscription.update SubscriptionUpdate yok SubscriptionRead 200 (varsayılan) src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:97
POST /api/v1/subscriptions/{sub_id}/activate activate_subscription customer_subscription.activate yok yok SubscriptionRead 200 (varsayılan) src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:125
POST /api/v1/subscriptions/{sub_id}/pause pause_subscription customer_subscription.pause yok yok SubscriptionRead 200 (varsayılan) src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:131
POST /api/v1/subscriptions/{sub_id}/resume resume_subscription customer_subscription.resume yok yok SubscriptionRead 200 (varsayılan) src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:137
POST /api/v1/subscriptions/{sub_id}/renew renew_subscription customer_subscription.renew yok yok SubscriptionRead 200 (varsayılan) src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:143
POST /api/v1/subscriptions/{sub_id}/cancel cancel_subscription customer_subscription.cancel CancelRequest \| None yok SubscriptionRead 200 (varsayılan) src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:151
DELETE /api/v1/subscriptions/{sub_id} delete_subscription customer_subscription.delete yok yok yok 204 src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:164
POST /api/v1/subscriptions/sweep run_sweep customer_subscription.renew yok as_of dict 200 (varsayılan) src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:174
POST /api/v1/subscriptions/bulk-delete bulk_delete_subscriptions customer_subscription.bulk_delete BulkDeleteRequest yok BulkDeleteResponse 200 (varsayılan) src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:190

Hata kodları

Tablo, src/cluster_erp/modules/subscriptions/ altındaki kodun attığı hata kodlarını listeler. Kodlar, AppError(...) çağrıları, src/cluster_erp/core/errors.py içindeki fabrikalar (not_found, conflict, protected, permission_denied, privilege_escalation, check_version) ve HTTPException(...) için yapılan bir sözdizimi ağacı taramasıyla bulundu. 400 durumu AppError varsayılanıdır (src/cluster_erp/core/errors.py:23). Koruma hataları (401, 403), yetkilendirme kodları ve doğrulama hataları (422) her yol için geçerlidir ve Hatalar sayfasında listelenir.

Kod HTTP durumu Atıldığı yer İlk konum
CONCURRENCY_VERSION_CONFLICT 409 customer_subscriptions, plans src/cluster_erp/modules/subscriptions/customer_subscriptions/services.py:215
RESOURCE_CONFLICT 409 customer_subscriptions, plans src/cluster_erp/modules/subscriptions/customer_subscriptions/services.py:132
RESOURCE_NOT_FOUND 404 customer_subscriptions, plans src/cluster_erp/modules/subscriptions/customer_subscriptions/routes.py:93

Yayımlanan olaylar

Tablo, src/cluster_erp/modules/subscriptions/ altındaki kodun EventBus.emit çağrısına doğrudan verdiği sözleşme sınıflarını listeler; sözdizimi ağacı taramasıyla bulundu. Önce bir değişkene kurulan olaylar sayılmaz. Sözleşmeler Sözleşmeler başvurusu sayfasında anlatılır.

Sözleşme Konum sayısı İlk konum
event_cls 1 src/cluster_erp/modules/subscriptions/customer_subscriptions/services.py:428

İlgili sayfalar


92f8051 numaralı commit ile 2026-11-13 tarihinde doğrulandı.

Doğrulanan commit 92f8051 · 2026-11-13