AerScheduler

Resources

Aircraft, simulators, and rooms.

11 endpoints · base URL https://api.aerscheduler.com

get/resources

List resources

Every bookable resource — aircraft, simulators, and rooms together. Use /resources/planes, /simulators, or /rooms for one kind.

Responses

200OKThe resources.{ data: Resource[] }
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenAuthenticated, but not allowed to do this.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl https://api.aerscheduler.com/resources \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN"
post/resources

Create a resource

Adds a resource to your organization. Requires the admin role.

Request body

The new resource. Exactly one of type.plane, type.simulator, or type.room must be present, and location.id is required.

namerequiredstring
locationrequiredobject
typerequiredobject

Responses

201CreatedThe resource that was created.{ data: Resource }
400Bad RequestThe body failed validation. message says which field.
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenAuthenticated, but not allowed to do this.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl -X POST https://api.aerscheduler.com/resources \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"…","location":{},"type":{}}'
get/resources/{id}

Get a resource

Fetches one resource by id.

Path parameters

idrequiredintegerThe resource id.

Responses

200OKSuccess.{ data: Resource }
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenAuthenticated, but not allowed to do this.
404Not FoundNo such resource, or it belongs to another organization.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl https://api.aerscheduler.com/resources/:id \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN"
patch/resources/{id}

Update a resource

Changes the fields you send and leaves the rest alone. Requires the admin role.

Path parameters

idrequiredintegerThe resource id.

Request body

Fields to change. type must be present even when you are only changing a top-level field.

namestring
typeobject

Responses

200OKThe updated resource.{ data: Resource }
400Bad RequestThe body failed validation.
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenAuthenticated, but not allowed to do this.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl -X PATCH https://api.aerscheduler.com/resources/:id \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"…","type":{}}'
delete/resources/{id}

Delete a resource

Removes the resource. Requires the admin role.

Path parameters

idrequiredintegerThe resource id.

Responses

204No ContentSuccess. No body.
400Bad RequestThe resource could not be deleted — usually because something still references it.
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenAuthenticated, but not allowed to do this.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl -X DELETE https://api.aerscheduler.com/resources/:id \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN"
get/resources/planes

List aircraft

Only resources whose type is a plane.

Query parameters

qstringFree-text filter. Matches the fields a person would search on.
groundedbooleanFilter on grounded state.
locationIdstringComma-separated location ids.

Responses

200OKThe aircraft.{ data: Resource[] }
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenAuthenticated, but not allowed to do this.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl https://api.aerscheduler.com/resources/planes \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN"
get/resources/rooms

List rooms

Only resources whose type is a room.

Query parameters

qstringFree-text filter. Matches the fields a person would search on.
locationIdstringComma-separated location ids.

Responses

200OKThe rooms.{ data: Resource[] }
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenAuthenticated, but not allowed to do this.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl https://api.aerscheduler.com/resources/rooms \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN"
get/resources/simulators

List simulators

Only resources whose type is a simulator.

Query parameters

qstringFree-text filter. Matches the fields a person would search on.
groundedbooleanFilter on grounded state.
locationIdstringComma-separated location ids.

Responses

200OKThe simulators.{ data: Resource[] }
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenAuthenticated, but not allowed to do this.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl https://api.aerscheduler.com/resources/simulators \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN"
post/resources/{id}/approve

Approve a member for a resource

Checks someone out on an aircraft. Requires the admin role.

Path parameters

idrequiredintegerThe resource id.

Request body

Who to approve.

userIdrequiredinteger

Responses

200OKSuccess.{ data: object }
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenAuthenticated, but not allowed to do this.
404Not FoundThat person is not in your organization.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl -X POST https://api.aerscheduler.com/resources/:id/approve \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"userId":1}'
post/resources/{id}/fuel

Record fuel on board

Updates fuel for one or both engines.

Path parameters

idrequiredintegerThe resource id.

Request body

Fuel figures, in the aircraft's configured units.

fuelEngine1integer
fuelEngine2integer

Responses

200OKSuccess.{ data: object }
400Bad RequestValidation failed.
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenAuthenticated, but not allowed to do this.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl -X POST https://api.aerscheduler.com/resources/:id/fuel \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"fuelEngine1":1,"fuelEngine2":1}'
post/resources/{id}/unapprove

Withdraw a member's approval

Requires the admin role.

Path parameters

idrequiredintegerThe resource id.

Request body

Whose approval to withdraw.

userIdrequiredinteger

Responses

200OKSuccess.{ data: object }
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenAuthenticated, but not allowed to do this.
404Not FoundThat person is not in your organization.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl -X POST https://api.aerscheduler.com/resources/:id/unapprove \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"userId":1}'