diff --git a/packages/runtime/src/useCases/common/Schemas.ts b/packages/runtime/src/useCases/common/Schemas.ts index f94fbfe34..1c8a4a434 100644 --- a/packages/runtime/src/useCases/common/Schemas.ts +++ b/packages/runtime/src/useCases/common/Schemas.ts @@ -17317,13 +17317,17 @@ export const AcceptAuthorizationRequestRequest: any = { "type": "object" }, "attributeId": { - "type": "string" + "$ref": "#/definitions/AttributeIdString" } }, "required": [ "attributeId", "authorizationRequest" ] + }, + "AttributeIdString": { + "type": "string", + "pattern": "ATT[A-Za-z0-9]{17}" } } } @@ -17336,7 +17340,7 @@ export const CreatePresentationTokenRequest: any = { "type": "object", "properties": { "attributeId": { - "type": "string" + "$ref": "#/definitions/AttributeIdString" }, "expiresAt": { "$ref": "#/definitions/ISO8601DateTimeString" @@ -17352,6 +17356,10 @@ export const CreatePresentationTokenRequest: any = { ], "additionalProperties": false }, + "AttributeIdString": { + "type": "string", + "pattern": "ATT[A-Za-z0-9]{17}" + }, "ISO8601DateTimeString": { "type": "string", "errorMessage": "must match ISO8601 datetime format", diff --git a/packages/runtime/src/useCases/consumption/openid4vc/AcceptAuthorizationRequest.ts b/packages/runtime/src/useCases/consumption/openid4vc/AcceptAuthorizationRequest.ts index 0a6447906..e6ffba1bd 100644 --- a/packages/runtime/src/useCases/consumption/openid4vc/AcceptAuthorizationRequest.ts +++ b/packages/runtime/src/useCases/consumption/openid4vc/AcceptAuthorizationRequest.ts @@ -3,11 +3,11 @@ import { Result } from "@js-soft/ts-utils"; import { AttributesController, LocalAttribute, OpenId4VcController, OwnIdentityAttribute } from "@nmshd/consumption"; import { CoreId } from "@nmshd/core-types"; import { Inject } from "@nmshd/typescript-ioc"; -import { RuntimeErrors, SchemaRepository, SchemaValidator, UseCase } from "../../common"; +import { AttributeIdString, RuntimeErrors, SchemaRepository, SchemaValidator, UseCase } from "../../common"; export interface AbstractAcceptAuthorizationRequestRequest { authorizationRequest: T; - attributeId: string; + attributeId: AttributeIdString; } export interface AcceptAuthorizationRequestRequest extends AbstractAcceptAuthorizationRequestRequest {} diff --git a/packages/runtime/src/useCases/consumption/openid4vc/CreatePresentationToken.ts b/packages/runtime/src/useCases/consumption/openid4vc/CreatePresentationToken.ts index e86c66844..cd19e022e 100644 --- a/packages/runtime/src/useCases/consumption/openid4vc/CreatePresentationToken.ts +++ b/packages/runtime/src/useCases/consumption/openid4vc/CreatePresentationToken.ts @@ -5,11 +5,11 @@ import { CoreDate, CoreId } from "@nmshd/core-types"; import { TokenDTO } from "@nmshd/runtime-types"; import { TokenController } from "@nmshd/transport"; import { Inject } from "@nmshd/typescript-ioc"; -import { ISO8601DateTimeString, RuntimeErrors, SchemaRepository, SchemaValidator, UseCase } from "../../common"; +import { AttributeIdString, ISO8601DateTimeString, RuntimeErrors, SchemaRepository, SchemaValidator, UseCase } from "../../common"; import { TokenMapper } from "../../transport/tokens/TokenMapper"; export interface CreatePresentationTokenRequest { - attributeId: string; + attributeId: AttributeIdString; expiresAt: ISO8601DateTimeString; ephemeral: boolean; }