No description
Find a file
2026-04-01 12:56:05 -05:00
.github update(style): copy button and list rendering 2024-05-09 22:18:12 -05:00
docs update(doc): added spanish & chinese 2026-03-31 03:42:07 -05:00
src fix(sec): move to sanitize-html 2026-04-01 12:56:05 -05:00
.editorconfig Initial commit 2023-05-02 20:57:48 -05:00
.eslintignore Initial commit 2023-05-02 20:57:48 -05:00
.eslintrc Initial commit 2023-05-02 20:57:48 -05:00
.gitignore update(feat): added hidden flag 2025-09-21 17:12:17 -05:00
.npmrc Initial commit 2023-05-02 20:57:48 -05:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2024-04-26 12:31:24 -05:00
CONTRIBUTING.md update(doc): added spanish & chinese 2026-03-31 03:42:07 -05:00
esbuild.config.mjs update(style): copy button and list rendering 2024-05-09 22:18:12 -05:00
LICENSE v0.0.1 2023-05-02 21:55:17 -05:00
manifest.json fix(sec): move to sanitize-html 2026-04-01 12:56:05 -05:00
package-lock.json fix(sec): move to sanitize-html 2026-04-01 12:56:05 -05:00
package.json fix(sec): move to sanitize-html 2026-04-01 12:56:05 -05:00
README.es.md fix(sec): move to sanitize-html 2026-04-01 12:56:05 -05:00
README.md fix(sec): move to sanitize-html 2026-04-01 12:56:05 -05:00
README.zh.md fix(sec): move to sanitize-html 2026-04-01 12:56:05 -05:00
styles.css Merge branch 'master' into v2 2025-02-20 15:41:27 -05:00
TODOS-v2.md BREAKING CHANGE: complete rebuild of plugin(02182025) 2025-02-20 14:38:19 -05:00
tsconfig.json fix(sec): move to sanitize-html 2026-04-01 12:56:05 -05:00
version-bump.mjs Initial commit 2023-05-02 20:57:48 -05:00
versions.json Initial commit 2023-05-02 20:57:48 -05:00

APIR - APIRequest

Docs site Obsidian plugin release GitHub release (latest SemVer) GitHub Release

Español 中文

This Obsidian plugin enables users to make API requests directly within their notes and display the response in a code-block.

🔒 Security

This plugin implements comprehensive security measures including:

  • Input validation for URLs, paths, and user data
  • XSS prevention through HTML sanitization
  • Protection against directory traversal attacks
  • Safe JSONPath expression evaluation
  • Secure localStorage handling

🚀 Installation

The plugin can be installed from within Obsidian.

Obsidian Community Plugin Browser

  • Go to Settings -> Community plugins
  • Make sure Restricted mode is off
  • Click Browse
  • Search for APIRequest
  • Click Install and then Enable

🛠️ Usage

Read documentation here

To-do

Check all changes on TODOS-v2.md

  • Translate (& update) documentation
  • Data re-usage ({{ls.UUID>JSONPath}} syntax, where ls stands for localStorage)
  • Support for comments using # or // syntax
  • Inline query from response (using Dataview)
  • Add tests (!!!)
  • Re-implement repeat flag (repeat requests X times or every X seconds)
  • Security improvements (input validation, XSS prevention, path traversal protection)
  • TypeScript type safety improvements
  • Comprehensive error handling

🤝 Contributing

Contributions are welcome! Please read our Contributing Guidelines before submitting a pull request.

Development

# Install dependencies
npm install

# Build
npm run build

# Development mode (auto-rebuild)
npm run dev

For more details, see CONTRIBUTING.md.

🔒 Security Best Practices

When using this plugin:

  1. Use HTTPS: Always use HTTPS URLs for API requests
  2. Protect API Keys: Store API keys in global variables, not in notes
  3. Review Cached Data: Regularly clear old cached responses
  4. Validate Sources: Only connect to trusted API endpoints

❤️ Sponsors

✍️ Feedback and Contributions

If you encounter any issues or have feedback on the plugin, feel free to open an issue on the GitHub repository.

Contributions are also welcome!