/** * Adalo Node - Version 1 * Consume Adalo API */ export interface AdaloV1Params { resource?: 'collection'; operation?: 'create' | 'delete' | 'get' | 'getAll' | 'update'; /** * Open your Adalo application and click on the three buttons beside the collection name, then select API Documentation * @hint You can find information about app's collections on https://app.adalo.com/apps/<strong>your-app-id</strong>/api-docs * @displayOptions.show { resource: ["collection"] } */ collectionId?: string | Expression | PlaceholderValue; /** * Row ID * @displayOptions.show { operation: ["get", "delete", "update"], resource: ["collection"] } */ rowId?: string | Expression | PlaceholderValue; /** * Whether to insert the input data this node receives in the new row * @displayOptions.show { operation: ["create", "update"], resource: ["collection"] } * @default defineBelow */ dataToSend?: 'autoMapInputData' | 'defineBelow' | Expression; /** * List of input properties to avoid sending, separated by commas. Leave empty to send all properties. * @displayOptions.show { operation: ["create", "update"], dataToSend: ["autoMapInputData"], resource: ["collection"] } */ inputsToIgnore?: string | Expression | PlaceholderValue; /** * Field must be defined in the collection, otherwise it will be ignored. If field defined in the collection is not set here, it will be set to null. * @displayOptions.show { operation: ["create", "update"], dataToSend: ["defineBelow"], resource: ["collection"] } * @default {} */ fieldsUi?: { /** Field */ fieldValues?: Array<{ /** Field ID */ fieldId?: string | Expression | PlaceholderValue; /** Field Value */ fieldValue?: string | Expression | PlaceholderValue; }>; }; /** * Whether to return all results or only up to a given limit * @displayOptions.show { operation: ["getAll"], resource: ["collection"] } * @default false */ returnAll?: boolean | Expression; /** * Max number of results to return * @displayOptions.show { operation: ["getAll"], resource: ["collection"], returnAll: [false] } * @default 100 */ limit?: number | Expression; requestOptions?: { /** Batching * @default {"batch":{}} */ batching?: { /** Batching */ batch?: { /** Input will be split in batches to throttle requests. -1 for disabled. 0 will be treated as 1. * @default 50 */ batchSize?: number | Expression; /** Time (in milliseconds) between each batch of requests. 0 for disabled. * @default 1000 */ batchInterval?: number | Expression; }; }; /** Whether to accept the response even if SSL certificate validation is not possible * @default false */ allowUnauthorizedCerts?: boolean; /** HTTP proxy to use. If authentication is required it can be defined as follow: http://username:password@myproxy:3128 */ proxy?: string | Expression | PlaceholderValue; /** Time in ms to wait for the server to send response headers (and start the response body) before aborting the request * @default 10000 */ timeout?: number | Expression; }; } export interface AdaloV1Credentials { adaloApi: CredentialReference; } interface AdaloV1NodeBase { type: 'n8n-nodes-base.adalo'; version: 1; credentials?: AdaloV1Credentials; } export type AdaloV1ParamsNode = AdaloV1NodeBase & { config: NodeConfig; }; export type AdaloV1Node = AdaloV1ParamsNode;