Agiloft stores records in knowledge-base tables. Use this integration to find, create, update, and delete records, work with attachments, manage record locks, and run action buttons. Select the target knowledge base and table for each operation; the action reference below lists its required fields.
Integrate with Agiloft contract lifecycle management to create, read, update, delete, and search records. Supports file attachments, SQL-based selection, saved searches, record locking, and running action buttons across any table in your knowledge base.
Check whether an asynchronous Agiloft call, such as a run action button, has completed.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table the asynchronous call was made against callbackIdstring Yes Callback ID returned by the asynchronous call, e.g. from Run Action Button
Parameter Type Description callbackIdstring Callback ID that was checked statusCodenumber Raw status code Agiloft returned statusstring completed, queued, in_progress, failed, or unknown_callback completeboolean True when the operation has finished, whether it succeeded or failed
Attach a file to a field in an Agiloft record.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "contracts") recordIdstring Yes ID of the record to attach the file to fieldNamestring Yes Name of the attachment field filefile Yes File to attach fileNamestring No Name to assign to the file (defaults to original file name) overwriteboolean No Replace the contents of the field instead of adding another file to it
Parameter Type Description recordIdstring ID of the record the file was attached to fieldNamestring Name of the field the file was attached to fileNamestring Name of the attached file totalAttachmentsnumber Total number of files attached in the field after the operation
Get information about file attachments on a record field.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "contracts") recordIdstring Yes ID of the record to check attachments on fieldNamestring Yes Name of the attachment field to inspect
Parameter Type Description attachmentsarray List of attachments with position, name, and size ↳ position number Position index of the attachment in the field ↳ name string File name of the attachment ↳ size number File size in bytes totalCountnumber Total number of attachments in the field
Create a new record in an Agiloft table.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "contracts", "contacts.employees") datastring Yes Record field values as a JSON object (e.g., {"first_name": "John", "status": "Active"})
Parameter Type Description idstring ID of the created record fieldsjson Field values of the created record
Delete a record from an Agiloft table.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "contracts", "contacts.employees") recordIdstring Yes ID of the record to delete substituteIdsstring No Comma-separated IDs of records that adopt the dependants of the deleted record. Read only when the delete rule is REPLACE_WITH_ANOTHER. deleteRulestring No How to treat records that depend on this one: ERROR_IF_DEPENDANTS (default — fails rather than cascading), APPLY_DELETE_WHERE_POSSIBLE, DELETE_WHERE_POSSIBLE_OTHERWISE_UNLINK, APPLY_UNLINK, UNLINK_WHERE_POSSIBLE_OTHERWISE_DELETE, or REPLACE_WITH_ANOTHER
Parameter Type Description idstring ID of the deleted record deletedboolean Whether the record was successfully deleted
Resolve the internal numeric ID of a choice-list value, for use in EWSelect WHERE clauses against choice fields.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "case", "contracts") fieldNamestring Yes Choice field name (e.g., "priority", "status") valuestring Yes Choice display value to resolve (e.g., "High", "Active")
Parameter Type Description choiceLineIdnumber Internal numeric line ID of the choice value
List the tables and fields in an Agiloft knowledge base, to discover the logical names other operations need.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring No Logical name of a single table to describe (e.g., "contacts"). Leave empty to list every table in the knowledge base. includeLinkedInfoboolean No Include the source table and column behind each linked field skipColumnsInfoboolean No Return table names only, omitting field details, for a much smaller response
Parameter Type Description tablesarray Tables in the knowledge base with their fields ↳ label string Display name of the table ↳ logicalName string Logical table name, as other Agiloft operations expect it ↳ fields array Fields on the table ↳ columnName string Logical field name ↳ columnLabel string Display label ↳ columnType string SQL column type ↳ columnTypeDomain string Agiloft field type ↳ required boolean Whether the field is mandatory ↳ isLinked boolean Whether the field is a linked field ↳ linkedInfo array Source table and column, when linked-field details were requested ↳ linkedTable string Source table ↳ linkedColumn string Source column ↳ textFieldType string Content type for text fields, e.g. text/plain totalCountnumber Number of tables returned
Lock, unlock, or check the lock status of an Agiloft record.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "contracts") recordIdstring Yes ID of the record to lock, unlock, or check lockActionstring Yes Action to perform: "lock", "unlock", or "check" forceboolean No Unlock only: release a lock held by another user.
Parameter Type Description idstring Record ID tableIdnumber Numeric system identifier of the table holding the record lockStatusstring Lock status: "LOCKED" when the record is held, "NO_LOCK" when it is free lockedBystring Username of the user who locked the record lockExpiresInMinutesnumber Minutes until the lock expires
Search Agiloft records by describing what you want in plain language, such as "active NDAs submitted last month".
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password nlpQuerystring Yes The request in plain language, e.g. "Show me open, high-priority contracts". Structured field filters are not accepted — use Search Records for those. fieldsstring Yes Comma-separated field names to return, e.g. "id, contract_title1, company_name" pagestring No Page number, starting from 0 limitstring No Records per page
Parameter Type Description recordsjson Matching records with the requested field values totalCountnumber Number of records in this response truncatedboolean True when more records were returned upstream than this call reports
Read a record by ID from an Agiloft table.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "contracts", "contacts.employees") recordIdstring Yes ID of the record to read fieldsstring No Comma-separated list of field names to include in the response
Parameter Type Description idstring ID of the record fieldsjson Field values of the record
Remove an attached file from a field in an Agiloft record.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "contracts") recordIdstring Yes ID of the record containing the attachment fieldNamestring Yes Name of the attachment field positionstring Yes Position index of the file to remove (starting from 0)
Parameter Type Description recordIdstring ID of the record fieldNamestring Name of the attachment field remainingAttachmentsnumber Number of attachments remaining in the field after removal
Download an attached file from an Agiloft record field.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "contracts") recordIdstring Yes ID of the record containing the attachment fieldNamestring Yes Name of the attachment field positionstring Yes Position index of the file in the field (starting from 0)
Parameter Type Description filefile Downloaded attachment file
Run an action button on an Agiloft record, such as an approval or send-for-signature step.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "contracts", "case") recordIdstring Yes ID of the record to run the action button on actionButtonFieldstring Yes Logical name of the field holding the action button (e.g., "ab_field")
Parameter Type Description recordIdstring ID of the record the action button was run on callbackIdstring Callback identifier for the asynchronous run, which Agiloft returns as EWCALLBACK_ID
List the saved searches defined for an Agiloft table.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Logical table name to list saved searches for (e.g., "contract")
Parameter Type Description searchesarray Saved searches defined on the table ↳ name string Internal saved search name ↳ label string Display label, as used by Search Records ↳ id number Saved search identifier in the Agiloft database ↳ description string Saved search description totalCountnumber Number of saved searches returned
Search for records in an Agiloft table using a query.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name to search in (e.g., "contracts", "contacts.employees") querystring No Ad hoc EWSearch query. Combine conditions with && (and) or || (or) and quote every value — e.g. "summary~='test'&&priority='High'". Required unless a saved search is given. searchstring No Label of a saved search defined on the table (e.g., "C: Status is Closed"). Can be combined with a query to narrow it further. fieldsstring No Comma-separated list of field names to include in the results pagestring No Page number for paginated results (starting from 0) limitstring No Maximum number of records to return per page. Agiloft treats 0 as "all records", so leave it unset or use a positive value to keep result sizes bounded.
Parameter Type Description truncatedboolean True when more records were returned upstream than this call reports recordsjson Array of matching records with their field values totalCountnumber Number of records in this response. Not a total match count — compare with truncated. pagenumber Page number that was requested (0-based) limitnumber Page size that was requested; 0 when no limit was sent and Agiloft chose one
Select record IDs matching a SQL WHERE clause from an Agiloft table.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "contracts", "contacts.employees") wherestring Yes SQL WHERE clause using database column names (e.g., "summary like '%new%'" or "assigned_person='John Doe'"). EWSelect has no page size and returns every matching ID, so append a database limit such as "limit 0,200" to bound the result.
Parameter Type Description truncatedboolean True when more IDs matched than this call reports recordIdsarray Array of record IDs matching the query totalCountnumber Number of IDs in this response — compare with truncated
Update an existing record in an Agiloft table.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "contracts", "contacts.employees") recordIdstring Yes ID of the record to update datastring Yes Updated field values as a JSON object (e.g., {"status": "Active", "priority": "High"})
Parameter Type Description idstring ID of the updated record fieldsjson Updated field values of the record
Create an Agiloft record, or update it when a record already matches the given fields.
Inputs and outputsParameter Type Required Description instanceUrlstring Yes Agiloft instance URL (e.g., https://mycompany.agiloft.com ) knowledgeBasestring Yes Knowledge base name loginstring Yes Agiloft username passwordstring Yes Agiloft password tablestring Yes Table name (e.g., "contracts", "contacts.employees") matchstring Yes Field used to find an existing record (e.g., "ext_id"). Pick something that identifies a record uniquely — if more than one record matches, Agiloft writes nothing and returns a conflict. asyncboolean No Queue the write instead of waiting for it. Returns a callback ID instead of a record ID; pass that to Async Status to poll the result. datastring Yes Field values as a JSON object. On create these populate the new record; on update only the supplied fields change.
Parameter Type Description idstring ID of the created or updated record createdboolean True when a new record was created, false when an existing one was updated callbackIdstring Returned for a queued upsert; pass it to Async Status to poll the result