GoodMemGoodMem
ReferenceSDKsJava

System

Methods on this page are called as client.system.<method>(...) on a Goodmem instance.

Classai.pairsys.goodmem.client.api.SystemAPI (extends internal SystemAPIBase).

import ai.pairsys.goodmem.client.Goodmem;

try (Goodmem client = Goodmem.builder()
        .baseUrl("http://localhost:8080")
        .apiKey("gm_...")
        .build()) {
    // client.system.<method>(...)
}

Async variants

Every method listed below also exists on ai.pairsys.goodmem.client.api.AsyncSystemAPI (accessed via asyncClient.system on an AsyncGoodmem) with the same parameter list, wrapped in CompletableFuture<T>. Paginated list methods return CompletableFuture<AsyncPage<T>>. See the async client guide for composition patterns.

import ai.pairsys.goodmem.client.AsyncGoodmem;

try (AsyncGoodmem asyncClient = AsyncGoodmem.builder()
        .baseUrl("http://localhost:8080")
        .apiKey("gm_...")
        .build()) {
    asyncClient.system.<method>(...)  // returns CompletableFuture<T>
}

Method Detail

info()

SystemInfoResponse info()

Returns the server's advertised semantic version, git metadata, build timestamp, and optional capability flags. The endpoint is intentionally unauthenticated so bootstrap tooling can call it before API keys exist.

HTTPGET /v1/system/info

Parameters

(no parameters)

ReturnsSystemInfoResponse

Example

SystemInfoResponse systemInfoResponse = client.system.info();

REST equivalent

curl -X GET 'http://localhost:8080/v1/system/info' \
  -H "x-api-key: gm_..."

init()

SystemInitResponse init()

Initializes the system by creating a root user and API key. This endpoint should only be called once during first-time setup. If the system is already initialized, the endpoint will return a success response without creating new credentials.

HTTPPOST /v1/system/init

Parameters

(no parameters)

ReturnsSystemInitResponse

Example

SystemInitResponse systemInitResponse = client.system.init();

REST equivalent

curl -X POST 'http://localhost:8080/v1/system/init' \
  -H "x-api-key: gm_..."

Errors

Every method on this page may throw the standard HTTP-error class hierarchy rooted at GoodmemException:

BadRequestException (400), AuthenticationException (401), PermissionDeniedException (403), NotFoundException (404), ConflictException (409), UnprocessableEntityException (422), RateLimitException (429), InternalServerException (5xx), or the generic ApiException for any other 4xx/5xx. All are unchecked (RuntimeException). See Errors.

All error classes live in ai.pairsys.goodmem.client.errors and are unchecked (RuntimeException). Async siblings complete the returned CompletableFuture exceptionally with the same types, wrapped in CompletionException at await time. See Errors on the index for the full table.