PHPackages                             agustincarmona/laravel-api-schema - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. agustincarmona/laravel-api-schema

ActiveLibrary[API Development](/categories/api)

agustincarmona/laravel-api-schema
=================================

Publish schema, for each public method of API controllers

0.1.1(10y ago)127MITPHPPHP &gt;=5.3.0

Since Sep 27Pushed 10y ago2 watchersCompare

[ Source](https://github.com/agustincarmona/laravel-api-restful-schema)[ Packagist](https://packagist.org/packages/agustincarmona/laravel-api-schema)[ RSS](/packages/agustincarmona-laravel-api-schema/feed)WikiDiscussions master Synced 2d ago

READMEChangelog (2)Dependencies (1)Versions (3)Used By (0)

Publica el schema de entrada y salida de tu api
===============================================

[](#publica-el-schema-de-entrada-y-salida-de-tu-api)

Los que habéis usado servicios web de ASP.NET o Java estaréis familiarizados con el formato WSDL. El objetivo de este formato es devolver la estructura de datos de entrada y datos de salida para cada método del API. Esto es un útil porque te permite montar objetos o clases dinámicamente a partir del schema de un servicio web.

Pues bien, imaginar que estamos usando un API y queremos montar unos objetos para encapsular la respuesta del servicio web y trabajar esos datos. Nos tocaría hacer una transformación de esos datos en nuestra estructura de clases.

Ahora imaginar que podéis construir los modelos dinámicamente sólo consultando el schema del servicio web, esto nos ahorraría tener que buscar la documentación para ver la nueva estructura, implementar las nuevas propiedades en nuestros modelos y adaptar nuestra aplicación.

**Instalación**

```
$ composer require "agustincarmona/laravel-api-schema"

```

**Cómo se usa**

Añadir el trait APISchema\\Http\\Traits\\SchemeTraitController en tú controlador.

```
class MyController extends Controller {
  use APISchema\Http\Traits\SchemeTraitController;

}
```

Crear una clase con los parámetros de entrada de cada acción del controlador.

```
class formInput extends InputModel {

  /**
  * Sample parameter 1
  * @var int
  **/
  public $id;

  /**
  * Sample parameter 2
  * @var string
  **/
  public $name;

    /**
     * @see \Validator
     * @return array
     */
    public function getValidator() {
        return [];
    }

}
```

En cada acción del controlador añadir un comentario para definir la clase que contiene la definición de los datos de entrada del método.

```
    /**
     * @input formInput
     * @return mixed
     */
	public function postIndex()
	{
		return View::make('form');
	}
```

###  Health Score

24

—

LowBetter than 31% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

3933d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/cdf7b21f66f813e653bb4c09052d6c7b81099a36be3faecef03b47873736db93?d=identicon)[agustincarmona](/maintainers/agustincarmona)

---

Top Contributors

[![agustincarmona](https://avatars.githubusercontent.com/u/9007310?v=4)](https://github.com/agustincarmona "agustincarmona (5 commits)")

---

Tags

apilaravelschemacontrollerrestful

### Embed Badge

![Health badge](/badges/agustincarmona-laravel-api-schema/health.svg)

```
[![Health](https://phpackages.com/badges/agustincarmona-laravel-api-schema/health.svg)](https://phpackages.com/packages/agustincarmona-laravel-api-schema)
```

###  Alternatives

[darkaonline/l5-swagger

OpenApi or Swagger integration to Laravel

3.0k37.6M134](/packages/darkaonline-l5-swagger)[knuckleswtf/scribe

Generate API documentation for humans from your Laravel codebase.✍

2.3k14.2M62](/packages/knuckleswtf-scribe)[openai-php/laravel

OpenAI PHP for Laravel is a supercharged PHP API client that allows you to interact with the Open AI API

3.7k9.5M89](/packages/openai-php-laravel)[statamic/cms

The Statamic CMS Core Package

4.8k3.6M988](/packages/statamic-cms)[kyon147/laravel-shopify

Shopify package for Laravel to aide in app development

485302.1k](/packages/kyon147-laravel-shopify)[mozex/anthropic-laravel

Laravel integration for the Anthropic API: facade, config publishing, install command, testing fakes, messages, streaming, tool use, thinking, and batches.

74331.3k1](/packages/mozex-anthropic-laravel)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
