create account

[steemconnect-firebase-functions] Version 1.3.0: downvoting, setting user metadata, and revoking access token by jakipatryk

View this thread on: hive.blogpeakd.comecency.com
· @jakipatryk · (edited)
$77.04
[steemconnect-firebase-functions] Version 1.3.0: downvoting, setting user metadata, and revoking access token
**It's time for the last of minor releases of *steemconnect-firebase-functions* version 1.x. In this one, I've added a few features that might be helpful - especially ability to broadcast a downvote, but please, don't use it on this post :)**

![Version 1.3.0](https://res.cloudinary.com/hpiynhbhq/image/upload/v1521590456/bk6x9bqxy1w5vfq9w3p5.png)


## Quick Recap
**steemconnect-firebase-functions** is a library designed to help developers who want to create apps based on SteemConnect and Firebase. The library makes it easy to:
- implement **OAuth2 Authorization Code Grant** (enables user to log in to your app using SteemConnect)
- **broadcast operations** to Steem blockchain (post, comment, upvote, etc.)
- make operations on the **Firebase** products (Authentication, Firestore)

## Links
- **Github**: https://github.com/jakipatryk/steemconnect-firebase-functions
- **SteemProjects**: https://steemprojects.com/projects/p/steemconnect-firebase-functions/
- **NPM**: https://www.npmjs.com/package/steemconnect-firebase-functions

## New Features
Version 1.3.0 only introduces new features, so it won't break existing apps. I'm already working on version 2.0.0, which is going to be a **major** release and I'm super excited about this fact, because this version will bring this library to completely new level. 

Anyway, here is what I did:
- `createVote` function which creates and returns a *vote* operation
- `broadcastDownvote` function
- refactored `broadcastUpvote` to use `createVote`
- `revokeAccessToken` function
- `setUserMetadata` function

Let's take a deeper look at each feature:

#### `createVote`
Following the **DRY** principle (**D**on't **R**epeat **Y**ourself) I've decided to add a vote operation creator function. It creates and returns a `vote` operation, so it can be used either by library consumer or me as I'm developing the **steemconnect-firebase-functions**.

It also helps to achieve my goal to publish creator functions for every operation in the version 2.0.0.

The usage of this function is really simple, for example:
``` javascript
import { createVote } from 'steemconnect-firebase-functions';

const voter = 'jakipatryk';
const author = 'ned';
const permlink = 'i-am-ned';
const weight = 5000; // 50%

const voteOperation = createVote(voter, author, permlink, weight);
```

Your can check how I implemented this feature [here](https://github.com/jakipatryk/steemconnect-firebase-functions/pull/21/commits/b50e1e2e9cfa3e36d09381fbee34289c9c46d4c8).

#### `broadcastDownvote`
Functions should be self-descriptive. I believe this one doesn't break this rule. Now broadcasting a downvote is intuitive, I hope this feature will be useful.

Example usage:
``` javascript
import { broadcastDownvote } from 'steemconnect-firebase-functions';

const accessToken = 'access-token';
const voter = 'jakipatryk';
const author = 'ned';
const permlink = 'steemfest2-closing-dinner';
const weight = 10000; // 100% downvote

broadcastDownvote(accessToken, voter, author, permlink, weight).then(result => {
  console.log(result);
});
```

I used the `createVote` function to make this functionality working, you can check the implementation [here](https://github.com/jakipatryk/steemconnect-firebase-functions/pull/21/commits/46c809e77e09ec16aeacd189c25d617c977076f0).

#### `broadcastUpvote` refactoring
I've refactored the `broadcastUpvote` function to use the `vote` operation creator function. Of course, this change doesn't break the API.

You can check how I refactored this function [here](https://github.com/jakipatryk/steemconnect-firebase-functions/pull/21/commits/8b5f06196fdc5cbaeed370ed90c3a629ef90b25c).

#### `setUserMetadata`
This feature should be used if you want to store some user-related data, but you don't want to store it neither in the blockchain or in your database.

`setUserMetadata` sets user metadata in the user profile on the **SteemConnect**. It also returns the updated user data, but in case you would need to get it later, simply use the `getUserData` function.

Example usage:
``` javascript
import { setUserMetadata } from 'steemconnect-firebase-functions';

const accessToken = '432432543njn5k43b5hj23hjbhj423.543nbrj43btjhb4';
const metadata = {
  banned: false
};

setUserMetadata(accessToken, metadata).then(userData => {
  console.log(userData);
});
```

See how I implemented this feature [here](https://github.com/jakipatryk/steemconnect-firebase-functions/pull/22/commits/f3f7cb12bd25f653d895b571737d717ddb427d1a).

#### `revokeAccessToken`
This feature is probably gonna be used most frequently on the user account deletion. It revokes given access token so it couldn't be used anymore.

Example usage:
``` javascript
import { revokeAccessToken } from 'steemconnect-firebase-functions';

const accessToken = '432432543njn5k43b5hj23hjbhj423.543nbrj43btjhb4';

revokeAccessToken(accessToken).then(result => {
  console.log(result);
});
```

See how I implemented this feature [here](https://github.com/jakipatryk/steemconnect-firebase-functions/pull/23/commits/fdba789799e588e812381b3348124d08237c7e13).

## Conclusion
That's all for now, but you can expect the **version 2.0.0** in a near future, maybe even within this week.

I hope you will have fun developing apps on Firebase using this library ;)

//  **Note for Utopian moderators**:

I couldn't add the third pull request, because I kept getting the 500 error, so the last PR for this update is available there: 
- https://github.com/jakipatryk/steemconnect-firebase-functions/pull/23

<br /><hr/><em>Posted on <a href="https://utopian.io/utopian-io/@jakipatryk/steemconnect-firebase-functions-version-1-3-0-downvoting-setting-user-metadata-and-revoking-access-token">Utopian.io -  Rewarding Open Source Contributors</a></em><hr/>
πŸ‘  , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
properties (23)
authorjakipatryk
permlinksteemconnect-firebase-functions-version-1-3-0-downvoting-setting-user-metadata-and-revoking-access-token
categoryutopian-io
json_metadata"{"community":"utopian","app":"utopian/1.0.0","format":"markdown","repository":{"id":120048095,"name":"steemconnect-firebase-functions","full_name":"jakipatryk/steemconnect-firebase-functions","html_url":"https://github.com/jakipatryk/steemconnect-firebase-functions","fork":false,"owner":{"login":"jakipatryk"}},"pullRequests":[{"author_association":"OWNER","_links":{"statuses":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/statuses/f3f7cb12bd25f653d895b571737d717ddb427d1a"},"commits":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/22/commits"},"review_comment":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/comments{/number}"},"review_comments":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/22/comments"},"comments":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/22/comments"},"issue":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/22"},"html":{"href":"https://github.com/jakipatryk/steemconnect-firebase-functions/pull/22"},"self":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/22"}},"base":{"repo":{"default_branch":"master","watchers":3,"open_issues":3,"forks":0,"license":{"url":"https://api.github.com/licenses/mit","spdx_id":"MIT","name":"MIT License","key":"mit"},"open_issues_count":3,"archived":false,"mirror_url":null,"forks_count":0,"has_pages":false,"has_wiki":true,"has_downloads":true,"has_projects":true,"has_issues":true,"language":"TypeScript","watchers_count":3,"stargazers_count":3,"size":201,"homepage":"https://steemprojects.com/projects/p/steemconnect-firebase-functions/","svn_url":"https://github.com/jakipatryk/steemconnect-firebase-functions","clone_url":"https://github.com/jakipatryk/steemconnect-firebase-functions.git","ssh_url":"git@github.com:jakipatryk/steemconnect-firebase-functions.git","git_url":"git://github.com/jakipatryk/steemconnect-firebase-functions.git","pushed_at":"2018-03-20T20:46:32Z","updated_at":"2018-03-20T20:46:34Z","created_at":"2018-02-03T01:11:22Z","deployments_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/deployments","releases_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/releases{/id}","labels_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/labels{/name}","notifications_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/notifications{?since,all,participating}","milestones_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/milestones{/number}","pulls_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls{/number}","issues_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues{/number}","downloads_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/downloads","archive_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/{archive_format}{/ref}","merges_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/merges","compare_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/compare/{base}...{head}","contents_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/contents/{+path}","issue_comment_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/comments{/number}","comments_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/comments{/number}","git_commits_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/commits{/sha}","commits_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/commits{/sha}","subscription_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/subscription","subscribers_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/subscribers","contributors_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/contributors","stargazers_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/stargazers","languages_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/languages","statuses_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/statuses/{sha}","trees_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/trees{/sha}","git_refs_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/refs{/sha}","git_tags_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/tags{/sha}","blobs_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/blobs{/sha}","tags_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/tags","branches_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/branches{/branch}","assignees_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/assignees{/user}","events_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/events","issue_events_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/events{/number}","hooks_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/hooks","teams_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/teams","collaborators_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/collaborators{/collaborator}","keys_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/keys{/key_id}","forks_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/forks","url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions","fork":false,"description":"A library to use SteemConnect in Firebase Functions.","html_url":"https://github.com/jakipatryk/steemconnect-firebase-functions","private":false,"owner":{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"},"full_name":"jakipatryk/steemconnect-firebase-functions","name":"steemconnect-firebase-functions","id":120048095},"user":{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"},"sha":"864d084cd001480d65efd77eb70e4f424381bc8f","ref":"master","label":"jakipatryk:master"},"head":{"repo":{"default_branch":"master","watchers":3,"open_issues":3,"forks":0,"license":{"url":"https://api.github.com/licenses/mit","spdx_id":"MIT","name":"MIT License","key":"mit"},"open_issues_count":3,"archived":false,"mirror_url":null,"forks_count":0,"has_pages":false,"has_wiki":true,"has_downloads":true,"has_projects":true,"has_issues":true,"language":"TypeScript","watchers_count":3,"stargazers_count":3,"size":201,"homepage":"https://steemprojects.com/projects/p/steemconnect-firebase-functions/","svn_url":"https://github.com/jakipatryk/steemconnect-firebase-functions","clone_url":"https://github.com/jakipatryk/steemconnect-firebase-functions.git","ssh_url":"git@github.com:jakipatryk/steemconnect-firebase-functions.git","git_url":"git://github.com/jakipatryk/steemconnect-firebase-functions.git","pushed_at":"2018-03-20T20:46:32Z","updated_at":"2018-03-20T20:46:34Z","created_at":"2018-02-03T01:11:22Z","deployments_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/deployments","releases_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/releases{/id}","labels_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/labels{/name}","notifications_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/notifications{?since,all,participating}","milestones_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/milestones{/number}","pulls_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls{/number}","issues_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues{/number}","downloads_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/downloads","archive_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/{archive_format}{/ref}","merges_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/merges","compare_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/compare/{base}...{head}","contents_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/contents/{+path}","issue_comment_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/comments{/number}","comments_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/comments{/number}","git_commits_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/commits{/sha}","commits_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/commits{/sha}","subscription_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/subscription","subscribers_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/subscribers","contributors_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/contributors","stargazers_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/stargazers","languages_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/languages","statuses_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/statuses/{sha}","trees_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/trees{/sha}","git_refs_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/refs{/sha}","git_tags_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/tags{/sha}","blobs_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/blobs{/sha}","tags_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/tags","branches_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/branches{/branch}","assignees_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/assignees{/user}","events_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/events","issue_events_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/events{/number}","hooks_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/hooks","teams_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/teams","collaborators_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/collaborators{/collaborator}","keys_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/keys{/key_id}","forks_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/forks","url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions","fork":false,"description":"A library to use SteemConnect in Firebase Functions.","html_url":"https://github.com/jakipatryk/steemconnect-firebase-functions","private":false,"owner":{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"},"full_name":"jakipatryk/steemconnect-firebase-functions","name":"steemconnect-firebase-functions","id":120048095},"user":{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"},"sha":"f3f7cb12bd25f653d895b571737d717ddb427d1a","ref":"feature/user-metadata","label":"jakipatryk:feature/user-metadata"},"statuses_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/statuses/f3f7cb12bd25f653d895b571737d717ddb427d1a","comments_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/22/comments","review_comment_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/comments{/number}","review_comments_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/22/comments","commits_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/22/commits","milestone":null,"labels":[{"default":false,"color":"6fdbc0","name":"docs","url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/labels/docs","id":859320247},{"default":true,"color":"a2eeef","name":"enhancement","url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/labels/enhancement","id":825419782}],"requested_teams":[],"requested_reviewers":[],"assignees":[{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"}],"assignee":{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"},"merge_commit_sha":"7106d483a0c39b86ede6c953860957aa4885a548","merged_at":"2018-03-20T17:21:52Z","closed_at":"2018-03-20T17:21:52Z","updated_at":"2018-03-20T17:21:56Z","created_at":"2018-03-20T16:59:16Z","body":"- created `setUserMetadata` function\r\n\r\nCloses #18 ","user":{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"},"title":"Function to set user metadata","locked":false,"state":"closed","number":22,"issue_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/22","patch_url":"https://github.com/jakipatryk/steemconnect-firebase-functions/pull/22.patch","diff_url":"https://github.com/jakipatryk/steemconnect-firebase-functions/pull/22.diff","html_url":"https://github.com/jakipatryk/steemconnect-firebase-functions/pull/22","id":176258129,"url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/22"},{"author_association":"OWNER","_links":{"statuses":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/statuses/3a4f0d475fc004017eedf1f60e73d9d512485026"},"commits":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/21/commits"},"review_comment":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/comments{/number}"},"review_comments":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/21/comments"},"comments":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/21/comments"},"issue":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/21"},"html":{"href":"https://github.com/jakipatryk/steemconnect-firebase-functions/pull/21"},"self":{"href":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/21"}},"base":{"repo":{"default_branch":"master","watchers":3,"open_issues":3,"forks":0,"license":{"url":"https://api.github.com/licenses/mit","spdx_id":"MIT","name":"MIT License","key":"mit"},"open_issues_count":3,"archived":false,"mirror_url":null,"forks_count":0,"has_pages":false,"has_wiki":true,"has_downloads":true,"has_projects":true,"has_issues":true,"language":"TypeScript","watchers_count":3,"stargazers_count":3,"size":201,"homepage":"https://steemprojects.com/projects/p/steemconnect-firebase-functions/","svn_url":"https://github.com/jakipatryk/steemconnect-firebase-functions","clone_url":"https://github.com/jakipatryk/steemconnect-firebase-functions.git","ssh_url":"git@github.com:jakipatryk/steemconnect-firebase-functions.git","git_url":"git://github.com/jakipatryk/steemconnect-firebase-functions.git","pushed_at":"2018-03-20T20:46:32Z","updated_at":"2018-03-20T20:46:34Z","created_at":"2018-02-03T01:11:22Z","deployments_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/deployments","releases_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/releases{/id}","labels_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/labels{/name}","notifications_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/notifications{?since,all,participating}","milestones_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/milestones{/number}","pulls_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls{/number}","issues_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues{/number}","downloads_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/downloads","archive_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/{archive_format}{/ref}","merges_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/merges","compare_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/compare/{base}...{head}","contents_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/contents/{+path}","issue_comment_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/comments{/number}","comments_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/comments{/number}","git_commits_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/commits{/sha}","commits_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/commits{/sha}","subscription_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/subscription","subscribers_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/subscribers","contributors_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/contributors","stargazers_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/stargazers","languages_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/languages","statuses_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/statuses/{sha}","trees_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/trees{/sha}","git_refs_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/refs{/sha}","git_tags_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/tags{/sha}","blobs_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/blobs{/sha}","tags_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/tags","branches_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/branches{/branch}","assignees_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/assignees{/user}","events_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/events","issue_events_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/events{/number}","hooks_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/hooks","teams_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/teams","collaborators_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/collaborators{/collaborator}","keys_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/keys{/key_id}","forks_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/forks","url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions","fork":false,"description":"A library to use SteemConnect in Firebase Functions.","html_url":"https://github.com/jakipatryk/steemconnect-firebase-functions","private":false,"owner":{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"},"full_name":"jakipatryk/steemconnect-firebase-functions","name":"steemconnect-firebase-functions","id":120048095},"user":{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"},"sha":"10c682779e13b77476418699f2f4a686ec9ee0a3","ref":"master","label":"jakipatryk:master"},"head":{"repo":{"default_branch":"master","watchers":3,"open_issues":3,"forks":0,"license":{"url":"https://api.github.com/licenses/mit","spdx_id":"MIT","name":"MIT License","key":"mit"},"open_issues_count":3,"archived":false,"mirror_url":null,"forks_count":0,"has_pages":false,"has_wiki":true,"has_downloads":true,"has_projects":true,"has_issues":true,"language":"TypeScript","watchers_count":3,"stargazers_count":3,"size":201,"homepage":"https://steemprojects.com/projects/p/steemconnect-firebase-functions/","svn_url":"https://github.com/jakipatryk/steemconnect-firebase-functions","clone_url":"https://github.com/jakipatryk/steemconnect-firebase-functions.git","ssh_url":"git@github.com:jakipatryk/steemconnect-firebase-functions.git","git_url":"git://github.com/jakipatryk/steemconnect-firebase-functions.git","pushed_at":"2018-03-20T20:46:32Z","updated_at":"2018-03-20T20:46:34Z","created_at":"2018-02-03T01:11:22Z","deployments_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/deployments","releases_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/releases{/id}","labels_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/labels{/name}","notifications_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/notifications{?since,all,participating}","milestones_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/milestones{/number}","pulls_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls{/number}","issues_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues{/number}","downloads_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/downloads","archive_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/{archive_format}{/ref}","merges_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/merges","compare_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/compare/{base}...{head}","contents_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/contents/{+path}","issue_comment_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/comments{/number}","comments_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/comments{/number}","git_commits_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/commits{/sha}","commits_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/commits{/sha}","subscription_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/subscription","subscribers_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/subscribers","contributors_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/contributors","stargazers_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/stargazers","languages_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/languages","statuses_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/statuses/{sha}","trees_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/trees{/sha}","git_refs_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/refs{/sha}","git_tags_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/tags{/sha}","blobs_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/git/blobs{/sha}","tags_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/tags","branches_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/branches{/branch}","assignees_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/assignees{/user}","events_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/events","issue_events_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/events{/number}","hooks_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/hooks","teams_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/teams","collaborators_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/collaborators{/collaborator}","keys_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/keys{/key_id}","forks_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/forks","url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions","fork":false,"description":"A library to use SteemConnect in Firebase Functions.","html_url":"https://github.com/jakipatryk/steemconnect-firebase-functions","private":false,"owner":{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"},"full_name":"jakipatryk/steemconnect-firebase-functions","name":"steemconnect-firebase-functions","id":120048095},"user":{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"},"sha":"3a4f0d475fc004017eedf1f60e73d9d512485026","ref":"feature/downvote","label":"jakipatryk:feature/downvote"},"statuses_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/statuses/3a4f0d475fc004017eedf1f60e73d9d512485026","comments_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/21/comments","review_comment_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/comments{/number}","review_comments_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/21/comments","commits_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/21/commits","milestone":null,"labels":[{"default":false,"color":"6fdbc0","name":"docs","url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/labels/docs","id":859320247},{"default":true,"color":"a2eeef","name":"enhancement","url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/labels/enhancement","id":825419782},{"default":false,"color":"f961ef","name":"refactoring","url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/labels/refactoring","id":872638386}],"requested_teams":[],"requested_reviewers":[],"assignees":[{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"}],"assignee":{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"},"merge_commit_sha":"864d084cd001480d65efd77eb70e4f424381bc8f","merged_at":"2018-03-20T14:30:22Z","closed_at":"2018-03-20T14:30:22Z","updated_at":"2018-03-20T14:30:26Z","created_at":"2018-03-20T13:24:09Z","body":"- created a `createVote` function which creates and returns a vote operation\r\n- created a `broadcastDownvote` function\r\n- refactored `broadcastUpvote` to use `createVote`\r\n\r\nCloses #16 ","user":{"site_admin":false,"type":"User","received_events_url":"https://api.github.com/users/jakipatryk/received_events","events_url":"https://api.github.com/users/jakipatryk/events{/privacy}","repos_url":"https://api.github.com/users/jakipatryk/repos","organizations_url":"https://api.github.com/users/jakipatryk/orgs","subscriptions_url":"https://api.github.com/users/jakipatryk/subscriptions","starred_url":"https://api.github.com/users/jakipatryk/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jakipatryk/gists{/gist_id}","following_url":"https://api.github.com/users/jakipatryk/following{/other_user}","followers_url":"https://api.github.com/users/jakipatryk/followers","html_url":"https://github.com/jakipatryk","url":"https://api.github.com/users/jakipatryk","gravatar_id":"","avatar_url":"https://avatars2.githubusercontent.com/u/18032838?v=4","id":18032838,"login":"jakipatryk"},"title":"Intuitive broadcasting downvote","locked":false,"state":"closed","number":21,"issue_url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/issues/21","patch_url":"https://github.com/jakipatryk/steemconnect-firebase-functions/pull/21.patch","diff_url":"https://github.com/jakipatryk/steemconnect-firebase-functions/pull/21.diff","html_url":"https://github.com/jakipatryk/steemconnect-firebase-functions/pull/21","id":176188641,"url":"https://api.github.com/repos/jakipatryk/steemconnect-firebase-functions/pulls/21"}],"platform":"github","type":"development","tags":["utopian-io","steemdev","dev","steemconnect","programming"],"users":["jakipatryk"],"links":["https://res.cloudinary.com/hpiynhbhq/image/upload/v1521590456/bk6x9bqxy1w5vfq9w3p5.png","https://github.com/jakipatryk/steemconnect-firebase-functions/pull/21/commits/b50e1e2e9cfa3e36d09381fbee34289c9c46d4c8","https://github.com/jakipatryk/steemconnect-firebase-functions/pull/21/commits/46c809e77e09ec16aeacd189c25d617c977076f0","https://github.com/jakipatryk/steemconnect-firebase-functions/pull/21/commits/8b5f06196fdc5cbaeed370ed90c3a629ef90b25c","https://github.com/jakipatryk/steemconnect-firebase-functions/pull/22/commits/f3f7cb12bd25f653d895b571737d717ddb427d1a","https://github.com/jakipatryk/steemconnect-firebase-functions/pull/23/commits/fdba789799e588e812381b3348124d08237c7e13"],"image":["https://res.cloudinary.com/hpiynhbhq/image/upload/v1521590456/bk6x9bqxy1w5vfq9w3p5.png"],"moderator":{"account":"vladimir-simovic","time":"2018-03-22T21:30:42.145Z","reviewed":true,"pending":false,"flagged":false},"questions":[{"question":"Is the project description formal?","answers":[{"value":"Yes it’s straight to the point","selected":true,"score":10},{"value":"Need more description ","selected":false,"score":5},{"value":"Not too descriptive","selected":false,"score":0}],"selected":0},{"question":"Is the language / grammar correct?","answers":[{"value":"Yes","selected":true,"score":20},{"value":"A few mistakes","selected":false,"score":10},{"value":"It's pretty bad","selected":false,"score":0}],"selected":0},{"question":"Was the template followed?","answers":[{"value":"Yes","selected":true,"score":10},{"value":"Partially","selected":false,"score":5},{"value":"No","selected":false,"score":0}],"selected":0},{"question":"How do you rate the amount of work?","answers":[{"value":"Very High","selected":false,"score":20},{"value":"High","selected":true,"score":16},{"value":"Medium","selected":false,"score":12},{"value":"Low","selected":false,"score":7},{"value":"Very Low","selected":false,"score":3}],"selected":1},{"question":"How do you rate the impact on the Project?","answers":[{"value":"Very High","selected":false,"score":20},{"value":"High","selected":false,"score":16},{"value":"Medium","selected":true,"score":12},{"value":"Low","selected":false,"score":7},{"value":"Very Low","selected":false,"score":3}],"selected":2}],"score":59}"
created2018-03-21 01:03:27
last_update2018-03-22 21:30:42
depth0
children3
last_payout2018-03-28 01:03:27
cashout_time1969-12-31 23:59:59
total_payout_value54.033 HBD
curator_payout_value23.008 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length5,762
author_reputation14,313,610,947,295
root_title"[steemconnect-firebase-functions] Version 1.3.0: downvoting, setting user metadata, and revoking access token"
beneficiaries
0.
accountutopian.pay
weight2,500
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id45,646,822
net_rshares29,700,641,352,753
author_curate_reward""
vote details (29)
@luckypower ·
Wow its a great post ever  @jakipatryk β™© ‒♬
properties (22)
authorluckypower
permlinkre-jakipatryk-steemconnect-firebase-functions-version-1-3-0-downvoting-setting-user-metadata-and-revoking-access-token-20180321t010444731z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"users":["jakipatryk"],"app":"steemit/0.1"}
created2018-03-21 01:04:51
last_update2018-03-21 01:04:51
depth1
children0
last_payout2018-03-28 01:04:51
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length43
author_reputation-973,981,471,413
root_title"[steemconnect-firebase-functions] Version 1.3.0: downvoting, setting user metadata, and revoking access token"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id45,646,974
net_rshares0
@utopian-io ·
### Hey @jakipatryk I am @utopian-io. I have just upvoted you!
#### Achievements
- You have less than 500 followers. Just gave you a gift to help you succeed!
- Seems like you contribute quite often. AMAZING!
#### Community-Driven Witness!
I am the first and only Steem Community-Driven Witness. <a href="https://discord.gg/zTrEMqB">Participate on Discord</a>. Lets GROW TOGETHER!
- <a href="https://v2.steemconnect.com/sign/account-witness-vote?witness=utopian-io&approve=1">Vote for my Witness With SteemConnect</a>
- <a href="https://v2.steemconnect.com/sign/account-witness-proxy?proxy=utopian-io&approve=1">Proxy vote to Utopian Witness with SteemConnect</a>
- Or vote/proxy on <a href="https://steemit.com/~witnesses">Steemit Witnesses</a>

[![mooncryption-utopian-witness-gif](https://steemitimages.com/DQmYPUuQRptAqNBCQRwQjKWAqWU3zJkL3RXVUtEKVury8up/mooncryption-s-utopian-io-witness-gif.gif)](https://steemit.com/~witnesses)

**Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x**
properties (22)
authorutopian-io
permlinkre-jakipatryk-steemconnect-firebase-functions-version-1-3-0-downvoting-setting-user-metadata-and-revoking-access-token-20180323t144045650z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"community":"utopian","app":"utopian/1.0.0"}
created2018-03-23 14:40:45
last_update2018-03-23 14:40:45
depth1
children0
last_payout2018-03-30 14:40:45
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,086
author_reputation152,955,367,999,756
root_title"[steemconnect-firebase-functions] Version 1.3.0: downvoting, setting user metadata, and revoking access token"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id46,162,012
net_rshares0
@vladimir-simovic ·
Thank you for the contribution. It has been approved.

You can contact us on [Discord](https://discord.gg/uTyJkNm).
**[[utopian-moderator]](https://utopian.io/moderators)**
πŸ‘  
properties (23)
authorvladimir-simovic
permlinkre-jakipatryk-steemconnect-firebase-functions-version-1-3-0-downvoting-setting-user-metadata-and-revoking-access-token-20180322t213056040z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"community":"utopian","app":"utopian/1.0.0"}
created2018-03-22 21:31:00
last_update2018-03-22 21:31:00
depth1
children0
last_payout2018-03-29 21:31:00
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length172
author_reputation56,930,790,558,862
root_title"[steemconnect-firebase-functions] Version 1.3.0: downvoting, setting user metadata, and revoking access token"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id46,026,569
net_rshares3,771,050,736
author_curate_reward""
vote details (1)