aries_cloudagent.protocols.issue_credential.v2_0 package
- aries_cloudagent.protocols.issue_credential.v2_0.problem_report_for_record(record: Union[aries_cloudagent.connections.models.conn_record.ConnRecord, aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord], desc_en: str) aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_problem_report.V20CredProblemReport [source]
Create problem report for record.
- Parameters
record – connection or exchange record
desc_en – description text to include in problem report
- async aries_cloudagent.protocols.issue_credential.v2_0.report_problem(err: aries_cloudagent.core.error.BaseError, desc_en: str, http_error_class, record: Union[aries_cloudagent.connections.models.conn_record.ConnRecord, aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord], outbound_handler: Coroutine)[source]
Send problem report response and raise corresponding HTTP error.
- Parameters
err – error for internal diagnostics
desc_en – description text to include in problem report (response)
http_error_class – HTTP error to raise
record – record to cite by thread in problem report
outbound_handler – outbound message handler
Subpackages
- aries_cloudagent.protocols.issue_credential.v2_0.formats package
- aries_cloudagent.protocols.issue_credential.v2_0.handlers package
- Submodules
- aries_cloudagent.protocols.issue_credential.v2_0.handlers.cred_ack_handler module
- aries_cloudagent.protocols.issue_credential.v2_0.handlers.cred_issue_handler module
- aries_cloudagent.protocols.issue_credential.v2_0.handlers.cred_offer_handler module
- aries_cloudagent.protocols.issue_credential.v2_0.handlers.cred_problem_report_handler module
- aries_cloudagent.protocols.issue_credential.v2_0.handlers.cred_proposal_handler module
- aries_cloudagent.protocols.issue_credential.v2_0.handlers.cred_request_handler module
- aries_cloudagent.protocols.issue_credential.v2_0.messages package
- Subpackages
- Submodules
- aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_ack module
- aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_ex_record_webhook module
- aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_format module
- aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_issue module
- aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_offer module
- aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_problem_report module
- aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_proposal module
- aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_request module
- aries_cloudagent.protocols.issue_credential.v2_0.models package
Submodules
aries_cloudagent.protocols.issue_credential.v2_0.controller module
Protocol controller for issue credential v2_0.
aries_cloudagent.protocols.issue_credential.v2_0.manager module
V2.0 issue-credential protocol manager.
- class aries_cloudagent.protocols.issue_credential.v2_0.manager.V20CredManager(profile: aries_cloudagent.core.profile.Profile)[source]
Bases:
object
Class for managing credentials.
- async create_offer(cred_ex_record: aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord, counter_proposal: Optional[aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_proposal.V20CredProposal] = None, replacement_id: Optional[str] = None, comment: Optional[str] = None) Tuple[aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord, aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_offer.V20CredOffer] [source]
Create credential offer, update credential exchange record.
- Parameters
cred_ex_record – credential exchange record for which to create offer
replacement_id – identifier to help coordinate credential replacement
comment – optional human-readable comment to set in offer message
- Returns
A tuple (credential exchange record, credential offer message)
- async create_proposal(connection_id: str, *, auto_remove: Optional[bool] = None, comment: Optional[str] = None, cred_preview: aries_cloudagent.protocols.issue_credential.v2_0.messages.inner.cred_preview.V20CredPreview, fmt2filter: Mapping[aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_format.V20CredFormat.Format, Mapping[str, str]], trace: bool = False) aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord [source]
Create a credential proposal.
- Parameters
connection_id – connection for which to create proposal
auto_remove – whether to remove record automatically on completion
comment – optional human-readable comment to include in proposal
cred_preview – credential preview to use to create credential proposal
fmt2filter – mapping between format and filter
trace – whether to trace the operation
- Returns
Resulting credential exchange record including credential proposal
- async create_request(cred_ex_record: aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord, holder_did: str, comment: Optional[str] = None) Tuple[aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord, aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_request.V20CredRequest] [source]
Create a credential request.
- Parameters
cred_ex_record – credential exchange record for which to create request
holder_did – holder DID
comment – optional human-readable comment to set in request message
- Returns
A tuple (credential exchange record, credential request message)
- async delete_cred_ex_record(cred_ex_id: str) None [source]
Delete credential exchange record and associated detail records.
- async issue_credential(cred_ex_record: aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord, *, comment: Optional[str] = None) Tuple[aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord, aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_issue.V20CredIssue] [source]
Issue a credential.
- Parameters
cred_ex_record – credential exchange record for which to issue credential
comment – optional human-readable comment pertaining to credential issue
- Returns
(Updated credential exchange record, credential issue message)
- Return type
Tuple
- async prepare_send(connection_id: str, cred_proposal: aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_proposal.V20CredProposal, verification_method: Optional[str] = None, auto_remove: Optional[bool] = None) Tuple[aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord, aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_offer.V20CredOffer] [source]
Set up a new credential exchange record for an automated send.
- Parameters
connection_id – connection for which to create offer
cred_proposal – credential proposal with preview
verification_method – an optional verification method to be used when issuing
auto_remove – flag to remove the record automatically on completion
- Returns
A tuple of the new credential exchange record and credential offer message
- property profile: aries_cloudagent.core.profile.Profile
Accessor for the current profile instance.
- Returns
The profile instance for this credential manager
- async receive_credential(cred_issue_message: aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_issue.V20CredIssue, connection_id: Optional[str]) aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord [source]
Receive a credential issue message from an issuer.
Hold cred in storage potentially to be processed by controller before storing.
- Returns
Credential exchange record, retrieved and updated
- async receive_credential_ack(cred_ack_message: aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_ack.V20CredAck, connection_id: Optional[str]) aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord [source]
Receive credential ack from holder.
- Parameters
cred_ack_message – credential ack message to receive
connection_id – connection identifier
- Returns
credential exchange record, retrieved and updated
- async receive_offer(cred_offer_message: aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_offer.V20CredOffer, connection_id: Optional[str]) aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord [source]
Receive a credential offer.
- Parameters
cred_offer_message – credential offer message
connection_id – connection identifier
- Returns
The credential exchange record, updated
- async receive_problem_report(message: aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_problem_report.V20CredProblemReport, connection_id: str)[source]
Receive problem report.
- Returns
credential exchange record, retrieved and updated
- async receive_proposal(cred_proposal_message: aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_proposal.V20CredProposal, connection_id: str) aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord [source]
Receive a credential proposal.
- Returns
The resulting credential exchange record, created
- async receive_request(cred_request_message: aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_request.V20CredRequest, connection_record: Optional[aries_cloudagent.connections.models.conn_record.ConnRecord], oob_record: Optional[aries_cloudagent.protocols.out_of_band.v1_0.models.oob_record.OobRecord]) aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord [source]
Receive a credential request.
- Parameters
cred_request_message – credential request to receive
connection_id – connection identifier
- Returns
credential exchange record, updated
- async send_cred_ack(cred_ex_record: aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord)[source]
Create, send, and return ack message for input cred ex record.
Delete cred ex record if set to auto-remove.
- Returns
cred ex record, cred ack message for tracing
- Return type
Tuple
- async store_credential(cred_ex_record: aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord, cred_id: Optional[str] = None) Tuple[aries_cloudagent.protocols.issue_credential.v2_0.models.cred_ex_record.V20CredExRecord, aries_cloudagent.protocols.issue_credential.v2_0.messages.cred_ack.V20CredAck] [source]
Store a credential in holder wallet; send ack to issuer.
- Parameters
cred_ex_record – credential exchange record with credential to store and ack
cred_id – optional credential identifier to override default on storage
- Returns
Updated credential exchange record
- exception aries_cloudagent.protocols.issue_credential.v2_0.manager.V20CredManagerError(*args, error_code: Optional[str] = None, **kwargs)[source]
Bases:
aries_cloudagent.core.error.BaseError
Credential manager error under issue-credential protocol v2.0.
aries_cloudagent.protocols.issue_credential.v2_0.message_types module
Message and inner object type identifiers for Connections.
aries_cloudagent.protocols.issue_credential.v2_0.routes module
Credential exchange admin routes.
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredBoundOfferRequestSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Request schema for sending bound credential offer admin message.
- counter_preview
- filter_
- validate_fields(data, **kwargs)
Validate schema fields: need both filter and counter_preview or neither.
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredExFreeSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Request schema for sending credential admin message.
- connection_id
- verification_method
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredExIdMatchInfoSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Path parameters and validators for request taking credential exchange id.
- cred_ex_id
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredExRecordDetailSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Credential exchange record and any per-format details.
- cred_ex_record
- indy
- ld_proof
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredExRecordListQueryStringSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Parameters and validators for credential exchange record list query.
- connection_id
- role
- state
- thread_id
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredExRecordListResultSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Result schema for credential exchange record list query.
- results
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredFilterIndySchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Indy credential filtration criteria.
- cred_def_id
- issuer_did
- schema_id
- schema_issuer_did
- schema_name
- schema_version
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredFilterLDProofSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Credential filtration criteria.
- ld_proof
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredFilterSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Credential filtration criteria.
- indy
- ld_proof
- validate_fields(data, **kwargs)
Validate schema fields.
Data must have indy, ld_proof, or both.
- Parameters
data – The data to validate
- Raises
ValidationError – if data has neither indy nor ld_proof
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredIdMatchInfoSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Path parameters and validators for request taking credential id.
- credential_id
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredIssueProblemReportRequestSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Request schema for sending problem report.
- description
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredIssueRequestSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Request schema for sending credential issue admin message.
- comment
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredOfferConnFreeRequestSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Request schema for creating credential offer free from connection.
- auto_issue
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredOfferRequestSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Request schema for sending credential offer admin message.
- auto_issue
- connection_id
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredRequestFreeSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Filter, auto-remove, comment, trace.
- auto_remove
- comment
- connection_id
- filter_
- holder_did
- trace
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredRequestRequestSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Request schema for sending credential request message.
- holder_did
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20CredStoreRequestSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Request schema for sending a credential store admin message.
- credential_id
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20IssueCredSchemaCore(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Filter, auto-remove, comment, trace.
- auto_remove
- comment
- credential_preview
- filter_
- validate(data, **kwargs)
Make sure preview is present when indy format is present.
- class aries_cloudagent.protocols.issue_credential.v2_0.routes.V20IssueCredentialModuleResponseSchema(*args: Any, **kwargs: Any)[source]
Bases:
marshmallow.
Response schema for v2.0 Issue Credential Module.