openapi: 3.2.0 info: title: MoltGuard Shopping Vc API version: 1.5.0 description: 'Trust & Integrity Service for the x402 Agent Economy. Sub-API of MolTrust Trust Registry (api.moltrust.ch). See also: https://api.moltrust.ch/openapi.json (parent service).' contact: name: CryptoKRI GmbH url: https://moltrust.ch license: name: Apache-2.0 url: https://www.apache.org/licenses/LICENSE-2.0 servers: - url: https://api.moltrust.ch/guard description: Production security: [] tags: - name: shopping-vc description: BuyerAgentCredential receipt + verify + issue paths: /shopping/info: get: tags: - shopping-vc summary: MT Shopping service info operationId: getShoppingInfo responses: '200': description: Info content: application/json: schema: type: object additionalProperties: true /shopping/receipt/{id}: get: tags: - shopping-vc summary: Get an issued BuyerAgentCredential receipt by id operationId: getShoppingReceipt parameters: - name: id in: path required: true schema: type: string responses: '200': description: Receipt content: application/json: schema: $ref: '#/components/schemas/ShoppingReceipt' /shopping/schema: get: tags: - shopping-vc summary: BuyerAgentCredential schema document operationId: getShoppingSchema responses: '200': description: Schema content: application/json: schema: type: object additionalProperties: true /shopping/verify: post: tags: - shopping-vc summary: Verify a BuyerAgentCredential (10-step pipeline, free) operationId: verifyShopping requestBody: required: true content: application/json: schema: type: object additionalProperties: true responses: '200': description: Verify result content: application/json: schema: $ref: '#/components/schemas/ShoppingVerifyResult' /vc/buyer-agent/issue: post: tags: - shopping-vc summary: Issue a BuyerAgentCredential (paid) operationId: issueBuyerAgentVC security: - x402: [] x-moltrust-pricing: amount: '5.00' currency: USDC chain: eip155:8453 requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/VCIssueRequestBase' responses: '200': description: Issued VC content: application/json: schema: $ref: '#/components/schemas/BuyerAgentCredential' '402': description: x402 payment required content: application/json: schema: $ref: '#/components/schemas/PaymentRequired' components: schemas: BuyerAgentCredential: type: object description: Issued BuyerAgentCredential (W3C VC). additionalProperties: true VCIssueRequestBase: type: object description: Base body for a VC issuance request. Specific VC types extend with type-specific fields. additionalProperties: true PaymentRequired: type: object description: x402 v2 challenge body. Returned with HTTP 402 when X-PAYMENT header is missing or invalid. properties: x402: type: object properties: version: type: integer example: 2 accepts: type: array items: type: object properties: scheme: type: string example: exact network: type: string example: base maxAmountRequired: type: object properties: asset: type: string example: USDC amount: type: string description: USDC base units (6 decimals) payTo: type: string ShoppingReceipt: type: object description: Issued BuyerAgentCredential receipt — public form (no PII). additionalProperties: true properties: receiptId: type: string credential_type: type: string enum: - BuyerAgentCredential issuanceDate: type: string format: date-time ShoppingVerifyResult: type: object description: 10-step buyer-agent VC verification result. additionalProperties: true properties: verified: type: boolean trustScore: type: integer decision: type: string enum: - approve - review - reject reasons: type: array items: type: string securitySchemes: x402: type: apiKey in: header name: X-PAYMENT description: 'x402 v2 payment receipt header. Format: "x402 ". See https://x402.org/writing/x402-v2-launch.'