Order API V3 Upload API

Route

POST

Purpose


Parameters


view string 20
View of object your would like to be returned.
Possible values
  • inital_upload
  • online_order_group_order_status
  • planoworker_processing_view
  • default

blob string 30 required
Blob of CSV or XLSX file type. This file must be 50kb or less
token string 100 required
Authentication token for either an application or session.
application string 200
Slug of application being requested. This is used to determine the role being used to make the request and therefore evaluate if the requester has the correct permissions.
Possible values
  • planoauth
  • planoorder
  • planox2

session_view string 300
View of session object you would like returned.

Request Body Example: application/json

Responses

action-successful 200

This status indicates that the request was successful. If the request returns data, it can be found in the data key.

invalid-file-type 400

This response is returned when the file uploaded wasn't identified as a CSV or XLSX file type.

file-too-large 400

This response is returned when the file uploaded wasn't identified as larger that 50kb.

session-required 400

This response is returned when this API is called from a requester that isn't a session, e.g., and another application. This is an important validation because a group order must be tied to a user.

multiple-sheets 400

This response is returned when the uploaded spreadsheet had more than one wrokersheet.

empty-sheet 400

This response is returned when the uploaded spreadsheet is empty or has no order rows.

too-many-orders 400

This response is returned when the uploaded spreadsheet has more orders then is allowed with each upload. On September 22nd, 2023 this max is 200 orders but can be found in the system value `group_order_max_orders`

missing-spreadsheet-headers 400

This response is returned when the uploaded spreadsheet is missing one of the required headers for a group order. The required headers can be found in the system value `group_order_required_headers`

file-read-error 500

This response is returned when there was an issue reading the file passed.

invalid-token 401

This status is returned when the authentication token passed is invalid.

session-expired 401

This status is returned a session is older than seven days or hasn't been used in 72 hours. The user will need to reauthenticate. We allow our users to save a remember_me preference which will make there sessions last indefinitely.

client-required 401

This status is returned when the user makeing the request doesn't have a client, employee or liaison record. This means that they don't have any roles or permissions. Because we only allow our clients to register as a client, the user should be redirected to the PlanoAuth clients registration page where they can use the `/api/v1/users/client_register` API to register as a client. Eventhough the request will not be successful, this status will still return a `session` object because a session token is needed to register as a user.

missing-param 400

This status is returned when a required param was not passed with the request.

invalid-param 400

This status is returned when a param was invalid when passed. For example, passing an id that doesn't exist or passing an invalid email address.

application-crash 500

This status is returned when there is an internal server error. Please try again later.

mandrill-email-failed 500

This status is returned when there was an issue using Mandrill to send an email. Any time this response is returned, there will be a notification in the production notifications tab so the dev team will be away of the failure. These errors will most likely correlate with a data issue and will need to be invesigated.

invalid-content-type 400

This status is returned if the request was made with the incorrect content-type so the request params could not be read. For more infromation on content-type, please refer to https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type.

route-non-existent 500

Response returned when HTTP route does not exist.

Uncommon Responses

The responses below are not very common.

no-params-decoded Uncommon

This status is returned the request body was decoded, but no params where found.

invalid-encoded-params Uncommon

This status is returned when the request body could not be decoded properly. This generally means that you are requesting a sensative_params API and your request body was not base64 encoded.

route-not-found Uncommon

This status is returned when the route record being requested hasn't been deployed yet.

identify-request-error Uncommon

This status is returned when there is an internal server error before the route could be identified. Please try again later.

service-not-found Uncommon

This status is returned when the route's API service record being requested hasn't been deployed yet.