Documents
Files held against members.
11 endpoints · base URL https://api.aerscheduler.com
/userDocumentsUpload a document
Records a document against a member. Administrators may upload on someone else's behalf; whether a member can upload their own depends on the document type's restricted flag.
Request body
The document.
documentTypeIdrequired | integer | |
orgUserIdrequired | integer | |
name | string | |
expiresAt | string |
Responses
200 | OK | Success.→ { data: UserDocument } |
201 | Created | Success.→ { data: UserDocument } |
400 | Bad Request | Validation failed. |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
curl -X POST https://api.aerscheduler.com/userDocuments \
-H "Authorization: Bearer $AERSCHEDULER_KEY" \
-H "Content-Type: application/json" \
-d '{"documentTypeId":1,"orgUserId":1}'/userDocuments/{documentId}Get a document
One document record.
Path parameters
documentIdrequired | integer | The document id. |
Responses
200 | OK | Success.→ { data: UserDocument } |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
404 | Not Found | No such document. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
curl https://api.aerscheduler.com/userDocuments/:documentId \
-H "Authorization: Bearer $AERSCHEDULER_KEY"/userDocuments/{documentId}Update a document
Renames it or changes its expiry.
Path parameters
documentIdrequired | integer | The document id. |
Request body
Fields to change.
name | string | |
expiresAt | string |
Responses
200 | OK | Success.→ { data: UserDocument } |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
curl -X PATCH https://api.aerscheduler.com/userDocuments/:documentId \
-H "Authorization: Bearer $AERSCHEDULER_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"…","expiresAt":"2026-08-04T15:00:00-06:00"}'/userDocuments/{documentId}Delete a document
Removes the document.
Path parameters
documentIdrequired | integer | The document id. |
Responses
204 | No Content | Success. No body. |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
curl -X DELETE https://api.aerscheduler.com/userDocuments/:documentId \
-H "Authorization: Bearer $AERSCHEDULER_KEY"/userDocuments/typesList document types
Every document type in your organization.
Query parameters
limit | integer | Rows to return, 1,1000. Defaults to 1000; a larger value is clamped rather than rejected. |
offset | integer | Rows to skip, for paging. Defaults to 0. |
sort | string | Field to order by before paging, as a dot path into the row , total, user.firstName. Omit to keep the endpoint's own order. Numbers and ISO timestamps order as numbers and instants, not as text, and empty values always sort last regardless of direction. Ordering happens before the page is cut, so it orders the whole collection rather than the page you are holding. |
order | "asc" | "desc" | asc (default) or desc. Only meaningful with sort. |
Responses
200 | OK | The document types.→ { data: DocumentType[] } |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
curl https://api.aerscheduler.com/userDocuments/types \
-H "Authorization: Bearer $AERSCHEDULER_KEY"/userDocuments/typesCreate a document type
Adds a document type to your organization. Requires the admin role.
Request body
The category. restricted: true means only administrators may upload documents of this type.
namerequired | string | |
restricted | boolean |
Responses
201 | Created | The document type that was created.→ { data: DocumentType } |
400 | Bad Request | The body failed validation. message says which field. |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
curl -X POST https://api.aerscheduler.com/userDocuments/types \
-H "Authorization: Bearer $AERSCHEDULER_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"…"}'/userDocuments/{documentId}/signedUrlGet a signed URL for a document
Returns a short-lived URL to upload or download the file. Documents are not served from a public URL.
Path parameters
documentIdrequired | integer | The document id. |
Responses
200 | OK | Success.→ { data: object } |
400 | Bad Request | Validation failed. |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
curl -X POST https://api.aerscheduler.com/userDocuments/:documentId/signedUrl \
-H "Authorization: Bearer $AERSCHEDULER_KEY"/userDocuments/orgUsers/{orgUserId}List a member's documents
Everything held against one member.
Path parameters
orgUserIdrequired | integer | The membership id. |
Query parameters
limit | integer | Rows to return, 1,1000. Defaults to 1000; a larger value is clamped rather than rejected. |
offset | integer | Rows to skip, for paging. Defaults to 0. |
sort | string | Field to order by before paging, as a dot path into the row , total, user.firstName. Omit to keep the endpoint's own order. Numbers and ISO timestamps order as numbers and instants, not as text, and empty values always sort last regardless of direction. Ordering happens before the page is cut, so it orders the whole collection rather than the page you are holding. |
order | "asc" | "desc" | asc (default) or desc. Only meaningful with sort. |
Responses
200 | OK | The documents.→ { data: UserDocument[] } |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
curl https://api.aerscheduler.com/userDocuments/orgUsers/:orgUserId \
-H "Authorization: Bearer $AERSCHEDULER_KEY"/userDocuments/types/{documentTypeId}Get a document type
Fetches one document type by id.
Path parameters
documentTypeIdrequired | integer | The document type id. |
Responses
200 | OK | Success.→ { data: DocumentType } |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
404 | Not Found | No such document type, or it belongs to another organization. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
curl https://api.aerscheduler.com/userDocuments/types/:documentTypeId \
-H "Authorization: Bearer $AERSCHEDULER_KEY"/userDocuments/types/{documentTypeId}Update a document type
Changes the fields you send and leaves the rest alone. Requires the admin role.
Path parameters
documentTypeIdrequired | integer | The document type id. |
Request body
Fields to change.
name | string | |
restricted | boolean |
Responses
200 | OK | The updated document type.→ { data: DocumentType } |
400 | Bad Request | The body failed validation. |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
curl -X PATCH https://api.aerscheduler.com/userDocuments/types/:documentTypeId \
-H "Authorization: Bearer $AERSCHEDULER_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"…","restricted":true}'/userDocuments/types/{documentTypeId}Delete a document type
Removes the document type. Requires the admin role.
Path parameters
documentTypeIdrequired | integer | The document type id. |
Responses
204 | No Content | Success. No body. |
400 | Bad Request | The document type could not be deleted , usually because something still references it. |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
curl -X DELETE https://api.aerscheduler.com/userDocuments/types/:documentTypeId \
-H "Authorization: Bearer $AERSCHEDULER_KEY"