Skip to content

XTRF Home Portal API API

by xtrf.eu

API keyHTTPSBooks
Open documentation ↗

Overview

XTRF Home Portal API enables you to perform operations on Projects, Quotes, Customers, Vendors etc. as a XTRF Home Portal user. <br>The documentation is generated from OpenAPI specification 3.0 available <a href="/home-api/openapi.json">here</a> <br> The API client/consumer code may be easily generated in 60+ programming languages using an open source code generator available at the time of writing this documentation at <a href='https://editor.swagger.io/'>https://editor.swagger.io/</a> Thank you for using XTRF Application Programming interface (XTRF API). By using the API you agree to the terms below. If you disagree with any of these terms, XTRF does not grant you a license to use the XTRF API. XTRF reserves the right to update and change these terms from time to time without a prior notice of API users. You can always find the most recent version of these terms here:

XTRF Home Portal API is a books API from xtrf.eu. Requests are authenticated with an API key. It is served over HTTPS. Its OpenAPI description documents 284 endpoints.

At a glance

Authentication
API key
HTTPS
Yes
CORS
Unknown
Category
Books
Base URL
https://presentation.s.xtrf.eu/home-api
Version
2.0
Endpoints
284
Spec updated
2023-03-06

Make a first request

Replace the placeholders; the documentation says exactly where credentials go.

cURL
curl -X GET "https://presentation.s.xtrf.eu/home-api/accounting/customers/invoices" \
  -H "Accept: application/json" \
  -H "X-API-Key: YOUR_API_KEY"
JavaScript
const response = await fetch("https://presentation.s.xtrf.eu/home-api/accounting/customers/invoices", {
  method: "GET",
  headers: {
    "Accept": "application/json",
    "X-API-Key": "YOUR_API_KEY",
  },
});
const data = await response.json();
console.log(data);
Python
import requests

response = requests.request(
    "GET",
    "https://presentation.s.xtrf.eu/home-api/accounting/customers/invoices",
    headers={
    "Accept": "application/json",
    "X-API-Key": "YOUR_API_KEY",
    },
    timeout=30,
)
print(response.json())

Endpoints

MethodPathWhat it does
GET/accounting/customers/invoicesLists all client invoices in all statuses (including not ready and drafts) that have been updated since a specific date.
POST/accounting/customers/invoicesCreates a new invoice.
POST/accounting/customers/invoices/documentsGenerates client invoices' documents.
GET/accounting/customers/invoices/idsReturns client invoices' internal identifiers.
POST/accounting/customers/invoices/sendRemindersSends reminders. Returns number of sent e-mails.
GET/accounting/customers/invoices/{invoiceId}Returns client invoice details.
DELETE/accounting/customers/invoices/{invoiceId}Removes a client invoice.
GET/accounting/customers/invoices/{invoiceId}/datesReturns dates of a given client invoice.
GET/accounting/customers/invoices/{invoiceId}/documentGenerates client invoice document (PDF).
POST/accounting/customers/invoices/{invoiceId}/duplicateDuplicate client invoice.
POST/accounting/customers/invoices/{invoiceId}/duplicate/proFormaDuplicate client invoice as pro forma.
GET/accounting/customers/invoices/{invoiceId}/paymentTermsReturns payment terms of a given client invoice.
GET/accounting/customers/invoices/{invoiceId}/paymentsReturns all payments for the client invoice.
POST/accounting/customers/invoices/{invoiceId}/paymentsAdds a new payment to the client invoice. The invoice payment status (Not Paid, Partially Paid, Fully Paid) is automatically recalculated.
POST/accounting/customers/invoices/{invoiceId}/sendReminderSends reminder.
DELETE/accounting/customers/payments/{paymentId}Removes a customer payment.
GET/accounting/providers/invoicesLists all vendor invoices in all statuses (including not ready and drafts) that have been updated since a specific date.
POST/accounting/providers/invoicesCreates a new invoice.
GET/accounting/providers/invoices/idsReturns vendor invoices' internal identifiers.
GET/accounting/providers/invoices/{invoiceId}Returns provider invoice details.
DELETE/accounting/providers/invoices/{invoiceId}Removes a provider invoice.
GET/accounting/providers/invoices/{invoiceId}/documentGenerates provider invoice document (PDF).
GET/accounting/providers/invoices/{invoiceId}/paymentsReturns all payments for the vendor invoice.
POST/accounting/providers/invoices/{invoiceId}/paymentsCreates a new payment on the vendor account and assigns the payment to the invoice.
POST/accounting/providers/invoices/{invoiceId}/sendSends a provider invoice.
POST/accounting/providers/invoices/{invoiceId}/statusChanges invoice status to given status.
DELETE/accounting/providers/payments/{paymentId}Removes a provider payment.
GET/browserSearches for data (ie. customer, task, etc) and returns it in a tabular form.
GET/browser/csvSearches for data (ie. customer, task, etc) and returns it in a CSV form.
GET/browser/views/details/for/{className}Returns current view's detailed information, suitable for browser.
GET/browser/views/details/for/{className}/{viewId}Returns view's detailed information, suitable for browser.
POST/browser/views/details/for/{className}/{viewId}Selects given view as current and returns its detailed information, suitable for browser.
GET/browser/views/for/{className}Returns views' brief.
POST/browser/views/for/{className}Creates view for given class.
GET/browser/views/{viewId}Returns all view's information.
PUT/browser/views/{viewId}Updates all view's information.
DELETE/browser/views/{viewId}Removes a view.
GET/browser/views/{viewId}/columnsReturns columns defined in view.
PUT/browser/views/{viewId}/columnsUpdates columns in view.
DELETE/browser/views/{viewId}/columns/{columnName}Deletes a single column from view.
GET/browser/views/{viewId}/columns/{columnName}/settingsReturns column's specific settings.
PUT/browser/views/{viewId}/columns/{columnName}/settingsUpdates column's specific settings.
GET/browser/views/{viewId}/filterReturns view's filter.
PUT/browser/views/{viewId}/filterUpdates view's filter.
PUT/browser/views/{viewId}/filter/{filterProperty}Updates view's filter property.
GET/browser/views/{viewId}/orderReturns view's order settings.
PUT/browser/views/{viewId}/orderUpdates view's order settings.
GET/browser/views/{viewId}/permissionsReturns view's permissions.
PUT/browser/views/{viewId}/permissionsUpdates view's permissions.
GET/browser/views/{viewId}/settingsReturns view's settings.
PUT/browser/views/{viewId}/settingsUpdates view's settings.
GET/browser/views/{viewId}/settings/localReturns view's local settings (for current user).
PUT/browser/views/{viewId}/settings/localUpdates view's local settings (for current user).
GET/customersReturns list of simple clients representations
POST/customersCreates a new client.
GET/customers/idsReturns clients' internal identifiers.
POST/customers/personsCreates a new person.
POST/customers/persons/accessTokenGenerates a single use sign-in token.
GET/customers/persons/idsReturns persons' internal identifiers.
GET/customers/persons/{personId}Returns person details.
PUT/customers/persons/{personId}Updates an existing person.
DELETE/customers/persons/{personId}Removes a person.
GET/customers/persons/{personId}/contactReturns contact of a given person.
PUT/customers/persons/{personId}/contactUpdates contact of a given person.
GET/customers/persons/{personId}/customFieldsReturns custom fields of a given person.
PUT/customers/persons/{personId}/customFieldsUpdates custom fields of a given person.
DELETE/customers/priceLists/{priceListId}Removes a customer price list.
GET/customers/{customerId}Returns client details.
PUT/customers/{customerId}Updates an existing client.
DELETE/customers/{customerId}Removes a client.
GET/customers/{customerId}/addressReturns address of a given client.
PUT/customers/{customerId}/addressUpdates address of a given client.
GET/customers/{customerId}/categoriesReturns categories of a given client.
PUT/customers/{customerId}/categoriesUpdates categories of a given client.
GET/customers/{customerId}/contactReturns contact of a given client.
PUT/customers/{customerId}/contactUpdates contact of a given client.
GET/customers/{customerId}/correspondenceAddressReturns correspondence address of a given client.
PUT/customers/{customerId}/correspondenceAddressUpdates correspondence address of a given client.
GET/customers/{customerId}/customFieldsReturns custom fields of a given client.
PUT/customers/{customerId}/customFieldsUpdates custom fields of a given client.
GET/customers/{customerId}/customFields/{customFieldKey}Returns custom field of a given client.
PUT/customers/{customerId}/customFields/{customFieldKey}Updates given custom field of a given client.
GET/customers/{customerId}/industriesReturns industries of a given client.
PUT/customers/{customerId}/industriesUpdates industries of a given client.
GET/dictionaries/activeReturns active dictionary entities for all types.
GET/dictionaries/allReturns dictionary entities for all types. Both active and not active ones.
GET/dictionaries/currency/{isoCode}/exchangeRateReturns currency exchange rates.
POST/dictionaries/currency/{isoCode}/exchangeRateAdding currency exchange rates.
GET/dictionaries/{type}/activeReturns active values from a given dictionary.
GET/dictionaries/{type}/allReturns all values (both active and not active) from a given dictionary.
GET/dictionaries/{type}/{id}Returns specific value from a given dictionary.
POST/filesUploads a temporary file (ie. for XML import). Returns token which can be used in other API calls.
GET/jobs/{jobId}Returns job details by jobId.
PUT/jobs/{jobId}/datesUpdates dates of a given job.
GET/jobs/{jobId}/filesReturns list of input and output files of a job.
POST/jobs/{jobId}/files/outputassignFileToJobOutput
GET/jobs/{jobId}/files/{fileId}Returns file metadata.
PUT/jobs/{jobId}/instructionsUpdates instructions for a job.
PUT/jobs/{jobId}/statusChanges job status if possible (400 Bad Request is returned otherwise).
PUT/jobs/{jobId}/vendorAssigns vendor to a job in a project.

Showing the first 100 of 284 endpoints; the full list is in the documentation.

Questions

Does the XTRF Home Portal API API need an API key?

Yes. The XTRF Home Portal API API uses API key authentication; the documentation explains how to get credentials.

Does the XTRF Home Portal API API support HTTPS?

Yes, the XTRF Home Portal API API is served over HTTPS.

How many endpoints does the XTRF Home Portal API API have?

Its OpenAPI description lists 284 endpoints in version 2.0. The first 100 are shown on this page.

What are alternatives to the XTRF Home Portal API API?

Other Books APIs include Google Books, Bhagavad Gita telugu, Open Library, Ganjoor, Wolne Lektury.

Compare alternatives →

Listed from APIs.guru (CC0).