Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
a21d43e
feat: initialize `agent_catalogue` module
nanderstabel Sep 30, 2025
de16778
fix: add missing events to HTTP event publisher
nanderstabel Sep 30, 2025
cf21390
style: move `agent_catalogue` workspace member to new line
nanderstabel Sep 30, 2025
bc3b9e5
refactor: rename `agent_catalogue` to `agent_catalog`
nanderstabel Oct 6, 2025
8a9f39f
style: fix formatting of filter closure in `get_templates` function
nanderstabel Oct 6, 2025
f34aa65
feat: add `template` and `all_templates` tables to `init.sql`
nanderstabel Oct 6, 2025
bd98333
feat: replace `agent_catalog` with `agent_library`
nanderstabel Oct 28, 2025
8822eca
feat: enhance template management with update commands
nanderstabel Oct 28, 2025
c17737e
feat: add update template endpoint with PATCH method and sample reque…
nanderstabel Oct 28, 2025
475dd41
fix: remove unnecessary features from `agent_shared` dependency in `C…
nanderstabel Nov 27, 2025
dc7813a
Merge branch 'beta' into feat/init-agent-catalogue
nanderstabel Nov 27, 2025
be44b77
fix: replace `async-std` dependency with workspace reference in multi…
nanderstabel Nov 27, 2025
8baea7b
fix: reorder `agent_library` dependency in `Cargo.toml` files for con…
nanderstabel Nov 27, 2025
d61c9c1
feat: add toggle for raw issuance
coplat Dec 1, 2025
4f5b4eb
Merge branch 'beta' into feat/raw-issuance-toggle
coplat Dec 2, 2025
9eedf06
refactor: config toggle
coplat Dec 2, 2025
02c2cb6
feat: delete_template and duplicate_template functionality
coplat Dec 3, 2025
3fd136a
refactor: test `provisioned_config_successfully_merged_into_default_c…
coplat Dec 3, 2025
04676f4
fix: filter deleted templates in get_templates
coplat Dec 3, 2025
0de6d44
feat: add duplicate_from to Template aggregate
coplat Dec 3, 2025
5022112
refactor: Box `schema` field
coplat Dec 4, 2025
6d6c6e1
feat: update Postman collection for template duplication and deletion
coplat Dec 4, 2025
986113c
nit: add comments
coplat Dec 4, 2025
de4285b
refactor: rename `duplicate_from` to `source_template_id`, remove unu…
coplat Dec 5, 2025
10db6c6
refactor: Postman collection and error handling
coplat Dec 5, 2025
31b3f61
merge beta into feat/raw-issuance-toggle
coplat Dec 19, 2025
c1a1e5e
chore: separate `duplicate_template` function from `create_template` …
coplat Dec 23, 2025
97b1e69
chore: update postman collection for new api endpoints
coplat Dec 23, 2025
4be9ff7
Merge branch 'beta' into feat/raw-issuance-toggle
coplat Dec 24, 2025
803d31f
chore: update postman
coplat Dec 24, 2025
a7ae052
docs: openapi
coplat Dec 29, 2025
5936e25
nit: needless_return
coplat Dec 29, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
284 changes: 284 additions & 0 deletions agent_api_http/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -893,6 +893,252 @@ paths:
"200":
description: Offer sent successfully

# Template endpoints
/v0/templates/get-all-templates:
get:
tags:
- Library
summary: Get all templates
description: Retrieves all credential templates
responses:
"200":
description: Templates retrieved successfully
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/Template"
examples:
example:
summary: Example templates list
value:
- id: "550e8400-e29b-41d4-a716-446655440000"
title: "Employee ID Credential"
credentialFormat: "jwt_vc_json"
status: "Published"
visibility: "Public"
type:
- "VerifiableCredential"
- "EmployeeIDCredential"
tags:
- "employment"
- "identity"

/v0/templates/{template_id}:
get:
tags:
- Library
summary: Get a specific template
description: Retrieves a template by its ID
parameters:
- in: path
name: template_id
required: true
schema:
type: string
description: The template ID
responses:
"200":
description: Template retrieved successfully
content:
application/json:
schema:
$ref: "#/components/schemas/Template"
"404":
description: Template not found

/v0/templates/create-template:
post:
tags:
- Library
summary: Create a new credential template
description: Creates a new template for issuing credentials
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
title:
type: string
example: "Employee ID Credential"
display:
type: object
credentialFormat:
type: string
example: "jwt_vc_json"
creator:
type: string
holderType:
type: string
tags:
type: array
items:
type: string
example: ["employment", "identity"]
status:
type: string
enum: [Draft, Published, Archived]
default: Draft
visibility:
type: string
enum: [Private, Public]
default: Private
description:
type: string
type:
type: array
items:
type: string
example:
- "VerifiableCredential"
schema:
type: object
required:
- status
- visibility
- type
responses:
"201":
description: Template created successfully
headers:
Location:
schema:
type: string
example: "/v0/templates/550e8400-e29b-41d4-a716-446655440000"
description: URL of the created template
content:
application/json:
schema:
$ref: "#/components/schemas/Template"

/v0/templates/update-template:
post:
tags:
- Library
summary: Update an existing template
description: Updates one or more fields of an existing template
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
templateId:
type: string
description: The ID of the template to update
title:
type: string
display:
type: object
credentialFormat:
type: string
creator:
type: string
holderType:
type: string
tags:
type: array
items:
type: string
status:
type: string
enum: [Draft, Published, Archived]
visibility:
type: string
enum: [Private, Public]
description:
type: string
type:
type: array
items:
type: string
schema:
type: object
required:
- templateId
example:
templateId: "550e8400-e29b-41d4-a716-446655440000"
title: "Updated Employee ID Credential"
status: "Published"
responses:
"204":
description: Template updated successfully
"404":
description: Template not found

/v0/templates/duplicate-template:
post:
tags:
- Library
summary: Duplicate an existing template
description: Creates a copy of an existing template with "Copy" appended to the title and status set to Draft
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
sourceTemplateId:
type: string
description: The ID of the template to duplicate
required:
- sourceTemplateId
example:
sourceTemplateId: "550e8400-e29b-41d4-a716-446655440000"
responses:
"201":
description: Template duplicated successfully
headers:
Location:
schema:
type: string
example: "/v0/templates/660e8400-e29b-41d4-a716-446655440001"
description: URL of the duplicated template
content:
application/json:
schema:
$ref: "#/components/schemas/Template"
"422":
description: Source template not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
example:
error: "Source Template Not Found"
details: "No Source Template found with id: `550e8400-e29b-41d4-a716-446655440000`"

/v0/templates/delete-template:
post:
tags:
- Library
summary: Delete a template
description: Marks a template as deleted
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
templateId:
type: string
description: The ID of the template to delete
required:
- templateId
example:
templateId: "550e8400-e29b-41d4-a716-446655440000"
responses:
"204":
description: Template deleted successfully
"404":
description: Template not found

# Metadata endpoints
/version:
get:
Expand Down Expand Up @@ -1640,6 +1886,42 @@ components:
items:
type: object

Template:
type: object
properties:
id:
type: string
title:
type: string
display:
type: object
credentialFormat:
type: string
creator:
type: string
holderType:
type: string
modifiedAt:
type: string
tags:
type: array
items:
type: string
status:
type: string
enum: [Draft, Published, Archived, Deleted]
visibility:
type: string
enum: [Private, Public]
description:
type: string
type:
type: array
items:
type: string
schema:
type: object

DcqlQuery:
type: object
properties:
Expand Down Expand Up @@ -1774,6 +2056,8 @@ tags:
externalDocs:
url: https://docs.impierce.com
description: Issuance API Documentation
- name: Library
description: Library endpoints for managing credential templates and configurations.
- name: Holder
description: Credential holder endpoints
- name: Verification
Expand Down
Loading
Loading