From aa67fb3bce224b72b1c7a35d7f8ca21552a754b0 Mon Sep 17 00:00:00 2001 From: Steve Chan Date: Wed, 1 Oct 2025 19:38:39 +1000 Subject: [PATCH 1/9] Add node for partial Pastoral Update [SA-20705] --- .../requestBodies/pastoral-partial-item.yaml | 168 ++++++++++ .../schemas/pastoral-partial-item.yaml | 287 ++++++++++++++++++ openapi/openapi.yaml | 3 + openapi/paths/pastoral@record@update.yaml | 26 ++ 4 files changed, 484 insertions(+) create mode 100644 openapi/components/requestBodies/pastoral-partial-item.yaml create mode 100644 openapi/components/schemas/pastoral-partial-item.yaml create mode 100644 openapi/paths/pastoral@record@update.yaml diff --git a/openapi/components/requestBodies/pastoral-partial-item.yaml b/openapi/components/requestBodies/pastoral-partial-item.yaml new file mode 100644 index 00000000..6db2f428 --- /dev/null +++ b/openapi/components/requestBodies/pastoral-partial-item.yaml @@ -0,0 +1,168 @@ +description: | + Pastoral record +content: + application/x-www-form-urlencoded: + schema: + type: object + properties: + id: + description: The ID of an existing pastoral record that you wish to partially update. + type: integer + student_id: + description: The ID of a student to create this pastoral record for. + type: integer + duplicateIds: + description: A comma separated list of IDs of students to create this pastoral record for. + type: string + nullable: true + heading: + description: Pastoral record title. + type: string + maxLength: 255 + occurredOn: + description: The date on which this is occurred in the format configured in your Admin area. + type: string + format: date + example: 22/06/2021 + nullable: true + typeId: + description: The ID of a pastoral type to associate with this pastoral record. + type: integer + nullable: false + subtypeId: + description: | + The ID of a pastoral sub-type to associate to this pastoral record.\ + The sub-type must already be associated with the type provided as typeId.\ + This can be null, if the pastoral type does not have any sub-type.\ + This cannot be null, if the pastoral type has sub-type(s). + type: integer + nullable: true + severityId: + description: | + The ID of a pastoral severity to associate with this pastoral record.\ + Required only if Allow specification of severity on pastoral records config is ON. + type: integer + nullable: true + body_public: + description: | + General content of this pastoral record in raw HTML.\ + The following tokens will be substituted with the students details on creation: [firstname], [preferredname], [surname], [fullname], [year], [house]. + type: string + maxLength: 65535 + nullable: true + body_private: + description: | + Confidential content of this pastoral record in raw HTML.\ + The following tokens will be substituted with the students details on creation: [firstname], [preferredname], [surname], [fullname], [year], [house]. + type: string + maxLength: 65535 + nullable: true + public_attachments[]: + description: | + Files to attach to general content of the pastoral record, supplied as pointers to a file in Schoolbox.\ + Each pointer will be in the format:\ + `$locator:$location:$filename` + The variables within the pointer have this meaning: + * `$locator` represents the strategy for finding the file: + * `store` for files uploaded to Schoolbox's storage + * `browse` finds files in Schoolbox's resource browser + * `myfile` finds files in a Schoolbox user's My Files browser + * `office365` finds files in an Office365 store + * `$location` is the location of the file within `$locator`: + * for `store` this is a file's unique hash + * for `browse` and `myfile` this is a file ID + * for `office365` this is the file's unique node + * `$filename` is the filename that the file will be given once it is uploaded to wherever it is being uploaded + + See the [Upload a file](#post-/storage/asyncUpload.php) endpoint for details on how to upload a file, and receive a file pointer from that upload. + type: array + nullable: true + private_attachments[]: + description: | + Files to attach to confidential content of the pastoral record, supplied as pointers to a file in Schoolbox.\ + Each pointer will be in the format:\ + `$locator:$location:$filename` + The variables within the pointer have this meaning: + * `$locator` represents the strategy for finding the file: + * `store` for files uploaded to Schoolbox's storage + * `browse` finds files in Schoolbox's resource browser + * `myfile` finds files in a Schoolbox user's My Files browser + * `office365` finds files in an Office365 store + * `$location` is the location of the file within `$locator`: + * for `store` this is a file's unique hash + * for `browse` and `myfile` this is a file ID + * for `office365` this is the file's unique node + * `$filename` is the filename that the file will be given once it is uploaded to wherever it is being uploaded + + See the [Upload a file](#post-/storage/asyncUpload.php) endpoint for details on how to upload a file, and receive a file pointer from that upload. + type: array + nullable: true + actions[]: + description: | + An array of IDs of pastoral action.\ + Available only if Enable Pastoral Actions config is ON. + type: array + nullable: true + items: + type: integer + tags: + description: | + Comma separated IDs of existing Pastoral Record Tags.\ + If non numerical string is provided, it'll be silently discarded.\ + To provide a name to create a new tag, use tagNames instead. + type: string + nullable: true + tagNames: + description: | + Comma separated names of Pastoral Record Tags.\ + If Allow Staff to Create Pastoral Care Tags config is ON, attempts to create a new tag, if not alraeady exists.\ + The max length of a tag name is 255 chars. + type: string + nullable: true + points: + description: Points of this pastoral record. + type: number + format: float + minimum: -100000 + maximum: 100000 + nullable: true + role: + description: | + An array of pairs of a role and its access level to this pastoral record in the format of:\ + `$roleId => $accessLevel` + * `$roleId` is one of the following: + * The ID of a role of Staff Role Type with Access Pastoral Care permission + * 'role-type-parent' (requires Allow Parent Pastoral Access config enabled) + * 'role-type-student' (requires Allow Student Pastoral Access config enabled) + * `$accessLevel` is an integer representation of access level of the $roleId + * 0 - Deny + * 1 - General + * 2 - General + Confidential + type: array + nullable: true + group: + description: | + An array of pairs of a pastoral group and its access level to this pastoral record in the format of:\ + `$pastoralGroupId => $accessLevel` + * `$pastoralGroupId` is the ID of a pastoral group to set access level to + * `$accessLevel` is an integer representation of access level of the $roleId + * 0 - Deny + * 1 - General + * 2 - General + Confidential + type: array + nullable: true + user: + description: | + An array of pairs of a user and its access level to this pastoral record in the format of:\ + `$userId => $accessLevel` + * `$userId` is ID of a user to set access level to. The user must be one of: + * a staff with pastoral access + * a parent of the student (requires Allow Parent Pastoral Access enabled) + * `$accessLevel` is an integer representation of access level of the $roleId + * 0 - Deny + * 1 - General + * 2 - General + Confidential + type: array + nullable: true + required: + - id diff --git a/openapi/components/schemas/pastoral-partial-item.yaml b/openapi/components/schemas/pastoral-partial-item.yaml new file mode 100644 index 00000000..015e4232 --- /dev/null +++ b/openapi/components/schemas/pastoral-partial-item.yaml @@ -0,0 +1,287 @@ +title: a partial Pastoral Record +description: A partial pastoral record. +readOnly: true +type: array +items: + properties: + id: + $ref: ./id.yaml + externalId: + description: The ID of SIS data corresponding to this pastoral record, if External Pastoral Synchronisation is ON. + type: string + nullable: true + student: + title: User + description: Short fields for users + type: object + properties: + id: + $ref: ./id.yaml + externalId: + $ref: ./externalId.yaml + title: + type: string + nullable: true + description: The user's title (Mr., Ms., etc.). + example: Ms + firstName: + type: string + nullable: true + description: | + The user's first name. + + Schoolbox doesn't distinguish between a person's actual first name + and any other names, and in any case is not the definitive source of + naming information; therefore in practice this will usually be the + user's given name. + example: Rebecca + lastName: + type: string + nullable: true + description: The user's surname. + example: White + preferredName: + type: string + nullable: true + description: The user's preferred name. + _links: + type: object + properties: + profile: + type: string + format: uri-reference + avatar: + type: string + format: uri-reference + nullable: true + heading: + description: Heading of the pastoral record. + type: string + type: + description: Type of the pastoral record. + type: object + properties: + id: + description: The ID of the pastoral type associated to this pastoral record. + type: integer + name: + description: The name of the pastoral type. + type: string + icon: + description: The name of the icon associated to the pastoral type. + type: string + colour: + description: The colour of the icon associated to the pastoral type. + type: string + sentiment: + type: string + sequence: + description: The order in which this pastoral type will display in a pastoral type list. + type: integer + subType: + description: Sub-type of the pastoral record. + type: object + properties: + id: + description: The ID of the pastoral sub-type associated to this pastoral record. + type: integer + name: + description: The name of the pastoral sub-type. + type: string + icon: + description: The name of the icon associated to the pastoral sub-type. + type: string + colour: + description: The colour of the icon associated to the pastoral sub-type. + type: string + sentiment: + type: string + sequence: + description: The order in which this pastoral sub-type will display in a pastoral sub-type list. + type: integer + severity: + description: Severity of the pastoral record. + type: object + properties: + id: + description: The ID of the pastoral severity of this pastoral record. + type: integer + name: + description: The name of the pastoral severity. + type: string + color: + description: The colour associated to the pastoral severity. + type: string + sequence: + description: The order in which this pastoral severity will display in a pastoral severity list. + type: integer + occuredOn: + description: The date on which this is occurred as a RFC3339 string. + type: string + format: date-time + points: + nullable: true + description: Points of this pastoral record. + type: integer + tags: + description: List of tag names. + type: array + items: + properties: + id: + description: The ID of the pastoral tag. + type: integer + name: + description: The name of the pastoral tag. + type: string + bodyPublic: + description: | + General content of this pastoral record in raw HTML. + type: string + bodyPrivate: + description: | + Confidential content of this pastoral record in raw HTML. + type: string + attachmentsPublic: + description: | + Files attached to General content. + type: array + items: + $ref: ./file.yaml + attachmentsPrivate: + description: | + Files attached to Confidential content. + type: array + items: + $ref: ./file.yaml + commentsPublic: + description: | + General comments. + type: array + items: + $ref: ./discussionComment-read.yaml + commentsPrivate: + description: | + Confidential comments + type: array + items: + $ref: ./discussionComment-read.yaml + recordActions: + nullable: true + description: An array of pastoral actions. + type: array + items: + properties: + id: + description: The ID of the pastoral action. + type: integer + name: + description: The name of the pastoral action. + type: string + completed: + description: Whether the action is completed. + type: boolean + updatedAt: + description: The last modified date of the action as a RFC3339 string. + type: string + format: date-time + updatedBy: + $ref: ./userAuthor.yaml + createdBy: + $ref: ./userAuthor.yaml + createdAt: + type: string + format: date-time + description: | + The date as a RFC3339 string. + updatedBy: + $ref: ./userAuthor.yaml + updatedAt: + type: string + format: date-time + description: | + The date as a RFC3339 string. + _links: + type: object + example: + id: 77 + externalId: null + student: + id: 25 + _links: + profile: /search/user/25 + avatar: /portrait.php?id=25&size=square64 + title: Ms + firstName: Jana + preferredName: null + lastName: Reed + fullName: Ms Jana Reed + isDeleted: false + externalId: 507 + heading: Academic Achievement Award - Semester 2 + type: + id: 1 + name: Academic + colour: null + icon: null + sentiment: neutral + sequence: 1 + subType: + id: 1 + name: Award/Achievement + colour: rgba(182, 74, 74, 1.000) + icon: achievement + sentiment: neutral + sequence: 1 + severity: + id: 1 + name: Low + sequence: 1 + color: rgba(0, 128, 0, 1.000) + points: 50 + tags: + - id: 26 + name: test tag A + - id: 27 + name: test tag B + bodyPrivate: null + bodyPublic: Public body\nPublic body. + attachmentsPrivate: [] + attachmentsPublic: + - hash: 723b6e31c2979b33deea852cdbbad9c4b0e00b96 + mime: image/jpeg + type: image + size: 279489 + _links: + fetch: /storage/fetch.php?hash=723b6e31c2979b33deea852cdbbad9c4b0e00b96 + icon: /static/images/mime/application-image-jpg.svg + image: /storage/image.php?hash=723b6e31c2979b33deea852cdbbad9c4b0e00b96 + commentsPrivate: [] + commentsPublic: [] + recordActions: [] + createdBy: + id: 22 + _links: + profile: /search/user/165 + avatar: /portrait.php?id=165&size=square64 + title: + firstName: Jack + preferredName: null + lastName: Coles + fullName: Jack Coles + isDeleted: false + createdAt: 2022-11-14T15:08:21+11:00 + updatedBy: + id: 22 + _links: + profile: /search/user/165 + avatar: /portrait.php?id=165&size=square64 + title: + firstName: Jack + preferredName: null + lastName: Coles + fullName: Jack Coles + isDeleted: false + updatedAt: 2022-11-14T15:08:21+11:00 + _links: + read: /pastoral/student/25/record/77 diff --git a/openapi/openapi.yaml b/openapi/openapi.yaml index e54b7f66..2e21c567 100644 --- a/openapi/openapi.yaml +++ b/openapi/openapi.yaml @@ -290,6 +290,9 @@ paths: /pastoral/record/insert: $ref: 'paths/pastoral@record@insert.yaml' + /pastoral/record/update: + $ref: 'paths/pastoral@record@update.yaml' + /api/curriculum/usage/{id}: $ref: 'paths/api@curriculum@usage@{id}.yaml' diff --git a/openapi/paths/pastoral@record@update.yaml b/openapi/paths/pastoral@record@update.yaml new file mode 100644 index 00000000..275e7c62 --- /dev/null +++ b/openapi/paths/pastoral@record@update.yaml @@ -0,0 +1,26 @@ +post: + operationId: pastoral.patchRecordUpdate + tags: [pastoral] + summary: Update an existing pastoral record with a partial set of changes. + description: | + Updates an existing pastoral record with a partial set of changes for brevity, such as updating a heading without needing to specify everything about the pastoral record explicitly. + Only some fields are supported by this endpoint, described below. Any fields outside of this set are disregarded. + Any fields omitted remain unchanged. Note that for updating Pastoral Actions you need to enable the config setting in admin. + + #### Availability + This is accessible only when Pastoral module is enabled. + #### Permission + This endpoint is available for: + * Users with Pastoral Moderator service permission + * Users with a role of Staff role type with Access Pastoral Care permission + responses: + '200': + description: Successfully updated a pastoral record + content: + application/json: + schema: + $ref: ../components/schemas/pastoral-partial-item.yaml + default: + $ref: ../components/responses/problem.yaml + requestBody: + $ref: ../components/requestBodies/pastoral-partial-item.yaml From 8dc882b83580b0f7c496c71ede735008fed796e2 Mon Sep 17 00:00:00 2001 From: Steve Chan Date: Wed, 1 Oct 2025 19:50:26 +1000 Subject: [PATCH 2/9] Update request body [SA-20705] --- .../requestBodies/pastoral-partial-item.yaml | 46 +------------------ openapi/paths/pastoral@record@update.yaml | 4 +- 2 files changed, 3 insertions(+), 47 deletions(-) diff --git a/openapi/components/requestBodies/pastoral-partial-item.yaml b/openapi/components/requestBodies/pastoral-partial-item.yaml index 6db2f428..b620782c 100644 --- a/openapi/components/requestBodies/pastoral-partial-item.yaml +++ b/openapi/components/requestBodies/pastoral-partial-item.yaml @@ -11,16 +11,12 @@ content: student_id: description: The ID of a student to create this pastoral record for. type: integer - duplicateIds: - description: A comma separated list of IDs of students to create this pastoral record for. - type: string - nullable: true heading: description: Pastoral record title. type: string maxLength: 255 occurredOn: - description: The date on which this is occurred in the format configured in your Admin area. + description: The date on which this is occurred in the format configured in your Admin area. This also accepts RFC3339 format such as 2021-06-22T01:23:45+10:00 type: string format: date example: 22/06/2021 @@ -57,46 +53,6 @@ content: type: string maxLength: 65535 nullable: true - public_attachments[]: - description: | - Files to attach to general content of the pastoral record, supplied as pointers to a file in Schoolbox.\ - Each pointer will be in the format:\ - `$locator:$location:$filename` - The variables within the pointer have this meaning: - * `$locator` represents the strategy for finding the file: - * `store` for files uploaded to Schoolbox's storage - * `browse` finds files in Schoolbox's resource browser - * `myfile` finds files in a Schoolbox user's My Files browser - * `office365` finds files in an Office365 store - * `$location` is the location of the file within `$locator`: - * for `store` this is a file's unique hash - * for `browse` and `myfile` this is a file ID - * for `office365` this is the file's unique node - * `$filename` is the filename that the file will be given once it is uploaded to wherever it is being uploaded - - See the [Upload a file](#post-/storage/asyncUpload.php) endpoint for details on how to upload a file, and receive a file pointer from that upload. - type: array - nullable: true - private_attachments[]: - description: | - Files to attach to confidential content of the pastoral record, supplied as pointers to a file in Schoolbox.\ - Each pointer will be in the format:\ - `$locator:$location:$filename` - The variables within the pointer have this meaning: - * `$locator` represents the strategy for finding the file: - * `store` for files uploaded to Schoolbox's storage - * `browse` finds files in Schoolbox's resource browser - * `myfile` finds files in a Schoolbox user's My Files browser - * `office365` finds files in an Office365 store - * `$location` is the location of the file within `$locator`: - * for `store` this is a file's unique hash - * for `browse` and `myfile` this is a file ID - * for `office365` this is the file's unique node - * `$filename` is the filename that the file will be given once it is uploaded to wherever it is being uploaded - - See the [Upload a file](#post-/storage/asyncUpload.php) endpoint for details on how to upload a file, and receive a file pointer from that upload. - type: array - nullable: true actions[]: description: | An array of IDs of pastoral action.\ diff --git a/openapi/paths/pastoral@record@update.yaml b/openapi/paths/pastoral@record@update.yaml index 275e7c62..9341c579 100644 --- a/openapi/paths/pastoral@record@update.yaml +++ b/openapi/paths/pastoral@record@update.yaml @@ -1,7 +1,7 @@ -post: +patch: operationId: pastoral.patchRecordUpdate tags: [pastoral] - summary: Update an existing pastoral record with a partial set of changes. + summary: Update an existing pastoral record with a partial set of changes description: | Updates an existing pastoral record with a partial set of changes for brevity, such as updating a heading without needing to specify everything about the pastoral record explicitly. Only some fields are supported by this endpoint, described below. Any fields outside of this set are disregarded. From d51f2248b4af0b38a859efbd3064a8adcf73c62e Mon Sep 17 00:00:00 2001 From: Steve Chan Date: Fri, 3 Oct 2025 14:20:41 +1000 Subject: [PATCH 3/9] Include pastoral id in path [SA-20705] --- openapi/openapi.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openapi/openapi.yaml b/openapi/openapi.yaml index 2e21c567..5eed7cfa 100644 --- a/openapi/openapi.yaml +++ b/openapi/openapi.yaml @@ -290,7 +290,7 @@ paths: /pastoral/record/insert: $ref: 'paths/pastoral@record@insert.yaml' - /pastoral/record/update: + /pastoral/record/{id}/update: $ref: 'paths/pastoral@record@update.yaml' /api/curriculum/usage/{id}: From df117903cb917e8681c4a7f676a906f44ae77e0c Mon Sep 17 00:00:00 2001 From: Steve Chan Date: Fri, 3 Oct 2025 14:21:34 +1000 Subject: [PATCH 4/9] Add parameters and id.yaml reference [SA-20705] --- openapi/paths/pastoral@record@update.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/openapi/paths/pastoral@record@update.yaml b/openapi/paths/pastoral@record@update.yaml index 9341c579..10c7ccf1 100644 --- a/openapi/paths/pastoral@record@update.yaml +++ b/openapi/paths/pastoral@record@update.yaml @@ -2,6 +2,8 @@ patch: operationId: pastoral.patchRecordUpdate tags: [pastoral] summary: Update an existing pastoral record with a partial set of changes + parameters: + - $ref: ../components/parameters/id.yaml description: | Updates an existing pastoral record with a partial set of changes for brevity, such as updating a heading without needing to specify everything about the pastoral record explicitly. Only some fields are supported by this endpoint, described below. Any fields outside of this set are disregarded. From ec757ca9a0d201370a0e3c5be207f4a9329abccb Mon Sep 17 00:00:00 2001 From: Steve Chan Date: Fri, 3 Oct 2025 14:23:12 +1000 Subject: [PATCH 5/9] id no longer required; student_id prohibited [SA-20705] --- openapi/components/requestBodies/pastoral-partial-item.yaml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/openapi/components/requestBodies/pastoral-partial-item.yaml b/openapi/components/requestBodies/pastoral-partial-item.yaml index b620782c..62f44b58 100644 --- a/openapi/components/requestBodies/pastoral-partial-item.yaml +++ b/openapi/components/requestBodies/pastoral-partial-item.yaml @@ -5,12 +5,6 @@ content: schema: type: object properties: - id: - description: The ID of an existing pastoral record that you wish to partially update. - type: integer - student_id: - description: The ID of a student to create this pastoral record for. - type: integer heading: description: Pastoral record title. type: string From d2b504d4ea731a93b9131719aba15f8448a73a6f Mon Sep 17 00:00:00 2001 From: Steve Chan Date: Fri, 3 Oct 2025 14:25:34 +1000 Subject: [PATCH 6/9] Fix all misspellings of "occurred" [SA-20705] --- openapi/components/examples/problem-internalServerError.yaml | 2 +- openapi/components/schemas/pastoral-item.yaml | 2 +- openapi/components/schemas/pastoral-partial-item.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/openapi/components/examples/problem-internalServerError.yaml b/openapi/components/examples/problem-internalServerError.yaml index decc86f1..3a6d2920 100644 --- a/openapi/components/examples/problem-internalServerError.yaml +++ b/openapi/components/examples/problem-internalServerError.yaml @@ -2,4 +2,4 @@ value: type: about:blank title: Internal Server Error status: 500 - detail: An unexpected error occured when accessing resource with ID=1. This error has been logged. + detail: An unexpected error occurred when accessing resource with ID=1. This error has been logged. diff --git a/openapi/components/schemas/pastoral-item.yaml b/openapi/components/schemas/pastoral-item.yaml index fd569111..2aacad54 100644 --- a/openapi/components/schemas/pastoral-item.yaml +++ b/openapi/components/schemas/pastoral-item.yaml @@ -115,7 +115,7 @@ items: sequence: description: The order in which this pastoral severity will display in a pastoral severity list. type: integer - occuredOn: + occurredOn: description: The date on which this is occurred as a RFC3339 string. type: string format: date-time diff --git a/openapi/components/schemas/pastoral-partial-item.yaml b/openapi/components/schemas/pastoral-partial-item.yaml index 015e4232..65fefa85 100644 --- a/openapi/components/schemas/pastoral-partial-item.yaml +++ b/openapi/components/schemas/pastoral-partial-item.yaml @@ -115,7 +115,7 @@ items: sequence: description: The order in which this pastoral severity will display in a pastoral severity list. type: integer - occuredOn: + occurredOn: description: The date on which this is occurred as a RFC3339 string. type: string format: date-time From 5ed830231347d3624dde2a170cc5d84867056334 Mon Sep 17 00:00:00 2001 From: Steve Chan Date: Tue, 14 Oct 2025 17:08:37 +1100 Subject: [PATCH 7/9] Change apparent content-type [SA-20705] --- openapi/components/requestBodies/pastoral-partial-item.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openapi/components/requestBodies/pastoral-partial-item.yaml b/openapi/components/requestBodies/pastoral-partial-item.yaml index 62f44b58..5386a736 100644 --- a/openapi/components/requestBodies/pastoral-partial-item.yaml +++ b/openapi/components/requestBodies/pastoral-partial-item.yaml @@ -1,7 +1,7 @@ description: | Pastoral record content: - application/x-www-form-urlencoded: + application/json: schema: type: object properties: From 9f030b2e2867242cee79fc97fe5ff6244bb3a1cc Mon Sep 17 00:00:00 2001 From: Steve Chan Date: Tue, 14 Oct 2025 17:09:26 +1100 Subject: [PATCH 8/9] For Brevity [SA-20705] --- openapi/paths/pastoral@record@update.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openapi/paths/pastoral@record@update.yaml b/openapi/paths/pastoral@record@update.yaml index 10c7ccf1..f8a6d799 100644 --- a/openapi/paths/pastoral@record@update.yaml +++ b/openapi/paths/pastoral@record@update.yaml @@ -1,7 +1,7 @@ patch: operationId: pastoral.patchRecordUpdate tags: [pastoral] - summary: Update an existing pastoral record with a partial set of changes + summary: Partially update a pastoral record parameters: - $ref: ../components/parameters/id.yaml description: | From 0aad82878c5eac59f5987d93a04453b233b9251a Mon Sep 17 00:00:00 2001 From: Steve Chan Date: Tue, 14 Oct 2025 17:13:29 +1100 Subject: [PATCH 9/9] Use rfc example [SA-20705] --- openapi/components/requestBodies/pastoral-partial-item.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openapi/components/requestBodies/pastoral-partial-item.yaml b/openapi/components/requestBodies/pastoral-partial-item.yaml index 5386a736..a98297e8 100644 --- a/openapi/components/requestBodies/pastoral-partial-item.yaml +++ b/openapi/components/requestBodies/pastoral-partial-item.yaml @@ -13,7 +13,7 @@ content: description: The date on which this is occurred in the format configured in your Admin area. This also accepts RFC3339 format such as 2021-06-22T01:23:45+10:00 type: string format: date - example: 22/06/2021 + example: 2021-06-22T01:23:45+10:00 nullable: true typeId: description: The ID of a pastoral type to associate with this pastoral record.