Skip to content

MVMNT API (1.0.0)

The MVMNT API enables you to automate freight brokerage workflows by integrating directly with our Transportation Management System.

Authentication

OAuth 2.0 client credentials flow. See Authentication Guide for details.

Token Endpoint

POST https://api.mvmnt.io/oauth2/token

Request

Headers:

Content-Type: application/x-www-form-urlencoded

Body Parameters:

grant_type=client_credentials
client_id=YOUR_CLIENT_ID
client_secret=YOUR_CLIENT_SECRET

Example Request

curl -X POST https://api.mvmnt.io/oauth2/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials" \
  -d "client_id=YOUR_CLIENT_ID" \
  -d "client_secret=YOUR_CLIENT_SECRET"

Success Response

Status: 200 OK

{
  "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
  "token_type": "Bearer",
  "expires_in": 3600
}

Response Fields:

  • access_token: JWT Bearer token to use for API requests
  • token_type: Always Bearer
  • expires_in: Token lifetime in seconds (3600 = 1 hour)
Download OpenAPI description
Overview
Languages
Servers
Mock server
https://docs.mvmnt.io/_mock/apis/openapi/
Production
https://api.mvmnt.io/v1/

Companies

Operations

Carrier Contacts

Operations

Carriers

Operations

Carrier Factors

Operations

Carrier Payment Methods

Operations

Customer Contacts

Operations

Customers

Operations

Locations

Operations

Location Contacts

Operations

Payment Terms

Operations

Teams

Operations

Users

Operations

Vendors

Operations

Vendor Contacts

Operations

Vendor Payment Methods

Operations

Saved Searches

Operations

Filter saved searches

Request

Filter saved searches using comprehensive query criteria with AND/OR logic and multiple operators. Supports complex filtering similar to GraphQL capabilities. Returns only saved searches accessible to the authenticated user (either owned by them or public).

Security
BearerAuth
Bodyapplication/jsonrequired
filterobject(SavedSearchFilter)
Example: {"preferenceType":{"equalTo":"SHIPMENT"},"isPublic":{"equalTo":true}}
pageSizeinteger[ 1 .. 250 ]

Number of results per page

Default 50
Example: 50
cursorstring

Pagination cursor for next page

curl -i -X POST \
  https://docs.mvmnt.io/_mock/apis/openapi/saved-searches/filter \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "filter": {
      "preferenceType": {
        "equalTo": "SHIPMENT"
      },
      "isPublic": {
        "equalTo": true
      }
    },
    "pageSize": 50
  }'

Responses

Successful response

Bodyapplication/json
dataArray of objects(SavedSearch)
paginationobject(PaginationInfo)
Response
application/json
{ "data": [ {} ], "pagination": { "pageSize": 50, "hasNextPage": true, "hasPreviousPage": false, "endCursor": "eyJpZCI6IjU1MGU4NDAwLWUyOWItNDFkNC1hNzE2LTQ0NjY1NTQ0MDAwMCJ9" } }

Create saved search

Request

Create a new saved search configuration in your organization. The saved search can be used to quickly apply predefined search criteria, sorting, and display preferences.

The saved search will be owned by the authenticated user unless otherwise specified.

Security
BearerAuth
Bodyapplication/jsonrequired
namestringrequired

Display name for the saved search (required)

Example: "Active Shipments - West Coast"
preferenceTypestringrequired
Enum"SHIPMENT""INVOICE""BILL""USER""CUSTOMER""VENDOR""QUOTE""COMMISSION""CARRIER""INVOICE_PAYMENT"
Example: "SHIPMENT"
jsonValueobjectrequired
Example: {"searchCriteria":{"filters":[{"field":"status","searchCriteria":{"operator":"ONE_OF","values":["ACTIVE","PENDING"]}}]},"sorting":[{"id":"createdAt","desc":true}],"columnVisibility":{"status":true,"createdAt":true},"columnOrder":["id","status","createdAt"]}
jsonValue.​searchCriteriaobject

Search criteria configuration

Example: {"filters":[{"field":"status","searchCriteria":{"operator":"ONE_OF","values":["ACTIVE","PENDING"]}}]}
jsonValue.​sortingArray of objects

Sort configuration

Example: [{"id":"createdAt","desc":true}]
jsonValue.​columnVisibilityobject

Column visibility settings (key is column name, value is visibility)

Example: {"status":true,"createdAt":true}
jsonValue.​columnOrderArray of strings

Order of columns for display

Example: ["id","status","createdAt"]
isPublicboolean

Whether this saved search is visible to all users in the organization

Default false
Example: true
pinnedboolean

Whether this saved search is pinned for quick access

Default false
Example: true
groupIdstring(uuid)

Optional group this saved search belongs to

curl -i -X POST \
  https://docs.mvmnt.io/_mock/apis/openapi/saved-searches \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "Active Shipments - West Coast",
    "preferenceType": "SHIPMENT",
    "jsonValue": {
      "searchCriteria": {
        "filters": [
          {
            "field": "status",
            "searchCriteria": {
              "operator": "ONE_OF",
              "values": [
                "ACTIVE",
                "PENDING"
              ]
            }
          }
        ]
      },
      "sorting": [
        {
          "id": "createdAt",
          "desc": true
        }
      ]
    },
    "isPublic": true,
    "pinned": true
  }'

Responses

Saved search created successfully

Bodyapplication/json
objectstringread-only

Object type identifier

Value"SAVED_SEARCH"
Example: "SAVED_SEARCH"
idstring(uuid)read-onlyrequired

Unique saved search identifier

Example: "550e8400-e29b-41d4-a716-446655440000"
namestringrequired

Display name for the saved search

Example: "Active Shipments - West Coast"
preferenceTypestringrequired
Enum"SHIPMENT""INVOICE""BILL""USER""CUSTOMER""VENDOR""QUOTE""COMMISSION""CARRIER""INVOICE_PAYMENT"
Example: "SHIPMENT"
jsonValueobject
Example: {"searchCriteria":{"filters":[{"field":"status","searchCriteria":{"operator":"ONE_OF","values":["ACTIVE","PENDING"]}}]},"sorting":[{"id":"createdAt","desc":true}],"columnVisibility":{"status":true,"createdAt":true},"columnOrder":["id","status","createdAt"]}
isPublicboolean or null

Whether this saved search is visible to all users in the organization. If false or null, only the owner can see it.

Example: true
pinnedboolean or null

Whether this saved search is pinned for quick access

Example: true
ownedByUserstring or null(uuid)read-only

User ID who owns this saved search. Null means it's an organization-level saved search.

Example: "550e8400-e29b-41d4-a716-446655440001"
groupIdstring or null(uuid)

Optional group this saved search belongs to

Example: null
createdAtstring(date-time)read-onlyrequired

Timestamp when saved search was created

Example: "2025-01-15T10:00:00Z"
updatedAtstring(date-time)read-onlyrequired

Timestamp when saved search was last updated

Example: "2025-01-15T14:30:00Z"
Response
application/json
{ "object": "SAVED_SEARCH", "id": "550e8400-e29b-41d4-a716-446655440000", "name": "Active Shipments - West Coast", "preferenceType": "SHIPMENT", "jsonValue": { "searchCriteria": {}, "sorting": [], "columnVisibility": {}, "columnOrder": [] }, "isPublic": true, "pinned": true, "ownedByUser": "550e8400-e29b-41d4-a716-446655440001", "groupId": null, "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }

Get saved search

Request

Retrieve a saved search by ID. You can only retrieve saved searches that you own or that are public in your organization.

Security
BearerAuth
Path
idstring(uuid)required

Saved search UUID

curl -i -X GET \
  'https://docs.mvmnt.io/_mock/apis/openapi/saved-searches/{id}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Successful response

Bodyapplication/json
objectstringread-only

Object type identifier

Value"SAVED_SEARCH"
Example: "SAVED_SEARCH"
idstring(uuid)read-onlyrequired

Unique saved search identifier

Example: "550e8400-e29b-41d4-a716-446655440000"
namestringrequired

Display name for the saved search

Example: "Active Shipments - West Coast"
preferenceTypestringrequired
Enum"SHIPMENT""INVOICE""BILL""USER""CUSTOMER""VENDOR""QUOTE""COMMISSION""CARRIER""INVOICE_PAYMENT"
Example: "SHIPMENT"
jsonValueobject
Example: {"searchCriteria":{"filters":[{"field":"status","searchCriteria":{"operator":"ONE_OF","values":["ACTIVE","PENDING"]}}]},"sorting":[{"id":"createdAt","desc":true}],"columnVisibility":{"status":true,"createdAt":true},"columnOrder":["id","status","createdAt"]}
isPublicboolean or null

Whether this saved search is visible to all users in the organization. If false or null, only the owner can see it.

Example: true
pinnedboolean or null

Whether this saved search is pinned for quick access

Example: true
ownedByUserstring or null(uuid)read-only

User ID who owns this saved search. Null means it's an organization-level saved search.

Example: "550e8400-e29b-41d4-a716-446655440001"
groupIdstring or null(uuid)

Optional group this saved search belongs to

Example: null
createdAtstring(date-time)read-onlyrequired

Timestamp when saved search was created

Example: "2025-01-15T10:00:00Z"
updatedAtstring(date-time)read-onlyrequired

Timestamp when saved search was last updated

Example: "2025-01-15T14:30:00Z"
Response
application/json
{ "object": "SAVED_SEARCH", "id": "550e8400-e29b-41d4-a716-446655440000", "name": "Active Shipments - West Coast", "preferenceType": "SHIPMENT", "jsonValue": { "searchCriteria": {}, "sorting": [], "columnVisibility": {}, "columnOrder": [] }, "isPublic": true, "pinned": true, "ownedByUser": "550e8400-e29b-41d4-a716-446655440001", "groupId": null, "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }

Update saved search

Request

Partially update a saved search. Only provided fields will be updated. You can only update saved searches that you own.

Security
BearerAuth
Path
idstring(uuid)required

Saved search UUID

Bodyapplication/jsonrequired
namestring

Display name for the saved search

Example: "Updated Shipments View"
jsonValueobject
Example: {"searchCriteria":{"filters":[{"field":"status","searchCriteria":{"operator":"ONE_OF","values":["ACTIVE","PENDING"]}}]},"sorting":[{"id":"createdAt","desc":true}],"columnVisibility":{"status":true,"createdAt":true},"columnOrder":["id","status","createdAt"]}
isPublicboolean or null

Whether this saved search is visible to all users

Example: true
pinnedboolean or null

Whether this saved search is pinned for quick access

Example: false
groupIdstring or null(uuid)

Optional group this saved search belongs to

Example: null
curl -i -X PATCH \
  'https://docs.mvmnt.io/_mock/apis/openapi/saved-searches/{id}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "Updated Shipments View",
    "isPublic": true,
    "pinned": false
  }'

Responses

Saved search updated successfully

Bodyapplication/json
objectstringread-only

Object type identifier

Value"SAVED_SEARCH"
Example: "SAVED_SEARCH"
idstring(uuid)read-onlyrequired

Unique saved search identifier

Example: "550e8400-e29b-41d4-a716-446655440000"
namestringrequired

Display name for the saved search

Example: "Active Shipments - West Coast"
preferenceTypestringrequired
Enum"SHIPMENT""INVOICE""BILL""USER""CUSTOMER""VENDOR""QUOTE""COMMISSION""CARRIER""INVOICE_PAYMENT"
Example: "SHIPMENT"
jsonValueobject
Example: {"searchCriteria":{"filters":[{"field":"status","searchCriteria":{"operator":"ONE_OF","values":["ACTIVE","PENDING"]}}]},"sorting":[{"id":"createdAt","desc":true}],"columnVisibility":{"status":true,"createdAt":true},"columnOrder":["id","status","createdAt"]}
isPublicboolean or null

Whether this saved search is visible to all users in the organization. If false or null, only the owner can see it.

Example: true
pinnedboolean or null

Whether this saved search is pinned for quick access

Example: true
ownedByUserstring or null(uuid)read-only

User ID who owns this saved search. Null means it's an organization-level saved search.

Example: "550e8400-e29b-41d4-a716-446655440001"
groupIdstring or null(uuid)

Optional group this saved search belongs to

Example: null
createdAtstring(date-time)read-onlyrequired

Timestamp when saved search was created

Example: "2025-01-15T10:00:00Z"
updatedAtstring(date-time)read-onlyrequired

Timestamp when saved search was last updated

Example: "2025-01-15T14:30:00Z"
Response
application/json
{ "object": "SAVED_SEARCH", "id": "550e8400-e29b-41d4-a716-446655440000", "name": "Active Shipments - West Coast", "preferenceType": "SHIPMENT", "jsonValue": { "searchCriteria": {}, "sorting": [], "columnVisibility": {}, "columnOrder": [] }, "isPublic": true, "pinned": true, "ownedByUser": "550e8400-e29b-41d4-a716-446655440001", "groupId": null, "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }

Delete saved search

Request

Permanently delete a saved search. You can only delete saved searches that you own.

Security
BearerAuth
Path
idstring(uuid)required

Saved search UUID

curl -i -X DELETE \
  'https://docs.mvmnt.io/_mock/apis/openapi/saved-searches/{id}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Saved search deleted successfully

Response
No content

Event Notifications

Webhooks