# Ergonode Docs

## All products

- [Technical documentation](https://docs.ergonode.com/technical-documentation.md): The docs describing ways to integrate and extend Ergonode PIM

## GraphQL API

- [GraphQL API](https://docs.ergonode.com/graphql/graphql-api.md): This doc provides an overview of our GraphQL API which is designed specifically with data integration in mind.
- [Query types](https://docs.ergonode.com/graphql/overview/query-types.md): Overview of available query and field naming concepts representing how the data is provided.
- [Stream queries](https://docs.ergonode.com/graphql/overview/query-types/stream-queries.md): List of factors resulting in resource cursor update
- [Error codes](https://docs.ergonode.com/graphql/overview/error-codes.md): The list of possible error codes to occur in course of executing API mutations.
- [Schema](https://docs.ergonode.com/graphql/overview/schema.md)
- [Queries](https://docs.ergonode.com/graphql/overview/schema/queries.md): Queries allow retrieving data from the server.
- [Mutations](https://docs.ergonode.com/graphql/overview/schema/mutations.md): Mutations allow modifing data on the server.
- [Objects](https://docs.ergonode.com/graphql/overview/schema/objects.md): Objects represent the resources you can access.
- [Interfaces](https://docs.ergonode.com/graphql/overview/schema/interfaces.md): Interfaces represent a parent for Objects providing definition of common fields.
- [Scalars](https://docs.ergonode.com/graphql/overview/schema/scalars.md): Scalars represent primitive values like Integer or String.
- [Input objects](https://docs.ergonode.com/graphql/overview/schema/input-objects.md): Input objects represent a set of fields allowing describing mutation.
- [Enums](https://docs.ergonode.com/graphql/overview/schema/enums.md): Enums represent a predefined sets o values.
- [Unions](https://docs.ergonode.com/graphql/overview/schema/unions.md): Unions represent possible many types.
- [Changelog](https://docs.ergonode.com/graphql/changelog/changelog.md): The changelog is a list of recent changes to GraphQL API schema.
- [Breaking changes](https://docs.ergonode.com/graphql/changelog/breaking-changes.md): The list of recent and upcoming breaking changes
- [Authentication](https://docs.ergonode.com/graphql/guides/authentication.md)
- [Basic query tutorial](https://docs.ergonode.com/graphql/guides/basic-query-tutorial.md)
- [Batching mutations](https://docs.ergonode.com/graphql/guides/batching-mutations.md)
- [Integrating data](https://docs.ergonode.com/graphql/guides/integrating-data.md)
- [Best Practices](https://docs.ergonode.com/graphql/guides/best-practices.md)
- [List of products with attributes and they values in product stream](https://docs.ergonode.com/graphql/query-examples/list-of-products-with-attributes-and-they-values-in-product-stream.md): This is how you can get a list of products with ALL attribute types, if you do not need all of them, simply remove any fragment that is not needed
- [Get information about specific product and specific attribute values in specific language](https://docs.ergonode.com/graphql/query-examples/get-information-about-specific-product-and-specific-attribute-values-in-specific-language.md)
- [List of 100 grouped products with simple and variable products in stream](https://docs.ergonode.com/graphql/query-examples/list-of-100-grouped-products-with-simple-and-variable-products-in-stream.md): This will allow you to get list of first 100 product no matter if they're simple or variable.
- [List of grouped products with simple and variable products AFTER some end cursor](https://docs.ergonode.com/graphql/query-examples/list-of-grouped-products-with-simple-and-variable-products-after-some-end-cursor.md): This is how you can get data after some cursor via API.
- [List of active languages](https://docs.ergonode.com/graphql/query-examples/list-of-active-languages.md)
- [List of templates with attributes](https://docs.ergonode.com/graphql/query-examples/list-of-templates-with-attributes.md)
- [List of all multimedia in stream](https://docs.ergonode.com/graphql/query-examples/list-of-all-multimedia-in-stream.md): This query will return all multimedia in PIM and extra info about them.
- [List of product relations for a specific product](https://docs.ergonode.com/graphql/query-examples/list-of-product-relations-for-a-specific-product.md)
- [Get values of custom fields](https://docs.ergonode.com/graphql/query-examples/get-values-of-custom-fields.md): Example query on how to get values of custom fields options
- [Create a simple product](https://docs.ergonode.com/graphql/query-examples/create-a-simple-product.md): This is how you can create a simple product via API.
- [Create a grouping product](https://docs.ergonode.com/graphql/query-examples/create-a-grouping-product.md): This is how you can create a simple product via API.
- [Create a variable product](https://docs.ergonode.com/graphql/query-examples/create-a-variable-product.md): This is how you can create variable product via API.
- [Add a child product to grouping one](https://docs.ergonode.com/graphql/query-examples/add-a-child-product-to-grouping-one.md): That's how you add child product to grouping one.
- [Set quantity of child product](https://docs.ergonode.com/graphql/query-examples/set-quantity-of-child-product.md): Here's how you can set child product quantity via API.
- [Remove a child product from grouping one](https://docs.ergonode.com/graphql/query-examples/remove-a-child-product-from-grouping-one.md): This is how you remove child product from grouping one via API.
- [Add a variant to variable product](https://docs.ergonode.com/graphql/query-examples/add-a-variant-to-variable-product.md): Here's how to add variant to variable product via API.
- [Get products with variants, binding attributes and variants list](https://docs.ergonode.com/graphql/query-examples/get-products-with-variants-binding-attributes-and-variants-list.md)
- [Remove a variant product from variable one](https://docs.ergonode.com/graphql/query-examples/remove-a-variant-product-from-variable-one.md): This is how you can remove variant product from variable one via API
- [Multimedia create](https://docs.ergonode.com/graphql/query-examples/multimedia-create.md): This is how you can create multimedia via API.
- [Add images to the gallery attribute](https://docs.ergonode.com/graphql/query-examples/add-images-to-the-gallery-attribute.md)
- [Change the name of the multimedia](https://docs.ergonode.com/graphql/query-examples/change-the-name-of-the-multimedia.md): This is how you can change the name of single multimedia via API.
- [Set alternative value for a multimedia](https://docs.ergonode.com/graphql/query-examples/set-alternative-value-for-a-multimedia.md): This is how you can set alternative value to a single multimedia via API.
- [Delete Multimedia](https://docs.ergonode.com/graphql/query-examples/delete-multimedia.md)
- [Add a file to the product](https://docs.ergonode.com/graphql/query-examples/add-a-file-to-the-product.md)
- [Get attributes list by SKU](https://docs.ergonode.com/graphql/query-examples/get-attributes-list-by-sku.md)
- [Create a product and assign / modify attributes values](https://docs.ergonode.com/graphql/query-examples/create-a-product-and-assign-modify-attributes-values.md)
- [Assign the template to a product](https://docs.ergonode.com/graphql/query-examples/assign-the-template-to-a-product.md)
- [Create a category](https://docs.ergonode.com/graphql/query-examples/create-a-category.md)
- [Get category tree by category tree code](https://docs.ergonode.com/graphql/query-examples/get-category-tree-by-category-tree-code.md)
- [Get a specific category with values of the category attribute](https://docs.ergonode.com/graphql/query-examples/get-a-specific-category-with-values-of-the-category-attribute.md)
- [Set multiple options in multiselect attribute on specific product](https://docs.ergonode.com/graphql/query-examples/set-multiple-options-in-multiselect-attribute-on-specific-product.md)
- [Add option to select type attribute](https://docs.ergonode.com/graphql/add-option-to-select-type-attribute.md)

## Ergonode transfer

- [Ergonode transfer](https://docs.ergonode.com/ergonode-transfer/ergonode-transfer.md): This doc provides an overview of our CSV files format.
- [Files format](https://docs.ergonode.com/ergonode-transfer/overview/files-format.md): Overview of the import and export files format
- [products.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/products.csv.md)
- [multimedia.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/multimedia.csv.md)
- [multimedia\_attributes.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/multimedia_attributes.csv.md)
- [categories.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/categories.csv.md)
- [category\_attributes.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/category_attributes.csv.md)
- [category\_trees.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/category_trees.csv.md)
- [category\_trees\_elements.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/category_trees_elements.csv.md)
- [completeness\_sets.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/completeness_sets.csv.md)
- [multimedia\_folder.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/multimedia_folder.csv.md)
- [attributes.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/attributes.csv.md)
- [attribute\_groups.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/attribute_groups.csv.md)
- [custom\_fields.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/custom_fields.csv.md)
- [options.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/options.csv.md)
- [units.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/units.csv.md)
- [templates.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/templates.csv.md)
- [templates\_elements.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/templates_elements.csv.md)
- [section\_templates.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/section_templates.csv.md)
- [section\_templates\_elements.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/section_templates_elements.csv.md)
- [roles.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/roles.csv.md)
- [roles\_feature\_privileges.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/roles_feature_privileges.csv.md)
- [automations.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/automations.csv.md)
- [automation\_actions.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/automation_actions.csv.md)
- [workflows\_statuses.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/workflows_statuses.csv.md)
- [workflows.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/workflows.csv.md)
- [workflows\_transitions.csv](https://docs.ergonode.com/ergonode-transfer/overview/files-format/workflows_transitions.csv.md)
- [Incremental import](https://docs.ergonode.com/ergonode-transfer/overview/incremental-import.md): Basic concepts behind the format in terms of importing data
- [Import configuration](https://docs.ergonode.com/ergonode-transfer/overview/import-configuration.md)
- [Export configuration](https://docs.ergonode.com/ergonode-transfer/overview/export-configuration.md)
- [Changelog](https://docs.ergonode.com/ergonode-transfer/changelog/changelog.md): The changelog is a list of recent changes to GraphQL API schema.
- [Breaking changes](https://docs.ergonode.com/ergonode-transfer/changelog/breaking-changes.md): The list of recent and upcoming breaking changes

## Apps

- [Apps](https://docs.ergonode.com/apps2/apps.md): This doc provides an overview of Ergonode Apps framework.
- [Quick start](https://docs.ergonode.com/apps2/quick-start.md): Overview of steps required to create an App
- [Manifest](https://docs.ergonode.com/apps2/detailed-reference/manifest.md): Full reference of Manifest file.
- [Configuration schema](https://docs.ergonode.com/apps2/detailed-reference/manifest/configuration-schema.md): Overview of how to build App configuration
- [Dictionaries](https://docs.ergonode.com/apps2/detailed-reference/manifest/dictionaries.md): Extend the configuration via dictionaries
- [Authentication](https://docs.ergonode.com/apps2/detailed-reference/authentication.md): Description of concepts behind authentication system and how to prepare your own security.
- [Configuration](https://docs.ergonode.com/apps2/detailed-reference/configuration.md): Configure your App in Ergonode
- [Event endpoints](https://docs.ergonode.com/apps2/detailed-reference/event-endpoints.md): React on events occurring in your App
- [Synchronization](https://docs.ergonode.com/apps2/detailed-reference/synchronization.md): Let Ergonode orchestrate the synchronization process and worry only about your business logic
- [Data flow](https://docs.ergonode.com/apps2/detailed-reference/synchronization/data-flow.md): Overview of the data flow during synchronization process
- [Synchronization endpoints](https://docs.ergonode.com/apps2/detailed-reference/synchronization/synchronization-endpoints.md): A place where the synchronization business logic is implemented
- [Synchronization events](https://docs.ergonode.com/apps2/detailed-reference/synchronization/synchronization-events.md): Detailed events containing data changes.
- [File download endpoint](https://docs.ergonode.com/apps2/detailed-reference/synchronization/file-download-endpoint.md)
- [Design considerations](https://docs.ergonode.com/apps2/detailed-reference/design-considerations.md): Good practices and tips
- [Changelog](https://docs.ergonode.com/apps2/changelog/changelog.md): The changelog is a list of recent changes to Apps.
- [Breaking changes](https://docs.ergonode.com/apps2/changelog/breaking-changes.md): The list of recent and upcoming breaking changes


---

# 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, you can query the documentation dynamically by asking a question.
Perform an HTTP GET request on a page URL with the `ask` query parameter:
```
GET https://docs.ergonode.com/technical-documentation.md?ask=<question>
```
The question should be specific, self-contained, and written in natural language.
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.
