overlay: 1.0.0
info:
title: API Evangelist enhancements for the DCC Boxed DUIS Signing Tool API
version: 1.0.0
extends: openapi/dcc-boxed-duis-signing-tool-openapi.yml
x-apievangelist:
generated: '2026-07-27'
method: generated
source: openapi/dcc-boxed-duis-signing-tool-openapi.yml
note: >-
Captures API Evangelist enrichment only. The upstream document at
https://raw.githubusercontent.com/SmartDCCInnovation/dccboxed-signing-tool/main/openapi.yaml
is harvested verbatim and is never mutated.
actions:
- target: $.info
update:
x-apievangelist-provider: dcc-smart
x-apievangelist-artifacts:
authentication: authentication/dcc-smart-authentication.yml
conventions: conventions/dcc-smart-conventions.yml
errors: errors/dcc-smart-problem-types.yml
lifecycle: lifecycle/dcc-smart-lifecycle.yml
sandbox: sandbox/dcc-smart-sandbox.yml
cli: cli/dcc-smart-cli.yml
packages: packages/dcc-smart-packages.yml
conformance: conformance/dcc-smart-conformance.yml
data_model: data-model/dcc-smart-data-model.yml
agentic_access: agentic-access/dcc-smart-agentic-access.yml
skills: skills/_index.yml
x-apievangelist-note: >-
This is the only machine-readable API contract Smart DCC publishes anywhere. It
describes a locally self-hosted developer utility, not a hosted Smart DCC service.
The production Smart DCC interface is DUIS, an XML web service over a private DCC User
Gateway Connection, available only to Smart Energy Code parties.
- target: $.servers
update:
- url: http://localhost:8080
description: >-
Local development server — the default when the tool is started with the Server entry
point. Change the port with -p. Smart DCC operates no hosted instance of this API.
- target: $.paths['/sign'].post
update:
tags: [signing]
x-agentic-access:
action-class: acting
consequence: write
subject: required
token: {max-ttl: 900}
audit: required
x-idempotency: >-
Not idempotent by default — the originator counter is overwritten with
System.currentTimeMillis() on every call, so identical input yields a different signed
document. Send preserveCounter true to keep the caller's counter.
- target: $.paths['/verify'].post
update:
tags: [signing]
x-agentic-access:
action-class: acting
consequence: write
subject: required
token: {max-ttl: 900}
audit: required
- target: $.components.schemas.Error
update:
x-error-format: custom-json
x-error-note: >-
Not RFC 9457 problem details. Returned as application/json with `error` (message) and
`errorCode` (Java exception class name).
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.