Class RawRecordsClient

java.lang.Object
ai.vectros.resources.records.RawRecordsClient

public class RawRecordsClient extends Object
  • Field Details

  • Constructor Details

    • RawRecordsClient

      public RawRecordsClient(ClientOptions clientOptions)
  • Method Details

    • batchGetRecords

      public VectrosApiHttpResponse<BatchGetResponse> batchGetRecords()
      Fetches multiple records by ID in one call (ids, maximum 100). The response contains only the records you can access — any id that does not exist, belongs to another account/AppContext, or is outside your token's scope is silently omitted, with no per-id existence signal, matching the not-found behavior of the single-record GET. Payloads are hydrated the same way a by-id GET hydrates them (payloads externalized to object storage are rehydrated for this response). Requires the records:r scope (and, for a scoped token, records:r:<type> per record type).
    • batchGetRecords

      public VectrosApiHttpResponse<BatchGetResponse> batchGetRecords(RequestOptions requestOptions)
      Fetches multiple records by ID in one call (ids, maximum 100). The response contains only the records you can access — any id that does not exist, belongs to another account/AppContext, or is outside your token's scope is silently omitted, with no per-id existence signal, matching the not-found behavior of the single-record GET. Payloads are hydrated the same way a by-id GET hydrates them (payloads externalized to object storage are rehydrated for this response). Requires the records:r scope (and, for a scoped token, records:r:<type> per record type).
    • batchGetRecords

      public VectrosApiHttpResponse<BatchGetResponse> batchGetRecords(BatchGetRequest request)
      Fetches multiple records by ID in one call (ids, maximum 100). The response contains only the records you can access — any id that does not exist, belongs to another account/AppContext, or is outside your token's scope is silently omitted, with no per-id existence signal, matching the not-found behavior of the single-record GET. Payloads are hydrated the same way a by-id GET hydrates them (payloads externalized to object storage are rehydrated for this response). Requires the records:r scope (and, for a scoped token, records:r:<type> per record type).
    • batchGetRecords

      public VectrosApiHttpResponse<BatchGetResponse> batchGetRecords(BatchGetRequest request, RequestOptions requestOptions)
      Fetches multiple records by ID in one call (ids, maximum 100). The response contains only the records you can access — any id that does not exist, belongs to another account/AppContext, or is outside your token's scope is silently omitted, with no per-id existence signal, matching the not-found behavior of the single-record GET. Payloads are hydrated the same way a by-id GET hydrates them (payloads externalized to object storage are rehydrated for this response). Requires the records:r scope (and, for a scoped token, records:r:<type> per record type).
    • batchLookupRecords

      public VectrosApiHttpResponse<BatchLookupResponse> batchLookupRecords()
      Reserved endpoint for batch lookup and reference resolution. The published response shape correlates results to each input and carries a per-item status envelope. It currently returns 501 (not implemented). The documented 200 response schema is the stable shape this endpoint will use once available. Requires the records:r scope.
    • batchLookupRecords

      public VectrosApiHttpResponse<BatchLookupResponse> batchLookupRecords(RequestOptions requestOptions)
      Reserved endpoint for batch lookup and reference resolution. The published response shape correlates results to each input and carries a per-item status envelope. It currently returns 501 (not implemented). The documented 200 response schema is the stable shape this endpoint will use once available. Requires the records:r scope.
    • batchLookupRecords

      public VectrosApiHttpResponse<BatchLookupResponse> batchLookupRecords(BatchLookupRequest request)
      Reserved endpoint for batch lookup and reference resolution. The published response shape correlates results to each input and carries a per-item status envelope. It currently returns 501 (not implemented). The documented 200 response schema is the stable shape this endpoint will use once available. Requires the records:r scope.
    • batchLookupRecords

      public VectrosApiHttpResponse<BatchLookupResponse> batchLookupRecords(BatchLookupRequest request, RequestOptions requestOptions)
      Reserved endpoint for batch lookup and reference resolution. The published response shape correlates results to each input and carries a per-item status envelope. It currently returns 501 (not implemented). The documented 200 response schema is the stable shape this endpoint will use once available. Requires the records:r scope.
    • batchWriteRecords

      public VectrosApiHttpResponse<BatchWriteResponse> batchWriteRecords()
      Reserved endpoint for bulk record writes. The published response shape includes a per-item partial-failure envelope and an atomicity flag. It currently returns 501 (not implemented). The documented 200 response schema is the stable shape this endpoint will use once available, published now so SDK integrations against it will not break when it ships. Requires the records:c scope.
    • batchWriteRecords

      public VectrosApiHttpResponse<BatchWriteResponse> batchWriteRecords(RequestOptions requestOptions)
      Reserved endpoint for bulk record writes. The published response shape includes a per-item partial-failure envelope and an atomicity flag. It currently returns 501 (not implemented). The documented 200 response schema is the stable shape this endpoint will use once available, published now so SDK integrations against it will not break when it ships. Requires the records:c scope.
    • batchWriteRecords

      public VectrosApiHttpResponse<BatchWriteResponse> batchWriteRecords(BatchWriteRequest request)
      Reserved endpoint for bulk record writes. The published response shape includes a per-item partial-failure envelope and an atomicity flag. It currently returns 501 (not implemented). The documented 200 response schema is the stable shape this endpoint will use once available, published now so SDK integrations against it will not break when it ships. Requires the records:c scope.
    • batchWriteRecords

      public VectrosApiHttpResponse<BatchWriteResponse> batchWriteRecords(BatchWriteRequest request, RequestOptions requestOptions)
      Reserved endpoint for bulk record writes. The published response shape includes a per-item partial-failure envelope and an atomicity flag. It currently returns 501 (not implemented). The documented 200 response schema is the stable shape this endpoint will use once available, published now so SDK integrations against it will not break when it ships. Requires the records:c scope.
    • listRecords

      public VectrosApiHttpResponse<RecordPage> listRecords()
      Returns a paginated list of records in your account as a {data, nextCursor} page. Supply exactly one of type, folderId, or recent=true to choose the mode: type lists all records of a single type; folderId lists all records in a folder (any type); and recent=true returns the account-wide recently-updated feed across all types, newest first. You may combine type with folderId to list a single type within a folder. The owner filters (userId, scope) further narrow the type and folder modes; the recent feed is standalone and ignores all filters. Each token only sees the record types it is scoped to read. Requires the records:r scope. By default the response returns the indexed projection of each record; set includePayload=true to include full payloads.
    • listRecords

      public VectrosApiHttpResponse<RecordPage> listRecords(RequestOptions requestOptions)
      Returns a paginated list of records in your account as a {data, nextCursor} page. Supply exactly one of type, folderId, or recent=true to choose the mode: type lists all records of a single type; folderId lists all records in a folder (any type); and recent=true returns the account-wide recently-updated feed across all types, newest first. You may combine type with folderId to list a single type within a folder. The owner filters (userId, scope) further narrow the type and folder modes; the recent feed is standalone and ignores all filters. Each token only sees the record types it is scoped to read. Requires the records:r scope. By default the response returns the indexed projection of each record; set includePayload=true to include full payloads.
    • listRecords

      public VectrosApiHttpResponse<RecordPage> listRecords(ListRecordsRequest request)
      Returns a paginated list of records in your account as a {data, nextCursor} page. Supply exactly one of type, folderId, or recent=true to choose the mode: type lists all records of a single type; folderId lists all records in a folder (any type); and recent=true returns the account-wide recently-updated feed across all types, newest first. You may combine type with folderId to list a single type within a folder. The owner filters (userId, scope) further narrow the type and folder modes; the recent feed is standalone and ignores all filters. Each token only sees the record types it is scoped to read. Requires the records:r scope. By default the response returns the indexed projection of each record; set includePayload=true to include full payloads.
    • listRecords

      public VectrosApiHttpResponse<RecordPage> listRecords(ListRecordsRequest request, RequestOptions requestOptions)
      Returns a paginated list of records in your account as a {data, nextCursor} page. Supply exactly one of type, folderId, or recent=true to choose the mode: type lists all records of a single type; folderId lists all records in a folder (any type); and recent=true returns the account-wide recently-updated feed across all types, newest first. You may combine type with folderId to list a single type within a folder. The owner filters (userId, scope) further narrow the type and folder modes; the recent feed is standalone and ignores all filters. Each token only sees the record types it is scoped to read. Requires the records:r scope. By default the response returns the indexed projection of each record; set includePayload=true to include full payloads.
    • createRecord

      Creates a new record of a given type. The payload is validated against that type's schema before the record is stored. Identify the type by sending typeName, schemaId, or both (they must agree); if you send only schemaId, the type is taken from that schema. Optionally supply an externalId to make the create idempotent — if a record with the same externalId already exists in your context, that existing record is returned unchanged instead of a duplicate being created. The response's created field (and the HTTP status — 201 when created, 200 when an existing record was returned) tells the two apart. To overwrite an existing record's content instead of returning it unchanged, set ?upsert=true (this also requires the records:u:<type> scope). Requires the records:c:<type> scope to create. Being returned the existing record on a collision is a read of that record's data and additionally requires the records:r:<type> scope — a credential holding records:c:<type> alone receives a 400 ("already exists") on collision instead of the record.
    • createRecord

      public VectrosApiHttpResponse<RecordResponse> createRecord(RecordRequest body, RequestOptions requestOptions)
      Creates a new record of a given type. The payload is validated against that type's schema before the record is stored. Identify the type by sending typeName, schemaId, or both (they must agree); if you send only schemaId, the type is taken from that schema. Optionally supply an externalId to make the create idempotent — if a record with the same externalId already exists in your context, that existing record is returned unchanged instead of a duplicate being created. The response's created field (and the HTTP status — 201 when created, 200 when an existing record was returned) tells the two apart. To overwrite an existing record's content instead of returning it unchanged, set ?upsert=true (this also requires the records:u:<type> scope). Requires the records:c:<type> scope to create. Being returned the existing record on a collision is a read of that record's data and additionally requires the records:r:<type> scope — a credential holding records:c:<type> alone receives a 400 ("already exists") on collision instead of the record.
    • createRecord

      Creates a new record of a given type. The payload is validated against that type's schema before the record is stored. Identify the type by sending typeName, schemaId, or both (they must agree); if you send only schemaId, the type is taken from that schema. Optionally supply an externalId to make the create idempotent — if a record with the same externalId already exists in your context, that existing record is returned unchanged instead of a duplicate being created. The response's created field (and the HTTP status — 201 when created, 200 when an existing record was returned) tells the two apart. To overwrite an existing record's content instead of returning it unchanged, set ?upsert=true (this also requires the records:u:<type> scope). Requires the records:c:<type> scope to create. Being returned the existing record on a collision is a read of that record's data and additionally requires the records:r:<type> scope — a credential holding records:c:<type> alone receives a 400 ("already exists") on collision instead of the record.
    • createRecord

      public VectrosApiHttpResponse<RecordResponse> createRecord(CreateRecordRequest request, RequestOptions requestOptions)
      Creates a new record of a given type. The payload is validated against that type's schema before the record is stored. Identify the type by sending typeName, schemaId, or both (they must agree); if you send only schemaId, the type is taken from that schema. Optionally supply an externalId to make the create idempotent — if a record with the same externalId already exists in your context, that existing record is returned unchanged instead of a duplicate being created. The response's created field (and the HTTP status — 201 when created, 200 when an existing record was returned) tells the two apart. To overwrite an existing record's content instead of returning it unchanged, set ?upsert=true (this also requires the records:u:<type> scope). Requires the records:c:<type> scope to create. Being returned the existing record on a collision is a read of that record's data and additionally requires the records:r:<type> scope — a credential holding records:c:<type> alone receives a 400 ("already exists") on collision instead of the record.
    • getRecord

      Retrieves a single record by its Vectros-assigned ID, including its full payload (payloads that were externalized to object storage are rehydrated for this response). Sensitive fields are masked according to the record's schema. Requires the records:r:<type> scope. A record outside your account or scope returns 404 (not found) rather than revealing its existence.
    • getRecord

      public VectrosApiHttpResponse<RecordResponse> getRecord(String id, RequestOptions requestOptions)
      Retrieves a single record by its Vectros-assigned ID, including its full payload (payloads that were externalized to object storage are rehydrated for this response). Sensitive fields are masked according to the record's schema. Requires the records:r:<type> scope. A record outside your account or scope returns 404 (not found) rather than revealing its existence.
    • getRecord

      Retrieves a single record by its Vectros-assigned ID, including its full payload (payloads that were externalized to object storage are rehydrated for this response). Sensitive fields are masked according to the record's schema. Requires the records:r:<type> scope. A record outside your account or scope returns 404 (not found) rather than revealing its existence.
    • getRecord

      public VectrosApiHttpResponse<RecordResponse> getRecord(String id, GetRecordRequest request, RequestOptions requestOptions)
      Retrieves a single record by its Vectros-assigned ID, including its full payload (payloads that were externalized to object storage are rehydrated for this response). Sensitive fields are masked according to the record's schema. Requires the records:r:<type> scope. A record outside your account or scope returns 404 (not found) rather than revealing its existence.
    • updateRecord

      public VectrosApiHttpResponse<RecordResponse> updateRecord(String id, RecordRequest body)
      Replaces a record's payload and mutable fields. This is a full replacement: the payload you send overwrites the existing payload entirely, so include every field you want to keep (use the PATCH endpoint to change only specific fields). typeName and schemaId are immutable and cannot be changed. The new payload is validated against the record's schema. Pass expectedVersion to make the update conditional on the record not having changed since you last read it (optimistic concurrency). Requires the records:u:<type> scope.
    • updateRecord

      public VectrosApiHttpResponse<RecordResponse> updateRecord(String id, RecordRequest body, RequestOptions requestOptions)
      Replaces a record's payload and mutable fields. This is a full replacement: the payload you send overwrites the existing payload entirely, so include every field you want to keep (use the PATCH endpoint to change only specific fields). typeName and schemaId are immutable and cannot be changed. The new payload is validated against the record's schema. Pass expectedVersion to make the update conditional on the record not having changed since you last read it (optimistic concurrency). Requires the records:u:<type> scope.
    • updateRecord

      public VectrosApiHttpResponse<RecordResponse> updateRecord(String id, UpdateRecordRequest request)
      Replaces a record's payload and mutable fields. This is a full replacement: the payload you send overwrites the existing payload entirely, so include every field you want to keep (use the PATCH endpoint to change only specific fields). typeName and schemaId are immutable and cannot be changed. The new payload is validated against the record's schema. Pass expectedVersion to make the update conditional on the record not having changed since you last read it (optimistic concurrency). Requires the records:u:<type> scope.
    • updateRecord

      public VectrosApiHttpResponse<RecordResponse> updateRecord(String id, UpdateRecordRequest request, RequestOptions requestOptions)
      Replaces a record's payload and mutable fields. This is a full replacement: the payload you send overwrites the existing payload entirely, so include every field you want to keep (use the PATCH endpoint to change only specific fields). typeName and schemaId are immutable and cannot be changed. The new payload is validated against the record's schema. Pass expectedVersion to make the update conditional on the record not having changed since you last read it (optimistic concurrency). Requires the records:u:<type> scope.
    • deleteRecord

      public VectrosApiHttpResponse<Void> deleteRecord(String id)
      Permanently deletes a record. This is a hard delete: the record is removed and a tombstone plus an audit-trail entry are recorded (you can later retrieve the tombstone via GET /v1/records/{id}/tombstone). Requires the records:d:<type> scope.
    • deleteRecord

      public VectrosApiHttpResponse<Void> deleteRecord(String id, RequestOptions requestOptions)
      Permanently deletes a record. This is a hard delete: the record is removed and a tombstone plus an audit-trail entry are recorded (you can later retrieve the tombstone via GET /v1/records/{id}/tombstone). Requires the records:d:<type> scope.
    • deleteRecord

      public VectrosApiHttpResponse<Void> deleteRecord(String id, DeleteRecordRequest request)
      Permanently deletes a record. This is a hard delete: the record is removed and a tombstone plus an audit-trail entry are recorded (you can later retrieve the tombstone via GET /v1/records/{id}/tombstone). Requires the records:d:<type> scope.
    • deleteRecord

      public VectrosApiHttpResponse<Void> deleteRecord(String id, DeleteRecordRequest request, RequestOptions requestOptions)
      Permanently deletes a record. This is a hard delete: the record is removed and a tombstone plus an audit-trail entry are recorded (you can later retrieve the tombstone via GET /v1/records/{id}/tombstone). Requires the records:d:<type> scope.
    • patchRecord

      public VectrosApiHttpResponse<RecordResponse> patchRecord(String id, PatchRecordRequest request)
      Partially updates a record using an RFC 7386 JSON Merge Patch. The payload object is deep-merged into the existing payload: keys you send overwrite (recursing into nested objects), a key set to null is deleted, and keys you omit are left unchanged — so you can change a single field without re-sending the rest (unlike the full-replacement PUT). Top-level fields (status, folderId, userId, scopes) are set when present and left unchanged when omitted; sending a top-level field as null is rejected (clearing a top-level field is not supported in this release — omit it instead). typeName, schemaId, externalId, and indexMode are immutable and rejected if present. The merged result is validated against the schema. Pass expectedVersion to make the patch conditional (optimistic concurrency, 409 on conflict). Requires the records:u:<type> scope.
    • patchRecord

      public VectrosApiHttpResponse<RecordResponse> patchRecord(String id, PatchRecordRequest request, RequestOptions requestOptions)
      Partially updates a record using an RFC 7386 JSON Merge Patch. The payload object is deep-merged into the existing payload: keys you send overwrite (recursing into nested objects), a key set to null is deleted, and keys you omit are left unchanged — so you can change a single field without re-sending the rest (unlike the full-replacement PUT). Top-level fields (status, folderId, userId, scopes) are set when present and left unchanged when omitted; sending a top-level field as null is rejected (clearing a top-level field is not supported in this release — omit it instead). typeName, schemaId, externalId, and indexMode are immutable and rejected if present. The merged result is validated against the schema. Pass expectedVersion to make the patch conditional (optimistic concurrency, 409 on conflict). Requires the records:u:<type> scope.
    • lookupRecords

      Finds records by the value of a lookup field declared on the type's schema. Provide exactly one lookup mode: value (exact match), from+to (inclusive range, ascending by value), or prefix (string fields only, ascending). Range and prefix lookups are not supported on a sensitive field, because its value is stored as a blind index and has no sortable order. An exact-value lookup on a sensitive field is also rejected on this GET endpoint — the value must not appear in the URL — so use the POST /v1/records/lookup body variant for sensitive fields.

      A value lookup can additionally be narrowed to a window of the lookup field's sort key using sortFrom and/or sortTo (inclusive) — for example, one session's records created since a timestamp. The sort key is whatever the schema declares as that lookup's sortBy (createdAt by default, lastUpdated, or another field), and bounds are given in that field's own units — epoch milliseconds for the two timestamp options. Records that have no value for the sorted field are never included in a bounded window — they are ordered ahead of every record that does have one, and a sortFrom/sortTo window only ever selects from records carrying a value. The sorted field does not have to be required.

      Narrowing is available on any lookup field your schema declares for fast equality lookup, and on externalId — which is always ordered by creation time, so its bounds are epoch milliseconds whatever the schema says. It is rejected (400) for a field declared with rangeEnabled, for a field declared beyond the schema's fast-lookup budget, for a lookup whose sortBy names a sensitive field (a sensitive value is stored as a blind index and has no order), and for a window whose start is after its end. Ownership fields are not lookup fields on this endpoint at all — see the field parameter.

      While paging a narrowed lookup, keep every other parameter identical. The cursor is valid only for the exact query that returned it — changing order, sortFrom, sortTo, or dropping them altogether, is rejected rather than silently resumed at a position that means something different in the new query.

      Results are paginated: set limit for the page size and pass the returned nextCursor back as startFrom for the next page. Keep paging until nextCursor is null — a page can come back empty or shorter than limit while more results remain, so an empty page is not the end of the results. Requires the records:r:<type> scope.

    • lookupRecords

      public VectrosApiHttpResponse<RecordLookupPage> lookupRecords(LookupRecordsRequest request, RequestOptions requestOptions)
      Finds records by the value of a lookup field declared on the type's schema. Provide exactly one lookup mode: value (exact match), from+to (inclusive range, ascending by value), or prefix (string fields only, ascending). Range and prefix lookups are not supported on a sensitive field, because its value is stored as a blind index and has no sortable order. An exact-value lookup on a sensitive field is also rejected on this GET endpoint — the value must not appear in the URL — so use the POST /v1/records/lookup body variant for sensitive fields.

      A value lookup can additionally be narrowed to a window of the lookup field's sort key using sortFrom and/or sortTo (inclusive) — for example, one session's records created since a timestamp. The sort key is whatever the schema declares as that lookup's sortBy (createdAt by default, lastUpdated, or another field), and bounds are given in that field's own units — epoch milliseconds for the two timestamp options. Records that have no value for the sorted field are never included in a bounded window — they are ordered ahead of every record that does have one, and a sortFrom/sortTo window only ever selects from records carrying a value. The sorted field does not have to be required.

      Narrowing is available on any lookup field your schema declares for fast equality lookup, and on externalId — which is always ordered by creation time, so its bounds are epoch milliseconds whatever the schema says. It is rejected (400) for a field declared with rangeEnabled, for a field declared beyond the schema's fast-lookup budget, for a lookup whose sortBy names a sensitive field (a sensitive value is stored as a blind index and has no order), and for a window whose start is after its end. Ownership fields are not lookup fields on this endpoint at all — see the field parameter.

      While paging a narrowed lookup, keep every other parameter identical. The cursor is valid only for the exact query that returned it — changing order, sortFrom, sortTo, or dropping them altogether, is rejected rather than silently resumed at a position that means something different in the new query.

      Results are paginated: set limit for the page size and pass the returned nextCursor back as startFrom for the next page. Keep paging until nextCursor is null — a page can come back empty or shorter than limit while more results remain, so an empty page is not the end of the results. Requires the records:r:<type> scope.

    • lookupRecordsByBody

      public VectrosApiHttpResponse<RecordLookupPage> lookupRecordsByBody(RecordLookupRequest request)
      Body-based equivalent of GET /v1/records/lookup. Use this when looking up by a sensitive field: the value travels in the request body (and is blind-indexed server-side) instead of in the URL query string, so it never lands in access, CDN, or proxy logs. The GET variant rejects an exact-value lookup on a sensitive field and directs you here. Non-sensitive exact-value, range (from+to), and prefix lookups also work here, as does narrowing a value lookup by the field's sort key with sortFrom/sortTo — see the GET variant for what the sort key is and when narrowing by it is available. Returns the same {data, nextCursor} envelope and uses the same pagination as the GET variant; keep paging until nextCursor is null rather than stopping on an empty page. Requires the records:r:<type> scope.
    • lookupRecordsByBody

      public VectrosApiHttpResponse<RecordLookupPage> lookupRecordsByBody(RecordLookupRequest request, RequestOptions requestOptions)
      Body-based equivalent of GET /v1/records/lookup. Use this when looking up by a sensitive field: the value travels in the request body (and is blind-indexed server-side) instead of in the URL query string, so it never lands in access, CDN, or proxy logs. The GET variant rejects an exact-value lookup on a sensitive field and directs you here. Non-sensitive exact-value, range (from+to), and prefix lookups also work here, as does narrowing a value lookup by the field's sort key with sortFrom/sortTo — see the GET variant for what the sort key is and when narrowing by it is available. Returns the same {data, nextCursor} envelope and uses the same pagination as the GET variant; keep paging until nextCursor is null rather than stopping on an empty page. Requires the records:r:<type> scope.
    • getRecordTombstone

      public VectrosApiHttpResponse<RecordResponse> getRecordTombstone(String id)
      Returns the tombstone left behind when a record was hard-deleted, confirming the deletion and recording when it happened. Look it up using the deleted record's original ID. Requires the records:r:<type> scope.
    • getRecordTombstone

      public VectrosApiHttpResponse<RecordResponse> getRecordTombstone(String id, RequestOptions requestOptions)
      Returns the tombstone left behind when a record was hard-deleted, confirming the deletion and recording when it happened. Look it up using the deleted record's original ID. Requires the records:r:<type> scope.
    • getRecordTombstone

      public VectrosApiHttpResponse<RecordResponse> getRecordTombstone(String id, GetRecordTombstoneRequest request)
      Returns the tombstone left behind when a record was hard-deleted, confirming the deletion and recording when it happened. Look it up using the deleted record's original ID. Requires the records:r:<type> scope.
    • getRecordTombstone

      public VectrosApiHttpResponse<RecordResponse> getRecordTombstone(String id, GetRecordTombstoneRequest request, RequestOptions requestOptions)
      Returns the tombstone left behind when a record was hard-deleted, confirming the deletion and recording when it happened. Look it up using the deleted record's original ID. Requires the records:r:<type> scope.
    • getRecordVersions

      public VectrosApiHttpResponse<ModelDataVersionPage> getRecordVersions(String id)
      Returns the audit trail of past versions for a record, as a paginated {data, nextCursor} page. This is available only when the record type's schema has audit history enabled (the default); if it is disabled, the endpoint returns 409. Requires the records:r:<type> scope.
    • getRecordVersions

      public VectrosApiHttpResponse<ModelDataVersionPage> getRecordVersions(String id, RequestOptions requestOptions)
      Returns the audit trail of past versions for a record, as a paginated {data, nextCursor} page. This is available only when the record type's schema has audit history enabled (the default); if it is disabled, the endpoint returns 409. Requires the records:r:<type> scope.
    • getRecordVersions

      Returns the audit trail of past versions for a record, as a paginated {data, nextCursor} page. This is available only when the record type's schema has audit history enabled (the default); if it is disabled, the endpoint returns 409. Requires the records:r:<type> scope.
    • getRecordVersions

      public VectrosApiHttpResponse<ModelDataVersionPage> getRecordVersions(String id, GetRecordVersionsRequest request, RequestOptions requestOptions)
      Returns the audit trail of past versions for a record, as a paginated {data, nextCursor} page. This is available only when the record type's schema has audit history enabled (the default); if it is disabled, the endpoint returns 409. Requires the records:r:<type> scope.