Skip to content

fattureincloud/fattureincloud-go-sdk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FattureInCloud Go SDK

Release unit tests

Connect your software with Fatture in Cloud, the invoicing platform chosen by more than 500.000 businesses in Italy.

The Fatture in Cloud API is based on REST, and makes possible to interact with the user related data prior authorization via OAuth2 protocol.

Overview

This API client was generated by the OpenAPI Generator project. By using the OpenAPI-spec from a remote server, you can easily generate an API client.

  • API version: 2.1.3
  • Package version: 2.1.1
  • Build package: org.openapitools.codegen.languages.GoClientCodegen For more information, please visit https://www.fattureincloud.it

Installation

Install the following dependencies:

go get github.com/fattureincloud/fattureincloud-go-sdk/v2

Documentation for API Endpoints

All URIs are relative to https://api-v2.fattureincloud.it

Class Method HTTP request Description
ArchiveAPI CreateArchiveDocument Post /c/{company_id}/archive Create Archive Document
ArchiveAPI DeleteArchiveDocument Delete /c/{company_id}/archive/{document_id} Delete Archive Document
ArchiveAPI GetArchiveDocument Get /c/{company_id}/archive/{document_id} Get Archive Document
ArchiveAPI ListArchiveDocuments Get /c/{company_id}/archive List Archive Documents
ArchiveAPI ModifyArchiveDocument Put /c/{company_id}/archive/{document_id} Modify Archive Document
ArchiveAPI UploadArchiveDocumentAttachment Post /c/{company_id}/archive/attachment Upload Archive Document Attachment
CashbookAPI CreateCashbookEntry Post /c/{company_id}/cashbook Create Cashbook Entry
CashbookAPI DeleteCashbookEntry Delete /c/{company_id}/cashbook/{document_id} Delete Cashbook Entry
CashbookAPI GetCashbookEntry Get /c/{company_id}/cashbook/{document_id} Get Cashbook Entry
CashbookAPI ListCashbookEntries Get /c/{company_id}/cashbook List Cashbook Entries
CashbookAPI ModifyCashbookEntry Put /c/{company_id}/cashbook/{document_id} Modify Cashbook Entry
ClientsAPI CreateClient Post /c/{company_id}/entities/clients Create Client
ClientsAPI DeleteClient Delete /c/{company_id}/entities/clients/{client_id} Delete Client
ClientsAPI GetClient Get /c/{company_id}/entities/clients/{client_id} Get Client
ClientsAPI ListClients Get /c/{company_id}/entities/clients List Clients
ClientsAPI ModifyClient Put /c/{company_id}/entities/clients/{client_id} Modify Client
CompaniesAPI GetCompanyInfo Get /c/{company_id}/company/info Get Company Info
CompaniesAPI GetCompanyPlanUsage Get /c/{company_id}/company/plan_usage Get Company Plan Usage
EmailsAPI ListEmails Get /c/{company_id}/emails List Emails
InfoAPI ListArchiveCategories Get /c/{company_id}/info/archive_categories List Archive Categories
InfoAPI ListCities Get /info/cities List Cities
InfoAPI ListCostCenters Get /c/{company_id}/info/cost_centers List Cost Centers
InfoAPI ListCountries Get /info/countries List Countries
InfoAPI ListCurrencies Get /info/currencies List Currencies
InfoAPI ListDeliveryNotesDefaultCausals Get /info/dn_causals List Delivery Notes Default Causals
InfoAPI ListDetailedCountries Get /info/detailed_countries List Detailed Countries
InfoAPI ListLanguages Get /info/languages List Languages
InfoAPI ListPaymentAccounts Get /c/{company_id}/info/payment_accounts List Payment Accounts
InfoAPI ListPaymentMethods Get /c/{company_id}/info/payment_methods List Payment Methods
InfoAPI ListProductCategories Get /c/{company_id}/info/product_categories List Product Categories
InfoAPI ListReceivedDocumentCategories Get /c/{company_id}/info/received_document_categories List Received Document Categories
InfoAPI ListRevenueCenters Get /c/{company_id}/info/revenue_centers List Revenue Centers
InfoAPI ListTemplates Get /info/templates List Templates
InfoAPI ListUnitsOfMeasure Get /info/measures List Units of Measure
InfoAPI ListVatTypes Get /c/{company_id}/info/vat_types List Vat Types
IssuedDocumentsAPI CreateIssuedDocument Post /c/{company_id}/issued_documents Create Issued Document
IssuedDocumentsAPI DeleteIssuedDocument Delete /c/{company_id}/issued_documents/{document_id} Delete Issued Document
IssuedDocumentsAPI DeleteIssuedDocumentAttachment Delete /c/{company_id}/issued_documents/{document_id}/attachment Delete Issued Document Attachment
IssuedDocumentsAPI GetEmailData Get /c/{company_id}/issued_documents/{document_id}/email Get Email Data
IssuedDocumentsAPI GetExistingIssuedDocumentTotals Post /c/{company_id}/issued_documents/{document_id}/totals Get Existing Issued Document Totals
IssuedDocumentsAPI GetIssuedDocument Get /c/{company_id}/issued_documents/{document_id} Get Issued Document
IssuedDocumentsAPI GetIssuedDocumentPreCreateInfo Get /c/{company_id}/issued_documents/info Get Issued Document Pre-Create Info
IssuedDocumentsAPI GetNewIssuedDocumentTotals Post /c/{company_id}/issued_documents/totals Get New Issued Document Totals
IssuedDocumentsAPI JoinIssuedDocuments Get /c/{company_id}/issued_documents/join Join Issued Documents
IssuedDocumentsAPI ListIssuedDocuments Get /c/{company_id}/issued_documents List Issued Documents
IssuedDocumentsAPI ModifyIssuedDocument Put /c/{company_id}/issued_documents/{document_id} Modify Issued Document
IssuedDocumentsAPI ScheduleEmail Post /c/{company_id}/issued_documents/{document_id}/email Schedule Email
IssuedDocumentsAPI TransformIssuedDocument Get /c/{company_id}/issued_documents/transform Transform Issued Document
IssuedDocumentsAPI UploadIssuedDocumentAttachment Post /c/{company_id}/issued_documents/attachment Upload Issued Document Attachment
IssuedEInvoicesAPI GetEInvoiceRejectionReason Get /c/{company_id}/issued_documents/{document_id}/e_invoice/error_reason Get E-Invoice Rejection Reason
IssuedEInvoicesAPI GetEInvoiceXml Get /c/{company_id}/issued_documents/{document_id}/e_invoice/xml Get E-Invoice XML
IssuedEInvoicesAPI SendEInvoice Post /c/{company_id}/issued_documents/{document_id}/e_invoice/send Send E-Invoice
IssuedEInvoicesAPI VerifyEInvoiceXml Get /c/{company_id}/issued_documents/{document_id}/e_invoice/xml_verify Verify E-Invoice XML
ProductsAPI CreateProduct Post /c/{company_id}/products Create Product
ProductsAPI DeleteProduct Delete /c/{company_id}/products/{product_id} Delete Product
ProductsAPI GetProduct Get /c/{company_id}/products/{product_id} Get Product
ProductsAPI ListProducts Get /c/{company_id}/products List Products
ProductsAPI ModifyProduct Put /c/{company_id}/products/{product_id} Modify Product
ReceiptsAPI CreateReceipt Post /c/{company_id}/receipts Create Receipt
ReceiptsAPI DeleteReceipt Delete /c/{company_id}/receipts/{document_id} Delete Receipt
ReceiptsAPI GetReceipt Get /c/{company_id}/receipts/{document_id} Get Receipt
ReceiptsAPI GetReceiptPreCreateInfo Get /c/{company_id}/receipts/info Get Receipt Pre-Create Info
ReceiptsAPI GetReceiptsMonthlyTotals Get /c/{company_id}/receipts/monthly_totals Get Receipts Monthly Totals
ReceiptsAPI ListReceipts Get /c/{company_id}/receipts List Receipts
ReceiptsAPI ModifyReceipt Put /c/{company_id}/receipts/{document_id} Modify Receipt
ReceivedDocumentsAPI CreateReceivedDocument Post /c/{company_id}/received_documents Create Received Document
ReceivedDocumentsAPI DeleteReceivedDocument Delete /c/{company_id}/received_documents/{document_id} Delete Received Document
ReceivedDocumentsAPI DeleteReceivedDocumentAttachment Delete /c/{company_id}/received_documents/{document_id}/attachment Delete Received Document Attachment
ReceivedDocumentsAPI GetExistingReceivedDocumentTotals Post /c/{company_id}/received_documents/{document_id}/totals Get Existing Received Document Totals
ReceivedDocumentsAPI GetNewReceivedDocumentTotals Post /c/{company_id}/received_documents/totals Get New Received Document Totals
ReceivedDocumentsAPI GetReceivedDocument Get /c/{company_id}/received_documents/{document_id} Get Received Document
ReceivedDocumentsAPI GetReceivedDocumentPreCreateInfo Get /c/{company_id}/received_documents/info Get Received Document Pre-Create Info
ReceivedDocumentsAPI ListReceivedDocuments Get /c/{company_id}/received_documents List Received Documents
ReceivedDocumentsAPI ModifyReceivedDocument Put /c/{company_id}/received_documents/{document_id} Modify Received Document
ReceivedDocumentsAPI UploadReceivedDocumentAttachment Post /c/{company_id}/received_documents/attachment Upload Received Document Attachment
SettingsAPI CreatePaymentAccount Post /c/{company_id}/settings/payment_accounts Create Payment Account
SettingsAPI CreatePaymentMethod Post /c/{company_id}/settings/payment_methods Create Payment Method
SettingsAPI CreateVatType Post /c/{company_id}/settings/vat_types Create Vat Type
SettingsAPI DeletePaymentAccount Delete /c/{company_id}/settings/payment_accounts/{payment_account_id} Delete Payment Account
SettingsAPI DeletePaymentMethod Delete /c/{company_id}/settings/payment_methods/{payment_method_id} Delete Payment Method
SettingsAPI DeleteVatType Delete /c/{company_id}/settings/vat_types/{vat_type_id} Delete Vat Type
SettingsAPI GetPaymentAccount Get /c/{company_id}/settings/payment_accounts/{payment_account_id} Get Payment Account
SettingsAPI GetPaymentMethod Get /c/{company_id}/settings/payment_methods/{payment_method_id} Get Payment Method
SettingsAPI GetTaxProfile Get /c/{company_id}/settings/tax_profile Get Tax Profile
SettingsAPI GetVatType Get /c/{company_id}/settings/vat_types/{vat_type_id} Get Vat Type
SettingsAPI ModifyPaymentAccount Put /c/{company_id}/settings/payment_accounts/{payment_account_id} Modify Payment Account
SettingsAPI ModifyPaymentMethod Put /c/{company_id}/settings/payment_methods/{payment_method_id} Modify Payment Method
SettingsAPI ModifyVatType Put /c/{company_id}/settings/vat_types/{vat_type_id} Modify Vat Type
SuppliersAPI CreateSupplier Post /c/{company_id}/entities/suppliers Create Supplier
SuppliersAPI DeleteSupplier Delete /c/{company_id}/entities/suppliers/{supplier_id} Delete Supplier
SuppliersAPI GetSupplier Get /c/{company_id}/entities/suppliers/{supplier_id} Get Supplier
SuppliersAPI ListSuppliers Get /c/{company_id}/entities/suppliers List Suppliers
SuppliersAPI ModifySupplier Put /c/{company_id}/entities/suppliers/{supplier_id} Modify Supplier
TaxesAPI CreateF24 Post /c/{company_id}/taxes Create F24
TaxesAPI DeleteF24 Delete /c/{company_id}/taxes/{document_id} Delete F24
TaxesAPI DeleteF24Attachment Delete /c/{company_id}/taxes/{document_id}/attachment Delete F24 Attachment
TaxesAPI GetF24 Get /c/{company_id}/taxes/{document_id} Get F24
TaxesAPI ListF24 Get /c/{company_id}/taxes List F24
TaxesAPI ModifyF24 Put /c/{company_id}/taxes/{document_id} Modify F24
TaxesAPI UploadF24Attachment Post /c/{company_id}/taxes/attachment Upload F24 Attachment
UserAPI GetUserInfo Get /user/info Get User Info
UserAPI ListUserCompanies Get /user/companies List User Companies
WebhooksAPI CreateWebhooksSubscription Post /c/{company_id}/subscriptions Create a Webhook Subscription
WebhooksAPI DeleteWebhooksSubscription Delete /c/{company_id}/subscriptions/{subscription_id} Delete Webhooks Subscription
WebhooksAPI GetWebhooksSubscription Get /c/{company_id}/subscriptions/{subscription_id} Get Webhooks Subscription
WebhooksAPI ListWebhooksSubscriptions Get /c/{company_id}/subscriptions List Webhooks Subscriptions
WebhooksAPI ModifyWebhooksSubscription Put /c/{company_id}/subscriptions/{subscription_id} Modify Webhooks Subscription

Documentation For Models

Documentation For Authorization

Authentication schemes defined for the API:

OAuth2AuthenticationCodeFlow

  • Type: OAuth
  • Flow: accessCode
  • Authorization URL: https://api-v2.fattureincloud.it/oauth/authorize
  • Scopes:
  • entity.clients:r: Read permission to the Clients registry
  • entity.clients:a: Write permission to the Clients registry
  • entity.suppliers:r: Read permission to the Suppliers registry
  • entity.suppliers:a: Write permission to the Suppliers registry
  • products:r: Read permission to the Products
  • products:a: Write permission to the Products
  • issued_documents.invoices:r: Read permission to the issued Invoices
  • issued_documents.credit_notes:r: Read permission to the issued Credit Notes
  • issued_documents.receipts:r: Read permission to the issued Receipts
  • issued_documents.orders:r: Read permission to the issued Orders
  • issued_documents.quotes:r: Read permission to the issued Quotes
  • issued_documents.proformas:r: Read permission to the issued Proformas
  • issued_documents.delivery_notes:r: Read permission to the issued Delivery Notes
  • issued_documents.work_reports:r: Read permission to the issued Work Reports
  • issued_documents.supplier_orders:r: Read permission to the issued Supplier Orders
  • issued_documents.self_invoices:r: Read permission to the issued Self Invoices
  • issued_documents.invoices:a: Write permission to the issued Invoices
  • issued_documents.credit_notes:a: Write permission to the issued Credit Notes
  • issued_documents.receipts:a: Write permission to the issued issued Receipts
  • issued_documents.orders:a: Write permission to the issued Orders
  • issued_documents.quotes:a: Write permission to the issued Quotes
  • issued_documents.proformas:a: Write permission to the issued Proformas
  • issued_documents.delivery_notes:a: Write permission to the issued Delivery Notes
  • issued_documents.work_reports:a: Write permission to the issued Work Reports
  • issued_documents.supplier_orders:a: Write permission to the issued Supplier Orders
  • issued_documents.self_invoices:a: Write permission to the issued Self Invoices
  • received_documents:r: Read permission to the Received Documents
  • received_documents:a: Write permission to the Received Documents
  • stock:r: Read permission to the Stock movements
  • stock:a: Write permission to the Stock movements
  • receipts:r: Read permission to the Receipts
  • receipts:a: Write permission to the Receipts
  • taxes:r: Read permission to the Taxes
  • taxes:a: Write permission to the Taxes
  • archive:r: Read permission to the Archive Documents
  • archive:a: Read permission to the Archive Documents
  • cashbook:r: Read permission to the Cashbook
  • cashbook:a: Write permission to the Cashbook
  • settings:r: Read permission to the Settings
  • settings:a: Write permission to the Settings
  • situation:r: Read permission to the company Situation

Example

auth := context.WithValue(context.Background(), fattureincloud.ContextAccessToken, "ACCESSTOKENSTRING")
r, err := client.Service.Operation(auth, args)

Or via OAuth2 module to automatically refresh tokens and perform user authentication.

import "golang.org/x/oauth2"

/* Perform OAuth2 round trip request and obtain a token */

tokenSource := oauth2cfg.TokenSource(createContext(httpClient), &token)
auth := context.WithValue(oauth2.NoContext, fattureincloud.ContextOAuth2, tokenSource)
r, err := client.Service.Operation(auth, args)

Documentation for Utility Methods

Due to the fact that model structure members are all pointers, this package contains a number of utility functions to easily obtain pointers to values of basic types. Each of these functions takes a value of the given basic type and returns a pointer to it:

  • PtrBool
  • PtrInt
  • PtrInt32
  • PtrInt64
  • PtrFloat
  • PtrFloat32
  • PtrFloat64
  • PtrString
  • PtrTime

Author

[email protected]