Overview
This node, named "CAS Connect," is designed to interact with a genesisWorld instance via its API. It allows users to perform various operations on data objects within the system, such as reading, creating, updating, deleting, querying, and managing links between objects. The node supports both predefined actions and fully custom queries, making it flexible for different use cases.
Common scenarios where this node is beneficial include:
- Automating data synchronization between genesisWorld and other systems.
- Querying complex datasets with custom SQL-like queries.
- Managing object relationships by creating or deleting links.
- Retrieving metadata or schema information about data objects.
- Performing CRUD (Create, Read, Update, Delete) operations programmatically.
Practical examples:
- Fetching customer records that meet specific criteria using a query.
- Creating new sales orders with specified properties.
- Updating existing contact information based on external triggers.
- Deleting obsolete records automatically.
- Retrieving user permissions or object schemas for dynamic UI generation.
Properties
| Name | Meaning |
|---|---|
| Action | The operation to perform, chosen from a list of supported actions such as read, create, update, delete, query, getMetadata, getSchema, etc. |
| Custom | Boolean flag indicating whether to use a full custom query (true) or build a query from fields, conditions, and filters (false). Only relevant when Action is "query". |
| Object | The primary data object type to operate on, selected from available genesisWorld data objects. Required for most actions except some like "getSelf" or "getSchema". |
| Object2 | Secondary object type used specifically for the "query" action when not using a custom query. |
| GGUID | The unique identifier of a specific object instance, required for actions targeting a single record such as read, update, delete, duplicate, etc. |
| Link object 1 | The first object involved in link-related actions like transferLink, createLink, or deleteLink. |
| Properties | A collection of key-value pairs representing fields and their values, used when creating or updating an object. |
| Fields | Comma-separated list of fields to retrieve in a query result. Defaults to "*" (all fields). |
| CurrentPage | Page number to request in paginated query results. Defaults to 1. |
| Pagesize | Number of results per page in a query. Maximum allowed is 1000. Defaults to 1000. |
| Condition | Filter condition string for queries, e.g., COMPANYNAME = "gid-gmbh" AND ISORGANISATION = true. |
| Query | Full custom query string, used only if Custom is true. |
| Order by | Optional ordering clause for query results, e.g., COMPANYNAME ASC. |
| TeamFilter | Multi-select filter specifying team access levels for queries. Options include CASLoggedInUser, CASPublicRecords, CASExternalAccess. Defaults to all three. |
Output
The node outputs an array of JSON objects corresponding to the results of the invoked action:
For most actions, the output contains a field named either
resultorGGUID:result: Contains the response data from the API call, typically an object or array of objects representing requested data.GGUID: When creating or updating objects, this field contains the unique identifier of the affected object.
The output JSON structure varies depending on the action performed and the API response but generally reflects the data returned by the genesisWorld API.
The node does not explicitly handle binary data output.
Dependencies
- Requires an active connection to a genesisWorld instance via its API.
- Needs an API authentication token or API key credential configured in n8n under the node's credentials.
- Uses internal helper functions (
casAPI.call) to make HTTP requests to the genesisWorld API endpoints. - No additional external services are required beyond the genesisWorld API.
Troubleshooting
Common issues:
- Incorrect or missing API credentials will cause authentication failures.
- Providing invalid object types or GGUIDs may result in "not found" or similar errors.
- Malformed queries or conditions can lead to API errors or empty results.
- Exceeding maximum page size or invalid pagination parameters might cause request failures.
Error messages:
- Errors thrown by the API are wrapped and surfaced as node errors with messages extracted from the API response.
- Typical error messages include permission denied, invalid query syntax, or resource not found.
Resolution tips:
- Verify API credentials and permissions.
- Double-check object names and identifiers.
- Validate query syntax carefully, especially when using custom queries.
- Use pagination parameters within allowed ranges.
Links and References
- n8n Expressions Documentation
- genesisWorld API documentation (refer to your genesisWorld instance documentation for detailed API specs)
- n8n official docs for creating custom nodes and handling credentials