Fresnel Software Async events API
The Async events API from Fresnel Software — 9 operation(s) for async events.
The Async events API from Fresnel Software — 9 operation(s) for async events.
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/vitruvi:vitruvi-async-events-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:
title: Vitruvi API Documentation Async events API
version: 1.0.0
description: Vitruvi API reference documentation.
servers:
- url: https://{workspace}.api.vitruvi.cc
variables:
workspace:
default: demo
description: The name of the workspace to connect to
tags:
- name: Async events
paths:
/api/v1/async_events/custom_action_categories/:
get:
operationId: list_async_events_custom_action_categories
description: Returns a list of all Custom action categories.
summary: List Custom Action Categories
parameters:
- name: filter_expression
required: false
in: query
description: A generic expression to filter the list with.
schema:
type: string
- name: limit
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- name: offset
required: false
in: query
description: The initial index from which to return the results.
schema:
type: integer
- name: ordering
required: false
in: query
description: Which field to use when ordering the results.
schema:
type: string
- name: search
required: false
in: query
description: A search term.
schema:
type: string
tags:
- Async events
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedCustomActionCategoryList'
description: ''
x-internal: false
x-vitruvi-sdk: false
/api/v1/async_events/custom_action_categories/{id}/:
get:
operationId: get_async_events_custom_action_categories
description: Retrieve custom action category record using the parameter criteria.
summary: Retrieve Custom Action Category
parameters:
- in: path
name: id
schema:
type: integer
description: A unique integer value identifying this custom action category.
required: true
tags:
- Async events
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/CustomActionCategory'
description: ''
x-internal: false
x-vitruvi-sdk: false
/api/v1/async_events/custom_actions/:
get:
operationId: list_async_events_custom_actions
description: Returns a list of all custom actions.
summary: List Custom Actions
parameters:
- name: filter_expression
required: false
in: query
description: A generic expression to filter the list with.
schema:
type: string
- name: limit
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- name: offset
required: false
in: query
description: The initial index from which to return the results.
schema:
type: integer
- name: ordering
required: false
in: query
description: Which field to use when ordering the results.
schema:
type: string
- name: search
required: false
in: query
description: A search term.
schema:
type: string
tags:
- Async events
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedCustomActionList'
description: ''
x-internal: false
x-vitruvi-sdk: false
/api/v1/async_events/custom_actions/{id}/:
get:
operationId: get_async_events_custom_actions
description: Retrieve custom action record using the parameter criteria.
summary: Retrieve Custom Action
parameters:
- in: path
name: id
schema:
type: integer
description: A unique integer value identifying this custom action.
required: true
tags:
- Async events
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/CustomAction'
description: ''
x-internal: false
x-vitruvi-sdk: false
/api/v1/async_events/custom_actions/{id}/execute/:
post:
operationId: api_v1_async_events_custom_actions_execute_create
summary: Execute (Custom Action)
parameters:
- in: path
name: id
schema:
type: integer
description: A unique integer value identifying this custom action.
required: true
tags:
- Async events
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CustomAction'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CustomAction'
multipart/form-data:
schema:
$ref: '#/components/schemas/CustomAction'
required: true
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/CustomAction'
description: ''
x-internal: false
x-vitruvi-sdk: false
/api/v1/async_events/event_hooks/:
get:
operationId: list_async_events_event_hooks
description: Returns a list of all event hooks.
summary: List Event Hooks
parameters:
- name: filter_expression
required: false
in: query
description: A generic expression to filter the list with.
schema:
type: string
- name: limit
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- name: offset
required: false
in: query
description: The initial index from which to return the results.
schema:
type: integer
- name: ordering
required: false
in: query
description: Which field to use when ordering the results.
schema:
type: string
- name: search
required: false
in: query
description: A search term.
schema:
type: string
tags:
- Async events
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEventHookList'
description: ''
x-internal: false
x-vitruvi-sdk: false
post:
operationId: create_async_events_event_hooks
description: Creates a new event hook record.
summary: Create Event Hook
tags:
- Async events
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/EventHook'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/EventHook'
multipart/form-data:
schema:
$ref: '#/components/schemas/EventHook'
required: true
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/EventHook'
description: ''
x-internal: false
x-vitruvi-sdk: false
/api/v1/async_events/event_hooks/{id}/:
get:
operationId: get_async_events_event_hooks
description: Retrieve event hook record using the parameter criteria.
summary: Retrieve Event Hook
parameters:
- in: path
name: id
schema:
type: integer
description: A unique integer value identifying this event hook.
required: true
tags:
- Async events
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EventHook'
description: ''
x-internal: false
x-vitruvi-sdk: false
put:
operationId: update_async_events_event_hooks
description: Update event hook record using the parameter criteria.
summary: Update Event Hook
parameters:
- in: path
name: id
schema:
type: integer
description: A unique integer value identifying this event hook.
required: true
tags:
- Async events
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/EventHook'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/EventHook'
multipart/form-data:
schema:
$ref: '#/components/schemas/EventHook'
required: true
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EventHook'
description: ''
x-internal: false
x-vitruvi-sdk: false
patch:
operationId: patch_async_events_event_hooks
description: Partial update event hook record using the parameter criteria.
summary: Partial Update Event Hook
parameters:
- in: path
name: id
schema:
type: integer
description: A unique integer value identifying this event hook.
required: true
tags:
- Async events
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedEventHook'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedEventHook'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedEventHook'
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EventHook'
description: ''
x-internal: false
x-vitruvi-sdk: false
delete:
operationId: delete_async_events_event_hooks
description: Delete event hook record using the parameter criteria.
summary: Delete Event Hook
parameters:
- in: path
name: id
schema:
type: integer
description: A unique integer value identifying this event hook.
required: true
tags:
- Async events
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'204':
description: No response body
x-internal: false
x-vitruvi-sdk: false
/api/v1/async_events/scripts/:
get:
operationId: list_async_events_scripts
description: Returns a list of all scripts.
summary: List Scripts
parameters:
- name: filter_expression
required: false
in: query
description: A generic expression to filter the list with.
schema:
type: string
- name: limit
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- name: offset
required: false
in: query
description: The initial index from which to return the results.
schema:
type: integer
- name: ordering
required: false
in: query
description: Which field to use when ordering the results.
schema:
type: string
- name: search
required: false
in: query
description: A search term.
schema:
type: string
tags:
- Async events
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedScriptList'
description: ''
x-internal: false
x-vitruvi-sdk: false
post:
operationId: create_async_events_scripts
description: Creates a new script record.
summary: Create Script
tags:
- Async events
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Script'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Script'
multipart/form-data:
schema:
$ref: '#/components/schemas/Script'
required: true
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Script'
description: ''
x-internal: false
x-vitruvi-sdk: false
/api/v1/async_events/scripts/{id}/:
get:
operationId: get_async_events_scripts
description: Retrieve script record using the parameter criteria.
summary: Retrieve Script
parameters:
- in: path
name: id
schema:
type: integer
description: A unique integer value identifying this script.
required: true
tags:
- Async events
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Script'
description: ''
x-internal: false
x-vitruvi-sdk: false
put:
operationId: update_async_events_scripts
description: Update script record using the parameter criteria.
summary: Update Script
parameters:
- in: path
name: id
schema:
type: integer
description: A unique integer value identifying this script.
required: true
tags:
- Async events
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Script'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Script'
multipart/form-data:
schema:
$ref: '#/components/schemas/Script'
required: true
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Script'
description: ''
x-internal: false
x-vitruvi-sdk: false
patch:
operationId: patch_async_events_scripts
description: Partial update script record using the parameter criteria.
summary: Partial Update Script
parameters:
- in: path
name: id
schema:
type: integer
description: A unique integer value identifying this script.
required: true
tags:
- Async events
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedScript'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedScript'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedScript'
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Script'
description: ''
x-internal: false
x-vitruvi-sdk: false
delete:
operationId: delete_async_events_scripts
description: Delete script record using the parameter criteria.
summary: Delete Script
parameters:
- in: path
name: id
schema:
type: integer
description: A unique integer value identifying this script.
required: true
tags:
- Async events
security:
- basicAuth: []
- jwtAuth: []
- tokenAuth: []
responses:
'204':
description: No response body
x-internal: false
x-vitruvi-sdk: false
components:
schemas:
Script:
type: object
properties:
id:
type: integer
readOnly: true
created:
type: string
format: date-time
readOnly: true
modified:
type: string
format: date-time
readOnly: true
name:
type: string
maxLength: 40
description:
type:
- string
- 'null'
maxLength: 65535
version:
type: string
maxLength: 10
code:
type: string
code_link:
type:
- string
- 'null'
description: 'Use action to pull in script. File path following vitruvi-extensions/ (ie: cust_general/bulk_delete.py)'
maxLength: 255
code_sha:
type:
- string
- 'null'
maxLength: 100
debug:
type: boolean
debug_file:
type:
- string
- 'null'
maxLength: 255
author:
type: string
maxLength: 40
required:
- author
- created
- id
- modified
- name
- version
PaginatedEventHookList:
type: object
properties:
count:
type: integer
example: 123
next:
type:
- string
- 'null'
format: uri
example: http://api.example.org/accounts/?offset=400&limit=100
previous:
type:
- string
- 'null'
format: uri
example: http://api.example.org/accounts/?offset=200&limit=100
results:
type: array
items:
$ref: '#/components/schemas/EventHook'
OnEventTypeEnum:
enum:
- ADD
- UPD
- DEL
- CUS
type: string
description: '* `ADD` - ADD
* `UPD` - UPD
* `DEL` - DEL
* `CUS` - CUS'
PatchedScript:
type: object
properties:
id:
type: integer
readOnly: true
created:
type: string
format: date-time
readOnly: true
modified:
type: string
format: date-time
readOnly: true
name:
type: string
maxLength: 40
description:
type:
- string
- 'null'
maxLength: 65535
version:
type: string
maxLength: 10
code:
type: string
code_link:
type:
- string
- 'null'
description: 'Use action to pull in script. File path following vitruvi-extensions/ (ie: cust_general/bulk_delete.py)'
maxLength: 255
code_sha:
type:
- string
- 'null'
maxLength: 100
debug:
type: boolean
debug_file:
type:
- string
- 'null'
maxLength: 255
author:
type: string
maxLength: 40
CustomActionCategory:
type: object
properties:
id:
type: integer
readOnly: true
has_actions:
type: boolean
readOnly: true
name:
type: string
maxLength: 40
order:
type: integer
maximum: 2147483647
minimum: -2147483648
description:
type:
- string
- 'null'
maxLength: 65535
is_enabled:
type: boolean
content_type:
type: integer
required:
- content_type
- has_actions
- id
- name
EventHook:
type: object
properties:
id:
type: integer
readOnly: true
created:
type: string
format: date-time
readOnly: true
modified:
type: string
format: date-time
readOnly: true
on_event_type:
$ref: '#/components/schemas/OnEventTypeEnum'
event_custom_type:
type:
- string
- 'null'
maxLength: 16
execution_order:
type: integer
maximum: 2147483647
minimum: -2147483648
config: {}
is_enabled:
type: boolean
content_type:
type: integer
script:
type: integer
required:
- content_type
- created
- execution_order
- id
- modified
- on_event_type
- script
PaginatedScriptList:
type: object
properties:
count:
type: integer
example: 123
next:
type:
- string
- 'null'
format: uri
example: http://api.example.org/accounts/?offset=400&limit=100
previous:
type:
- string
- 'null'
format: uri
example: http://api.example.org/accounts/?offset=200&limit=100
results:
type: array
items:
$ref: '#/components/schemas/Script'
CustomAction:
type: object
properties:
id:
type: integer
readOnly: true
extended_properties: {}
created:
type: string
format: date-time
readOnly: true
modified:
type: string
format: date-time
readOnly: true
name:
type: string
maxLength: 40
is_enabled:
type: boolean
rank:
type: integer
maximum: 2147483647
minimum: -2147483648
timeout:
type:
- integer
- 'null'
maximum: 2147483647
minimum: -2147483648
script:
type: integer
content_type:
type: integer
required_permission:
type:
- integer
- 'null'
custom_action_category:
type:
- integer
- 'null'
required:
- content_type
- created
- id
- modified
- name
- script
PatchedEventHook:
type: object
properties:
id:
type: integer
readOnly: true
created:
type: string
format: date-time
readOnly: true
modified:
type: string
format: date-time
readOnly: true
on_event_type:
$ref: '#/components/schemas/OnEventTypeEnum'
event_custom_type:
type:
- string
- 'null'
maxLength: 16
execution_order:
type: integer
maximum: 2147483647
minimum: -2147483648
config: {}
is_enabled:
type: boolean
content_type:
type: integer
script:
type: integer
PaginatedCustomActionList:
type: object
properties:
count:
type: integer
example: 123
next:
type:
- string
- 'null'
format: uri
example: http://api.example.org/accounts/?offset=400&limit=100
previous:
type:
- string
- 'null'
format: uri
example: http://api.example.org/accounts/?offset=200&limit=100
results:
type: array
items:
$ref: '#/components/schemas/CustomAction'
PaginatedCustomActionCategoryList:
type: object
properties:
count:
type: integer
example: 123
next:
type:
- string
- 'null'
format: uri
example: http://api.example.org/accounts/?offset=400&limit=100
previous:
type:
- string
- 'null'
format: uri
example: http://api.example.org/accounts/?offset=200&limit=100
results:
type: array
items:
$ref: '#/components/schemas/CustomActionCategory'
securitySchemes:
basicAuth:
type: http
scheme: basic
jwtAuth:
type: apiKey
in: header
name: Authorization
description: Token-based authentication with required prefix "JWT"
tokenAuth:
type: http
scheme: bearer
x-provenance:
method: searched
source: https://developers.vitruvi.cc/reference
harvested: '2026-10-19'
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://developers.vitruvi.cc/reference/accounts_payable_items_export.md
- https://developers.vitruvi.cc/reference/accounts_receivable_items_export.md
- https://developers.vitruvi.cc/reference/api_v1_aggregation_design_elements_files_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_aggregation_mobile_filter_options_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_aggregation_work_items_files_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_async_events_custom_actions_execute_create.md
- https://developers.vitruvi.cc/reference/api_v1_conditional_custom_field_overrides_batch_delete_create.md
- https://developers.vitruvi.cc/reference/api_v1_conditional_custom_field_overrides_batch_update_create.md
- https://developers.vitruvi.cc/reference/api_v1_configuration_library_export_program_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_configuration_library_import_program_create.md
- https://developers.vitruvi.cc/reference/api_v1_custom_field_settings_batch_delete_create.md
- https://developers.vitruvi.cc/reference/api_v1_custom_field_settings_batch_update_create.md
- https://developers.vitruvi.cc/reference/api_v1_custom_field_settings_by_entity_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_custom_field_settings_provisioning_schema_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_archive_create.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_design_element_related_objects_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_design_elements_categories_from_file_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_design_elements_geojson_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_design_elements_work_items_batch_delete_create.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_design_elements_work_items_batch_update_create.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_design_elements_work_items_can_be_deleted_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_designs_async_create.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_designs_async_destroy.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_designs_async_partial_update.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_designs_async_update.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_designs_can_be_deleted_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_extent_view_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_external_integration_create.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_external_integration_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_geometry_length_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_process_job_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_process_results_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_processes_async_create.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_processes_async_destroy.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_processes_async_partial_update.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_processes_async_update.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_processes_can_be_deleted_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_processes_geom_types_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_processes_not_null_field_values_by_de_type_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_processes_regions_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_processes_unique_field_values_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_start_process_create.md
- https://developers.vitruvi.cc/reference/api_v1_engineering_validate_process_create.md
- https://developers.vitruvi.cc/reference/api_v1_entity_files_batch_delete_create.md
- https://developers.vitruvi.cc/reference/api_v1_entity_files_batch_update_create.md
- https://developers.vitruvi.cc/reference/api_v1_entity_files_delete_destroy.md
- https://developers.vitruvi.cc/reference/api_v1_entity_files_download_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_entity_files_download_retrieve_2.md
- https://developers.vitruvi.cc/reference/api_v1_entity_files_linked_folder_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_entity_files_zipped_files_create.md
- https://developers.vitruvi.cc/reference/api_v1_exports_cancel_partial_update.md
- https://developers.vitruvi.cc/reference/api_v1_exports_grid_create.md
- https://developers.vitruvi.cc/reference/api_v1_exports_rerun_create.md
- https://developers.vitruvi.cc/reference/api_v1_grid_views_share_create.md
- https://developers.vitruvi.cc/reference/api_v1_inbox_feature_batches_mark_processed_create.md
- https://developers.vitruvi.cc/reference/api_v1_inbox_feature_batches_to_process_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_integrations_create.md
- https://developers.vitruvi.cc/reference/api_v1_integrations_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_deliverable_payable_item_templates_batch_delete_create.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_deliverable_payable_item_templates_batch_update_create.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_invoice_items_batch_delete_create.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_invoice_items_batch_update_create.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_invoices_aggregated_items_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_invoices_batch_delete_create.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_invoices_batch_update_create.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_invoices_detailed_items_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_invoices_pdf_retrieve.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_invoices_pdf_retrieve_2.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_labor_material_payable_item_templates_batch_delete_create.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_labor_material_payable_item_templates_batch_update_create.md
- https://developers.vitruvi.cc/reference/api_v1_invoicing_progress_payable_items_batch_delete_create.md
# --- truncated at 32 KB (108 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vitruvi/refs/heads/main/openapi/vitruvi-async-events-api-openapi.yml