AccuLynx Calendar API
Manage company calendars and their appointments.
Manage company calendars and their appointments.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/acculynx:acculynx-calendar-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
version: 2.2614.0
title: AccuLynx API V2 Calendar API
description: 'If you are experiencing issues integrating with this API, please work with your web developer to review your programming before reaching out to us with an issue as we do not provide web development consulting services.
API keys are for our customers only. If you are a business that is looking to integrate with AccuLynx, either on behalf of our customers or on your own, please click here to request access. Failure to do so can result in suspension of the AccuLynx account.
The AccuLynx API provides customers programmatic access to their data within AccuLynx.
The base url for these endpoints: is https://api.acculynx.com/api/v2
Using SwaggerHub, you have the ability to test against a virtual server or you can test against the API itself. The virtual server is a mock server that allows you to test your calls without affecting your production data. Testing against the virtual server will always respond with a fixed response regardless of your inputs. It is provided to give you a production model of the information returned.
Testing against the API requires an API Key and will affect your real production data. Get your API key from your AccuLynx API page. From the Servers list box below, select the api.acculynx.com site. When you click on green Authorize button next to the Servers list box, you will be prompted for a Bearer token. Enter your API Key and click Authorize again.
To make it easier to connect AccuLynx to other applications you use, we have made our Zapier integration publicly available. Instead of contacting us to help you enable the use of Zapier to integrate additional applications with AccuLynx, you can now get started by going to the Zapier website (https://zapier.com) and searching for the AccuLynx application. Zaps are automated tasks that you run over and over again between AccuLynx and other online applications. We have an action that allows you to pair with a trigger to create leads in AccuLynx and a trigger as well as other actions and triggers coming in the near future! To get started search for AccuLynx on the Zapier website!
If you don’t already have a Zapier account, create one or log into your https://zapier.com/account.
AccuLynx Action ZAP basic documentation: https://support.acculynx.com/hc/en-us/articles/360034839751-Creating-a-Zap-with-Zapier'
termsOfService: https://my.acculynx.com/signin/TermsView
contact:
email: api@acculynx.com
url: https://api.acculynx.com/
license:
name: Proprietary
url: https://my.acculynx.com/signin/TermsView
servers:
- description: AccuLynx Production Base Url
url: https://api.acculynx.com/api/v2
security:
- bearerAuth: []
tags:
- name: Calendar
description: Manage company calendars and their appointments.
paths:
/calendars:
get:
summary: Get Calendars
description: Use this endpoint to get a list of calendars for the location. This endpoint will return a paginated response starting from the given record index.
operationId: getCalendars
parameters:
- $ref: '#/components/parameters/pageSizeQuery'
- $ref: '#/components/parameters/recordStartIndexQuery'
responses:
'200':
description: 'OK
'
content:
application/json:
schema:
$ref: '#/components/schemas/calendarCollection'
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'416':
$ref: '#/components/responses/416RangeNotSatisfiable'
tags:
- Calendar
/calendars/{calendarId}/appointments:
get:
summary: Get Calendar Appointments
description: Use this endpoint to get a list of appointments for the specified calendar. The request range should not exceed 90 days.
operationId: getAppointments
parameters:
- $ref: '#/components/parameters/calendarIdPath'
- $ref: '#/components/parameters/eventTypeQuery'
- $ref: '#/components/parameters/pageSizeQuery'
- $ref: '#/components/parameters/recordStartIndexQuery'
- $ref: '#/components/parameters/startDateQueryRequired'
- $ref: '#/components/parameters/endDateQueryRequired'
- $ref: '#/components/parameters/jobIdQueryNotRequired'
responses:
'200':
description: 'OK
'
content:
application/json:
schema:
$ref: '#/components/schemas/calendarSearchEventCollection'
'400':
description: 'The query parameters are invalid.
'
'404':
description: 'The given calendar was not found.
'
'416':
description: 'The value for the pageStartIndex query parameter is outside the range of the return values.
'
tags:
- Calendar
/calendars/{calendarId}/appointments/{appointmentId}:
get:
summary: Get Appointment Details
description: Use this endpoint to get the appointment details for a specific calendar event.
operationId: getAppointmentById
parameters:
- $ref: '#/components/parameters/calendarIdPath'
- $ref: '#/components/parameters/appointmentIdPath'
responses:
'200':
description: 'OK
'
content:
application/json:
schema:
$ref: '#/components/schemas/calendarEvent'
'401':
$ref: '#/components/responses/401Unauthorized'
'404':
$ref: '#/components/responses/404NotFound'
tags:
- Calendar
components:
schemas:
calendarLink:
type: object
properties:
id:
type: string
description: The unique ID of the Calendar.
format: uuid
example: fa3b4dce-d1a9-4fb7-84d6-192e139f15b2
name:
type: string
description: The name of the Calendar.
example: Location Calendar
calendarCollection:
allOf:
- $ref: '#/components/schemas/baseCollection'
- type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/calendarLink'
calendarSearchEvent:
type: object
properties:
id:
type: string
format: uuid
description: The unique GUID of the calendar event.
example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
eventType:
type: string
enum:
- All
- Personal
- InitialAppointment
- MaterialDelivery
- CrewLabor
title:
type: string
description: The name of the calendar event.
example: Initial Appointment
attendees:
type: array
items:
$ref: '#/components/schemas/companyUserLink'
job:
$ref: '#/components/schemas/jobLink'
allDay:
type: boolean
description: Whether the event is an all day event.
start:
type: string
format: date-time
example: '2023-12-07T16:03:47Z'
description: The start date/time of the event.
end:
type: string
format: date-time
example: '2024-01-07T16:03:47Z'
description: The end date/time of the event.
jobName:
type: string
description: The name of the job associated with the event, if any.\
example: 'RC-2120: John Smith'
location:
type: string
description: The address where the appointment is to take place.
example: 123 Pleasant Grove Road, \nACity, IL, 12345
sharedWithCustomerPortal:
type: boolean
description: Indicates if the event is shared with the customer portal.
example: true
_link:
type: string
description: The URI of the this calendar event.
example: https://api.acculynx.com/api/v2/calendars/58ca0eab-7882-46a6-8456-854beae8fb4a/appointments/3fa85f64-5717-4562-b3fc-2c963f66afa6
baseCollection:
type: object
properties:
count:
type: integer
description: The total number of items matching the current query.
pageSize:
type: integer
description: The requested or default page size.
pageStartIndex:
type: integer
description: The requested or default index of the first element to return.
jobLink:
type: object
properties:
id:
type: string
format: uuid
description: The job's unique ID.
example: e591bf22-9828-4144-bca8-42cbb8c6e2c0
_link:
type: string
description: The URI of this Job.
example: https://api.acculynx.com/api/v2/jobs/e591bf22-9828-4144-bca8-42cbb8c6e2c0
calendarSearchEventCollection:
allOf:
- $ref: '#/components/schemas/baseCollection'
- type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/calendarSearchEvent'
error:
type: object
properties:
type:
type: string
description: The URI of an explanation of the error
example: https://tools.ietf.org/html/rfc7235#section-3.1
title:
type: string
description: Error description
example: This error happened.
status:
type: number
description: HTTP status code
example: 400
detail:
type: string
description: Any details available for this error
example: More info about this error.
traceId:
type: string
description: An identifier that may be useful to AccuLynx support
example: '|40f2a8f1-4db865dd47a69226.'
required:
- type
- title
- status
calendarEvent:
type: object
properties:
id:
type: string
format: uuid
description: The unique GUID of the calendar event.
example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
title:
type: string
description: The name of the calendar event.
example: Initial Appointment
start:
type: string
format: date-time
example: '2023-12-07T16:03:47Z'
description: The start date/time of the event.
end:
type: string
format: date-time
example: '2024-01-07T16:03:47Z'
description: The end date/time of the event.
allDay:
type: boolean
description: Whether the event is an all day event.
jobId:
type: string
description: The unique GUID of the job associated with the event, if any.
example: b4c09ad6-1d53-4a34-8a45-d989660e12d8
jobName:
type: string
description: The name of the job associated with the event, if any.\
example: 'RC-2120: John Smith'
location:
type: string
description: The address where the appointment is to take place.
example: 123 Pleasant Grove Road, \nACity, IL, 12345
notes:
type: string
description: other information related to the appointment.
example: 'Customer contact information:\nCompany Name- Contact Name\nJob: N/A\n1234 Pleasant Grove Road, \nACity, IL, 12345\n(555) 123-45671 - mobile - Primary\nmyemail@myprovider.net - Primary\n'
eventType:
type: string
enum:
- Personal
- Initial Appointment
- Material Order
- Labor Order
_link:
type: string
description: The URI of the this calendar event.
example: https://api.acculynx.com/api/v2/calendars/58ca0eab-7882-46a6-8456-854beae8fb4a/appointments/3fa85f64-5717-4562-b3fc-2c963f66afa6
companyUserLink:
type: object
properties:
id:
type: string
description: The unique GUID of the AccuLynx User.
format: uuid
example: 228db892-3b49-4455-b839-ffd8576d8731
_link:
type: string
description: The unique URI of the AccuLynx User.
example: https://api.acculynx.com/api/v2/users/228db892-3b49-4455-b839-ffd8576d8731
description: ''
parameters:
endDateQueryRequired:
name: endDate
in: query
description: End date for the query, in YYYY-MM-DD format.
required: true
schema:
type: string
format: date
appointmentIdPath:
name: appointmentId
in: path
description: The appointment's unique identifier
required: true
schema:
type: string
format: uuid
calendarIdPath:
name: calendarId
in: path
description: The calendar's unique identifier
required: true
schema:
type: string
format: uuid
startDateQueryRequired:
name: startDate
in: query
description: Start date for the query, in YYYY-MM-DD format.
required: true
schema:
type: string
format: date
jobIdQueryNotRequired:
name: jobId
in: query
description: The job's unique identifier
required: false
schema:
type: string
format: uuid
eventTypeQuery:
name: eventType
in: query
description: "Enter one or more event types, separated by commas. \nOnly events with the specified types will be included in the response. \nIf no value is specified, the default value will be \"All\". \nPossible values: All, Personal, InitialAppointment, MaterialDelivery, CrewLabor\n"
required: false
schema:
type: string
example: All,Personal,InitialAppointment
default: All
pageSizeQuery:
name: pageSize
in: query
description: How many items to be returned at a time.
required: false
schema:
type: integer
recordStartIndexQuery:
name: recordStartIndex
in: query
description: The zero-based index of the first record to return.
required: false
schema:
type: integer
default: 0
responses:
416RangeNotSatisfiable:
description: Range Not Satisfiable.
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
RangeNotSatisfiable:
summary: Range Not Satisfiable
value:
message: The range of data requested from the resource is invalid.
PaginationRangeNotSatisfiable:
summary: Pagination Range Not Satisfiable
value:
message: The requested pagination range falls outside the available data. Check the `count` field from a prior response and adjust your pagination parameters.
404NotFound:
description: The requested resource was not found. Verify the ID in the request path is correct and that the resource exists.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
400BadRequest:
description: The request was malformed or contained invalid field values. Check the error response body for details.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
401Unauthorized:
description: The API key provided is missing, invalid, or has been deactivated. Verify your API key and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
securitySchemes:
bearerAuth:
type: http
scheme: bearer
x-provenance:
method: searched
source: https://apidocs.acculynx.com/reference
harvested: '2026-10-28'
tool: harvest-readme-openapi.py
note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
assembled_from:
- https://apidocs.acculynx.com/reference/createjob.md
- https://apidocs.acculynx.com/reference/getaccountingintegrationssyncchangesforjob.md
- https://apidocs.acculynx.com/reference/getaccounttypebyid.md
- https://apidocs.acculynx.com/reference/getacculynxcountries.md
- https://apidocs.acculynx.com/reference/getacculynxcountry.md
- https://apidocs.acculynx.com/reference/getacculynxstate.md
- https://apidocs.acculynx.com/reference/getacculynxstates.md
- https://apidocs.acculynx.com/reference/getacculynxunitsofmeasure-1.md
- https://apidocs.acculynx.com/reference/getactiveaccounttypes.md
- https://apidocs.acculynx.com/reference/getactiveleadsources.md
- https://apidocs.acculynx.com/reference/getadjusterforjob.md
- https://apidocs.acculynx.com/reference/getappointmentbyid.md
- https://apidocs.acculynx.com/reference/getappointments.md
- https://apidocs.acculynx.com/reference/getarownerforjob.md
- https://apidocs.acculynx.com/reference/getcalendars.md
- https://apidocs.acculynx.com/reference/getcompanydocumentfolders.md
- https://apidocs.acculynx.com/reference/getcompanyrepresentativeforjob.md
- https://apidocs.acculynx.com/reference/getcompanysettings.md
- https://apidocs.acculynx.com/reference/getcompanysettingscustomfields.md
- https://apidocs.acculynx.com/reference/getcompanysettingsjobsettingsjobcategories.md
- https://apidocs.acculynx.com/reference/getcompanysettingsjobsettingstradetypes.md
- https://apidocs.acculynx.com/reference/getcompanysettingsjobsettingsworktypes.md
- https://apidocs.acculynx.com/reference/getcompanysettingslocationsettingscountries.md
- https://apidocs.acculynx.com/reference/getcompanysettingslocationsettingscountriescountryidstates.md
- https://apidocs.acculynx.com/reference/getcontact.md
- https://apidocs.acculynx.com/reference/getcontactcustomfieldbyid.md
- https://apidocs.acculynx.com/reference/getcontactcustomfields.md
- https://apidocs.acculynx.com/reference/getcontactemailaddressbyid.md
- https://apidocs.acculynx.com/reference/getcontactemailaddresses.md
- https://apidocs.acculynx.com/reference/getcontactjobs.md
- https://apidocs.acculynx.com/reference/getcontactphonenumber.md
- https://apidocs.acculynx.com/reference/getcontactphonenumberbyid.md
- https://apidocs.acculynx.com/reference/getcontacts.md
- https://apidocs.acculynx.com/reference/getcontacttypes.md
- https://apidocs.acculynx.com/reference/getcurrentjobmilestone.md
- https://apidocs.acculynx.com/reference/getestimatebyid.md
- https://apidocs.acculynx.com/reference/getestimates.md
- https://apidocs.acculynx.com/reference/getestimatesectionbyid.md
- https://apidocs.acculynx.com/reference/getestimatesectionitem.md
- https://apidocs.acculynx.com/reference/getestimatesectionitems.md
- https://apidocs.acculynx.com/reference/getestimatesections.md
- https://apidocs.acculynx.com/reference/getestimatesforjob.md
- https://apidocs.acculynx.com/reference/getfinancialsbyfinancialid.md
- https://apidocs.acculynx.com/reference/getfinancialsforjob.md
- https://apidocs.acculynx.com/reference/getfinancialssupplementitemcollection.md
- https://apidocs.acculynx.com/reference/getfinancialssupplementnotationcollection.md
- https://apidocs.acculynx.com/reference/getfinancialssupplementsforcompany.md
- https://apidocs.acculynx.com/reference/getinitialappointmentforjob.md
- https://apidocs.acculynx.com/reference/getinsurancecompanies.md
- https://apidocs.acculynx.com/reference/getinsuranceforjob.md
- https://apidocs.acculynx.com/reference/getinvoicebyid.md
- https://apidocs.acculynx.com/reference/getinvoicesforjob.md
- https://apidocs.acculynx.com/reference/getjob.md
- https://apidocs.acculynx.com/reference/getjobcontact.md
- https://apidocs.acculynx.com/reference/getjobcontacts.md
- https://apidocs.acculynx.com/reference/getjobcustomfieldbyid.md
- https://apidocs.acculynx.com/reference/getjobcustomfields.md
- https://apidocs.acculynx.com/reference/getjobexternalreferences.md
- https://apidocs.acculynx.com/reference/getjobhistory.md
- https://apidocs.acculynx.com/reference/getjobmilestonebyid.md
- https://apidocs.acculynx.com/reference/getjobs.md
- https://apidocs.acculynx.com/reference/getjobstatusbyid.md
- https://apidocs.acculynx.com/reference/getleadhistory.md
- https://apidocs.acculynx.com/reference/getleadsourcebyid.md
- https://apidocs.acculynx.com/reference/getleadsourcechildbyid.md
- https://apidocs.acculynx.com/reference/getmilestones.md
- https://apidocs.acculynx.com/reference/getmilestonesforjob.md
- https://apidocs.acculynx.com/reference/getpayments.md
- https://apidocs.acculynx.com/reference/getpaymentsoverviewforjob.md
- https://apidocs.acculynx.com/reference/getphotovideotags.md
- https://apidocs.acculynx.com/reference/getping.md
- https://apidocs.acculynx.com/reference/getreportbyinstanceid.md
- https://apidocs.acculynx.com/reference/getreportinstacerecipientbyid.md
- https://apidocs.acculynx.com/reference/getreportlatestinstance.md
- https://apidocs.acculynx.com/reference/getreportsbyinstanceinstancerunsbyscheduleid.md
- https://apidocs.acculynx.com/reference/getreportsrecipientsbyinstanceid.md
- https://apidocs.acculynx.com/reference/getrepresentativesforjob.md
- https://apidocs.acculynx.com/reference/getsalesownerforjob.md
- https://apidocs.acculynx.com/reference/getstatusesformilestone.md
- https://apidocs.acculynx.com/reference/getsupplementbyid.md
- https://apidocs.acculynx.com/reference/getuser.md
- https://apidocs.acculynx.com/reference/getusers.md
- https://apidocs.acculynx.com/reference/getworksheetamendmentbyid.md
- https://apidocs.acculynx.com/reference/getworksheetamendmentsbyid.md
- https://apidocs.acculynx.com/reference/getworksheetbyid.md
- https://apidocs.acculynx.com/reference/postaddjobdocument.md
- https://apidocs.acculynx.com/reference/postarownerforjob.md
- https://apidocs.acculynx.com/reference/postcompanyrepresentativeforjob.md
- https://apidocs.acculynx.com/reference/postcontactemailaddresses.md
- https://apidocs.acculynx.com/reference/postcontactlog.md
- https://apidocs.acculynx.com/reference/postcontactnotes.md
- https://apidocs.acculynx.com/reference/postcontactphonenumber.md
- https://apidocs.acculynx.com/reference/postcontacts.md
- https://apidocs.acculynx.com/reference/postcontactsearch.md
- https://apidocs.acculynx.com/reference/postcreatejobexternalreference.md
- https://apidocs.acculynx.com/reference/postcreatejobmessage.md
- https://apidocs.acculynx.com/reference/postcreatepaymentadditionalexpense.md
- https://apidocs.acculynx.com/reference/postcreatepaymentpaid.md
- https://apidocs.acculynx.com/reference/postcreatepaymentreceived.md
- https://apidocs.acculynx.com/reference/postjobmeasurementsupload.md
- https://apidocs.acculynx.com/reference/postjobmeasurementsuploadfiles.md
- https://apidocs.acculynx.com/reference/postreplyjobmessage.md
- https://apidocs.acculynx.com/reference/postsalesownerforjob.md
- https://apidocs.acculynx.com/reference/postuploadphotoorvideo.md
- https://apidocs.acculynx.com/reference/postworksheetsectionitem.md
- https://apidocs.acculynx.com/reference/putadjusterforjob.md
- https://apidocs.acculynx.com/reference/putcontactcustomfieldbyid.md
- https://apidocs.acculynx.com/reference/putcontactcustomfields.md
- https://apidocs.acculynx.com/reference/putinitialappointmentforjob.md
- https://apidocs.acculynx.com/reference/putinsurancecompanyforjob.md
- https://apidocs.acculynx.com/reference/putinsuranceinformationforjob.md
- https://apidocs.acculynx.com/reference/putjobcustomfieldbyid.md
- https://apidocs.acculynx.com/reference/putjobcustomfields.md
- https://apidocs.acculynx.com/reference/putjoblocationaddress.md
- https://apidocs.acculynx.com/reference/putpriorityforjob.md
- https://apidocs.acculynx.com/reference/searchjobs.md
- https://apidocs.acculynx.com/reference/updatejobcategory.md
- https://apidocs.acculynx.com/reference/updatejobleadsource.md
- https://apidocs.acculynx.com/reference/updatejobtradetypes.md
- https://apidocs.acculynx.com/reference/updatejobworktype.md
merge:
pages: 120
deduped: 1079
conflicts_kept_first: 0