rest-client-generator

REST Client Generator Skill

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "rest-client-generator" with this command: npx skills add ntaksh42/agents/ntaksh42-agents-rest-client-generator

REST Client Generator Skill

REST API クライアントコードを生成するスキルです。

主な機能

  • Axios クライアント: JavaScript/TypeScript

  • Fetch API: モダンJavaScript

  • Requests: Python

  • HTTPClient: Java

Axios (TypeScript)

import axios, { AxiosInstance } from 'axios';

class UserAPI { private client: AxiosInstance;

constructor(baseURL: string) { this.client = axios.create({ baseURL, timeout: 5000, headers: { 'Content-Type': 'application/json' } });

this.setupInterceptors();

}

private setupInterceptors() { this.client.interceptors.request.use( (config) => { const token = localStorage.getItem('token'); if (token) { config.headers.Authorization = Bearer ${token}; } return config; } );

this.client.interceptors.response.use(
  (response) => response,
  (error) => {
    if (error.response?.status === 401) {
      // Handle unauthorized
    }
    return Promise.reject(error);
  }
);

}

async getUsers(): Promise<User[]> { const { data } = await this.client.get('/users'); return data; }

async createUser(user: CreateUserDTO): Promise<User> { const { data } = await this.client.post('/users', user); return data; }

async updateUser(id: string, user: UpdateUserDTO): Promise<User> { const { data } = await this.client.put(/users/${id}, user); return data; }

async deleteUser(id: string): Promise<void> { await this.client.delete(/users/${id}); } }

export const userAPI = new UserAPI('https://api.example.com');

Python (requests)

import requests from typing import List, Optional

class UserAPI: def init(self, base_url: str, api_key: str): self.base_url = base_url self.session = requests.Session() self.session.headers.update({ 'Authorization': f'Bearer {api_key}', 'Content-Type': 'application/json' })

def get_users(self) -> List[dict]:
    response = self.session.get(f'{self.base_url}/users')
    response.raise_for_status()
    return response.json()

def create_user(self, user_data: dict) -> dict:
    response = self.session.post(
        f'{self.base_url}/users',
        json=user_data
    )
    response.raise_for_status()
    return response.json()

def update_user(self, user_id: str, user_data: dict) -> dict:
    response = self.session.put(
        f'{self.base_url}/users/{user_id}',
        json=user_data
    )
    response.raise_for_status()
    return response.json()

def delete_user(self, user_id: str) -> None:
    response = self.session.delete(f'{self.base_url}/users/{user_id}')
    response.raise_for_status()

バージョン情報

  • Version: 1.0.0

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

code-smell-detector

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

terraform-azure-devops

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

code-reviewer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

azure-devops-migration

No summary provided by upstream source.

Repository SourceNeeds Review