Get All User Access Groups
POST
/api/v0/get-all-user-access-groups
Get All User Access Groups gets all Access Group Entry Responses representing all access groups owned by the public key as well as access groups of which the public key is a member.
Endpoint implementation in backend .
Request Body
Public key of the user for whom we want to get all access groups
200: OK 400: Bad Request
Copy {
"AccessGroupsOwned" : [
{
"AccessGroupOwnerPublicKeyBase58Check" : "tBCKVqiE8oRZwcSLBJWN4WR5dSLBEkXZeWv5iqCfp2crknhFB6Fk2n" ,
"AccessGroupKeyName" : "" ,
"AccessGroupPublicKeyBase58Check" : "tBCKVqiE8oRZwcSLBJWN4WR5dSLBEkXZeWv5iqCfp2crknhFB6Fk2n" ,
"ExtraData" : null ,
"AccessGroupMemberEntryResponse" : null
} ,
{
"AccessGroupOwnerPublicKeyBase58Check" : "tBCKVqiE8oRZwcSLBJWN4WR5dSLBEkXZeWv5iqCfp2crknhFB6Fk2n" ,
"AccessGroupKeyName" : "default-key" ,
"AccessGroupPublicKeyBase58Check" : "tBCKY3eUFE56gCdAA1reHnbnAr9uw69foeW12N1appXDfaHhte1Xia" ,
"ExtraData" : null ,
"AccessGroupMemberEntryResponse" : null
}
] ,
"AccessGroupsMember" : [
{
"AccessGroupOwnerPublicKeyBase58Check" : "tBCKW665XZnvVZcCfcEmyeecSZGKAdaxwV2SH9UFab6PpSRikg4EJ2" ,
"AccessGroupKeyName" : "a super cool groupchat" ,
"AccessGroupPublicKeyBase58Check" : "tBCKWmLgvkMGkMuQ47Jhm8aYMhYMokXpFQTnhqBH7JXQsTuX8AYSs7" ,
"ExtraData" : null ,
"AccessGroupMemberEntryResponse" : {
"AccessGroupMemberPublicKeyBase58Check" : "tBCKVqiE8oRZwcSLBJWN4WR5dSLBEkXZeWv5iqCfp2crknhFB6Fk2n" ,
"AccessGroupMemberKeyName" : "default-key" ,
"EncryptedKey" : "04bfaef01cf09ea7698e9f7f3897b7b5d21fc15ae79f36977f46b0fa9244663cded605cd9cbdf35a4b1f2dbdce151e77a9d0cd61e56db26d2086fa99c7940d2ff5296058a1f93b9abe814d3660455737c7d7962d459bc9eedaa9c433184ab810b4bc3e078c21e9c28280914b9289035df61c4ffbe21f9f9a3324588c26441eecfec3268243e50cb661e942a7d5d58748f183064470c783b1f98dee58f1660933e3e4e3bb375bd3ec85875e414a77120a9e" ,
"ExtraData" : null
}
}
]
}
Get All Access Groups Owned
POST
/api/v0/get-all-user-access-groups-owned
Get All Access Groups Owned gets all Access Group Entry Responses representing all access groups owned by the public key.
Endpoint implementation in backend .
Request Body
Public key of user for whom we want to fetch all groups they own
200: OK 400: Bad Request
Copy {
"AccessGroupsOwned" : [
{
"AccessGroupOwnerPublicKeyBase58Check" : "tBCKVqiE8oRZwcSLBJWN4WR5dSLBEkXZeWv5iqCfp2crknhFB6Fk2n" ,
"AccessGroupKeyName" : "" ,
"AccessGroupPublicKeyBase58Check" : "tBCKVqiE8oRZwcSLBJWN4WR5dSLBEkXZeWv5iqCfp2crknhFB6Fk2n" ,
"ExtraData" : null ,
"AccessGroupMemberEntryResponse" : null
} ,
{
"AccessGroupOwnerPublicKeyBase58Check" : "tBCKVqiE8oRZwcSLBJWN4WR5dSLBEkXZeWv5iqCfp2crknhFB6Fk2n" ,
"AccessGroupKeyName" : "default-key" ,
"AccessGroupPublicKeyBase58Check" : "tBCKY3eUFE56gCdAA1reHnbnAr9uw69foeW12N1appXDfaHhte1Xia" ,
"ExtraData" : null ,
"AccessGroupMemberEntryResponse" : null
}
]
}
Get All Access Groups Member Only
POST
/api/v0/get-all-user-access-groups-member-only
Get All Access Groups Owned gets all Access Group Entry Responses representing all access groups owned by the public key.
Endpoint implementation in backend .
Request Body
Public key of user for whom we want to fetch all groups of which they are a member
200: OK 400: Bad Request
Copy {
"AccessGroupsMember" : [
{
"AccessGroupOwnerPublicKeyBase58Check" : "tBCKW665XZnvVZcCfcEmyeecSZGKAdaxwV2SH9UFab6PpSRikg4EJ2" ,
"AccessGroupKeyName" : "a super cool groupchat" ,
"AccessGroupPublicKeyBase58Check" : "tBCKWmLgvkMGkMuQ47Jhm8aYMhYMokXpFQTnhqBH7JXQsTuX8AYSs7" ,
"ExtraData" : null ,
"AccessGroupMemberEntryResponse" : {
"AccessGroupMemberPublicKeyBase58Check" : "tBCKVqiE8oRZwcSLBJWN4WR5dSLBEkXZeWv5iqCfp2crknhFB6Fk2n" ,
"AccessGroupMemberKeyName" : "default-key" ,
"EncryptedKey" : "04bfaef01cf09ea7698e9f7f3897b7b5d21fc15ae79f36977f46b0fa9244663cded605cd9cbdf35a4b1f2dbdce151e77a9d0cd61e56db26d2086fa99c7940d2ff5296058a1f93b9abe814d3660455737c7d7962d459bc9eedaa9c433184ab810b4bc3e078c21e9c28280914b9289035df61c4ffbe21f9f9a3324588c26441eecfec3268243e50cb661e942a7d5d58748f183064470c783b1f98dee58f1660933e3e4e3bb375bd3ec85875e414a77120a9e" ,
"ExtraData" : null
}
}
]
}
Check Party Access Groups
POST
/api/v0/check-party-access-groups
Check Party Access Groups checks whether both the sender and receiver have the requested access groups. If they do not, it returns the base key.
Endpoint implementation in backend .
Request Body
SenderPublicKeyBase58Check*
SenderAccessGroupKeyName*
Access Group Key Name of sender
RecipientPublicKeyBase58Check*
RecipientAccessGroupKeyName*
Access Group Key Name of recipient
200: OK 400: Bad Request
Copy {
"SenderPublicKeyBase58Check" : "tBCKVqiE8oRZwcSLBJWN4WR5dSLBEkXZeWv5iqCfp2crknhFB6Fk2n" ,
"SenderAccessGroupPublicKeyBase58Check" : "tBCKY3eUFE56gCdAA1reHnbnAr9uw69foeW12N1appXDfaHhte1Xia" ,
"SenderAccessGroupKeyName" : "default-key" ,
"IsSenderAccessGroupKey" : true ,
"RecipientPublicKeyBase58Check" : "tBCKW665XZnvVZcCfcEmyeecSZGKAdaxwV2SH9UFab6PpSRikg4EJ2" ,
"RecipientAccessGroupPublicKeyBase58Check" : "tBCKVNhD9Kn6WzxT1EdgR3Tf3Yop6CXQSDZnvMLbST6C33DTbsnku4" ,
"RecipientAccessGroupKeyName" : "default-key" ,
"IsRecipientAccessGroupKey" : true
}
Get Access Group Information
POST
/api/v0/get-access-group-info
Get Access Group Information gets a single Access Group Entry Response for the access group as defined in the request body.
Endpoint implementation in backend .
Request Body
AccessGroupOwnerPublicKeyBase58Check*
Public key of the access group owner
200: OK 400: Bad Request
Copy {
"AccessGroupOwnerPublicKeyBase58Check" : "tBCKW665XZnvVZcCfcEmyeecSZGKAdaxwV2SH9UFab6PpSRikg4EJ2" ,
"AccessGroupKeyName" : "a super cool groupchat" ,
"AccessGroupPublicKeyBase58Check" : "tBCKWmLgvkMGkMuQ47Jhm8aYMhYMokXpFQTnhqBH7JXQsTuX8AYSs7" ,
"ExtraData" : null ,
"AccessGroupMemberEntryResponse" : null ,
}
Get Access Group Member Information
POST
/api/v0/get-access-group-member-info
Get Access Group Member Information gets a single Access Group Member Entry Response for the access group member defined in the request body.
Endpoint implementation in backend .
Request Body
AccessGroupOwnerPublicKeyBase58Check*
Public key of the group owner
Access group key name of the group
AccessGroupMemberPublicKeyBase58Check*
Public key of the member for which we want to fetch a AccessGroupMemberEntryResponse
200: OK
Copy {
"AccessGroupMemberPublicKeyBase58Check" : "tBCKVqiE8oRZwcSLBJWN4WR5dSLBEkXZeWv5iqCfp2crknhFB6Fk2n" ,
"AccessGroupMemberKeyName" : "default-key" ,
"EncryptedKey" : "04bfaef01cf09ea7698e9f7f3897b7b5d21fc15ae79f36977f46b0fa9244663cded605cd9cbdf35a4b1f2dbdce151e77a9d0cd61e56db26d2086fa99c7940d2ff5296058a1f93b9abe814d3660455737c7d7962d459bc9eedaa9c433184ab810b4bc3e078c21e9c28280914b9289035df61c4ffbe21f9f9a3324588c26441eecfec3268243e50cb661e942a7d5d58748f183064470c783b1f98dee58f1660933e3e4e3bb375bd3ec85875e414a77120a9e" ,
"ExtraData" : null
}
Get Paginated Access Group Members
POST
/api/v0/get-paginated-access-group-members
Get Paginated Access Group Members gets a page of Access Group Member Entry responses for the access group defined in the request body. This is useful in identifying all members of a group. A map of public key to profile entry response is provided for convenience.
Endpoint implementation in backend .
Request Body
AccessGroupOwnerPublicKeyBase58Check*
Public key of the group owner
StartingAccessGroupMemberPublicKeyBase58Check
Public key of the last result from the previous page. To get the first page, exclude this value or make it an empty string.
Maximum number of members to fetch. You will receive at most this number of members.
200: OK 400: Bad Request
Copy {
"AccessGroupMembersBase58Check" : [
"tBCKVv5H1Gz6RTRhjxJwdzcfwfwoUo8b4PYWSKkayG4dy76Jsjt2Ro" ,
"tBCKW665XZnvVZcCfcEmyeecSZGKAdaxwV2SH9UFab6PpSRikg4EJ2"
] ,
"PublicKeyToProfileEntryResponse" : {
"tBCKVv5H1Gz6RTRhjxJwdzcfwfwoUo8b4PYWSKkayG4dy76Jsjt2Ro" : {
"PublicKeyBase58Check" : "tBCKVv5H1Gz6RTRhjxJwdzcfwfwoUo8b4PYWSKkayG4dy76Jsjt2Ro" ,
"Username" : "lazynina" ,
"Description" : "" ,
"IsHidden" : false ,
"IsReserved" : false ,
"IsVerified" : false ,
"Comments" : null ,
"Posts" : null ,
"CoinEntry" : {
"CreatorBasisPoints" : 10000 ,
"DeSoLockedNanos" : 6834043772 ,
"NumberOfHolders" : 1 ,
"CoinsInCirculationNanos" : 5448485463 ,
"CoinWatermarkNanos" : 5448485463 ,
"BitCloutLockedNanos" : 6834043772
} ,
"DAOCoinEntry" : {
"NumberOfHolders" : 2 ,
"CoinsInCirculationNanos" : "0x1794bb7c13520200" ,
"MintingDisabled" : false ,
"TransferRestrictionStatus" : "profile_owner_only"
} ,
"CoinPriceDeSoNanos" : 3762905032 ,
"CoinPriceBitCloutNanos" : 3762905032 ,
"UsersThatHODL" : null ,
"IsFeaturedTutorialWellKnownCreator" : false ,
"IsFeaturedTutorialUpAndComingCreator" : false ,
"ExtraData" : {
"DAOPublicKeysPurchased" : "tBCKY3nVGx7M9FT7h1RcpJyWSUpnjEzJQRXSqwAPaqcAF42W9TEwt8" ,
"DerivedPublicKey" : "tBCKUoDRjbVj2JMWkMqiDzvbFrSGSdD9nGty4YXsNu4zZW5cySUrbG" ,
"DiscordURL" : "" ,
"DisplayName" : "" ,
"FeaturedImageURL" : "" ,
"LargeProfilePicURL" : "" ,
"MarkdownDescription" : "" ,
"TelegramURL" : "" ,
"TwitterURL" : "" ,
"WebsiteURL" : ""
} ,
"DESOBalanceNanos" : 16516822968844 ,
"BestExchangeRateDESOPerDAOCoin" : 0
} ,
"tBCKW665XZnvVZcCfcEmyeecSZGKAdaxwV2SH9UFab6PpSRikg4EJ2" : {
"PublicKeyBase58Check" : "tBCKW665XZnvVZcCfcEmyeecSZGKAdaxwV2SH9UFab6PpSRikg4EJ2" ,
"Username" : "cloutchaser" ,
"Description" : "" ,
"IsHidden" : false ,
"IsReserved" : false ,
"IsVerified" : false ,
"Comments" : null ,
"Posts" : null ,
"CoinEntry" : {
"CreatorBasisPoints" : 10000 ,
"DeSoLockedNanos" : 1124400018 ,
"NumberOfHolders" : 1 ,
"CoinsInCirculationNanos" : 9999331379 ,
"CoinWatermarkNanos" : 9999331379 ,
"BitCloutLockedNanos" : 1124400018
} ,
"DAOCoinEntry" : {
"NumberOfHolders" : 3 ,
"CoinsInCirculationNanos" : "0xd96914214a6b400" ,
"MintingDisabled" : false ,
"TransferRestrictionStatus" : "profile_owner_only"
} ,
"CoinPriceDeSoNanos" : 337342594 ,
"CoinPriceBitCloutNanos" : 337342594 ,
"UsersThatHODL" : null ,
"IsFeaturedTutorialWellKnownCreator" : false ,
"IsFeaturedTutorialUpAndComingCreator" : false ,
"ExtraData" : {
"BlogSlugMap" : "{\"da39a3ee5e\":\"7f9b91cd09ed5cefa0e2bbe2d70698dc665f3d4d31ee2a3a64c91ead3552ed51\"}"
} ,
"DESOBalanceNanos" : 5914499057 ,
"BestExchangeRateDESOPerDAOCoin" : 0
}
}
}
Get Bulk Access Group Entries
POST
/api/v0/get-bulk-access-group-entries
Get Bulk Access Group Entries returns an array of AccessGroupEntryResponse objects for the request list of group owner + group key name pairs in the request body.
Endpoint implementation in backend .
Request Body
GroupOwnerAndGroupKeyNamePairs*
GroupOwnerAndGroupKeyNamePair[]
An array of objects containing the below attributes.
GroupOwnerPublicKeyBase58Check: the owner of the group
GroupKeyName: the name of the group
This endpoint will return the associated AccessGroupEntryResponse for each object. If the AccessGroupEntryResponse is not found, this object will appear in the PairsNotFound array in the response.
200: OK 400: Bad Request
Copy {
"AccessGroupEntries" : [
{
"AccessGroupOwnerPublicKeyBase58Check" : "tBCKVapwwkTTdgpfEKGphh5bGMvcU9aLJTqssRopKX7wQyzwGvoxGL" ,
"AccessGroupKeyName" : "default-key" ,
"AccessGroupPublicKeyBase58Check" : "tBCKWgxWqvmmMF1H9K49onuyp1bcYEs1PqAuCFJJbCg8RJPb4jvBTG" ,
"ExtraData" : null ,
"AccessGroupMemberEntryResponse" : null
}
] ,
"PairsNotFound" : null
}