Skip to main content

LinkSquares Data Source

The LinkSquares connector enables you to ingest contract data from the LinkSquares Analyze and Finalize APIs into Nexla data flows. Use this connector to retrieve agreements, extract contract terms and tags, track agreement versions and activity logs, and pull user and status information from your LinkSquares account. Follow the instructions below to create a new data flow that ingests data from a LinkSquares source in Nexla.
linksquares_api.png

LinkSquares

Create a New Data Flow

  1. To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Then, select the desired flow type from the list, and click the Create button.

  2. Select the LinkSquares connector tile from the list of available connectors. Then, select the credential that will be used to connect to the LinkSquares instance, and click Next; or, create a new LinkSquares credential for use in this flow.

  3. In Nexla, LinkSquares data sources can be created using pre-built endpoint templates, which expedite source setup for common LinkSquares API endpoints. Each template is designed specifically for the corresponding LinkSquares endpoint, making source configuration easy and efficient.
    • To configure this source using a template, follow the instructions in Configure Using a Template.

    LinkSquares sources can also be configured manually, allowing you to ingest data from LinkSquares endpoints not included in the pre-built templates or apply further customizations to exactly suit your needs.
    • To configure this source manually, follow the instructions in Configure Manually.

Configure Using a Template

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common LinkSquares endpoints. Each template is designed specifically for the corresponding LinkSquares endpoint, making data source setup easy and efficient.

Endpoint Settings

  • Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below. Click on an endpoint to see more information about it and how to configure your data source for this endpoint.

Retrieve Finalize Users

This endpoint retrieves a paginated list of all users in your LinkSquares Finalize workspace, including their names, email addresses, and role information. Use this endpoint when you need to audit user access, synchronize user directories, or identify available assignees for agreement workflows.

  • No additional parameters are required for this endpoint. Nexla will automatically paginate through all available users, fetching 100 records per page.
  • The response data is extracted from the users array in each paginated response.

For complete information about the Finalize API and the data returned by this endpoint, refer to the LinkSquares Finalize API Technical Overview.

Retrieve Activity Logs

This endpoint retrieves activity log entries and comments for a specific Finalize agreement. Use this endpoint when you need to audit agreement history, track negotiation activity, or export comments for reporting purposes.

  • Enter the unique identifier of the agreement whose activity logs you want to retrieve in the Agreement ID field. Agreement IDs can be found in the LinkSquares Finalize interface or by first using the List Agreements (Finalize) or List Agreements (Finalize v2) endpoint to retrieve available agreements and their corresponding IDs.

  • This endpoint returns all activity log entries for the specified agreement in a single response (no pagination). Each entry includes the action type, user, timestamp, and any associated comments.

For complete information about the Finalize API, refer to the LinkSquares Finalize API Technical Overview.

Retrieve Agreement Attachments

This endpoint retrieves all attachments associated with a specific agreement in LinkSquares Analyze. Use this endpoint when you need to inventory supporting documents, exhibits, or supplementary files linked to a contract.

  • Enter the unique identifier of the agreement whose attachments you want to retrieve in the Agreement ID field. Agreement IDs can be found in the LinkSquares Analyze interface or by first using the Retrieve All Agreements endpoint to obtain a list of agreements and their IDs.

  • The response data is extracted from the attachments array in the response. Each attachment record includes the file name, type, size, and a reference URL.

For complete information about the Analyze API and attachment data, refer to the LinkSquares Analyze API Sample Use Cases.

Get Current User

This endpoint retrieves profile information about the user associated with the API key used for authentication. Use this endpoint to verify credential configuration, retrieve the authenticated user's ID, or confirm which user account is associated with the current API key.

  • No additional parameters are required. The response returns the full user profile for the authenticated user, including name, email address, and role details.

For complete information about the Analyze API, refer to the LinkSquares Analyze API Sample Use Cases.

Retrieve Agreement by ID

This endpoint retrieves detailed information about a single agreement in LinkSquares Analyze by its unique ID. Use this endpoint when you need the full metadata, extracted terms, tags, and status for a specific contract.

  • Enter the unique identifier of the agreement you want to retrieve in the Agreement ID field. You can obtain agreement IDs from the LinkSquares Analyze interface or by using the Retrieve All Agreements endpoint to list available agreements.

  • The full agreement object is returned, including all extracted Smart Values (terms), tags, types, and document metadata.

For complete information about the Analyze API and the agreement data model, refer to the LinkSquares Analyze API Sample Use Cases.

Retrieve All Agreements

This endpoint retrieves a list of all agreements in LinkSquares Analyze with support for optional filtering, sorting, and cursor-based pagination. Use this endpoint to export your full agreement catalog, synchronize agreement metadata with external systems, or build reporting pipelines over your contract portfolio.

  • No additional parameters are required to retrieve all agreements. Nexla will automatically paginate through all available agreements using cursor-based pagination, following the next_cursor value returned in each response.
  • Agreement data is extracted from the data array in each response page. Each record includes agreement metadata, extracted terms, tags, and document information.

The Analyze API supports filtering agreements by date, type, tags, and other attributes through query parameters. For advanced filtering options, use the Configure Manually option to add custom query parameters to the API URL. Additional details are available in the LinkSquares Analyze API Sample Use Cases.

Retrieve Agreement Hierarchy

This endpoint retrieves the parent-child relationship hierarchy for a specific agreement in LinkSquares Analyze. Use this endpoint when you need to understand the structural relationships between agreements, such as master service agreements and their associated statements of work or amendments.

  • Enter the unique identifier of the agreement whose hierarchy you want to retrieve in the Agreement ID field. Agreement IDs can be obtained from the LinkSquares Analyze interface or by using the Retrieve All Agreements endpoint.

  • The response returns the full hierarchy object, showing parent and child agreement relationships associated with the specified agreement.

For complete information about the Analyze API and agreement hierarchies, refer to the LinkSquares Analyze API Sample Use Cases.

Get Upload Status

This endpoint retrieves the processing status of an agreement file upload in LinkSquares Analyze. Use this endpoint after initiating an agreement upload to confirm that the document has been successfully received and processed by the platform.

  • Enter the unique upload identifier in the Upload ID field. This ID is returned by the LinkSquares API when an agreement file upload is initiated (for example, after creating agreement metadata via the Create Agreement Metadata destination endpoint).

  • The response includes the current processing status of the upload, such as whether the document is still being analyzed or has been fully processed and indexed.

For complete information about the Analyze API upload workflow, refer to the LinkSquares Analyze API Sample Use Cases.

Retrieve Agreement Terms

This endpoint retrieves the terms (Smart Values) associated with a specific agreement in LinkSquares Analyze, with support for cursor-based pagination. Use this endpoint to extract structured contract data—such as effective dates, expiration dates, payment terms, governing law, and other AI-extracted fields—for reporting, compliance, or downstream processing.

  • Enter the unique identifier of the agreement whose terms you want to retrieve in the Agreement ID field. Agreement IDs can be obtained from the LinkSquares Analyze interface or by using the Retrieve All Agreements endpoint.

  • Nexla will automatically paginate through all terms using cursor-based pagination, following the next_cursor value in each response. Term data is extracted from the terms array in each page.

Terms in LinkSquares Analyze represent the structured, AI-extracted data fields (Smart Values) from your agreements. The specific terms available depend on your LinkSquares configuration and the contract types in your portfolio. For additional information, refer to the LinkSquares Analyze API Sample Use Cases.

Retrieve All Tags

This endpoint retrieves a list of all tags available in your LinkSquares Analyze account. Use this endpoint to obtain the complete tag catalog for your organization, which can be used for filtering, categorization, or synchronization with external systems.

  • No additional parameters are required. All tags are returned in a single response (no pagination), extracted from the tags array.
  • Each tag record includes the tag name, ID, and any associated metadata used for agreement classification in LinkSquares Analyze.

For complete information about tags and how they are used in LinkSquares Analyze, refer to the LinkSquares Analyze API Sample Use Cases.

List Finalize Templates

This endpoint retrieves a paginated list of agreement templates available in LinkSquares Finalize, with optional filtering by template name, kind, and creation date. Use this endpoint to discover available templates for agreement creation, audit your template library, or synchronize template metadata with external systems.

  • No additional parameters are required to retrieve all templates. Nexla will automatically paginate through available templates, fetching 100 records per page. Template data is extracted from the templates array in each response page.
  • Each template record includes the template name, ID, kind (type of template), and creation date, which can be used to identify the correct template when creating new agreements via the Finalize API.

For complete information about Finalize templates and how they are used to create agreements, refer to the LinkSquares Finalize API Technical Overview.

List Agreements (Finalize)

This endpoint retrieves a paginated list of agreements in LinkSquares Finalize, with optional filtering by name, status, template, or date. Use this endpoint to export your Finalize agreement catalog, monitor active agreements, or build reporting pipelines over your pre-signature contract workflow.

  • No additional parameters are required. Nexla will automatically paginate through all available Finalize agreements, fetching 25 records per page. Agreement data is extracted from the agreements array in each response page.
  • Each agreement record includes the agreement name, status, associated template, creation date, and other workflow metadata specific to the Finalize environment.

For complete information about the Finalize API and agreement data, refer to the LinkSquares Finalize API Technical Overview.

Get Agreement (Finalize)

This endpoint retrieves detailed information about a single agreement in LinkSquares Finalize by its unique ID, with support for optional included fields. Use this endpoint when you need the complete record for a specific Finalize agreement, including its status, current version, associated questions, and workflow details.

  • Enter the unique identifier of the Finalize agreement you want to retrieve in the Agreement ID field. Agreement IDs can be obtained from the LinkSquares Finalize interface or by using the List Agreements (Finalize) or List Agreements (Finalize v2) endpoint.

  • The full agreement object is returned, including its status, version history, template reference, and any associated metadata.

For complete information about the Finalize API and the agreement data model, refer to the LinkSquares Finalize API Technical Overview.

Get Agreement Statuses

This endpoint retrieves available status information for agreements in LinkSquares Finalize by status ID. Use this endpoint to look up status definitions, determine valid status transitions, or synchronize status metadata with external workflow systems.

  • Enter the unique identifier of the status you want to retrieve in the Status ID field. Status IDs correspond to the agreement lifecycle stages defined in your LinkSquares Finalize configuration (for example, Draft, In Review, Executed).

  • The response returns the status definition object, including the status name, description, and any associated workflow rules.

For complete information about agreement statuses in the Finalize API, refer to the LinkSquares Finalize API Technical Overview.

List Agreement Versions

This endpoint retrieves all versions of a specific agreement in LinkSquares Finalize v2, with support for pagination. Use this endpoint to track the revision history of a contract, compare versions, or audit changes made during negotiation.

  • Enter the unique identifier of the Finalize agreement whose version history you want to retrieve in the Agreement ID field. Agreement IDs can be obtained from the LinkSquares Finalize interface or by using the List Agreements (Finalize v2) endpoint.

  • Nexla will automatically paginate through all available versions, fetching 25 records per page. Version data is extracted from the agreement_versions array in each response page. Each version record includes the version number, status, upload date, and file reference.

For complete information about agreement versions in the Finalize v2 API, refer to the LinkSquares Finalize API Technical Overview.

Get Agreement Version

This endpoint retrieves detailed information about a specific version of a Finalize agreement. Use this endpoint when you need the metadata, status, or file reference for a particular revision of a contract.

  • Configure the following required fields:

    • Agreement ID: Enter the unique identifier of the Finalize agreement. Agreement IDs can be obtained from the LinkSquares Finalize interface or by using the List Agreements (Finalize v2) endpoint.
    • Version ID: Enter the unique identifier of the specific version you want to retrieve. Version IDs can be obtained using the List Agreement Versions endpoint.
  • The response returns the full version object, including the version number, file reference, status, and any associated metadata.

For complete information about agreement versions in the Finalize v2 API, refer to the LinkSquares Finalize API Technical Overview.

List Agreements (Finalize v2)

This endpoint retrieves a paginated list of agreements in LinkSquares Finalize using the v2 API, with optional pagination and filtering parameters. Use this endpoint when you need access to the most current Finalize agreement data structures, including additional fields and capabilities introduced in the v2 API.

  • No additional parameters are required. Nexla will automatically paginate through all available Finalize v2 agreements, fetching 100 records per page. Agreement data is extracted from the agreements array in each response page.
  • Each agreement record includes the agreement name, status, current version reference, template reference, creation date, and other v2-specific metadata.

For complete information about the Finalize v2 API and agreement data, refer to the LinkSquares Finalize API Technical Overview.

Endpoint Testing

Once the selected endpoint template has been configured, Nexla can retrieve a sample of the data that will be fetched according to the current settings. This allows users to verify that the source is configured correctly before saving.

  • To test the current endpoint configuration, click the Test button to the right of the endpoint selection menu. Sample data will be fetched & displayed in the Endpoint Test Result panel on the right.

  • If the sample data is not as expected, review the selected endpoint and associated settings, and make any necessary adjustments. Then, click the Test button again, and check the sample data to ensure that the correct information is displayed.

Configure Manually

LinkSquares data sources can be manually configured to ingest data from any valid LinkSquares API endpoint. Manual configuration provides maximum flexibility for accessing endpoints not covered by pre-built templates or when you need custom API configurations, such as adding query parameters for filtering agreements by date range, status, or tag.

With manual configuration, you can also create more complex LinkSquares sources, such as sources that use chained API calls to fetch data from multiple endpoints or sources that require additional custom request parameters.

API Method

  1. To manually configure this source, select the Advanced tab at the top of the configuration screen.

  2. Select the API method that will be used for calls to the LinkSquares API from the Method pulldown menu. LinkSquares API source endpoints use:

    • GET: For retrieving data—agreements, terms, tags, users, versions, and other resources

API Endpoint URL

  1. Enter the URL of the LinkSquares API endpoint from which this source will fetch data in the Set API URL field. This should be the complete URL including the protocol (https://) and any required path parameters.

    The base URL for the LinkSquares production API is https://api.linksquares.com. Append the appropriate path for the endpoint you want to call. For example:

    • Retrieve all Analyze agreements: https://api.linksquares.com/analyze/v1/agreements
    • Retrieve agreement terms: https://api.linksquares.com/analyze/v1/agreements/{'{agreement_id}'}/terms
    • List Finalize agreements: https://api.linksquares.com/finalize/v2/agreements

The LinkSquares API enforces a rate limit of 15 requests per second with a burst allowance of 30 requests. Nexla manages request pacing automatically, but keep this limit in mind when designing high-volume data ingestion pipelines. Additional details are available in the LinkSquares API Overview.

Date/Time Macros (API URL)

Optional

Optionally, the API URL can be customized using macros—all macros added to the API URL will be converted into values when Nexla executes the API call. Macros are dynamic placeholders that allow you to create flexible API endpoints that can adapt to different time periods or data requirements. This is particularly useful for LinkSquares endpoints that support date-based filtering query parameters.

Macros are useful when building LinkSquares sources that filter agreements by creation or modification date, enabling incremental data ingestion that fetches only new or recently updated contracts.

  1. To add a macro, type { at the appropriate position in the API URL (within the Set API URL field), and select the desired macro from the dropdown list.

    • {now} – The current datetime
    • {now-1} – The datetime one time unit before the current datetime
    • {now+1} – The datetime one time unit after the current datetime
    • custom – Datetime macros can reference any number of time units before or after the current datetime—for example, enter (now-7) to indicate the datetime seven time units before the current datetime
  2. Select the format that will be applied to datetime macros from the Date Format for Date/Time Macro pulldown menu. This format will be applied to the base datetime value of the macro—i.e., the value of {now} in {now-1}.

  3. Select the datetime unit that will be used to perform mathematical operations in the included macro(s) from the Time Unit for Operations pulldown menu—for example, for the macro {now-1}, when Day is selected, {now-1} will be converted to the datetime one day before the current datetime.

Lookup-Based Macros (API URL)

Optional

Column values from existing lookups can also be included as macros in the API URL. Lookup-based macros allow you to reference data from previously configured data sources or lookups, enabling dynamic API endpoints that adapt based on existing data. For LinkSquares, this is useful when building sources that iterate over a list of agreement IDs retrieved from another Nexla source.

Lookup-based macros are useful when you need to create API endpoints that reference specific agreement IDs, version IDs, or other identifiers obtained from other data sources in your Nexla environment.

  1. To include a lookup column value macro, select the relevant lookup from the Add Lookups to Supported Macros pulldown menu.

  2. Type { at the appropriate position in the API URL, and select the lookup column-based macro from the dropdown list. Lookup-based macros are automatically populated into the macro list when a lookup is selected in the Add Lookups to Supported Macros pulldown menu.

Path to Data

Optional

If only a subset of the data returned by a LinkSquares API endpoint is needed, you can designate the part(s) of the response that should be included in the Nexset(s) produced from this source by specifying the path to the relevant data within the response.

For example, when requesting a list of agreements, the LinkSquares API returns an object containing an agreements or data array along with pagination metadata. By specifying the path to the agreements array, Nexla will treat each element of the array as an individual record.

Path to Data is essential when LinkSquares API responses have nested structures. Common JSON paths for LinkSquares responses include $.data[*] for paginated Analyze agreements, $.agreements[*] for Finalize agreement lists, and $.terms[*] for agreement terms.

  • To specify which data should be treated as relevant in responses from this source, enter the path to the relevant data in the Set Path to Data in Response field.

    • For responses in JSON format, enter the JSON path that points to the object or array that should be treated as relevant data. JSON paths use dot notation (e.g., $.agreements[*] to access the agreements array in the response).
    Path to Data Example:

    If the API response includes a top-level array named agreements that contains the relevant contract data, the path to the response data would be entered as $.agreements[*].

Autogenerate Path Suggestions

Nexla can also autogenerate data path suggestions based on the response from the API endpoint. These suggested paths can be used as-is or modified to exactly suit your needs.

  • To use this feature, click the Test button next to the Set API URL field to fetch a sample response from the API endpoint. Suggested data paths generated based on the content & format of the response will be displayed in the Suggestions box below the Set Path to Data in Response field.

  • Click on a suggestion to automatically populate the Set Path to Data in Response field with the corresponding path. The populated path can be modified directly within the field if further customization is needed.

    PathSuggestions.png

Metadata

If metadata is included in the response but is located outside of the defined path to relevant data, you can configure Nexla to include this data as common metadata in each record. For LinkSquares API responses, pagination metadata such as total counts and cursor tokens is typically returned at the top level of the response alongside the data array.

Metadata paths are useful for preserving LinkSquares API response context such as pagination information, request timestamps, or summary statistics that apply to all records in the response.

  • To specify the location of metadata that should be included with each record, enter the path to the relevant metadata in the Path to Metadata in Response field.

    • For responses in JSON format, enter the JSON path to the object or array that contains the metadata.

Request Headers

Optional
  • If Nexla should include any additional request headers in API calls to this source, enter the headers & corresponding values as comma-separated pairs in the Request Headers field (e.g., header1:value1,header2:value2).

    You do not need to include the x-api-key authentication header. This header is automatically handled by Nexla based on your LinkSquares credential configuration.

Endpoint Testing

After configuring all settings for the selected endpoint, Nexla can retrieve a sample of the data that will be fetched according to the current configuration. This allows users to verify that the source is configured correctly before saving.

  • To test the current endpoint configuration, click the Test button to the right of the endpoint selection menu. Sample data will be fetched & displayed in the Endpoint Test Result panel on the right.

  • If the sample data is not as expected, review the selected endpoint and associated settings, and make any necessary adjustments. Then, click the Test button again, and check the sample data to ensure that the correct information is displayed.

Save & Activate the Source

  1. Once all of the relevant steps in the above sections have been completed, click the Create button in the upper right corner of the screen to save and create the new LinkSquares data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.