🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

@robinpath/api

Package Overview
Dependencies
Maintainers
4
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@robinpath/api

Generic REST client with named credential profiles (bearer / basic / api_key). Wraps fetch() with base-URL resolution, structured error envelopes, and download/upload helpers.

latest
npmnpm
Version
0.3.0
Version published
Weekly downloads
22
-81.36%
Maintainers
4
Weekly downloads
 
Created
Source

@robinpath/api

HTTP client for making requests to external APIs with profiles, auth, download/upload, and auto-JSON parsing

Category Functions Auth License

Why use this module?

The api module lets you:

  • Send a GET request to a URL and return the response body (auto-parses JSON)
  • Send a POST request with a JSON body
  • Send a PUT request with a JSON body
  • Send a PATCH request with a partial JSON body
  • Send a DELETE request

All functions are callable directly from RobinPath scripts with a simple, consistent API.

Installation

robinpath add @robinpath/api

Quick Start

1. Set up credentials

api.setAuth "github" "bearer" "ghp_xxxxxxxxxxxx"

2. Send a POST request with a JSON body

api.post "https://api.example.com/users" {"name": "Alice", "email": "alice@example.com"}

Available Functions

FunctionDescription
api.getSend a GET request to a URL and return the response body (auto-parses JSON)
api.postSend a POST request with a JSON body
api.putSend a PUT request with a JSON body
api.patchSend a PATCH request with a partial JSON body
api.deleteSend a DELETE request
api.headSend a HEAD request and return response headers only
api.downloadDownload a file from a URL and save it to disk
api.uploadUpload a file as multipart/form-data
api.createProfileCreate a named API profile with base URL, default headers, and timeout
api.setAuthSet authentication on an existing profile
api.setHeadersMerge additional default headers into an existing profile
api.requestSend a generic HTTP request with an explicit method string

Examples

Send a POST request with a JSON body

api.post "https://api.example.com/users" {"name": "Alice", "email": "alice@example.com"}

Send a PUT request with a JSON body

api.put "https://api.example.com/users/1" {"name": "Bob"}

Send a PATCH request with a partial JSON body

api.patch "https://api.example.com/users/1" {"email": "new@example.com"}

Integration with RobinPath

import { RobinPath } from "@wiredwp/robinpath";
import Module from "@robinpath/api";

const rp = new RobinPath();
rp.registerModule(Module.name, Module.functions);
rp.registerModuleMeta(Module.name, Module.functionMetadata);

const result = await rp.executeScript(`
  api.setAuth "github" "bearer" "ghp_xxxxxxxxxxxx"
  api.post "https://api.example.com/users" {"name": "Alice", "email": "alice@example.com"}
`);

Full API Reference

See MODULE.md for complete documentation including all parameters, return types, error handling, and advanced examples.

License

MIT

Keywords

api

FAQs

Package last updated on 06 May 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts