4.0.0 • Published 4 years ago

parasut.js v4.0.0

Weekly downloads
1
License
Unlicense
Repository
-
Last release
4 years ago

Paraşut Node.js kütüphanesi

# GİRİŞ


## API Hakkında


Paraşüt API'yi kullanmak veya görüşlerinizi
bizimle paylaşmak isterseniz lütfen bizimle destek@parasut.com adresi
üzerinden iletişime geçiniz.


API'yi kullanarak Paraşüt verilerine ulaşabilir ve kendi yazdığınız
uygulamalar ile entegre edebilirsiniz. API vasıtasıyla Paraşüt Web arayüzü
ile yapılan hemen her işlemi gerçekleştirebilirsiniz.



- API geliştirmesinde çoğunlukla JSONAPI (http://jsonapi.org/)
standartlarına uymaya çalıştık.


- Dökümantasyon oluşturulmasında ise OpenAPI-Swagger 2.0 kullandık.


- API hizmetimizin `BASE_URL`i `https://api.parasut.com` şeklindedir.


- V4 endpointlerine ulaşmak için `https://api.parasut.com/v4` şeklinde
kullanabilirsiniz.


## Genel Bilgiler


- API metodlarına erişmek için baz URL olarak
`https://api.parasut.com/v4/firma_no` adresi kullanılır.
  - Bu yapıda kullanılan `firma_no` parametresi bilgisine erişilmek istenin firmanın Paraşüt veritabanındaki kayıt numarasıdır.
  - Örneğin 115 numaralı firmanın müşteri/tedarikçi listesine erişmek için `https://api.parasut.com/v4/115/contacts` adresi kullanılır.
- İstekleri gönderirken `Content-Type` header'ı olarak `application/json`
veya `application/vnd.api+json` göndermelisiniz.

- Yeni bir kayıt oluştururken **ilgili** kaydın `ID` parametresini boş
göndermeli veya hiç göndermemelisiniz.
  - Örnek: Satış faturası oluştururken `data->id` boş olmalı, ama `relationships->contact->data->id` dolu olmalı, çünkü gönderdiğiniz müşterinizin ID'si daha önceden elinizde bulunmalıdır. Aynı şekilde `relationships->details->data` içerisinde tanımladığınız ID'ler de boş olmalı, çünkü henüz fatura kalemi yaratmadınız.
- API endpointlerine ulaşmak için, aldığınız `access_token`'ı sorgulara
`Authorization` header'ı olarak `Bearer access_token` şeklinde
göndermelisiniz.

- Dakikada 60 adet istek gönderebilirsiniz.


# Authentication


<!-- ReDoc-Inject: <security-definitions> -->


Paraşüt API kimlik doğrulama için oAuth2 kullanmaktadır. Bu protokolü
destekleyen istemci kütüphanelerini kullanarak oturum açabilir ve API'yi
kullanabilirsiniz.


Gerekli CLIENT_ID, CLIENT_SECRET ve REDIRECT_URL bilgilerini almak için
destek@parasut.com adresine mail atabilirsiniz.


Kimlik doğrulama işleminin başarılı olması durumunda bir adet kimlik jetonu
(authentication token) ve bir adet de yenileme jetonu (refresh token)
gönderilecektir. Kimlik jetonu 2 saat süreyle geçerlidir ve her istekte http
başlık bilgilerinin içerisinde gönderilmelidir. Bu sürenin sonunda kimlik
jetonu geçerliliğini yitirecektir ve yenileme jetonu kullanılarak tekrar
üretilmesi gerekmektedir.


## access_token almak:


access_token almanız için iki farklı seçenek bulunmaktadır.


Kullanım şeklinize bağlı olarak iki yöntemden birini tercih etmelisiniz.


### 1. grant_type=authorization_code


Bu yöntemi kullanabilmek için öncelikle aşağıda belirtildiği gibi
kullanıcıyı başarılı authentication işleminin ardından yönlendirmek
istediğiniz `REDIRECT_URL`'i bize ulaşarak kayıt ettirmeniz gerekmektedir.
`REDIRECT_URL` varsayılan olarak `urn:ietf:wg:oauth:2.0:oob` gelmektedir.


Size özel bir REDIRECT_URL tanımlamak isterseniz destek@parasut.com adresine
mail atabilirsiniz.


1. Kullanıcıyı şu adrese yönlendirin:

  ```
  BASE_URL/oauth/authorize?client_id=CLIENT_ID&redirect_uri=REDIRECT_URL&response_type=code
  ```

2. Oturum açmışsa ve uygulamayı kabul ederse, kullanıcı sizin tanımladığınız
REDIRECT_URL'e şu şekilde gelmesi gerekiyor:
  `REDIRECT_URL?code=xxxxxxx`

3. Burada size gelen "code" parametresi ile access token almalısınız.


```bash

curl -F grant_type=authorization_code \

-F client_id=CLIENT_ID \

-F client_secret=CLIENT_SECRET \

-F code=RETURNED_CODE \

-F redirect_uri=REDIRECT_URL \

-X POST BASE_URL/oauth/token

```


### 2. grant_type=password


E-posta ve şifre ile access_token almanız için aşağıdaki istekte size özel
alanları doldurarak POST isteği atmanız gerekmektedir.


```bash

curl -F grant_type=password \

-F client_id=CLIENT_ID \

-F client_secret=CLIENT_SECRET \

-F username=YOUREMAIL \

-F password=YOURPASSWORD \

-F redirect_uri=urn:ietf:wg:oauth:2.0:oob \

-X POST BASE_URL/oauth/token

```


### Sonuç


Her iki yöntem sonucunda size aşağıdaki gibi bir sonuç dönecektir:


```json

{
 "access_token": "XYZXYZXYZ",
 "token_type": "bearer",
 "expires_in": 7200,
 "refresh_token": "ABCABCABC"
}

```


Burada dönen `access_token`'ı API endpointlerine ulaşmak için gönderdiğiniz
sorgulara `Authorization` header'ı olarak `Bearer XYZXYZXYZ` şeklinde
eklemeniz gerekiyor.



#### Refresh token ile yeni access_token alma örneği:


`access_token` geçerliliğini 2 saat içerisinde yitirdiği için
`refresh_token` ile yeni token alabilirsiniz.


```bash

curl -F grant_type=refresh_token \

-F client_id=CLIENT_ID \

-F client_secret=CLIENT_SECRET \

-F refresh_token=REFRESH_TOKEN \

-X POST BASE_URL/oauth/token

```


`refresh_token` ile yeni bir `access_token` alırken aynı zamanda yeni bir
`refresh_token` da almaktasınız. Dolayısıyla, daha sonra yeniden bir
`access_token` alma isteğinizde size dönen yeni `refresh_token`ı
kullanmalısınız.


# SIK KULLANILAN İŞLEMLER


## Kullanıcı Bilgisi


`access_token` aldığınız kullanıcının genel bilgilerini görmek için
[/me](/#operation/showMe) adresini kullanabilirsiniz.


## Satış Faturası Oluşturma


Satış faturası oluşturmak için bir müşteri (`contact`) `id`'si ve bir veya
birden fazla ürün (`product`) `id`'sine ihtiyacınız vardır.


### Müşteri


##### Yeni bir müşteri ile


Eğer ihtiyaç duyduğunuz müşteri bilgisi henüz yoksa, öncelikle müşteri
oluşturmanız gereklidir. Bunun için [Müşteri
oluşturma](/#operation/createContact) endpoint'ini kullanmalısınız. Başarılı
bir şekilde müşteri oluşturulursa size dönecek olan yanıt ihtiyaç
duyacağınız müşteri `id`'sini içerir.


##### Mevcut bir müşteri ile


Eğer daha önceden zaten oluşturduğunuz bir müşteri ile ilişkili bir satış
faturası oluşturacaksanız öncelikle o müşterinin `id`'sini öğrenmeniz
gerekir. Bunun için [Müşteri listesi](/#operation/listContacts) endpoint'ini
kullanabilirsiniz. Müşteri listesi endpoint'i isim, e-posta, vergi numarası
gibi çeşitli filtreleri destekler. Bunları kullanarak aradığınız müşteriyi
bulabilirsiniz.


### Ürün


##### Yeni bir ürün ile


Eğer ihtiyaç duyduğunuz ürün bilgisi henüz yoksa, öncelikle ürün
oluşturmanız gereklidir. Bunun için [Ürün
oluşturma](/#operation/createProduct) endpoint'ini kullanmalısınız. Başarılı
bir şekilde ürün oluşturulursa size dönecek olan yanıt ihtiyaç duyacağınız
ürün `id`'sini içerir.


##### Mevcut bir ürün ile


Eğer daha önceden oluşturduğunuz bir ürünü kullanarak bir satış faturası
oluşturacaksanız öncelikle o ürünün `id`'sini öğrenmeniz gerekir. Bunun için
[Ürün listesi](/#operation/listProducts) endpoint'ini kullanabilirsiniz.
Ürün listesi endpoint'i isim, kod gibi çeşitli filtreleri destekler. Bunları
kullanarak aradığınız ürünü bulabilirsiniz.


---


İhtiyaç duyduğunuz müşteri ve ürün `id`'lerini aldıktan sonra [Satış
Faturası Oluşturma](/#operation/createSalesInvoice) endpoint'i ile satış
faturası oluşturabilirsiniz. Endpoint'in tanımında sağ tarafta beklediğimiz
veri şekli bulunmaktadır, aşağıdaki bilgileri verinin şekli ile kıyaslamak
daha açıklayıcı olabilir.


Dikkat edilecek noktalar:

* `relationships` altındaki `contact`'te bulunan `id` alanına müşteri
`id`'sini girmeniz gereklidir.

* `relationships` altındaki `details` kısmı bir listedir (`array`) ve fatura
kalemlerini temsil eder. Bu listenin her elemanının ilişkili olduğu bir ürün
vardır. Yani `details` altındaki her elemanın kendine ait bir
`relationships` kısmı mevcuttur. Buradaki `product` `id` alanı üstteki ürün
adımlarında elde ettiğiniz `id`'yi koymanız gereken yerdir.


## Satış Faturasına Tahsilat Ekleme


[Tahsilat ekleme](/#operation/paySalesInvoice) kısmındaki ilgili alanları
doldurarak satış faturasına tahsilat ekleyebilirsiniz.


## Satış Faturasının Tahsilatını Silme


Bir satış faturasının tahsilatını silmek aslında o tahsilatı oluşturan para
akış işlemini silmek demektir. Bir işlemi silmeden önce o işlemin `id`'sine
ihtiyacınız vardır.


Bir satış faturasına ait tahsilatları almak için [Satış faturası bilgilerini
alma (show)](/#operation/showSalesInvoice) endpoint'ine istek atarken
`?include=payments` parametresini de eklemelisiniz. Bu size satış faturası
bilgilerine ilave olarak tahsilatları da verir.


Tahsilatlar ile birlikte o tahsilatları oluşturan işlemleri de almak için
yine aynı endpoint'e `?include=payments.transaction` parametresini ekleyerek
istek yapmanız gerekir. Bu size hem satış faturası bilgilerini, hem tahsilat
bilgilerini hem de tahsilatı oluşturan işlemlerin bilgilerini verir.


`?include=payments.transaction` parametresini kullanarak yaptığınız istek
ile işlem (`transaction`) `id`'sini aldıktan sonra [işlem
silme](/#operation/deleteTransaction) endpoint'inde bu `id`'yi kullanarak
silme işlemini yapabilirsiniz.


## Satış Faturası Resmileştirme


Oluşturduğunuz bir satış faturası varsa onu e-Arşiv veya e-Fatura olarak
resmileştirmek için aşağıdakileri yapmanız gereklidir.


1. Öncelikle müşterinizin e-Fatura kullanıcısı olup olmadığını
öğrenmelisiniz. Bunun için müşterinizin e-Fatura gelen kutusu olup
olmadığına bakmak gereklidir. [e-Fatura gelen
kutusu](/#operation/listEInvoiceInboxes) endpoint'ine müşterinin vkn'sini
kullanarak bir istek yaptığınızda eğer bir gelen kutusu olduğuna dair yanıt
alıyorsanız müşteri e-Fatura kullanıcısıdır. Müşteri e-Fatura kullanıcısı
ise resmileştirme için e-Fatura oluşturmak, e-Fatura kullanıcısı değilse
e-Arşiv oluşturmak gereklidir.

Oluşturduğunuz e-Fatura, e-Arşiv ve e-Smm’nin
düzenleme tarihi e-Fatura’ya geçiş sağladığınız aktivasyon tarihinden sonra
olmalıdır. Aynı zamanda oluşturduğunuz e-Fatura’nın düzenleme tarihi alıcının
etiketi kullanmaya başladığı tarihten de önce olamaz. Alıcının etiketi
kullanmaya başladığı tarihi e-Fatura gelen kutusunu çekerek görüntüleyebilirsiniz.

2. e-Fatura veya e-Arşiv oluşturma:
   * Önceki adımda müşterinin e-Fatura kullanıcısı olduğu öğrenildiyse,  [e-Fatura oluşturma endpoint'i](/#operation/createEInvoice) kullanılarak e-Fatura oluşturmak gereklidir.
   * Önceki adımda müşterinin e-Arşiv kullanıcısı olduğu öğrenildiyse,  [e-Arşiv oluşturma endpoint'i](/#operation/createEArchive) kullanılarak e-Arşiv oluşturmak gereklidir.

   e-Fatura ve e-Arşiv oluşturma işlemi synchronous değildir. Yani istek arka planda yerine getirilir. Bu yüzden e-Fatura veya e-Arşiv oluşturma endpoint'leri cevap olarak oluşturma işleminin durumunu takip edebileceğiniz bir işlem `id`'si döner. Bu işlem `id`'sini [sorgulama](/#tag/TrackableJobs) endpoint'inde belirli aralıklarla kullanıp oluşturma işleminin durumunu takip etmeniz gerekmektedir. İşlem durumu ile ilgili aşağıdaki yanıtları alabilirsiniz:
   * `status: "pending"` işlemin sırada olduğunu, henüz başlamadığını gösterir.
   * `status: "running"` işlemin yapılmakta olduğunu ancak henüz sonuçlanmadığını gösterir.
   * `status: "error"` işlemde bir hata olduğu anlamına gelir. Dönen yanıtta hata mesajını inceleyebilirsiniz.
   * `status: "done"` işlemin başarılı bir şekilde sonuçlandığını gösterir.
4. e-Fatura / e-Arşiv işleminin başarılı bir şekilde sonuçlandığını
gördükten sonra e-Fatura / e-Arşiv bilgilerini almak için [Satış faturası
bilgilerini alma (show)](/#operation/showSalesInvoice) endpoint'ine
`?include=active_e_document` parametresi ile istek yapmanız gerekmektedir.
Buradan sıradaki adımda ihtiyaç duyacağınız e-Fatura / e-Arşiv `id`'lerini
ve başka bilgileri de alabilirsiniz.

5. e-Fatura / e-Arşiv başarılı bir resmileştirildikten sonra müşterilerinize
PDF olarak göndermek isteyebilirsiniz. Bunun için:
   * e-Arşiv için, 4. adımda elde edeceğiniz e-Arşiv `id`'sini kullanarak [e-Arşiv PDF](/#operation/showEArchivePdf) endpoint'ine istek atabilirsiniz. Bu endpoint PDF henüz yoksa boş bir yanıt ile birlikte 204 döner. Yani 204 almayana kadar belirli aralıklarla bu endpoint'e istek yapmanız gerekmektedir. Geçerli yanıt aldığınızda size dönecek olan PDF URL 1 saat için geçerlidir. Bu yüzden bu linki direk olarak müşterinizle **paylaşmamalısınız**. İndirip müşterinize kendiniz göndermelisiniz.
   * e-Arşiv için anlatılan senaryonun aynısı e-Fatura için de geçerlidir. Tek farklı kısım isteği yapacağınız endpoint'dir: [e-Fatura PDF](/#operation/showEInvoicePdf)

## İrsaliye Oluşturma


İrsaliye oluşturmak için bir müşteri/tedarikçi (`contact`) `id`'si ve bir
veya birden fazla ürün (`product`) `id`'sine ihtiyacınız vardır.


### Müşteri/Tedarikçi


##### Yeni bir müşteri/tedarikçi ile


Eğer ihtiyaç duyduğunuz müşteri/tedarikçi bilgisi henüz yoksa, öncelikle
müşteri/tedarikçi oluşturmanız gereklidir. Bunun için [Müşteri/Tedarikçi
oluşturma](/#operation/createContact) endpoint'ini kullanmalısınız. Başarılı
bir şekilde müşteri/tedarikçi oluşturulursa size dönecek olan yanıt ihtiyaç
duyacağınız müşteri/tedarikçi `id`'sini içerir.


##### Mevcut bir müşteri/tedarikçi ile


Eğer daha önceden zaten oluşturduğunuz bir müşteri/tedarikçi ile ilişkili
bir irsaliye oluşturacaksanız öncelikle o müşteri/tedarikçinin `id`'sini
öğrenmeniz gerekir. Bunun için [Müşteri/tedarikçi
listesi](/#operation/listContacts) endpoint'ini kullanabilirsiniz.
Müşteri/tedarikçi listesi endpoint'i isim, e-posta, vergi numarası gibi
çeşitli filtreleri destekler. Bunları kullanarak aradığınız
müşteri/tedarikçiyi bulabilirsiniz.


### Ürün


##### Yeni bir ürün ile


Eğer ihtiyaç duyduğunuz ürün bilgisi henüz yoksa, öncelikle ürün
oluşturmanız gereklidir. Bunun için [Ürün
oluşturma](/#operation/createProduct) endpoint'ini kullanmalısınız. Başarılı
bir şekilde ürün oluşturulursa size dönecek olan yanıt ihtiyaç duyacağınız
ürün `id`'sini içerir.


##### Mevcut bir ürün ile


Eğer daha önceden oluşturduğunuz bir ürünü kullanarak bir irsaliye
oluşturacaksanız öncelikle o ürünün `id`'sini öğrenmeniz gerekir. Bunun için
[Ürün listesi](/#operation/listProducts) endpoint'ini kullanabilirsiniz.
Ürün listesi endpoint'i isim, kod gibi çeşitli filtreleri destekler. Bunları
kullanarak aradığınız ürünü bulabilirsiniz.


---


İhtiyaç duyduğunuz müşteri/tedarikçi ve ürün `id`'lerini aldıktan sonra
[İrsaliye Oluşturma](/#operation/createShipmentDocument) endpoint'i ile
irsaliye oluşturabilirsiniz. Endpoint'in tanımında sağ tarafta beklediğimiz
veri şekli bulunmaktadır, aşağıdaki bilgileri verinin şekli ile kıyaslamak
daha açıklayıcı olabilir.


Dikkat edilecek noktalar:

* `relationships` altındaki `contact`'te bulunan `id` alanına
müşteri/tedarikçi `id`'sini girmeniz gereklidir.

* `relationships` altındaki `stock_movements` kısmı bir listedir (`array`)
ve irsaliye kalemlerini temsil eder. Bu listenin her elemanının ilişkili
olduğu bir ürün vardır. Yani `stock_movements` altındaki her elemanın
kendine ait bir `relationships` kısmı mevcuttur. Buradaki `product` `id`
alanı üstteki ürün adımlarında elde ettiğiniz `id`'yi koymanız gereken
yerdir.

This SDK is automatically generated by the Swagger Codegen project:

  • API version: 4.0.0
  • Package version: 4.0.0
  • Build package: io.swagger.codegen.languages.JavascriptClientCodegen

Installation

For Node.js

npm

To publish the library as a npm, please follow the procedure in "Publishing npm packages".

Then install it via:

npm install parasut --save
Local development

To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing package.json (and this README). Let's call this JAVASCRIPT_CLIENT_DIR. Then run:

npm install

Next, link it globally in npm with the following, also from JAVASCRIPT_CLIENT_DIR:

npm link

Finally, switch to the directory you want to use your parasut from, and run:

npm link /path/to/<JAVASCRIPT_CLIENT_DIR>

You should now be able to require('parasut') in javascript files from the directory you ran the last command above from.

git

If the library is hosted at a git repository, e.g. https://github.com/0xc0d3d00d/parasut.js then install it via:

    npm install 0xc0d3d00d/parasut.js --save

For browser

The library also works in the browser environment via npm and browserify. After following the above steps with Node.js and installing browserify with npm install -g browserify, perform the following (assuming main.js is your entry file, that's to say your javascript file where you actually use this library):

browserify main.js > bundle.js

Then include bundle.js in the HTML pages.

Webpack Configuration

Using Webpack you may encounter the following error: "Module not found: Error: Cannot resolve module", most certainly you should disable AMD loader. Add/merge the following section to your webpack config:

module: {
  rules: [
    {
      parser: {
        amd: false
      }
    }
  ]
}

Getting Started

Please follow the installation instruction and execute the following JS code:

var Parasut = require('parasut');

var defaultClient = Parasut.ApiClient.instance;

// Configure OAuth2 access token for authorization: parasut_auth
var parasut_auth = defaultClient.authentications['parasut_auth'];
parasut_auth.accessToken = "YOUR ACCESS TOKEN"

var api = new Parasut.ApiHomeApi();

var companyId = 56; // {Number} Firma ID

var callback = function(error, data, response) {
  if (error) {
    console.error(error);
  } else {
    console.log('API called successfully. Returned data: ', data);
  }
};
api.showMe(companyId, callback);

Documentation for API Endpoints

All URIs are relative to https://api.parasut.com/v4

ClassMethodHTTP requestDescription
Parasut.AccountsApicreateAccountPOST /{company_id}/accountsCreate
Parasut.AccountsApicreateCreditTransactionPOST /{company_id}/accounts/{id}/credit_transactionsCredit Transaction
Parasut.AccountsApicreateDebitTransactionPOST /{company_id}/accounts/{id}/debit_transactionsDebit Transaction
Parasut.AccountsApideleteAccountDELETE /{company_id}/accounts/{id}Delete
Parasut.AccountsApilistAccountTransactionsGET /{company_id}/accounts/{id}/transactionsTransactions
Parasut.AccountsApilistAccountsGET /{company_id}/accountsIndex
Parasut.AccountsApishowAccountGET /{company_id}/accounts/{id}Show
Parasut.AccountsApiupdateAccountPUT /{company_id}/accounts/{id}Edit
Parasut.ApiHomeApishowMeGET /meShow
Parasut.BankFeesApiarchiveBankFeePATCH /{company_id}/bank_fees/{id}/archiveArchive
Parasut.BankFeesApicreateBankFeePOST /{company_id}/bank_feesCreate
Parasut.BankFeesApideleteBankFeeDELETE /{company_id}/bank_fees/{id}Delete
Parasut.BankFeesApipayBankFeePOST /{company_id}/bank_fees/{id}/paymentsPay
Parasut.BankFeesApishowBankFeeGET /{company_id}/bank_fees/{id}Show
Parasut.BankFeesApiunarchiveBankFeePATCH /{company_id}/bank_fees/{id}/unarchiveUnarchive
Parasut.BankFeesApiupdateBankFeePUT /{company_id}/bank_fees/{id}Edit
Parasut.ContactsApicollectFromContactPOST /{company_id}/contacts/{id}/contact_debit_transactionsTahsilat
Parasut.ContactsApicreateContactPOST /{company_id}/contactsCreate
Parasut.ContactsApideleteContactDELETE /{company_id}/contacts/{id}Delete
Parasut.ContactsApilistContactsGET /{company_id}/contactsIndex
Parasut.ContactsApipayToContactPOST /{company_id}/contacts/{id}/contact_credit_transactionsÖdeme
Parasut.ContactsApishowContactGET /{company_id}/contacts/{id}Show
Parasut.ContactsApiupdateContactPUT /{company_id}/contacts/{id}Edit
Parasut.EArchivesApicreateEArchivePOST /{company_id}/e_archivesCreate
Parasut.EArchivesApishowEArchiveGET /{company_id}/e_archives/{id}Show
Parasut.EArchivesApishowEArchivePdfGET /{company_id}/e_archives/{id}/pdfShow PDF
Parasut.EInvoiceInboxesApilistEInvoiceInboxesGET /{company_id}/e_invoice_inboxesIndex
Parasut.EInvoicesApicreateEInvoicePOST /{company_id}/e_invoicesCreate
Parasut.EInvoicesApishowEInvoiceGET /{company_id}/e_invoices/{id}Show
Parasut.EInvoicesApishowEInvoicePdfGET /{company_id}/e_invoices/{id}/pdfShow PDF
Parasut.EmployeesApiarchiveEmployeePATCH /{company_id}/employees/{id}/archiveArchive
Parasut.EmployeesApicreateEmployeePOST /{company_id}/employeesCreate
Parasut.EmployeesApideleteEmployeeDELETE /{company_id}/employees/{id}Delete
Parasut.EmployeesApilistEmployeesGET /{company_id}/employeesIndex
Parasut.EmployeesApishowEmployeeGET /{company_id}/employees/{id}Show
Parasut.EmployeesApiunarchiveEmployeePATCH /{company_id}/employees/{id}/unarchiveUnarchive
Parasut.EmployeesApiupdateEmployeePUT /{company_id}/employees/{id}Edit
Parasut.ItemCategoriesApicreateItemCategoryPOST /{company_id}/item_categoriesCreate
Parasut.ItemCategoriesApideleteItemCategoryDELETE /{company_id}/item_categories/{id}Delete
Parasut.ItemCategoriesApilistItemCategoriesGET /{company_id}/item_categoriesIndex
Parasut.ItemCategoriesApishowItemCategoryGET /{company_id}/item_categories/{id}Kategori bilgisini gösterir.
Parasut.ItemCategoriesApiupdateItemCategoryPUT /{company_id}/item_categories/{id}Edit
Parasut.ProductsApicreateProductPOST /{company_id}/productsCreate
Parasut.ProductsApideleteProductDELETE /{company_id}/products/{id}Delete
Parasut.ProductsApilistProductsGET /{company_id}/productsIndex
Parasut.ProductsApishowProductGET /{company_id}/products/{id}Show
Parasut.ProductsApiupdateProductPUT /{company_id}/products/{id}Edit
Parasut.PurchaseBillsApiarchivePurchaseBillPATCH /{company_id}/purchase_bills/{id}/archiveArchive
Parasut.PurchaseBillsApicancelPurchaseBillDELETE /{company_id}/purchase_bills/{id}/cancelCancel
Parasut.PurchaseBillsApicreatePurchaseBillBasicPOST /{company_id}/purchase_bills#basicCreate Basic PurchaseBill
Parasut.PurchaseBillsApicreatePurchaseBillDetailedPOST /{company_id}/purchase_bills#detailedCreate Detailed PurchaseBill
Parasut.PurchaseBillsApideletePurchaseBillDELETE /{company_id}/purchase_bills/{id}Delete
Parasut.PurchaseBillsApilistPurchaseBillsGET /{company_id}/purchase_billsIndex
Parasut.PurchaseBillsApipayPurchaseBillPOST /{company_id}/purchase_bills/{id}/paymentsPay
Parasut.PurchaseBillsApirecoverPurchaseBillPATCH /{company_id}/purchase_bills/{id}/recoverRecover
Parasut.PurchaseBillsApishowPurchaseBillGET /{company_id}/purchase_bills/{id}Show
Parasut.PurchaseBillsApiunarchivePurchaseBillPATCH /{company_id}/purchase_bills/{id}/unarchiveUnarchive
Parasut.PurchaseBillsApiupdatePurchaseBillBasicPUT /{company_id}/purchase_bills/{id}#basicEdit Basic PurchaseBill
Parasut.PurchaseBillsApiupdatePurchaseBillDetailedPUT /{company_id}/purchase_bills/{id}#detailedEdit Detailed PurchaseBill
Parasut.SalariesApiarchiveSalaryPATCH /{company_id}/salaries/{id}/archiveArchive
Parasut.SalariesApicreateSalaryPOST /{company_id}/salariesCreate
Parasut.SalariesApideleteSalaryDELETE /{company_id}/salaries/{id}Delete
Parasut.SalariesApilistSalariesGET /{company_id}/salariesIndex
Parasut.SalariesApipaySalaryPOST /{company_id}/salaries/{id}/paymentsPay
Parasut.SalariesApishowSalaryGET /{company_id}/salaries/{id}Show
Parasut.SalariesApiunarchiveSalaryPATCH /{company_id}/salaries/{id}/unarchiveUnarchive
Parasut.SalariesApiupdateSalaryPUT /{company_id}/salaries/{id}Edit
Parasut.SalesInvoicesApiarchiveSalesInvoicePATCH /{company_id}/sales_invoices/{id}/archiveArchive
Parasut.SalesInvoicesApicancelSalesInvoiceDELETE /{company_id}/sales_invoices/{id}/cancelCancel
Parasut.SalesInvoicesApiconvertEstimateToInvoicePATCH /{company_id}/sales_invoices/{id}/convert_to_invoiceConvert estimate to invoice
Parasut.SalesInvoicesApicreateSalesInvoicePOST /{company_id}/sales_invoicesCreate
Parasut.SalesInvoicesApideleteSalesInvoiceDELETE /{company_id}/sales_invoices/{id}Delete
Parasut.SalesInvoicesApilistSalesInvoicesGET /{company_id}/sales_invoicesIndex
Parasut.SalesInvoicesApipaySalesInvoicePOST /{company_id}/sales_invoices/{id}/paymentsPay
Parasut.SalesInvoicesApirecoverSalesInvoicePATCH /{company_id}/sales_invoices/{id}/recoverRecover
Parasut.SalesInvoicesApishowSalesInvoiceGET /{company_id}/sales_invoices/{id}Show
Parasut.SalesInvoicesApiunarchiveSalesInvoicePATCH /{company_id}/sales_invoices/{id}/unarchiveUnarchive
Parasut.SalesInvoicesApiupdateSalesInvoicePUT /{company_id}/sales_invoices/{id}Edit
Parasut.ShipmentDocumentsApicreateShipmentDocumentPOST /{company_id}/shipment_documentsCreate
Parasut.ShipmentDocumentsApideleteShipmentDocumentDELETE /{company_id}/shipment_documents/{id}Delete
Parasut.ShipmentDocumentsApilistShipmentDocumentsGET /{company_id}/shipment_documentsIndex
Parasut.ShipmentDocumentsApishowShipmentDocumentGET /{company_id}/shipment_documents/{id}Show
Parasut.ShipmentDocumentsApiupdateShipmentDocumentPUT /{company_id}/shipment_documents/{id}Edit
Parasut.StockMovementsApilistStockMovementsGET /{company_id}/stock_movementsIndex
Parasut.TagsApicreateTagPOST /{company_id}/tagsCreate
Parasut.TagsApideleteTagDELETE /{company_id}/tags/{id}Delete
Parasut.TagsApilistTagsGET /{company_id}/tagsIndex
Parasut.TagsApishowTagGET /{company_id}/tags/{id}Show
Parasut.TagsApiupdateTagPUT /{company_id}/tags/{id}Edit
Parasut.TaxesApiarchiveTaxPATCH /{company_id}/taxes/{id}/archiveArchive
Parasut.TaxesApicreateTaxPOST /{company_id}/taxesCreate
Parasut.TaxesApideleteTaxDELETE /{company_id}/taxes/{id}Delete
Parasut.TaxesApilistTaxesGET /{company_id}/taxesIndex
Parasut.TaxesApipayTaxPOST /{company_id}/taxes/{id}/paymentsPay
Parasut.TaxesApishowTaxGET /{company_id}/taxes/{id}Show
Parasut.TaxesApiunarchiveTaxPATCH /{company_id}/taxes/{id}/unarchiveUnarchive
Parasut.TaxesApiupdateTaxPUT /{company_id}/taxes/{id}Edit
Parasut.TrackableJobsApishowTrackableJobGET /{company_id}/trackable_jobs/{id}Show
Parasut.TransactionsApideleteTransactionDELETE /{company_id}/transactions/{id}Delete
Parasut.TransactionsApishowTransactionGET /{company_id}/transactions/{id}Show

Documentation for Models