Vooma Customers API
The Customers API from Vooma — 3 operation(s) for customers.
The Customers API from Vooma — 3 operation(s) for customers.
openapi: 3.1.0
info:
title: api Carriers Customers API
version: 0.1.0
contact: {}
servers:
- url: https://api.vooma.ai/v0
description: Vooma API
tags:
- name: Customers
paths:
/customers/search:
post:
operationId: GetCustomers
responses:
'200':
description: Ok
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/GetCustomersPayload'
- $ref: '#/components/schemas/PaginatedResponse'
tags:
- Customers
security:
- bearer: []
parameters: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/GetCustomersInput'
/customers/{customerId}:
get:
operationId: GetCustomer
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/GetCustomerPayload'
tags:
- Customers
security:
- bearer: []
parameters:
- in: path
name: customerId
required: true
schema:
type: string
put:
operationId: UpdateCustomer
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/Customer'
tags:
- Customers
security:
- bearer: []
parameters:
- in: path
name: customerId
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateCustomerInput'
/customers:
post:
operationId: CreateCustomer
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/CreateCustomerPayload'
tags:
- Customers
security:
- bearer: []
parameters: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateCustomerInput'
components:
schemas:
UpdateCustomerInput:
$ref: '#/components/schemas/VoomaPublicAPIv0.UpdateCustomerInput'
CustomerContactData:
allOf:
- $ref: '#/components/schemas/BaseContactData'
- properties:
customerId:
type: string
required:
- customerId
type: object
UpdateCustomerData:
properties:
name:
type: string
externalIds:
items:
$ref: '#/components/schemas/CustomerExternalIdentifier'
type: array
required:
- name
- externalIds
type: object
WithId_CustomerData_:
allOf:
- properties:
id:
type: string
required:
- id
type: object
- $ref: '#/components/schemas/CustomerData'
MayHaveID_ContactData_:
allOf:
- properties:
id:
type: string
type: object
- $ref: '#/components/schemas/ContactData'
Pagination:
properties:
limit:
type: number
format: double
after:
type: string
before:
type: string
last:
type: number
format: double
first:
type: number
format: double
type: object
VoomaPublicAPIv0.GetCustomerPayload:
properties:
customer:
$ref: '#/components/schemas/Customer'
required:
- customer
type: object
GetCustomersPayload:
$ref: '#/components/schemas/VoomaPublicAPIv0.GetCustomersPayload'
VoomaPublicAPIv0.CreateCustomerInput:
properties:
customer:
$ref: '#/components/schemas/CustomerData'
required:
- customer
type: object
VoomaPublicAPIv0.UpdateCustomerInput:
properties:
customer:
$ref: '#/components/schemas/UpdateCustomerData'
required:
- customer
type: object
CustomerExternalIdentifier:
properties:
type:
anyOf:
- $ref: '#/components/schemas/CustomerExternalIdentifierType'
- type: string
description: Typically one of the CustomerExternalIdentifierType enum values, but strings are also allowed
value:
type: string
required:
- type
- value
type: object
additionalProperties: false
ContactData:
anyOf:
- $ref: '#/components/schemas/CarrierContactData'
- $ref: '#/components/schemas/CustomerContactData'
- $ref: '#/components/schemas/LocationContactData'
VoomaPublicAPIv0.PaginatedResponse:
properties:
pageInfo:
properties:
endCursor:
type: string
startCursor:
type: string
hasPreviousPage:
type: boolean
hasNextPage:
type: boolean
type: object
totalCount:
type: number
format: double
count:
type: number
format: double
type: object
VoomaPublicAPIv0.CreateCustomerPayload:
anyOf:
- $ref: '#/components/schemas/Customer'
- $ref: '#/components/schemas/DuplicatePayload'
CreateCustomerPayload:
$ref: '#/components/schemas/VoomaPublicAPIv0.CreateCustomerPayload'
LocationContactData:
$ref: '#/components/schemas/BaseContactData'
BaseContactData:
properties:
name:
type: string
phone:
type: string
email:
type: string
role:
type: string
type: object
VoomaPublicAPIv0.GetCustomersPayload:
properties:
customers:
items:
$ref: '#/components/schemas/Customer'
type: array
required:
- customers
type: object
CarrierContactData:
allOf:
- $ref: '#/components/schemas/BaseContactData'
- properties:
carrierId:
type: string
required:
- carrierId
type: object
V0Contact.Contact:
$ref: '#/components/schemas/MayHaveID_ContactData_'
CustomerData:
properties:
contacts:
items:
$ref: '#/components/schemas/Contact'
type: array
name:
type: string
externalIds:
items:
$ref: '#/components/schemas/CustomerExternalIdentifier'
type: array
required:
- name
- externalIds
type: object
VoomaPublicAPIv0.GetCustomersInput:
properties:
pagination:
$ref: '#/components/schemas/Pagination'
filterById:
type: string
search:
type: string
type: object
DuplicatePayload:
properties:
customer:
$ref: '#/components/schemas/Customer'
error:
type: string
enum:
- DUPLICATE
nullable: false
required:
- customer
- error
type: object
CustomerExternalIdentifierType:
enum:
- ALJEX
- AVRL
- BITFREIGHTER_RATING
- CUSTOM
- DAT
- GENLOGS
- GREENSCREENS
- HIGHWAY
- HOSTED_MCLEOD
- LEGACY_MERCURYGATE
- MCLEOD
- MCLEOD_HOSTED
- MERCURYGATE
- ORDERFUL
- SONAR
- SOFTMODAL
- STEDI
- STRATEGY_LIVE
- TABI
- TAI
- TEST
- THREE_PL
- TRANSFIX_RATING
- TURVO
- TRUCKSTOP
- VOOMA_PUBLIC_API
- MICROSOFT
- MICROSOFT_TEAMS
- SLACK
type: string
Contact:
$ref: '#/components/schemas/V0Contact.Contact'
PaginatedResponse:
$ref: '#/components/schemas/VoomaPublicAPIv0.PaginatedResponse'
GetCustomersInput:
$ref: '#/components/schemas/VoomaPublicAPIv0.GetCustomersInput'
GetCustomerPayload:
$ref: '#/components/schemas/VoomaPublicAPIv0.GetCustomerPayload'
CreateCustomerInput:
$ref: '#/components/schemas/VoomaPublicAPIv0.CreateCustomerInput'
Customer:
$ref: '#/components/schemas/WithId_CustomerData_'
securitySchemes:
basic:
scheme: basic
type: http
bearer:
type: http
scheme: bearer
bearerFormat: API Key
auth0:
type: http
scheme: bearer
bearerFormat: JWT