> For the complete documentation index, see [llms.txt](https://developer.nilvera.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.nilvera.com/en/api/e-invoice-api/file-upload/uploads-sgk-invoice-as-pdf.md).

# Uploads SGK Invoice as PDF

{% openapi src="<https://api.nilvera.com/swagger/docs/v1/einvoice>" path="/einvoice/Upload/Sgk" method="post" %}
<https://api.nilvera.com/swagger/docs/v1/einvoice>
{% endopenapi %}

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

```csharp
var options = new RestClientOptions("https://apitest.nilvera.com")
{
  MaxTimeout = -1,
};
var client = new RestClient(options);
var request = new RestRequest("/einvoice/Upload/Sgk", Method.Post);
request.AddHeader("Content-Type", "application/pdf");
request.AddHeader("Authorization", "Bearer <API KEY>");
request.AddParameter("application/pdf", "<file contents here>", ParameterType.RequestBody);
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 => 'https://apitest.nilvera.com/einvoice/Upload/Sgk',
  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 => "<file contents here>",
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/pdf',
    'Authorization: Bearer <API KEY>'
  ),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
```

{% endtab %}

{% tab title="NodeJs - Axios" %}

```javascript
const axios = require('axios');
let data = '<file contents here>';
let config = {
  method: 'post',
  maxBodyLength: Infinity,
  url: 'https://apitest.nilvera.com/einvoice/Upload/Sgk',
  headers: { 
    'Content-Type': 'application/pdf', 
    'Authorization': 'Bearer <API KEY>'
  },
  data : data
};
axios.request(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});
```

{% endtab %}
{% endtabs %}
