Skip to main content

API

API yang disediakan sejoli + addon sejoli license memungkinkan Anda mengaktifkan kode lisensi dari jarak jauh, memeriksa apakah kode tersebut valid (dan tidak expired), dan juga mengambil informasi tentang versi plugin/theme/app. API ini dapat diimplementasikan dengan sebagian besar perangkat lunak/app, bukan hanya Plugin dan Theme WordPress.

Permintaan API yang tersedia

  • activation_license → Digunakan untuk mengaktifkan kode lisensi dari jarak jauh
  • deactivate_license → Digunakan untuk menonaktifkan kode lisensi dari jarak jauh
  • check_license → Digunakan untuk memeriksa dari jarak jauh apakah kode lisensi diaktifkan, valid, dan tidak kedaluwarsa
  • get_version → Digunakan untuk mengambil informasi versi terbaru suatu produk dari jarak jauh

Masing-masing metode di bawah ini bekerja dengan cara yang sama. URL situs web tempat Anda menginstal plugin Sejoli + Sejoli License Manage akan bertindak sebagai titik akhir API. Semua permintaan ke API dilakukan sebagai permintaan GET atau POST dan ikuti format ini:

https://YOURSITE.com/?sejoli_action={request type}&item_name={slug product
}&license=0000072651-CCS5T-TNZ1L-JEXN3-1O0CSD&url={url web diinput lisensi}

Permintaan tersebut memerlukan tiga parameter dan memiliki satu parameter opsional:

  • sejoli_action → Ini adalah jenis permintaan (lihat di bawah)
  • item_name → Merupakan nama directory/folder plugin atau theme.
  • lisensi → Ini adalah kode lisensi yang Anda gunakan untuk melakukan tindakan
  • url → (opsional) Ini adalah URL situs asal permintaan API
Tip URL untuk Perangkat Lunak Desktop :

Parameter url tidak terbatas pada URL. Misalnya perangkat lunak desktop dapat menggunakan parameter url untuk ID Sistem atau teks unik apa pun.

Aktifkan Kode Lisensi

Untuk mengaktifkan lisensi dari jarak jauh, URL yang akan Anda gunakan adalah:

https://YOURSITE.com/?sejoli_action=activate_license&item_name=element-widgets
&license=0000072651-CCS5T-TNZ1L-JEXN3-1O0CSD&url=http://licensedsite.com

Parameter lisensi diatur ke kode lisensi yang ingin Anda aktifkan.

Respons atas permintaan ini adalah objek JSON. Jika lisensi telah berhasil diaktifkan maka responnya adalah:

{
"success": true,
"license": "valid",
"item_id": false (or Item ID if passed)
"item_name": "Sejoli Product Name",
"license_limit": 0,
"site_count": 2,
"expires": "2020-06-30 23:59:59",
"activations_left": "unlimited",
"checksum": "<md5 checksum>",
"payment_id": 12345,
"order_parent_id": 0,
"customer_name": "John Doe",
"customer_email": "john@sample.org"
}

Jika lisensi tidak valid dan gagal diaktifkan, responsnya adalah:

{
"success": false,
"license": "invalid",
"item_id": false (or Item ID if passed)
"item_name": "Sejoli Product Name",
"error": "expired",
"expires": "2020-04-28 23:59:59",
"license_limit": 0,
"site_count": 1,
"activations_left": "unlimited",
"checksum": "<md5 checksum>",
"payment_id": 12345,
"order_parent_id": 0,
"customer_name": "John Doe",
"customer_email": "john@sample.com"
}

Kemungkinan kesalahan:

missing → Lisensi tidak ada missing_url → URL tidak disediakan disabled → Kunci lisensi dicabut no_activations_left → Tidak ada aktivasi tersisa expired → Lisensi telah kedaluwarsa key_mismatch → Lisensi tidak berlaku untuk produk ini id_item_id → ID Item tidak valid item_name_mismatch → Lisensi tidak berlaku untuk produk ini site_inactive → ​​Situs tidak aktif untuk lisensi ini invalid → Kunci lisensi tidak cocok valid → Lisensi valid

Periksa apakah Lisensinya valid

Memeriksa apakah suatu lisensi valid dan tidak expired sangat mirip dengan aktivasi. Permintaan ini biasanya dilakukan jika Anda perlu memastikan bahwa suatu lisensi masih berlaku setelah diaktifkan. Lisensi akan habis masa berlakunya setelah satu tahun (secara default), jadi inilah yang akan Anda gunakan untuk memeriksa apakah lisensi telah habis masa berlakunya.

Untuk memeriksa lisensi dari jarak jauh, URL yang akan Anda gunakan adalah:

https://YOURSITE.com/?sejoli_action=check_license&element-widgets
&license=0000072651-CCS5T-TNZ1L-JEXN3-1O0CSD&url=http://licensedsite.com

Parameter lisensi diatur ke kode lisensi yang ingin Anda periksa. Respons atas permintaan ini adalah objek JSON. Jika lisensinya aktif dan masih berlaku maka responnya adalah:

{
"success": true,
"license": "valid",
"item_id": false, (or Item ID if passed)
"item_name": "Sejoli Product Name",
"checksum": "",
"expires": "2020-06-30 23:59:59",
"payment_id": 12345,
"order_parent_id": 0,
"customer_name": "John Doe",
"customer_email": "john@example.org",
"license_limit": 0,
"site_count": 2,
"activations_left": "unlimited",
}

Jika lisensinya tidak valid, responsnya adalah:

{
"success": false,
"license": "invalid",
"item_id": false, (or Item ID if passed)
"item_name": "Sejoli Product Name",
"expires": "2014-10-23 00:00:00",
"license_limit": 0,
"site_count": 1,
"activations_left": "unlimited",
"checksum": "checksum",
"payment_id": 54224,
"order_parent_id": 0,
"customer_name": "John Doe",
"customer_email": "john@sample.com",
}

Kemungkinan status lisensi:

  • disabled → Kunci lisensi dicabut
  • expired → Lisensi telah kedaluwarsa
  • key_mismatch → Lisensi tidak berlaku untuk produk ini
  • id_item_id → ID Item tidak valid
  • item_name_mismatch → Lisensi tidak berlaku untuk produk ini

Mendapatkan informasi versi

Mengambil informasi versi memungkinkan Anda mengambil data tentang nomor versi terbaru dari jarak jauh, termasuk log perubahan dan tautan unduh untuk file pembaruan.

Untuk mendapatkan informasi versi kode lisensi:

https://YOURSITE.com/?sejoli_action=get_version&element-widgets
&license=0000072651-CCS5T-TNZ1L-JEXN3-1O0CSD&url=http://licensedsite.com

Responsnya akan berupa objek JSON yang terlihat seperti ini:

{
“new_version”: “1.0.0”,
“version”: “1.0.0”,
“name”: “Element Widgets (3 Domain)”,
“slug”: “element-widgets”,
“requires”: 6.1,
“requires_php”: 7.4,
“url”: “https://membership.com/product/element-widgets-3-domain/?changelog=1”,
“last_updated”: “2024-10-17 14:02:15”,
“homepage”: “https://membership.com/product/element-widgets-3-domain/”,
“package”: “https://membership.com/sejoli-sl/package_download/MTcyOTMwNDIwNjowMDAwMDcyNjUxLUNDUzVULVROWjFMLUpFWE4zLTFPMENEOjcyNjpkMjAwNjQxNDdkZDZmMmQwZjU5OWVjNjhkMmIxOGMwYTpodHRwc0AvL3Byb2plY3RzLmxvY2FsOjA=”,
“download_link”: “https://membership.com/sejoli-sl/package_download/MTcyOTMwNDIwNjowMDAwMDcyNjUxLUNDUzVULVROWjFMLUpFWE4zLTFPMENEOjcyNjpkMjAwNjQxNDdkZDZmMmQwZjU5OWVjNjhkMmIxOGMwYTpodHRwc0AvL3Byb2plY3RzLmxvY2FsOjA=”,
“sections”: “a:2:{s:11:\”description\;s:0:\\;s:9:\”changelog\;s:0:\\;}”,
“banners”: “a:2:{s:4:\”high\;s:0:\\;s:3:\”low\;s:0:\\;}”,
“icons”: “a:0:{}
}

Catatan mengenai tanggapan:

  • Jika tidak ada kode lisensi yang diberikan dalam permintaan get_version, informasi versi tetap dikembalikan; namun, nilai url paket dan unduhan akan kosong. Sebaliknya, jika kode lisensi diberikan tetapi bukan milik item_name dalam permintaan, respons kesalahan akan dikembalikan dengan alasan sebagai nilai pesan.
  • Download_link akan disertakan jika file ada terlepas dari status lisensinya. Namun pengunduhan tidak akan berfungsi kecuali lisensinya aktif. Hal ini memungkinkan situs yang lisensinya telah habis masa berlakunya, untuk memperbaruinya, namun tidak perlu menunggu cache pembaruan dihapus sebelum mendapatkan pembaruan.
  • Properti section adalah array berseri yang mencakup deskripsi produk lengkap dan log perubahan.

Bagaimana cara mencegah akses ke perangkat lunak, plugin, atau theme saya jika lisensinya sudah habis masa berlakunya atau dinonaktifkan?

Status lisensi ini tidak mempengaruhi perangkat lunak/app, hanya menunjukkan status lisensinya. Terserah pengembang untuk membaca status itu untuk melakukan sesuatu. Misalnya, jika lisensi sudah Kedaluwarsa, perangkat lunak/app dapat memilih untuk berhenti bekerja atau memilih untuk memunculkan peringatan.

Satu pengecualian untuk hal ini adalah ketika melihat lisensi yang kedaluwarsa atau dinonaktifkan melekat pada unduhan, tautan unduhan, termasuk tautan get_version, tidak akan berfungsi. Oleh karena itu, pembaruan tidak lagi berfungsi melalui respons get_version.