abp-apilisted
Install: claude install-skill burakdmir/abp-skills
# ABP Framework — API Development
ABP Framework v10.4 API development. Auto API Controllers, Dynamic/Static C# Clients, Swagger, API Versioning.
## Trigger
- "ABP API controller"
- "ABP auto controller"
- "ABP dynamic client"
- "ABP swagger"
- "ABP API versioning"
- "ABP REST API"
## Auto API Controllers
```csharp
PreConfigure<AbpAspNetCoreMvcOptions>(options =>
{
options.ConventionalControllers.Create(typeof(BookStoreApplicationModule).Assembly);
});
```
### HTTP Method Mapping
| Prefix | HTTP |
|---|---|
| `GetList`, `GetAll`, `Get` | GET |
| `Put`, `Update` | PUT |
| `Delete`, `Remove` | DELETE |
| `Create`, `Add`, `Insert`, `Post` | POST |
| `Patch` | PATCH |
### Route Examples
| Method | Route |
|---|---|
| `GetAsync(Guid id)` | `/api/app/book/{id}` |
| `GetListAsync()` | `/api/app/book` |
| `CreateAsync(CreateBookDto input)` | `/api/app/book` |
| `UpdateAsync(Guid id, UpdateBookDto input)` | `/api/app/book/{id}` |
| `DeleteAsync(Guid id)` | `/api/app/book/{id}` |
### RemoteService
```csharp
[RemoteService(IsEnabled = false)] // Don't expose as API
public class PersonAppService : ApplicationService { }
```
## Dynamic C# Client Proxies
```bash
abp add-package Volo.Abp.Http.Client
```
```csharp
context.Services.AddHttpClientProxies(typeof(BookStoreApplicationContractsModule).Assembly);
```
```json
{ "RemoteServices": { "Default": { "BaseUrl": "http://localhost:53929/" } } }
```
```csharp
/