{"components":{"schemas":{"Claim":{"properties":{"path":{"type":"string"}},"type":"object"},"Credential":{"properties":{"claims":{"items":{"$ref":"#/components/schemas/Claim"},"minItems":1,"type":"array"},"format":{"type":"string"},"meta":{"$ref":"#/components/schemas/MetaType"}},"type":"object"},"DcSdJwtMeta":{"additionalProperties":false,"properties":{"vct_values":{"items":{"type":"string"},"minItems":1,"type":"array"}},"required":["vct_values"],"title":"dc_sd_jwt","type":"object"},"Identifier":{"properties":{"identifier":{"type":"string"},"type":{"type":"string"}},"type":"object"},"IntendedUse":{"properties":{"createdAt":{"type":"string"},"credentials":{"items":{"$ref":"#/components/schemas/Credential"},"minItems":1,"type":"array"},"intendedUseIdentifier":{"type":"string"},"privacyPolicy":{"items":{"$ref":"#/components/schemas/Policy"},"minItems":1,"type":"array"},"purpose":{"items":{"$ref":"#/components/schemas/MultiLangString"},"minItems":1,"type":"array"},"revokedAt":{"type":"string"}},"type":"object"},"Law":{"properties":{"lang":{"type":"string"},"legalBasis":{"type":"string"}},"type":"object"},"LegalEntity":{"properties":{"country":{"type":"string"},"email":{"items":{"type":"string"},"minItems":0,"type":"array"},"identifier":{"items":{"$ref":"#/components/schemas/Identifier"},"minItems":1,"type":"array"},"infoURI":{"items":{"type":"string"},"minItems":0,"type":"array"},"legalPerson":{"$ref":"#/components/schemas/LegalEntity"},"may be":{"items":{"$ref":"#/components/schemas/LegalPerson"},"type":"array"},"naturalPerson":{"$ref":"#/components/schemas/NaturalPerson"},"phone":{"items":{"type":"string"},"minItems":0,"type":"array"},"postalAddress":{"items":{"type":"string"},"minItems":0,"type":"array"}},"type":"object"},"LegalPerson":{"properties":{"establishedByLaw":{"items":{"$ref":"#/components/schemas/Law"},"minItems":0,"type":"array"},"legalName":{"items":{"type":"string"},"minItems":1,"type":"array"}},"type":"object"},"MetaType":{"oneOf":[{"$ref":"#/components/schemas/DcSdJwtMeta"},{"$ref":"#/components/schemas/MsoMdocMeta"}],"type":"object"},"MsoMdocMeta":{"additionalProperties":false,"properties":{"doctype_value":{"type":"string"}},"required":["doctype_value"],"title":"mso_mdoc","type":"object"},"MultiLangString":{"properties":{"content":{"type":"string"},"lang":{"type":"string"}},"type":"object"},"NaturalPerson":{"properties":{"dateOfBirth":{"type":"string"},"familyName":{"type":"string"},"givenName":{"type":"string"},"placeOfBirth":{"type":"string"}},"type":"object"},"Policy":{"properties":{"policyURI":{"type":"string"},"type":{"type":"string"}},"type":"object"},"ProvidedAttestation":{"properties":{"format":{"type":"string"},"type":{"type":"string"}},"type":"object"},"Provider":{"properties":{"policy":{"items":{"$ref":"#/components/schemas/Policy"},"minItems":0,"type":"array"},"providerType":{"type":"integer"},"x5c":{"type":"string"}},"type":"object"},"SignedIntendedUseCheckResult":{"description":"The schema for the payload within the JWT response for /wrp/check-intended-use 'get' method","properties":{"data":{"properties":{"details":{"type":"string"},"isRegistered":{"description":"True if specified attributes match registration data.","type":"boolean"}},"type":"object"},"iat":{"description":"Issued At, the timestamp at which the JWT was issued","format":"int64","type":"integer"},"iss":{"description":"Issuer, the identifier of the Registry","type":"string"}},"required":["iss","iat","data"],"type":"object"},"SignedWRP":{"description":"The schema for the payload contained within the signed JWT response for WRP single queries/updates.","properties":{"data":{"$ref":"#/components/schemas/WalletRelyingParty"},"iat":{"description":"Issued At, the timestamp at which the JWT was issued.","format":"int64","type":"integer"},"iss":{"description":"Issuer, the identifier of the Registry.","type":"string"}},"required":["iss","iat","data"],"type":"object"},"SignedWRPArray":{"description":"The schema for the payload within the JWT response for /wrp 'get' method.","properties":{"data":{"items":{"$ref":"#/components/schemas/WalletRelyingParty"},"type":"array"},"iat":{"description":"Issued At, the timestamp at which the JWT was issued.","format":"int64","type":"integer"},"iss":{"description":"Issuer, the identifier of the Registry.","type":"string"},"pagination":{"properties":{"has_next_page":{"description":"Whether there is a next page of results.","type":"boolean"},"next_cursor":{"description":"The cursor to use to fetch the next page of results.","type":"string"}},"type":"object"}},"required":["iss","iat","data"],"type":"object"},"SupervisoryAuthority":{"properties":{"country":{"type":"string"},"email":{"items":{"type":"string"},"minItems":0,"type":"array"},"formURI":{"items":{"type":"string"},"minItems":0,"type":"array"},"name":{"type":"string"},"phone":{"items":{"type":"string"},"minItems":0,"type":"array"}},"type":"object"},"WalletRelyingParty":{"$ref":"#/components/schemas/WalletRelyingPartySchema"},"WalletRelyingPartySchema":{"allOf":[{"$ref":"#/components/schemas/Provider"},{"properties":{"isPSB":{"type":"boolean"},"registryURI":{"type":"string"},"services":{"items":{"$ref":"#/components/schemas/WalletRelyingPartyService"},"minItems":1,"type":"array"},"supervisoryAuthority":{"$ref":"#/components/schemas/SupervisoryAuthority"},"tradeName":{"type":"string"}},"type":"object"}]},"WalletRelyingPartyService":{"properties":{"email":{"type":"string"},"entitlements":{"items":{"type":"string"},"minItems":0,"type":"array"},"intendedUses":{"items":{"$ref":"#/components/schemas/IntendedUse"},"minItems":0,"type":"array"},"isIntermediary":{"type":"boolean"},"phone":{"type":"string"},"providesAttestations":{"items":{"$ref":"#/components/schemas/ProvidedAttestation"},"minItems":0,"type":"array"},"servedWRPServices":{"items":{"type":"string"},"minItems":0,"type":"array"},"serviceIdentifier":{"type":"string"},"serviceTradeName":{"type":"string"},"srvDescription":{"items":{"items":{"$ref":"#/components/schemas/MultiLangString"},"minItems":1,"type":"array"},"type":"array"},"subEntitlements":{"items":{"type":"string"},"minItems":0,"type":"array"},"supportURI":{"type":"string"},"usesIntermediaries":{"items":{"$ref":"#/components/schemas/WalletRelyingPartyService"},"minItems":0,"type":"array"}},"type":"object"}}},"info":{"title":"EUDI Wallet Relying Party Registrar API","version":"v1.5"},"openapi":"3.1.0","paths":{"/wrp":{"get":{"description":"Returns a list of matching Wallet Relying Parties. If `serviceIdentifier` is provided  along side `isolateService=true`, the returned parent records will have their  `walletRelyingPartyService` arrays filtered down to contain only the matching service instance.","parameters":[{"description":"Filter by Wallet-Relying Party identifier","in":"query","name":"identifier","schema":{"type":"string"}},{"description":"Filter by precise Service Identifier inside the WRPServices array","in":"query","name":"serviceidentifier","schema":{"type":"string"}},{"description":"If true, and a `serviceIdentifier` match is found, the backend will strip out all  other non-matching service instances from the returned WRP objects in the `data` array.\n","in":"query","name":"isolateService","schema":{"default":false,"type":"boolean"}},{"description":"Filter by registered legal name","in":"query","name":"legalname","schema":{"type":"string"}},{"description":"Filter by WRP 'tradeName' or WalletRelyingPartyService 'serviceTradeName'","in":"query","name":"tradename","schema":{"type":"string"}},{"description":"Filter by policy URI","in":"query","name":"policy","schema":{"type":"string"}},{"description":"Filter by entitlement value","in":"query","name":"entitlement","schema":{"type":"string"}},{"description":"Filter by provided attestation type","in":"query","name":"providedattestation","schema":{"type":"string"}},{"description":"Filter by credential -\u003e meta information","in":"query","name":"credentialmeta","schema":{"type":"string"}},{"description":"Filter by WRPs that have registered given credential format within their intended use","in":"query","name":"credentialformat","schema":{"type":"string"}},{"description":"Filter by intermediary service matching with given 'WalletRelyingPartyService.serviceIdentifier' string","in":"query","name":"usesintermediary","schema":{"type":"string"}},{"description":"Filter by WRPs that have registered as an intermediary","in":"query","name":"isintermediary","schema":{"type":"boolean"}},{"description":"Filter by registrar-assigned identifier of an intended use","in":"query","name":"intendeduseidentifier","schema":{"type":"string"}},{"description":"use limit-based pagination","in":"query","name":"limit","schema":{"default":20,"type":"integer"}},{"description":"use cursor-based pagination","in":"query","name":"cursor","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/jwt":{"schema":{"description":"Payload conforms to 'SignedWRPArray'","format":"JWS","type":"string"}}},"description":"JWS-signed list of matching Wallet Relying Party objects (potentially service-isolated)","headers":{"x-jku-url":{"schema":{"format":"uri","type":"string"}}}},"400":{"description":"Invalid request payload"},"404":{"description":"Wallet Relying Party not found"}},"summary":"Get a list of Wallet Relying Parties (with optional filtering, isolation, and pagination)"},"put":{"description":"Atomic update method for managing wrp objects","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WalletRelyingParty"}}},"required":true},"responses":{"200":{"content":{"application/jwt":{"schema":{"format":"JWS","type":"string"}}},"description":"Successfully updated Wallet Relying Party as a JWS-signed object","headers":{"x-jku-url":{"schema":{"format":"uri","type":"string"}}}},"400":{"description":"Invalid request payload"},"404":{"description":"Wallet Relying Party not found"}},"summary":"Update an existing Wallet Relying Party"}},"/wrp/check-intended-use":{"get":{"description":"Provides a JWS-signed boolean `TRUE` or `FALSE` response if the queried parameter set can be found in the Registrar's `Intended use` information","parameters":[{"description":"Filter by WRP identifier","in":"query","name":"identifier","schema":{"type":"string"}},{"description":"Service identification filter context","in":"query","name":"serviceidentifier","schema":{"type":"string"}},{"description":"Filter by intendedUseIdentifier","in":"query","name":"intendeduseidentifier","schema":{"type":"string"}},{"description":"Filter intended uses by registered credential format","in":"query","name":"credentialformat","schema":{"type":"string"}},{"description":"Filter by registered claim paths","in":"query","name":"claimpath","schema":{"type":"string"}},{"description":"Filter by matching credential -\u003e meta information","in":"query","name":"credentialmeta","schema":{"type":"string"}},{"description":"Filter by registered privacy policy URI","in":"query","name":"policyurl","schema":{"format":"uri","type":"string"}}],"responses":{"200":{"content":{"application/jwt":{"schema":{"format":"JWS","type":"string"}}},"description":"Intended use check result as a JWS-signed object","headers":{"x-jku-url":{"schema":{"format":"uri","type":"string"}}}},"400":{"description":"Invalid request parameters"},"404":{"description":"Wallet Relying Party for intended use configuration not found"}},"summary":"Check if a specific intended use configuration is active"}},"/wrp/{identifier}":{"delete":{"description":"Atomic WRP delete method. The whole WRP object will be deleted.","parameters":[{"description":"Wallet Relying Party identifier","in":"path","name":"identifier","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Wallet Relying Party successfully deleted"},"404":{"description":"Wallet Relying Party not found"}},"summary":"Delete a Wallet Relying Party by identifier"},"get":{"description":"Method to retrieve a WRP object as a signed JWS.","parameters":[{"description":"The identifier of the Wallet Relying Party to retrieve","in":"path","name":"identifier","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/jwt":{"schema":{"format":"JWS","type":"string"}}},"description":"Found Wallet Relying Party as a JWS-signed object","headers":{"x-jku-url":{"schema":{"format":"uri","type":"string"}}}},"404":{"description":"Wallet Relying Party not found"}},"summary":"Get Wallet Relying Party by identifier"}},"/wrp/{identifier}/services/{serviceidentifier}":{"get":{"description":"Retrieves the parent Wallet Relying Party record matching the '{identifier}',  but slices the `walletRelyingPartyService` array down so it returns ONLY the  single service instance matching the provided '{serviceidentifier}'.\n","parameters":[{"description":"The parent unique identifier of the Wallet Relying Party","in":"path","name":"identifier","required":true,"schema":{"type":"string"}},{"description":"The specific service identifier lookup key","in":"path","name":"serviceidentifier","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/jwt":{"schema":{"description":"Payload unpacks to a SignedWRP containing the parent structural keys but a singular service item.","format":"JWS","type":"string"}}},"description":"Found isolated parent record containing only the filtered service object instance","headers":{"x-jku-url":{"description":"JWKS verification endpoint","schema":{"format":"uri","type":"string"}}}},"404":{"description":"Either the target Wallet Relying Party or the specific Service Identifier was not located."}},"summary":"Get Wallet Relying Party payload isolated to a specific registered Service Identifier","x-stoplight":{"id":"ydthi4t2vlans"}}}},"servers":[{"description":"National EUDI Relying Party Register API","url":"https://registrar.wallee.demo.idenv.fr"}]}
