openapi: 3.2.0
info:
title: Beacon Rest Services Submit Order API
description: 'A combination of all methods in the beacon-api
[ BASE URL: https://beaconproplus.com
Beacon ProPlus
Version 1: https://beaconproplus.com/v1/rest/com/becn
Version 2: https://beaconproplus.com/v2/rest/com/becn
Version 3: https://beaconproplus.com/v3/rest/com/becn
Beacon Stack
[ BASE URL: https://beacon-api-x7xzzdp35a-uk.a.run.app
Version 1: https://beacon-api-x7xzzdp35a-uk.a.run.app/v1/rest/com/becn/
Version 2: https://beacon-api-x7xzzdp35a-uk.a.run.app/v2/rest/com/becn/
Version 3…'
version: '1.0'
contact: {}
servers: []
tags:
- name: SubmitOrder
paths:
/submitOrder:
post:
operationId: V2Controller_submitOrder
summary: Submits order
description: This service submits an order to the assigned branch for the selected account. Account holder can require jobNumber for each order processed within that account. Use get/jobs service to see if jobNumber is required for account. The “purchaseOrderNo” is assigned by account and does not need to be unique. The ""apiSiteId"" is is required to submit an order. The “itemNumber” or ""productOrItemDescription"", “quantity,” and “unitOfMeasure” fields are required lineItems. The “checkForAvailability” field should always be “No” to ensure orders are actually received by a branch representative. The “UUID” field is an optional field to send in UUID value to track orders.
parameters: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/submitOrderBody'
responses:
'200':
description: successful operation
refer to the API Uniform Format dropdown above
content:
application/json:
schema:
$ref: '#/components/schemas/submitOrderResponse'
'400':
description: Bad Request, accountId is invalid.
'401':
description: Unauthorized, the authorization bearer token is invalid.
'405':
description: Method not allowed, the request method is not valid for this API or this API is not available.
'500':
description: Internal exception.
tags:
- SubmitOrder
components:
schemas:
submitOrderBody:
type: object
properties:
accountId:
type: string
job:
$ref: '#/components/schemas/Job'
purchaseOrderNo:
type: string
orderStatusCode:
type: string
apiSiteId:
type: string
lineItems:
type: array
items:
$ref: '#/components/schemas/LineItem'
shipping:
$ref: '#/components/schemas/Shipping'
sellingBranch:
type: string
specialInstruction:
type: string
checkForAvailability:
type: string
pickupDate:
type: string
pickupTime:
type: string
onHold:
type: boolean
UUID:
type: string
required:
- accountId
- job
- purchaseOrderNo
- orderStatusCode
- apiSiteId
- lineItems
- shipping
- sellingBranch
- specialInstruction
- checkForAvailability
- pickupDate
- pickupTime
- onHold
- UUID
Job:
type: object
properties:
jobName:
type: string
jobNumber:
type: string
required:
- jobName
- jobNumber
Shipping:
type: object
properties:
shippingBranch:
type: number
address:
$ref: '#/components/schemas/Address'
shippingMethod:
type: string
required:
- shippingBranch
- address
- shippingMethod
Address:
type: object
properties:
postalCode:
type: string
state:
type: string
address1:
type: string
address2:
type: string
address3:
type: string
country:
type: string
city:
type: string
required:
- postalCode
- state
- address1
- address2
- address3
- country
- city
LineItem:
type: object
properties:
specialInstructions:
type: string
productOrItemNumber:
type: string
subTotal:
type: number
itemOrProductDescription:
type: string
unitPrice:
type: number
quantity:
type: number
itemNumber:
type: string
unitOfMeasure:
type: string
productImageUrl:
type: string
productOnErrorImageUrl:
type: string
productOrItemDescription:
type: string
extendedDescription:
type: string
lineComments:
type: string
required:
- specialInstructions
- productOrItemNumber
- subTotal
- itemOrProductDescription
- unitPrice
- quantity
- itemNumber
- unitOfMeasure
- productImageUrl
- productOnErrorImageUrl
- productOrItemDescription
- extendedDescription
- lineComments
submitOrderResponse:
type: object
properties:
orderId:
type: string
required:
- orderId