Docs
Refer friends. Keep the rewards coming!Your friend can unlock up to 10M tokens · earn up to 30% revenue share.
+500K TokensGenerate link

TypeScript SDK

Generated from @acosmi/sdk-ts 2.0.1: typedoc reference plus the public compliance workflow guide.

Install

shell
pnpm add @acosmi/sdk-ts
pnpm add @acosmi/sdk-ts

Quick start

ts
import {
  Client,
  ScopeComplianceEvidenceRead,
  ScopeComplianceEvidenceWrite,
  ScopeComplianceTimestampIssue,
  ScopeComplianceTimestampVerify,
} from "@acosmi/sdk-ts";

const client = await Client.create({
  serverURL: process.env.ACOSMI_SERVER_URL!,
  complianceBaseURL: process.env.ACOSMI_COMPLIANCE_BASE_URL,
});

await client.login("Compliance App", [
  ScopeComplianceEvidenceRead,
  ScopeComplianceEvidenceWrite,
  ScopeComplianceTimestampIssue,
  ScopeComplianceTimestampVerify,
]);
import {
  Client,
  ScopeComplianceEvidenceRead,
  ScopeComplianceEvidenceWrite,
  ScopeComplianceTimestampIssue,
  ScopeComplianceTimestampVerify,
} from "@acosmi/sdk-ts";

const client = await Client.create({
  serverURL: process.env.ACOSMI_SERVER_URL!,
  complianceBaseURL: process.env.ACOSMI_COMPLIANCE_BASE_URL,
});

await client.login("Compliance App", [
  ScopeComplianceEvidenceRead,
  ScopeComplianceEvidenceWrite,
  ScopeComplianceTimestampIssue,
  ScopeComplianceTimestampVerify,
]);

Generated reference surface

  • Classes: 17
  • Interfaces: 200
  • Type aliases: 43
  • Functions: 55
  • Variables: 83
  • Enumerations: 1
  • Compliance scopes: 15
  • ComplianceClient methods: 54

Core classes

AgentRunStreamError, AgentRunsClient, AnthropicAdapter, BusinessError, Client, ComplianceClient, CompliancePollError, FileTokenStore, HTTPError, InMemoryTokenStore, LocalStorageTokenStore, ModelNotFoundError, NetworkError, OpenAIAdapter, OrderTerminalError, RateLimitError, StreamError

Common interfaces

APIResponse, AgentRun, AgentRunArtifact, AgentRunArtifactList, AgentRunArtifactPolicy, AgentRunCreateRequest, AgentRunCreateResponse, AgentRunDownload, AgentRunErrorPayload, AgentRunLocalContextPolicy, AgentRunLocalToolHandlerContext, AgentRunLocalToolResult, AgentRunRunOptions, AgentRunSettlement, AgentRunStreamOptions, AgentRunUsage, AgentRunWithLocalToolsOptions, AnthropicContentBlock, AnthropicResponse, AnthropicUsage, ApiClientRef, ApproveSealApprovalQuery, AssignSeatRequest, AuthorizeResult

Utility functions

allScopes, anthropicResponseTextContent, anthropicResponseThinkingContent, anthropicResponseToolUseBlocks, apiResponseBusinessError, apiResponseGetMessage, authorize, bucketInfoIsCommercial, bucketRowIsCommercial, buildBetas, classifyComplianceError, commerceScopes, completeWebAuthorizationRequest, complianceErrorToRetryAdvice, complianceScopes, computeBackoff, createWebAuthorizationRequest, defaultRetryable, defaultSafeToRetry, discover, discoverWebOAuthMetadata, discoverWithProfile, effectivePolicy, exchangeCode

Compliance scopes

  • compliance:evidence:read (ScopeComplianceEvidenceRead)
  • compliance:evidence:write (ScopeComplianceEvidenceWrite)
  • compliance:timestamp:issue (ScopeComplianceTimestampIssue)
  • compliance:timestamp:verify (ScopeComplianceTimestampVerify)
  • compliance:contract_signing:read (ScopeComplianceContractSigningRead)
  • compliance:contract_signing:write (ScopeComplianceContractSigningWrite)
  • compliance:seal:manage (ScopeComplianceSealManage)
  • compliance:seal_approval:request (ScopeComplianceSealApprovalRequest)
  • compliance:seal_approval:approve (ScopeComplianceSealApprovalApprove)
  • compliance:seal_use:execute (ScopeComplianceSealUseExecute)
  • compliance:reports:read (ScopeComplianceReportsRead)
  • compliance:reports:write (ScopeComplianceReportsWrite)
  • compliance:reports:publish (ScopeComplianceReportsPublish)
  • compliance:contract_template:read (ScopeComplianceContractTemplateRead)
  • compliance:contract_template:write (ScopeComplianceContractTemplateWrite)

ComplianceClient methods

  • get
  • createEvidenceAsset
  • getEvidenceAsset
  • listEvidenceAssets
  • verifyEvidencePublic
  • issueTimestamp
  • issueTimestampForAsset
  • getTimestamp
  • listTimestamps
  • verifyTimestamp
  • listTsaProviders
  • getTsaStats
  • buildEvidencePackage
  • listEvidencePackages
  • createReport
  • getReport
  • listReports
  • publishReport
  • downloadReport
  • createSigningEnvelope
  • getSigningEnvelope
  • listSigningEnvelopes
  • signEnvelope
  • createH5SigningUrl
  • syncSigningEnvelopeStatus
  • listEnvelopeContracts
  • listEnvelopeProviderRequests
  • voidEnvelope
  • submitSealApproval
  • approveSealApproval
  • rejectSealApproval
  • cancelSealApproval
  • listPendingSealApprovals
  • getSealApproval
  • listSealApprovals
  • listSealUses
  • getProviderRequest
  • getCapabilities
  • listOperations
  • getOperation
  • createContractTemplate
  • updateContractTemplate
  • deleteContractTemplate
  • getContractTemplate
  • listContractTemplates
  • uploadContractTemplatePdf
  • publishContractTemplate
  • archiveContractTemplate
  • listContractTemplateVersions
  • classifyError
  • append
  • append
  • append
  • append

Gated ComplianceClient methods

  • publishReport
  • signEnvelope
  • createH5SigningUrl
  • approveSealApproval

Full TypeDoc inventory

Classes

  • AgentRunStreamError
  • AgentRunsClient
  • AnthropicAdapter
  • BusinessError
  • Client
  • ComplianceClient
  • CompliancePollError
  • FileTokenStore
  • HTTPError
  • InMemoryTokenStore
  • LocalStorageTokenStore
  • ModelNotFoundError
  • NetworkError
  • OpenAIAdapter
  • OrderTerminalError
  • RateLimitError
  • StreamError

Interfaces

  • APIResponse
  • AgentRun
  • AgentRunArtifact
  • AgentRunArtifactList
  • AgentRunArtifactPolicy
  • AgentRunCreateRequest
  • AgentRunCreateResponse
  • AgentRunDownload
  • AgentRunErrorPayload
  • AgentRunLocalContextPolicy
  • AgentRunLocalToolHandlerContext
  • AgentRunLocalToolResult
  • AgentRunRunOptions
  • AgentRunSettlement
  • AgentRunStreamOptions
  • AgentRunUsage
  • AgentRunWithLocalToolsOptions
  • AnthropicContentBlock
  • AnthropicResponse
  • AnthropicUsage
  • ApiClientRef
  • ApproveSealApprovalQuery
  • AssignSeatRequest
  • AuthorizeResult
  • BalanceDetail
  • BillingPreflightResult
  • BlockMeta
  • BookConsultationRequest
  • BucketInfo
  • BucketRow
  • BugReportResult
  • BugView
  • CancelSealApprovalQuery
  • CaseLead
  • CaseMatter
  • CertificationStatus
  • ChatContentBlock
  • ChatMessage
  • ChatRequest
  • ChatResponse
  • ChatUsage
  • ClientRegistration
  • ComplianceCapability
  • ComplianceErrorInfo
  • CompliancePollOptions
  • ComplianceQuoteResponse
  • ComplianceReport
  • ComplianceSku
  • ComplianceWriteOptions
  • Config
  • ConsumeRecord
  • ConsumeRecordPage
  • ContractTemplateField
  • ContractTemplatePageItem
  • ContractTemplateResp
  • ContractTemplateVersion
  • CorporateTransfer
  • CreateContractTemplateRequest
  • CreateEvidenceAssetRequest
  • CreateH5SigningUrlRequest
  • CreateReportRequest
  • CreateSigningEnvelopeRequest
  • CreateWebAuthorizationRequestOptions
  • DeviceRegistration
  • EffortConfig
  • EnterpriseKycMyStatusView
  • EnterpriseMember
  • EnterpriseSummary
  • EntitlementBalance
  • EntitlementItem
  • EnvelopeContractItem
  • EvidenceAsset
  • EvidenceAssetPageItem
  • EvidencePackage
  • EvidencePackagePageItem
  • FeatureGateStatus
  • GateQuota
  • GenerateSkillRequest
  • GenerateSkillResult
  • GeoLoc
  • InitiateCorporateTransferInput
  • InitiateCorporateTransferResult
  • InviteMemberRequest
  • Invoice
  • IssueTimestampRequest
  • LawyerCredentialMyView
  • LawyerSummary
  • LegalConsultation
  • LegalServiceOrder
  • LegalServiceSku
  • ListContractTemplatesRequest
  • ListEvidenceAssetsRequest
  • ListEvidencePackagesRequest
  • ListOperationsRequest
  • ListReportsRequest
  • ListSealApprovalsRequest
  • ListSealUsesRequest
  • ListSigningEnvelopesRequest
  • ListTimestampsRequest
  • LoginEvent
  • LoginOptions
  • ManagedModel
  • ModelBucket
  • ModelByQuotaResponse
  • ModelCapabilities
  • ModelCoefficient
  • Notification
  • NotificationList
  • NotificationPreference
  • NotificationUnreadCount
  • OpenAIChatChoice
  • OpenAIChatMessage
  • OpenAIChatResponse
  • OpenAIFunctionCall
  • OpenAIStreamChoice
  • OpenAIStreamChunk
  • OpenAIStreamDelta
  • OpenAIStreamToolCall
  • OpenAIToolCall
  • OpenAIUsage
  • OperationDetail
  • OperationPageItem
  • OptimizeSkillRequest
  • OptimizeSkillResult
  • Order
  • OrderStatus
  • OrgConsumeReport
  • OrgSeat
  • OrgSubscription
  • OutputConfig
  • PageRequest
  • PayPayload
  • PrincipalRef
  • Product
  • ProviderAdapter
  • ProviderRequestStatusView
  • PublicEvidenceVerifyResult
  • PublicModelSummary
  • QuotaSummary
  • RefundPolicy
  • RefundRecord
  • RegisterWebOAuthClientOptions
  • RejectSealApprovalQuery
  • ReportDownload
  • ReportPageItem
  • RequestInvoiceInput
  • RequestRefundInput
  • RetryAdvice
  • RetryPolicy
  • RetryRequestInfo
  • SealApproval
  • SealApprovalPageItem
  • SealUsePageItem
  • ServerMetadata
  • ServerTool
  • SignEnvelopeRequest
  • SigningEnvelope
  • SigningEnvelopePageItem
  • SkillBrowseListResponse
  • SkillBrowseResponse
  • SkillStoreItem
  • SkillStoreListItem
  • SkillStoreQuery
  • SkillSummary
  • SourcesEvent
  • StepUpStatus
  • StreamEvent
  • StreamSettlement
  • SubmitCaseLeadRequest
  • SubmitSealApprovalRequest
  • SubscriptionPlan
  • TenantRef
  • ThinkingConfig
  • TimestampPageItem
  • TimestampToken
  • TimestampVerifyResult
  • TokenPackage
  • TokenResponse
  • TokenSet
  • TokenStore
  • ToolListResponse
  • ToolProvider
  • ToolView
  • Transaction
  • TsaProvider
  • TsaStats
  • UpdateContractTemplateRequest
  • UploadContractTemplatePdfRequest
  • UserSubscription
  • VerifyTimestampRequest
  • VoidEnvelopeRequest
  • WSConfig
  • WSEvent
  • WalletStats
  • WebAuthorizationCallbackParams
  • WebAuthorizationPending
  • WebAuthorizationRequest
  • WebSearchConfig
  • WebSearchSource
  • YudaoPageResult

Type aliases

  • AgentRunLocalToolHandler
  • AgentRunStatus
  • AgentRunStreamEvent
  • Audience
  • BillingMode
  • BrowserRefreshMode
  • ComplianceAssetType
  • ComplianceBenefitType
  • ComplianceBillingDisplayStatus
  • ComplianceClientErrorCode
  • ComplianceDigestSource
  • ComplianceEnvelopeStatus
  • ComplianceErrorKey
  • ComplianceHashAlgorithm
  • CompliancePrivacyLevel
  • ComplianceProviderRequestStatus
  • ComplianceProviderStatus
  • ComplianceScope
  • ComplianceSealApprovalStatus
  • ComplianceTimestampVerificationStatus
  • ContractTemplateFieldType
  • ContractTemplateStatus
  • FeatureGateState
  • FilterStatus
  • IdempotencyKey
  • InputModality
  • LegalSkuCode
  • LoginErrCode
  • LoginEventType
  • OAuthMetadataProfile
  • OperationId
  • OperationSource
  • OperationStatus
  • PageResult
  • PricingConfig
  • ProductFamily
  • ProviderRequestStatus
  • RegionScope
  • RetryAdviceReason
  • RolloverPolicy
  • SortDirection
  • SubscriptionAudience
  • VerifyStatus

Functions

  • allScopes
  • anthropicResponseTextContent
  • anthropicResponseThinkingContent
  • anthropicResponseToolUseBlocks
  • apiResponseBusinessError
  • apiResponseGetMessage
  • authorize
  • bucketInfoIsCommercial
  • bucketRowIsCommercial
  • buildBetas
  • classifyComplianceError
  • commerceScopes
  • completeWebAuthorizationRequest
  • complianceErrorToRetryAdvice
  • complianceScopes
  • computeBackoff
  • createWebAuthorizationRequest
  • defaultRetryable
  • defaultSafeToRetry
  • discover
  • discoverWebOAuthMetadata
  • discoverWithProfile
  • effectivePolicy
  • exchangeCode
  • extractAnthropicBlockMeta
  • findDesktopVisualUnderstandingModel
  • findFirstModelByInputModality
  • generateState
  • getAdapter
  • getAdapterForModel
  • isBillingConfirmable
  • isComplianceBusinessError
  • isComplianceTerminalError
  • isSSECommentLine
  • isSSLError
  • modelScopes
  • modelSupportsImageInput
  • modelSupportsInputModality
  • newFileTokenStore
  • newThinkingConfig
  • newTokenSet
  • newWebSearchTool
  • parseNotificationEvent
  • parseSettlement
  • parseSourcesEvent
  • refreshToken
  • register
  • registerWebOAuthClient
  • retryReasonForComplianceKey
  • retryReasonForOAuthError
  • revokeToken
  • skillScopes
  • tokenSetIsExpired
  • uniqueMerge
  • validateEndUserId

Compliance workflow guide

This guide covers the public TypeScript SDK surface for compliance workflows: timestamps, evidence assets, evidence packages, reports, signing envelopes, seal approvals, and provider request polling.

The SDK exposes Acosmi domain objects only. It does not expose provider credentials, provider endpoints, raw provider payloads, certificates, private keys, signing containers, or billing commit internals.

Quick Start

ts
import {
  Client,
  ScopeComplianceEvidenceRead,
  ScopeComplianceEvidenceWrite,
  ScopeComplianceTimestampIssue,
  ScopeComplianceTimestampVerify,
} from '@acosmi/sdk-ts';

const client = await Client.create({
  serverURL: process.env.ACOSMI_SERVER_URL!,
  // Defaults to `${serverURL}/admin-api` when omitted.
  complianceBaseURL: process.env.ACOSMI_COMPLIANCE_BASE_URL,
});

await client.login('Compliance Example', [
  ScopeComplianceEvidenceRead,
  ScopeComplianceEvidenceWrite,
  ScopeComplianceTimestampIssue,
  ScopeComplianceTimestampVerify,
]);

const idempotencyKey = await loadOrCreateIdempotencyKey('timestamp:order-123');

const asset = await client.compliance.createEvidenceAsset(
  {
    assetType: 'HASH_ONLY',
    name: 'release-manifest',
    hashAlgorithm: 'sha256',
    declaredHash: process.env.RELEASE_MANIFEST_SHA256!,
    digestSource: 'CLIENT',
    privacyLevel: 'private',
  },
  { idempotencyKey },
);

const token = await client.compliance.issueTimestampForAsset(asset.id, {
  idempotencyKey: await loadOrCreateIdempotencyKey(`timestamp:${asset.evidenceNo}`),
});

const verified = await client.compliance.waitForTimestampVerified(token.id, {
  timeoutMs: 60_000,
});

console.log(verified.verificationStatus);
import {
  Client,
  ScopeComplianceEvidenceRead,
  ScopeComplianceEvidenceWrite,
  ScopeComplianceTimestampIssue,
  ScopeComplianceTimestampVerify,
} from '@acosmi/sdk-ts';

const client = await Client.create({
  serverURL: process.env.ACOSMI_SERVER_URL!,
  // Defaults to `${serverURL}/admin-api` when omitted.
  complianceBaseURL: process.env.ACOSMI_COMPLIANCE_BASE_URL,
});

await client.login('Compliance Example', [
  ScopeComplianceEvidenceRead,
  ScopeComplianceEvidenceWrite,
  ScopeComplianceTimestampIssue,
  ScopeComplianceTimestampVerify,
]);

const idempotencyKey = await loadOrCreateIdempotencyKey('timestamp:order-123');

const asset = await client.compliance.createEvidenceAsset(
  {
    assetType: 'HASH_ONLY',
    name: 'release-manifest',
    hashAlgorithm: 'sha256',
    declaredHash: process.env.RELEASE_MANIFEST_SHA256!,
    digestSource: 'CLIENT',
    privacyLevel: 'private',
  },
  { idempotencyKey },
);

const token = await client.compliance.issueTimestampForAsset(asset.id, {
  idempotencyKey: await loadOrCreateIdempotencyKey(`timestamp:${asset.evidenceNo}`),
});

const verified = await client.compliance.waitForTimestampVerified(token.id, {
  timeoutMs: 60_000,
});

console.log(verified.verificationStatus);

Scopes

Request the smallest scope set that matches the workflow. complianceScopes() returns all compliance scopes, but production apps should usually choose a subset:

ts
import {
  ScopeComplianceEvidenceRead,
  ScopeComplianceReportsRead,
  ScopeComplianceTimestampVerify,
} from '@acosmi/sdk-ts';

await client.login('Read-only Compliance App', [
  ScopeComplianceEvidenceRead,
  ScopeComplianceTimestampVerify,
  ScopeComplianceReportsRead,
]);
import {
  ScopeComplianceEvidenceRead,
  ScopeComplianceReportsRead,
  ScopeComplianceTimestampVerify,
} from '@acosmi/sdk-ts';

await client.login('Read-only Compliance App', [
  ScopeComplianceEvidenceRead,
  ScopeComplianceTimestampVerify,
  ScopeComplianceReportsRead,
]);

Compliance scopes are independent from ScopeAI, ScopeSkills, and ScopeAccount. Holding the general scopes does not grant compliance access.

Report scopes are split by action:

  • ScopeComplianceReportsReadgetReport, downloadReport.
  • ScopeComplianceReportsWritecreateReport. This scope was added after the initial release; tokens issued before it existed do not carry it. An app that calls createReport must request ScopeComplianceReportsWrite at login() time, and existing users must re-authorize (run the OAuth flow again) so the new scope is granted.