AgentStack
SKILL verified MIT Self-run

Abp Api

skill-burakdmir-abp-skills-abp-api · by burakdmir

ABP Framework v10.4 API development: Auto API Controllers, dynamic and static C#/JS client proxies, Swagger, API versioning, Integration Services. Use when you need a REST API, controller, dynamic proxy or client generation in ABP.

No reviews yet
0 installs
2 views
0.0% view→install

Install

$ agentstack add skill-burakdmir-abp-skills-abp-api

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Abp Api? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

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

PreConfigure(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

[RemoteService(IsEnabled = false)]  // Don't expose as API
public class PersonAppService : ApplicationService { }

Dynamic C# Client Proxies

abp add-package Volo.Abp.Http.Client
context.Services.AddHttpClientProxies(typeof(BookStoreApplicationContractsModule).Assembly);
{ "RemoteServices": { "Default": { "BaseUrl": "http://localhost:53929/" } } }
// Usage — inject the interface
var books = await _bookAppService.GetListAsync();

Static C# Client Proxies

abp generate-proxy -t csharp
abp generate-proxy -t csharp --without-contracts

Swagger

context.Services.AddAbpSwaggerGen(options =>
{
    options.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
});

// Init
app.UseSwagger();
app.UseAbpSwaggerUI(options => options.SwaggerEndpoint("/swagger/v1/swagger.json", "v1"));

API Versioning

[ApiVersion("1.0")]
[ApiVersion("2.0")]
public class BookAppService : ApplicationService, IBookAppService { }

Best Practices

  1. Use Auto API Controllers — don't write controllers manually
  2. Use dynamic client proxies — don't use HttpClient manually
  3. Prefer static proxies in production
  4. Add JWT auth in Swagger
  5. Ensure backward compatibility with API versioning

Related

[DDD](../abp-ddd/SKILL.md) · [UI](../abp-ui/SKILL.md) · [Microservices](../abp-microservices/SKILL.md) · [Authorization](../abp-authorization/SKILL.md) · Docs: https://abp.io/docs/latest/framework/api-development

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.