OneRail Organization API
The Organization API from OneRail — 80 operation(s) for organization.
The Organization API from OneRail — 80 operation(s) for organization.
openapi: 3.2.0
info:
version: 1.0.0
title: OneRail Operation Dashboard Organization API
description: Defines Operations Dashboard APIs
license:
name: UNLICENSED
url: ''
servers:
- url: /
description: Default relative server URL
security:
- bearer: []
tags:
- name: Organization
paths:
/v1/organizations:
get:
x-exegesis-controller: Organization
summary: Get all organizations user has access to
operationId: getAllOrganizations
tags:
- Organization
parameters:
- name: name
in: query
description: Partial Organization name
required: false
schema:
type: string
minLength: 3
- name: active
in: query
required: false
description: Filter by active status
schema:
type: boolean
- name: type
in: query
required: false
description: Shipper or LP
schema:
type: string
enum:
- LP
- SHIPPER
- name: offset
in: query
description: Number of items to skip before returning the results.
required: true
schema:
type: integer
minimum: 0
default: 0
- name: limit
in: query
description: Maximum number of items to return.
required: true
schema:
type: integer
minimum: 1
default: 20
- name: sortby
in: query
description: Field to sort by
required: false
schema:
type: string
- name: order
in: query
description: Sort order
required: false
schema:
type: string
default: DESC
enum:
- ASC
- DESC
responses:
'200':
description: Organization Records
content:
application/json:
schema:
allOf:
- $ref: '#/paths/~1v1~1api-auths/get/responses/200/content/application~1json/schema/allOf/0'
- type: object
properties:
data:
type: array
items:
$ref: '#/paths/~1v1~1organization~1%7BorganizationId%7D/get/responses/200/content/application~1json/schema'
default:
$ref: '#/paths/~1v1~1routes/get/responses/404'
/v2/organizations:
get:
x-exegesis-controller: Organization
summary: Get all organizations user has access to, with reduced payload
operationId: getAllV2
tags:
- Organization
parameters:
- name: offset
in: query
description: Number of items to skip before returning the results.
required: true
schema:
type: integer
minimum: 0
default: 0
- name: limit
in: query
description: Maximum number of items to return.
required: true
schema:
type: integer
minimum: 1
default: 20
- name: sortby
in: query
description: Field to sort by
required: false
schema:
type: string
- name: order
in: query
description: Sort order
required: false
schema:
type: string
default: DESC
enum:
- ASC
- DESC
- name: search
in: query
description: Search term
required: false
schema:
type: string
- name: active
in: query
description: Filter by activeness status (optional)
required: false
schema:
type: boolean
responses:
'200':
description: Organization Records
content:
application/json:
schema:
allOf:
- $ref: '#/paths/~1v1~1api-auths/get/responses/200/content/application~1json/schema/allOf/0'
- type: object
properties:
data:
type: array
items:
type: object
description: Organization
properties:
id:
type: string
format: uuid
name:
type: string
active:
type: boolean
organizationTypes:
type: array
items:
type: string
organizationTree:
$ref: '#/paths/~1v1~1organization/post/responses/200/content/application~1json/schema/properties/organizationTree'
default:
$ref: '#/paths/~1v1~1routes/get/responses/404'
/v3/organizations:
post:
x-exegesis-controller: Organization
summary: Get all organizations user has access to, with reduced payload
operationId: listOrganizationsV3
tags:
- Organization
requestBody:
required: true
content:
application/json:
schema:
type: object
description: Query parameters for listing organizations
required:
- offset
- limit
properties:
offset:
type: integer
minimum: 0
default: 0
description: Number of items to skip before returning the results.
limit:
type: integer
minimum: 1
default: 20
description: Maximum number of items to return.
sortby:
type: string
description: Field to sort by
order:
type: string
default: DESC
enum:
- ASC
- DESC
description: Sort order
search:
type: string
description: Search term
active:
type: boolean
description: Filter by activeness status (optional)
organizationIds:
type: array
items:
type: string
format: uuid
description: 'Inclusive allowlist of organization IDs to return. Results are still constrained by the caller’s access permissions.
'
organizationTypes:
type: array
items:
type: string
format: uuid
description: Filter by organization types IDs (optional)
parentOrganization:
type: string
format: uuid
description: Filter by parent organization ID (optional)
dateCreated:
type: object
properties:
from:
type: string
format: date
description: Start date (YYYY-MM-DD)
to:
type: string
format: date
description: End date (YYYY-MM-DD)
description: Filter by creation date range (optional)
onboardingStatus:
type: string
enum:
- discovery
- in progress
- completed
description: Filter by onboarding status (optional)
responses:
'200':
description: Organization Records
content:
application/json:
schema:
allOf:
- $ref: '#/paths/~1v1~1api-auths/get/responses/200/content/application~1json/schema/allOf/0'
- type: object
additionalProperties: false
required:
- data
properties:
data:
type: array
items:
type: object
description: Organization (V3 reduced payload)
additionalProperties: false
required:
- id
- name
- active
- organizationTypes
properties:
id:
type: string
format: uuid
name:
type: string
active:
type: boolean
createdAt:
type: string
format: date-time
onboardingStatus:
type:
- string
- 'null'
organizationTypes:
type:
- array
- 'null'
items:
type: string
organizationTree:
type: object
description: Organization tree summary (V3)
additionalProperties: false
required:
- id
properties:
id:
type: string
format: uuid
name:
type: string
description: Organization name (tree context)
parentOrganization:
$ref: '#/paths/~1v3~1organizations/post/responses/200/content/application~1json/schema/allOf/1/properties/data/items/properties/organizationTree/properties/rootOrganization'
rootOrganization:
type: object
description: Parent organization summary (V3)
additionalProperties: false
required:
- id
properties:
id:
type: string
format: uuid
name:
type:
- string
- 'null'
description: Parent organization name (may be null if not resolved)
default:
$ref: '#/paths/~1v1~1routes/get/responses/404'
/v1/organizations/users:
post:
x-exegesis-controller: Organization
summary: Search Users in different organizations
operationId: searchUsers
tags:
- Organization
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- offset
- limit
properties:
offset:
description: Number of items to skip before returning the results.
type: integer
minimum: 0
example: 0
limit:
description: Maximum number of items to return.
type: integer
minimum: 1
example: 20
sortby:
description: Field to sort by
type: string
order:
description: Sort order
type: string
default: DESC
enum:
- ASC
- DESC
search:
description: String to search
type: string
organizationId:
description: organizationId to check permission for
type:
- string
- 'null'
format: uuid
permission:
description: Restrict results to users holding this permission in the organization.
type:
- string
- 'null'
filter:
description: Filters to apply
type: array
items:
type: object
required:
- field
- value
properties:
field:
type: string
enum:
- emailAddress
- firstName
- lastName
value:
type: string
responses:
'200':
description: User Records
content:
application/json:
schema:
allOf:
- $ref: '#/paths/~1v1~1api-auths/get/responses/200/content/application~1json/schema/allOf/0'
- type: object
properties:
data:
type: array
items:
type: object
description: User
required:
- emailAddress
- firstName
- lastName
- organizationId
properties:
id:
type: string
createdById:
type: string
emailAddress:
type: string
format: email
firstName:
type: string
lastName:
type: string
phoneNumber:
type:
- string
- 'null'
active:
type: boolean
driver:
$ref: '#/paths/~1v1~1login/post/responses/200/content/application~1json/schema/allOf/1/properties/driver'
title:
type:
- string
- 'null'
organizationId:
type: string
format: uuid
roles:
type: array
items:
$ref: '#/paths/~1v1~1login/post/responses/200/content/application~1json/schema/allOf/1/properties/roles/items'
employeeId:
type:
- string
- 'null'
fleetId:
type:
- string
- 'null'
mvrCertified:
type: boolean
default: false
organizations:
type: array
items:
$ref: '#/paths/~1v1~1organization/post/responses/200/content/application~1json/schema/properties/organizationTree'
locationIds:
type: array
items:
type: string
format: uuid
teamIds:
type: array
items:
type: string
format: uuid
lastKnownDriverLocation:
type:
- object
- 'null'
properties:
latitude:
type: number
longitude:
type: number
default:
$ref: '#/paths/~1v1~1routes/get/responses/404'
/v1/organization:
post:
x-exegesis-controller: Organization
summary: Creates a new Organization
operationId: createOrganization
tags:
- Organization
requestBody:
required: true
content:
application/json:
schema:
type: object
description: Organization
required:
- name
- onboardingStatus
- active
- entityTypeId
- organizationTypes
- insuranceAndCompliance
properties:
name:
type: string
logoImageURL:
type:
- string
- 'null'
federalTaxId:
type:
- string
- 'null'
supportEmail:
type:
- string
- 'null'
websiteURL:
type:
- string
- 'null'
onboardingStatus:
type: string
enum:
- discovery
- in progress
- completed
hoursOfOperation:
type: object
active:
type: boolean
dot:
type:
- string
- 'null'
demandSignals:
type:
- string
- 'null'
lpGig:
type:
- boolean
- 'null'
certificationOfInsuranceURL:
type:
- string
- 'null'
w9FormURL:
type:
- string
- 'null'
primaryContactId:
type:
- string
- 'null'
operationsContactId:
type:
- string
- 'null'
technicalContactId:
type:
- string
- 'null'
billingContactId:
type:
- string
- 'null'
organizationTypes:
type: array
items:
type: string
entityTypeId:
type: string
dispatchPlatformId:
type:
- string
- 'null'
locationId:
type:
- string
- 'null'
ach:
type:
- string
- 'null'
mc_mx_ff:
type:
- string
- 'null'
carrierCode:
type:
- string
- 'null'
fmcsa:
type:
- string
- 'null'
enum:
- active
- inactive
- suspended
- null
insuranceAndCompliance:
$ref: '#/paths/~1v1~1lp-market/post/requestBody/content/application~1json/schema/properties/insuranceAndCompliance'
dynamicPriceLp:
type:
- boolean
- 'null'
autoDispatchDeliveries:
type: boolean
default: false
ignoreFromLocation:
type: boolean
default: false
outOfNetworkCapable:
type: boolean
default: false
autoAssignDriver:
type: boolean
default: false
organizationTree:
type: object
properties:
parentOrganizationId:
type:
- string
- 'null'
format: uuid
providesShippingLabels:
type: boolean
default: false
displayBarcode:
type: boolean
default: false
barcodeType:
type: string
enum:
- code128
- qrcode
- azteccode
- azteccodecompact
- codablockf
- code16k
- code39ext
- code93ext
- codeone
- datamatrix
- datamatrixrectangular
- datamatrixrectangularextension
- dotcode
- hanxin
- maxicode
- micropdf417
- pdf417
- pdf417compact
- posicode
- swissqrcode
- telepen
- ultracode
barcodeAttribute:
type: string
enum:
- Order Id
- Route Id
- Shipment Id
- Container Id
- Tracking Number
- Item Identifier
podAiFilterLevel:
type:
- number
- 'null'
preferences:
$ref: '#/paths/~1v1~1preferences~1default/get/responses/200/content/application~1json/schema'
faviconImageUrl:
type:
- string
- 'null'
accountManager:
type:
- string
- 'null'
format: uuid
clientServiceManager:
type:
- string
- 'null'
format: uuid
privacyPolicyApproverUserId:
type:
- string
- 'null'
format: uuid
accountManagementNotes:
type:
- string
- 'null'
maxLength: 10000
dotNumber:
type:
- number
- 'null'
organizationHazmatSettings:
type:
- object
- 'null'
description: Organization Hazmat Settings Create payload
required:
- isShippingEnabled
properties:
isShippingEnabled:
type: boolean
classes:
type: array
items:
type: string
enum:
- '1.1'
- '1.2'
- '1.3'
- '1.4'
- '1.5'
- '1.6'
- '2.1'
- '2.2'
- '2.3'
- '3'
- '4.1'
- '4.2'
- '4.3'
- '5.1'
- '5.2'
- '6.1'
- '6.2'
- '7'
- '8'
- '9'
maxRouteWeight:
type: number
default: 0
minItemValueCent:
type: number
default: 0
maxItemValueCent:
type: number
default: 0
minItemWeightLb:
type: number
default: 0
maxItemWeightLb:
type: number
default: 0
minItemCubicVolumeFt:
type: number
default: 0
maxItemCubicVolumeFt:
type: number
default: 0
minItemLengthIn:
type: number
default: 0
maxItemLengthIn:
type: number
default: 0
minItemWidthIn:
type: number
default: 0
maxItemWidthIn:
type: number
default: 0
minItemHeightIn:
type: number
default: 0
maxItemHeightIn:
type: number
default: 0
maxWattHours:
type: number
default: 0
enableColumnMapping:
type:
- boolean
- 'null'
enableDriverPayout:
type:
- boolean
- 'null'
enableForEmployeeDrivers:
type:
- boolean
- 'null'
enableForFreelanceDrivers:
type:
- boolean
- 'null'
driverPayoutRate:
type: number
ean:
type:
- string
- 'null'
columnMappings:
type: array
items:
type: object
properties:
id:
type:
- string
- 'null'
isEnabled:
type: boolean
inputFieldName:
type: string
mappedToColumn:
type: string
enum:
- customColumn_1
- customColumn_2
- customColumn_3
- customColumn_4
- customColumn_5
- customColumn_6
- customColumn_7
- customColumn_8
- customColumn_9
- customColumn_10
responses:
'200':
description: Organization
content:
application/json:
schema:
type: object
description: Organization
properties:
id:
type: string
format: uuid
name:
type: string
logoImageURL:
type:
- string
- 'null'
federalTaxId:
type:
- string
- 'null'
supportEmail:
type:
- string
- 'null'
websiteURL:
type:
- string
- 'null'
onboardingStatus:
type: string
enum:
- discovery
- in progress
- completed
hoursOfOperation:
type: object
active:
type: boolean
dot:
type:
- string
- 'null'
demandSignals:
type:
- string
- 'null'
lpGig:
type:
- boolean
- 'null'
certificationOfInsuranceURL:
type:
- string
- 'null'
w9FormURL:
type:
- string
- 'null'
primaryContactId:
type:
- string
- 'null'
operationsContactId:
type:
- string
- 'null'
technicalContactId:
type:
- string
- 'null'
billingContactId:
type:
- string
- 'null'
organizationTypes:
type: array
items:
type: string
entityTypeId:
type: string
dispatchPlatformId:
type:
- string
- 'null'
locationId:
type:
- string
- 'null'
ach:
type:
- string
- 'null'
mc_mx_ff:
type:
- string
- 'null'
carrierCode:
type:
- string
- 'null'
fmcsa:
type:
- string
- 'null'
enum:
- active
- inactive
- suspended
- null
insuranceAndCompliance:
$ref: '#/paths/~1v1~1shipper-contract~1%7BshipperContractId%7D/put/requestBody/content/application~1json/schema/properties/insuranceAndCompliance'
dynamicPriceLp:
type:
- boolean
- 'null'
autoDispatchDeliveries:
type: boolean
ignoreFromLocation:
type: boolean
outOfNetworkCapable:
type: boolean
autoAssignDriver:
type: boolean
organizationTree:
type: object
description: Organization tree
required:
- id
- parentOrganizationId
- rootOrganizationId
- name
properties:
id:
type: string
format: uuid
parentOrganization:
type: object
description: Parent organization
properties:
id:
type: string
format: uuid
name:
type: string
rootOrganization:
type: object
description: Root organization
properties:
id:
type: string
format: uuid
name:
type: string
# --- truncated at 32 KB (240 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/onerail/refs/heads/main/openapi/onerail-organization-api-openapi.yml