Creates a note on the work order if no note with noteCode exists yet,
else updates the existing note's content / coordinates. Supports standard
and custom notes. For custom notes tech visibility is always false.
Rate limit range : Low
Body
Required
-
Code of the note type, as configured in Praxedo. Represent category of the note (standard note or call note or custom note).
-
ISO 8601 timestamp of the note. Must not be in the future.
-
Phone number of the caller. Required when the note type's category is
INCOMING_CALLorOUTGOING_CALL. Optional for categoryNOTE. -
Determines who can see the note. If omitted entirely, visibility defaults are inherited from the note type configuration. If supplied, it fully overrides those defaults (no partial merge).
PUT
/eTech/rest/ws/diagnostic/v1/workOrders/uuid:{workOrderUuid}/notes/code:{noteCode}
curl \
--request PUT 'https://ws-eu1.praxedo.com/eTech/rest/ws/diagnostic/v1/workOrders/uuid:550e8400-e29b-41d4-a716-446655440000/notes/code:MAESTRO-NOTE-77213' \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"noteTypeCode": "STANDNOTE",
"author": "DHA",
"date": "2025-11-05 14:32:00 UTC",
"content": {
"text": "Gate code is #9292"
},
"visibility": {
"technician": true,
"customerPortalUser": false
}
}'
Request examples
Standard free-text note
{
"noteTypeCode": "STANDNOTE",
"author": "DHA",
"date": "2025-11-05 14:32:00 UTC",
"content": {
"text": "Gate code is #9292"
},
"visibility": {
"technician": true,
"customerPortalUser": false
}
}
{
"noteTypeCode": "INC",
"author": "DHA",
"date": "2025-11-05 14:32:00 UTC",
"coordinates": "+33612345678",
"content": {
"text": "Customer called to confirm appointment."
},
"visibility": {
"technician": false,
"customerPortalUser": false
}
}
{
"noteTypeCode": "OUT",
"author": "DHA",
"date": "2025-11-05 16:05:00 UTC",
"coordinates": "+33698765432",
"content": {
"text": "Called customer back to reschedule the visit to next Tuesday."
},
"visibility": {
"technician": true,
"customerPortalUser": false
}
}
{
"noteTypeCode": "NFORM",
"author": "DHA",
"date": "2025-11-05 14:32:00 UTC",
"content": {
"reportFields": {
"REASON": {
"dropDownValue": "Reschedule"
},
"CALLBACK_DATE": {
"dateValue": "2025-12-01"
},
"CALLBACK_TIME": {
"timeValue": 52200
},
"CONTACT_NAME": {
"textValue": "John Smith"
},
"VIP?": {
"booleanValue": false
},
"PARTS_COUNT": {
"numericValue": 3
},
"PROCEDURE_LINK": {
"urlValue": "https://intranet.acme.com/procedures/reschedule"
}
}
},
"visibility": {
"technician": true,
"customerPortalUser": false
}
}
{
"noteTypeCode": "NFORM",
"author": "DHA",
"date": "2025-11-06 09:12:00 UTC",
"content": {
"reportFields": {
"REASON": {
"dropDownValue": "Resolved"
},
"CONTACT_NAME": {
"textValue": "John Smith"
}
}
},
"visibility": {
"technician": true,
"customerPortalUser": false
}
}
Response examples (201)
Response examples (204)
Response examples (400)
Missing wo code in path
{
"errors": [
{
"code": "diagnostic.workorders.code.mandatory",
"message": "Missing code in path."
}
],
"errorReference": "abcdefghij0123456789"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.code.mandatory",
"message": "Missing code in path."
}
],
"errorReference": "abcdefghij0123456789"
}
{
"errors": [
{
"code": "diagnostic.workorders.code.unknown",
"message": "The work order [WO-2025-004821] is unknown. It don't exisits or it is outside oauth2 hierarchy."
}
],
"errorReference": "123e4567-e89b-12d3-a456-426614174000"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.noteTypeCode.unknown",
"message": "The note type code [NFORM] is unknown."
}
],
"errorReference": "223e4567-e89b-12d3-a456-426614174001"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.content.reportFields.code.unknown",
"message": "The report fields code [BUDGET] us unknown."
}
],
"errorReference": "323e4567-e89b-12d3-a456-426614174002"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.date.format",
"message": "Date don't respect expected format."
}
],
"errorReference": "423e4567-e89b-12d3-a456-426614174003"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.content.reportFields.value.format",
"message": "The report fields [PARTS_COUNT] value don't respect expected format."
}
],
"errorReference": "523e4567-e89b-12d3-a456-426614174004"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.noteTypeCode.mandatory",
"message": "Property noteTypeCode is required."
}
],
"errorReference": "623e4567-e89b-12d3-a456-426614174005"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.content.mandatory",
"message": "Property content is required."
}
],
"errorReference": "723e4567-e89b-12d3-a456-426614174006"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.content.text.mandatory",
"message": "Property content.text is required for standard notes."
}
],
"errorReference": "823e4567-e89b-12d3-a456-426614174007"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.content.reportFields.mandatory",
"message": "Property content.reportFields is required for custom notes."
}
],
"errorReference": "923e4567-e89b-12d3-a456-426614174008"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.content.fields.mandatory",
"message": "Fields [code] is required for custom notes."
}
],
"errorReference": "923e4567-e89b-12d3-a456-426614175838"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.coordinates.mandatory",
"message": "Property coordinates is required for call notes."
}
],
"errorReference": "a23e4567-e89b-12d3-a456-426614174009"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.date.futur",
"message": "A date cannot be set in the futur"
}
],
"errorReference": "b23e4567-e89b-12d3-a456-426614174010"
}
{
"errors": [
{
"code": "diagnostic.workorders.note.invalid.json",
"message": "Invalid Json format."
}
],
"errorReference": "c23e4567-e89b-12d3-a456-426614174011"
}
Response examples (401)
401 unauthorized
{
"errors": [
{
"code": "unauthorized.nocredentials",
"message": "No credentials."
}
],
"errorReference": "f939c6b8c15045c9a70f500fdb570555"
}
{
"errors": [
{
"code": "unauthorized.badcredentials",
"message": "Bad Credentials."
}
],
"errorReference": "f1028f99811b422eb21f5ff176664069"
}
Response examples (403)
{
"errors": [
{
"code": "access.forbiden",
"message": "You don't have the rights to access this resource."
}
],
"errorReference": "a745dc4c5a2b473aaf8ce94c9260aa8f"
}
Response examples (429)
{
"errors": [
{
"code": "ratelimiter.toomanyrequest",
"message": "Rejected because of the rate limit definition."
}
],
"errorReference": "973326230a3f44daba6cc34a5939b4fb"
}
Response examples (500)
{
"errors": [
{
"code": "internal.server.error",
"message": "Something went wrong."
}
],
"errorReference": "6377010431314bf6b0b95ec4d32ddae0"
}