# Get documents Retrieves one or more documents by internal ID or external ID, with optional field projection and soft-delete inclusion. Request: ids - List of internal document IDs to retrieve. externalIds - List of external IDs to retrieve documents by. fetches - Optional field projection expression limiting which document fields are returned. includeDeleted - When true, includes soft-deleted documents in the results. Response: documents - List of Document objects (id, kind, doc body, timestamps). Endpoint: POST /api/v1/document/retrieve Version: 3.0 Security: bearerAuth ## Request fields (application/json): - `ids` (array) - `fetches` (string) Rule data fields - `includeDeleted` (boolean) - `externalIds` (array) ## Response 200 fields (application/json): - `documents` (array) - `documents.id` (string) Rule data fields - `documents.kind` (string) Rule data fields - `documents.doc` (any) - `documents.createdDt` (object) - `documents.createdDt.seconds` (integer) - `documents.createdDt.nanos` (integer) - `documents.updatedDt` (object) - `documents.deletedDt` (object) ## Response 400 fields (application/json): - `message` (string) ## Response 401 fields (application/json): - `message` (string) ## Response 403 fields (application/json): - `message` (string) ## Response 404 fields (application/json): - `message` (string) ## Response 409 fields (application/json): - `message` (string) ## Response 429 fields (application/json): - `message` (string) ## Response 499 fields (application/json): - `message` (string) ## Response 500 fields (application/json): - `message` (string) ## Response 501 fields (application/json): - `message` (string) ## Response 503 fields (application/json): - `message` (string) ## Response 504 fields (application/json): - `message` (string)