Base para bot BlueSky.
Construir esta base em cima da API Oficial da BlueSky.
Observação A senha no arquivo. env deste repositório se trata de uma senha temporaria desativada.
Aviso: Por segurança é recomendado a criação de uma senha genérica em:
Configurações > Senhas de Aplicativos > Adicionar Senha de Aplicativo
import { ATP } from '../app.js'
const { createSession } = ATP.com.atproto.server
const { did, handle, accessJwt: token } = await createSession(process.env.IDENTIFIER, process.env.PASSWORD)
console.log(`Olá ${handle} [${did}]`)
// Saida: Olá bot-fabio.bsky.social [did:plc:75tklmxmaeod3mppx3zvoqjw]
const sendPost = await ATP.com.atproto.repo.createRecord(token, did, {
text: 'Post enviado por API'
})Confira quais os estados de desenvolvimento da base.
| app.bsky | Desenvolvimento | Documentação Oficial |
|---|---|---|
| actor | ||
| actor.getPreferences | 🟩 Concluido | getPreferences |
| actor.getProfile | 🟩 Concluido | getProfile |
| actor.getProfiles | 🟩 Concluido | getProfiles |
| actor.getSuggestions | 🟩 Concluido | getSuggestions |
| actor.searchActorsTypeahead | 🟨 Em Andamento | searchActorsTypeahead |
| actor.searchActors | 🟩 Concluido | searchActors |
| feed | ||
| feed.describeFeedGenerator | 🟥 Incompleto | describeFeedGenerator |
| feed.getActorFeeds | 🟥 Incompleto | getActorFeeds |
| feed.getActorLikes | 🟥 Incompleto | getActorLikes |
| feed.getAuthorFeed | 🟥 Incompleto | getAuthorFeed |
| feed.getFeedGenerator | 🟥 Incompleto | getFeedGenerator |
| feed.getFeedGenerators | 🟥 Incompleto | getFeedGenerators |
| feed.getFeedSkeleton | 🟥 Incompleto | getFeedSkeleton |
| feed.getFeed | 🟥 Incompleto | getFeed |
| feed.getLikes | 🟥 Incompleto | getLikes |
| feed.getListFeed | 🟥 Incompleto | getListFeed |
| feed.getPostThread | 🟥 Incompleto | getPostThread |
| feed.getPosts | 🟥 Incompleto | getPosts |
| feed.getQuotes | 🟥 Incompleto | getQuotes |
| feed.getRepostedBy | 🟥 Incompleto | getRepostedBy |
| feed.getSuggestedFeeds | 🟥 Incompleto | getSuggestedFeeds |
| feed.getTimeline | 🟥 Incompleto | getTimeline |
| feed.searchPosts | 🟥 Incompleto | searchPosts |
| feed.sendInteractions | 🟥 Incompleto | sendInteractions |
| graph | ||
| graph.getActorStarterPacks | 🟥 Incompleto | getActorStarterPacks |
| graph.getBlocks | 🟥 Incompleto | getBlocks |
| graph.getFollowers | 🟥 Incompleto | getFollowers |
| graph.getFollows | 🟥 Incompleto | getFollows |
| graph.getKnownFollowers | 🟥 Incompleto | getKnownFollowers |
| graph.getListBlocks | 🟥 Incompleto | getListBlocks |
| graph.getListMutes | 🟥 Incompleto | getListMutes |
| graph.getList | 🟥 Incompleto | getList |
| graph.getLists | 🟥 Incompleto | getLists |
| graph.getMutes | 🟥 Incompleto | getMutes |
| graph.getRelationships | 🟥 Incompleto | getRelationships |
| graph.getStarterPack | 🟥 Incompleto | getStarterPack |
| graph.getStarterPacks | 🟥 Incompleto | getStarterPacks |
| graph.getSuggestedFollowsByActor | 🟥 Incompleto | getSuggestedFollowsByActor |
| graph.muteActorList | 🟥 Incompleto | muteActorList |
| graph.muteActor | 🟥 Incompleto | muteActor |
| graph.muteThread | 🟥 Incompleto | muteThread |
| graph.unmuteActorList | 🟥 Incompleto | unmuteActorList |
| graph.unmuteActor | 🟥 Incompleto | unmuteActor |
| graph.unmuteThread | 🟥 Incompleto | unmuteThread |
| labeler | ||
| labeler.getServices | 🟩 Concluido | getServices |
| notification | ||
| notification.getUnreadCount | 🟥 Incompleto | getUnreadCount |
| notification.listNotifications | 🟥 Incompleto | listNotifications |
| notification.putPreferences | 🟥 Incompleto | putPreferences |
| notification.registerPush | 🟥 Incompleto | registerPush |
| notification.updateSeen | 🟥 Incompleto | updateSeen |
| video | ||
| video.getJobStatus | 🟥 Incompleto | getJobStatus |
| video.getUploadLimits | 🟥 Incompleto | getUploadLimits |
| video.uploadVideo | 🟥 Incompleto | uploadVideo |
| chat.bsky | Desenvolvimento | Documentação Oficial |
|---|---|---|
| actor | ||
| actor.deleteAccount | 🟥 Incompleto | deleteAccount |
| actor.exportAccountData | 🟥 Incompleto | exportAccountData |
| convo | ||
| convo.deleteMessageForSelf | 🟥 Incompleto | deleteMessageForSelf |
| convo.getConvoForMembers | 🟥 Incompleto | getConvoForMembers |
| convo.getConvo | 🟥 Incompleto | getConvo |
| convo.getLog | 🟥 Incompleto | getLog |
| convo.getMessages | 🟥 Incompleto | getMessages |
| convo.leaveConvo | 🟥 Incompleto | leaveConvo |
| convo.listConvos | 🟥 Incompleto | listConvos |
| convo.muteConvo | 🟥 Incompleto | muteConvo |
| convo.sendMessageBatch | 🟥 Incompleto | sendMessageBatch |
| convo.sendMessage | 🟥 Incompleto | sendMessage |
| convo.unmuteConvo | 🟥 Incompleto | unmuteConvo |
| convo.updateRead | 🟥 Incompleto | updateRead |
| moderation | ||
| moderation.getActorMetadata | 🟥 Incompleto | getActorMetadata |
| moderation.getMessageContext | 🟥 Incompleto | getMessageContext |
| moderation.updateActorAccess | 🟥 Incompleto | updateActorAccess |
| com.atproto | Desenvolvimento | Documentação Oficial |
|---|---|---|
| admin | ||
| admin.deleteAccount | 🟥 Incompleto | deleteAccount |
| admin.disableAccountInvites | 🟥 Incompleto | disableAccountInvites |
| admin.disableInviteCodes | 🟥 Incompleto | disableInviteCodes |
| admin.enableAccountInvites | 🟥 Incompleto | enableAccountInvites |
| admin.getAccountInfo | 🟥 Incompleto | getAccountInfo |
| admin.getAccountInfos | 🟥 Incompleto | getAccountInfos |
| admin.getInviteCodes | 🟥 Incompleto | getInviteCodes |
| admin.getSubjectStatus | 🟥 Incompleto | getSubjectStatus |
| admin.searchAccounts | 🟥 Incompleto | searchAccounts |
| admin.sendEmail | 🟥 Incompleto | sendEmail |
| admin.updateAccountEmail | 🟥 Incompleto | updateAccountEmail |
| admin.updateAccountHandle | 🟥 Incompleto | updateAccountHandle |
| admin.updateAccountPassword | 🟥 Incompleto | updateAccountPassword |
| admin.updateSubjectStatus | 🟥 Incompleto | updateSubjectStatus |
| identity | ||
| identity.getRecommendedDidCredentials | 🟥 Incompleto | getRecommendedDidCredentials |
| identity.requestPlcOperationSignature | 🟥 Incompleto | requestPlcOperationSignature |
| identity.resolveHandle | 🟥 Incompleto | resolveHandle |
| identity.signPlcOperation | 🟥 Incompleto | signPlcOperation |
| identity.submitPlcOperation | 🟥 Incompleto | submitPlcOperation |
| identity.updateHandle | 🟥 Incompleto | updateHandle |
| label | ||
| label.queryLabels | 🟥 Incompleto | queryLabels |
| moderation | ||
| moderation.createReport | 🟥 Incompleto | createReport |
| repo | ||
| repo.applyWrites | 🟥 Incompleto | applyWrites |
| repo.createRecord | 🟩 Concluido | createRecord |
| repo.deleteRecord | 🟥 Incompleto | deleteRecord |
| repo.describeRepo | 🟥 Incompleto | describeRepo |
| repo.getRecord | 🟥 Incompleto | getRecord |
| repo.importRepo | 🟥 Incompleto | importRepo |
| repo.listMissingBlobs | 🟥 Incompleto | listMissingBlobs |
| repo.listRecords | 🟥 Incompleto | listRecords |
| repo.putRecord | 🟥 Incompleto | putRecord |
| repo.uploadBlob | 🟥 Incompleto | uploadBlob |
| server | ||
| server.activateAccount | 🟥 Incompleto | activateAccount |
| server.checkAccountStatus | 🟥 Incompleto | checkAccountStatus |
| server.confirmEmail | 🟥 Incompleto | confirmEmail |
| server.createAccount | 🟥 Incompleto | createAccount |
| server.createAppPassword | 🟥 Incompleto | createAppPassword |
| server.createInviteCode | 🟥 Incompleto | createInviteCode |
| server.createInviteCodes | 🟥 Incompleto | createInviteCodes |
| server.createSession | 🟩 Concluido | createSession |
| server.deactivateAccount | 🟥 Incompleto | deactivateAccount |
| server.deleteAccount | 🟥 Incompleto | deleteAccount |
| server.deleteSession | 🟥 Incompleto | deleteSession |
| server.describeServer | 🟥 Incompleto | describeServer |
| server.getAccountInviteCodes | 🟥 Incompleto | getAccountInviteCodes |
| server.getServiceAuth | 🟥 Incompleto | getServiceAuth |
| server.getSession | 🟥 Incompleto | getSession |
| server.listAppPasswords | 🟥 Incompleto | listAppPasswords |
| server.refreshSession | 🟥 Incompleto | refreshSession |
| server.requestAccountDelete | 🟥 Incompleto | requestAccountDelete |
| server.requestEmailConfirmation | 🟥 Incompleto | requestEmailConfirmation |
| server.requestEmailUpdate | 🟥 Incompleto | requestEmailUpdate |
| server.requestPasswordReset | 🟥 Incompleto | requestPasswordReset |
| server.reserveSigningKey | 🟥 Incompleto | reserveSigningKey |
| server.resetPassword | 🟥 Incompleto | resetPassword |
| server.revokeAppPassword | 🟥 Incompleto | revokeAppPassword |
| server.updateEmail | 🟥 Incompleto | updateEmail |
| sync | ||
| sync.getBlob | 🟥 Incompleto | getBlob |
| sync.getBlocks | 🟥 Incompleto | getBlocks |
| sync.getLatestCommit | 🟥 Incompleto | getLatestCommit |
| sync.getRecord | 🟥 Incompleto | getRecord |
| sync.getRepoStatus | 🟥 Incompleto | getRepoStatus |
| sync.getRepo | 🟥 Incompleto | getRepo |
| sync.listBlobs | 🟥 Incompleto | listBlobs |
| sync.listRepos | 🟥 Incompleto | listRepos |
| sync.notifyOfUpdate | 🟥 Incompleto | notifyOfUpdate |
| sync.requestCrawl | 🟥 Incompleto | requestCrawl |
| tools.ozone | Desenvolvimento | Documentação Oficial |
|---|---|---|
| communication | ||
| communication.createTemplate | 🟥 Incompleto | createTemplate |
| communication.deleteTemplate | 🟥 Incompleto | deleteTemplate |
| communication.listTemplates | 🟥 Incompleto | listTemplates |
| communication.updateTemplate | 🟥 Incompleto | updateTemplate |
| moderation | ||
| moderation.emitEvent | 🟥 Incompleto | emitEvent |
| moderation.getEvent | 🟥 Incompleto | getEvent |
| moderation.getRecord | 🟥 Incompleto | getRecord |
| moderation.getRepo | 🟥 Incompleto | getRepo |
| moderation.queryEvents | 🟥 Incompleto | queryEvents |
| moderation.queryStatuses | 🟥 Incompleto | queryStatuses |
| moderation.searchRepos | 🟥 Incompleto | searchRepos |
| server | ||
| server.getConfig | 🟩 Concluido | getConfig |
| team | ||
| team.addMember | 🟥 Incompleto | addMember |
| team.deleteMember | 🟥 Incompleto | deleteMember |
| team.listMembers | 🟥 Incompleto | listMembers |
| team.updateMember | 🟥 Incompleto | updateMember |
Obrigado pela sua atenção!