Skip to Content
API ReferenceIdentity API

Identity API

Identity API merkeziyetsiz kimlikleri yönetir. Kullanıcılar DID tabanlı meydan okumalarla kimlik doğrular, doğrulanabilir kimlik bilgilerini depolar, iddiaları seçici olarak paylaşır ve bağlı hesapları sürdürür.

Temel URL: https://identity.solidus.network/v1


Kimlik Doğrulama

Meydan Okuma İste

Belirli bir DID için bir meydan okuma isteyerek bir DID kimlik doğrulama akışı başlatın. Meydan okuma imzalanmalı ve bir Doğrulanabilir Sunum olarak döndürülmelidir.

POST /auth/challenge

Kimlik doğrulama: Yok

// Request body { "did": "did:solidus:testnet:7Hk3mRtQZvXp2nBw9Lj4K" }
// Response 200 { "challengeId": "chl_3Vn9wLkDfT", "challenge": { "nonce": "a1b2c3d4e5f6789012345678", "domain": "identity.solidus.network", "expiresAt": "2026-05-07T14:35:00Z" } }

Meydan Okumayı Doğrula

Kimlik doğrulamasını tamamlamak ve bir JWT almak için imzalanmış bir Doğrulanabilir Sunum gönderin.

POST /auth/verify

Kimlik doğrulama: Yok

// Request body { "challengeId": "chl_3Vn9wLkDfT", "presentation": { "@context": ["https://www.w3.org/2018/credentials/v1"], "type": ["VerifiablePresentation"], "holder": "did:solidus:testnet:7Hk3mRtQZvXp2nBw9Lj4K", "proof": { "type": "Ed25519Signature2020", "created": "2026-05-07T14:30:00Z", "challenge": "a1b2c3d4e5f6789012345678", "domain": "identity.solidus.network", "verificationMethod": "did:solidus:testnet:7Hk3mRtQZvXp2nBw9Lj4K#key-1", "proofValue": "z3FXQjecWufY46...yUPgbT" } } }
// Response 200 { "token": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9...", "user": { "id": "usr_7Hk3mRtQZv", "did": "did:solidus:testnet:7Hk3mRtQZvXp2nBw9Lj4K", "displayName": "John Doe", "avatarUrl": null, "createdAt": "2026-04-15T08:00:00Z" } }

Geçerli Kullanıcıyı Al

Kimlik doğrulaması yapılmış kullanıcı profilini alın.

GET /auth/me

Kimlik doğrulama: JWT Bearer

// Response 200 { "user": { "id": "usr_7Hk3mRtQZv", "did": "did:solidus:testnet:7Hk3mRtQZvXp2nBw9Lj4K", "displayName": "John Doe", "bio": "Web3 builder", "avatarUrl": "https://identity.solidus.network/avatars/usr_7Hk3mRtQZv.jpg", "linkedAccounts": ["google", "github"], "credentialCount": 3, "createdAt": "2026-04-15T08:00:00Z" } }

OAuth ile Giriş

Kullanıcıları OAuth tabanlı giriş için Google veya GitHub’a yönlendirin. Yetkilendirmeden sonra kullanıcı, bir JWT ile birlikte geri çağırma (callback) URL’sine yönlendirilir.

GET /auth/google — Google OAuth’a yönlendirir

GET /auth/github — GitHub OAuth’a yönlendirir


Kimlik Bilgileri

Kimlik Bilgilerini Listele

Kullanıcının cüzdanında depolanan tüm doğrulanabilir kimlik bilgilerini alın.

GET /credentials

Kimlik doğrulama: JWT Bearer

// Response 200 { "credentials": [ { "id": "vc_3Kn8rTpXm2", "type": ["VerifiableCredential", "KYCCredential"], "issuer": "did:solidus:issuer_9Xm4pLk", "issuerName": "Solidus Verify", "issuanceDate": "2026-05-07T14:25:30Z", "expirationDate": "2027-05-07T14:25:30Z", "status": "active", "claims": { "level": 2, "country": "US", "verifiedAt": "2026-05-07T14:25:30Z" } }, { "id": "vc_8Rn3mKpWxT", "type": ["VerifiableCredential", "EmailCredential"], "issuer": "did:solidus:issuer_9Xm4pLk", "issuerName": "Solidus Identity", "issuanceDate": "2026-04-20T10:00:00Z", "expirationDate": "2027-04-20T10:00:00Z", "status": "active", "claims": { "email": "[email protected]", "verified": true } } ] }

Kimlik Bilgisini Al

Doğrulama durumuyla birlikte tek bir kimlik bilgisini alın.

GET /credentials/:vcId

Kimlik doğrulama: JWT Bearer

curl https://identity.solidus.network/v1/credentials/vc_3Kn8rTpXm2 \ -H "Authorization: Bearer eyJhbGciOiJFZERTQSIs..."
// Response 200 { "credential": { "id": "vc_3Kn8rTpXm2", "type": ["VerifiableCredential", "KYCCredential"], "issuer": "did:solidus:issuer_9Xm4pLk", "issuerName": "Solidus Verify", "issuanceDate": "2026-05-07T14:25:30Z", "expirationDate": "2027-05-07T14:25:30Z", "status": "active", "claims": { "level": 2, "country": "US", "verifiedAt": "2026-05-07T14:25:30Z" }, "proof": { "type": "Ed25519Signature2020", "created": "2026-05-07T14:25:30Z", "verificationMethod": "did:solidus:issuer_9Xm4pLk#key-1", "proofValue": "z4MXy7Lk9Rn3..." }, "onChainAnchor": "0x8a3f...b7c2" }, "verification": { "valid": true, "checks": ["signature", "expiration", "revocation", "onChainAnchor"], "verifiedAt": "2026-05-07T14:30:00Z" } }

Paylaşım

Kimlik bilgilerini veya belirli iddiaları üçüncü taraflarla paylaşın. Kullanıcılar paylaşım isteklerini onaylar veya reddeder ve erişimi istedikleri zaman iptal edebilir.

Paylaşım İsteklerini Listele

Üçüncü taraflardan gelen bekleyen kimlik bilgisi paylaşım isteklerini alın.

GET /sharing/requests

Kimlik doğrulama: JWT Bearer

// Response 200 { "requests": [ { "id": "req_5Wn2kLpMxR", "requester": { "did": "did:solidus:app_4Tn7mLkPxR", "name": "DeFi Exchange", "domain": "exchange.example.com" }, "requestedCredentials": ["KYCCredential"], "requestedClaims": ["level", "country"], "purpose": "Regulatory compliance for trading", "status": "pending", "createdAt": "2026-05-07T15:00:00Z", "expiresAt": "2026-05-08T15:00:00Z" } ] }

Paylaşım İsteğine Yanıt Ver

Bir kimlik bilgisi paylaşım isteğini onaylayın veya reddedin.

POST /sharing/requests/:requestId/respond

Kimlik doğrulama: JWT Bearer

// Request body — approve with selective disclosure { "action": "approve", "credentialId": "vc_3Kn8rTpXm2", "sharedClaims": ["level", "country"] }
// Response 200 { "share": { "id": "shr_6Wn9pMkRxT", "requestId": "req_5Wn2kLpMxR", "credentialId": "vc_3Kn8rTpXm2", "sharedClaims": ["level", "country"], "requester": { "did": "did:solidus:app_4Tn7mLkPxR", "name": "DeFi Exchange" }, "status": "active", "createdAt": "2026-05-07T15:05:00Z" } }
// Request body — deny { "action": "deny" }
// Response 200 { "message": "Request denied" }

Aktif Paylaşımları Listele

Şu anda aktif olan tüm kimlik bilgisi paylaşımlarını görüntüleyin.

GET /sharing/active

Kimlik doğrulama: JWT Bearer

// Response 200 { "shares": [ { "id": "shr_6Wn9pMkRxT", "credentialId": "vc_3Kn8rTpXm2", "credentialType": "KYCCredential", "sharedClaims": ["level", "country"], "requester": { "did": "did:solidus:app_4Tn7mLkPxR", "name": "DeFi Exchange", "domain": "exchange.example.com" }, "status": "active", "createdAt": "2026-05-07T15:05:00Z" } ] }

Paylaşımı İptal Et

Daha önce onaylanmış bir kimlik bilgisi paylaşımını iptal edin.

DELETE /sharing/active/:shareId

Kimlik doğrulama: JWT Bearer

curl -X DELETE https://identity.solidus.network/v1/sharing/active/shr_6Wn9pMkRxT \ -H "Authorization: Bearer eyJhbGciOiJFZERTQSIs..."
// Response 200 { "message": "Share revoked" }

Gelen Kutusu

Gelen kutusu, düzenleyicilerden gelen kimlik bilgisi tekliflerini içerir. Kullanıcılar, kimlik bilgilerini cüzdanlarına eklemek için teklifleri kabul edebilir veya reddedebilir.

Kimlik Bilgisi Tekliflerini Listele

GET /inbox

Kimlik doğrulama: JWT Bearer

Query ParamTypeDescription
statusstringDuruma göre filtrele: pending, accepted, declined, expired
// Response 200 { "offers": [ { "id": "ofr_7Hk3mRtQZv", "issuer": { "did": "did:solidus:issuer_9Xm4pLk", "name": "Solidus Verify" }, "credentialType": "KYCCredential", "preview": { "level": 2, "country": "US" }, "status": "pending", "createdAt": "2026-05-07T14:25:30Z", "expiresAt": "2026-05-14T14:25:30Z" } ] }

Teklifi Kabul Et

Bir kimlik bilgisi teklifini kabul edin ve cüzdanınıza ekleyin.

POST /inbox/:offerId/accept

Kimlik doğrulama: JWT Bearer

curl -X POST https://identity.solidus.network/v1/inbox/ofr_7Hk3mRtQZv/accept \ -H "Authorization: Bearer eyJhbGciOiJFZERTQSIs..."
// Response 200 { "credential": { "id": "vc_3Kn8rTpXm2", "type": ["VerifiableCredential", "KYCCredential"], "issuer": "did:solidus:issuer_9Xm4pLk", "status": "active", "createdAt": "2026-05-07T14:30:00Z" } }

Teklifi Reddet

Bir kimlik bilgisi teklifini reddedin.

POST /inbox/:offerId/decline

Kimlik doğrulama: JWT Bearer

curl -X POST https://identity.solidus.network/v1/inbox/ofr_7Hk3mRtQZv/decline \ -H "Authorization: Bearer eyJhbGciOiJFZERTQSIs..."
// Response 200 { "message": "Offer declined" }

Kullanıcılar

Bağlı Hesapları Listele

Kimlik doğrulaması yapılmış kullanıcıya bağlı OAuth hesaplarını alın.

GET /users/me/linked-accounts

Kimlik doğrulama: JWT Bearer

// Response 200 { "accounts": [ { "provider": "google", "providerId": "118234567890", "email": "[email protected]", "name": "John Doe", "avatarUrl": "https://lh3.googleusercontent.com/...", "linkedAt": "2026-04-20T10:00:00Z" }, { "provider": "github", "providerId": "12345678", "email": "[email protected]", "name": "johndoe", "avatarUrl": "https://avatars.githubusercontent.com/u/12345678", "linkedAt": "2026-04-22T14:00:00Z" } ] }

Hesap Bağlantısını Kaldır

Bağlı bir OAuth hesabını kaldırın.

DELETE /users/me/linked-accounts/:provider

Kimlik doğrulama: JWT Bearer

curl -X DELETE https://identity.solidus.network/v1/users/me/linked-accounts/github \ -H "Authorization: Bearer eyJhbGciOiJFZERTQSIs..."
// Response 200 { "message": "Account unlinked" }

Herkese Açık Profili Al

DID’sine göre herhangi bir kullanıcının herkese açık profilini alın. Bu uç nokta herkese açıktır ve kimlik doğrulaması gerektirmez.

GET /users/:did

Kimlik doğrulama: Yok

curl https://identity.solidus.network/v1/users/did:solidus:testnet:7Hk3mRtQZvXp2nBw9Lj4K
// Response 200 { "user": { "did": "did:solidus:testnet:7Hk3mRtQZvXp2nBw9Lj4K", "displayName": "John Doe", "bio": "Web3 builder", "avatarUrl": "https://identity.solidus.network/avatars/usr_7Hk3mRtQZv.jpg", "createdAt": "2026-04-15T08:00:00Z" }, "credentials": [ { "type": "KYCCredential", "issuerName": "Solidus Verify", "level": 2, "issuedAt": "2026-05-07T14:25:30Z", "status": "active" } ] }

Yanıta yalnızca kullanıcının herkese açık olarak görünür işaretlediği kimlik bilgileri dahil edilir.

Last updated on