Skip to content

Latest commit

Β 

History

History
3199 lines (2332 loc) Β· 44.1 KB

File metadata and controls

3199 lines (2332 loc) Β· 44.1 KB

Reference

Deployment

client.Deployment.LicenseStatusAsync() -> WithRawResponseTask<DeploymentLicenseStatusResponse>

πŸ”Œ Usage

await client.Deployment.LicenseStatusAsync();

Doc

client.Doc.HeadAsync(HeadDocRequest { ... }) -> WithRawResponseTask<DocHead200Response>

πŸ”Œ Usage

await client.Doc.HeadAsync(new HeadDocRequest { DocId = "docId" });

βš™οΈ Parameters

request: HeadDocRequest

client.Doc.DownloadAsync(DownloadDocRequest { ... }) -> WithRawResponseTask<Stream>

πŸ”Œ Usage

await client.Doc.DownloadAsync(new DownloadDocRequest { DocId = "docId", LayerName = "layerName" });

βš™οΈ Parameters

request: DownloadDocRequest

client.Doc.ManifestAsync(ManifestDocRequest { ... }) -> WithRawResponseTask<DocManifest200Response>

πŸ”Œ Usage

await client.Doc.ManifestAsync(new ManifestDocRequest { DocId = "docId", LayerName = "layerName" });

βš™οΈ Parameters

request: ManifestDocRequest

client.Doc.RenderAsync(RenderDocRequest { ... }) -> WithRawResponseTask<Stream>

πŸ“ Description

Render parameters (viewport, format) pass as flat dotted query keys, e.g. ?viewport.kind=width&viewport.width=800; the full grammar is documented with the viewer.

πŸ”Œ Usage

await client.Doc.RenderAsync(
    new RenderDocRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Pon = 1,
    }
);

βš™οΈ Parameters

request: RenderDocRequest

client.Doc.TextAsync(TextDocRequest { ... }) -> WithRawResponseTask<DocText200Response>

πŸ”Œ Usage

await client.Doc.TextAsync(
    new TextDocRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Pon = 1,
    }
);

βš™οΈ Parameters

request: TextDocRequest

Shares

client.Shares.ExchangeAsync(SharesExchangeRequest { ... }) -> WithRawResponseTask<SharesExchange200Response>

πŸ“ Description

Unauthenticated, but requires a browser Origin header, checked against the grant allowlist. Unknown, revoked, and disabled tokens are indistinguishable (404). Passphrase-protected grants return 422 SharePasswordRequired until password is supplied. Mounted only when the deployment can sign (HS256 mode).

πŸ”Œ Usage

await client.Shares.ExchangeAsync(new SharesExchangeRequest { ShareToken = "shareToken" });

βš™οΈ Parameters

request: SharesExchangeRequest

client.Shares.ListAsync(ListSharesRequest { ... }) -> WithRawResponseTask<SharesList200Response>

πŸ”Œ Usage

await client.Shares.ListAsync(new ListSharesRequest { TenantId = "tenantId" });

βš™οΈ Parameters

request: ListSharesRequest

client.Shares.CreateAsync(SharesCreateRequest { ... }) -> WithRawResponseTask<SharesCreate200Response>

πŸ“ Description

The returned share id IS the public share token. Mounted only when the deployment can sign (HS256 mode) β€” exchange mints session JWTs, so grants exist only where minting does.

πŸ”Œ Usage

await client.Shares.CreateAsync(
    new SharesCreateRequest
    {
        TenantId = "tenantId",
        DocId = "docId",
        Scope = new List<string>() { "scope" },
    }
);

βš™οΈ Parameters

request: SharesCreateRequest

client.Shares.GetAsync(GetSharesRequest { ... }) -> WithRawResponseTask<SharesGet200Response>

πŸ”Œ Usage

await client.Shares.GetAsync(new GetSharesRequest { TenantId = "tenantId", ShareId = "shareId" });

βš™οΈ Parameters

request: GetSharesRequest

client.Shares.DeleteAsync(DeleteSharesRequest { ... }) -> WithRawResponseTask

πŸ”Œ Usage

await client.Shares.DeleteAsync(
    new DeleteSharesRequest { TenantId = "tenantId", ShareId = "shareId" }
);

βš™οΈ Parameters

request: DeleteSharesRequest

client.Shares.UpdateAsync(SharesUpdateRequest { ... }) -> WithRawResponseTask<SharesUpdate200Response>

πŸ”Œ Usage

await client.Shares.UpdateAsync(
    new SharesUpdateRequest { TenantId = "tenantId", ShareId = "shareId" }
);

βš™οΈ Parameters

request: SharesUpdateRequest

Tenants

client.Tenants.ListAsync(ListTenantsRequest { ... }) -> WithRawResponseTask<TenantsList200Response>

πŸ”Œ Usage

await client.Tenants.ListAsync(new ListTenantsRequest());

βš™οΈ Parameters

request: ListTenantsRequest

client.Tenants.CreateAsync(TenantsCreateRequest { ... }) -> WithRawResponseTask<TenantsCreate200Response>

πŸ”Œ Usage

await client.Tenants.CreateAsync(new TenantsCreateRequest { Id = "id" });

βš™οΈ Parameters

request: TenantsCreateRequest

client.Tenants.GetAsync(GetTenantsRequest { ... }) -> WithRawResponseTask<TenantsGet200Response>

πŸ”Œ Usage

await client.Tenants.GetAsync(new GetTenantsRequest { TenantId = "tenantId" });

βš™οΈ Parameters

request: GetTenantsRequest

client.Tenants.DeleteAsync(DeleteTenantsRequest { ... }) -> WithRawResponseTask

πŸ“ Description

Destroys the tenant and everything in its namespace β€” documents, layers, stored bytes, audit history. Irreversible.

πŸ”Œ Usage

await client.Tenants.DeleteAsync(new DeleteTenantsRequest { TenantId = "tenantId" });

βš™οΈ Parameters

request: DeleteTenantsRequest

client.Tenants.ResumeAsync(ResumeTenantsRequest { ... }) -> WithRawResponseTask

πŸ”Œ Usage

await client.Tenants.ResumeAsync(new ResumeTenantsRequest { TenantId = "tenantId" });

βš™οΈ Parameters

request: ResumeTenantsRequest

client.Tenants.SuspendAsync(TenantsSuspendRequest { ... }) -> WithRawResponseTask

πŸ“ Description

Instantly reversible with resume. The API token is exempt, so a suspended tenant can still be inspected, exported, resumed, or deleted.

πŸ”Œ Usage

await client.Tenants.SuspendAsync(new TenantsSuspendRequest { TenantId = "tenantId" });

βš™οΈ Parameters

request: TenantsSuspendRequest

client.Tenants.UsageAsync(UsageTenantsRequest { ... }) -> WithRawResponseTask<TenantsUsage200Response>

πŸ“ Description

Facts only β€” no limits or billing state. Views count share exchanges plus authorized /v1/access grants, deduplicated across the two.

πŸ”Œ Usage

await client.Tenants.UsageAsync(new UsageTenantsRequest { TenantId = "tenantId" });

βš™οΈ Parameters

request: UsageTenantsRequest

Documents

client.Documents.ListAsync(ListDocumentsRequest { ... }) -> WithRawResponseTask<DocumentsList200Response>

πŸ”Œ Usage

await client.Documents.ListAsync(new ListDocumentsRequest { TenantId = "tenantId" });

βš™οΈ Parameters

request: ListDocumentsRequest

client.Documents.GetAsync(GetDocumentsRequest { ... }) -> WithRawResponseTask<DocumentsGet200Response>

πŸ”Œ Usage

await client.Documents.GetAsync(new GetDocumentsRequest { TenantId = "tenantId", Id = "id" });

βš™οΈ Parameters

request: GetDocumentsRequest

client.Documents.DeleteAsync(DeleteDocumentsRequest { ... }) -> WithRawResponseTask

πŸ”Œ Usage

await client.Documents.DeleteAsync(new DeleteDocumentsRequest { TenantId = "tenantId", Id = "id" });

βš™οΈ Parameters

request: DeleteDocumentsRequest

client.Documents.CommitAsync(DocumentsCommitRequest { ... }) -> WithRawResponseTask<DocumentsCommit200Response>

πŸ”Œ Usage

await client.Documents.CommitAsync(
    new DocumentsCommitRequest
    {
        TenantId = "tenantId",
        Id = "id",
        Sha256 = "sha256",
    }
);

βš™οΈ Parameters

request: DocumentsCommitRequest

client.Documents.DownloadAsync(DownloadDocumentsRequest { ... }) -> WithRawResponseTask<Stream>

πŸ”Œ Usage

await client.Documents.DownloadAsync(
    new DownloadDocumentsRequest { TenantId = "tenantId", Id = "id" }
);

βš™οΈ Parameters

request: DownloadDocumentsRequest

client.Documents.ThumbnailAsync(ThumbnailDocumentsRequest { ... }) -> WithRawResponseTask<Stream>

πŸ”Œ Usage

await client.Documents.ThumbnailAsync(
    new ThumbnailDocumentsRequest { TenantId = "tenantId", Id = "id" }
);

βš™οΈ Parameters

request: ThumbnailDocumentsRequest

client.Documents.UploadProxyAsync(UploadProxyDocumentsRequest { ... }) -> WithRawResponseTask<DocumentsUploadProxy200Response>

πŸ“ Description

This bounded origin-mediated fallback must only be used after documents.init returns upload.kind=proxy. Auto mode prefers a presigned object-store PUT whenever available.

πŸ”Œ Usage

await client.Documents.UploadProxyAsync(
    new UploadProxyDocumentsRequest { TenantId = "tenantId", Id = "id" }
);

βš™οΈ Parameters

request: UploadProxyDocumentsRequest

client.Documents.ImportFromAsync(DocumentsImportFromRequest { ... }) -> WithRawResponseTask<DocumentsImportFrom200Response>

πŸ“ Description

Default mode is synchronous and bounded: the response returns only after the transfer verified and committed (or failed). mode=async (connection sources only) answers 202 immediately and an in-process worker performs the transfer with leased, fenced retries; poll the document until ready/failed. The deployment import policy gates scheme, network range, and size; sources must declare a length. CloudPDF copies and owns the bytes β€” the source is never referenced in place. A 502 marks a retryable upstream failure: retry with the same idempotencyKey to resume the same document. URL sources are capabilities and never echoed back. Connection sources name operator-registered storage (bucket/prefix scope, allowed credential classes, and tenant bindings are deployment configuration); revision is provider-interpreted (S3 VersionId, GCS generation, Azure version id).

πŸ”Œ Usage

await client.Documents.ImportFromAsync(
    new DocumentsImportFromRequest
    {
        TenantId = "tenantId",
        Source = new DocumentsImportFromRequestSource(
            new DocumentsImportFromRequestSource.Url(
                new DocumentsImportFromRequestSourceUrl { Url = "url" }
            )
        ),
    }
);

βš™οΈ Parameters

request: DocumentsImportFromRequest

client.Documents.InitAsync(DocumentsInitRequest { ... }) -> WithRawResponseTask<DocumentsInit200Response>

πŸ”Œ Usage

await client.Documents.InitAsync(
    new DocumentsInitRequest
    {
        TenantId = "tenantId",
        ContentLength = 1.1,
        ContentSha256 = "contentSha256",
    }
);

βš™οΈ Parameters

request: DocumentsInitRequest

Tokens

client.Tokens.IssueAsync(IssueTokensRequest { ... }) -> WithRawResponseTask<TokensIssue200Response>

πŸ“ Description

kind "tenant" requires the API token β€” authority mints only downward. Mounted only when the deployment can sign (HS256 mode); asymmetric deployments mint with their own private key.

πŸ”Œ Usage

await client.Tokens.IssueAsync(
    new IssueTokensRequest
    {
        TenantId = "tenantId",
        Body = new TokensIssueRequest(
            new TokensIssueRequest.Doc(
                new TokensIssueRequestDoc
                {
                    Sub = "sub",
                    DocId = "docId",
                    Scope = new List<string>() { "scope" },
                    ExpiresIn = 1,
                }
            )
        ),
    }
);

βš™οΈ Parameters

request: IssueTokensRequest

client.Tokens.RevokeAsync(TokensRevokeRequest { ... }) -> WithRawResponseTask

πŸ“ Description

Mounted only when the deployment enables token revocation.

πŸ”Œ Usage

await client.Tokens.RevokeAsync(new TokensRevokeRequest { TenantId = "tenantId", Jti = "jti" });

βš™οΈ Parameters

request: TokensRevokeRequest

Doc Annotations

client.Doc.Annotations.ListAllAsync(ListAllAnnotationsRequest { ... }) -> WithRawResponseTask<DocAnnotationsListAll200Response>

πŸ“ Description

Returns one entry per page plus the audit-log cursor for reconciling subsequent document events. Page order is unspecified; join by pageState.pageObjectNumber when display order matters.

πŸ”Œ Usage

await client.Doc.Annotations.ListAllAsync(
    new ListAllAnnotationsRequest { DocId = "docId", LayerName = "layerName" }
);

βš™οΈ Parameters

request: ListAllAnnotationsRequest

client.Doc.Annotations.ListAsync(ListAnnotationsRequest { ... }) -> WithRawResponseTask<DocAnnotationsList200Response>

πŸ”Œ Usage

await client.Doc.Annotations.ListAsync(
    new ListAnnotationsRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Pon = 1,
    }
);

βš™οΈ Parameters

request: ListAnnotationsRequest

client.Doc.Annotations.CreateAsync(CreateAnnotationsRequest { ... }) -> WithRawResponseTask<DocAnnotationsCreate200Response>

πŸ“ Description

Doc JWTs may instead carry collab scopes (annotations:create:self, …) that refine per-annotation authorship rules; the API token is exempt from both.

πŸ”Œ Usage

await client.Doc.Annotations.CreateAsync(
    new CreateAnnotationsRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Pon = 1,
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: CreateAnnotationsRequest

client.Doc.Annotations.DeleteAsync(DeleteAnnotationsRequest { ... }) -> WithRawResponseTask<DocAnnotationsDelete200Response>

πŸ”Œ Usage

await client.Doc.Annotations.DeleteAsync(
    new DeleteAnnotationsRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Pon = 1,
        AnnotKey = "annotKey",
    }
);

βš™οΈ Parameters

request: DeleteAnnotationsRequest

client.Doc.Annotations.UpdateAsync(UpdateAnnotationsRequest { ... }) -> WithRawResponseTask<DocAnnotationsUpdate200Response>

πŸ”Œ Usage

await client.Doc.Annotations.UpdateAsync(
    new UpdateAnnotationsRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Pon = 1,
        AnnotKey = "annotKey",
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: UpdateAnnotationsRequest

client.Doc.Annotations.ExportAppearanceAsync(ExportAppearanceAnnotationsRequest { ... }) -> WithRawResponseTask<Stream>

πŸ”Œ Usage

await client.Doc.Annotations.ExportAppearanceAsync(
    new ExportAppearanceAnnotationsRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Pon = 1,
        Body = new Dictionary<string, object?>()
        {
            {
                "string",
                new Dictionary<object, object?>() { { "key", "value" } }
            },
        },
    }
);

βš™οΈ Parameters

request: ExportAppearanceAnnotationsRequest

client.Doc.Annotations.FlattenAsync(FlattenAnnotationsRequest { ... }) -> WithRawResponseTask<DocAnnotationsFlatten200Response>

πŸ”Œ Usage

await client.Doc.Annotations.FlattenAsync(
    new FlattenAnnotationsRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Pon = 1,
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: FlattenAnnotationsRequest

Doc Forms

client.Doc.Forms.GetAsync(GetFormsRequest { ... }) -> WithRawResponseTask<DocFormsGet200Response>

πŸ”Œ Usage

await client.Doc.Forms.GetAsync(new GetFormsRequest { DocId = "docId", LayerName = "layerName" });

βš™οΈ Parameters

request: GetFormsRequest

client.Doc.Forms.ExportDataAsync(ExportDataFormsRequest { ... }) -> WithRawResponseTask<Stream>

πŸ”Œ Usage

await client.Doc.Forms.ExportDataAsync(
    new ExportDataFormsRequest { DocId = "docId", LayerName = "layerName" }
);

βš™οΈ Parameters

request: ExportDataFormsRequest

client.Doc.Forms.ImportDataAsync(ImportDataFormsRequest { ... }) -> WithRawResponseTask<DocFormsImportData200Response>

πŸ”Œ Usage

await client.Doc.Forms.ImportDataAsync(
    new ImportDataFormsRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: ImportDataFormsRequest

client.Doc.Forms.ResetAsync(ResetFormsRequest { ... }) -> WithRawResponseTask<DocFormsReset200Response>

πŸ”Œ Usage

await client.Doc.Forms.ResetAsync(
    new ResetFormsRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        FieldKey = "fieldKey",
    }
);

βš™οΈ Parameters

request: ResetFormsRequest

client.Doc.Forms.SetValueAsync(SetValueFormsRequest { ... }) -> WithRawResponseTask<DocFormsSetValue200Response>

πŸ”Œ Usage

await client.Doc.Forms.SetValueAsync(
    new SetValueFormsRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        FieldKey = "fieldKey",
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: SetValueFormsRequest

Doc Metadata

client.Doc.Metadata.GetAsync(GetMetadataRequest { ... }) -> WithRawResponseTask<DocMetadataGet200Response>

πŸ”Œ Usage

await client.Doc.Metadata.GetAsync(
    new GetMetadataRequest { DocId = "docId", LayerName = "layerName" }
);

βš™οΈ Parameters

request: GetMetadataRequest

Doc Pages

client.Doc.Pages.DeleteAsync(DeletePagesRequest { ... }) -> WithRawResponseTask<DocPagesDelete200Response>

πŸ”Œ Usage

await client.Doc.Pages.DeleteAsync(
    new DeletePagesRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: DeletePagesRequest

client.Doc.Pages.ExtractAsync(ExtractPagesRequest { ... }) -> WithRawResponseTask<Stream>

πŸ“ Description

A read, not a mutation: the source document is untouched and no event is published. Body is {"pageObjectNumbers": number[]}; the response body is the new PDF.

πŸ”Œ Usage

await client.Doc.Pages.ExtractAsync(
    new ExtractPagesRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Body = new Dictionary<string, object?>()
        {
            {
                "string",
                new Dictionary<object, object?>() { { "key", "value" } }
            },
        },
    }
);

βš™οΈ Parameters

request: ExtractPagesRequest

client.Doc.Pages.FlattenAsync(FlattenPagesRequest { ... }) -> WithRawResponseTask<DocPagesFlatten200Response>

πŸ”Œ Usage

await client.Doc.Pages.FlattenAsync(
    new FlattenPagesRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: FlattenPagesRequest

client.Doc.Pages.InsertAsync(InsertPagesRequest { ... }) -> WithRawResponseTask<DocPagesInsert200Response>

πŸ“ Description

Multipart mutation envelope: a body field holding {"destIndex"?: number} (omitted β†’ append) plus a resource:source file part carrying the standalone PDF whose pages are copied in. The inserted copies get fresh page object numbers, returned in insertion order.

πŸ”Œ Usage

await client.Doc.Pages.InsertAsync(
    new InsertPagesRequest { DocId = "docId", LayerName = "layerName" }
);

βš™οΈ Parameters

request: InsertPagesRequest

client.Doc.Pages.InsertBlankAsync(InsertBlankPagesRequest { ... }) -> WithRawResponseTask<DocPagesInsertBlank200Response>

πŸ“ Description

Body is {"size": {"width", "height"}, "count"?, "destIndex"?} β€” size in PDF points, count in [1, 100], destIndex omitted β†’ append.

πŸ”Œ Usage

await client.Doc.Pages.InsertBlankAsync(
    new InsertBlankPagesRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: InsertBlankPagesRequest

client.Doc.Pages.MoveAsync(MovePagesRequest { ... }) -> WithRawResponseTask<DocPagesMove200Response>

πŸ”Œ Usage

await client.Doc.Pages.MoveAsync(
    new MovePagesRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: MovePagesRequest

client.Doc.Pages.SetNameAsync(SetNamePagesRequest { ... }) -> WithRawResponseTask<DocPagesSetName200Response>

πŸ”Œ Usage

await client.Doc.Pages.SetNameAsync(
    new SetNamePagesRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: SetNamePagesRequest

client.Doc.Pages.RemoveNameAsync(RemoveNamePagesRequest { ... }) -> WithRawResponseTask<DocPagesRemoveName200Response>

πŸ”Œ Usage

await client.Doc.Pages.RemoveNameAsync(
    new RemoveNamePagesRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: RemoveNamePagesRequest

client.Doc.Pages.RotateAsync(RotatePagesRequest { ... }) -> WithRawResponseTask<DocPagesRotate200Response>

πŸ”Œ Usage

await client.Doc.Pages.RotateAsync(
    new RotatePagesRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: RotatePagesRequest

Doc Redactions

client.Doc.Redactions.ApplyAsync(ApplyRedactionsRequest { ... }) -> WithRawResponseTask<DocRedactionsApply200Response>

πŸ”Œ Usage

await client.Doc.Redactions.ApplyAsync(
    new ApplyRedactionsRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        Body = new Dictionary<string, object?>() { { "key", "value" } },
    }
);

βš™οΈ Parameters

request: ApplyRedactionsRequest

Doc Signatures

client.Doc.Signatures.ListAsync(ListSignaturesRequest { ... }) -> WithRawResponseTask<DocSignaturesList200Response>

πŸ“ Description

Describes the bytes the layer is over: the base version's signatures plus the layer's own edits as the last revision. Signed bytes (contents, digests, revision prefixes) are served per base version under /versions.

πŸ”Œ Usage

await client.Doc.Signatures.ListAsync(
    new ListSignaturesRequest { DocId = "docId", LayerName = "layerName" }
);

βš™οΈ Parameters

request: ListSignaturesRequest

client.Doc.Signatures.AbortAsync(AbortSignaturesRequest { ... }) -> WithRawResponseTask<DocSignaturesAbort200Response>

πŸ”Œ Usage

await client.Doc.Signatures.AbortAsync(
    new AbortSignaturesRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        SigningId = "signingId",
    }
);

βš™οΈ Parameters

request: AbortSignaturesRequest

client.Doc.Signatures.CompleteAsync(DocSignaturesCompleteRequest { ... }) -> WithRawResponseTask<DocSignaturesComplete200Response>

πŸ“ Description

cms is the detached CMS over the prepared digest, base64. expectedVersion must be what prepare returned. Idempotent by signing id: the same CMS again answers already-completed. Every layer of the document then sits over the new version; refetch the manifest after a completion.

πŸ”Œ Usage

await client.Doc.Signatures.CompleteAsync(
    new DocSignaturesCompleteRequest
    {
        DocId = "docId",
        LayerName = "layerName",
        SigningId = "signingId",
        Cms = "cms",
        ExpectedVersion = new DocSignaturesCompleteRequestExpectedVersion
        {
            BaseSha256 = "baseSha256",
            EditsVersion = 1,
        },
    }
);

βš™οΈ Parameters

request: DocSignaturesCompleteRequest

client.Doc.Signatures.AnalysisAsync(AnalysisSignaturesRequest { ... }) -> WithRawResponseTask<DocSignaturesAnalysis200Response>

πŸ“ Description

Exactly one of since.signature=<index> or since.revision=<index>; the layer's pending edits are the end. level=fill|annotate|lta|none evaluates exploratorily and never becomes a verdict. For history between two base revisions use the version analysis.

πŸ”Œ Usage

await client.Doc.Signatures.AnalysisAsync(
    new AnalysisSignaturesRequest { DocId = "docId", LayerName = "layerName" }
);

βš™οΈ Parameters

request: AnalysisSignaturesRequest

client.Doc.Signatures.PrepareAsync(PrepareSignaturesRequest { ... }) -> WithRawResponseTask<DocSignaturesPrepare200Response>

πŸ“ Description

The multipart envelope: a JSON body part (field, subFilter, digest, contentsSize, signer, certify, lock, appearance) and an optional resource:<key> PDF part the body's appearance.resource names. A certification (certify.permission) additionally requires doc.sign.certify. The layer is read-only until the signing completes, is aborted, or expires (15 minutes). A layer behind the document head cannot sign (StaleBase).

πŸ”Œ Usage

await client.Doc.Signatures.PrepareAsync(
    new PrepareSignaturesRequest { DocId = "docId", LayerName = "layerName" }
);

βš™οΈ Parameters

request: PrepareSignaturesRequest

Doc Versions

client.Doc.Versions.ListAsync(ListVersionsRequest { ... }) -> WithRawResponseTask<DocVersionsList200Response>

πŸ“ Description

Every completed signature publishes a new version. Never cached: the list grows.

πŸ”Œ Usage

await client.Doc.Versions.ListAsync(new ListVersionsRequest { DocId = "docId" });

βš™οΈ Parameters

request: ListVersionsRequest

client.Doc.Versions.AnalysisAsync(AnalysisVersionsRequest { ... }) -> WithRawResponseTask<DocVersionsAnalysis200Response>

πŸ“ Description

Exactly one of since.signature / since.revision; until=<revision> defaults to the last. The same answer for every layer and every caller.

πŸ”Œ Usage

await client.Doc.Versions.AnalysisAsync(
    new AnalysisVersionsRequest { DocId = "docId", Sha = "sha" }
);

βš™οΈ Parameters

request: AnalysisVersionsRequest

client.Doc.Versions.DownloadAsync(DownloadVersionsRequest { ... }) -> WithRawResponseTask<Stream>

πŸ”Œ Usage

await client.Doc.Versions.DownloadAsync(
    new DownloadVersionsRequest { DocId = "docId", Sha = "sha" }
);

βš™οΈ Parameters

request: DownloadVersionsRequest

client.Doc.Versions.RevisionAsync(RevisionVersionsRequest { ... }) -> WithRawResponseTask<Stream>

πŸ”Œ Usage

await client.Doc.Versions.RevisionAsync(
    new RevisionVersionsRequest
    {
        DocId = "docId",
        Sha = "sha",
        Index = 1,
    }
);

βš™οΈ Parameters

request: RevisionVersionsRequest

client.Doc.Versions.SignaturesAsync(SignaturesVersionsRequest { ... }) -> WithRawResponseTask<DocVersionsSignatures200Response>

πŸ”Œ Usage

await client.Doc.Versions.SignaturesAsync(
    new SignaturesVersionsRequest { DocId = "docId", Sha = "sha" }
);

βš™οΈ Parameters

request: SignaturesVersionsRequest

client.Doc.Versions.SignatureContentsAsync(SignatureContentsVersionsRequest { ... }) -> WithRawResponseTask<Stream>

πŸ“ Description

fieldKey is the field's fully qualified name, token-text encoded (the same encoding attachment keys use).

πŸ”Œ Usage

await client.Doc.Versions.SignatureContentsAsync(
    new SignatureContentsVersionsRequest
    {
        DocId = "docId",
        Sha = "sha",
        FieldKey = "fieldKey",
    }
);

βš™οΈ Parameters

request: SignatureContentsVersionsRequest

client.Doc.Versions.SignatureDigestAsync(SignatureDigestVersionsRequest { ... }) -> WithRawResponseTask<Stream>

πŸ“ Description

What a CMS verifier compares its message digest to.

πŸ”Œ Usage

await client.Doc.Versions.SignatureDigestAsync(
    new SignatureDigestVersionsRequest
    {
        DocId = "docId",
        Sha = "sha",
        FieldKey = "fieldKey",
        Algorithm = SignatureDigestVersionsRequestAlgorithm.Sha1,
    }
);

βš™οΈ Parameters

request: SignatureDigestVersionsRequest