Loadsmart Custom Forms - Triggers API

Triggers are event listeners that activate on specific API or UI events. Each Trigger is associated with exactly one Flow. When a Trigger fires, it initiates its associated Flow, which in turn presents one or two Forms sequentially.

Operations 7

PATCH /warehouse/{id}/custom-forms Update custom forms for load types #
POST /warehouse/{id}/custom-forms Create custom forms for load types #
GET /custom-forms/trigger Retrieve multiple Triggers #
POST /custom-forms/trigger Create a single Trigger #
PATCH /custom-forms/trigger/{id} Update a single Trigger #
DELETE /custom-forms/trigger/{id} Delete a single Trigger #
GET /custom-forms/trigger/{id} Retrieve a single Trigger #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/loadsmart-custom-forms-triggers-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

loadsmart-custom-forms-triggers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Opendock Nova API Documentation Custom Forms - Triggers API
  description: '## Welcome to Opendock Nova!'
  version: v4.144.0 - 39b4253
  contact: {}
servers:
- url: https://neutron.opendock.com
  description: Production Server
- url: https://neutron.staging.opendock.com
  description: Staging Server
tags:
- name: Custom Forms - Triggers
  description: Triggers are event listeners that activate on specific API or UI events. Each Trigger is associated with exactly one Flow. When a Trigger fires, it initiates its associated Flow, which in turn presents one or two Forms sequentially.
paths:
  /warehouse/{id}/custom-forms:
    patch:
      operationId: WarehouseController_updateLoadTypesCustomForms
      summary: Update custom forms for load types
      description: 'Updates existing custom forms'' names and their associations with load types.


        This endpoint allows you to:

        - Modify the display name of custom forms

        - Change which load types trigger these forms

        - Update form visibility settings


        For Delete a loadtype custom form, please refer to custom-forms/flow endpoint sending the flowId to delete all related flows/forms.

        Note: To modify the fields within forms, use the ''/custom-forms/form-field'' endpoint.'
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateLoadTypesCustomFormsDto'
      responses:
        '200':
          description: Custom forms successfully updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/'
      tags:
      - Custom Forms - Triggers
      security:
      - bearer: []
    post:
      operationId: WarehouseController_createLoadTypesCustomForms
      summary: Create custom forms for load types
      description: 'This endpoint creates custom forms that are triggered when appointments are booked with specific load types.


        The system will generate three forms:

        - One for the Warehouse App

        - One for the Carrier App

        - One for all platforms, including API integrations


        Initially, forms are created without fields. After creation, you must configure the form fields using the ''/custom-forms/form-field'' endpoint.


        For complete form management, refer to the Custom Forms section, starting with the ''/custom-forms/trigger'' endpoint.'
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateLoadTypesCustomFormsDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/'
      tags:
      - Custom Forms - Triggers
      security:
      - bearer: []
  /custom-forms/trigger:
    get:
      operationId: getManyBaseTriggerControllerTrigger
      summary: Retrieve multiple Triggers
      parameters:
      - name: fields
        description: Selects resource fields. <a href="https://github.com/nestjsx/crud/wiki/Requests#select" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: array
          items:
            type: string
        style: form
        explode: false
      - name: s
        description: Adds search condition. <a href="https://github.com/nestjsx/crud/wiki/Requests#search" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: string
      - name: filter
        description: Adds filter condition. <a href="https://github.com/nestjsx/crud/wiki/Requests#filter" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: array
          items:
            type: string
        style: form
        explode: true
      - name: or
        description: Adds OR condition. <a href="https://github.com/nestjsx/crud/wiki/Requests#or" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: array
          items:
            type: string
        style: form
        explode: true
      - name: sort
        description: Adds sort by field. <a href="https://github.com/nestjsx/crud/wiki/Requests#sort" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: array
          items:
            type: string
        style: form
        explode: true
      - name: join
        description: Adds relational resources. <a href="https://github.com/nestjsx/crud/wiki/Requests#join" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: array
          items:
            type: string
        style: form
        explode: true
      - name: limit
        description: Limit amount of resources. <a href="https://github.com/nestjsx/crud/wiki/Requests#limit" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: integer
      - name: offset
        description: Offset amount of resources. <a href="https://github.com/nestjsx/crud/wiki/Requests#offset" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: integer
      - name: page
        description: Page portion of resources. <a href="https://github.com/nestjsx/crud/wiki/Requests#page" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: integer
      - name: cache
        description: Reset cache (if was enabled). <a href="https://github.com/nestjsx/crud/wiki/Requests#cache" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: integer
          minimum: 0
          maximum: 1
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Trigger'
      tags:
      - Custom Forms - Triggers
      security:
      - bearer: []
    post:
      operationId: createOneBaseTriggerControllerTrigger
      summary: Create a single Trigger
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTriggerDto'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Trigger'
      tags:
      - Custom Forms - Triggers
      security:
      - bearer: []
  /custom-forms/trigger/{id}:
    patch:
      operationId: updateOneBaseTriggerControllerTrigger
      summary: Update a single Trigger
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateTriggerDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Trigger'
      tags:
      - Custom Forms - Triggers
      security:
      - bearer: []
    delete:
      operationId: deleteOneBaseTriggerControllerTrigger
      summary: Delete a single Trigger
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Trigger'
      tags:
      - Custom Forms - Triggers
      security:
      - bearer: []
    get:
      operationId: getOneBaseTriggerControllerTrigger
      summary: Retrieve a single Trigger
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: fields
        description: Selects resource fields. <a href="https://github.com/nestjsx/crud/wiki/Requests#select" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: array
          items:
            type: string
        style: form
        explode: false
      - name: join
        description: Adds relational resources. <a href="https://github.com/nestjsx/crud/wiki/Requests#join" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: array
          items:
            type: string
        style: form
        explode: true
      - name: cache
        description: Reset cache (if was enabled). <a href="https://github.com/nestjsx/crud/wiki/Requests#cache" target="_blank">Docs</a>
        required: false
        in: query
        schema:
          type: integer
          minimum: 0
          maximum: 1
      responses:
        '200':
          description: Get one base response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Trigger'
      tags:
      - Custom Forms - Triggers
      security:
      - bearer: []
components:
  schemas:
    AppsEnum:
      type: string
      description: The app that this trigger will be activated, based on the source of the request
      enum:
      - api
      - warehouse
      - carrier
      - driver
      - all
    CustomFormFlowCategoryEnum:
      type: string
      description: The event category that this trigger will be activated on
      enum:
      - appointmentStatusCompleted
      - appointmentStatusArrived
      - appointmentCreated
      - assetVisitCreated
      - manualTrigger
    CreateLoadTypesCustomFormsDto:
      type: object
      properties:
        loadTypeIds:
          description: The list of load type ids that this form will be used for
          example:
          - a0e1f2c3-d4e5-6f7g-8h9i-j0k1l2m3n4o5
          type: array
          items:
            type: array
        formName:
          type: string
          description: The name of the form
          example: Load Type Form
        formDescription:
          type: string
          description: Extra description of the form
          example: This form is used to collect information about the load type
      required:
      - loadTypeIds
      - formName
    UpdateLoadTypesCustomFormsDto:
      type: object
      properties:
        parentCode:
          type: string
          description: The parent code of the form, used to group forms together, generated by the API, cannot be changed!
          example: acfb1234-5678-90ab-cdef-1234567890ab
          readOnly: true
        loadTypeIds:
          description: The list of load type ids that this form will be used for
          example:
          - a0e1f2c3-d4e5-6f7g-8h9i-j0k1l2m3n4o5
          type: array
          items:
            type: array
        formName:
          type: string
          description: The name of the form
          example: Load Type Form
      required:
      - parentCode
    Trigger:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier of the record
          example: a0e1f2c3-d4e5-6f7g-8h9i-j0k1l2m3n4o5
          readOnly: true
        createDateTime:
          format: date-time
          type: string
          description: The date and time when the record was created
          example: '2023-10-01T12:00:00Z'
          readOnly: true
        createdBy:
          type: object
          description: The ID of the user who created the record
          example: a0e1f2c3-d4e5-6f7g-8h9i-j0k1l2m3n4o5
          readOnly: true
        lastChangedDateTime:
          format: date-time
          type: string
          description: The date and time when the record was last changed
          example: '2023-10-01T12:00:00Z'
          readOnly: true
        app:
          $ref: '#/components/schemas/AppsEnum'
        category:
          $ref: '#/components/schemas/CustomFormFlowCategoryEnum'
        feature:
          $ref: '#/components/schemas/CustomFormsFeatures'
        flowId:
          type: object
          description: The ID of the flow that this trigger will load, Flow has one or two Forms
          example: a0e1f2c3-d4e5-6f7g-8h9i-j0k1l2m3n4o5
        objectId:
          type: string
          description: The ID of the object that this trigger will be activated on events
          example: a0e1f2c3-d4e5-6f7g-8h9i-j0k1l2m3n4o5
        entityName:
          $ref: '#/components/schemas/CustomFormFlowEntitiesEnum'
        dataEntityName:
          $ref: '#/components/schemas/CustomFormDataEntitiesEnum'
      required:
      - id
      - createDateTime
      - createdBy
      - lastChangedDateTime
      - app
      - category
      - objectId
      - entityName
      - dataEntityName
    CustomFormDataEntitiesEnum:
      type: string
      description: The entity name of the object that this data belongs to
      enum:
      - appointment
      - assetvisit
      - assetcontainer
    UpdateTriggerDto:
      type: object
      properties:
        tags:
          type: object
        app:
          $ref: '#/components/schemas/AppsEnum'
        category:
          $ref: '#/components/schemas/CustomFormFlowCategoryEnum'
        flowId:
          type: object
        objectId:
          type: string
        entityName:
          $ref: '#/components/schemas/CustomFormFlowEntitiesEnum'
        updateRelatedTriggers:
          type: boolean
          default: false
          description: If true, it will update the related triggers of the flow, with the same flow.parentCode
    CreateTriggerDto:
      type: object
      properties:
        tags:
          type: object
        app:
          $ref: '#/components/schemas/AppsEnum'
        category:
          $ref: '#/components/schemas/CustomFormFlowCategoryEnum'
        flowId:
          type: object
          description: The ID of the Flow that will be loaded when this trigger is executed
          example: a0e1f2c3-d4e5-6f7g-8h9i-j0k1l2m3n4o5
        objectId:
          type: string
          description: The ID of the object that this trigger belongs to, the type is dependent on the entityName
          example: a0e1f2c3-d4e5-6f7g-8h9i-j0k1l2m3n4o5
        feature:
          $ref: '#/components/schemas/CustomFormsFeatures'
        entityName:
          $ref: '#/components/schemas/CustomFormFlowEntitiesEnum'
      required:
      - app
      - category
      - objectId
      - entityName
    CustomFormsFeatures:
      type: string
      description: The feature that this trigger is related, used to group triggers by feature
      enum:
      - check-out
      - check-in
      - check-in additional asset details
      - asset container details
      - Inbound Claim
      - Outbound Claim
      - Book Load Type
      - appointment-completed
    CustomFormFlowEntitiesEnum:
      type: string
      description: The entity name that qualifies the objectId this trigger will be activated
      enum:
      - loadtype
      - dock
      - warehouse
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http