Geliştirici Merkezi

TR

Özelleştirme

WISECP API’yi kendinize özel eylemler yaratarak özelleştirebilirsiniz.

Eylem Oluşturmak

Yeni bir API eylemi oluşturmak için, harici bir API kullanıyorsanız, API'e ait kimlik bilgilerinin oluşturduğunuz eylem için gerekli izinleri içerdiğinden emin olmanız gerekmektedir. Aksi takdirde, yetkilendirilmemiş istekler için işlem başarısız sonuçlanacaktır.

Eylemleri oluşturmak için iki yöntem bulunmaktadır:

  • Yöntem 1: "coremio/configuration/api-actions.php" dosyasını düzenlemek.
    Ancak, bu yöntem gelecek sürümlerde dosya sıfırlanma potansiyeli sebebiyle önerilmemektedir.
  • Yöntem 2: Bir modüle ait sınıf dosyası içerisinde eylem oluşturmak. (Tavsiye edilir.)
    Bu yöntem, örneğin "coremio/modules/Addons/SampleAddon/SampleAddon.php" dosyasında yapılabilir.

1. Yöntem

"coremio/configuration/api-actions.php" dosyasını açın ve yeni eylemlerinizi aşağıda örnek verilen formatta ekleyin.

<?php
    return [
        'api-actions' => [
            'Clients' => [
                'CreateClientSsoToken',
                'ValidateClient',
            ],
            'Billing' => [
                'GetInvoice',
                'GetInvoices',
                'CreateInvoice',
                'CreateInvoiceItem',
                'UpdateInvoice',
                'UpdateInvoiceItem',
                'DeleteInvoice',
                'DeleteInvoiceItem',
                'NewAction', // A new action for the existing Group
            ],
            // New group and action
            'NewSample' => [
                'YourAction1',
                'YourAction2',
            ]
            
        ],
    ];

2.Yöntem

Geliştirmekte olduğunuz modülün sınıf dosyasını açın ve aşağıda örnek verilen formatta düzenleme yapınız.

<?php
    class SampleAddon
    {
        // Sample methods
    }
    // Set api actions
    Config::set("api-actions",[
        'Billing' => [
            'TestAction',
        ],
        'NewSample' => [
            'YourAction1',
            'YourAction2',
        ]
    ]);

Eylem Kodları

Eylemi oluşturduktan sonra bu eyleme atılacak isteklere vereceğiniz yanıtı ayarlamak için bir sınıf hazırlamanız gerekiyor.

"coremio/helpers/apis/" dizinine, yeni oluşturduğunuz eylemin adıyla eşleşen bir PHP dosyası yerleştirin. Örneğin "NewSample.php".

Örnek olarak aşağıdaki php kodunu kullanabilirsiniz:

<?php
    namespace WISECP\Api;
    class NewSample
    {
        public array $endpoint; // /api/NewSample/YourAction/$endpoint.. value in continuation
        public array $query_params; // Returns the query parameters, input: ?param1=value1&param2=value2 , Output: ['param1' => 'value1','param2' => 'value2']
        public function YourAction1($params=[])
        {
            if(\Filter::SERVER("REQUEST_METHOD") != "POST") throw new \Exception("Invalid request");
            $api_credential = \Api::get_credential(); // Database api_credentials values

            if(($params["sample_field"] ?? '') != "test123")
                throw new \Exception("Please fill in sample_field");

            $return = [
                'status' => "successful",
                'data'   => [
                    'test1' => "value1",
                    'test2' => "value2",
                ],
            ];

            // Set Internal log
            if(!$api_credential)
                \Api::save_log(0,'INTERNAL',__FUNCTION__,debug_backtrace()[0] ?? [],$params,$return,\UserManager::GetIP());
            return $return;
        }

    }
Kullanım Örnekleri

Bir Sorunuz mu Var?

Bize yazmaktan çekinmeyin. En kısa sürede yanıt göndereceğiz.
Bize Ulaşın.
Copyright © 2024. All Rights Reserved.
Join Our Discord Channel
Top