Appointments Create API





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.
confirmed boolean 1200
cancelled boolean 1300
allday boolean 1400
appt_type string 1500
confirmed_at datetime 1600
confirmed_by string 1700
date_start_local date 1800
date_start_office date 1900
date_stop_local date 2000
date_stop_office date 2100
delivery_type string 2200
description string 2300
location string 2400
notes string 2500
on_site_cancel boolean 2600
optional boolean 2700
order_id integer 2800
Id of order associated to appointment
order_request_appt_id integer 2900
Id of order_request_appt appointment is associated with.
photographer_name string 3000
photographer_user_id integer 3100
Id of photographer's user record.
requested_date date 3200
requested_time time 3300
same_day_cancel boolean 3400
time_start_local time 3500
time_start_office time 3600
time_stop_local time 3700
time_stop_office time 3800
summary string 3900
time_duration string 4000
created_by string 4100
created_in string 4200
updated_at_mt string 4300 required
updated_by string 4400
uuid string 4500
created_at datetime 4600
This will param will be deleted at some point.
updated_at datetime 4700
This will param will be deleted at some point.
month_first boolean 4800
When this param is passed, date params (e.g. date_start_local, date_stop_local) passed will be read from in the format MM/DD/YYYY. This is important to the FileMaker applications as they save and send dates in this format while the web application send dates over in the SQL convention YYYY-MM-DD.
date_stop_utc date 4900
date_start_utc date 5000
time_start_utc time 5100
time_stop_utc time 5200
time_duration_s integer 5300
Duration of the appointment in seconds
ready_to_schedule boolean 5400
window_date_start date 5500
window_date_end date 5600
window_time_start integer 5700
window_time_end integer 5800
order_request_id integer 5900
Order Request ID

Request Body Example: application/json


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-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

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.