From 418130a4b0c25b08ac479e5de419ceac7fef3fa3 Mon Sep 17 00:00:00 2001 From: Fethbita Date: Wed, 25 Aug 2021 16:38:49 +0300 Subject: [PATCH 1/2] Allow underscore (`_`) character in endpoints Remove non_tld test because it fails valid usecases In the earlier version if non_tld didn't include underscore, it would pass Signed-off-by: Fethbita --- .../messaging/tests/test_valid.py | 1 - aries_cloudagent/messaging/valid.py | 2 +- open-api/openapi.json | 2890 ++++++++++++++--- 3 files changed, 2427 insertions(+), 466 deletions(-) diff --git a/aries_cloudagent/messaging/tests/test_valid.py b/aries_cloudagent/messaging/tests/test_valid.py index 145e8af813..275ab79b3b 100644 --- a/aries_cloudagent/messaging/tests/test_valid.py +++ b/aries_cloudagent/messaging/tests/test_valid.py @@ -463,7 +463,6 @@ def test_endpoint(self): "", "/path/only", "https://1.2.3.4?query=true&url=false", - "http://no_tld/bad", "no-proto:8080/my/path", "smtp:8080/my/path#fragment", ] diff --git a/aries_cloudagent/messaging/valid.py b/aries_cloudagent/messaging/valid.py index b17762056b..f5fd0362eb 100644 --- a/aries_cloudagent/messaging/valid.py +++ b/aries_cloudagent/messaging/valid.py @@ -638,7 +638,7 @@ class Endpoint(Regexp): # using Regexp brings in nice visual validator cue EXAMPLE = "https://myhost:8021" PATTERN = ( r"^[A-Za-z0-9\.\-\+]+:" # scheme - r"//([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+" # host + r"//([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+" # host r"(:[1-9][0-9]*)?" # port r"(/[^?&#]+)?$" # path ) diff --git a/open-api/openapi.json b/open-api/openapi.json index b08f3c519d..0d8cc4b256 100644 --- a/open-api/openapi.json +++ b/open-api/openapi.json @@ -1,7 +1,7 @@ { "swagger" : "2.0", "info" : { - "version" : "v0.6.0", + "version" : "v0.7.1-rc0", "title" : "Aries Cloud Agent" }, "tags" : [ { @@ -288,6 +288,13 @@ "description" : "Alias", "required" : false, "type" : "string" + }, { + "name" : "connection_protocol", + "in" : "query", + "description" : "Connection protocol used", + "required" : false, + "type" : "string", + "enum" : [ "connections/1.0", "didexchange/1.0" ] }, { "name" : "invitation_key", "in" : "query", @@ -308,7 +315,7 @@ "description" : "Connection state", "required" : false, "type" : "string", - "enum" : [ "start", "invitation", "completed", "response", "abandoned", "error", "init", "active", "request" ] + "enum" : [ "start", "response", "error", "completed", "abandoned", "active", "request", "init", "invitation" ] }, { "name" : "their_did", "in" : "query", @@ -512,7 +519,7 @@ "description" : "My URL endpoint", "required" : false, "type" : "string", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" }, { "name" : "my_label", "in" : "query", @@ -547,7 +554,7 @@ "description" : "My URL endpoint", "required" : false, "type" : "string", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" } ], "responses" : { "200" : { @@ -987,7 +994,7 @@ "200" : { "description" : "", "schema" : { - "$ref" : "#/definitions/CredBrief" + "$ref" : "#/definitions/IndyCredInfo" } } } @@ -1044,7 +1051,7 @@ "200" : { "description" : "", "schema" : { - "$ref" : "#/definitions/CredBriefList" + "$ref" : "#/definitions/CredInfoList" } } } @@ -1097,15 +1104,15 @@ "/didexchange/create-request" : { "post" : { "tags" : [ "did-exchange" ], - "summary" : "Create request against public DID's implicit invitation", + "summary" : "Create and send a request against public DID's implicit invitation", "produces" : [ "application/json" ], "parameters" : [ { "name" : "their_public_did", "in" : "query", - "description" : "Public DID to which to request connection", + "description" : "Qualified public DID to which to request connection", "required" : true, "type" : "string", - "pattern" : "^(did:sov:)?[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}$" + "pattern" : "^(did:sov:)?[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}$|^did:([a-zA-Z0-9_]+):([a-zA-Z0-9_.%-]+(:[a-zA-Z0-9_.%-]+)*)((;[a-zA-Z0-9_.:%-]+=[a-zA-Z0-9_.:%-]*)*)(\\/[^#?]*)?([?][^#]*)?(\\#.*)?$$" }, { "name" : "mediation_id", "in" : "query", @@ -1119,19 +1126,25 @@ "description" : "My URL endpoint", "required" : false, "type" : "string", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" }, { "name" : "my_label", "in" : "query", "description" : "Label for connection request", "required" : false, "type" : "string" + }, { + "name" : "use_public_did", + "in" : "query", + "description" : "Use public DID for this connection", + "required" : false, + "type" : "boolean" } ], "responses" : { "200" : { "description" : "", "schema" : { - "$ref" : "#/definitions/DIDXRequest" + "$ref" : "#/definitions/ConnRecord" } } } @@ -1174,7 +1187,7 @@ "description" : "My URL endpoint", "required" : false, "type" : "string", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" } ], "responses" : { "200" : { @@ -1203,7 +1216,7 @@ "description" : "My URL endpoint", "required" : false, "type" : "string", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" }, { "name" : "my_label", "in" : "query", @@ -1245,7 +1258,7 @@ "description" : "My URL endpoint", "required" : false, "type" : "string", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" } ], "responses" : { "200" : { @@ -1282,7 +1295,7 @@ "/issue-credential-2.0/create" : { "post" : { "tags" : [ "issue-credential v2.0" ], - "summary" : "Send holder a credential, automating entire flow", + "summary" : "Create credential from attribute values", "produces" : [ "application/json" ], "parameters" : [ { "in" : "body", @@ -1302,6 +1315,29 @@ } } }, + "/issue-credential-2.0/create-offer" : { + "post" : { + "tags" : [ "issue-credential v2.0" ], + "summary" : "Create a credential offer, independent of any proposal or connection", + "produces" : [ "application/json" ], + "parameters" : [ { + "in" : "body", + "name" : "body", + "required" : false, + "schema" : { + "$ref" : "#/definitions/V20CredOfferConnFreeRequest" + } + } ], + "responses" : { + "200" : { + "description" : "", + "schema" : { + "$ref" : "#/definitions/V20CredExRecord" + } + } + } + } + }, "/issue-credential-2.0/records" : { "get" : { "tags" : [ "issue-credential v2.0" ], @@ -1486,6 +1522,13 @@ "summary" : "Send issuer a credential request", "produces" : [ "application/json" ], "parameters" : [ { + "in" : "body", + "name" : "body", + "required" : false, + "schema" : { + "$ref" : "#/definitions/V20CredRequestRequest" + } + }, { "name" : "cred_ex_id", "in" : "path", "description" : "Credential exchange identifier", @@ -1543,7 +1586,7 @@ "name" : "body", "required" : false, "schema" : { - "$ref" : "#/definitions/V20IssueCredSchemaCore" + "$ref" : "#/definitions/V20CredSendRequest" } } ], "responses" : { @@ -1648,6 +1691,29 @@ } } }, + "/issue-credential/create-offer" : { + "post" : { + "tags" : [ "issue-credential v1.0" ], + "summary" : "Create a credential offer, independent of any proposal or connection", + "produces" : [ "application/json" ], + "parameters" : [ { + "in" : "body", + "name" : "body", + "required" : false, + "schema" : { + "$ref" : "#/definitions/V10CredentialConnFreeOfferRequest" + } + } ], + "responses" : { + "200" : { + "description" : "", + "schema" : { + "$ref" : "#/definitions/V10CredentialExchange" + } + } + } + } + }, "/issue-credential/records" : { "get" : { "tags" : [ "issue-credential v1.0" ], @@ -2702,7 +2768,7 @@ "name" : "body", "required" : false, "schema" : { - "$ref" : "#/definitions/InvitationReceiveRequest" + "$ref" : "#/definitions/InvitationMessage" } }, { "name" : "alias", @@ -3410,16 +3476,16 @@ "parameters" : [ { "name" : "did", "in" : "path", - "description" : "decentralize identifier(DID)", + "description" : "DID", "required" : true, "type" : "string", - "pattern" : "^did:([a-z0-9]+):((?:[a-zA-Z0-9._-]*:)*[a-zA-Z0-9._-]+)$" + "pattern" : "^did:([a-z0-9]+):((?:[a-zA-Z0-9._%-]*:)*[a-zA-Z0-9._%-]+)$" } ], "responses" : { "200" : { "description" : "null", "schema" : { - "$ref" : "#/definitions/DIDDoc" + "$ref" : "#/definitions/ResolutionResult" } } } @@ -3543,12 +3609,24 @@ "schema" : { "$ref" : "#/definitions/PublishRevocations" } + }, { + "name" : "conn_id", + "in" : "query", + "description" : "Connection identifier", + "required" : false, + "type" : "string" + }, { + "name" : "create_transaction_for_endorser", + "in" : "query", + "description" : "Create Transaction For Endorser's signature", + "required" : false, + "type" : "boolean" } ], "responses" : { "200" : { "description" : "", "schema" : { - "$ref" : "#/definitions/PublishRevocations" + "$ref" : "#/definitions/TxnOrPublishRevocationsResult" } } } @@ -3647,12 +3725,24 @@ "required" : true, "type" : "string", "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):4:([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+))(:.+)?:CL_ACCUM:(.+$)" + }, { + "name" : "conn_id", + "in" : "query", + "description" : "Connection identifier", + "required" : false, + "type" : "string" + }, { + "name" : "create_transaction_for_endorser", + "in" : "query", + "description" : "Create Transaction For Endorser's signature", + "required" : false, + "type" : "boolean" } ], "responses" : { "200" : { "description" : "", "schema" : { - "$ref" : "#/definitions/RevRegResult" + "$ref" : "#/definitions/TxnOrRevRegResult" } } } @@ -3670,6 +3760,18 @@ "required" : true, "type" : "string", "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):4:([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+))(:.+)?:CL_ACCUM:(.+$)" + }, { + "name" : "conn_id", + "in" : "query", + "description" : "Connection identifier", + "required" : false, + "type" : "string" + }, { + "name" : "create_transaction_for_endorser", + "in" : "query", + "description" : "Create Transaction For Endorser's signature", + "required" : false, + "type" : "boolean" } ], "responses" : { "200" : { @@ -3823,7 +3925,7 @@ }, { "name" : "create_transaction_for_endorser", "in" : "query", - "description" : "Create Transaction For Endorser's signature", + "description" : "Create Transaction For Endorser's signature", "required" : false, "type" : "boolean" } ], @@ -4055,6 +4157,12 @@ "description" : "Transaction identifier", "required" : true, "type" : "string" + }, { + "name" : "endorser_write_txn", + "in" : "query", + "description" : "Endorser will write the transaction after endorsing it", + "required" : false, + "type" : "boolean" } ], "responses" : { "200" : { @@ -4220,7 +4328,7 @@ "/transactions/{tran_id}/write" : { "post" : { "tags" : [ "endorse-transaction" ], - "summary" : "For Author to write an endorsed transaction to the ledger", + "summary" : "For Author / Endorser to write an endorsed transaction to the ledger", "produces" : [ "application/json" ], "parameters" : [ { "name" : "tran_id", @@ -4590,7 +4698,7 @@ }, "lastmod_time" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Hint regarding last modification datetime, in ISO-8601 format", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -4727,6 +4835,35 @@ "BasicMessageModuleResponse" : { "type" : "object" }, + "ClaimFormat" : { + "type" : "object", + "properties" : { + "jwt" : { + "type" : "object", + "properties" : { } + }, + "jwt_vc" : { + "type" : "object", + "properties" : { } + }, + "jwt_vp" : { + "type" : "object", + "properties" : { } + }, + "ldp" : { + "type" : "object", + "properties" : { } + }, + "ldp_vc" : { + "type" : "object", + "properties" : { } + }, + "ldp_vp" : { + "type" : "object", + "properties" : { } + } + } + }, "ClearPendingRevocationsRequest" : { "type" : "object", "properties" : { @@ -4764,9 +4901,15 @@ "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", "description" : "Connection identifier" }, + "connection_protocol" : { + "type" : "string", + "example" : "connections/1.0", + "description" : "Connection protocol used", + "enum" : [ "connections/1.0", "didexchange/1.0" ] + }, "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -4849,7 +4992,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -4977,7 +5120,7 @@ "type" : "string", "example" : "https://myhost:8021", "description" : "URL endpoint for other party", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" }, "their_label" : { "type" : "string", @@ -5013,7 +5156,7 @@ "type" : "string", "example" : "https://myhost:8021", "description" : "My URL endpoint", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" }, "record" : { "$ref" : "#/definitions/ConnRecord" @@ -5032,6 +5175,44 @@ } } }, + "Constraints" : { + "type" : "object", + "properties" : { + "fields" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/DIFField" + } + }, + "is_holder" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/DIFHolder" + } + }, + "limit_disclosure" : { + "type" : "string", + "description" : "LimitDisclosure" + }, + "status_active" : { + "type" : "string", + "enum" : [ "required", "allowed", "disallowed" ] + }, + "status_revoked" : { + "type" : "string", + "enum" : [ "required", "allowed", "disallowed" ] + }, + "status_suspended" : { + "type" : "string", + "enum" : [ "required", "allowed", "disallowed" ] + }, + "subject_is_issuer" : { + "type" : "string", + "description" : "SubjectIsIssuer", + "enum" : [ "required", "preferred" ] + } + } + }, "CreateInvitationRequest" : { "type" : "object", "properties" : { @@ -5136,7 +5317,7 @@ "properties" : { "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -5162,7 +5343,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -5215,61 +5396,112 @@ } } }, - "CredBrief" : { + "CredDefValue" : { "type" : "object", "properties" : { - "attrs" : { - "type" : "object", - "description" : "Attribute names mapped to their raw values", - "additionalProperties" : { - "type" : "string", - "description" : "Attribute value" - } + "primary" : { + "$ref" : "#/definitions/CredDefValue_primary" }, - "cred_def_id" : { + "revocation" : { + "$ref" : "#/definitions/CredDefValue_revocation" + } + } + }, + "CredDefValuePrimary" : { + "type" : "object", + "properties" : { + "n" : { "type" : "string", - "example" : "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag", - "description" : "Credential definition identifier", - "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+)):(.+)?$" + "example" : "0", + "pattern" : "^[0-9]*$" }, - "cred_rev_id" : { + "r" : { + "$ref" : "#/definitions/Generated" + }, + "rctxt" : { "type" : "string", - "example" : "12345", - "description" : "Credential revocation identifier", - "pattern" : "^[1-9][0-9]*$" + "example" : "0", + "pattern" : "^[0-9]*$" }, - "referent" : { + "s" : { "type" : "string", - "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", - "description" : "Credential referent" + "example" : "0", + "pattern" : "^[0-9]*$" }, - "rev_reg_id" : { + "z" : { "type" : "string", - "example" : "WgWxqztrNooG92RXvxSTWv:4:WgWxqztrNooG92RXvxSTWv:3:CL:20:tag:CL_ACCUM:0", - "description" : "Revocation registry identifier", - "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):4:([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+))(:.+)?:CL_ACCUM:(.+$)" + "example" : "0", + "pattern" : "^[0-9]*$" + } + } + }, + "CredDefValueRevocation" : { + "type" : "object", + "properties" : { + "g" : { + "type" : "string", + "example" : "1 1F14F&ECB578F 2 095E45DDF417D" }, - "schema_id" : { + "g_dash" : { "type" : "string", - "example" : "WgWxqztrNooG92RXvxSTWv:2:schema_name:1.0", - "description" : "Schema identifier", - "pattern" : "^[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+$" + "example" : "1 1D64716fCDC00C 1 0C781960FA66E3D3 2 095E45DDF417D" + }, + "h" : { + "type" : "string", + "example" : "1 16675DAE54BFAE8 2 095E45DD417D" + }, + "h0" : { + "type" : "string", + "example" : "1 21E5EF9476EAF18 2 095E45DDF417D" + }, + "h1" : { + "type" : "string", + "example" : "1 236D1D99236090 2 095E45DDF417D" + }, + "h2" : { + "type" : "string", + "example" : "1 1C3AE8D1F1E277 2 095E45DDF417D" + }, + "h_cap" : { + "type" : "string", + "example" : "1 1B2A32CF3167 1 2490FEBF6EE55 1 0000000000000000" + }, + "htilde" : { + "type" : "string", + "example" : "1 1D8549E8C0F8 2 095E45DDF417D" + }, + "pk" : { + "type" : "string", + "example" : "1 142CD5E5A7DC 1 153885BD903312 2 095E45DDF417D" + }, + "u" : { + "type" : "string", + "example" : "1 0C430AAB2B4710 1 1CB3A0932EE7E 1 0000000000000000" + }, + "y" : { + "type" : "string", + "example" : "1 153558BD903312 2 095E45DDF417D 1 0000000000000000" } } }, - "CredBriefList" : { + "CredInfoList" : { "type" : "object", "properties" : { "results" : { "type" : "array", "items" : { - "$ref" : "#/definitions/CredBrief" + "$ref" : "#/definitions/IndyCredInfo" } } } }, "CredRevRecordResult" : { - "type" : "object" + "type" : "object", + "properties" : { + "result" : { + "$ref" : "#/definitions/IssuerCredRevRecord" + } + } }, "CredRevokedResult" : { "type" : "object", @@ -5351,9 +5583,7 @@ "description" : "Signature type: CL for Camenisch-Lysyanskaya" }, "value" : { - "type" : "object", - "description" : "Credential definition primary and revocation values", - "properties" : { } + "$ref" : "#/definitions/CredentialDefinition_value" }, "ver" : { "type" : "string", @@ -5424,6 +5654,37 @@ } } }, + "CredentialOffer" : { + "type" : "object", + "required" : [ "offers~attach" ], + "properties" : { + "@id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Message identifier" + }, + "@type" : { + "type" : "string", + "example" : "https://didcomm.org/my-family/1.0/my-message-type", + "description" : "Message type", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "description" : "Human-readable comment", + "x-nullable" : true + }, + "credential_preview" : { + "$ref" : "#/definitions/CredentialPreview" + }, + "offers~attach" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/AttachDecorator" + } + } + } + }, "CredentialPreview" : { "type" : "object", "required" : [ "attributes" ], @@ -5563,18 +5824,6 @@ } } }, - "DIDDoc" : { - "type" : "object", - "required" : [ "did_doc" ], - "properties" : { - "did_doc" : { - "type" : "string", - "example" : "*", - "description" : "decentralize identifier(DID) document", - "pattern" : "^did:([a-z0-9]+):((?:[a-zA-Z0-9._-]*:)*[a-zA-Z0-9._-]+)$" - } - } - }, "DIDEndpoint" : { "type" : "object", "required" : [ "did" ], @@ -5589,7 +5838,7 @@ "type" : "string", "example" : "https://myhost:8021", "description" : "Endpoint to set (omit to delete)", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" } } }, @@ -5607,7 +5856,7 @@ "type" : "string", "example" : "https://myhost:8021", "description" : "Endpoint to set (omit to delete)", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" }, "endpoint_type" : { "type" : "string", @@ -5668,30 +5917,110 @@ } } }, - "DIFPresProposal" : { + "DIFField" : { "type" : "object", "properties" : { - "some_dif" : { + "filter" : { + "$ref" : "#/definitions/Filter" + }, + "id" : { "type" : "string", - "description" : "Placeholder for W3C/DIF/JSON-LD presentation proposal format" + "description" : "ID" + }, + "path" : { + "type" : "array", + "items" : { + "type" : "string", + "description" : "Path" + } + }, + "predicate" : { + "type" : "string", + "description" : "Preference", + "enum" : [ "required", "preferred" ] + }, + "purpose" : { + "type" : "string", + "description" : "Purpose" + } + } + }, + "DIFHolder" : { + "type" : "object", + "properties" : { + "directive" : { + "type" : "string", + "description" : "Preference", + "enum" : [ "required", "preferred" ] + }, + "field_id" : { + "type" : "array", + "items" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "FieldID", + "pattern" : "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-4[a-fA-F0-9]{3}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}" + } } } }, - "DIFPresRequest" : { + "DIFOptions" : { "type" : "object", "properties" : { - "some_dif" : { + "challenge" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Challenge protect against replay attack", + "pattern" : "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-4[a-fA-F0-9]{3}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}" + }, + "domain" : { "type" : "string", - "description" : "Placeholder for W3C/DIF/JSON-LD presentation request format" + "example" : "4jt78h47fh47", + "description" : "Domain protect against replay attack" } } }, "DIFPresSpec" : { "type" : "object", "properties" : { - "some_dif" : { + "issuer_id" : { "type" : "string", - "description" : "Placeholder for W3C/DIF/JSON-LD presentation format" + "description" : "Issuer identifier to sign the presentation, if different from current public DID" + }, + "presentation_definition" : { + "$ref" : "#/definitions/PresentationDefinition" + }, + "record_ids" : { + "type" : "object", + "example" : { + "" : [ "", "" ], + "" : [ "" ] + }, + "description" : "Mapping of input_descriptor id to list of stored W3C credential record_id", + "properties" : { } + } + } + }, + "DIFProofProposal" : { + "type" : "object", + "properties" : { + "input_descriptors" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/InputDescriptors" + } + } + } + }, + "DIFProofRequest" : { + "type" : "object", + "required" : [ "presentation_definition" ], + "properties" : { + "options" : { + "$ref" : "#/definitions/DIFOptions" + }, + "presentation_definition" : { + "$ref" : "#/definitions/PresentationDefinition" } } }, @@ -5707,6 +6036,20 @@ } } }, + "Doc" : { + "type" : "object", + "required" : [ "credential", "options" ], + "properties" : { + "credential" : { + "type" : "object", + "description" : "Credential to sign", + "properties" : { } + }, + "options" : { + "$ref" : "#/definitions/Doc_options" + } + } + }, "EndorserInfo" : { "type" : "object", "required" : [ "endorser_did" ], @@ -5728,27 +6071,88 @@ "type" : "string", "example" : "https://myhost:8021", "description" : "My endpoint", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" }, "their_endpoint" : { "type" : "string", "example" : "https://myhost:8021", "description" : "Their endpoint", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + } + } + }, + "Filter" : { + "type" : "object", + "properties" : { + "const" : { + "description" : "Const" + }, + "enum" : { + "type" : "array", + "items" : { + "description" : "Enum" + } + }, + "exclusiveMaximum" : { + "description" : "ExclusiveMaximum" + }, + "exclusiveMinimum" : { + "description" : "ExclusiveMinimum" + }, + "format" : { + "type" : "string", + "description" : "Format" + }, + "maxLength" : { + "type" : "integer", + "format" : "int32", + "example" : 1234, + "description" : "Max Length" + }, + "maximum" : { + "description" : "Maximum" + }, + "minLength" : { + "type" : "integer", + "format" : "int32", + "example" : 1234, + "description" : "Min Length" + }, + "minimum" : { + "description" : "Minimum" + }, + "not" : { + "type" : "boolean", + "example" : false, + "description" : "Not" + }, + "pattern" : { + "type" : "string", + "description" : "Pattern" + }, + "type" : { + "type" : "string", + "description" : "Type" } } }, "Generated" : { "type" : "object", - "required" : [ "credential", "options" ], "properties" : { - "credential" : { - "type" : "object", - "description" : "Credential to sign", - "properties" : { } + "master_secret" : { + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" }, - "options" : { - "$ref" : "#/definitions/Generated" + "number" : { + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" + }, + "remainder" : { + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" } } }, @@ -5759,7 +6163,7 @@ "type" : "string", "example" : "https://myhost:8021", "description" : "Full verification key", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$", + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$", "x-nullable" : true } } @@ -5790,6 +6194,49 @@ "HolderModuleResponse" : { "type" : "object" }, + "IndyAttrValue" : { + "type" : "object", + "required" : [ "encoded", "raw" ], + "properties" : { + "encoded" : { + "type" : "string", + "example" : "0", + "description" : "Attribute encoded value", + "pattern" : "^[0-9]*$" + }, + "raw" : { + "type" : "string", + "description" : "Attribute raw value" + } + } + }, + "IndyCredAbstract" : { + "type" : "object", + "required" : [ "cred_def_id", "key_correctness_proof", "nonce", "schema_id" ], + "properties" : { + "cred_def_id" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag", + "description" : "Credential definition identifier", + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+)):(.+)?$" + }, + "key_correctness_proof" : { + "$ref" : "#/definitions/IndyCredAbstract_key_correctness_proof" + }, + "nonce" : { + "type" : "string", + "example" : "0", + "description" : "Nonce in credential abstract", + "pattern" : "^[0-9]*$" + }, + "schema_id" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:2:schema_name:1.0", + "description" : "Schema identifier", + "pattern" : "^[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+$" + } + } + }, "IndyCredInfo" : { "type" : "object", "properties" : { @@ -5798,7 +6245,7 @@ "description" : "Attribute names and value", "additionalProperties" : { "type" : "string", - "example" : "24" + "example" : "alice" } }, "cred_def_id" : { @@ -5807,11 +6254,12 @@ "description" : "Credential definition identifier", "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+)):(.+)?$" }, - "cred_rev" : { + "cred_rev_id" : { "type" : "string", "example" : "12345", "description" : "Credential revocation identifier", - "pattern" : "^[1-9][0-9]*$" + "pattern" : "^[1-9][0-9]*$", + "x-nullable" : true }, "referent" : { "type" : "string", @@ -5822,7 +6270,8 @@ "type" : "string", "example" : "WgWxqztrNooG92RXvxSTWv:4:WgWxqztrNooG92RXvxSTWv:3:CL:20:tag:CL_ACCUM:0", "description" : "Revocation registry identifier", - "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):4:([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+))(:.+)?:CL_ACCUM:(.+$)" + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):4:([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+))(:.+)?:CL_ACCUM:(.+$)", + "x-nullable" : true }, "schema_id" : { "type" : "string", @@ -5851,40 +6300,43 @@ } } }, - "IndyPresAttrSpec" : { + "IndyCredRequest" : { "type" : "object", - "required" : [ "name" ], + "required" : [ "blinded_ms", "blinded_ms_correctness_proof", "cred_def_id", "nonce" ], "properties" : { + "blinded_ms" : { + "type" : "object", + "description" : "Blinded master secret", + "properties" : { } + }, + "blinded_ms_correctness_proof" : { + "type" : "object", + "description" : "Blinded master secret correctness proof", + "properties" : { } + }, "cred_def_id" : { "type" : "string", "example" : "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag", + "description" : "Credential definition identifier", "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+)):(.+)?$" }, - "mime-type" : { - "type" : "string", - "example" : "image/jpeg", - "description" : "MIME type (default null)" - }, - "name" : { - "type" : "string", - "example" : "favourite_drink", - "description" : "Attribute name" - }, - "referent" : { + "nonce" : { "type" : "string", "example" : "0", - "description" : "Credential referent" + "description" : "Nonce in credential request", + "pattern" : "^[0-9]*$" }, - "value" : { + "prover_did" : { "type" : "string", - "example" : "martini", - "description" : "Attribute value" + "example" : "WgWxqztrNooG92RXvxSTWv", + "description" : "Prover DID", + "pattern" : "^(did:sov:)?[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}$" } } }, - "IndyPresPredSpec" : { + "IndyCredential" : { "type" : "object", - "required" : [ "name", "predicate", "threshold" ], + "required" : [ "cred_def_id", "schema_id", "signature", "signature_correctness_proof", "values" ], "properties" : { "cred_def_id" : { "type" : "string", @@ -5892,71 +6344,330 @@ "description" : "Credential definition identifier", "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+)):(.+)?$" }, - "name" : { - "type" : "string", - "example" : "high_score", - "description" : "Attribute name" + "rev_reg" : { + "type" : "object", + "description" : "Revocation registry state", + "properties" : { }, + "x-nullable" : true }, - "predicate" : { + "rev_reg_id" : { "type" : "string", - "example" : ">=", - "description" : "Predicate type ('<', '<=', '>=', or '>')", - "enum" : [ "<", "<=", ">=", ">" ] + "example" : "WgWxqztrNooG92RXvxSTWv:4:WgWxqztrNooG92RXvxSTWv:3:CL:20:tag:CL_ACCUM:0", + "description" : "Revocation registry identifier", + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):4:([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+))(:.+)?:CL_ACCUM:(.+$)", + "x-nullable" : true }, - "threshold" : { - "type" : "integer", - "format" : "int32", - "description" : "Threshold value" - } - } - }, - "IndyPresPreview" : { - "type" : "object", - "required" : [ "attributes", "predicates" ], - "properties" : { - "@type" : { + "schema_id" : { "type" : "string", - "example" : "did:sov:BzCbsNYhMrjHiqZDTUASHg;spec/present-proof/1.0/presentation-preview", - "description" : "Message type identifier" + "example" : "WgWxqztrNooG92RXvxSTWv:2:schema_name:1.0", + "description" : "Schema identifier", + "pattern" : "^[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+$" }, - "attributes" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/IndyPresAttrSpec" - } + "signature" : { + "type" : "object", + "description" : "Credential signature", + "properties" : { } }, - "predicates" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/IndyPresPredSpec" + "signature_correctness_proof" : { + "type" : "object", + "description" : "Credential signature correctness proof", + "properties" : { } + }, + "values" : { + "type" : "object", + "description" : "Credential attributes", + "additionalProperties" : { + "type" : "object", + "description" : "Attribute value", + "allOf" : [ { + "$ref" : "#/definitions/IndyAttrValue" + } ] } + }, + "witness" : { + "type" : "object", + "description" : "Witness for revocation proof", + "properties" : { }, + "x-nullable" : true } } }, - "IndyPresSpec" : { + "IndyEQProof" : { "type" : "object", - "required" : [ "requested_attributes", "requested_predicates", "self_attested_attributes" ], "properties" : { - "requested_attributes" : { - "type" : "object", - "description" : "Nested object mapping proof request attribute referents to requested-attribute specifiers", - "additionalProperties" : { - "$ref" : "#/definitions/IndyRequestedCredsRequestedAttr" - } + "a_prime" : { + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" }, - "requested_predicates" : { + "e" : { + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" + }, + "m" : { "type" : "object", - "description" : "Nested object mapping proof request predicate referents to requested-predicate specifiers", "additionalProperties" : { - "$ref" : "#/definitions/IndyRequestedCredsRequestedPred" + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" } }, - "self_attested_attributes" : { + "m2" : { + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" + }, + "revealed_attrs" : { "type" : "object", - "description" : "Self-attested attributes to build into proof", "additionalProperties" : { "type" : "string", - "example" : "self_attested_value", + "example" : "0", + "pattern" : "^[0-9]*$" + } + }, + "v" : { + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" + } + } + }, + "IndyGEProof" : { + "type" : "object", + "properties" : { + "alpha" : { + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" + }, + "mj" : { + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" + }, + "predicate" : { + "$ref" : "#/definitions/IndyGEProofPred" + }, + "r" : { + "type" : "object", + "additionalProperties" : { + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" + } + }, + "t" : { + "type" : "object", + "additionalProperties" : { + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" + } + }, + "u" : { + "type" : "object", + "additionalProperties" : { + "type" : "string", + "example" : "0", + "pattern" : "^[0-9]*$" + } + } + } + }, + "IndyGEProofPred" : { + "type" : "object", + "properties" : { + "attr_name" : { + "type" : "string", + "description" : "Attribute name, indy-canonicalized" + }, + "p_type" : { + "type" : "string", + "description" : "Predicate type", + "enum" : [ "LT", "LE", "GE", "GT" ] + }, + "value" : { + "type" : "integer", + "format" : "int32", + "description" : "Predicate threshold value" + } + } + }, + "IndyKeyCorrectnessProof" : { + "type" : "object", + "required" : [ "c", "xr_cap", "xz_cap" ], + "properties" : { + "c" : { + "type" : "string", + "example" : "0", + "description" : "c in key correctness proof", + "pattern" : "^[0-9]*$" + }, + "xr_cap" : { + "type" : "array", + "description" : "xr_cap in key correctness proof", + "items" : { + "type" : "array", + "description" : "xr_cap components in key correctness proof", + "items" : { + "type" : "string", + "description" : "xr_cap component values in key correctness proof" + } + } + }, + "xz_cap" : { + "type" : "string", + "example" : "0", + "description" : "xz_cap in key correctness proof", + "pattern" : "^[0-9]*$" + } + } + }, + "IndyNonRevocProof" : { + "type" : "object", + "properties" : { + "c_list" : { + "type" : "object", + "additionalProperties" : { + "type" : "string" + } + }, + "x_list" : { + "type" : "object", + "additionalProperties" : { + "type" : "string" + } + } + } + }, + "IndyNonRevocationInterval" : { + "type" : "object", + "properties" : { + "from" : { + "type" : "integer", + "format" : "int32", + "example" : 1629902828, + "description" : "Earliest time of interest in non-revocation interval", + "minimum" : 0, + "maximum" : 18446744073709551615 + }, + "to" : { + "type" : "integer", + "format" : "int32", + "example" : 1629902828, + "description" : "Latest time of interest in non-revocation interval", + "minimum" : 0, + "maximum" : 18446744073709551615 + } + } + }, + "IndyPresAttrSpec" : { + "type" : "object", + "required" : [ "name" ], + "properties" : { + "cred_def_id" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag", + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+)):(.+)?$" + }, + "mime-type" : { + "type" : "string", + "example" : "image/jpeg", + "description" : "MIME type (default null)" + }, + "name" : { + "type" : "string", + "example" : "favourite_drink", + "description" : "Attribute name" + }, + "referent" : { + "type" : "string", + "example" : "0", + "description" : "Credential referent" + }, + "value" : { + "type" : "string", + "example" : "martini", + "description" : "Attribute value" + } + } + }, + "IndyPresPredSpec" : { + "type" : "object", + "required" : [ "name", "predicate", "threshold" ], + "properties" : { + "cred_def_id" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag", + "description" : "Credential definition identifier", + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+)):(.+)?$" + }, + "name" : { + "type" : "string", + "example" : "high_score", + "description" : "Attribute name" + }, + "predicate" : { + "type" : "string", + "example" : ">=", + "description" : "Predicate type ('<', '<=', '>=', or '>')", + "enum" : [ "<", "<=", ">=", ">" ] + }, + "threshold" : { + "type" : "integer", + "format" : "int32", + "description" : "Threshold value" + } + } + }, + "IndyPresPreview" : { + "type" : "object", + "required" : [ "attributes", "predicates" ], + "properties" : { + "@type" : { + "type" : "string", + "example" : "did:sov:BzCbsNYhMrjHiqZDTUASHg;spec/present-proof/1.0/presentation-preview", + "description" : "Message type identifier" + }, + "attributes" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/IndyPresAttrSpec" + } + }, + "predicates" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/IndyPresPredSpec" + } + } + } + }, + "IndyPresSpec" : { + "type" : "object", + "required" : [ "requested_attributes", "requested_predicates", "self_attested_attributes" ], + "properties" : { + "requested_attributes" : { + "type" : "object", + "description" : "Nested object mapping proof request attribute referents to requested-attribute specifiers", + "additionalProperties" : { + "$ref" : "#/definitions/IndyRequestedCredsRequestedAttr" + } + }, + "requested_predicates" : { + "type" : "object", + "description" : "Nested object mapping proof request predicate referents to requested-predicate specifiers", + "additionalProperties" : { + "$ref" : "#/definitions/IndyRequestedCredsRequestedPred" + } + }, + "self_attested_attributes" : { + "type" : "object", + "description" : "Self-attested attributes to build into proof", + "additionalProperties" : { + "type" : "string", + "example" : "self_attested_value", "description" : "Self-attested attribute values to use in requested-credentials structure for proof construction" } }, @@ -5967,6 +6678,119 @@ } } }, + "IndyPrimaryProof" : { + "type" : "object", + "properties" : { + "eq_proof" : { + "$ref" : "#/definitions/IndyPrimaryProof_eq_proof" + }, + "ge_proofs" : { + "type" : "array", + "description" : "Indy GE proofs", + "items" : { + "$ref" : "#/definitions/IndyGEProof" + }, + "x-nullable" : true + } + } + }, + "IndyProof" : { + "type" : "object", + "properties" : { + "identifiers" : { + "type" : "array", + "description" : "Indy proof.identifiers content", + "items" : { + "$ref" : "#/definitions/IndyProofIdentifier" + } + }, + "proof" : { + "$ref" : "#/definitions/IndyProof_proof" + }, + "requested_proof" : { + "$ref" : "#/definitions/IndyProof_requested_proof" + } + } + }, + "IndyProofIdentifier" : { + "type" : "object", + "properties" : { + "cred_def_id" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag", + "description" : "Credential definition identifier", + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+)):(.+)?$" + }, + "rev_reg_id" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:4:WgWxqztrNooG92RXvxSTWv:3:CL:20:tag:CL_ACCUM:0", + "description" : "Revocation registry identifier", + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):4:([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+))(:.+)?:CL_ACCUM:(.+$)", + "x-nullable" : true + }, + "schema_id" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:2:schema_name:1.0", + "description" : "Schema identifier", + "pattern" : "^[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+$" + }, + "timestamp" : { + "type" : "integer", + "format" : "int32", + "example" : 1629902828, + "description" : "Timestamp epoch", + "minimum" : 0, + "maximum" : 18446744073709551615, + "x-nullable" : true + } + } + }, + "IndyProofProof" : { + "type" : "object", + "properties" : { + "aggregated_proof" : { + "$ref" : "#/definitions/IndyProofProof_aggregated_proof" + }, + "proofs" : { + "type" : "array", + "description" : "Indy proof proofs", + "items" : { + "$ref" : "#/definitions/IndyProofProofProofsProof" + } + } + } + }, + "IndyProofProofAggregatedProof" : { + "type" : "object", + "properties" : { + "c_hash" : { + "type" : "string", + "description" : "c_hash value" + }, + "c_list" : { + "type" : "array", + "description" : "c_list value", + "items" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int32" + } + } + } + } + }, + "IndyProofProofProofsProof" : { + "type" : "object", + "properties" : { + "non_revoc_proof" : { + "$ref" : "#/definitions/IndyProofProofProofsProof_non_revoc_proof" + }, + "primary_proof" : { + "$ref" : "#/definitions/IndyProofProofProofsProof_primary_proof" + } + } + }, "IndyProofReqAttrSpec" : { "type" : "object", "properties" : { @@ -5999,15 +6823,22 @@ } } }, - "IndyProofReqNonRevoked" : { + "IndyProofReqAttrSpecNonRevoked" : { "type" : "object", - "required" : [ "to" ], "properties" : { + "from" : { + "type" : "integer", + "format" : "int32", + "example" : 1629902828, + "description" : "Earliest time of interest in non-revocation interval", + "minimum" : 0, + "maximum" : 18446744073709551615 + }, "to" : { "type" : "integer", "format" : "int32", - "example" : 1620219211, - "description" : "Timestamp of interest for non-revocation proof", + "example" : 1629902828, + "description" : "Latest time of interest in non-revocation interval", "minimum" : 0, "maximum" : 18446744073709551615 } @@ -6038,123 +6869,373 @@ }, "restrictions" : { "type" : "array", - "description" : "If present, credential must satisfy one of given restrictions", + "description" : "If present, credential must satisfy one of given restrictions: specify schema_id, schema_issuer_did, schema_name, schema_version, issuer_did, cred_def_id, and/or attr::::value where represents a credential attribute name", "items" : { - "$ref" : "#/definitions/IndyProofReqPredSpecRestrictions" + "type" : "object", + "additionalProperties" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag" + } } } } }, - "IndyProofReqPredSpecRestrictions" : { + "IndyProofReqPredSpecNonRevoked" : { "type" : "object", "properties" : { - "cred_def_id" : { + "from" : { + "type" : "integer", + "format" : "int32", + "example" : 1629902828, + "description" : "Earliest time of interest in non-revocation interval", + "minimum" : 0, + "maximum" : 18446744073709551615 + }, + "to" : { + "type" : "integer", + "format" : "int32", + "example" : 1629902828, + "description" : "Latest time of interest in non-revocation interval", + "minimum" : 0, + "maximum" : 18446744073709551615 + } + } + }, + "IndyProofRequest" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "example" : "Proof request", + "description" : "Proof request name" + }, + "non_revoked" : { + "$ref" : "#/definitions/IndyProofReqAttrSpec_non_revoked" + }, + "nonce" : { + "type" : "string", + "example" : "1", + "description" : "Nonce", + "pattern" : "^[1-9][0-9]*$" + }, + "requested_attributes" : { + "type" : "object", + "description" : "Requested attribute specifications of proof request", + "additionalProperties" : { + "$ref" : "#/definitions/IndyProofReqAttrSpec" + } + }, + "requested_predicates" : { + "type" : "object", + "description" : "Requested predicate specifications of proof request", + "additionalProperties" : { + "$ref" : "#/definitions/IndyProofReqPredSpec" + } + }, + "version" : { + "type" : "string", + "example" : "1.0", + "description" : "Proof request version", + "pattern" : "^[0-9.]+$" + } + } + }, + "IndyProofRequestNonRevoked" : { + "type" : "object", + "properties" : { + "from" : { + "type" : "integer", + "format" : "int32", + "example" : 1629902828, + "description" : "Earliest time of interest in non-revocation interval", + "minimum" : 0, + "maximum" : 18446744073709551615 + }, + "to" : { + "type" : "integer", + "format" : "int32", + "example" : 1629902828, + "description" : "Latest time of interest in non-revocation interval", + "minimum" : 0, + "maximum" : 18446744073709551615 + } + } + }, + "IndyProofRequestedProof" : { + "type" : "object", + "properties" : { + "predicates" : { + "type" : "object", + "description" : "Proof requested proof predicates.", + "additionalProperties" : { + "$ref" : "#/definitions/IndyProofRequestedProofPredicate" + } + }, + "revealed_attr_groups" : { + "type" : "object", + "description" : "Proof requested proof revealed attribute groups", + "additionalProperties" : { + "$ref" : "#/definitions/IndyProofRequestedProofRevealedAttrGroup" + }, + "x-nullable" : true + }, + "revealed_attrs" : { + "type" : "object", + "description" : "Proof requested proof revealed attributes", + "additionalProperties" : { + "$ref" : "#/definitions/IndyProofRequestedProofRevealedAttr" + }, + "x-nullable" : true + }, + "self_attested_attrs" : { + "type" : "object", + "description" : "Proof requested proof self-attested attributes", + "properties" : { } + }, + "unrevealed_attrs" : { + "type" : "object", + "description" : "Unrevealed attributes", + "properties" : { } + } + } + }, + "IndyProofRequestedProofPredicate" : { + "type" : "object", + "properties" : { + "sub_proof_index" : { + "type" : "integer", + "format" : "int32", + "description" : "Sub-proof index" + } + } + }, + "IndyProofRequestedProofRevealedAttr" : { + "type" : "object", + "properties" : { + "encoded" : { + "type" : "string", + "example" : "0", + "description" : "Encoded value", + "pattern" : "^[0-9]*$" + }, + "raw" : { + "type" : "string", + "description" : "Raw value" + }, + "sub_proof_index" : { + "type" : "integer", + "format" : "int32", + "description" : "Sub-proof index" + } + } + }, + "IndyProofRequestedProofRevealedAttrGroup" : { + "type" : "object", + "properties" : { + "sub_proof_index" : { + "type" : "integer", + "format" : "int32", + "description" : "Sub-proof index" + }, + "values" : { + "type" : "object", + "description" : "Indy proof requested proof revealed attr groups group value", + "additionalProperties" : { + "$ref" : "#/definitions/RawEncoded" + } + } + } + }, + "IndyRequestedCredsRequestedAttr" : { + "type" : "object", + "required" : [ "cred_id" ], + "properties" : { + "cred_id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Wallet credential identifier (typically but not necessarily a UUID)" + }, + "revealed" : { + "type" : "boolean", + "description" : "Whether to reveal attribute in proof (default true)" + } + } + }, + "IndyRequestedCredsRequestedPred" : { + "type" : "object", + "required" : [ "cred_id" ], + "properties" : { + "cred_id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Wallet credential identifier (typically but not necessarily a UUID)" + }, + "timestamp" : { + "type" : "integer", + "format" : "int32", + "example" : 1629902828, + "description" : "Epoch timestamp of interest for non-revocation proof", + "minimum" : 0, + "maximum" : 18446744073709551615 + } + } + }, + "IndyRevRegDef" : { + "type" : "object", + "properties" : { + "credDefId" : { "type" : "string", "example" : "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag", "description" : "Credential definition identifier", "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+)):(.+)?$" }, - "issuer_did" : { + "id" : { "type" : "string", - "example" : "WgWxqztrNooG92RXvxSTWv", - "description" : "Credential issuer DID", - "pattern" : "^(did:sov:)?[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}$" + "example" : "WgWxqztrNooG92RXvxSTWv:4:WgWxqztrNooG92RXvxSTWv:3:CL:20:tag:CL_ACCUM:0", + "description" : "Indy revocation registry identifier", + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):4:([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+))(:.+)?:CL_ACCUM:(.+$)" }, - "schema_id" : { + "revocDefType" : { "type" : "string", - "example" : "WgWxqztrNooG92RXvxSTWv:2:schema_name:1.0", - "description" : "Schema identifier", - "pattern" : "^[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+$" + "example" : "CL_ACCUM", + "description" : "Revocation registry type (specify CL_ACCUM)", + "enum" : [ "CL_ACCUM" ] }, - "schema_issuer_did" : { + "tag" : { "type" : "string", - "example" : "WgWxqztrNooG92RXvxSTWv", - "description" : "Schema issuer (origin) DID", - "pattern" : "^(did:sov:)?[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}$" + "description" : "Revocation registry tag" + }, + "value" : { + "$ref" : "#/definitions/IndyRevRegDef_value" + }, + "ver" : { + "type" : "string", + "example" : "1.0", + "description" : "Version of revocation registry definition", + "pattern" : "^[0-9.]+$" + } + } + }, + "IndyRevRegDefValue" : { + "type" : "object", + "properties" : { + "issuanceType" : { + "type" : "string", + "description" : "Issuance type", + "enum" : [ "ISSUANCE_ON_DEMAND", "ISSUANCE_BY_DEFAULT" ] + }, + "maxCredNum" : { + "type" : "integer", + "format" : "int32", + "example" : 10, + "description" : "Maximum number of credentials; registry size", + "minimum" : 1 + }, + "publicKeys" : { + "$ref" : "#/definitions/IndyRevRegDefValue_publicKeys" }, - "schema_name" : { + "tailsHash" : { "type" : "string", - "example" : "transcript", - "description" : "Schema name" + "example" : "H3C2AVvLMv6gmMNam3uVAjZpfkcJCwDwnZn6z3wXmqPV", + "description" : "Tails hash value", + "pattern" : "^[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{43,44}$" }, - "schema_version" : { + "tailsLocation" : { "type" : "string", - "example" : "1.0", - "description" : "Schema version", - "pattern" : "^[0-9.]+$" + "description" : "Tails file location" } } }, - "IndyProofRequest" : { + "IndyRevRegDefValuePublicKeys" : { "type" : "object", - "required" : [ "requested_attributes", "requested_predicates" ], "properties" : { - "name" : { - "type" : "string", - "example" : "Proof request", - "description" : "Proof request name" - }, - "non_revoked" : { - "$ref" : "#/definitions/IndyProofReqAttrSpec_non_revoked" - }, - "nonce" : { + "accumKey" : { + "$ref" : "#/definitions/IndyRevRegDefValuePublicKeysAccumKey" + } + } + }, + "IndyRevRegDefValuePublicKeysAccumKey" : { + "type" : "object", + "properties" : { + "z" : { "type" : "string", - "example" : "1234567890", - "description" : "Nonce" - }, - "requested_attributes" : { - "type" : "object", - "description" : "Requested attribute specifications of proof request", - "additionalProperties" : { - "$ref" : "#/definitions/IndyProofReqAttrSpec" - } - }, - "requested_predicates" : { - "type" : "object", - "description" : "Requested predicate specifications of proof request", - "additionalProperties" : { - "$ref" : "#/definitions/IndyProofReqPredSpec" - } + "example" : "1 120F522F81E6B7 1 09F7A59005C4939854", + "description" : "Value for z" + } + } + }, + "IndyRevRegEntry" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/definitions/IndyRevRegEntry_value" }, - "version" : { + "ver" : { "type" : "string", "example" : "1.0", - "description" : "Proof request version", + "description" : "Version of revocation registry entry", "pattern" : "^[0-9.]+$" } } }, - "IndyRequestedCredsRequestedAttr" : { + "IndyRevRegEntryValue" : { "type" : "object", - "required" : [ "cred_id" ], "properties" : { - "cred_id" : { + "accum" : { "type" : "string", - "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", - "description" : "Wallet credential identifier (typically but not necessarily a UUID)" + "example" : "21 11792B036AED0AAA12A4 4 298B2571FFC63A737", + "description" : "Accumulator value" }, - "revealed" : { - "type" : "boolean", - "description" : "Whether to reveal attribute in proof (default true)" + "prevAccum" : { + "type" : "string", + "example" : "21 137AC810975E4 6 76F0384B6F23", + "description" : "Previous accumulator value" + }, + "revoked" : { + "type" : "array", + "description" : "Revoked credential revocation identifiers", + "items" : { + "type" : "integer", + "format" : "int32" + } } } }, - "IndyRequestedCredsRequestedPred" : { + "InputDescriptors" : { "type" : "object", - "required" : [ "cred_id" ], "properties" : { - "cred_id" : { + "constraints" : { + "$ref" : "#/definitions/Constraints" + }, + "group" : { + "type" : "array", + "items" : { + "type" : "string", + "description" : "Group" + } + }, + "id" : { "type" : "string", - "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", - "description" : "Wallet credential identifier (typically but not necessarily a UUID)" + "description" : "ID" }, - "timestamp" : { - "type" : "integer", - "format" : "int32", - "example" : 1620219211, - "description" : "Epoch timestamp of interest for non-revocation proof", - "minimum" : 0, - "maximum" : 18446744073709551615 + "metadata" : { + "type" : "object", + "description" : "Metadata dictionary", + "properties" : { } + }, + "name" : { + "type" : "string", + "description" : "Name" + }, + "purpose" : { + "type" : "string", + "description" : "Purpose" + }, + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/SchemaInputDescriptor" + } } } }, @@ -6207,7 +7288,7 @@ } } }, - "InvitationReceiveRequest" : { + "InvitationMessage" : { "type" : "object", "properties" : { "@id" : { @@ -6243,25 +7324,16 @@ }, "services" : { "type" : "array", - "description" : "DIDComm service object or a DID", + "example" : [ { + "did" : "WgWxqztrNooG92RXvxSTWv", + "id" : "string", + "recipientKeys" : [ "did:key:z6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH" ], + "routingKeys" : [ "did:key:z6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH" ], + "serviceEndpoint" : "http://192.168.56.101:8020", + "type" : "string" + }, "did:sov:WgWxqztrNooG92RXvxSTWv" ], "items" : { - "anyOf": [ - { - "type" : "array", - "items" : { - "type" : "string", - "example" : "WgWxqztrNooG92RXvxSTWv", - "description" : "Service DID", - "pattern" : "^(did:sov:)?[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}$" - } - }, - { - "type" : "array", - "items" : { - "$ref" : "#/definitions/Service" - } - } - ] + "description" : "Either a DIDComm service object (as per RFC0067) or a DID string." } } } @@ -6271,7 +7343,7 @@ "properties" : { "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -6281,9 +7353,7 @@ "description" : "Invitation message identifier" }, "invitation" : { - "type" : "object", - "description" : "Out of band invitation object", - "properties" : { } + "$ref" : "#/definitions/InvitationRecord_invitation" }, "invitation_id" : { "type" : "string", @@ -6306,7 +7376,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -6333,6 +7403,150 @@ "IssueCredentialModuleResponse" : { "type" : "object" }, + "IssuerCredRevRecord" : { + "type" : "object", + "properties" : { + "created_at" : { + "type" : "string", + "example" : "2021-08-25 14:47:08Z", + "description" : "Time of record creation", + "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" + }, + "cred_def_id" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag", + "description" : "Credential definition identifier", + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+)):(.+)?$" + }, + "cred_ex_id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Credential exchange record identifier at credential issue" + }, + "cred_rev_id" : { + "type" : "string", + "example" : "12345", + "description" : "Credential revocation identifier", + "pattern" : "^[1-9][0-9]*$" + }, + "record_id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Issuer credential revocation record identifier" + }, + "rev_reg_id" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:4:WgWxqztrNooG92RXvxSTWv:3:CL:20:tag:CL_ACCUM:0", + "description" : "Revocation registry identifier", + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):4:([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+))(:.+)?:CL_ACCUM:(.+$)" + }, + "state" : { + "type" : "string", + "example" : "issued", + "description" : "Issue credential revocation record state" + }, + "updated_at" : { + "type" : "string", + "example" : "2021-08-25 14:47:08Z", + "description" : "Time of last record update", + "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" + } + } + }, + "IssuerRevRegRecord" : { + "type" : "object", + "properties" : { + "created_at" : { + "type" : "string", + "example" : "2021-08-25 14:47:08Z", + "description" : "Time of record creation", + "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" + }, + "cred_def_id" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag", + "description" : "Credential definition identifier", + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+)):(.+)?$" + }, + "error_msg" : { + "type" : "string", + "example" : "Revocation registry undefined", + "description" : "Error message" + }, + "issuer_did" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv", + "description" : "Issuer DID", + "pattern" : "^(did:sov:)?[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}$" + }, + "max_cred_num" : { + "type" : "integer", + "format" : "int32", + "example" : 1000, + "description" : "Maximum number of credentials for revocation registry" + }, + "pending_pub" : { + "type" : "array", + "description" : "Credential revocation identifier for credential revoked and pending publication to ledger", + "items" : { + "type" : "string", + "example" : "23" + } + }, + "record_id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Issuer revocation registry record identifier" + }, + "revoc_def_type" : { + "type" : "string", + "example" : "CL_ACCUM", + "description" : "Revocation registry type (specify CL_ACCUM)", + "enum" : [ "CL_ACCUM" ] + }, + "revoc_reg_def" : { + "$ref" : "#/definitions/IssuerRevRegRecord_revoc_reg_def" + }, + "revoc_reg_entry" : { + "$ref" : "#/definitions/IssuerRevRegRecord_revoc_reg_entry" + }, + "revoc_reg_id" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:4:WgWxqztrNooG92RXvxSTWv:3:CL:20:tag:CL_ACCUM:0", + "description" : "Revocation registry identifier", + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):4:([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+))(:.+)?:CL_ACCUM:(.+$)" + }, + "state" : { + "type" : "string", + "example" : "active", + "description" : "Issue revocation registry record state" + }, + "tag" : { + "type" : "string", + "description" : "Tag within issuer revocation registry identifier" + }, + "tails_hash" : { + "type" : "string", + "example" : "H3C2AVvLMv6gmMNam3uVAjZpfkcJCwDwnZn6z3wXmqPV", + "description" : "Tails hash", + "pattern" : "^[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{43,44}$" + }, + "tails_local_path" : { + "type" : "string", + "description" : "Local path to tails file" + }, + "tails_public_uri" : { + "type" : "string", + "description" : "Public URI for tails file" + }, + "updated_at" : { + "type" : "string", + "example" : "2021-08-25 14:47:08Z", + "description" : "Time of last record update", + "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" + } + } + }, "Keylist" : { "type" : "object", "properties" : { @@ -6474,7 +7688,7 @@ }, "created" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "The date and time of the proof (with a maximum accuracy in seconds). Defaults to current system time", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -6512,7 +7726,7 @@ }, "created" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "The string value of an ISO8601 combined date and time string generated by the Signature Algorithm", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -6655,7 +7869,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -6695,7 +7909,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -6868,35 +8082,122 @@ "properties" : { "name" : { "type" : "string", - "example" : "Query", - "description" : "Menu option name" + "example" : "Query", + "description" : "Menu option name" + }, + "params" : { + "type" : "object", + "description" : "Input parameter values", + "additionalProperties" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6" + } + } + } + }, + "PingRequest" : { + "type" : "object", + "properties" : { + "comment" : { + "type" : "string", + "description" : "Comment for the ping message", + "x-nullable" : true + } + } + }, + "PingRequestResponse" : { + "type" : "object", + "properties" : { + "thread_id" : { + "type" : "string", + "description" : "Thread ID of the ping message" + } + } + }, + "PresentationDefinition" : { + "type" : "object", + "properties" : { + "format" : { + "$ref" : "#/definitions/ClaimFormat" + }, + "id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Unique Resource Identifier", + "pattern" : "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-4[a-fA-F0-9]{3}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}" + }, + "input_descriptors" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/InputDescriptors" + } + }, + "name" : { + "type" : "string", + "description" : "Human-friendly name that describes what the presentation definition pertains to" + }, + "purpose" : { + "type" : "string", + "description" : "Describes the purpose for which the Presentation Definition's inputs are being requested" }, - "params" : { - "type" : "object", - "description" : "Input parameter values", - "additionalProperties" : { - "type" : "string", - "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6" + "submission_requirements" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/SubmissionRequirements" } } } }, - "PingRequest" : { + "PresentationProposal" : { "type" : "object", + "required" : [ "presentation_proposal" ], "properties" : { + "@id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Message identifier" + }, + "@type" : { + "type" : "string", + "example" : "https://didcomm.org/my-family/1.0/my-message-type", + "description" : "Message type", + "readOnly" : true + }, "comment" : { "type" : "string", - "description" : "Comment for the ping message", + "description" : "Human-readable comment", "x-nullable" : true + }, + "presentation_proposal" : { + "$ref" : "#/definitions/IndyPresPreview" } } }, - "PingRequestResponse" : { + "PresentationRequest" : { "type" : "object", + "required" : [ "request_presentations~attach" ], "properties" : { - "thread_id" : { + "@id" : { "type" : "string", - "description" : "Thread ID of the ping message" + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Message identifier" + }, + "@type" : { + "type" : "string", + "example" : "https://didcomm.org/my-family/1.0/my-message-type", + "description" : "Message type", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "description" : "Human-readable comment", + "x-nullable" : true + }, + "request_presentations~attach" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/AttachDecorator" + } } } }, @@ -6932,6 +8233,21 @@ } } }, + "RawEncoded" : { + "type" : "object", + "properties" : { + "encoded" : { + "type" : "string", + "example" : "0", + "description" : "Encoded value", + "pattern" : "^[0-9]*$" + }, + "raw" : { + "type" : "string", + "description" : "Raw value" + } + } + }, "ReceiveInvitationRequest" : { "type" : "object", "properties" : { @@ -7011,6 +8327,22 @@ } } }, + "ResolutionResult" : { + "type" : "object", + "required" : [ "did_doc", "metadata" ], + "properties" : { + "did_doc" : { + "type" : "object", + "description" : "DID Document", + "properties" : { } + }, + "metadata" : { + "type" : "object", + "description" : "Resolution metadata", + "properties" : { } + } + } + }, "RevRegCreateRequest" : { "type" : "object", "properties" : { @@ -7043,7 +8375,12 @@ } }, "RevRegResult" : { - "type" : "object" + "type" : "object", + "properties" : { + "result" : { + "$ref" : "#/definitions/IssuerRevRegRecord" + } + } }, "RevRegUpdateTailsFileUri" : { "type" : "object", @@ -7110,7 +8447,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -7130,7 +8467,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -7191,6 +8528,19 @@ } } }, + "SchemaInputDescriptor" : { + "type" : "object", + "properties" : { + "required" : { + "type" : "boolean", + "description" : "Required" + }, + "uri" : { + "type" : "string", + "description" : "URI" + } + } + }, "SchemaSendRequest" : { "type" : "object", "required" : [ "attributes", "schema_name", "schema_version" ], @@ -7219,12 +8569,10 @@ }, "SchemaSendResult" : { "type" : "object", - "required" : [ "schema", "schema_id" ], + "required" : [ "schema_id" ], "properties" : { "schema" : { - "type" : "object", - "description" : "Schema result", - "properties" : { } + "$ref" : "#/definitions/SchemaSendResult_schema" }, "schema_id" : { "type" : "string", @@ -7267,57 +8615,12 @@ } } }, - "Service" : { - "type" : "object", - "required" : [ "id", "type" ], - "properties" : { - "did" : { - "type" : "string", - "example" : "WgWxqztrNooG92RXvxSTWv", - "description" : "Service DID", - "pattern" : "^(did:sov:)?[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}$" - }, - "id" : { - "type" : "string", - "description" : "Service identifier" - }, - "recipientKeys" : { - "type" : "array", - "description" : "List of recipient keys", - "items" : { - "type" : "string", - "example" : "did:key:z6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH", - "description" : "Recipient public key", - "pattern" : "^did:key:z[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]+$" - } - }, - "routingKeys" : { - "type" : "array", - "description" : "List of routing keys", - "items" : { - "type" : "string", - "example" : "did:key:z6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH", - "description" : "Routing key", - "pattern" : "^did:key:z[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]+$" - } - }, - "serviceEndpoint" : { - "type" : "string", - "example" : "http://192.168.56.101:8020", - "description" : "Service endpoint at which to reach this agent" - }, - "type" : { - "type" : "string", - "description" : "Service type" - } - } - }, "SignRequest" : { "type" : "object", "required" : [ "doc", "verkey" ], "properties" : { "doc" : { - "$ref" : "#/definitions/Generated" + "$ref" : "#/definitions/Doc" }, "verkey" : { "type" : "string", @@ -7339,6 +8642,82 @@ } } }, + "SignatureOptions" : { + "type" : "object", + "required" : [ "proofPurpose", "verificationMethod" ], + "properties" : { + "challenge" : { + "type" : "string" + }, + "domain" : { + "type" : "string" + }, + "proofPurpose" : { + "type" : "string" + }, + "type" : { + "type" : "string" + }, + "verificationMethod" : { + "type" : "string" + } + } + }, + "SignedDoc" : { + "type" : "object", + "required" : [ "proof" ], + "properties" : { + "proof" : { + "$ref" : "#/definitions/SignedDoc_proof" + } + } + }, + "SubmissionRequirements" : { + "type" : "object", + "properties" : { + "count" : { + "type" : "integer", + "format" : "int32", + "example" : 1234, + "description" : "Count Value" + }, + "from" : { + "type" : "string", + "description" : "From" + }, + "from_nested" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/SubmissionRequirements" + } + }, + "max" : { + "type" : "integer", + "format" : "int32", + "example" : 1234, + "description" : "Max Value" + }, + "min" : { + "type" : "integer", + "format" : "int32", + "example" : 1234, + "description" : "Min Value" + }, + "name" : { + "type" : "string", + "description" : "Name" + }, + "purpose" : { + "type" : "string", + "description" : "Purpose" + }, + "rule" : { + "type" : "string", + "description" : "Selection", + "enum" : [ "all", "pick" ] + } + } + }, "TAAAccept" : { "type" : "object", "properties" : { @@ -7362,7 +8741,7 @@ "time" : { "type" : "integer", "format" : "int32", - "example" : 1620219211, + "example" : 1629902828, "minimum" : 0, "maximum" : 18446744073709551615 } @@ -7437,11 +8816,6 @@ "TransactionRecord" : { "type" : "object", "properties" : { - "_id" : { - "type" : "string", - "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", - "description" : "Transaction identifier" - }, "_type" : { "type" : "string", "example" : "101", @@ -7454,10 +8828,15 @@ }, "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, + "endorser_write_txn" : { + "type" : "boolean", + "example" : true, + "description" : "If True, Endorser will write the transaction after endorsing it" + }, "formats" : { "type" : "array", "items" : { @@ -7466,7 +8845,9 @@ "attach_id" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", "format" : "dif/endorse-transaction/request@v1.0" }, - "properties" : { } + "additionalProperties" : { + "type" : "string" + } } }, "messages_attach" : { @@ -7531,9 +8912,14 @@ "type" : "boolean", "description" : "Record trace information, based on agent configuration" }, + "transaction_id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Transaction identifier" + }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -7550,6 +8936,28 @@ } } }, + "TxnOrPublishRevocationsResult" : { + "type" : "object", + "properties" : { + "sent" : { + "$ref" : "#/definitions/PublishRevocations" + }, + "txn" : { + "$ref" : "#/definitions/TxnOrPublishRevocationsResult_txn" + } + } + }, + "TxnOrRevRegResult" : { + "type" : "object", + "properties" : { + "sent" : { + "$ref" : "#/definitions/RevRegResult" + }, + "txn" : { + "$ref" : "#/definitions/TxnOrRevRegResult_txn" + } + } + }, "TxnOrSchemaSendResult" : { "type" : "object", "properties" : { @@ -7599,6 +9007,38 @@ } } }, + "V10CredentialConnFreeOfferRequest" : { + "type" : "object", + "required" : [ "cred_def_id", "credential_preview" ], + "properties" : { + "auto_issue" : { + "type" : "boolean", + "description" : "Whether to respond automatically to credential requests, creating and issuing requested credentials" + }, + "auto_remove" : { + "type" : "boolean", + "description" : "Whether to remove the credential exchange record on completion (overrides --preserve-exchange-records configuration setting)" + }, + "comment" : { + "type" : "string", + "description" : "Human-readable comment", + "x-nullable" : true + }, + "cred_def_id" : { + "type" : "string", + "example" : "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag", + "description" : "Credential definition identifier", + "pattern" : "^([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}):3:CL:(([1-9][0-9]*)|([123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}:2:.+:[0-9.]+)):(.+)?$" + }, + "credential_preview" : { + "$ref" : "#/definitions/CredentialPreview" + }, + "trace" : { + "type" : "boolean", + "description" : "Record trace information, based on agent configuration" + } + } + }, "V10CredentialCreate" : { "type" : "object", "required" : [ "credential_proposal" ], @@ -7681,14 +9121,12 @@ }, "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, "credential" : { - "type" : "object", - "description" : "Credential as stored", - "properties" : { } + "$ref" : "#/definitions/V10CredentialExchange_credential" }, "credential_definition_id" : { "type" : "string", @@ -7707,24 +9145,16 @@ "description" : "Credential identifier" }, "credential_offer" : { - "type" : "object", - "description" : "(Indy) credential offer", - "properties" : { } + "$ref" : "#/definitions/V10CredentialExchange_credential_offer" }, "credential_offer_dict" : { - "type" : "object", - "description" : "Serialized credential offer message", - "properties" : { } + "$ref" : "#/definitions/V10CredentialExchange_credential_offer_dict" }, "credential_proposal_dict" : { - "type" : "object", - "description" : "Serialized credential proposal message", - "properties" : { } + "$ref" : "#/definitions/V10CredentialExchange_credential_proposal_dict" }, "credential_request" : { - "type" : "object", - "description" : "(Indy) credential request", - "properties" : { } + "$ref" : "#/definitions/V10CredentialExchange_credential_request" }, "credential_request_metadata" : { "type" : "object", @@ -7748,9 +9178,7 @@ "description" : "Parent thread identifier" }, "raw_credential" : { - "type" : "object", - "description" : "Credential as received, prior to storage in holder wallet", - "properties" : { } + "$ref" : "#/definitions/V10CredentialExchange_raw_credential" }, "revoc_reg_id" : { "type" : "string", @@ -7788,7 +9216,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -8033,7 +9461,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -8049,9 +9477,7 @@ "enum" : [ "self", "external" ] }, "presentation" : { - "type" : "object", - "description" : "(Indy) presentation (also known as proof)", - "properties" : { } + "$ref" : "#/definitions/V10PresentationExchange_presentation" }, "presentation_exchange_id" : { "type" : "string", @@ -8059,19 +9485,13 @@ "description" : "Presentation exchange identifier" }, "presentation_proposal_dict" : { - "type" : "object", - "description" : "Serialized presentation proposal message", - "properties" : { } + "$ref" : "#/definitions/V10PresentationExchange_presentation_proposal_dict" }, "presentation_request" : { - "type" : "object", - "description" : "(Indy) presentation request (also known as proof request)", - "properties" : { } + "$ref" : "#/definitions/V10PresentationExchange_presentation_request" }, "presentation_request_dict" : { - "type" : "object", - "description" : "Serialized presentation request message", - "properties" : { } + "$ref" : "#/definitions/V10PresentationExchange_presentation_request_dict" }, "role" : { "type" : "string", @@ -8095,7 +9515,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -8233,10 +9653,7 @@ "description" : "Issuer choice to remove this credential exchange record when complete" }, "by_format" : { - "type" : "object", - "description" : "Attachment content by format for proposal, offer, request, and issue", - "readOnly" : true, - "properties" : { } + "$ref" : "#/definitions/V20CredExRecord_by_format" }, "connection_id" : { "type" : "string", @@ -8245,7 +9662,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -8254,36 +9671,20 @@ "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", "description" : "Credential exchange identifier" }, - "cred_id_stored" : { - "type" : "string", - "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", - "description" : "Credential identifier stored in wallet" - }, "cred_issue" : { - "type" : "object", - "description" : "Serialized credential issue message", - "properties" : { } + "$ref" : "#/definitions/V20CredExRecord_cred_issue" }, "cred_offer" : { - "type" : "object", - "description" : "Serialized credential offer message", - "properties" : { } + "$ref" : "#/definitions/V10CredentialExchange_credential_offer_dict" }, "cred_preview" : { - "type" : "object", - "description" : "Serialized credential preview from credential proposal", - "readOnly" : true, - "properties" : { } + "$ref" : "#/definitions/V20CredExRecord_cred_preview" }, "cred_proposal" : { - "type" : "object", - "description" : "Serialized credential proposal message", - "properties" : { } + "$ref" : "#/definitions/V10CredentialExchange_credential_proposal_dict" }, "cred_request" : { - "type" : "object", - "description" : "Serialized credential request message", - "properties" : { } + "$ref" : "#/definitions/V20CredExRecord_cred_request" }, "error_msg" : { "type" : "string", @@ -8324,12 +9725,33 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } } }, + "V20CredExRecordByFormat" : { + "type" : "object", + "properties" : { + "cred_issue" : { + "type" : "object", + "properties" : { } + }, + "cred_offer" : { + "type" : "object", + "properties" : { } + }, + "cred_proposal" : { + "type" : "object", + "properties" : { } + }, + "cred_request" : { + "type" : "object", + "properties" : { } + } + } + }, "V20CredExRecordDetail" : { "type" : "object", "properties" : { @@ -8349,7 +9771,7 @@ "properties" : { "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -8392,7 +9814,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -8403,7 +9825,7 @@ "properties" : { "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -8429,7 +9851,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -8507,6 +9929,63 @@ } } }, + "V20CredFormat" : { + "type" : "object", + "required" : [ "attach_id", "format" ], + "properties" : { + "attach_id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Attachment identifier" + }, + "format" : { + "type" : "string", + "example" : "aries/ld-proof-vc-detail@v1.0", + "description" : "Attachment format specifier" + } + } + }, + "V20CredIssue" : { + "type" : "object", + "required" : [ "credentials~attach", "formats" ], + "properties" : { + "@id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Message identifier" + }, + "@type" : { + "type" : "string", + "example" : "https://didcomm.org/my-family/1.0/my-message-type", + "description" : "Message type", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "description" : "Human-readable comment", + "x-nullable" : true + }, + "credentials~attach" : { + "type" : "array", + "description" : "Credential attachments", + "items" : { + "$ref" : "#/definitions/AttachDecorator" + } + }, + "formats" : { + "type" : "array", + "description" : "Acceptable attachment formats", + "items" : { + "$ref" : "#/definitions/V20CredFormat" + } + }, + "replacement_id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Issuer-unique identifier to coordinate credential replacement" + } + } + }, "V20CredIssueProblemReportRequest" : { "type" : "object", "required" : [ "description" ], @@ -8526,14 +10005,210 @@ } } }, - "V20CredOfferRequest" : { + "V20CredOffer" : { + "type" : "object", + "required" : [ "formats", "offers~attach" ], + "properties" : { + "@id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Message identifier" + }, + "@type" : { + "type" : "string", + "example" : "https://didcomm.org/my-family/1.0/my-message-type", + "description" : "Message type", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "description" : "Human-readable comment", + "x-nullable" : true + }, + "credential_preview" : { + "$ref" : "#/definitions/V20CredPreview" + }, + "formats" : { + "type" : "array", + "description" : "Acceptable credential formats", + "items" : { + "$ref" : "#/definitions/V20CredFormat" + } + }, + "offers~attach" : { + "type" : "array", + "description" : "Offer attachments", + "items" : { + "$ref" : "#/definitions/AttachDecorator" + } + }, + "replacement_id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Issuer-unique identifier to coordinate credential replacement" + } + } + }, + "V20CredOfferConnFreeRequest" : { + "type" : "object", + "required" : [ "filter" ], + "properties" : { + "auto_issue" : { + "type" : "boolean", + "description" : "Whether to respond automatically to credential requests, creating and issuing requested credentials" + }, + "auto_remove" : { + "type" : "boolean", + "description" : "Whether to remove the credential exchange record on completion (overrides --preserve-exchange-records configuration setting)" + }, + "comment" : { + "type" : "string", + "description" : "Human-readable comment", + "x-nullable" : true + }, + "credential_preview" : { + "$ref" : "#/definitions/V20CredPreview" + }, + "filter" : { + "$ref" : "#/definitions/V20CredBoundOfferRequest_filter" + }, + "trace" : { + "type" : "boolean", + "description" : "Record trace information, based on agent configuration" + } + } + }, + "V20CredOfferRequest" : { + "type" : "object", + "required" : [ "connection_id", "filter" ], + "properties" : { + "auto_issue" : { + "type" : "boolean", + "description" : "Whether to respond automatically to credential requests, creating and issuing requested credentials" + }, + "auto_remove" : { + "type" : "boolean", + "description" : "Whether to remove the credential exchange record on completion (overrides --preserve-exchange-records configuration setting)" + }, + "comment" : { + "type" : "string", + "description" : "Human-readable comment", + "x-nullable" : true + }, + "connection_id" : { + "type" : "string", + "format" : "uuid", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Connection identifier" + }, + "credential_preview" : { + "$ref" : "#/definitions/V20CredPreview" + }, + "filter" : { + "$ref" : "#/definitions/V20CredBoundOfferRequest_filter" + }, + "trace" : { + "type" : "boolean", + "description" : "Record trace information, based on agent configuration" + } + } + }, + "V20CredPreview" : { + "type" : "object", + "required" : [ "attributes" ], + "properties" : { + "@type" : { + "type" : "string", + "example" : "issue-credential/2.0/credential-preview", + "description" : "Message type identifier" + }, + "attributes" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/V20CredAttrSpec" + } + } + } + }, + "V20CredProposal" : { + "type" : "object", + "required" : [ "filters~attach", "formats" ], + "properties" : { + "@id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Message identifier" + }, + "@type" : { + "type" : "string", + "example" : "https://didcomm.org/my-family/1.0/my-message-type", + "description" : "Message type", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "description" : "Human-readable comment", + "x-nullable" : true + }, + "credential_preview" : { + "$ref" : "#/definitions/V20CredProposal_credential_preview" + }, + "filters~attach" : { + "type" : "array", + "description" : "Credential filter per acceptable format on corresponding identifier", + "items" : { + "$ref" : "#/definitions/AttachDecorator" + } + }, + "formats" : { + "type" : "array", + "description" : "Attachment formats", + "items" : { + "$ref" : "#/definitions/V20CredFormat" + } + } + } + }, + "V20CredRequest" : { + "type" : "object", + "required" : [ "formats", "requests~attach" ], + "properties" : { + "@id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Message identifier" + }, + "@type" : { + "type" : "string", + "example" : "https://didcomm.org/my-family/1.0/my-message-type", + "description" : "Message type", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "description" : "Human-readable comment", + "x-nullable" : true + }, + "formats" : { + "type" : "array", + "description" : "Acceptable attachment formats", + "items" : { + "$ref" : "#/definitions/V20CredFormat" + } + }, + "requests~attach" : { + "type" : "array", + "description" : "Request attachments", + "items" : { + "$ref" : "#/definitions/AttachDecorator" + } + } + } + }, + "V20CredRequestFree" : { "type" : "object", "required" : [ "connection_id", "filter" ], "properties" : { - "auto_issue" : { - "type" : "boolean", - "description" : "Whether to respond automatically to credential requests, creating and issuing requested credentials" - }, "auto_remove" : { "type" : "boolean", "description" : "Whether to remove the credential exchange record on completion (overrides --preserve-exchange-records configuration setting)" @@ -8549,36 +10224,34 @@ "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", "description" : "Connection identifier" }, - "credential_preview" : { - "$ref" : "#/definitions/V20CredPreview" - }, "filter" : { "$ref" : "#/definitions/V20CredBoundOfferRequest_filter" }, + "holder_did" : { + "type" : "string", + "example" : "did:key:ahsdkjahsdkjhaskjdhakjshdkajhsdkjahs", + "description" : "Holder DID to substitute for the credentialSubject.id", + "x-nullable" : true + }, "trace" : { "type" : "boolean", - "description" : "Record trace information, based on agent configuration" + "example" : false, + "description" : "Whether to trace event (default false)" } } }, - "V20CredPreview" : { + "V20CredRequestRequest" : { "type" : "object", - "required" : [ "attributes" ], "properties" : { - "@type" : { + "holder_did" : { "type" : "string", - "example" : "issue-credential/2.0/credential-preview", - "description" : "Message type identifier" - }, - "attributes" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/V20CredAttrSpec" - } + "example" : "did:key:ahsdkjahsdkjhaskjdhakjshdkajhsdkjahs", + "description" : "Holder DID to substitute for the credentialSubject.id", + "x-nullable" : true } } }, - "V20CredRequestFree" : { + "V20CredSendRequest" : { "type" : "object", "required" : [ "connection_id", "filter" ], "properties" : { @@ -8597,13 +10270,15 @@ "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", "description" : "Connection identifier" }, + "credential_preview" : { + "$ref" : "#/definitions/V20CredPreview" + }, "filter" : { "$ref" : "#/definitions/V20CredBoundOfferRequest_filter" }, "trace" : { "type" : "boolean", - "example" : false, - "description" : "Whether to trace event (default false)" + "description" : "Record trace information, based on agent configuration" } } }, @@ -8643,6 +10318,41 @@ "V20IssueCredentialModuleResponse" : { "type" : "object" }, + "V20Pres" : { + "type" : "object", + "required" : [ "formats", "presentations~attach" ], + "properties" : { + "@id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Message identifier" + }, + "@type" : { + "type" : "string", + "example" : "https://didcomm.org/my-family/1.0/my-message-type", + "description" : "Message type", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "description" : "Human-readable comment", + "x-nullable" : true + }, + "formats" : { + "type" : "array", + "description" : "Acceptable attachment formats", + "items" : { + "$ref" : "#/definitions/V20PresFormat" + } + }, + "presentations~attach" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/AttachDecorator" + } + } + } + }, "V20PresCreateRequestRequest" : { "type" : "object", "required" : [ "presentation_request" ], @@ -8670,10 +10380,7 @@ "description" : "Prover choice to auto-present proof as verifier requests" }, "by_format" : { - "type" : "object", - "description" : "Attachment content by format for proposal, request, and presentation", - "readOnly" : true, - "properties" : { } + "$ref" : "#/definitions/V20PresExRecord_by_format" }, "connection_id" : { "type" : "string", @@ -8682,7 +10389,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -8698,9 +10405,7 @@ "enum" : [ "self", "external" ] }, "pres" : { - "type" : "object", - "description" : "Serialized presentation message", - "properties" : { } + "$ref" : "#/definitions/V20PresExRecord_pres" }, "pres_ex_id" : { "type" : "string", @@ -8708,14 +10413,10 @@ "description" : "Presentation exchange identifier" }, "pres_proposal" : { - "type" : "object", - "description" : "Serialized presentation proposal message", - "properties" : { } + "$ref" : "#/definitions/V10PresentationExchange_presentation_proposal_dict" }, "pres_request" : { - "type" : "object", - "description" : "Serialized presentation request message", - "properties" : { } + "$ref" : "#/definitions/V10PresentationExchange_presentation_request_dict" }, "role" : { "type" : "string", @@ -8739,7 +10440,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -8751,6 +10452,23 @@ } } }, + "V20PresExRecordByFormat" : { + "type" : "object", + "properties" : { + "pres" : { + "type" : "object", + "properties" : { } + }, + "pres_proposal" : { + "type" : "object", + "properties" : { } + }, + "pres_request" : { + "type" : "object", + "properties" : { } + } + } + }, "V20PresExRecordList" : { "type" : "object", "properties" : { @@ -8763,6 +10481,22 @@ } } }, + "V20PresFormat" : { + "type" : "object", + "required" : [ "attach_id", "format" ], + "properties" : { + "attach_id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Attachment identifier" + }, + "format" : { + "type" : "string", + "example" : "dif/presentation-exchange/submission@v1.0", + "description" : "Attachment format specifier" + } + } + }, "V20PresProblemReportRequest" : { "type" : "object", "required" : [ "description" ], @@ -8772,6 +10506,40 @@ } } }, + "V20PresProposal" : { + "type" : "object", + "required" : [ "formats", "proposals~attach" ], + "properties" : { + "@id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Message identifier" + }, + "@type" : { + "type" : "string", + "example" : "https://didcomm.org/my-family/1.0/my-message-type", + "description" : "Message type", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "description" : "Human-readable comment" + }, + "formats" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/V20PresFormat" + } + }, + "proposals~attach" : { + "type" : "array", + "description" : "Attachment per acceptable format on corresponding identifier", + "items" : { + "$ref" : "#/definitions/AttachDecorator" + } + } + } + }, "V20PresProposalByFormat" : { "type" : "object", "properties" : { @@ -8812,6 +10580,44 @@ } } }, + "V20PresRequest" : { + "type" : "object", + "required" : [ "formats", "request_presentations~attach" ], + "properties" : { + "@id" : { + "type" : "string", + "example" : "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "description" : "Message identifier" + }, + "@type" : { + "type" : "string", + "example" : "https://didcomm.org/my-family/1.0/my-message-type", + "description" : "Message type", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "description" : "Human-readable comment" + }, + "formats" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/V20PresFormat" + } + }, + "request_presentations~attach" : { + "type" : "array", + "description" : "Attachment per acceptable format on corresponding identifier", + "items" : { + "$ref" : "#/definitions/AttachDecorator" + } + }, + "will_confirm" : { + "type" : "boolean", + "description" : "Whether verifier will send confirmation ack" + } + } + }, "V20PresRequestByFormat" : { "type" : "object", "properties" : { @@ -8874,7 +10680,7 @@ "type" : "string", "example" : "https://myhost:8021", "description" : "Context", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" } }, "cred_tags" : { @@ -8889,6 +10695,14 @@ "description" : "(JSON-serializable) credential value", "properties" : { } }, + "expanded_types" : { + "type" : "array", + "items" : { + "type" : "string", + "example" : "https://w3id.org/citizenship#PermanentResidentCard", + "description" : "JSON-LD expanded type extracted from type and context" + } + }, "given_id" : { "type" : "string", "example" : "http://example.edu/credentials/3732", @@ -8927,14 +10741,6 @@ "example" : "did:example:ebfeb1f712ebc6f1c276e12ec21", "description" : "Subject identifier" } - }, - "types" : { - "type" : "array", - "items" : { - "type" : "string", - "example" : "VerifiableCredential", - "description" : "Type" - } } } }, @@ -8954,9 +10760,7 @@ "required" : [ "doc" ], "properties" : { "doc" : { - "type" : "object", - "description" : "Credential to verify", - "properties" : { } + "$ref" : "#/definitions/VerifyRequest_doc" }, "verkey" : { "type" : "string", @@ -8986,7 +10790,7 @@ "type" : "string", "example" : "https://myhost:8021", "description" : "Credential context to match", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" } }, "given_id" : { @@ -9017,7 +10821,7 @@ "type" : "string", "example" : "https://myhost:8021", "description" : "Credential schema identifier", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" } }, "subject_ids" : { @@ -9042,7 +10846,7 @@ "type" : "string", "example" : "https://myhost:8021", "description" : "Credential type to match", - "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" + "pattern" : "^[A-Za-z0-9\\.\\-\\+]+://([A-Za-z0-9][.A-Za-z0-9-_]+[A-Za-z0-9])+(:[1-9][0-9]*)?(/[^?&#]+)?$" } } } @@ -9068,7 +10872,7 @@ "properties" : { "created_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -9089,7 +10893,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-05-05 12:53:31Z", + "example" : "2021-08-25 14:47:08Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -9108,11 +10912,23 @@ "type" : "object", "description" : "Detached Java Web Signature" }, + "CredDefValue_primary" : { + "type" : "object", + "description" : "Primary value for credential definition" + }, + "CredDefValue_revocation" : { + "type" : "object", + "description" : "Revocation value for credential definition" + }, "Credential_proof" : { "type" : "object", "description" : "The proof of the credential", "example" : "{\"created\":\"2019-12-11T03:50:55\",\"jws\":\"eyJhbGciOiAiRWREU0EiLCAiYjY0IjogZmFsc2UsICJjcml0JiNjQiXX0..lKJU0Df_keblRKhZAS9Qq6zybm-HqUXNVZ8vgEPNTAjQKBhQDxvXNo7nvtUBb_Eq1Ch6YBKY5qBQ\",\"proofPurpose\":\"assertionMethod\",\"type\":\"Ed25519Signature2018\",\"verificationMethod\":\"did:key:z6Mkgg342Ycpuk263R9d8Aq6MUaxPn1DDeHyGo38EefXmgDL#z6Mkgg342Ycpuk263R9d8Aq6MUaxPn1DDeHyGo38EefXmgDL\"}" }, + "CredentialDefinition_value" : { + "type" : "object", + "description" : "Credential definition primary and revocation values" + }, "DIDCreate_options" : { "type" : "object", "description" : "To define a key type for a did:key" @@ -9121,6 +10937,14 @@ "type" : "object", "description" : "As signed attachment, DID Doc associated with DID" }, + "Doc_options" : { + "type" : "object", + "description" : "Signature options" + }, + "IndyCredAbstract_key_correctness_proof" : { + "type" : "object", + "description" : "Key correctness proof" + }, "IndyCredPrecis_cred_info" : { "type" : "object", "description" : "Credential info" @@ -9129,10 +10953,60 @@ "type" : "object", "description" : "Non-revocation interval from presentation request" }, + "IndyPrimaryProof_eq_proof" : { + "type" : "object", + "description" : "Indy equality proof", + "x-nullable" : true + }, + "IndyProof_proof" : { + "type" : "object", + "description" : "Indy proof.proof content" + }, + "IndyProof_requested_proof" : { + "type" : "object", + "description" : "Indy proof.requested_proof content" + }, + "IndyProofProof_aggregated_proof" : { + "type" : "object", + "description" : "Indy proof aggregated proof" + }, + "IndyProofProofProofsProof_non_revoc_proof" : { + "type" : "object", + "description" : "Indy non-revocation proof", + "x-nullable" : true + }, + "IndyProofProofProofsProof_primary_proof" : { + "type" : "object", + "description" : "Indy primary proof" + }, "IndyProofReqAttrSpec_non_revoked" : { "type" : "object", "x-nullable" : true }, + "IndyRevRegDef_value" : { + "type" : "object", + "description" : "Revocation registry definition value" + }, + "IndyRevRegDefValue_publicKeys" : { + "type" : "object", + "description" : "Public keys" + }, + "IndyRevRegEntry_value" : { + "type" : "object", + "description" : "Revocation registry entry value" + }, + "InvitationRecord_invitation" : { + "type" : "object", + "description" : "Out of band invitation message" + }, + "IssuerRevRegRecord_revoc_reg_def" : { + "type" : "object", + "description" : "Revocation registry definition" + }, + "IssuerRevRegRecord_revoc_reg_entry" : { + "type" : "object", + "description" : "Revocation registry entry" + }, "KeylistQuery_paginate" : { "type" : "object", "description" : "Pagination info" @@ -9151,14 +11025,30 @@ "type" : "object", "description" : "The credential status mechanism to use for the credential. Omitting the property indicates the issued credential will not include a credential status" }, + "SchemaSendResult_schema" : { + "type" : "object", + "description" : "Schema definition" + }, "SendMenu_menu" : { "type" : "object", "description" : "Menu to send to connection" }, + "SignedDoc_proof" : { + "type" : "object", + "description" : "Linked data proof" + }, "TxnOrCredentialDefinitionSendResult_txn" : { "type" : "object", "description" : "Credential definition transaction to endorse" }, + "TxnOrPublishRevocationsResult_txn" : { + "type" : "object", + "description" : "Revocation registry revocations transaction to endorse" + }, + "TxnOrRevRegResult_txn" : { + "type" : "object", + "description" : "Revocation registry definition transaction to endorse" + }, "TxnOrSchemaSendResult_sent" : { "type" : "object", "description" : "Content sent" @@ -9171,6 +11061,46 @@ "type" : "object", "description" : "Optional counter-proposal" }, + "V10CredentialExchange_credential" : { + "type" : "object", + "description" : "Credential as stored" + }, + "V10CredentialExchange_credential_offer" : { + "type" : "object", + "description" : "(Indy) credential offer" + }, + "V10CredentialExchange_credential_offer_dict" : { + "type" : "object", + "description" : "Credential offer message" + }, + "V10CredentialExchange_credential_proposal_dict" : { + "type" : "object", + "description" : "Credential proposal message" + }, + "V10CredentialExchange_credential_request" : { + "type" : "object", + "description" : "(Indy) credential request" + }, + "V10CredentialExchange_raw_credential" : { + "type" : "object", + "description" : "Credential as received, prior to storage in holder wallet" + }, + "V10PresentationExchange_presentation" : { + "type" : "object", + "description" : "(Indy) presentation (also known as proof)" + }, + "V10PresentationExchange_presentation_proposal_dict" : { + "type" : "object", + "description" : "Presentation proposal message" + }, + "V10PresentationExchange_presentation_request" : { + "type" : "object", + "description" : "(Indy) presentation request (also known as proof request)" + }, + "V10PresentationExchange_presentation_request_dict" : { + "type" : "object", + "description" : "Presentation request message" + }, "V20CredBoundOfferRequest_counter_preview" : { "type" : "object", "description" : "Optional content for counter-proposal" @@ -9179,6 +11109,22 @@ "type" : "object", "description" : "Credential specification criteria by format" }, + "V20CredExRecord_by_format" : { + "type" : "object", + "description" : "Attachment content by format for proposal, offer, request, and issue" + }, + "V20CredExRecord_cred_issue" : { + "type" : "object", + "description" : "Serialized credential issue message" + }, + "V20CredExRecord_cred_preview" : { + "type" : "object", + "description" : "Credential preview from credential proposal" + }, + "V20CredExRecord_cred_request" : { + "type" : "object", + "description" : "Serialized credential request message" + }, "V20CredExRecordDetail_cred_ex_record" : { "type" : "object", "description" : "Credential exchange record" @@ -9191,6 +11137,18 @@ "type" : "object", "description" : "Credential filter for linked data proof" }, + "V20CredProposal_credential_preview" : { + "type" : "object", + "description" : "Credential preview" + }, + "V20PresExRecord_by_format" : { + "type" : "object", + "description" : "Attachment content by format for proposal, request, and presentation" + }, + "V20PresExRecord_pres" : { + "type" : "object", + "description" : "Presentation message" + }, "V20PresProposalByFormat_dif" : { "type" : "object", "description" : "Presentation proposal for DIF" @@ -9209,11 +11167,15 @@ }, "V20PresSpecByFormatRequest_dif" : { "type" : "object", - "description" : "Presentation specification for DIF" + "description" : "Optional Presentation specification for DIF, overrides the PresentionExchange record's PresRequest" }, "V20PresSpecByFormatRequest_indy" : { "type" : "object", "description" : "Presentation specification for indy" + }, + "VerifyRequest_doc" : { + "type" : "object", + "description" : "Signed document" } } } \ No newline at end of file From edf7f33734c2fccabbc5ec97a4324c57a0d60622 Mon Sep 17 00:00:00 2001 From: Fethbita Date: Wed, 25 Aug 2021 17:49:30 +0300 Subject: [PATCH 2/2] Generate OpenAPI spec for new change Signed-off-by: Fethbita --- open-api/openapi.json | 90 +++++++++++++++++++++---------------------- 1 file changed, 45 insertions(+), 45 deletions(-) diff --git a/open-api/openapi.json b/open-api/openapi.json index 0d8cc4b256..a8dd56ff80 100644 --- a/open-api/openapi.json +++ b/open-api/openapi.json @@ -315,7 +315,7 @@ "description" : "Connection state", "required" : false, "type" : "string", - "enum" : [ "start", "response", "error", "completed", "abandoned", "active", "request", "init", "invitation" ] + "enum" : [ "request", "completed", "abandoned", "init", "active", "error", "start", "response", "invitation" ] }, { "name" : "their_did", "in" : "query", @@ -4698,7 +4698,7 @@ }, "lastmod_time" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Hint regarding last modification datetime, in ISO-8601 format", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -4909,7 +4909,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -4992,7 +4992,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -5317,7 +5317,7 @@ "properties" : { "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -5343,7 +5343,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -6547,7 +6547,7 @@ "from" : { "type" : "integer", "format" : "int32", - "example" : 1629902828, + "example" : 1629902946, "description" : "Earliest time of interest in non-revocation interval", "minimum" : 0, "maximum" : 18446744073709551615 @@ -6555,7 +6555,7 @@ "to" : { "type" : "integer", "format" : "int32", - "example" : 1629902828, + "example" : 1629902946, "description" : "Latest time of interest in non-revocation interval", "minimum" : 0, "maximum" : 18446744073709551615 @@ -6737,7 +6737,7 @@ "timestamp" : { "type" : "integer", "format" : "int32", - "example" : 1629902828, + "example" : 1629902946, "description" : "Timestamp epoch", "minimum" : 0, "maximum" : 18446744073709551615, @@ -6829,7 +6829,7 @@ "from" : { "type" : "integer", "format" : "int32", - "example" : 1629902828, + "example" : 1629902946, "description" : "Earliest time of interest in non-revocation interval", "minimum" : 0, "maximum" : 18446744073709551615 @@ -6837,7 +6837,7 @@ "to" : { "type" : "integer", "format" : "int32", - "example" : 1629902828, + "example" : 1629902946, "description" : "Latest time of interest in non-revocation interval", "minimum" : 0, "maximum" : 18446744073709551615 @@ -6886,7 +6886,7 @@ "from" : { "type" : "integer", "format" : "int32", - "example" : 1629902828, + "example" : 1629902946, "description" : "Earliest time of interest in non-revocation interval", "minimum" : 0, "maximum" : 18446744073709551615 @@ -6894,7 +6894,7 @@ "to" : { "type" : "integer", "format" : "int32", - "example" : 1629902828, + "example" : 1629902946, "description" : "Latest time of interest in non-revocation interval", "minimum" : 0, "maximum" : 18446744073709551615 @@ -6946,7 +6946,7 @@ "from" : { "type" : "integer", "format" : "int32", - "example" : 1629902828, + "example" : 1629902946, "description" : "Earliest time of interest in non-revocation interval", "minimum" : 0, "maximum" : 18446744073709551615 @@ -6954,7 +6954,7 @@ "to" : { "type" : "integer", "format" : "int32", - "example" : 1629902828, + "example" : 1629902946, "description" : "Latest time of interest in non-revocation interval", "minimum" : 0, "maximum" : 18446744073709551615 @@ -7073,7 +7073,7 @@ "timestamp" : { "type" : "integer", "format" : "int32", - "example" : 1629902828, + "example" : 1629902946, "description" : "Epoch timestamp of interest for non-revocation proof", "minimum" : 0, "maximum" : 18446744073709551615 @@ -7343,7 +7343,7 @@ "properties" : { "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -7376,7 +7376,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -7408,7 +7408,7 @@ "properties" : { "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -7447,7 +7447,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -7458,7 +7458,7 @@ "properties" : { "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -7541,7 +7541,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -7688,7 +7688,7 @@ }, "created" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "The date and time of the proof (with a maximum accuracy in seconds). Defaults to current system time", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -7726,7 +7726,7 @@ }, "created" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "The string value of an ISO8601 combined date and time string generated by the Signature Algorithm", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -7869,7 +7869,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -7909,7 +7909,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -8447,7 +8447,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -8467,7 +8467,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -8741,7 +8741,7 @@ "time" : { "type" : "integer", "format" : "int32", - "example" : 1629902828, + "example" : 1629902946, "minimum" : 0, "maximum" : 18446744073709551615 } @@ -8828,7 +8828,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -8919,7 +8919,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -9121,7 +9121,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -9216,7 +9216,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -9461,7 +9461,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -9515,7 +9515,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -9662,7 +9662,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -9725,7 +9725,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -9771,7 +9771,7 @@ "properties" : { "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -9814,7 +9814,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -9825,7 +9825,7 @@ "properties" : { "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -9851,7 +9851,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" } @@ -10389,7 +10389,7 @@ }, "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -10440,7 +10440,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -10872,7 +10872,7 @@ "properties" : { "created_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of record creation", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" }, @@ -10893,7 +10893,7 @@ }, "updated_at" : { "type" : "string", - "example" : "2021-08-25 14:47:08Z", + "example" : "2021-08-25 14:49:06Z", "description" : "Time of last record update", "pattern" : "^\\d{4}-\\d\\d-\\d\\d[T ]\\d\\d:\\d\\d(?:\\:(?:\\d\\d(?:\\.\\d{1,6})?))?(?:[+-]\\d\\d:?\\d\\d|Z|)$" },