### Data Source Example Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 Example data source providing values for firstname, lastname, and nationalities. ```yaml - firstname: "John" - lastname: "Smith" - nationalities: ["Switzerland", "France", "Germany", "Italy"] ``` -------------------------------- ### SD-JWT VC Rendering Method Example Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 Example JSON structure for specifying an OCA bundle URI and integrity hash within an SD-JWT VC display object. ```json { "display": [ { "rendering":{ "oca":{ "uri":"https://example.com/example-vc/oca-bundle", "uri#integrity":"sha256-9cLlJNXN-TsMk-PmKjZ5t0WRL5ca_xGgX3c1VLmXfh-WRL5" } } } ] } ``` -------------------------------- ### Retrieve OIDC style metadata Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-issuance Example of an HTTP GET request for OIDC style .well-known configuration. ```http GET https://example.com/issuer1/.well-known/openid-configuration ``` -------------------------------- ### Retrieve RFC 5785 style metadata Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-issuance Example of an HTTP GET request for RFC 5785 style .well-known configuration. ```http GET https://example.com/.well-known/openid-configuration/issuer1 ``` -------------------------------- ### Define a data source for an Order Overlay Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 Example JSON structure representing a data source with attributes to be ordered. ```json { "id":"123456", "name":"Helvetia", "birthdate":"2000-01-01", "photo":"data:image/png;base64,..." } ``` -------------------------------- ### Define DID Document with profile_version Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-anchor Example of a compliant DID Document structure including the required profile_version property and JWK verification method. ```json { "profile_version": "swiss-profile-anchor:1.0.0", "id": "did:example:123456789abcdefghi", "verificationMethod": [{ "id": "did:example:123456789abcdefghi#key-20260101", "type": "JsonWebKey", "controller": "did:example:123456789abcdefghi", "publicKeyJwk": { "kid": "key-20260101", "kty": "EC", "crv": "P-256", "alg": "ES256", "x": "f83OJ3D2xF1Bg8vub9tLe1gHMzV76e8Tus9uPHvRVEU", "y": "x_FEzRu9m36HLN_tue659LNpXW6pCyStikYjKIWI5a0" } }], "authentication": ["did:example:123456789abcdefghi#key-20260101"] } ``` -------------------------------- ### DateTime OCA Bundle Example Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 An OCA bundle configuration defining a DateTime attribute with an ISO8601 standard overlay. ```json { "capture_bases":[ { "type":"spec/capture_base/1.0", "digest":"IJJU-BJDRi-5T3oTTXhfa_-v5CCGWYG2x9oY_k8-k5Fu", "attributes":{ "id":"Text", "name":"Text", "birthdate":"DateTime", "photo":"Text" } } ], "overlays":[ { "capture_base":"IJJU-BJDRi-5T3oTTXhfa_-v5CCGWYG2x9oY_k8-k5Fu", "type":"spec/overlays/standard/1.0", "attr_standards":{ "birthdate":"urn:iso:std:iso:8601" } } ] } ``` -------------------------------- ### GET /api/v2/verification-query-public-statement/ Source: https://swiyu-admin-ch.github.io/specifications/trust-protocol-v2-0 Retrieves a list of serialized Verification Query Public Statements. ```APIDOC ## GET /api/v2/verification-query-public-statement/ ### Description Returns a List Response Object containing serialized Verification Query Public Statements. ### Method GET ### Endpoint /api/v2/verification-query-public-statement/ ### Parameters #### Query Parameters - **sub** (string) - Optional - The subject claim to filter by. - **filterActive** (boolean) - Optional - Indicates that the trust registry only returns trust statements it deems active. Default: true. - **page** (integer) - Optional - The zero-based page index. Default: 0. - **size** (integer) - Optional - The requested size of the page. Default: 20. ``` -------------------------------- ### Data URL OCA Bundle Example Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 An OCA bundle configuration defining a photo attribute with an RFC2397 standard overlay. ```json { "capture_bases":[ { "type":"spec/capture_base/1.0", "digest":"IJJU-BJDRi-5T3oTTXhfa_-v5CCGWYG2x9oY_k8-k5Fu", "attributes":{ "id":"Text", "name":"Text", "birthdate":"DateTime", "photo":"Text" } } ], "overlays":[ { "capture_base":"IJJU-BJDRi-5T3oTTXhfa_-v5CCGWYG2x9oY_k8-k5Fu", "type":"spec/overlays/standard/1.0", "attr_standards":{ "photo":"urn:ietf:rfc:2397" } } ] } ``` -------------------------------- ### Data Source JSON Structure Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 Example of a flat data source containing nested objects for pets. ```json { "firstname":"John", "lastname":"Smith", "street":"Bundesplatz", "city":"Bern", "country":"Switzerland", "pets":[ { "race":"Dog", "name":"Rex" }, { "race":"Cat", "name":"Mr. Pineapple" } ] } ``` -------------------------------- ### Define an OCA Bundle with an Order Overlay Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 Example of an OCA bundle containing a Capture Base and an Order Overlay that specifies attribute display order. ```json { "capture_bases":[ { "type":"spec/capture_base/1.0", "digest":"IJJU-BJDRi-5T3oTTXhfa_-v5CCGWYG2x9oY_k8-k5Fu", "attributes":{ "id":"Text", "name":"Text", "birthdate":"DateTime", "photo":"Text" } } ], "overlays":[ { "type":"extend/overlays/order/1.0", "capture_base":"IJJU-BJDRi-5T3oTTXhfa_-v5CCGWYG2x9oY_k8-k5Fu", "attribute_orders": { "id":4, "name":2, "birthdate":3, "photo":1 } } ] } ``` -------------------------------- ### Root Capture Base with Reference Attributes Data Source Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 Example JSON data source for a root capture base containing only reference attributes. ```json { "firstname":"John", "lastname":"Smith", "birthdate":"2026-12-01", "nationalities":[ { "name":"Switzerland", "code":"CH" }, { "name":"France", "code":"FR" } ] } ``` -------------------------------- ### GET /api/v2/protected-verification-authorization-trust-statement/ Source: https://swiyu-admin-ch.github.io/specifications/trust-protocol-v2-0 Retrieves a list of serialized Protected Verification Authorization Trust Statements. ```APIDOC ## GET /api/v2/protected-verification-authorization-trust-statement/ ### Description Returns a list of serialized Protected Verification Authorization Trust Statements. ### Method GET ### Endpoint /api/v2/protected-verification-authorization-trust-statement/ ### Parameters #### Query Parameters - **sub** (string) - Optional - The trust registry returns only statements where the sub claim matches exactly. - **filterActive** (boolean) - Optional - Default: true. Indicates that the trust registry only returns trust statements it deems active. - **page** (integer) - Optional - Default: 0. The zero-based page index to retrieve. - **size** (integer) - Optional - Default: 20. The requested size of the page to be returned. ``` -------------------------------- ### GET /api/v2/identity-trust-statement/ Source: https://swiyu-admin-ch.github.io/specifications/trust-protocol-v2-0 Retrieves a list of serialized Identity Trust Statements. ```APIDOC ## GET /api/v2/identity-trust-statement/ ### Description Returns a List Response Object containing serialized Identity Trust Statements. ### Method GET ### Endpoint /api/v2/identity-trust-statement/ ### Parameters #### Query Parameters - **sub** (string) - Optional - The subject claim to filter by. - **filterActive** (boolean) - Optional - Indicates that the trust registry only returns trust statements it deems active. Default: true. - **page** (integer) - Optional - The zero-based page index. Default: 0. - **size** (integer) - Optional - The requested size of the page. Default: 20. ``` -------------------------------- ### Define Data Source Mapping Overlay Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 Example of a data source structure and its corresponding Data Source Mapping Overlay using the extend/overlays/data_source/2.0 type. ```json { "firstname":"John", "lastname":"Smith", "address":{ "street":"Bundesplatz", "city":"Bern", "country":"Switzerland", }, "nationalities": ["Switzerland", "France", "Germany", "Italy"] } ``` ```json { "type":"extend/overlays/data_source/2.0", "capture_base":"IMFQWZ_xszfSOugAuYHmlhmQm3EUgJ_uk0S9ExISjqbc", "format":"dc+sd-jwt", "attribute_sources":{ "firstname":["firstname"], "lastname":["lastname"], "street":["address", "street"], "city":["address", "city"], "country":["address", "country"], "nationalities":["nationalities", null] } } ``` -------------------------------- ### Root Capture Base with Reference Attributes OCA Bundle Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 OCA bundle structure corresponding to the reference-only root capture base example. ```json { "capture_bases": [ { "type":"spec/capture_base/1.0", "digest":"IH9-zyhAKgrRijczp11n8p2y7il_1kHIhCVD4Bggp0wZ", "attributes":{ "person":"refs:ICXjR6pKk86GPjLsVw3NMGiZRQJ7sQ-G7sUKexXXyvsW", "nationalities":"Array[refs:IKFPGHwRoHqEep0xTJD8k3lQGaN-7Ytg-NnaIDX6pBoe]" } }, { "type":"spec/capture_base/1.0", "digest":"ICXjR6pKk86GPjLsVw3NMGiZRQJ7sQ-G7sUKexXXyvsW", "attributes":{ "lastname":"Text", "firstname":"Text", "birthdate":"DateTime" } }, { "type":"spec/capture_base/1.0", "digest":"IKFPGHwRoHqEep0xTJD8k3lQGaN-7Ytg-NnaIDX6pBoe", "attributes":{ "name":"Text", "code":"Text" } } ] } ``` -------------------------------- ### DPoP Proof JWT with Key Attestation Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-issuance Example of a DPoP JWT header containing a key_attestation claim for hardware-bound keys. ```json { "typ": "dpop+jwt", "alg": "ES256", "jwk": { "kty": "EC", "crv": "P-256", "x": "TCAER19Zvu3OHF4j4W4vfSVoHIP1ILilDls7vCeGemc", "y": "ZxjiWWbZMQGHVWKVQ4hbSIirsVfuecCE6t4jT9F2HZQ" }, "key_attestation": "eyJ0eXAiOiJrZXktYXR0ZXN0YXRpb24rand0IiwiYWxnIjoiRVMyNTYiLCJraWQiOiJkaWQ6d2Vidmg6ZXhhbXBsZS5jb20ja2V5LTEiLCJwcm9maWxlX3ZlcnNpb24iOiJzd2lzcy1wcm9maWxlLWlzc3VhbmNlOjEuMC4wIn0.eyJpc3MiOiJkaWQ6d2Vidmg6ZXhhbXBsZS5jb20iLCJpYXQiOjE1MTYyNDcwMjIsImV4cCI6MTU0MTQ5MzcyNCwia2V5X3N0b3JhZ2UiOlsiaXNvXzE4MDQ1X2hpZ2giXSwiYXR0ZXN0ZWRfa2V5cyI6W3sia3R5IjoiRUMiLCJjcnYiOiJQLTI1NiIsIngiOiJUQ0FFUjE5WnZ1M09IRjRqNFc0dmZTVm9ISVAxSUxpbERsczd2Q2VHZW1jIiwieSI6Ilp4amlXV2JaTVFHSFZXS1ZRNGhiU0lpcnNWZnVlY0NFNnQ0alQ5RjJIWlEifV19.sj4ulKVk8Xm-Nd-9aODEXI_YpVqPv7llM2fJqZz9R279QN-2g08Rw6U-Dy3u84BVXPYi9B1Wki7mcubO21RrXw", "profile_version": "swiss-profile-issuance:1.0.0" }.{ "jti": "-BwC3ESc6acc2lTc", "htm": "POST", "htu": "https://server.example.com/token", "iat": 1562262616 } ``` -------------------------------- ### Root Capture Base with Mixed Attributes Data Source Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 Example JSON data source for a root capture base containing various attribute types. ```json "person":{ "firstname":"John", "lastname":"Smith", "birthdate":"2026-12-01" }, "nationalities":[ { "name":"Switzerland", "code":"CH" }, { "name":"France", "code":"FR" } ] ``` -------------------------------- ### GET /api/v2/protected-issuance-trust-list-statement/ Source: https://swiyu-admin-ch.github.io/specifications/trust-protocol-v2-0 Retrieves a list of serialized Protected Issuance Trust List Statements. ```APIDOC ## GET /api/v2/protected-issuance-trust-list-statement/ ### Description Returns a list of serialized Protected Issuance Trust List Statements. ### Method GET ### Endpoint /api/v2/protected-issuance-trust-list-statement/ ### Parameters #### Query Parameters - **sub** (string) - Optional - The trust registry returns only statements where the sub claim matches exactly. - **filterActive** (boolean) - Optional - Default: true. Indicates that the trust registry only returns trust statements it deems active. - **page** (integer) - Optional - Default: 0. The zero-based page index to retrieve. - **size** (integer) - Optional - Default: 20. The requested size of the page to be returned. ``` -------------------------------- ### GET /api/v2/protected-issuance-authorization-trust-statement/ Source: https://swiyu-admin-ch.github.io/specifications/trust-protocol-v2-0 Retrieves a list of serialized Protected Issuance Authorization Trust Statements. ```APIDOC ## GET /api/v2/protected-issuance-authorization-trust-statement/ ### Description Returns a list of serialized Protected Issuance Authorization Trust Statements. ### Method GET ### Endpoint /api/v2/protected-issuance-authorization-trust-statement/ ### Parameters #### Query Parameters - **filterActive** (boolean) - Optional - Default: true. Indicates that the trust registry only returns trust statements it deems active. - **page** (integer) - Optional - Default: 0. The zero-based page index to retrieve. - **size** (integer) - Optional - Default: 20. The requested size of the page to be returned. ``` -------------------------------- ### GET /api/v2/verification-query-public-statement/{jti} Source: https://swiyu-admin-ch.github.io/specifications/trust-protocol-v2-0 Retrieves a specific serialized Verification Query Public Statement by its JTI. ```APIDOC ## GET /api/v2/verification-query-public-statement/{jti} ### Description Returns a serialized Verification Query Public Statement. ### Method GET ### Endpoint /api/v2/verification-query-public-statement/{jti} ### Parameters #### Path Parameters - **jti** (string) - Required - The UUIDv4 identifier of the Verification Query Public Statement. ``` -------------------------------- ### Define SD-JWT VC Type Metadata Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-vc Example of a VCT body structure including the required profile_version and display metadata. ```json { "vct": "https://betelgeuse.example.com/education_credential/v1", "name": "Betelgeuse Education Credential - First Version", "description": "This is our first version of the education credential.", "display": [ { "locale": "en-US", "name": "Betelgeuse Education Credential", "description": "An education credential for all carbon-based life forms on Betelgeuse.", "rendering": { "oca": { "uri":"https://betelgeuse.example.com/education_credential/oca/oca-bundle.json", "uri#integrity":"sha256-9cLlJNXN-TsMk-PmKjZ5t0WRL5ca_xGgX3c1VLmXfh-WRL5" } } } ], "profile_version": "swiss-profile-vc:1.0.0" } ``` -------------------------------- ### GET /api/v2/non-compliance-trust-list Source: https://swiyu-admin-ch.github.io/specifications/trust-protocol-v2-0 Retrieves a serialized Non-Compliance Trust List Statement. ```APIDOC ## GET /api/v2/non-compliance-trust-list ### Description Returns a serialized Non-Compliance Trust List Statement. ### Method GET ### Endpoint /api/v2/non-compliance-trust-list ``` -------------------------------- ### OCA Rendering Method Declaration Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-vc Example of an OCA rendering method declaration within the Type Metadata display property. ```json { "display": [ {     "lang":"en",     "name":"example",     "rendering":{ "oca":{ "uri": "https://example.com/oca/oca-bundle.json",         "uri#integrity": "sha256-9cLlJNXN-TsMk-PmKjZ5t0WRL5ca_xGgX3c1VLmXfh-WRL5" } }     }   ] } ``` -------------------------------- ### Status List Token JWT Header Example Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-vc Required header structure for a Status List Token, including the mandatory profile_version parameter. ```json { // header "typ": "statuslist+jwt", "alg": "ES256", "profile_version": "swiss-profile-vc:1.0.0" } . { // payload } ``` -------------------------------- ### Root Capture Base with Mixed Attributes OCA Bundle Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 OCA bundle structure corresponding to the mixed-attribute root capture base example. ```json { "capture_bases":[ { "type":"spec/capture_base/1.0", "digest":"IIQFN-3CMpBvSllFw8wpfiZ8Bl0F5IM2nkjDmrP2I5LA", "attributes":{ "lastname":"Text", "firstname":"Text", "birthdate":"DateTime", "nationalities":"Array[refs:IKFPGHwRoHqEep0xTJD8k3lQGaN-7Ytg-NnaIDX6pBoe]" } }, { "type":"spec/capture_base/1.0", "digest":"IKFPGHwRoHqEep0xTJD8k3lQGaN-7Ytg-NnaIDX6pBoe", "attributes":{ "name":"Text", "code":"Text" } } ] } ``` -------------------------------- ### GET /api/v2/protected-issuance-trust-list Source: https://swiyu-admin-ch.github.io/specifications/trust-protocol-v2-0 Retrieves a serialized Protected Issuance Trust List Statement. ```APIDOC ## GET /api/v2/protected-issuance-trust-list ### Description Returns a serialized Protected Issuance Trust List Statement. ### Method GET ### Endpoint /api/v2/protected-issuance-trust-list ``` -------------------------------- ### GET {vct_metadata_uri} Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-vc Retrieves the Type Metadata for an SD-JWT VC type using the URI provided in the vct_metadata_uri claim. ```APIDOC ## GET {vct_metadata_uri} ### Description Retrieves the Type Metadata for a specific SD-JWT VC type. This method is used when the vct_metadata_uri claim is present in the SD-JWT VC. ### Method GET ### Endpoint {vct_metadata_uri} ### Response #### Success Response (200) - **vct** (string) - The verifiable credential type identifier. - **name** (string) - The name of the credential. - **description** (string) - A description of the credential. - **display** (array) - Locale-specific display information. - **profile_version** (string) - The Swiss Profile version (e.g., "swiss-profile-vc:1.0.0"). - **schema_uri** (string, optional) - A URI pointing to a JSON Schema describing the vct and its claims. ``` -------------------------------- ### GET /api/v2/protected-verification-authorization-trust-statement/{jti} Source: https://swiyu-admin-ch.github.io/specifications/trust-protocol-v2-0 Retrieves a specific Protected Verification Authorization Trust Statement by its JTI. ```APIDOC ## GET /api/v2/protected-verification-authorization-trust-statement/{jti} ### Description Returns a serialized Protected Verification Authorization Trust Statement. ### Method GET ### Endpoint /api/v2/protected-verification-authorization-trust-statement/{jti} ### Parameters #### Path Parameters - **jti** (UUIDv4) - Required - The UUIDv4 of the Protected Verification Authorization Trust Statement to return. ``` -------------------------------- ### Credential Issuer Metadata JSON Body Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-issuance Example of the required profile_version parameter within the Credential Issuer Metadata JSON body. ```json { "profile_version": "swiss-profile-issuance:1.0.0" ... } ``` -------------------------------- ### Define Aries Branding Overlay Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 Example of a Branding Overlay using the aries/overlays/branding/1.1 type with support for themes and primary/secondary fields. ```json { "type":"aries/overlays/branding/1.1", "capture_base":"IMFQWZ_xszfSOugAuYHmlhmQm3EUgJ_uk0S9ExISjqbc", "language":"en", "theme":"light", "logo":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==", "primary_background_color":"#003366", "primary_field":"Fullname: ", "secondary_field":"" } ``` -------------------------------- ### GET /api/v2/identity-trust-statement/{identifier} Source: https://swiyu-admin-ch.github.io/specifications/trust-protocol-v2-0 Retrieves a specific serialized Identity Trust Statement by its identifier. ```APIDOC ## GET /api/v2/identity-trust-statement/{identifier} ### Description Returns a serialized Identity Trust Statement for the specified actor. ### Method GET ### Endpoint /api/v2/identity-trust-statement/{identifier} ### Parameters #### Path Parameters - **identifier** (string) - Required - URL encoded identifier of the actor. ``` -------------------------------- ### GET /api/v2/protected-issuance-trust-list-statement/{jti} Source: https://swiyu-admin-ch.github.io/specifications/trust-protocol-v2-0 Retrieves a specific Protected Issuance Trust List Statement by its JTI. ```APIDOC ## GET /api/v2/protected-issuance-trust-list-statement/{jti} ### Description Returns a serialized Protected Issuance Trust List Statement. ### Method GET ### Endpoint /api/v2/protected-issuance-trust-list-statement/{jti} ### Parameters #### Path Parameters - **jti** (UUIDv4) - Required - The UUIDv4 of the Protected Issuance Trust List Statement to return. ``` -------------------------------- ### Redirect URI with Response Code Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-verification Example of a redirect_uri containing a cryptographic random response_code to mitigate session fixation attacks. ```json { "redirect_uri": "https://www.example.com/redirect?response_code=cf4e8ecc-bf5f-4af1-8676-c6f97d795b8e } ``` -------------------------------- ### GET /api/v2/protected-issuance-authorization-trust-statement/{jti} Source: https://swiyu-admin-ch.github.io/specifications/trust-protocol-v2-0 Retrieves a specific Protected Issuance Authorization Trust Statement by its JTI. ```APIDOC ## GET /api/v2/protected-issuance-authorization-trust-statement/{jti} ### Description Returns a serialized Protected Issuance Authorization Trust Statement. ### Method GET ### Endpoint /api/v2/protected-issuance-authorization-trust-statement/{jti} ### Parameters #### Path Parameters - **jti** (UUIDv4) - Required - The UUIDv4 of the Protected Issuance Authorization Trust Statement to return. ``` -------------------------------- ### JWT-Secured Authorization Request Header Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-verification Example of the required JWT header structure for a Swiss Profile verification request, including the mandatory profile_version parameter. ```json { // header "typ":"oauth-authz-req+jwt", "alg":"ES256", "profile_version": "swiss-profile-verification:1.0.0" } . { // payload } ``` -------------------------------- ### Define OCA Overlay Configurations Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 JSON configuration defining order and label overlays for various capture bases. ```json { "capture_base": "IKLvtGx1NU0007DUTTmI_6Zw-hnGRFicZ5R4vAxg4j2j", "type": "extend/overlays/order/1.0", "attribute_orders": { "race": 1, "name": 2 } }, { "capture_base": "IAuwaTn6mftTX0kOy4BQQaBYH-1jVVG9_zeEQRCwz-i5", "type": "extend/overlays/order/1.0", "attribute_orders": { "street": 1, "city": 2, "country": 3 } }, { "capture_base": "IKLvtGx1NU0007DUTTmI_6Zw-hnGRFicZ5R4vAxg4j2j", "type": "spec/overlays/label/1.1", "language": "en", "attribute_labels": { "race": "Race", "name": "Name" } }, { "capture_base": "IAer8X5u59cI2kaJziETEggN_Yft6gsY5tiVutLm7tyM", "type": "spec/overlays/label/1.1", "language": "en", "attribute_labels": { "firstname": "Firstname", "lastname": "Lastname", "address": "Address", "pets": "Pet " } }, { "capture_base": "IAuwaTn6mftTX0kOy4BQQaBYH-1jVVG9_zeEQRCwz-i5", "type": "spec/overlays/label/1.1", "language": "en", "attribute_labels": { "street": "Street", "city": "City", "country": "Country" } } ``` -------------------------------- ### Static Wallet Metadata Structure Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-verification Defines the required vp_formats_supported structure for static wallet metadata. ```json { "vp_formats_supported": { "dc+sd-jwt": { "sd-jwt_alg_values": ["ES256", "EdDSA"] } ``` -------------------------------- ### Swiss Profile Versioning Pattern Source: https://swiyu-admin-ch.github.io/specifications/introduction The standard format for defining Swiss Profile versions using a type and a semantic version string. ```text swiss-profile-{type}:{profileVersion} ``` ```text swiss-profile-issuance:1.0.0 ``` -------------------------------- ### Define SD-JWT-VC JOSE Header Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-vc The header must include the profile_version parameter set to 'swiss-profile-vc:1.0.0'. ```json { // header "typ": "dc+sd-jwt", "alg": "ES256", "profile_version": "swiss-profile-vc:1.0.0" } . { // payload } ``` -------------------------------- ### Define OCA Bundle with Swiss Profile Version Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-vc Required JSON structure for an OCA bundle, including the mandatory profile_version parameter. ```json { "profile_version": "swiss-profile-vc:1.0.0", "capture_bases":[], "overlays":[] } ``` -------------------------------- ### Template String Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 A template string using double-bracket expressions to reference Capture Base attributes. ```text "Fullname: {{firstname}} {{lastname}} from {{nationalities.join('/')}}" ``` -------------------------------- ### OCA Bundle Definition Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 Definition of Capture Bases and Overlays to map the nested data source structure. ```json { "capture_bases": [ { "type": "spec/capture_base/1.0", "digest": "IAer8X5u59cI2kaJziETEggN_Yft6gsY5tiVutLm7tyM", "attributes": { "lastname": "Text", "firstname": "Text", "address": "refs:IAuwaTn6mftTX0kOy4BQQaBYH-1jVVG9_zeEQRCwz-i5", "pets": "Array[refs:IKLvtGx1NU0007DUTTmI_6Zw-hnGRFicZ5R4vAxg4j2j]" } }, { "type": "spec/capture_base/1.0", "digest": "IKLvtGx1NU0007DUTTmI_6Zw-hnGRFicZ5R4vAxg4j2j", "attributes": { "name": "Text", "race": "Text" } }, { "type": "spec/capture_base/1.0", "digest": "IAuwaTn6mftTX0kOy4BQQaBYH-1jVVG9_zeEQRCwz-i5", "attributes": { "street": "Text", "city": "Text", "country": "Text" } } ], "overlays": [ { "type": "extend/overlays/data_source/2.0", "capture_base": "IAer8X5u59cI2kaJziETEggN_Yft6gsY5tiVutLm7tyM", "format": "dc+sd-jwt", "attribute_sources": { "lastname": ["lastname"], "firstname": ["firstname"], "pets": ["pets", null] } }, { "type": "extend/overlays/data_source/2.0", "capture_base": "IAuwaTn6mftTX0kOy4BQQaBYH-1jVVG9_zeEQRCwz-i5", "format": "dc+sd-jwt", "attribute_sources": { "street": ["street"], "city": ["city"], "country": ["country"] } }, { "type": "extend/overlays/data_source/2.0", "capture_base": "IKLvtGx1NU0007DUTTmI_6Zw-hnGRFicZ5R4vAxg4j2j", "format": "dc+sd-jwt", "attribute_sources": { "name": ["pets", null, "name"], "race": ["pets", null, "race"] } }, { "type": "aries/overlays/branding/1.1", "capture_base": "IAer8X5u59cI2kaJziETEggN_Yft6gsY5tiVutLm7tyM", "language": "en", "theme": "light", "logo": "data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAYAAACpSkzOAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAGbSURBVHgBvVaBUcMwDFQ4BjAbmA06QjYgGzQbkA1aJmg3yHWCwgSGCVImcJkg3UDYjVMUI6VxW/g7X+701kuWZTsAI0DEwo0GO9RuKMKpYGvdsH4uXALnqPE3DOFrhs8hFc5pizxyN2YCZyS9+5FYuWCfgYzZJYFUon2UuwMZ+xG7xO3gXKBQ95xwGyHIuxuvbhwY/oPo+WbSQAyKtDCGVtWM3aMifmXENcGnb3uqp6Q2NZHgEpnWDQl5rsJwxgS9NTBZ98ghEdgdcA6t3yOpJQtGSIUVekHN+DwJWsfSWSGLmsm2xWHti2iOEbQav6I3IYtPIqDdZwvDc3K0OY5W5EvQ2vUb2jJZaBLIogxL5pUcf9LC7gzZQPigJXFe4HmsyPw1sRvk9jKsjj4Fc5yOOfFTyDcLcEGfMR0VpACnlUvC4j+C9FjFulkURLuPhdvgIcuy08UbPxMabofBjRMHOsAfIS6db21fOgXXYe/K9kgNgxWFmr7A9dhMmoXD001h8OcvSPpLWkIKsLu3THC2yBxG7B48S5IoJb1vHubbPPxs2qsAAAAASUVORK5CYII=", "primary_background_color": "#2C75E3", "primary_field": " " }, { "type": "spec/overlays/meta/1.0", "capture_base": "IAer8X5u59cI2kaJziETEggN_Yft6gsY5tiVutLm7tyM", "language": "en", "name": "Pet Permit" }, { "capture_base": "IAer8X5u59cI2kaJziETEggN_Yft6gsY5tiVutLm7tyM", "type": "extend/overlays/order/1.0", "attribute_orders": { "lastname": 2, "firstname": 1, "address": 3, ``` -------------------------------- ### OCA Bundle JSON Structure Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 Full OCA bundle containing the Capture Base and associated Overlays. ```json { "capture_bases":[ { "type":"spec/capture_base/1.0", "digest":"IBYzBHEN4moeVO_aQtW_DbDoQd-30BgeJQMyfsRzoUFI", "attributes":{ "name":"Text" } } ], "overlays":[ { "capture_base":"IBYzBHEN4moeVO_aQtW_DbDoQd-30BgeJQMyfsRzoUFI", "type":"spec/overlays/label/1.0", "language":"fr-CH", "attribute_labels":{ "name":"Nom" } } ] } ``` ```json { "capture_bases":[ { "type":"spec/capture_base/1.0", "digest":"IBYzBHEN4moeVO_aQtW_DbDoQd-30BgeJQMyfsRzoUFI", "attributes":{ "name":"Text" } } ], "overlays":[ { "capture_base":"IBYzBHEN4moeVO_aQtW_DbDoQd-30BgeJQMyfsRzoUFI", "type":"spec/overlays/label/1.0", "language":"fr-CH", "attribute_labels":{ "name":"Nom" } } ] } ``` -------------------------------- ### Key Attestation JWT Header Structure Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-issuance Required header format for key attestation JWTs, including the mandatory profile_version parameter. ```json { // header "typ":"key-attestation+jwt", "alg":"ES256", "profile_version": "swiss-profile-issuance:1.0.0" } . { // payload } ``` -------------------------------- ### DPoP Access Token Request with Key Attestation Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-issuance An HTTP POST request to the token endpoint including the DPoP header with key attestation. ```http POST /token HTTP/1.1 Host: server.example.com Content-Type: application/x-www-form-urlencoded DPoP: eyJ0eXAiOiJkcG9wK2p3dCIsImFsZyI6IkVTMjU2IiwiandrIjp7Imt0eSI6IkVDIiwiY3J2IjoiUC0yNTYiLCJ4IjoiVENBRVIxOVp2dTNPSEY0ajRXNHZmU1ZvSElQMUlMaWxEbHM3dkNlR2VtYyIsInkiOiJaeGppV1diWk1RR0hWV0tWUTRoYlNJaXJzVmZ1ZWNDRTZ0NGpUOUYySFpRIn0sImtleV9hdHRlc3RhdGlvbiI6ImV5SjBlWEFpT2lKclpYa3RZWFIwWlhOMFlYUnBiMjRyYW5kMElpd2lZV3huSWpvaVJWTXlOVFlpTENKcmFXUWlPaUprYVdRNmQyVmlkbWc2WlhoaGJYQnNaUzVqYjIwamEyVjVMVEVpTENKd2NtOW1hV3hsWDNabGNuTnBiMjRpT2lKemQybHpjeTF3Y205bWFXeGxMV2x6YzNWaGJtTmxPakV1TUM0d0luMC5leUpwYzNNaU9pSmthV1E2ZDJWaWRtZzZaWGhoYlhCc1pTNWpiMjBpTENKcFlYUWlPakUxTVRZeU5EY3dNaklzSW1WNGNDSTZNVFUwTVRRNU16Y3lOQ3dpYTJWNVgzTjBiM0poWjJVaU9sc2lhWE52WHpFNE1EUTFYMmhwWjJnaVhTd2lZWFIwWlhOMFpXUmZhMlY1Y3lJNlczc2lhM1I1SWpvaVJVTWlMQ0pqY25ZaU9pSlFMVEkxTmlJc0luZ2lPaUpVUTBGRlVqRTVXbloxTTA5SVJqUnFORmMwZG1aVFZtOUlTVkF4U1V4cGJFUnNjemQyUTJWSFpXMWpJaXdpZVNJNklscDRhbWxYVjJKYVRWRkhTRlpYUzFaUk5HaGlVMGxwY25OV1puVmxZME5GTm5RMGFsUTVSakpJV2xFaWZWMTkuc2o0dWxLVms4WG0tTmQtOWFPREVYSV9ZcFZxUHY3bGxNMmZKcVp6OVIyNzlRTi0yZzA4Unc2VS1EeTN1ODRCVlhQWWk5QjFXa2k3bWN1Yk8yMVJyWHciLCJwcm9maWxlX3ZlcnNpb24iOiJzd2lzcy1wcm9maWxlLWlzc3VhbmNlOjEuMC4wIn0.eyJqdGkiOiItQndDM0VTYzZhY2MybFRjIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vc2VydmVyLmV4YW1wbGUuY29tL3Rva2VuIiwiaWF0IjoxNTYyMjYyNjE2fQ.wWQJzvfLCFqsEWN2UoiavFf_taZv33sRFFc5WuPYKn4WsJ2HKE3bppWXtkPHh20WIZiYkjH4GRW_VQAJQF9huQ ``` -------------------------------- ### Define Origin URL Scheme Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-proximity Specifies the required URL scheme format using the sha256 hash of the encoded session transcript. ```text iso-18013-5:// ``` -------------------------------- ### Trusted Authorities Query Configuration Source: https://swiyu-admin-ch.github.io/specifications/swiss-profile-verification Defines the accepted VC issuer DIDs for the swiyu Trust Infrastructure using the 'did' type. ```json { "type": "did", "values": ["did:webvh::www.example.com", "did:webvh::www.admin.ch", "did:webvh::www.ch.ch"] } ``` -------------------------------- ### Resolved Template Value Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 The final string output after resolving expressions against the provided data source. ```text "Fullname: John Smith from Switzerland/France/Germany/Italy" ``` -------------------------------- ### Define an OCA Bundle as a JSON object Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 Represents an OCA bundle containing capture bases and overlays. The root capture base is identified by the absence of references from other capture bases. ```json { "capture_bases":[ { "type":"spec/capture_base/1.0", "digest":"IKFBZ-Frs7B-En_bLHkbzhrD1h45J-H8KK9gOIP36EDr", "attributes":{ "firstname":"Text", "lastname":"Text", "address":"refs:IAuwaTn6mftTX0kOy4BQQaBYH-1jVVG9_zeEQRCwz-i5" } }, { "type":"spec/capture_base/1.0", "digest":"IAuwaTn6mftTX0kOy4BQQaBYH-1jVVG9_zeEQRCwz-i5", "attributes":{ "street":"Text", "city":"Text", "country":"Text" } } ], "overlays":[ { "type":"spec/overlays/meta/1.0", "capture_base":"IKFBZ-Frs7B-En_bLHkbzhrD1h45J-H8KK9gOIP36EDr", "language":"en", "name":"Example VC" } ] } ``` -------------------------------- ### Capture Base JSON Structure Source: https://swiyu-admin-ch.github.io/specifications/oca-v1-0 JSON representation of a Capture Base with a dummy digest placeholder. ```json { "type":"spec/capture_base/1.0", "digest":"############################################", "attributes":{ "name":"Text" } } ```