Skip to content

Commit

Permalink
Merge branch 'master' into testsUpdate
Browse files Browse the repository at this point in the history
  • Loading branch information
JJ-Cro authored Sep 30, 2024
2 parents f687a35 + 00f329f commit f4167eb
Show file tree
Hide file tree
Showing 15 changed files with 755 additions and 425 deletions.
89 changes: 89 additions & 0 deletions .github/workflows/templates-readme.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
name: Update README.md templates

on:
workflow_dispatch:

permissions:
contents: write # Grant write permissions to the contents

env:
FILE_NAME: README.md

jobs:
update-readme:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4

- uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'
registry-url: https://registry.npmjs.org/
cache: 'npm'

- name: Install
run: npm ci --ignore-scripts

- name: Get the current date and time
id: datetime
run: echo "BRANCH_NAME=$(date +'actions_templates_%Y_%m_%d_%H%M%S')" >> $GITHUB_ENV

- name: Create update-template.sh script
run: |
cat << 'EOF' > update-template.sh
#!/bin/bash
TEMPLATE_VALUE=$(curl -s $TEMPLATE_URL)
perl -0777 -i -pe "
my \$tag = quotemeta('<!-- template_${TEMPLATE_TAG} -->');
my \$end_tag = quotemeta('<!-- template_${TEMPLATE_TAG}_end -->');
my \$replacement = '${TEMPLATE_VALUE}';
# Match the tag, then any amount of whitespace (including newlines), then the replacement, then any amount of whitespace, then the end tag.
s/(\$tag)(\s*)(.*?)(\s*)(\$end_tag)/\$1\n\$replacement\n\$5/s;
" "$FILE_NAME"
EOF
chmod +x update-template.sh
cat update-template.sh
- name: Fetch and update RELATED PROJECTS template
run: ./update-template.sh
env:
TEMPLATE_URL: https://raw.githubusercontent.com/wiki/tiagosiebler/awesome-crypto-examples/Related-projects.md
TEMPLATE_TAG: related_projects

- name: Fetch and update CONTRIBUTIONS template
run: ./update-template.sh
env:
TEMPLATE_URL: https://raw.githubusercontent.com/wiki/tiagosiebler/awesome-crypto-examples/Contributions-%26-Thanks.md
TEMPLATE_TAG: contributions

- name: Fetch and update STAR HISTORY template
run: ./update-template.sh
env:
TEMPLATE_URL: https://raw.githubusercontent.com/wiki/tiagosiebler/awesome-crypto-examples/Star-History.md
TEMPLATE_TAG: star_history

- name: Check for changes before running linter
run: git diff

- name: Check for changes | PR URL HERE
id: commitIfChanged
run: |
npx prettier -w README.md
if git diff --quiet; then
echo "No changes to commit"
exit 0
fi
git config --global user.name 'github-actions[bot]'
git config --global user.email 'github-actions[bot]@users.noreply.github.com'
git checkout -b ${{ env.BRANCH_NAME }}
git add $FILE_NAME
git commit -m 'chore(): ${{ env.FILE_NAME }} template sections'
git push origin ${{ env.BRANCH_NAME }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
28 changes: 21 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,22 +43,27 @@ Node.js & JavaScript SDK for the Bybit REST APIs and WebSockets:
- Issues? Check the [issues tab](https://github.com/tiagosiebler/bybit-api/issues).
- Discuss & collaborate with other node devs? Join our [Node.js Algo Traders](https://t.me/nodetraders) engineering community on telegram.

<!-- template_related_projects -->

## Related projects

Check out my related JavaScript/TypeScript/Node.js projects:

- Try my REST API & WebSocket SDKs:
- [Bybit-api Node.js SDK](https://www.npmjs.com/package/bybit-api)
- [Binance Node.js SDK](https://www.npmjs.com/package/binance)
- [Okx-api Node.js SDK](https://www.npmjs.com/package/okx-api)
- [Binance Node.js SDK](https://www.npmjs.com/package/binance)
- [Gateio-api Node.js SDK](https://www.npmjs.com/package/gateio-api)
- [Bitget-api Node.js SDK](https://www.npmjs.com/package/bitget-api)
- [Kucoin-api Node.js SDK](https://www.npmjs.com/package/kucoin-api)
- [Coinbase-api Node.js SDK](https://www.npmjs.com/package/coinbase-api)
- [Bitmart-api Node.js SDK](https://www.npmjs.com/package/bitmart-api)
- Try my misc utilities:
- [OrderBooks Node.js](https://www.npmjs.com/package/orderbooks)
- [Crypto Exchange Account State Cache](https://www.npmjs.com/package/accountstate)
- Check out my examples:
- [awesome-crypto-examples Node.js](https://github.com/tiagosiebler/awesome-crypto-examples)
<!-- template_related_projects_end -->

## Documentation

Expand Down Expand Up @@ -419,11 +424,9 @@ The bundle can be found in `dist/`. Altough usage should be largely consistent,
---
## Contributions & Thanks
<!-- template_contributions -->
### Donations
#### tiagosiebler
### Contributions & Thanks
Have my projects helped you? Share the love, there are many ways you can show your thanks:
Expand All @@ -433,7 +436,14 @@ Have my projects helped you? Share the love, there are many ways you can show yo
- Or buy me all the coffee:
- ETH(ERC20): `0xA3Bda8BecaB4DCdA539Dc16F9C54a592553Be06C` <!-- metamask -->
For more ways to give thanks & support my efforts, visit [Contributions & Thanks](https://github.com/tiagosiebler/awesome-crypto-examples/wiki/Contributions-&-Thanks)!
<!---
old ones:
- BTC: `1C6GWZL1XW3jrjpPTS863XtZiXL1aTK7Jk`
- BTC(SegWit): `bc1ql64wr9z3khp2gy7dqlmqw7cp6h0lcusz0zjtls`
- ETH(ERC20): `0xe0bbbc805e0e83341fadc210d6202f4022e50992`
- USDT(TRC20): `TA18VUywcNEM9ahh3TTWF3sFpt9rkLnnQa
-->
<!-- template_contributions_end -->
#### pixtron
Expand All @@ -447,6 +457,10 @@ An early generation of this library was started by @pixtron. If this library hel
Contributions are encouraged, I will review any incoming pull requests. See the issues tab for todo items.
<!-- template_star_history -->
## Star History
[![Star History Chart](https://api.star-history.com/svg?repos=tiagosiebler/bybit-api,tiagosiebler/binance,tiagosiebler/orderbooks,tiagosiebler/okx-api,tiagosiebler/bitget-api,tiagosiebler/awesome-crypto-examples,tiagosiebler/bitmart-api,tiagosiebler/gateio-api&type=Date)](https://star-history.com/#tiagosiebler/bybit-api&tiagosiebler/binance&tiagosiebler/orderbooks&tiagosiebler/okx-api&tiagosiebler/bitget-api&tiagosiebler/awesome-crypto-examples&tiagosiebler/bitmart-api&tiagosiebler/gateio-api&Date)
[![Star History Chart](https://api.star-history.com/svg?repos=tiagosiebler/bybit-api,tiagosiebler/okx-api,tiagosiebler/binance,tiagosiebler/bitget-api,tiagosiebler/bitmart-api,tiagosiebler/gateio-api,tiagosiebler/kucoin-api,tiagosiebler/coinbase-api,tiagosiebler/orderbooks,tiagosiebler/accountstate,tiagosiebler/awesome-crypto-examples&type=Date)](https://star-history.com/#tiagosiebler/bybit-api&tiagosiebler/okx-api&tiagosiebler/binance&tiagosiebler/bitget-api&tiagosiebler/bitmart-api&tiagosiebler/gateio-api&tiagosiebler/kucoin-api&tiagosiebler/coinbase-api&tiagosiebler/orderbooks&tiagosiebler/accountstate&tiagosiebler/awesome-crypto-examples&Date)
<!-- template_star_history_end -->
19 changes: 19 additions & 0 deletions examples/apidoc/V5/Account/get-transaction-log-classic.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
const { RestClientV5 } = require('bybit-api');

const client = new RestClientV5({
testnet: true,
key: 'apikey',
secret: 'apisecret',
});

client
.getClassicTransactionLogs({
limit: 1,
symbol: 'BTCUSD',
})
.then((response) => {
console.log(response);
})
.catch((error) => {
console.error(error);
});
7 changes: 6 additions & 1 deletion examples/apidoc/V5/Asset/get-single-coin-balance.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,12 @@ const client = new RestClientV5({
});

client
.getAllCoinsBalance({ accountType: 'FUND', coin: 'USDC' })
.getCoinBalance({
accountType: 'UNIFIED',
coin: 'USDT',
toAccountType: 'FUND',
withLtvTransferSafeAmount: 1,
})
.then((response) => {
console.log(response);
})
Expand Down
28 changes: 27 additions & 1 deletion examples/apidoc/V5/Market/get-instruments-info.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ const { RestClientV5 } = require('bybit-api');
const client = new RestClientV5({
testnet: true,
});

// linear
client
.getInstrumentsInfo({
category: 'linear',
Expand All @@ -15,3 +15,29 @@ client
.catch((error) => {
console.error(error);
});

// option
client
.getInstrumentsInfo({
category: 'option',
symbol: 'ETH-3JAN23-1250-P',
})
.then((response) => {
console.log(response);
})
.catch((error) => {
console.error(error);
});

// spot
client
.getInstrumentsInfo({
category: 'spot',
symbol: 'BTCUSDT',
})
.then((response) => {
console.log(response);
})
.catch((error) => {
console.error(error);
});
29 changes: 29 additions & 0 deletions examples/apidoc/V5/Market/get-tickers.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ const client = new RestClientV5({
testnet: true,
});

// inverse
client
.getTickers({
category: 'inverse',
Expand All @@ -15,3 +16,31 @@ client
.catch((error) => {
console.error(error);
});

// option

client
.getTickers({
category: 'option',
symbol: 'BTC-30DEC22-18000-C',
})
.then((response) => {
console.log(response);
})
.catch((error) => {
console.error(error);
});

// spot

client
.getTickers({
category: 'spot',
symbol: 'BTCUSDT',
})
.then((response) => {
console.log(response);
})
.catch((error) => {
console.error(error);
});
2 changes: 1 addition & 1 deletion examples/apidoc/V5/User/get-affiliate-user-info.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ const client = new RestClientV5({
});

client
.deleteSubApiKey()
.getAffiliateUserInfo({ uid: '1513500' })
.then((response) => {
console.log(response);
})
Expand Down
57 changes: 57 additions & 0 deletions examples/rest-v5-custom-url.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
import { RestClientV5 } from '../src/index';

// or
// import { RestClientV5 } from 'bybit-api';

/**
* The first parameter of the REST client allows you to pass any configuration parameters supported by the SDK.
*
* These include API keys, if you wish to use private endpoints, but also expose other features such as
* setting a custom base URL (e.g. for Turkish users).
*
* Refer to the API documentation for a complete list of domains: https://bybit-exchange.github.io/docs/v5/guide#authentication
*/
const client = new RestClientV5({
/**
* You can pass a completely custom base URL,
* e.g. if you're trying to use a domain that hasn't been added yet (please let us know)
*/
// baseUrl: 'https://api5.bybit.com',
//
//
/**
*
* There are also predefined API regions, which you can easily use with the "apiRegion" property:
*
*/
//
//
// default: routes to api.bybit.com
// apiRegion: 'default',
//
//
// bytick: routes to api.bytick.com
// apiRegion: 'bytick',
//
//
// NL: routes to api.bybit.nl (for Netherland users)
// apiRegion: 'NL',
//
//
// HK: routes to api.byhkbit.com (for Hong Kong users)
// apiRegion: 'HK',
//
//
// TK: routes to api.bybit-tr.com (for Turkey users)
// apiRegion: 'TK',
});

(async () => {
try {
const time1 = await client.getServerTime();

console.log('time res: ', { time1 });
} catch (e) {
console.error('request failed: ', e);
}
})();
Loading

0 comments on commit f4167eb

Please sign in to comment.