# Upwell Developer Docs - [Welcome to Upwell](https://docs.upwell.com/introduction.md): Streamline your logistics accounts payable and receivable processes with our intelligent automation platform - [Quickstart](https://docs.upwell.com/quickstart.md): Get started with Upwell in 5 simple steps - [Authentication](https://docs.upwell.com/authentication.md): Learn how to authenticate your requests to the Upwell API - [Choose your integration path](https://docs.upwell.com/developer-guide/choose-your-path.md): Start from what you want to accomplish, pick the right integration path, and know the prerequisites, first successful call, and production checklist for each. - [What happens if…?](https://docs.upwell.com/developer-guide/what-happens-if.md): The consequence reference: what the system actually does when you retry, duplicate, delete, paginate, or misconfigure — one answer per question, with sources. - [Can I…?](https://docs.upwell.com/developer-guide/can-i.md): The feasibility reference: what the Upwell API supports today, what has caveats, what it does not do, and what is real but undocumented — with a source link for every row. - [Core concepts & data model](https://docs.upwell.com/concepts/data-model.md): The handful of objects Upwell is built around — shipments, invoices, bills, carrier invoices, payments — what each means, how they connect, and the terms people mix up. - [Glossary](https://docs.upwell.com/concepts/glossary.md): Every Upwell, freight, and AP/AR term you will run into — in plain language, with links to the pages that go deeper. - [Integration patterns](https://docs.upwell.com/integration-patterns.md): The cross-cutting conventions every integration needs - [Money & payload conventions](https://docs.upwell.com/conventions/money-and-payloads.md): Integer-cents money, the input/inputs body wrappers, and the authentication header — the request conventions every endpoint shares. - [Idempotency & retries](https://docs.upwell.com/conventions/idempotency-and-retries.md): The sourceSystem/sourceSystemId external key, per-resource POST duplicate semantics (including the carrier-invoice async dedup), and the fields that are required with no default. - [Document conventions](https://docs.upwell.com/conventions/documents.md): The sourceSystem/sourceSystemId pair rule, the two-step presigned upload (the only path that runs AI classification), and typing rate confirmations correctly. - [Working with addresses](https://docs.upwell.com/conventions/addresses.md): The address playbook: per-parent link direction, create/attach/update tasks, load-bearing address types, visibility in the app, the one-billing-address rule, and read-back paths. - [Deleting and archiving](https://docs.upwell.com/conventions/deletes-and-archiving.md): What DELETE actually does on each resource — hard vs. soft — and whether your external key is freed for reuse. - [Rules: three shapes, not two](https://docs.upwell.com/conventions/rules.md): The rules engine's three field shapes — action-only, DSL expression pair, and legacy structured criteria — and a worked DSL example. - [Troubleshooting Guide](https://docs.upwell.com/troubleshooting.md): Common issues and solutions for using the Upwell platform - [Use these docs with AI tools](https://docs.upwell.com/developer-guide/ai-tools.md): Machine-readable exports, an MCP server, and one-click handoffs so your AI assistant can read the Upwell docs while you build. - [Syncing foundation entities](https://docs.upwell.com/api-guides/syncing-foundation-entities.md): Push customers, carriers, shipments, and bills from your TMS to Upwell — the prerequisite data that makes AP and AR work. - [Exceptions](https://docs.upwell.com/concepts/exceptions.md): What an exception is, the lifecycle it moves through, the common types, and how open exceptions hold an invoice back from approval. - [How carrier invoices get approved](https://docs.upwell.com/concepts/approvals.md): The three ways a carrier invoice is approved — manual review, auto-approval rules, and external request-for-approval — and the exception gate that governs all of them. - [Submitting carrier invoices via API](https://docs.upwell.com/api-guides/carrier-invoice-submission.md): Create a carrier invoice, attach its documents, and let Upwell process it — the same way the email pipeline does. - [Knowing when a carrier invoice is processed](https://docs.upwell.com/api-guides/carrier-invoice-status.md): Determine processing state with the existing GET endpoints (polling) or outbound webhooks. No special status field required. - [Responding to a carrier-invoice approval request](https://docs.upwell.com/api-guides/carrier-invoice-approval.md): Resolve a pending carrier-invoice approval request from your integration by setting its status to SUCCEEDED or FAILED. - [Carrier invoice audit](https://docs.upwell.com/accounts-payable/carrier-invoice-audit.md): Learn how to manage and process carrier invoices using the payables screen - [Accounts receivable integration requirements](https://docs.upwell.com/api-reference/ar-overview.md): Keep customer invoice balances, statuses, statements, reminders, and online payments accurate by syncing a complete AR lifecycle. - [Managing customer invoices (AR) via API](https://docs.upwell.com/api-guides/customer-invoices.md): Create, update, and send customer invoices — the accounts-receivable counterpart to the carrier-invoice submission flow. - [Recording customer payments (remittances) via the API](https://docs.upwell.com/api-guides/customer-payments.md): Create, read, and reconcile customer payments (remittances) and their line items — how a remittance applies to your receivable invoices. - [Accounts Receivable Management](https://docs.upwell.com/accounts-receivable/receivables.md): How Upwell generates, delivers, and tracks customer invoices — and where the money-in workflow is automated. - [Remittances Management](https://docs.upwell.com/accounts-receivable/remittances.md): How customer payments get recorded, matched to invoices, and reconciled — cash application in Upwell. - [Payment Reminders](https://docs.upwell.com/accounts-receivable/reminders.md): Automated email follow-ups on open invoices — how Upwell chases receivables so your team doesn't have to. - [Shipper Profiles](https://docs.upwell.com/accounts-receivable/shipper-profiles.md): Customer records in Upwell — the shipper master data that invoicing, delivery, and collections are built on. - [Online Payments](https://docs.upwell.com/accounts-receivable/online-payments.md): Let customers pay invoices electronically through secure hosted payment links — and have those payments land in your AR workflow automatically. - [How documents flow through Upwell](https://docs.upwell.com/concepts/document-lifecycle.md): Where documents come from, how they get classified and attached, who can see them, and how they leave — the lifecycle of a POD, BOL, rate confirmation, or invoice PDF. - [Retrieving and managing shipment documents](https://docs.upwell.com/api-guides/shipment-documents.md): List, add, and remove the documents attached to a shipment (load) via the API — and how that differs from carrier-invoice documents. - [Purchase orders and vendor invoices via API](https://docs.upwell.com/api-guides/purchase-orders-and-vendor-invoices.md): Upload a purchase order or vendor invoice PDF, let Upwell parse it, then list, search, and update the resulting records. - [Outbound webhooks](https://docs.upwell.com/api-guides/webhooks.md): Subscribe to Upwell events, authenticate the deliveries, and read the payload envelope. - [Webhook event catalog](https://docs.upwell.com/api-guides/webhook-events.md): Every webhook trigger you can subscribe to in the Upwell dashboard, grouped by resource — the companion reference to the outbound webhooks guide. - [Navigation Guide](https://docs.upwell.com/user-interface/navigation-guide.md): Understanding the Upwell dashboard navigation and main sections - [Dashboard Overview](https://docs.upwell.com/user-interface/dashboard-overview.md): Understand the Upwell dashboard interface and its key components - [User Roles & Permissions](https://docs.upwell.com/user-interface/user-roles.md): Understanding user roles and access controls in the Upwell platform - [API Reference](https://docs.upwell.com/api-reference/introduction.md): Complete reference for the Upwell REST API - [Accounts payable API](https://docs.upwell.com/api-reference/ap-overview.md): The objects you touch to automate payables — what a carrier invoice, bill, and bill payment each do, and the order they happen in. - [Accounts receivable integration requirements](https://docs.upwell.com/api-reference/ar-overview.md): Keep customer invoice balances, statuses, statements, reminders, and online payments accurate by syncing a complete AR lifecycle. - [Endpoint index](https://docs.upwell.com/api-reference/endpoint-index.md): The parts of the API reference no guide walks through, grouped by what they do - [Vocabulary](https://docs.upwell.com/api-reference/vocabulary.md): Every enum value the API can produce — statuses, address types, document types, stop types — generated from the API schema rather than hand-maintained. - [Error handling](https://docs.upwell.com/api-reference/error-codes.md): The error shapes the Upwell API actually returns, the HTTP status codes that occur, real error messages and their fixes, and what is safe to retry. - [Get Many Carrier Payment Line Items](https://docs.upwell.com/api-reference/carrier-payment-line-items/get-many-carrier-payment-line-items.md): Query a list of carrier payment line items - [Create One Carrier Payment Line Item](https://docs.upwell.com/api-reference/carrier-payment-line-items/create-one-carrier-payment-line-item.md): Create a new carrier payment line item - [Get One Carrier Payment Line Item](https://docs.upwell.com/api-reference/carrier-payment-line-items/get-one-carrier-payment-line-item.md): Get a carrier payment line item by ID - [Update One Carrier Payment Line Item](https://docs.upwell.com/api-reference/carrier-payment-line-items/update-one-carrier-payment-line-item.md): Update a carrier payment line item by ID - [Delete One Carrier Payment Line Item](https://docs.upwell.com/api-reference/carrier-payment-line-items/delete-one-carrier-payment-line-item.md): Delete a carrier payment line item by ID - [Create Many Carrier Payment Line Items](https://docs.upwell.com/api-reference/carrier-payment-line-items/create-many-carrier-payment-line-items.md): Create multiple carrier payment line items at once - [Create One Vendor](https://docs.upwell.com/api-reference/vendors/create-one-vendor.md): Create a new vendor - [Search Vendors](https://docs.upwell.com/api-reference/vendors/search-vendors.md): Search for vendors based on Source System and Source System ID - [Get One Vendor](https://docs.upwell.com/api-reference/vendors/get-one-vendor.md): Get a vendor by ID - [Delete One Vendor](https://docs.upwell.com/api-reference/vendors/delete-one-vendor.md): Delete a vendor by ID - [Update One Vendor](https://docs.upwell.com/api-reference/vendors/update-one-vendor.md): Update a vendor by ID - [Create One Invoice Line Item](https://docs.upwell.com/api-reference/invoice-line-items/create-one-invoice-line-item.md): Create a new invoice line item - [Delete One Invoice Line Item](https://docs.upwell.com/api-reference/invoice-line-items/delete-one-invoice-line-item.md): Delete an invoice line item by ID - [Update One Invoice Line Item](https://docs.upwell.com/api-reference/invoice-line-items/update-one-invoice-line-item.md): Update an invoice line item by ID - [Set customer invoice email recipients by source system id](https://docs.upwell.com/api-reference/customers/set-customer-invoice-email-recipients-by-source-system-id.md): Replace the invoice email recipients for the customer identified by `sourceSystem` + `sourceSystemId` (query parameters). Use this to keep Upwell in sync when the AP contact changes in your TMS. - [Create Many Customers](https://docs.upwell.com/api-reference/customers/create-many-customers.md): Create multiple customers at once - [Get Many Customers](https://docs.upwell.com/api-reference/customers/get-many-customers.md): Query a list of customers - [Update One Customer By Source System Id](https://docs.upwell.com/api-reference/customers/update-one-customer-by-source-system-id.md): Update a customer by source system id - [Create One Customer](https://docs.upwell.com/api-reference/customers/create-one-customer.md): Create a new customer. - [Delete One Customer By Source System Id](https://docs.upwell.com/api-reference/customers/delete-one-customer-by-source-system-id.md): Delete a customer by source system id - [Search Customers](https://docs.upwell.com/api-reference/customers/search-customers.md): Search for customers based on specified criteria - [Get One Customer](https://docs.upwell.com/api-reference/customers/get-one-customer.md): Get a customer by ID - [Update One Customer](https://docs.upwell.com/api-reference/customers/update-one-customer.md): Update a customer by ID - [Delete One Customer](https://docs.upwell.com/api-reference/customers/delete-one-customer.md): Delete a customer by ID - [Set customer invoice email recipients by ID](https://docs.upwell.com/api-reference/customers/set-customer-invoice-email-recipients-by-id.md): Replace the invoice email recipients for the customer with this Upwell id. Same behavior as `PUT /api/rest/customer_delivery_recipients`: full-replacement list, every address validated (any malformed address rejects the request), only the email delivery method is written (created if missing) with ot… - [Get Many Carrier Invoices](https://docs.upwell.com/api-reference/carrier-invoices/get-many-carrier-invoices.md): Query a list of carrier invoices - [Create One Carrier Invoice](https://docs.upwell.com/api-reference/carrier-invoices/create-one-carrier-invoice.md): Create a new carrier invoice - [Get One Carrier Invoice](https://docs.upwell.com/api-reference/carrier-invoices/get-one-carrier-invoice.md): Get a carrier invoice by ID - [Update One Carrier Invoice](https://docs.upwell.com/api-reference/carrier-invoices/update-one-carrier-invoice.md): Update a carrier invoice by ID - [Delete One Carrier Invoice](https://docs.upwell.com/api-reference/carrier-invoices/delete-one-carrier-invoice.md): Delete a carrier invoice by ID - [Approve One Carrier Invoice](https://docs.upwell.com/api-reference/carrier-invoices/approve-one-carrier-invoice.md): Approve a carrier invoice by ID - [Create Many Carrier Invoices](https://docs.upwell.com/api-reference/carrier-invoices/create-many-carrier-invoices.md): Create multiple carrier invoices at once - [Get Many Carrier Invoice Documents](https://docs.upwell.com/api-reference/carrier-invoice-documents/get-many-carrier-invoice-documents.md): Query a list of carrier invoice documents - [Create Carrier Invoice Document](https://docs.upwell.com/api-reference/carrier-invoice-documents/create-carrier-invoice-document.md): Create a new carrier invoice document - [Delete Carrier Invoice Document](https://docs.upwell.com/api-reference/carrier-invoice-documents/delete-carrier-invoice-document.md): Delete a carrier invoice document by ID - [Generate Upload Presigned Url](https://docs.upwell.com/api-reference/documents/generate-upload-presigned-url.md): Generate a presigned URL for direct S3 file upload. - [Get One Document](https://docs.upwell.com/api-reference/documents/get-one-document.md): Get a document by id — the status check for API uploads. `status` of `UPLOAD_CONTENT_REJECTED` means the uploaded bytes failed content verification (not a valid PDF) and the document will never be parsed; re-upload with a new `sourceSystemId` (rejection is terminal: re-presigning the same `sourceSys… - [Update One Document](https://docs.upwell.com/api-reference/documents/update-one-document.md): Update a document by ID - [Get Many Addresses](https://docs.upwell.com/api-reference/addresses/get-many-addresses.md): Query a list of addresses - [Create One Address](https://docs.upwell.com/api-reference/addresses/create-one-address.md): Create a new address - [Get One Address](https://docs.upwell.com/api-reference/addresses/get-one-address.md): Get an address by ID - [Update One Address](https://docs.upwell.com/api-reference/addresses/update-one-address.md): Update an address by ID - [Delete One Address](https://docs.upwell.com/api-reference/addresses/delete-one-address.md): Delete an address by ID - [Get Many Carriers](https://docs.upwell.com/api-reference/carriers/get-many-carriers.md): Query a list of carriers - [Update One Carrier By Source System Id](https://docs.upwell.com/api-reference/carriers/update-one-carrier-by-source-system-id.md): Update a carrier by source system id - [Create One Carrier](https://docs.upwell.com/api-reference/carriers/create-one-carrier.md): Create a new carrier - [Delete One Carrier By Source System Id](https://docs.upwell.com/api-reference/carriers/delete-one-carrier-by-source-system-id.md): Delete a carrier by source system id - [Search Carriers](https://docs.upwell.com/api-reference/carriers/search-carriers.md): Search for carriers based on specified criteria - [Get One Carrier](https://docs.upwell.com/api-reference/carriers/get-one-carrier.md): Get a carrier by ID - [Update One Carrier](https://docs.upwell.com/api-reference/carriers/update-one-carrier.md): Update a carrier by ID - [Delete One Carrier](https://docs.upwell.com/api-reference/carriers/delete-one-carrier.md): Delete a carrier by ID - [Create Many Carriers](https://docs.upwell.com/api-reference/carriers/create-many-carriers.md): Create multiple carriers at once - [Create One Bill Line Item](https://docs.upwell.com/api-reference/bill-line-items/create-one-bill-line-item.md): Create a new bill line item - [Delete One Bill Line Item](https://docs.upwell.com/api-reference/bill-line-items/delete-one-bill-line-item.md): Delete an bill line item by ID - [Update One Bill Line Item](https://docs.upwell.com/api-reference/bill-line-items/update-one-bill-line-item.md): Update an bill line item by ID - [Get Many Stops](https://docs.upwell.com/api-reference/stops/get-many-stops.md): Query a list of stops - [Create One Stop](https://docs.upwell.com/api-reference/stops/create-one-stop.md): Create a new stop - [Get One Stop](https://docs.upwell.com/api-reference/stops/get-one-stop.md): Get a stop by ID - [Update One Stop](https://docs.upwell.com/api-reference/stops/update-one-stop.md): Update a stop by ID - [Delete One Stop](https://docs.upwell.com/api-reference/stops/delete-one-stop.md): Delete a stop by ID - [List Vendor Invoices](https://docs.upwell.com/api-reference/vendor-invoices/list-vendor-invoices.md): List recent vendor invoices (newest first). Optional `limit` query parameter caps the result count. - [Search Vendor Invoices By Source System](https://docs.upwell.com/api-reference/vendor-invoices/search-vendor-invoices-by-source-system.md): Find the vendor invoice(s) created from a document you uploaded, keyed by the `sourceSystem` + `sourceSystemId` you supplied at presign time. Records from a multi-document upload are included: the search matches the uploaded document's ids even when the vendor invoice was parsed from an automaticall… - [Get One Vendor Invoice](https://docs.upwell.com/api-reference/vendor-invoices/get-one-vendor-invoice.md): Get a parsed vendor invoice by id, including line items, party addresses, and the matched purchase order. - [Update One Vendor Invoice](https://docs.upwell.com/api-reference/vendor-invoices/update-one-vendor-invoice.md): Update parsed vendor invoice header fields. Body: `{ "input": { ...fields to set... } }` using the record's camelCase field names (amounts in integer cents). System-managed columns (ids, tenant/document linkage, party references, match state) are not updatable and are rejected. - [Update One Vendor Invoice Line Item](https://docs.upwell.com/api-reference/vendor-invoices/update-one-vendor-invoice-line-item.md): Update parsed vendor invoice line item fields. Body: `{ "input": { ...fields to set... } }` using the record's camelCase field names (amounts in integer cents). System-managed columns (ids, tenant/document linkage, party references, match state) are not updatable and are rejected. - [List Vendor Invoices By Document](https://docs.upwell.com/api-reference/vendor-invoices/list-vendor-invoices-by-document.md): Get the parsed vendor invoice(s) created from an uploaded document. Returns an empty list until parsing completes — poll after uploading to the presigned URL. If the uploaded PDF contained multiple documents it is split automatically and this returns one vendor invoice per document in the file, each… - [Get Many Document Reference Specifications](https://docs.upwell.com/api-reference/document-reference-specifications/get-many-document-reference-specifications.md): Query a list of document reference specifications - [Create One Document Reference Specification](https://docs.upwell.com/api-reference/document-reference-specifications/create-one-document-reference-specification.md): Create a new document reference specification - [Get One Document Reference Specification](https://docs.upwell.com/api-reference/document-reference-specifications/get-one-document-reference-specification.md): Get a document reference specification by ID - [Update One Document Reference Specification](https://docs.upwell.com/api-reference/document-reference-specifications/update-one-document-reference-specification.md): Update a document reference specification by ID - [Delete One Document Reference Specification](https://docs.upwell.com/api-reference/document-reference-specifications/delete-one-document-reference-specification.md): Delete a document reference specification by ID - [Get Many Customer Payments](https://docs.upwell.com/api-reference/customer-payments/get-many-customer-payments.md): Retrieve a list of customer payments - [Create One Customer Payment](https://docs.upwell.com/api-reference/customer-payments/create-one-customer-payment.md): Create a new customer payment - [Search Customer Payments](https://docs.upwell.com/api-reference/customer-payments/search-customer-payments.md): Search for customer payments based on specified criteria - [Get One Customer Payment](https://docs.upwell.com/api-reference/customer-payments/get-one-customer-payment.md): Retrieve details of a specific customer payment - [Update One Customer Payment](https://docs.upwell.com/api-reference/customer-payments/update-one-customer-payment.md): Update details of a specific customer payment - [Delete One Customer Payment](https://docs.upwell.com/api-reference/customer-payments/delete-one-customer-payment.md): Delete a specific customer payment - [Create Many Customer Payments](https://docs.upwell.com/api-reference/customer-payments/create-many-customer-payments.md): Create multiple customer payments at once - [Create Many Bills](https://docs.upwell.com/api-reference/bills/create-many-bills.md): Create multiple bills at once - [Get Many Bills](https://docs.upwell.com/api-reference/bills/get-many-bills.md): Query a list of bills - [Create One Bill](https://docs.upwell.com/api-reference/bills/create-one-bill.md): Create a new bill - [Search Bills](https://docs.upwell.com/api-reference/bills/search-bills.md): Advanced search for bills with complex filtering criteria - [Get One Bill](https://docs.upwell.com/api-reference/bills/get-one-bill.md): Get a bill by ID - [Update One Bill](https://docs.upwell.com/api-reference/bills/update-one-bill.md): Update a bill by ID - [Delete One Bill](https://docs.upwell.com/api-reference/bills/delete-one-bill.md): Delete a bill by ID - [List Purchase Orders By Document](https://docs.upwell.com/api-reference/purchase-orders/list-purchase-orders-by-document.md): Get the parsed purchase order(s) created from an uploaded document. Returns an empty list until parsing completes — poll after uploading to the presigned URL. If the uploaded PDF contained multiple documents it is split automatically and this returns one purchase order per document in the file, each… - [List Purchase Orders](https://docs.upwell.com/api-reference/purchase-orders/list-purchase-orders.md): List recent purchase orders (newest first). Optional `limit` query parameter caps the result count. - [Search Purchase Orders By Source System](https://docs.upwell.com/api-reference/purchase-orders/search-purchase-orders-by-source-system.md): Find the purchase order(s) created from a document you uploaded, keyed by the `sourceSystem` + `sourceSystemId` you supplied at presign time. Records from a multi-document upload are included: the search matches the uploaded document's ids even when the purchase order was parsed from an automaticall… - [Get One Purchase Order](https://docs.upwell.com/api-reference/purchase-orders/get-one-purchase-order.md): Get a parsed purchase order by id, including line items and party addresses. - [Update One Purchase Order](https://docs.upwell.com/api-reference/purchase-orders/update-one-purchase-order.md): Update parsed purchase order header fields. Body: `{ "input": { ...fields to set... } }` using the record's camelCase field names (amounts in integer cents). System-managed columns (ids, tenant/document linkage, party references, match state) are not updatable and are rejected. - [Update One Purchase Order Line Item](https://docs.upwell.com/api-reference/purchase-orders/update-one-purchase-order-line-item.md): Update parsed purchase order line item fields. Body: `{ "input": { ...fields to set... } }` using the record's camelCase field names (amounts in integer cents). System-managed columns (ids, tenant/document linkage, party references, match state) are not updatable and are rejected. - [Create Many Customer Payment Line Items](https://docs.upwell.com/api-reference/customer-payment-line-items/create-many-customer-payment-line-items.md): Create multiple customer payment line items at once - [Get Many Customer Payment Line Items](https://docs.upwell.com/api-reference/customer-payment-line-items/get-many-customer-payment-line-items.md): Retrieve a list of customer payment line items - [Create One Customer Payment Line Item](https://docs.upwell.com/api-reference/customer-payment-line-items/create-one-customer-payment-line-item.md): Create a new customer payment line item - [Search Customer Payment Line Items](https://docs.upwell.com/api-reference/customer-payment-line-items/search-customer-payment-line-items.md): Search for customer payment line items based on specified criteria - [Get One Customer Payment Line Item](https://docs.upwell.com/api-reference/customer-payment-line-items/get-one-customer-payment-line-item.md): Retrieve details of a specific customer payment line item - [Update One Customer Payment Line Item](https://docs.upwell.com/api-reference/customer-payment-line-items/update-one-customer-payment-line-item.md): Update details of a specific customer payment line item - [Delete One Customer Payment Line Item](https://docs.upwell.com/api-reference/customer-payment-line-items/delete-one-customer-payment-line-item.md): Delete a specific customer payment line item - [Get Many Rules](https://docs.upwell.com/api-reference/rules/get-many-rules.md): Query a list of rules - [Create One Rule](https://docs.upwell.com/api-reference/rules/create-one-rule.md): Create a new rule - [Get One Rule](https://docs.upwell.com/api-reference/rules/get-one-rule.md): Get a rule by ID - [Update One Rule](https://docs.upwell.com/api-reference/rules/update-one-rule.md): Update a rule by ID - [Delete One Rule](https://docs.upwell.com/api-reference/rules/delete-one-rule.md): Delete a rule by ID - [Link invoice to shipment](https://docs.upwell.com/api-reference/invoice-shipments/link-invoice-to-shipment.md): Create an association between an invoice and a shipment. - [Unlink invoice from shipment](https://docs.upwell.com/api-reference/invoice-shipments/unlink-invoice-from-shipment.md): Remove the association between an invoice and a shipment. - [List companies](https://docs.upwell.com/api-reference/companies/list-companies.md): Retrieve a paginated list of companies with optional filtering and sorting. - [Create company](https://docs.upwell.com/api-reference/companies/create-company.md): Create a new company record. - [Get company](https://docs.upwell.com/api-reference/companies/get-company.md): Retrieve a single company by its ID. - [Update company](https://docs.upwell.com/api-reference/companies/update-company.md): Update an existing company by its ID. - [Delete company](https://docs.upwell.com/api-reference/companies/delete-company.md): Delete a company by its ID. - [Get Many Invoices](https://docs.upwell.com/api-reference/invoices/get-many-invoices.md): Query a list of invoices - [Update One Invoice By Source System Id](https://docs.upwell.com/api-reference/invoices/update-one-invoice-by-source-system-id.md): Update an invoice by source system id - [Create One Invoice](https://docs.upwell.com/api-reference/invoices/create-one-invoice.md): Create a new invoice. - [Delete One Invoice By Source System Id](https://docs.upwell.com/api-reference/invoices/delete-one-invoice-by-source-system-id.md): Delete an invoice by source system id - [Search Invoices](https://docs.upwell.com/api-reference/invoices/search-invoices.md): Search invoices with pagination, ordering, and a Hasura boolean `where` expression. To find an invoice by external key, filter `sourceSystem` and `sourceSystemId` under `where`. - [Get One Invoice](https://docs.upwell.com/api-reference/invoices/get-one-invoice.md): Get an invoice by ID - [Update One Invoice](https://docs.upwell.com/api-reference/invoices/update-one-invoice.md): Update an invoice by ID - [Delete One Invoice](https://docs.upwell.com/api-reference/invoices/delete-one-invoice.md): Delete an invoice by ID - [List invoices ready for approval](https://docs.upwell.com/api-reference/invoice-approval/list-invoices-ready-for-approval.md): Retrieve a paginated list of customer invoices ready for approval: `CREATED` status, `approvedToSend` false, and no exception in `OPEN` or `IN_PROGRESS`. - [List invoices ready to send](https://docs.upwell.com/api-reference/invoice-approval/list-invoices-ready-to-send.md): Retrieve a paginated list of customer invoices in the Ready To Send queue: `CREATED` status, not on hold, a customer assigned, no exception in `OPEN` or `IN_PROGRESS`, not scheduled, not manual portal work, and not owned by a customer's auto-send email rule. `approvedToSend` may be either value. Thi… - [Approve customer invoice](https://docs.upwell.com/api-reference/invoice-approval/approve-customer-invoice.md): Approve a customer invoice for sending. If the invoice has open exceptions, approval will fail unless overrideExceptions=true is passed, which will close all open exceptions and approve the invoice. - [Get Many Invoice Documents](https://docs.upwell.com/api-reference/invoice-documents/get-many-invoice-documents.md): Query a list of invoice documents - [Create Invoice Document](https://docs.upwell.com/api-reference/invoice-documents/create-invoice-document.md): Create a new invoice document - [Delete Invoice Document](https://docs.upwell.com/api-reference/invoice-documents/delete-invoice-document.md): Delete an invoice document by ID - [List carrier invoice approval requests](https://docs.upwell.com/api-reference/carrier-invoice-approval-requests/list-carrier-invoice-approval-requests.md): Retrieve a paginated list of carrier invoice approval requests with optional filtering and sorting. - [Get carrier invoice approval request](https://docs.upwell.com/api-reference/carrier-invoice-approval-requests/get-carrier-invoice-approval-request.md): Retrieve a single carrier invoice approval request by its ID. - [Update Carrier Invoice Approval Request](https://docs.upwell.com/api-reference/carrier-invoice-approval-requests/update-carrier-invoice-approval-request.md): Update a carrier invoice approval request status and response payload - [Create a shipment line item](https://docs.upwell.com/api-reference/create-a-shipment-line-item.md): Add a commodity line to a shipment. Each line carries the freight detail for one commodity: description, packaging and handling units, weight, dimensions, NMFC number and class, and the hazmat flag. `shipmentId` is required and must reference a shipment in your organization. - [Get a shipment line item](https://docs.upwell.com/api-reference/get-a-shipment-line-item.md): Retrieve a single shipment line item by its `sli_` ID. - [Delete a shipment line item](https://docs.upwell.com/api-reference/delete-a-shipment-line-item.md): Delete a shipment line item by its `sli_` ID. - [Update a shipment line item](https://docs.upwell.com/api-reference/update-a-shipment-line-item.md): Update a shipment line item by its `sli_` ID. Send only the fields you want to change — omitted fields keep their stored values. - [Search Shipment Line Items](https://docs.upwell.com/api-reference/shipment-line-items/search-shipment-line-items.md): Search for shipment line items by source system and source system ID - [Get Many Shipments](https://docs.upwell.com/api-reference/shipments/get-many-shipments.md): Query a list of shipments - [Update One Shipment By Source System Id](https://docs.upwell.com/api-reference/shipments/update-one-shipment-by-source-system-id.md): Update a shipment by source system id. - [Create One Shipment](https://docs.upwell.com/api-reference/shipments/create-one-shipment.md): Create a new shipment. - [Delete One Shipment By Source System Id](https://docs.upwell.com/api-reference/shipments/delete-one-shipment-by-source-system-id.md): Delete a shipment by source system id - [Search Shipments](https://docs.upwell.com/api-reference/shipments/search-shipments.md): Search for shipments based on specified criteria - [Get One Shipment](https://docs.upwell.com/api-reference/shipments/get-one-shipment.md): Get a shipment by ID - [Update One Shipment](https://docs.upwell.com/api-reference/shipments/update-one-shipment.md): Update a shipment by ID. - [Delete One Shipment](https://docs.upwell.com/api-reference/shipments/delete-one-shipment.md): Delete a shipment by ID - [Create Shipment Note](https://docs.upwell.com/api-reference/shipments/create-shipment-note.md): Append a note to a shipment. Send `{ "content": "…" }`; the note is always owned by the shipment in the path. - [Get Many Shipment Documents](https://docs.upwell.com/api-reference/shipment-documents/get-many-shipment-documents.md): Query a list of shipment documents - [Create Shipment Document](https://docs.upwell.com/api-reference/shipment-documents/create-shipment-document.md): Create a new shipment document - [Delete Shipment Document](https://docs.upwell.com/api-reference/shipment-documents/delete-shipment-document.md): Delete a shipment document by ID - [List bill payments](https://docs.upwell.com/api-reference/bill-payments/list-bill-payments.md): Retrieve a paginated list of bill payments with optional filtering and sorting. - [Create bill payment](https://docs.upwell.com/api-reference/bill-payments/create-bill-payment.md): Create a new bill payment record. - [Search bill payments](https://docs.upwell.com/api-reference/bill-payments/search-bill-payments.md): Search for bill payments by source system and source system ID. - [Get bill payment](https://docs.upwell.com/api-reference/bill-payments/get-bill-payment.md): Retrieve a single bill payment by its ID. - [Update bill payment](https://docs.upwell.com/api-reference/bill-payments/update-bill-payment.md): Update an existing bill payment by its ID. - [Delete bill payment](https://docs.upwell.com/api-reference/bill-payments/delete-bill-payment.md): Delete a bill payment by its ID. - [Handle carrier invoice events](https://docs.upwell.com/api-reference/webhooks/handle-carrier-invoice-events.md): Triggered when a carrier invoice record is created, updated, or deleted - [Handle carrier invoice status approved events](https://docs.upwell.com/api-reference/webhooks/handle-carrier-invoice-status-approved-events.md): Triggered when the `status` of a carrier invoice record is updated to `approved`. - [Handle carrier invoice status portal exception events](https://docs.upwell.com/api-reference/webhooks/handle-carrier-invoice-status-portal-exception-events.md): Triggered when the `status` of a carrier invoice record is updated to `portal_exception`. - [Handle carrier invoice shipment creation events](https://docs.upwell.com/api-reference/webhooks/handle-carrier-invoice-shipment-creation-events.md): Triggered when a carrier invoice is linked to a newly created shipment - [Handle carrier invoice shipment update events](https://docs.upwell.com/api-reference/webhooks/handle-carrier-invoice-shipment-update-events.md): Triggered when a carrier invoice's shipment information is updated - [Handle payments events](https://docs.upwell.com/api-reference/webhooks/handle-payments-events.md): Triggered when a payments record is created, updated, or deleted. - [Handles invoice events](https://docs.upwell.com/api-reference/webhooks/handles-invoice-events.md): Triggered when an invoice record is created, updated, or deleted. - [Handle invoice status portal exception events](https://docs.upwell.com/api-reference/webhooks/handle-invoice-status-portal-exception-events.md): Triggered when the `status` of an invoice record is updated to `portal_exception`. - [Handle invoice status sent events](https://docs.upwell.com/api-reference/webhooks/handle-invoice-status-sent-events.md): Triggered when the `status` of an invoice record is updated to `sent`. - [Handles remittance events](https://docs.upwell.com/api-reference/webhooks/handles-remittance-events.md): Triggered when a remittance record is created, updated, or deleted. - [Handle shipment documents events](https://docs.upwell.com/api-reference/webhooks/handle-shipment-documents-events.md): Triggered when a shipment document file associations record is created, updated, or deleted. - [Changelog](https://docs.upwell.com/changelog.md): New features, improvements, and fixes across the Upwell platform and API. ## OpenAPI Specs - [openapi](/api-reference/openapi.json) This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.