Logistics · Beta
Project44
API integration
Ship Logistics features without building the integration. Full Project44 API access via Proxy and 180+ MCP-ready tools for AI agents — extend models and mappings to fit your product.
Built for specific customer use cases. Issues are resolved quickly.
Talk to usUse Cases
Why integrate with Project44
Common scenarios for SaaS companies building Project44 integrations for their customers.
Embed real-time multimodal shipment visibility in your TMS
Give your TMS or control-tower users live tracking across Truckload, LTL, Ocean, Rail, and Parcel without building and maintaining hundreds of carrier integrations. Truto lets you provision Project44 shipment tracking, subscribe to webhooks, and surface position and event history natively in your UI.
Automate tendering, dispatch, and rate quoting for freight brokers
Enable brokerage and TMS customers to request LTL, VLTL, and multimodal rate quotes, dispatch loads, and manage BOLs programmatically from inside your product. This removes the need for ops teams to log into carrier portals and reduces tender cycle time.
Power dock scheduling and yard management with predictive ETAs
Let WMS and YMS customers auto-book, reschedule, or free up dock appointments based on live Project44 ETAs and milestone events. Truto handles the Project44 appointment, capacity, and stop-location endpoints so you can focus on scheduling logic.
Tie purchase orders and SKUs to in-transit shipments inside ERPs
ERP and inventory planning platforms can map internal POs and inventory items to Project44 shipments, loads, and ocean schedules. This gives procurement and planning teams SKU-level visibility into what's on which truck or vessel.
Trigger touchless freight audit and payment on delivery events
FAP and invoicing SaaS can listen for Project44 delivery webhooks, pull signed PODs and eBOL images, and auto-authorize carrier payment. Truto normalizes the auth, webhook subscription, and document retrieval flow.
What You Can Build
Ship these features with Truto + Project44
Concrete product features your team can ship faster by leveraging Truto’s Project44 integration instead of building from scratch.
Live multimodal track-and-trace dashboard
Render shipment position history, event history, and route segments for TL, LTL, Ocean, Rail, and Parcel loads using Project44's tracking endpoints.
In-app LTL and VLTL rate shopping
Let users search LTL rate quotes, transit times, and VLTL rates, then dispatch the winning carrier and generate an electronic BOL without leaving your product.
Automated dock appointment scheduling
Search available appointment slots, book or update appointments, and push milestone updates based on inbound shipment ETAs and site capacity.
SKU- and PO-level inventory tracking
Create and sync inventory items and inventory orders, bulk-upload SKUs, and surface related orders tied to in-transit shipments.
Webhook-driven shipment status sync
Register and manage Project44 webhooks for shipment, LTL, TL, parcel, and ocean events so your product reflects status changes in near real time instead of polling.
Automated POD and document retrieval
On a Delivered event, pull multimodal and LTL images, eBOLs, and documents to trigger downstream audit, invoicing, or customer notification workflows.
SuperAI
Project44 AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
list_all_project_44_oauth_2_0_client_applications
List the OAuth 2.0 client applications of your project44 account. Returns: id, name.
create_a_project_44_oauth_2_0_client_application
Register an OAuth 2.0 client application in project44. Returns: id, name, secret.
get_single_project_44_oauth_2_0_client_application_by_id
Get an OAuth 2.0 client application in project44 by client id. Returns: id, name. Required: id.
update_a_project_44_oauth_2_0_client_application_by_id
Update an OAuth 2.0 client application in project44 by client id. Returns: id, name. Required: id.
delete_a_project_44_oauth_2_0_client_application_by_id
Delete an OAuth 2.0 client application in project44 by client id. Returns an empty 204 response on success. Required: id.
create_a_project_44_oauth_2_0_client_application_secret
Generate a new client secret for a project44 client application; the former secret stops working. Returns: id, name, secret. Required: client_id.
create_a_project_44_oauth_2_0_token_generation
Grant a project44 access token for a client id and secret (client credentials grant). Returns: access_token, expires_in, token_type.
create_a_project_44_shipment_tracking
Start tracking a shipment in project44, or append data to an existing tracked shipment. Returns: id, attributes, accessGroups, createdDateTime, costs, contents, and 8 more fields.
project_44_shipment_tracking_bulk_update
Start tracking a shipment in project44, or replace the data of an existing tracked shipment. Returns: id, attributes, accessGroups, createdDateTime, costs, contents, and 8 more fields.
get_single_project_44_shipment_tracking_by_id
Get a tracked shipment in project44 by shipment id, with its stops and route segments. Returns: id, attributes, accessGroups, createdDateTime, identifiers, lastModifiedDateTime, plan, routeInfo, and 2 more fields. Required: id.
delete_a_project_44_shipment_tracking_by_id
Delete a shipment route in project44 by shipment id to stop tracking the shipment. Returns no documented response body (HTTP 202). Required: id.
get_single_project_44_shipment_tracking_history_by_id
Get the full tracking history of a project44 shipment by shipment id. Returns: costs, contents, events, exceptions, positions, shipment, states, sharingContext, and 1 more field. Required: id.
get_single_project_44_shipment_event_history_by_id
Get the event history of a project44 shipment by shipment id. Returns: costs, contents, events, exceptions, shipment, states, sharingContext, sensorContext. Required: id.
get_single_project_44_shipment_position_history_by_id
Get the position history of a project44 shipment by shipment id. Returns: positions, shipment. Required: id.
list_all_project_44_shipment_tenant_attributes
List the tenant attributes of a project44 shipment. Returns: attributeName, attributeValues. Required: shipment_id.
list_all_project_44_shipment_attributes
List all shipment attribute definitions in project44. Returns: name.
create_a_project_44_shipment_attribute
Create a predefined shipment attribute in project44; needs an organization admin. Returns: infoMessages, shipmentAttributeDefinition.
project_44_shipment_search_search
Search project44 shipments that match a set of criteria. Returns: allShipmentIdentifiers, activeVehicleIdentifier, allActiveVehicleIdentifiers, activeSegmentMode, allSegmentModes, accessGroupIds, and 21 more fields.
project_44_shipment_counts_search
Count the project44 shipments that match a set of criteria. Returns: total.
project_44_filter_suggestions_search
Get suggested values for shipment search criteria in project44. Returns a list of string values.
create_a_project_44_shipment_load
Create a load in project44. Returns: id.
get_single_project_44_shipment_load_by_id
Get a load in project44 by load id. Returns: id, createdDateTime, deletedDateTime, deliveryStopReference, description, handlingUnits, identifiers, involvedParties, and 3 more fields. Required: id.
update_a_project_44_shipment_load_by_id
Update a load in project44. Returns no documented response body (HTTP 202). Required: id.
delete_a_project_44_shipment_load_by_id
Delete a load in project44. Returns no documented response body (HTTP 202). Required: id.
list_all_project_44_shipment_loads
List the loads of a project44 master shipment. Returns: id, createdDateTime, deletedDateTime, deliveryStopReference, description, handlingUnits, identifiers, involvedParties, and 3 more fields. Required: master_shipment_id.
create_a_project_44_inventory_item
Create an inventory item in project44. Returns: id.
get_single_project_44_inventory_item_by_id
Get an inventory item in project44 by project44 id. Returns: id, consumeByDateTime, description, externalID, inventoryDimensionalWeight, inventoryIdentifiers, and 14 more fields. Required: id.
update_a_project_44_inventory_item_by_id
Update an inventory item in project44. Returns: id. Required: id.
delete_a_project_44_inventory_item_by_id
Delete an inventory item in project44. Returns no documented response body (HTTP 202). Required: id.
project_44_inventory_items_bulk_create
Create several inventory items in project44 in one call. Returns: ids.
list_all_project_44_inventory_items
Search inventory items in project44. Returns: id, consumeByDateTime, description, externalID, inventoryDimensionalWeight, inventoryIdentifiers, and 14 more fields.
create_a_project_44_inventory_order
Create an order in project44. Returns: id.
get_single_project_44_inventory_order_by_id
Get an order in project44 by project44 id. Returns: id, additionalOrderIdentifiers, attributes, billToLocation, createdDate, deletedDateTime, and 20 more fields. Required: id.
update_a_project_44_inventory_order_by_id
Update an order in project44. Returns: id. Required: id.
delete_a_project_44_inventory_order_by_id
Delete an order in project44. Returns no documented response body (HTTP 202). Required: id.
list_all_project_44_inventory_orders
Search orders in project44. Returns: id, additionalOrderIdentifiers, attributes, billToLocation, createdDate, deletedDateTime, and 20 more fields.
list_all_project_44_inventory_order_related_orders
List the orders related to a project44 order. Returns: id, additionalOrderIdentifiers, attributes, billToLocation, createdDate, deletedDateTime, and 20 more fields. Required: order_id.
project_44_ltl_rate_quotes_search
Query LTL rate quotes in project44. Returns: id, alternateRateQuotes, capacityProviderAccountGroup, capacityProviderQuoteNumber, carrierCode, contractId, and 15 more fields.
project_44_ltl_transit_time_quotes_search
Query LTL transit time quotes in project44. Returns: capacityProviderAccountGroup, carrierCode, deliveryDateTime, errorMessages, infoMessages, transitDays.
create_a_project_44_ltl_dispatch
Create (dispatch) an LTL shipment in project44. Returns: id, capacityProviderBolUrl, infoMessages, packingVisualizationUrl, pickupDateTime, pickupNote, shipmentIdentifiers.
project_44_ltl_dispatch_cancel
Cancel a dispatched LTL shipment in project44 by shipment id. Returns: infoMessages, shipmentIdentifiers. Required: shipment_id.
create_a_project_44_ltl_dispatch_cancellation
Cancel a dispatched LTL shipment in project44 by shipment identifier. Returns: infoMessages, shipmentIdentifiers.
list_all_project_44_ltl_pro_numbers
List the ProNumber blocks in project44. Returns: blockEnd, blockStart, currentProNumber, remainingProsInBlock, vendorId.
create_a_project_44_ltl_pro_number
Generate a ProNumber for a vendor in project44. Returns: proNumber, vendorId.
project_44_ltl_pro_numbers_bulk_update
Update a ProNumber for a vendor in project44. Returns a string value.
project_44_ltl_image_retrieval_search
Query LTL shipment document images in project44. Returns: documentType, imageFormat, imageUrl, infoMessages, proNumber.
create_a_project_44_ltl_electronic_bol
Create an LTL electronic bill of lading (BOL) in project44. Returns: images, messageStatus, referenceNumbers, transactionDate, version.
update_a_project_44_ltl_electronic_bol_by_id
Update an LTL electronic BOL in project44 (pass the ProNumber as id). Returns: images, messageStatus, referenceNumbers, transactionDate, version. Required: id.
delete_a_project_44_ltl_electronic_bol_by_id
Delete an LTL electronic BOL in project44 (pass the ProNumber as id). Returns no documented response fields (HTTP 200). Required: id.
list_all_project_44_ltl_address_book
List the locations in the project44 LTL address book. Returns: address, contact.
create_a_project_44_ltl_address_book
Create a location in the project44 LTL address book. Returns: address, contact.
get_single_project_44_ltl_address_book_by_id
Get a location from the project44 LTL address book. Returns: address, contact. Required: id.
update_a_project_44_ltl_address_book_by_id
Update a location in the project44 LTL address book. Returns: address, contact. Required: id.
project_44_vltl_rate_quotes_search
Query volume LTL rate quotes in project44. Returns: id, alternateRateQuotes, capacityProviderAccountGroup, capacityProviderQuoteNumber, carrierCode, contractId, and 15 more fields.
create_a_project_44_vltl_dispatch
Create (dispatch) a volume LTL shipment in project44. Returns: id, capacityProviderBolUrl, infoMessages, packingVisualizationUrl, pickupDateTime, pickupNote, shipmentIdentifiers.
list_all_project_44_tl_available_vehicles
List the available vehicles within a radius in project44. Returns: terminatingCapacity.
project_44_tl_connected_capacity_carriers_search
Search carrier performance in project44 connected capacity. Returns: carrier, last30DaysDeliveryScheduleReliability, last30DaysPercentTracked, last30DaysPickupScheduleReliability, last30DaysShipmentVolume, last365DaysDeliveryScheduleReliability, last365DaysPercentTracked, last365DaysPickupScheduleReliability, and 2 more fields.
project_44_tl_connected_capacity_lanes_search
Search carrier performance on specific lanes in project44 connected capacity. Returns: carrier, destinationMarket, last30DaysDeliveryScheduleReliability, last30DaysPercentTracked, last30DaysPickupScheduleReliability, last30DaysShipmentVolume, last365DaysDeliveryScheduleReliability, last365DaysPercentTracked, and 4 more fields.
project_44_multi_modal_image_retrieval_search
Query shipment document images in project44. Returns: documentType, imageFormat, imageUrl, infoMessages.
create_a_project_44_multi_modal_rating
Create a multi-modal rate request in project44. Returns: id, name, attributes, apiConfiguration, capacityProviderIdentifiers, carrierAccountGroups, and 10 more fields.
get_single_project_44_multi_modal_rating_by_id
Get a multi-modal rate request in project44. Returns: id, name, attributes, apiConfiguration, capacityProviderIdentifiers, carrierAccountGroups, and 10 more fields. Required: id.
project_44_multi_modal_rating_cancel
Cancel a multi-modal rate request in project44. Returns: bookingId, rateRequestId. Required: rate_request_id.
list_all_project_44_multi_modal_booking
List multi-modal bookings in project44. Returns: id, attributes, apiConfiguration, automatedFailureReason, bookingSourceMethod, capacityProviderIdentifier, and 26 more fields.
create_a_project_44_multi_modal_booking
Create a multi-modal booking in project44. Returns: id, attributes, apiConfiguration, automatedFailureReason, bookingSourceMethod, capacityProviderIdentifier, and 26 more fields.
get_single_project_44_multi_modal_booking_by_id
Get a multi-modal booking in project44. Returns: id, attributes, apiConfiguration, automatedFailureReason, bookingSourceMethod, capacityProviderIdentifier, and 26 more fields. Required: id.
update_a_project_44_multi_modal_booking_by_id
Update a multi-modal booking in project44. Returns: id, attributes, apiConfiguration, automatedFailureReason, bookingSourceMethod, capacityProviderIdentifier, and 26 more fields. Required: id.
project_44_multi_modal_booking_cancel
Cancel a multi-modal booking in project44. Returns: id, attributes, apiConfiguration, automatedFailureReason, bookingSourceMethod, capacityProviderIdentifier, and 26 more fields. Required: booking_id.
create_a_project_44_multi_modal_booking_carrier_notice
Flag a multi-modal booking as under review in project44. Returns: id, attributes, apiConfiguration, automatedFailureReason, bookingSourceMethod, capacityProviderIdentifier, and 26 more fields. Required: booking_id.
project_44_multi_modal_booking_responses_bulk_update
Respond to a multi-modal booking in project44. Returns: id, attributes, apiConfiguration, automatedFailureReason, bookingSourceMethod, capacityProviderIdentifier, and 26 more fields. Required: booking_id.
list_all_project_44_booking_shipments
List multi-modal shipments in project44. Returns: id, name, attributes, bookings, createdDateTime, identifiers, lastModifiedDateTime, notes, and 1 more field.
create_a_project_44_booking_shipment
Create a multi-modal shipment in project44. Returns: id, name, attributes, bookings, createdDateTime, identifiers, lastModifiedDateTime, notes, and 1 more field.
get_single_project_44_booking_shipment_by_id
Get a multi-modal shipment in project44. Returns: id, name, attributes, bookings, createdDateTime, identifiers, lastModifiedDateTime, notes, and 1 more field. Required: id.
update_a_project_44_booking_shipment_by_id
Update a multi-modal shipment in project44. Returns: id, name, attributes, bookings, createdDateTime, identifiers, lastModifiedDateTime, notes, and 1 more field. Required: id.
project_44_booking_shipments_cancel
Cancel all bookings of a multi-modal shipment in project44. Returns: id, name, attributes, bookings, createdDateTime, identifiers, lastModifiedDateTime, notes, and 1 more field. Required: shipment_id.
list_all_project_44_multi_modal_packaging
Search multi-modal packages in project44. Returns: id, accessorials, createdDateTime, destinationLocation, items, identifiers, isStackable, lastModifiedDateTime, and 3 more fields.
create_a_project_44_multi_modal_packaging
Create a multi-modal package in project44. Returns: id, accessorials, createdDateTime, destinationLocation, items, identifiers, isStackable, lastModifiedDateTime, and 3 more fields.
project_44_multi_modal_packaging_bulk_delete
Delete a multi-modal package in project44 by id or identifier. Returns: id, identifiers.
get_single_project_44_multi_modal_packaging_by_id
Get a multi-modal package in project44. Returns: id, accessorials, createdDateTime, destinationLocation, items, identifiers, isStackable, lastModifiedDateTime, and 3 more fields. Required: id.
update_a_project_44_multi_modal_packaging_by_id
Update a multi-modal package in project44. Returns: id, accessorials, createdDateTime, destinationLocation, items, identifiers, isStackable, lastModifiedDateTime, and 3 more fields. Required: id.
create_a_project_44_multi_modal_document
Create a multi-modal document in project44. Returns: id, name, addedByCompany, addedByUser, createdDateTime, deletedDateTime, files, identifiers, and 4 more fields.
get_single_project_44_multi_modal_document_by_id
Get a multi-modal document in project44. Returns: id, name, addedByCompany, addedByUser, createdDateTime, deletedDateTime, files, identifiers, and 4 more fields. Required: id.
update_a_project_44_multi_modal_document_by_id
Replace a multi-modal document in project44. Returns no documented response fields (HTTP 200). Required: id.
project_44_multi_modal_document_partial_update
Partially update a multi-modal document in project44. Returns no documented response fields (HTTP 200). Required: id.
delete_a_project_44_multi_modal_document_by_id
Delete a multi-modal document in project44. Returns no documented response fields (HTTP 200). Required: id.
list_all_project_44_multi_modal_document
Search multi-modal documents in project44. Returns no documented response fields (HTTP 200).
list_all_project_44_webhook
List all webhook push configurations in project44. Returns: id, authParams, authType, authenticationMethods, configName, method, methodHeaders, methodParams, and 3 more fields.
project_44_webhook_bulk_update
Create or update a webhook push configuration in project44. Returns: id, authParams, authType, authenticationMethods, configName, method, methodHeaders, methodParams, and 3 more fields.
get_single_project_44_webhook_by_id
Get a webhook push configuration in project44 by id. Returns: id, authParams, authType, authenticationMethods, configName, method, methodHeaders, methodParams, and 3 more fields. Required: id.
delete_a_project_44_webhook_by_id
Delete a webhook push configuration in project44. Returns no documented response body (HTTP 200). Required: id.
get_single_project_44_webhooks_by_name_by_id
Get a webhook push configuration in project44 by name (pass the name as id). Returns: id, authParams, authType, authenticationMethods, configName, method, methodHeaders, methodParams, and 3 more fields. Required: id.
list_all_project_44_capacity_providers
List the capacity providers that accounts can be set up for in project44. Returns: name, capacityProviderIdentifiers, supportedServices, type.
list_all_project_44_capacity_provider_metadata
Get the metadata of a capacity provider in project44. Returns: accountDefinitions, capacityProvider.
list_all_project_44_capacity_provider_contact_management
List the capacity provider contact locations in project44. Returns: address, contact.
create_a_project_44_capacity_provider_contact_management
Create a capacity provider contact in project44. Returns: address, contact.
get_single_project_44_capacity_provider_contact_management_by_id
Get a capacity provider contact in project44. Returns: address, contact. Required: id.
update_a_project_44_capacity_provider_contact_management_by_id
Update a capacity provider contact in project44. Returns: address, contact. Required: id.
list_all_project_44_capacity_provider_account_management
List the capacity provider accounts in project44. Returns: id, accounts, capacityProviderIdentifier, code, group.
create_a_project_44_capacity_provider_account_management
Create a capacity provider account in project44. Returns: id, accounts, capacityProviderIdentifier, code, group.
get_single_project_44_capacity_provider_account_management_by_id
Get a capacity provider account in project44. Returns: id, accounts, capacityProviderIdentifier, code, group. Required: id.
update_a_project_44_capacity_provider_account_management_by_id
Update a capacity provider account in project44. Returns: id, accounts, capacityProviderIdentifier, code, group. Required: id.
delete_a_project_44_capacity_provider_account_management_by_id
Delete a capacity provider account in project44. Returns an empty 204 response on success. Required: id.
list_all_project_44_capacity_provider_account_group_management
List the capacity provider account groups in project44. Returns: id, name, code.
create_a_project_44_capacity_provider_account_group_management
Create a capacity provider account group in project44. Returns: id, name, code.
delete_capacity_provider_account_group_management_by_id
Delete a capacity provider account group in project44. Returns an empty 204 response on success. Required: id.
project_44_ltl_push_tracking_bulk_update
Upsert LTL shipment details pushed by a carrier to project44. Returns no documented response body (HTTP 202).
create_a_project_44_ltl_push_imaging
Push an image of an LTL shipment document to project44. Returns no documented response body (HTTP 202).
create_a_project_44_ltl_push_status_update
Push LTL shipment status updates to project44. Returns no documented response body (HTTP 202).
create_a_project_44_parcel_push_tracking
Push parcel shipment tracking data from a carrier to project44. Returns no documented response body (HTTP 202).
create_a_project_44_tl_push_equipment_identifier_assignment
Push a truckload equipment identifier assignment to project44. Returns: carrierIdentifier, customerAccountNumber, equipmentIdentifiers, scheduledTruckChangeDateTime, shipmentIdentifiers, shouldDelete.
create_a_project_44_tl_push_shipment_event
Push a truckload shipment event to project44 for a shipment leg. Returns: id, dateTime, description, dateTimes, details, estimateDateTime, and 7 more fields. Required: shipment_leg_id.
project_44_tl_push_additional_appointment_windows_bulk_update
Update an additional appointment window of a truckload stop in project44. Returns: appointmentStatus, appointmentWindow, identifiers, type. Required: shipment_leg_id, stop_id.
create_a_project_44_tl_push_intermediate_stop
Push truckload intermediate stops to project44. Returns: carrierIdentifier, customerAccountNumber, shipmentIdentifiers, shipmentStops.
create_a_project_44_tl_push_status_update
Push a truckload carrier tracking status update to project44. Returns: carrierIdentifier, customerId, equipmentIdentifiers, eventStopNumber, eventType, hoursOfServiceRemaining, and 7 more fields.
create_a_project_44_tl_push_tender_acceptance
Accept a shipper request to handle a shipment tender in project44. Returns: infoMessages, tenderAcceptance, tenderIdentifier. Required: tender_identifier.
create_a_project_44_tl_push_tender_decline
Decline the opportunity to bid on a shipment tender in project44. Returns: infoMessages, tenderIdentifier. Required: tender_identifier.
create_a_project_44_tl_push_tender_error
Reject a shipment tender in project44 because of an error in its tendering data. Returns: infoMessages, tenderIdentifier. Required: tender_identifier.
create_a_project_44_tl_push_tender_quote
Provide a rate quote in response to a shipment tender in project44. Returns: infoMessages, rateQuote, tenderIdentifier. Required: tender_identifier.
create_a_project_44_universal_push_truckload
Push tracking events and telematics readings to project44 (universal push). Returns: ingestionId.
create_a_project_44_tracking_events_position
Append events and positions to project44 shipments matched by identifiers. Returns no documented response body (HTTP 202).
project_44_tracking_route_segments_bulk_update
Send the complete route segments to project44 for shipments matched by identifiers. Returns no documented response body (HTTP 202).
create_a_project_44_shipment_events_position
Append events and positions to a project44 shipment by shipment id. Returns no documented response body (HTTP 202). Required: shipment_id.
project_44_shipment_route_segments_bulk_update
Send the complete route segments of a project44 shipment. Returns no documented response body (HTTP 202). Required: shipment_id.
create_a_project_44_connection_ingestion
Ingest data into project44 for a specific connection. Returns no documented response body (HTTP 202). Required: connection_id.
list_all_project_44_stop_location_management
List the stop locations used by your organization in project44. Returns: id, name, address, addressSpecificity, contacts, coordinates, geofence, openingHours, and 3 more fields.
create_a_project_44_stop_location_management
Create a stop location in project44. Returns: id, name, address, addressSpecificity, contacts, coordinates, geofence, openingHours, and 3 more fields.
get_single_project_44_stop_location_management_by_id
Get the latest version of a stop location in project44. Returns: id, name, address, addressSpecificity, contacts, coordinates, geofence, openingHours, and 3 more fields. Required: id.
update_a_project_44_stop_location_management_by_id
Update a stop location in project44. Returns an empty 204 response on success. Required: id.
list_all_project_44_stop_location_versions
List all saved versions of a project44 stop location. Returns: id, name, address, addressSpecificity, contacts, coordinates, geofence, openingHours, and 3 more fields. Required: stop_location_id.
get_single_project_44_stop_location_version_by_id
Get a specific version of a project44 stop location (pass the version number as id). Returns: id, name, address, addressSpecificity, contacts, coordinates, geofence, openingHours, and 3 more fields. Required: id, stop_location_id.
create_a_project_44_postal_address_validation
Validate a postal address in project44. Returns: addressLines, city, country, postalCode, state.
list_all_project_44_analytics_port_intelligence
List the port intelligence summaries from project44 for the requested ports. Returns: anchorMonthly, anchorWeekly, approachingDaily, berthingMonthly, berthingWeekly, dwellMonthly, dwellWeekly, portLocode, and 1 more field. Required: locodes.
create_a_project_44_asset_tracking
Enroll an asset for tracking in project44. Returns no documented response body (HTTP 200).
project_44_asset_tracking_bulk_delete
Unenroll an asset from tracking in project44. Returns no documented response body (HTTP 200). Required: equipmentIdentifier.type, equipmentIdentifier.value.
list_all_project_44_appointments
List the appointments of a shipment in project44. Returns: appointment, location, milestones, status, yardShipment.
create_a_project_44_appointment
Book an appointment in project44. Returns: appointment, location, milestones, status, yardShipment.
get_single_project_44_appointment_by_id
Get an appointment in project44 by id. Returns: appointment, location, milestones, status, yardShipment. Required: id.
update_a_project_44_appointment_by_id
Reschedule an appointment in project44. Returns: appointment, location, milestones, status, yardShipment. Required: id.
delete_a_project_44_appointment_by_id
Cancel an appointment in project44. Returns: status. Required: id, reasonCode.
project_44_appointment_milestones_bulk_update
Update the milestones of a project44 appointment. Returns: appointment, location, milestones, status, yardShipment. Required: appointment_id.
list_all_project_44_appointment_capacity
Get the appointment capacity of a project44 site for a date. Returns: availableSlots, bookedSlots, capacityDate, siteCode, totalSlots, totalBookedSlots, totalCapacity, unplannedShipmentsCount. Required: siteCode, capacityDate.
list_all_project_44_appointment_reason_codes
List the appointment reason codes of a project44 site. Returns a list of string values. Required: siteCode.
list_all_project_44_appointment_site_codes
List the appointment site codes in project44. Returns: name, code, locationIdentifiers.
project_44_appointment_slots_search
Get the available appointment slots for a shipment in project44. Returns: shipmentReference, siteCode, stopReferenceNumber, slots.
list_all_project_44_invitations
List the network invitations that match a criteria in project44. Returns: capability, createdDateTime, invitee, lastModifiedDateTime, status.
create_a_project_44_invitation
Invite an entity to join your project44 network. Returns: capability, createdDateTime, invitee, lastModifiedDateTime, status.
list_all_project_44_ocean_schedule_carriers
List the ocean carriers that have sailing schedules in project44. Returns: carrierCode, carrierCodeListProvider, carrierName.
list_all_project_44_ocean_point_to_point_schedules
Search ocean point-to-point sailing routes in project44. Returns: carrierCode, carrierCodeListProvider, carrierName, cutOffTimes, deliveryTypeAtDestination, extensions, and 7 more fields. Required: origin, destination.
create_a_project_44_ltl_tracking
Start tracking an LTL shipment in project44 (legacy API). Returns: infoMessages, shipment.
update_a_project_44_ltl_tracking_by_id
Update a tracked LTL shipment in project44 (legacy API). Returns: infoMessages, shipment. Required: id.
delete_a_project_44_ltl_tracking_by_id
Delete a tracked LTL shipment in project44 by id (legacy API). Returns an empty 204 response on success. Required: id.
get_single_project_44_ltl_tracking_status_by_id
Get the status of a tracked LTL shipment in project44 by id (legacy API). Returns: imageReferences, infoMessages, latestStatusUpdate, latestStopStatuses, mapUrl, shipment, statusUpdates. Required: id.
list_all_project_44_ltl_tracking_statuses
Get the status of a tracked LTL shipment in project44 by identifier (legacy API). Returns: imageReferences, infoMessages, latestStatusUpdate, latestStopStatuses, mapUrl, shipment, statusUpdates.
list_all_project_44_tl_assets
List the assets of a carrier in project44 (legacy API). Returns: shouldDelete, type, value.
list_all_project_44_tl_equipment_validations
Validate equipment identifiers in project44 (legacy API). Returns: exists, ownershipStatus, valid.
create_a_project_44_tl_tracking
Start tracking a truckload shipment in project44 (legacy API). Returns: infoMessages, shipment.
project_44_tl_tracking_bulk_update
Update a truckload shipment in project44 by shipment identifier (legacy API). Returns: infoMessages, shipment.
project_44_tl_tracking_bulk_delete
Delete a truckload shipment in project44 by shipment identifier (legacy API). Returns an empty 204 response on success.
get_single_project_44_tl_tracking_by_id
Get a truckload shipment in project44 by id (legacy API). Returns: id, apiConfiguration, attributes, capacityProviderAccountGroup, carrierIdentifier, contents, and 13 more fields. Required: id.
update_a_project_44_tl_tracking_by_id
Update a truckload shipment in project44 (legacy API). Returns: infoMessages, shipment. Required: id.
delete_a_project_44_tl_tracking_by_id
Delete a truckload shipment in project44 by id (legacy API). Returns an empty 204 response on success. Required: id.
create_a_project_44_tl_shipment_action
Create an action on a truckload shipment in project44 (legacy API). Returns: infoMessages. Required: shipment_id.
create_a_project_44_tl_equipment_approval_request
Request an ad hoc equipment approval from the tracking provider in project44 (legacy API). Returns an empty 204 response on success. Required: shipment_id.
get_single_project_44_tl_tracking_status_by_id
Get the status of a truckload shipment in project44 by id (legacy API). Returns: infoMessages, latestStatusUpdate, latestStopStatuses, mapUrl, notificationRule, pointOfInterestStatus, sensorHistories, shipment, and 1 more field. Required: id.
list_all_project_44_tl_tracking_statuses
Get the status of a truckload shipment in project44 by identifier (legacy API). Returns: infoMessages, latestStatusUpdate, latestStopStatuses, mapUrl, notificationRule, pointOfInterestStatus, sensorHistories, shipment, and 1 more field.
list_all_project_44_tl_tracking_methods
List the tracking methods available for a carrier in project44 (legacy API). Returns: capacityProviderAccount, equipmentIdentifier, infoMessages, shipmentIdentifier.
list_all_project_44_tl_webhook
List the truckload tracking webhook endpoints in project44 (legacy API). Returns: id, authParams, authType, authenticationMethods, configName, method, methodHeaders, methodParams, and 3 more fields.
project_44_tl_webhook_bulk_update
Add or update a truckload tracking webhook endpoint in project44 (legacy API). Returns: id, authParams, authType, authenticationMethods, configName, method, methodHeaders, methodParams, and 3 more fields.
delete_a_project_44_tl_webhook_by_id
Delete a truckload tracking webhook endpoint in project44 (legacy API). Returns no documented response body (HTTP 200). Required: id.
create_a_project_44_parcel_tracking
Start tracking a parcel shipment in project44 (legacy API). Returns: infoMessages, shipment, shipments.
delete_a_project_44_parcel_tracking_by_id
Delete a tracked parcel shipment in project44 by id (legacy API). Returns: infoMessages. Required: id.
list_all_project_44_parcel_tracking_statuses
Get the status of a tracked parcel shipment in project44 by id (legacy API). Returns: latestStatusUpdate, shipment, statusUpdates. Required: shipment_id.
list_all_project_44_parcel_webhook
Get the parcel tracking webhook endpoint in project44 (legacy API). Returns: includeFullHistory, password, showLatestUpdate, url, username.
project_44_parcel_webhook_bulk_update
Add or update the parcel tracking webhook endpoint in project44 (legacy API). Returns: includeFullHistory, password, showLatestUpdate, url, username.
project_44_parcel_webhook_bulk_delete
Delete the parcel tracking webhook endpoint in project44 (legacy API). Returns no documented response body (HTTP 200).
create_a_project_44_rail_tracking
Start tracking a rail shipment in project44 (legacy API). Returns: infoMessages, shipment.
delete_a_project_44_rail_tracking_by_id
Delete a tracked rail shipment in project44 by id (legacy API). Returns no documented response body (HTTP 200). Required: id.
get_single_project_44_rail_tracking_status_by_id
Get the status of a tracked rail shipment in project44 by id (legacy API). Returns: equipmentStatuses, infoMessages, shipment. Required: id.
list_all_project_44_rail_tracking_statuses
Get the status of a tracked rail shipment in project44 by identifier (legacy API). Returns: equipmentStatuses, infoMessages, shipment.
create_a_project_44_ocean_tracking
Start tracking an ocean shipment in project44 from a container id or vessel id (legacy API). Returns: infoMessages, shipment.
delete_a_project_44_ocean_tracking_by_id
Delete a tracked ocean shipment in project44 by id (legacy API). Returns an empty 204 response on success. Required: id.
list_all_project_44_ocean_tracking_statuses
Get the statuses of a tracked ocean shipment in project44 by id (legacy API). Returns: infoMessages, trackedShipment. Required: shipment_id.
Why Truto
Why use Truto’s MCP server for Project44
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 850+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
How It Works
From zero to integrated
Go live with Project44 in under an hour. No boilerplate, no maintenance burden.
Link your customer’s Project44 account
Use Truto’s frontend SDK to connect your customer’s Project44 account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call Project44
Truto’s Proxy API is a 1-to-1 mapping of the Project44 API. You call us, we call Project44, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate Project44’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about Project44 on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
How does authentication to Project44 work through Truto?
Project44 uses OAuth 2.0 client credentials. Truto manages the client application lifecycle and token generation through the Project44 OAuth 2.0 endpoints, so your end users connect once and your backend never has to handle client secrets or token refresh.
Which transportation modes are supported?
The integration covers all core Project44 modes: Truckload (TL), Less-than-Truckload (LTL), Volume LTL, Multimodal, Ocean, Rail, and Parcel, including mode-specific tracking, dispatch, and webhook endpoints.
Can we receive real-time events instead of polling for shipment updates?
Yes. Truto exposes Project44's webhook management endpoints for shipments, LTL, TL, parcel, and ocean tracking, so you can subscribe your end users to push notifications for status changes, position updates, and milestones.
Can we access carrier performance and connected capacity data?
Yes. You can list capacity providers, their metadata, connected capacity carriers and lanes, and manage carrier account and contact relationships through the Project44 capacity provider endpoints.
Does the integration support document and image retrieval like PODs and BOLs?
Yes. You can create and manage LTL electronic BOLs, retrieve LTL and multimodal images (including PODs), and manage multimodal documents via dedicated document endpoints.
Can we support appointment scheduling and yard workflows?
Yes. The integration includes appointment CRUD, slot search, site codes, reason codes, capacity lookups, milestone bulk updates, and stop location management, which together cover most dock scheduling and yard use cases.
Are custom shipment attributes supported?
Yes. You can list tenant-level and global shipment attributes and create new shipment attributes, which lets you map internal identifiers like PO numbers or customer IDs onto Project44 shipments.
From the Blog
Project44 integration guides
Deep dives, architecture guides, and practical tutorials for building Project44 integrations.
Project44
Get Project44 integrated into your app
Our team understands what it takes to make a Project44 integration successful. A short, crisp 30 minute call with folks who understand the problem.