Acculynx

Learn how to use Acculynx with Composio

Overview

SLUG: ACCULYNX

Description

Using the AccuLynx API, data can be seamlessly exchanged between AccuLynx and other applications for greater efficiency and productivity.

Authentication Details

generic_api_key
stringRequired

Connecting to Acculynx

Create an auth config

Use the dashboard to create an auth config for the Acculynx toolkit. This allows you to connect multiple Acculynx accounts to Composio for agents to use.

1

Select App

Navigate to the Acculynx toolkit page and click “Setup Integration”.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Integration”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using API Key

1from composio import Composio
2from composio.types import auth_scheme
3
4# Replace these with your actual values
5acculynx_auth_config_id = "ac_YOUR_ACCULYNX_CONFIG_ID" # Auth config ID created above
6user_id = "0000-0000-0000" # UUID from database/app
7
8composio = Composio()
9
10def authenticate_toolkit(user_id: str, auth_config_id: str):
11 # Replace this with a method to retrieve an API key from the user.
12 # Or supply your own.
13 user_api_key = input("[!] Enter API key")
14
15 connection_request = composio.connected_accounts.initiate(
16 user_id=user_id,
17 auth_config_id=auth_config_id,
18 config={"auth_scheme": "API_KEY", "val": user_api_key}
19 )
20
21 # API Key authentication is immediate - no redirect needed
22 print(f"Successfully connected Acculynx for user {user_id}")
23 print(f"Connection status: {connection_request.status}")
24
25 return connection_request.id
26
27
28connection_id = authenticate_toolkit(user_id, acculynx_auth_config_id)
29
30# You can verify the connection using:
31connected_account = composio.connected_accounts.get(connection_id)
32print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Acculynx toolkit’s playground

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["ACCULYNX"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: Add job appointment

Description

This endpoint allows users to schedule the initial appointment for a specific job in the acculynx system. it is used to set up the first meeting or site visit for a construction or roofing project. the endpoint requires the job id, start date and time, and end date and time for the appointment. this is crucial for initiating the project workflow and ensuring that all parties involved are aware of the scheduled time for the first interaction. the appointment details are set in the context of the company's timezone unless otherwise specified. use this endpoint when a new job has been created and the first appointment needs to be scheduled with the client or at the job site.

Action Parameters

endDate
stringRequired
jobId
stringRequired
startDate
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create a contact

Description

Creates a new contact in the acculynx system with detailed information for use in roofing and construction project management. this endpoint allows for the addition of comprehensive contact details including personal information, company affiliation, communication preferences, and address information. it's particularly useful for adding new customers, leads, vendors, or any other type of contact relevant to construction projects. the endpoint provides flexibility in the amount of information that can be added, with only the contact type being required. use this when you need to add a new contact to your acculynx database or update your system with new lead information. note that while many fields are optional, providing as much information as possible will enhance the usefulness of the contact record for future project management and communication purposes.

Action Parameters

billingAddressSameAsMailingAddress
boolean
billingAddress__city
string
billingAddress__country__id
integer
billingAddress__state__id
integer
billingAddress__street1
string
billingAddress__street2
string
billingAddress__zipCode
string
companyJobTitle
string
companyName
string
contactTypeIds
arrayRequired
crossReference
string
emailAddresses
array
firstName
string
lastName
string
mailingAddress__city
string
mailingAddress__country__id
integer
mailingAddress__state__id
integer
mailingAddress__street1
string
mailingAddress__street2
string
mailingAddress__zipCode
string
note
string
phoneNumbers
array

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create a job

Description

Creates a new job in the acculynx system with the provided details. this endpoint allows you to initialize a job with essential information such as the associated contact, location, job category, work type, priority, and trade types. it's particularly useful for setting up new projects or tasks within the acculynx platform for the roofing and construction industries. the endpoint requires at minimum a contact id and location address, with several optional fields to further customize the job entry. use this when you need to programmatically create new jobs in acculynx, such as when integrating with other systems or automating job creation processes.

Action Parameters

contact__id
string
jobCategory__id
integer
leadSource__id
string
locationAddress__city
string
locationAddress__country
string
locationAddress__state
string
locationAddress__street1
string
locationAddress__street2
string
locationAddress__zipCode
string
notes
string
priority
string
tradeTypes
array
workType__id
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create a lead

Description

This endpoint creates a new lead in the acculynx system, specifically for residential roofing projects. it should be used when a new potential customer expresses interest in roofing services or when importing lead data from external sources. the endpoint captures essential contact information to initiate the lead management process. while it creates the lead, it does not assign priorities or sales representatives; these actions would need to be performed separately. the endpoint is designed for simplicity and quick lead entry, focusing on the most crucial identifying information.

Action Parameters

emailAddress
stringRequired
firstName
stringRequired
lastName
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Job appointment summary

Description

Retrieves a list of appointments from the calendar associated with a specific job in acculynx. this endpoint is used to fetch scheduled events, such as site visits, inspections, or project milestones, for a particular roofing or construction job. it provides valuable information for project management and scheduling purposes. the endpoint should be used when you need to view or manage the timeline of events for a specific job. it will not provide general calendar information or appointments unrelated to the specified job id. the response likely includes details such as appointment dates, times, descriptions, and associated team members, though the exact structure is not specified in the given schema.

Action Parameters

endDate
string
jobId
stringRequired
pageStartIndex
integer
startDate
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List of calendars for the location

Description

Retrieves a list of calendars associated with the authenticated user or organization in acculynx. this endpoint provides access to the calendar data, which is crucial for scheduling and organizing tasks in the roofing and construction project management context. it should be used when you need to obtain an overview of all available calendars or to gather calendar ids for use in other api operations. the endpoint returns basic information about each calendar, likely including identifiers, names, and possibly associated metadata. it does not modify any calendar data and is intended for read-only operations. keep in mind that the response may be paginated for large datasets, and additional parameters might be available for filtering or sorting the results, although they are not specified in the current schema.

Action Parameters

pageSize
integer
pageStartIndex
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update company representative

Description

This endpoint allows you to add a company representative to a specific job within the acculynx system. it is used when you need to associate a representative with a particular project or task. the endpoint requires the job's unique identifier and the representative's id to establish the connection. this operation is useful for assigning personnel to projects, tracking responsibilities, and maintaining accurate job records. it's important to note that this endpoint only adds the association and doesn't create new representative or job entries.

Action Parameters

id
string
jobId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired