Deterministic integration

Public API and SDK reference

The SDK reference is generated from the curated public OpenAPI contract and documents supported integration operations, authentication, schemas, and verified client archives without exposing internal service boundaries.

What you can do

  • Browse public operations, request schemas, response schemas, and authentication requirements.
  • Use Authorization Code with PKCE for user-facing clients or Client Credentials for approved automation.
  • Generate deterministic Java, TypeScript, Python, C#, or Go SDK archives with the source contract and checksum.

Starts with

  • A supported integration use case, OAuth client, scopes, and project context.
  • An allowlisted SDK language and immutable public contract version.

Produces

  • Authenticated API calls against supported project-scoped operations.
  • A verified SDK archive containing generated source, helpers, metadata, contract, and checksum.

Use it when

  • Use the SDK for CI, CLI, backend, or product integrations that require deterministic APIs.
  • Use MCP when an AI agent should discover and choose approved tools dynamically.
  • SDK
  • public API
  • OpenAPI contract
  • OAuth
  • Client Credentials
  • PKCE
Public integration contract

Build against one reviewed API, in the language your team already uses.

Browse the complete SpecTestEngine public contract, inspect every operation, and generate typed Java, TypeScript, Python, C#, or Go clients from the same versioned OpenAPI source used by this guide.

71Public operations
11Workflow areas
73Shared schemas
5Verified clients
Project-scopedBearer access tokens
Version 1.0.0-alpha.4SpecTestEngine Public API
Document visual diffs

Get a visual document diff

GET/browser/visual/document-diffs/{visualDiffId}

Returns the protected viewer URL, TTL, immutable generations, and page-level artifact references.

preview Bearer tokenRetry-safe operationgetDocumentVisualDiff

Parameters

visualDiffIdpathUuidV7Required

UUIDv7 identifier of an organization-scoped visual document diff session.

Request body

No request body is required.

Responses

200Visual diff metadata scoped to the token company and active project.
application/jsonDocumentVisualDiff
visualDiffIdrequired

No additional description.

viewerUrlrequired
string · uri

No additional description.

sourceTyperequired
string

No additional description.

REST_SPEC_RUN · SOAP_SPEC_RUN · GRAPHQL_SPEC_RUN · FLOW_RUN · SPECIFICATION_RUN
sourceRunIdoptional
string

No additional description.

nullable
sourceStepIdoptional
string

No additional description.

nullable
attachmentIdrequired
string

No additional description.

actualContentTyperequired
string

No additional description.

actualSha256required
string

No additional description.

expectedSha256optional
string

No additional description.

nullable
statusrequired

No additional description.

decisionrequired

No additional description.

actualPageCountrequired
integer

No additional description.

minimum: 1
createdAtrequired
string · date-time

No additional description.

expiresAtrequired
string · date-time

No additional description.

actualAvailablerequired
boolean

No additional description.

expectedUploadRequiredrequired
boolean

No additional description.

regenerateAvailablerequired
boolean

No additional description.

generationsrequired
array<DocumentVisualDiffGeneration>

No additional description.

currentGenerationoptional
composed

No additional description.

nullable
Example value
{
  "visualDiffId": "0197f0ab-42e7-7a31-8a9c-591a8ee54c12",
  "viewerUrl": "https://api.example.com/resource",
  "sourceType": "REST_SPEC_RUN",
  "sourceRunId": "string",
  "sourceStepId": "string",
  "attachmentId": "string",
  "actualContentType": "string",
  "actualSha256": "string",
  "expectedSha256": "string",
  "status": "WAITING_FOR_EXPECTED",
  "decision": "UNREVIEWED",
  "actualPageCount": 0,
  "createdAt": "2026-07-16T12:00:00Z",
  "expiresAt": "2026-07-16T12:00:00Z",
  "actualAvailable": true,
  "expectedUploadRequired": true,
  "regenerateAvailable": true,
  "generations": [
    {
      "generationId": "0197f0ab-42e7-7a31-8a9c-591a8ee54c12",
      "generationNumber": 0,
      "expectedSha256": "string",
      "colorThreshold": 0,
      "totalPages": 0,
      "changedPages": 0,
      "diffPixels": 0,
      "diffPixelRatio": 0,
      "createdAt": "2026-07-16T12:00:00Z",
      "expiresAt": "2026-07-16T12:00:00Z",
      "pages": [
        {
          "pageNumber": 0,
          "actualArtifactId": "0197f0ab-42e7-7a31-8a9c-591a8ee54c12",
          "expectedArtifactId": "0197f0ab-42e7-7a31-8a9c-591a8ee54c12",
          "diffArtifactId": "0197f0ab-42e7-7a31-8a9c-591a8ee54c12",
          "width": 0,
          "height": 0
        }
      ]
    }
  ],
  "currentGeneration": {
    "generationId": "0197f0ab-42e7-7a31-8a9c-591a8ee54c12",
    "generationNumber": 0,
    "expectedSha256": "string",
    "colorThreshold": 0,
    "totalPages": 0,
    "changedPages": 0,
    "diffPixels": 0,
    "diffPixelRatio": 0,
    "createdAt": "2026-07-16T12:00:00Z",
    "expiresAt": "2026-07-16T12:00:00Z",
    "pages": [
      {
        "pageNumber": 0,
        "actualArtifactId": "0197f0ab-42e7-7a31-8a9c-591a8ee54c12",
        "expectedArtifactId": "0197f0ab-42e7-7a31-8a9c-591a8ee54c12",
        "diffArtifactId": "0197f0ab-42e7-7a31-8a9c-591a8ee54c12",
        "width": 0,
        "height": 0
      }
    ]
  }
}
410Derived visual artifacts expired; source run metadata remains available.
application/jsonProblemDetails
timestamprequired
string · date-time

No additional description.

statusrequired
integer

No additional description.

errorrequired
string

No additional description.

messagerequired
string

No additional description.

pathrequired
string

No additional description.

errorCoderequired
string

No additional description.

translationKeyoptional
string

No additional description.

nullable
requestIdoptional
string

No additional description.

nullable
violationsoptional
array<object>

No additional description.

Example value
{
  "timestamp": "2026-07-16T12:00:00Z",
  "status": 0,
  "error": "string",
  "message": "string",
  "path": "string",
  "errorCode": "string",
  "translationKey": "string",
  "requestId": "string",
  "violations": [
    {}
  ]
}
defaultThe request failed.
application/jsonProblemDetails
timestamprequired
string · date-time

No additional description.

statusrequired
integer

No additional description.

errorrequired
string

No additional description.

messagerequired
string

No additional description.

pathrequired
string

No additional description.

errorCoderequired
string

No additional description.

translationKeyoptional
string

No additional description.

nullable
requestIdoptional
string

No additional description.

nullable
violationsoptional
array<object>

No additional description.

Example value
{
  "timestamp": "2026-07-16T12:00:00Z",
  "status": 0,
  "error": "string",
  "message": "string",
  "path": "string",
  "errorCode": "string",
  "translationKey": "string",
  "requestId": "string",
  "violations": [
    {}
  ]
}

Referenced schemas