# Belge Bildirim Kuralı Oluşturur

## SKGB bildirim kuralı oluşturur.

> SKGB bildirim kuralı oluşturmak için bu ucu kullanabilirsiniz.

```json
{"openapi":"3.0.1","info":{"title":"E-Sigorta Komisyon Gider Belgesi API","version":"v1"},"servers":[{"url":"/einvoice"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"API anahtar� giriniz","scheme":"Bearer","bearerFormat":"JWT"}},"schemas":{"CreateInsuranceNotificationCommand":{"type":"object","properties":{"notificationDto":{"$ref":"#/components/schemas/NotificationDto"}},"additionalProperties":false},"NotificationDto":{"type":"object","properties":{"ID":{"type":"integer","format":"int32","nullable":true},"RuleName":{"type":"string","nullable":true},"Rules":{"type":"array","items":{"$ref":"#/components/schemas/NotificationRuleModel"},"nullable":true},"Contact":{"type":"array","items":{"$ref":"#/components/schemas/NotificationContactModel"},"nullable":true},"IsActive":{"type":"boolean"}},"additionalProperties":false},"NotificationRuleModel":{"type":"object","properties":{"Property":{"$ref":"#/components/schemas/NotificationProperty"},"Operator":{"$ref":"#/components/schemas/NotificatioOperator"},"ValueFirst":{"type":"string","nullable":true},"ValueSecond":{"type":"string","nullable":true}},"additionalProperties":false},"NotificationProperty":{"enum":["DocumentProfile","DocumentType","TaxNumber","PayableAmount","TaxableAmount","AllowanceTotal","SendType"],"type":"string"},"NotificatioOperator":{"enum":["GreaterOrEqual","SmallOrEqual","Equal","NotEqual","Between"],"type":"string"},"NotificationContactModel":{"type":"object","properties":{"NotificationValue":{"type":"string","nullable":true},"NotificationValueType":{"$ref":"#/components/schemas/NotificationValueType"}},"additionalProperties":false},"NotificationValueType":{"enum":["Whatsapp","Sms","Mail"],"type":"string"}}},"paths":{"/Notification":{"post":{"tags":["Notification"],"summary":"SKGB bildirim kuralı oluşturur.","description":"SKGB bildirim kuralı oluşturmak için bu ucu kullanabilirsiniz.","requestBody":{"description":"","content":{"application/json-patch+json":{"schema":{"$ref":"#/components/schemas/CreateInsuranceNotificationCommand"}},"application/json":{"schema":{"$ref":"#/components/schemas/CreateInsuranceNotificationCommand"}},"text/json":{"schema":{"$ref":"#/components/schemas/CreateInsuranceNotificationCommand"}},"application/*+json":{"schema":{"$ref":"#/components/schemas/CreateInsuranceNotificationCommand"}}}},"responses":{"200":{"description":"SKGB bildirim kuralı oluşturur.","content":{"application/json":{"schema":{"type":"boolean"}}}},"400":{"description":"Geçersiz İstek | Gönderdiğiniz istekte geçersiz veriler bulunduğu anlamında gelmektedir | Detaylar için <a target=\"_blank\" href=\"https://developer.nilvera.com/hata-kodlari#badrequest-400\">tıklayınız</a>"},"403":{"description":"Yetkisiz Erişim | Bu uca erişmek için gerekli yetkiye sahip olmadığınız durumda dönülür"},"404":{"description":"Parametrede belirtilen kayıt bulunamadığında dönülür | Detaylar için <a target=\"_blank\" href=\"https://developer.nilvera.com/hata-kodlari#notfound-404\">tıklayınız</a>"},"409":{"description":"Gönderdiğiniz istek sistemde daha önce bulunduğunda dönülür | Detaylar için <a target=\"_blank\" href=\"https://developer.nilvera.com/hata-kodlari#conflict-409\">tıklayınız</a>"},"422":{"description":"Gönderdiğiniz istek geçerli fakat iş kuralları gereği geçersiz değerler içerdiğinde dönülür | Detaylar için <a target=\"_blank\" href=\"https://developer.nilvera.com/hata-kodlari#unprocessableentity-422\">tıklayınız</a>"}}}}}}
```

{% tabs %}
{% tab title="C#" %}

```csharp
var options = new RestClientOptions("//einsurance/Notification")
{
  MaxTimeout = -1,
};
var client = new RestClient(options);
var request = new RestRequest("", Method.Post);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Accept", "application/json");
request.AddHeader("Authorization", "Bearer {{bearerToken}}");
var body = @"{" + "\n" +
@"  ""notificationDto"": {" + "\n" +
@"    ""ID"": ""<integer>""," + "\n" +
@"    ""RuleName"": ""<string>""," + "\n" +
@"    ""Rules"": [" + "\n" +
@"      {" + "\n" +
@"        ""Property"": ""DocumentProfile""," + "\n" +
@"        ""Operator"": ""GreaterOrEqual""," + "\n" +
@"        ""ValueFirst"": ""<string>""," + "\n" +
@"        ""ValueSecond"": ""<string>""" + "\n" +
@"      }," + "\n" +
@"      {" + "\n" +
@"        ""Property"": ""TaxNumber""," + "\n" +
@"        ""Operator"": ""GreaterOrEqual""," + "\n" +
@"        ""ValueFirst"": ""<string>""," + "\n" +
@"        ""ValueSecond"": ""<string>""" + "\n" +
@"      }" + "\n" +
@"    ]," + "\n" +
@"    ""Contact"": [" + "\n" +
@"      {" + "\n" +
@"        ""NotificationValue"": ""<string>""," + "\n" +
@"        ""NotificationValueType"": ""Mail""" + "\n" +
@"      }," + "\n" +
@"      {" + "\n" +
@"        ""NotificationValue"": ""<string>""," + "\n" +
@"        ""NotificationValueType"": ""Whatsapp""" + "\n" +
@"      }" + "\n" +
@"    ]," + "\n" +
@"    ""IsActive"": ""<boolean>""" + "\n" +
@"  }" + "\n" +
@"}";
request.AddStringBody(body, DataFormat.Json);
RestResponse response = await client.ExecuteAsync(request);
Console.WriteLine(response.Content);
```

{% endtab %}

{% tab title="PHP - cURL" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => '//einsurance/Notification',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
  "notificationDto": {
    "ID": "<integer>",
    "RuleName": "<string>",
    "Rules": [
      {
        "Property": "DocumentProfile",
        "Operator": "GreaterOrEqual",
        "ValueFirst": "<string>",
        "ValueSecond": "<string>"
      },
      {
        "Property": "TaxNumber",
        "Operator": "GreaterOrEqual",
        "ValueFirst": "<string>",
        "ValueSecond": "<string>"
      }
    ],
    "Contact": [
      {
        "NotificationValue": "<string>",
        "NotificationValueType": "Mail"
      },
      {
        "NotificationValue": "<string>",
        "NotificationValueType": "Whatsapp"
      }
    ],
    "IsActive": "<boolean>"
  }
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Accept: application/json',
    'Authorization: Bearer {{bearerToken}}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

```

{% endtab %}

{% tab title="Node.js - Axios" %}

```javascript
const axios = require('axios');
let data = JSON.stringify({
  "notificationDto": {
    "ID": "<integer>",
    "RuleName": "<string>",
    "Rules": [
      {
        "Property": "DocumentProfile",
        "Operator": "GreaterOrEqual",
        "ValueFirst": "<string>",
        "ValueSecond": "<string>"
      },
      {
        "Property": "TaxNumber",
        "Operator": "GreaterOrEqual",
        "ValueFirst": "<string>",
        "ValueSecond": "<string>"
      }
    ],
    "Contact": [
      {
        "NotificationValue": "<string>",
        "NotificationValueType": "Mail"
      },
      {
        "NotificationValue": "<string>",
        "NotificationValueType": "Whatsapp"
      }
    ],
    "IsActive": "<boolean>"
  }
});

let config = {
  method: 'post',
  maxBodyLength: Infinity,
  url: '//einsurance/Notification',
  headers: { 
    'Content-Type': 'application/json', 
    'Accept': 'application/json', 
    'Authorization': 'Bearer {{bearerToken}}'
  },
  data : data
};

axios.request(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});

```

{% endtab %}
{% endtabs %}
