> For the complete documentation index, see [llms.txt](https://knowledgebase.fabricdata.com/xytech/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://knowledgebase.fabricdata.com/xytech/rest-api/fundamentals-and-data-model.md).

# Fundamentals and data model

Xytech is, at a fundamental level, a system that deals with creating, updating, and utilizing a particular type of data object referred to as a document.

* Each Xytech document is a representation of a database table or collection of database tables and has an API endpoint.
  * Each endpoint has a primary table and may have one or more sub-tables.
  * All sub-tables are children of the primary table, and a sub-table can have one or more child sub-tables.
* Each endpoint represents one of the following types of document:
  * **Setup -** generally describes a single item, and usually only contains a primary table. Setup documents are often used to manage simple items used to generate lists of options in other documents, such as status labels or predefined sets of codes.
  * **Maintenance** – generally describes either master data (which are used in transactional data) or transactional data. Maintenance documents often contain one or more sub-tables.
  * **List** documents provide access to sets of other records, such as Setup and Maintenance documents.

The Xytech REST API is JSON-based and has Open API v3.0 API specifications for each API call available in YAML (migrating to JSON from v11.1). These specifications can be retrieved as a plain YAML file and are also readily available to be viewed in a browser through the Swagger UI. See the [OpenAPI definition](/xytech/rest-api/openapi-definition.md)

### High level data model diagram

This diagram provides you with a high-level understanding of the primary Xytech data objects and how they relate.

Below the name of each data object is the REST API endpoint used for accessing the data object. Where \~/ is prefixed before the endpoint, that indicates it is a sub-table endpoint of the primary endpoint. See the OpenAPI definition for full details.

![](/files/UjwMi3Oq3Ml7zOmQeVrb)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://knowledgebase.fabricdata.com/xytech/rest-api/fundamentals-and-data-model.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
