public static async Task <TaxReduction> GetTaxReductionAsync(FortnoxApiRequest request, string taxReductionId)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <TaxReduction> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                          $"{ApiEndpoints.TaxReductions}/{taxReductionId}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #2
0
        public static async Task <FinancialYear> GetFinancialYearAsync(FortnoxApiRequest request, int id)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <FinancialYear> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                           $"{ApiEndpoints.FinancialYears}/{id}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #3
0
        public static async Task <Voucher> GetVoucherAsync(FortnoxApiRequest request, int financialYear, string series, int voucherNumber)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <Voucher> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                     $"{ApiEndpoints.Vouchers}/{series}/{voucherNumber}?financialyear={financialYear}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #4
0
        public static async Task <LockedPeriod> GetLockedPeriodAsync(FortnoxApiRequest request)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <LockedPeriod> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                          $"{ApiEndpoints.LockedPeriod}/");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
        public static async Task <SupplierInvoicePayment> GetSupplierInvoicePaymentAsync(FortnoxApiRequest request, string number)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <SupplierInvoicePayment> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                                    $"{ApiEndpoints.SupplierInvoicePayments}/{number}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #6
0
        public static async Task <Contract> GetContractAsync(FortnoxApiRequest request, string documentNumber)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <Contract> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                      $"{ApiEndpoints.Contracts}/{documentNumber}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
        public static async Task <CompanyInformation> GetCompanyInformationAsync(FortnoxApiRequest request)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <CompanyInformation> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                                $"{ApiEndpoints.CompanyInformation}/");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
        public static async Task <TrustedEmailDomain> GetTrustedEmailDomainAsync(FortnoxApiRequest request, string id)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <TrustedEmailDomain> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                                $"{ApiEndpoints.EmailTrustedDomains}/{id}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #9
0
        public static async Task <ListedResourceResponse <Label> > GetLabelsAsync(LabelListRequest listRequest)
        {
            var apiRequest = new FortnoxApiClientRequest <ListedResourceResponse <Label> >(HttpMethod.Get, listRequest.AccessToken, listRequest.ClientSecret,
                                                                                           ApiEndpoints.Labels);

            return(await FortnoxAPIClient.CallAsync(apiRequest));
        }
        public static async Task <WayOfDelivery> GetWayOfDeliveryAsync(FortnoxApiRequest request, string code)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <WayOfDelivery> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                           $"{ApiEndpoints.WayOfDeliveries}/{code}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
        public static async Task <ListedResourceResponse <TrustedEmailDomainSubset> > GetTrustedEmailDomainsAsync(TrustedEmailDomainListRequest listRequest)
        {
            var apiRequest = new FortnoxApiClientRequest <ListedResourceResponse <TrustedEmailDomainSubset> >(HttpMethod.Get, listRequest.AccessToken, listRequest.ClientSecret,
                                                                                                              ApiEndpoints.EmailTrustedDomains);

            return(await FortnoxAPIClient.CallAsync(apiRequest));
        }
Example #12
0
        public static async Task <Customer> GetCustomerAsync(FortnoxApiRequest request, string customerNumber)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <Customer> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                      $"{ApiEndpoints.Customers}/{customerNumber}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #13
0
        public static async Task <Price> GetPriceForArticleAsync(FortnoxApiRequest request, string priceList, string articleNumber, string fromQuantity)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <Price> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                   $"{ApiEndpoints.Prices}/{priceList}/{articleNumber}/{fromQuantity}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #14
0
        public static async Task <Invoice> GetInvoiceAsync(FortnoxApiRequest request, int invoiceNumber)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <Invoice> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                     $"{ApiEndpoints.Invoices}/{invoiceNumber}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #15
0
        public static async Task <ExpenseSubset> GetExpenseAsync(FortnoxApiRequest request, string expenseCode)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <ExpenseSubset> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                           $"{ApiEndpoints.Expenses}/{expenseCode}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
        public static async Task <AttendanceTransaction> GetAttendanceTransactionAsync(FortnoxApiRequest request, string employeeId, string date, string causeCode)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <AttendanceTransaction> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                                   $"{ApiEndpoints.AttendanceTransactions}/{employeeId}/{date}/{causeCode}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
        public static async Task <SalaryTransaction> GetSalaryTransactionAsync(FortnoxApiRequest request, string salaryRow)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <SalaryTransaction> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                               $"{ApiEndpoints.SalaryTransactions}/{salaryRow}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #18
0
        public static async Task <SupplierInvoiceFileConnection> CreateSupplierInvoiceFileConnection(
            FortnoxApiRequest request,
            string fileId,
            string supplierInvoiceNumber)
        {
            var apiRequest =
                new FortnoxApiClientRequest <SingleResource <SupplierInvoiceFileConnection> >(
                    HttpMethod.Post,
                    request.AccessToken,
                    request.ClientSecret,
                    $"{ApiEndpoints.SupplierInvoiceFileConnections}")
            {
                Data = new SingleResource <SupplierInvoiceFileConnection>()
                {
                    Data = new SupplierInvoiceFileConnection()
                    {
                        FileId = fileId,
                        SupplierInvoiceNumber = supplierInvoiceNumber
                    }
                }
            };

            return((await FortnoxAPIClient.CallAsync <
                        SingleResource <SupplierInvoiceFileConnection>,
                        SingleResource <SupplierInvoiceFileConnection> >(apiRequest)).Data);
        }
Example #19
0
        public static async Task <Employee> GetEmployeeAsync(FortnoxApiRequest request, string employeeNumber)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <Employee> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                      $"{ApiEndpoints.Employees}/{employeeNumber}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #20
0
        public static async Task <Unit> GetUnitAsync(FortnoxApiRequest request, string unitCode)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <Unit> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                  $"{ApiEndpoints.Units}/{unitCode}");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #21
0
        public static async Task <byte[]> PreviewInvoiceAsync(FortnoxApiRequest request, int invoiceNumber)
        {
            var apiRequest =
                new FortnoxApiClientRequest <byte[]>(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                     $"{ApiEndpoints.Invoices}/{invoiceNumber}/preview");

            return(await FortnoxAPIClient.CallAsync(apiRequest));
        }
Example #22
0
        /// <summary>
        /// This action is used to set the field Sent as true from an external system without generating a PDF
        /// </summary>
        /// <param name="request">FortnoxApiRequest object</param>
        /// <param name="orderNumber">Fortnox Order Number</param>
        /// <returns>Fortnox order object</returns>
        public static async Task <Order> ExternalPrintAsync(FortnoxApiRequest request, int orderNumber)
        {
            var apiRequest =
                new FortnoxApiClientRequest <SingleResource <Order> >(HttpMethod.Put, request.AccessToken, request.ClientSecret,
                                                                      $"{ApiEndpoints.Orders}/{orderNumber}/externalprint");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #23
0
        public static async Task <Contract> IncreaseInvoiceCountForContractAsync(FortnoxApiRequest request, Contract contract)
        {
            var apiRequest =
                new FortnoxApiClientRequest <SingleResource <Contract> >(HttpMethod.Put, request.AccessToken, request.ClientSecret,
                                                                         $"{ApiEndpoints.Contracts}/{contract.DocumentNumber}/increaseinvoicecount");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #24
0
        public static async Task <ListedResourceResponse <PrintTemplates> > GetTemplatesAsync(PrintTemplatesListRequest request)
        {
            var apiRequest = new FortnoxApiClientRequest <ListedResourceResponse <PrintTemplates> >(HttpMethod.Get, request.AccessToken, request.ClientSecret,
                                                                                                    $"{ApiEndpoints.PrintTemplates}/");

            apiRequest.SetType(request.Filter?.ToString());
            return(await FortnoxAPIClient.CallAsync(apiRequest));
        }
Example #25
0
        public static async Task <InvoicePayment> BookkeepInvoicePaymentAsync(FortnoxApiRequest request, int invoicePaymentNumber)
        {
            var apiRequest =
                new FortnoxApiClientRequest <SingleResource <InvoicePayment> >(HttpMethod.Put, request.AccessToken, request.ClientSecret,
                                                                               $"{ApiEndpoints.InvoicePayments}/{invoicePaymentNumber}/bookkeep");

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
Example #26
0
        public static async Task <ListedResourceResponse <AssetTypeSubset> > GetAssetTypesAsync(AssetTypeListRequest listRequest)
        {
            var apiRequest = new FortnoxApiClientRequest <ListedResourceResponse <AssetTypeSubset> >(HttpMethod.Get, listRequest.AccessToken, listRequest.ClientSecret,
                                                                                                     $"{ApiEndpoints.AssetTypes}");

            apiRequest.SetPageAndLimit(listRequest.Page, listRequest.Limit);

            return(await FortnoxAPIClient.CallAsync(apiRequest));
        }
Example #27
0
        public static async Task <ListedResourceResponse <Employees> > GetEmployeesAsync(EmployeeListRequest listRequest)
        {
            var apiRequest = new FortnoxApiClientRequest <ListedResourceResponse <Employees> >(HttpMethod.Get, listRequest.AccessToken, listRequest.ClientSecret,
                                                                                               ApiEndpoints.Employees);

            apiRequest.SetFilter(listRequest.Filter?.ToString());

            return(await FortnoxAPIClient.CallAsync(apiRequest));
        }
        public static async Task <ListedResourceResponse <AttendanceTransactionSubset> > GetAttendanceTransactionsAsync(AttendanceTransactionListRequest listRequest)
        {
            var apiRequest = new FortnoxApiClientRequest <ListedResourceResponse <AttendanceTransactionSubset> >(HttpMethod.Get, listRequest.AccessToken, listRequest.ClientSecret,
                                                                                                                 ApiEndpoints.AttendanceTransactions);

            apiRequest.SetPageAndLimit(listRequest.Page, listRequest.Limit);

            return(await FortnoxAPIClient.CallAsync(apiRequest));
        }
        public static async Task <ListedResourceResponse <ModesOfPaymentsSubset> > GetModesOfPaymentsAsync(ModesOfPaymentsListRequest listRequest)
        {
            var apiRequest = new FortnoxApiClientRequest <ListedResourceResponse <ModesOfPaymentsSubset> >(HttpMethod.Get, listRequest.AccessToken, listRequest.ClientSecret,
                                                                                                           ApiEndpoints.ModesOfPayments);

            apiRequest.SetPageAndLimit(listRequest.Page, listRequest.Limit);

            return(await FortnoxAPIClient.CallAsync(apiRequest));
        }
        public static async Task <ListedResourceResponse <TermsOfPaymentSubset> > GetTermsOfPaymentsAsync(TermsOfPaymentListRequest listRequest)
        {
            var apiRequest = new FortnoxApiClientRequest <ListedResourceResponse <TermsOfPaymentSubset> >(HttpMethod.Get, listRequest.AccessToken, listRequest.ClientSecret,
                                                                                                          ApiEndpoints.TermsOfPayments);

            apiRequest.SetSortOrder(listRequest.SortBy?.ToString(), listRequest.SortOrder.ToString());
            apiRequest.SetPageAndLimit(listRequest.Page, listRequest.Limit);

            return(await FortnoxAPIClient.CallAsync(apiRequest));
        }