Skip to main content

Finalize Document

Mark a document as finished or revert to unfinished status.

Overview

Documents have a finished boolean flag to indicate completion status. This is a simple finalization system, not a multi-step workflow.

Endpoint

POST /api/v3/speech-to-text/session/{sessionId}/document/{documentId}/finished_status?status={true|false}

Parameters

ParameterTypeLocationDescription
statusbooleanQuerytrue to mark as finished, false to mark as unfinished

Response

Status: 200 OK

{
"count": 1,
"total_results": 1,
"result": {
"id": "doc_xyz789",
"filename": "Meeting Notes",
"finished": true,
"last_modified": "2025-01-17T16:00:00Z"
}
}

Finished Flag

ValueMeaning
trueDocument is finalized and complete
falseDocument is still in progress (default)

Note: This is a simple boolean flag, not a multi-stage workflow. There are no intermediate states like "review" or "draft".

Examples

Mark as Finished

curl -X POST "https://api.scriptix.io/api/v3/speech-to-text/session/sess_abc123/document/doc_xyz789/finished_status?status=true" \
-H "Authorization: Bearer YOUR_API_KEY"

Mark as Unfinished

curl -X POST "https://api.scriptix.io/api/v3/speech-to-text/session/sess_abc123/document/doc_xyz789/finished_status?status=false" \
-H "Authorization: Bearer YOUR_API_KEY"

Shared Documents

Finalize shared documents accessed via magic link:

curl -X PUT "https://api.scriptix.io/api/v3/speech-to-text/session/sess_abc123/shared/document/doc_xyz789/finish?token=MAGIC_TOKEN" \
-H "Content-Type: application/json"

Note: Shared documents use a different endpoint:

  • Regular: POST .../finished_status?status=true
  • Shared: PUT .../shared/document/{id}/finish

Filtering by Finished Status

When listing sessions/documents, filter by finished status:

# Get all sessions
curl "https://api.scriptix.io/api/v3/speech-to-text/session" \
-H "Authorization: Bearer YOUR_API_KEY"

# Then filter in code
documents = [d for d in all_docs if d['finished'] == True]

Note: The API doesn't support filtering by finished in query parameters. Filter results client-side.

Difference from Session Status

Don't confuse document finished with session status:

Session Status

Transcription process status (on session):

  • queued - Waiting for processing
  • processing - Currently transcribing
  • completed - Transcription finished
  • failed - Transcription failed

Document Finished

User completion status (on document):

  • true - User marked as complete
  • false - User still working on it

A document can be unfinished (finished: false) even if the session is completed (status: "completed").

Error Handling

StatusDescription
400Invalid status parameter (must be true or false)
401Unauthorized - invalid or missing API key
404Document or session not found
500Internal server error

Example Error

{
"error": "Invalid status parameter",
"message": "Status must be 'true' or 'false'",
"status": 400
}