Paperless Parts Integration Actions API
Endpoints for interacting with ERP integrations
Endpoints for interacting with ERP integrations
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/paperless-parts-integration-actions-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: Paperless Parts Integration Actions API
description: The Paperless Parts API provides access to your data, enabling developers to easily integrate Paperless Parts with third-party systems, such as Customer Relationship Management (CRM) and Enterprise Resource Planning (ERP) tools.
version: '1.0'
termsOfService: https://www.paperlessparts.com/web-service-agreement/
contact:
name: Paperless Parts
url: https://www.paperlessparts.com
email: support@paperlessparts.com
servers:
- url: '{url}/{version}'
variables:
url:
default: https://api.paperlessparts.com
version:
default: v1
security:
- app_id: []
tags:
- name: Integration Actions
description: Endpoints for interacting with ERP integrations
paths:
/managed_integrations/public:
get:
summary: Returns a list of managed integrations
description: Returns a list of managed integrations. Use the UUID provided from the managed integration to create integration actions
operationId: ListManagedIntegrations
tags:
- Integration Actions
responses:
200:
description: Successful response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ManagedIntegrationDetails'
404:
description: Not found response
content:
text/plain:
schema:
title: Managed integrations not found
type: string
example: 'Error: Not Found'
post:
summary: Create managed integration
description: Creates a new managed integration. This is required to later create integration actions
operationId: CreateManagedIntegration
tags:
- Integration Actions
responses:
201:
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/ManagedIntegrationDetails'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ManagedIntegration'
/managed_integrations/public/{managed_integration_uuid}:
get:
summary: Get managed integration details
description: Get the details for a managed integration
operationId: GetManagedIntegration
parameters:
- in: path
name: managed_integration_uuid
schema:
type: string
required: true
description: The unique identifier for the managed integration to be returned
tags:
- Integration Actions
responses:
200:
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/ManagedIntegrationDetails'
404:
description: Not found response
content:
text/plain:
schema:
title: Integration action with that action uuid not found
type: string
example: 'Error: Not Found'
patch:
summary: Update fields on a managed integration
description: Update fields on a managed integration. Cannot update UUID or erp_name
operationId: UpdateManagedIntegration
parameters:
- in: path
name: managed_integration_uuid
schema:
type: string
required: true
description: The unique identifier for the managed integration to be returned
tags:
- Integration Actions
responses:
200:
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/ManagedIntegrationDetails'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
is_active:
type: boolean
example: true
description: whether the integration is active
erp_name:
type: string
example: JobBOSS
description: The name of the ERP system being integrated with
erp_version:
type: string
example: '1.0'
description: The version of the ERP system being integrated with
integration_version:
type: string
example: '1.0'
description: The version of the codebase processing the integration
create_integration_action_after_creating_new_order:
type: boolean
example: true
description: Whether a new integration action should be created after a new order is faciliated in Paperless
create_integration_action_after_quote_sent:
type: boolean
example: true
description: Whether a new integration action should be created after a new quote is sent in Paperless
/managed_integrations/public/{managed_integration_uuid}/heartbeat:
post:
summary: Post an integration heartbeat
description: Post to confirm that the integration is still active
operationId: PostManagedIntegrationHeartbeat
parameters:
- in: path
name: managed_integration_uuid
schema:
type: string
required: true
description: The unique identifier for the managed integration whose heartbeat is being recorded
tags:
- Integration Actions
responses:
201:
description: Successful response
/managed_integrations/public/{managed_integration_uuid}/integration_actions:
get:
summary: Returns a list of integration actions
description: Returns a list of integration actions available to be used for ERP integrations.
operationId: ListIntegrationActions
parameters:
- in: path
name: managed_integration_uuid
schema:
type: string
required: true
description: The unique identifier for the managed integration whose integration actions you would like
- in: query
name: status_in
schema:
type: string
required: false
description: Value used to search for only integrations that currently have a certain status. Valid options are queued, in_progress, completed, cancelled, failed, or timed_out
- in: query
name: type_in
schema:
type: string
required: false
description: Value used to search for only integrations that currently have a certain type. Valid options are export_order, export_quote, import_purchased_component, import_work_center, import_vendor, import_material, or import_account
- in: query
name: page
schema:
type: string
required: false
description: The page of results to return.
tags:
- Integration Actions
responses:
200:
description: Successful response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/IntegrationAction'
404:
description: Not found response
content:
text/plain:
schema:
title: Integration actions not found
type: string
example: 'Error: Not Found'
post:
summary: Create new integration action
parameters:
- in: path
name: managed_integration_uuid
schema:
type: string
required: true
description: The unique identifier for the managed integration whose integration action you would like
description: Creates a new integration action
operationId: CreateIntegrationAction
tags:
- Integration Actions
responses:
201:
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/IntegrationAction'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
type:
type: string
example: export_order
description: the type of action being requested
entity_id:
type: string
example: '8'
description: The identifier for the entity that should be processed as part of the action. For example, process order 8
/integration_actions/public/{integration_action_uuid}:
get:
summary: Get integration action details
description: Get the details for a specific integration action.
operationId: Get integration action details
parameters:
- in: path
name: integration_action_uuid
schema:
type: string
required: true
description: The unique identifier for the integration action to be returned
tags:
- Integration Actions
responses:
200:
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/IntegrationAction'
404:
description: Not found response
content:
text/plain:
schema:
title: Integration action with that action uuid not found
type: string
example: 'Error: Not Found'
patch:
summary: Update fields on an integration action
description: Update fields on an integration action.
operationId: UpdateOrder
parameters:
- in: path
name: integration_action_uuid
schema:
type: string
required: true
description: The unique identifier for the integration action to be returned
tags:
- Integration Actions
responses:
200:
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/IntegrationAction'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: in_progress
description: the new status of the integration action
status_message:
type: string
example: The order 8 is now processing
description: The new status message for the integration
components:
schemas:
ManagedIntegrationLogo:
type: object
properties:
original:
type:
- string
- 'null'
format: uri
thumbnail:
type:
- string
- 'null'
format: uri
IntegrationAction:
type: object
properties:
uuid:
type: string
format: uuid
type:
type: string
example: export_order
description: the type of action being requested
created:
type: string
format: date-time
updated:
type: string
format: date-time
current_record_count:
type: integer
last_checkin:
type:
- string
- 'null'
format: date-time
related_object:
type:
- string
- 'null'
related_object_type:
type: string
status:
type: string
example: in_progress
description: The current status of the action
status_message:
type: string
example: Order 8 is currently being processed
entity_id:
type: string
example: '8'
description: The identifier for the entity that should be processed as part of the action. For example, process order 8
ManagedIntegration:
type: object
properties:
uuid:
type: string
updated:
type: string
format: date-time
author:
type: string
example: John Doe
description: The creator of this integration
category:
type: string
example: ERP
description: The category of tool that this integration belongs to
configuration_parameters:
type: object
description:
type: string
example: Connecting other shop software to Paperless Parts
description: A short description for the integration
developed_by_paperless_parts:
type: boolean
example: true
description: A boolean reflecting whether the integration was created by Paperless Parts
erp_name:
type: string
erp_version:
type: string
icc_setup_complete:
type: boolean
icc_ssh_tunnel_status:
type:
- string
- 'null'
icc_ssh_tunnel_status_expiration:
type:
- string
- 'null'
format: date-time
integrated_software_name:
type: string
example: JobBOSS²
description: The name of the integration
integrated_software_version:
type: integer
example: The version of the codebase processing the integration
description: '1.0'
integration_template_id:
type:
- integer
- 'null'
integration_version:
type: integer
example: The version of the codebase processing the integration
description: '1.0'
internal_productized_name:
type:
- string
- 'null'
is_active:
type: string
example: Whether the integration is active
description: 'True'
is_icc_compatible:
type: boolean
is_icc_enabled:
type: boolean
locator:
type:
- string
- 'null'
logo:
$ref: '#/components/schemas/ManagedIntegrationLogo'
name:
type: string
example: JobBOSS²
description: The name of the integration
release_channel:
type: string
status:
type: string
example: up
description: Either 'up' or 'down', reflecting the health of the integration
support_contact:
type: string
example: support@paperlessparts.com
description: A contact to reach out to for support on this integration
ManagedIntegrationDetails:
allOf:
- $ref: '#/components/schemas/ManagedIntegration'
securitySchemes:
app_id:
type: apiKey
description: API key to authorize requests.
name: Authorization
in: header