AerScheduler

Currencies

Recurring requirements members must stay current on.

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

get/currencies

List currencies

Every member's standing against every tracked requirement.

Responses

200OKThe currency records.{ data: Currency[] }
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/currencies \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN"
get/currencies/{currencyId}

Get a currency record

Note this takes a CURRENCY id, not a currency-type id — the two are one path segment apart and are easy to confuse.

Path parameters

currencyIdrequiredintegerThe currency id.

Responses

200OKSuccess.{ data: Currency }
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenNot yours to see.
404Not FoundNo such currency.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl https://api.aerscheduler.com/currencies/:currencyId \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN"
post/currencies/{currencyId}

Renew a currency

Signs off a renewal and starts a new period. Who may do this is governed by the currency type's canRenewSelf / instructorCanRenew / dispatcherCanRenew flags.

Path parameters

currencyIdrequiredintegerThe currency id.

Request body

The renewal.

completedAtstring

Responses

201CreatedSuccess.{ data: Currency }
400Bad RequestValidation failed.
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenYou may not renew this one.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl -X POST https://api.aerscheduler.com/currencies/:currencyId \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"completedAt":"2026-08-04T15:00:00-06:00"}'
patch/currencies/{currencyId}

Update a currency record

Adjusts the dates on one member's standing.

Path parameters

currencyIdrequiredintegerThe currency id.

Responses

200OKSuccess.{ data: Currency }
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenNot yours to edit.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl -X PATCH https://api.aerscheduler.com/currencies/:currencyId \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN"
get/currencies/types

List currency types

Every currency type in your organization.

Responses

200OKThe currency types.{ data: CurrencyType[] }
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/currencies/types \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN"
post/currencies/types

Create a currency type

Adds a currency type to your organization. Requires the admin role.

Request body

The requirement to track. Attaching member groups is what actually creates the per-member Currency records — a type created with no groups tracks nobody.

namerequiredstring
descriptionstring
expiresInMonthsinteger
expiresInDaysinteger
warningPeriodInDaysinteger
canRenewSelfboolean
instructorCanRenewboolean
dispatcherCanRenewboolean
orgUserGroupIdsinteger[]

Responses

201CreatedThe currency type that was created.{ data: CurrencyType }
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/currencies/types \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"…"}'
get/currencies/types/{currencyTypeId}

Get a currency type

Fetches one currency type by id.

Path parameters

currencyTypeIdrequiredintegerThe currency type id.

Responses

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

Update a currency type

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

Path parameters

currencyTypeIdrequiredintegerThe currency type id.

Request body

Fields to change.

namestring
activeboolean
expiresInMonthsinteger
orgUserGroupIdsinteger[]

Responses

200OKThe updated currency type.{ data: CurrencyType }
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/currencies/types/:currencyTypeId \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"…","active":true}'
delete/currencies/types/{currencyTypeId}

Delete a currency type

Removes the currency type. Requires the admin role.

Path parameters

currencyTypeIdrequiredintegerThe currency type id.

Responses

204No ContentSuccess. No body.
400Bad RequestThe currency type 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/currencies/types/:currencyTypeId \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN"
get/currencies/types/{currencyTypeId}/currencies

List a type's currency records

Everyone's standing against one requirement.

Path parameters

currencyTypeIdrequiredintegerThe currency type id.

Responses

200OKThe currency records.{ data: Currency[] }
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/currencies/types/:currencyTypeId/currencies \
  -H "Authorization: Bearer $AERSCHEDULER_TOKEN"