# Diary API



<EndpointIndex
  names={[
  	'fetchLatestDiaryEntryByLocator',
  	'fetchLatestDiaryEntriesByReference',
  	'fetchAllDiaryEntriesByLocator',
  	'createDiary',
  	'createDiaryForSegmentElement',
  	'createDiaryForQuoteElement',
  	'updateDiary',
  	'discardDiary',
  ]}
/>

Fetch [#fetch]

Fetch Latest Diary Entry By Locator [#fetch-latest-diary-entry-by-locator]

<ApiEndpoint name="fetchLatestDiaryEntryByLocator" />

Fetch Latest Diary Entries By Reference [#fetch-latest-diary-entries-by-reference]

<ApiEndpoint name="fetchLatestDiaryEntriesByReference" />

Fetch All Diary Entries By Locator [#fetch-all-diary-entries-by-locator]

<ApiEndpoint name="fetchAllDiaryEntriesByLocator" />

<ApiSchema name="DiaryEntryResponse" />

Creation [#creation]

Create Diary [#create-diary]

<ApiEndpoint name="createDiary" />

Create Diary For Segment Element [#create-diary-for-segment-element]

<ApiEndpoint name="createDiaryForSegmentElement" />

Create Diary For Quote Element [#create-diary-for-quote-element]

<ApiEndpoint name="createDiaryForQuoteElement" />

<ApiSchema name="DiaryEntryCreateRequest" />

Revisioning [#revisioning]

Update Diary [#update-diary]

<ApiEndpoint name="updateDiary" />

<ApiSchema name="DiaryEntryUpdateRequest" />

Discard [#discard]

Discard Diary [#discard-diary]

<ApiEndpoint name="discardDiary" />

See Also [#see-also]

* [Diaries Feature Guide](/features/work-management/diaries)


## API Reference

GET /auxdata/{tenantLocator}/diary/{locator}/latest — fetchLatestDiaryEntryByLocator
Fetches the latest revision of a single diary entry
Tags: diary-controller
Permissions: read
Parameters:
  tenantLocator (uuid, path, required)
  locator (ulid, path, required)
Responses:
  200 DiaryEntryResponse — OK

GET /auxdata/{tenantLocator}/diary/{referenceType}/{referenceLocator} — fetchLatestDiaryEntriesByReference
Fetches all of the latest revisions for a given entity
Tags: diary-controller
Permissions: read
Parameters:
  tenantLocator (uuid, path, required)
  referenceType (string, path, required)
  referenceLocator (ulid, path, required)
  includeDiscarded (boolean, query)
Responses:
  200 DiaryEntryResponse[] — OK

GET /auxdata/{tenantLocator}/diary/{locator} — fetchAllDiaryEntriesByLocator
Fetches all revisions of a single diary entry
Tags: diary-controller
Permissions: read, list
Parameters:
  tenantLocator (uuid, path, required)
  locator (ulid, path, required)
  offset (integer, query)
  count (integer, query)
Responses:
  200 DiaryEntryResponse[] — OK

POST /auxdata/{tenantLocator}/diary/{referenceType}/{referenceLocator} — createDiary
Tags: diary-controller
Permissions: write
Parameters:
  tenantLocator (uuid, path, required)
  referenceType (string, path, required)
  referenceLocator (ulid, path, required)
Request body (DiaryEntryCreateRequest):
Responses:
  200 DiaryEntryResponse — OK

POST /auxdata/{tenantLocator}/diary/segments/{segmentLocator}/element/{staticElementLocator} — createDiaryForSegmentElement
Tags: diary-controller
Permissions: write
Parameters:
  tenantLocator (uuid, path, required)
  segmentLocator (ulid, path, required)
  staticElementLocator (ulid, path, required)
Request body (DiaryEntryCreateRequest):
Responses:
  200 DiaryEntryResponse — OK

POST /auxdata/{tenantLocator}/diary/quotes/{quoteLocator}/element/{staticElementLocator} — createDiaryForQuoteElement
Tags: diary-controller
Permissions: write
Parameters:
  tenantLocator (uuid, path, required)
  quoteLocator (ulid, path, required)
  staticElementLocator (ulid, path, required)
Request body (DiaryEntryCreateRequest):
Responses:
  200 DiaryEntryResponse — OK

PATCH /auxdata/{tenantLocator}/diary/{locator} — updateDiary
Tags: diary-controller
Permissions: write
Parameters:
  tenantLocator (uuid, path, required)
  locator (ulid, path, required)
Request body (DiaryEntryUpdateRequest):
Responses:
  200 DiaryEntryResponse — OK

PATCH /auxdata/{tenantLocator}/diary/{locator}/discard — discardDiary
Tags: diary-controller
Permissions: write
Parameters:
  tenantLocator (uuid, path, required)
  locator (ulid, path, required)
Responses:
  200 DiaryEntryResponse — OK

DiaryEntryResponse
Properties:
  locator (ulid, required)
  referenceLocator (ulid, required)
  referenceType (Enum quote | policy | transaction | task | fnol | invoice | account | underwritingFlag | payment | quoteGroup | inquiry | element, required)
  category (string)
  contents (string, required)
  createdAt (datetime, required)
  createdBy (uuid, required)
  updatedAt (datetime, required)
  updatedBy (uuid, required)
  diaryState (Enum active | discarded, required)

DiaryEntryCreateRequest
Properties:
  category (string)
  contents (string, required)

DiaryEntryUpdateRequest
Properties:
  category (string)
  contents (string, required)