rest-api | Skill Performance & Reviews | TopRankSkills

TopRank Skills

Home / Skills / tools / rest-api

rest-api

maintained by bitsoex

star 35 account_tree 30 verified_user MIT License
bolt View GitHub

name: rest-api description: > REST API standards for Java Spring services. Covers Bitso API guidelines, authentication integration, OpenAPI documentation, and RFC-37 service documentation. Use when creating or maintaining REST endpoints. compatibility: Java projects using Spring Boot with REST APIs metadata: version: "1.0.0" technology: java category: infrastructure tags: - java - rest-api - rfc-37 - openapi - authentication

REST API

REST API standards for Java Spring services.

When to use this skill

  • Creating REST endpoints in Spring services
  • Integrating Bitso authentication
  • Documenting APIs with OpenAPI
  • Setting up service documentation (RFC-37)
  • Testing authenticated endpoints

Skill Contents

Sections

Available Resources

📚 references/ - Detailed documentation


Quick Start

1. Add Authentication Dependency

implementation libs.bitso.api.base.spring.webapi

2. Configure gRPC Client

grpc:
  client:
    user-security:
      address: dns:/${USER_SECURITY_HOST:localhost}:${GRPC_PORT:8201}
      negotiation-type: PLAINTEXT

3. Create Controller

@RestController
@RequestMapping("/")
public class MyController {

    @Autowired
    SpringHttpResponseFactory responseFactory;

    @Autowired
    WebAuthenticationContext authenticationContext;

    @GetMapping("/private")
    @WebAPI(WebAPIType.PRIVATE)
    public ResponseEntity<?> privateEndpoint() {
        Long userId = authenticationContext.getPrincipalId();
        return responseFactory.ok(userId);
    }
}

Authentication

Configuration Bean

@Configuration
public class UserSecurityContextConfiguration {
    @Bean
    @Primary
    public AuthenticationService authenticationService(
        @GrpcClient("user-security") AuthorizationServiceV1BlockingStub stub,
        @Qualifier("userSecurityResilienceConfig") ResilienceConfiguration config
    ) {
        return new ProtoShimAuthenticationService(config, stub);
    }
}

Component Scan

Ensure your main application scans Bitso components:

@SpringBootApplication
@ComponentScan("com.bitso.*")
public class MyApplication {
    public static void main(String[] args) {
        SpringApplication.run(MyApplication.class, args);
    }
}

Documentation

OpenAPI Specification

All endpoints should be documented under ./docs/api/rest/openapi.yaml

RFC-37 Documentation Structure

docs/
├── api/
│   ├── async/
│   ├── grpc/
│   └── rest/
├── decisions/
├── <domain-name>/
├── runbooks/
└── how-tos/
    └── local-execution.md

References

Reference Description
references/guidelines.md API guidelines, authentication, testing
references/documentation.md RFC-37 documentation standards

Related Rules

  • .cursor/rules/java-rest-api-guidelines.mdc - Full API guidelines
  • .cursor/rules/java-service-documentation.mdc - RFC-37 documentation

Related Skills

Skill Purpose
grpc-standards gRPC service standards
java-testing Testing REST endpoints

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!

Skill Details

GitHub Stars 35
GitHub Forks 30
Created Jan 2026
Last Updated 5个月前
tools tools productivity tools

Related Skills

planning-with-files
chevron_right
agent-browser
chevron_right
building-agents
chevron_right
nestjs-expert
chevron_right
notebooklm
chevron_right

Build your own?

Join 12,000+ developers contributing to the Claude ecosystem.