MaintainX v2

Provides integration with MaintainX to query and manage maintenance resources, including work orders, assets, locations, parts, meters, and procedures, through its REST API.

Revision History

0.0.0.7 - Initial release.

Connection

Use this Connection to store the MaintainX API key and organization selection used by all MaintainX Methods.

Property Type Description
API Key Masked Required MaintainX user API key. Requests use the permissions of the key's owning user.
Organization ID Integer Optional target organization identifier. Required for multi-organization keys and must be positive when supplied.

Setup Notes

  1. Obtain a MaintainX user API key with access to the resources your Workflow needs.
  2. Create a MaintainX Connection and enter the API Key.
  3. Enter the target Organization ID if the key has access to multiple organizations.
  4. Save and test the Connection.

The Connection test reads users without modifying account data. API keys are not renewed automatically. Replace a revoked or expired key and reconnect.

The Node uses https://api.getmaintainx.com/v1/. Templates are available without querying MaintainX, but running an operation requires a valid key and the relevant account permissions.

Methods

Select an operation template for the Method you need. The template populates OperationId and exposes route and query values in Options, request body fields where applicable, and expected response fields. Use the template-selected identifier rather than the provider's textual operation name.

Query

Reads MaintainX resources using GET operations, including collections, individual records, nested resources, and external-ID routes. Supported collections are paged automatically.

Parameter Type Description
Connection Connection MaintainX account Connection.
OperationId String Required template-selected identifier for a Query operation.
Options Object Declared route and query values, including resource identifiers and filters required by the selected template.
Return Type Description
Response Array One provider-shaped row per collection or top-level array element, or the selected individual record. Scalar array elements appear under Value. Query rows do not include mutation metadata. Empty collections return no rows.

Create

Runs supported POST operations to create resources or perform the selected operation. Each Items row supplies one request object.

Parameter Type Description
Connection Connection MaintainX account Connection.
OperationId String Required template-selected identifier for a Create operation.
Options Object Declared route and query values for the selected operation.
Items Array Required request objects matching the selected template. For array-body operations, each object contains the complete request array in Batch.
Return Type Description
Response Array One result per input row, preserving provider fields and adding Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request. Provider array responses are grouped under Results.

For POST /meterreadings, put up to 100 readings in the structured Batch array of one input row. The Node sends that entire batch as one request. Purchase-order line items remain a nested array within the purchase-order request object.

Subscription operations manage MaintainX subscriptions. They do not create a Flowgear webhook listener.

Update

Runs supported PATCH operations to update resources, including nested resources and resources selected by external ID.

Parameter Type Description
Connection Connection MaintainX account Connection.
OperationId String Required template-selected identifier for an Update operation.
Options Object Required route identifiers and declared query values. The same values apply to every input row.
Items Array Required update request objects matching the selected template.
Return Type Description
Response Array One result per input row, preserving provider fields and adding Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request. Provider array responses are grouped under Results.

Delete

Deletes one explicitly selected resource using a DELETE operation. It runs once and does not accept Items.

Parameter Type Description
Connection Connection MaintainX account Connection.
OperationId String Required template-selected identifier for a Delete operation.
Options Object Required route identifiers and declared query values identifying the resource to delete.
Return Type Description
Response Array One result with any provider response fields and Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request. The request records the supplied Options.

Upload

Uploads an attachment or thumbnail using a PUT operation. The Node sends the file bytes directly, without JSON or multipart encoding, and completes one upload per invocation.

Parameter Type Description
Connection Connection MaintainX account Connection.
OperationId String Required template-selected identifier for an Upload operation.
FileContent Byte Required raw file bytes.
Options Object Required route values, including the filename, as declared by the selected template.
ContentType String A media type supported by the selected endpoint. Defaults to application/octet-stream; use another type when the endpoint requires it.
Return Type Description
Response Array One result with provider fields and Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request. The request contains Options, ContentType, and a base64 representation of FileContent.

An upload rejected for exceeding the provider's size limit returns a failed result with the provider message and original request. It is not retried.

Usage Notes

  • Supply the selected template's exact provider field names and required route values. Unknown Options and internal paging controls, including cursor, limit, and offset values, are rejected. Route values equal to . or .. are also rejected.
  • String, integer, and number collections use CSV strings in templates and emitted records, including nested fields. Quote values containing commas, quotes, or line breaks, and double embedded quotes. An empty string represents an empty collection; "" represents one empty string. Object arrays remain structured. Omitted and null values retain provider semantics.
  • Numeric CSV values must use valid numeric syntax without surrounding whitespace. Mixed category filters use exact string labels, including numeric text.
  • Query fetches the first page when the Method starts and subsequent pages as the output is consumed. Create and Update send the first input row when the Method starts and later rows as output is consumed. An empty connected Items input sends no requests.
  • Inspect Flowgear.IsSuccess for write results. Business rejections produce failed rows and allow later input rows to continue. Setup, authentication, permission, and transport failures stop execution. An invalid first input fails the Node; later invalid inputs produce failed rows.
  • Flowgear.Request records the original request values, including CSV fields. Successful writes without a response body still return the Flowgear metadata.
  • Explicit rate-limit rejections permit at most three attempts using the provider reset duration. Ambiguous writes, transport failures, and server errors are not retried. Check provider state before retrying a write after a transport failure.

Known Issues

  • The deprecated POST /meters/{meterId}/readings operation is unavailable. Use the batch meter-reading operation instead.
  • Account-specific and freeform objects do not have fixed template fields. Their runtime values are preserved, but mapping their children requires explicit Workflow child metadata.