Skip to main content


All PSX components are framework independent and can be easily used in many different environments. The following page provides an overview about available integrations:


In development


In development


PSX is a framework dedicated to build REST APIs. All our components have evolved out of this framework but currently our main focus is to develop and extend our framework independent components. The framework is still in active use at Fusio, which is an open source API management system. If you like to try a different framework dedicated to API development feel free to check out the repository. To give you a first impression a normal controller in PSX always represents a HTTP resource and it looks like:


#[Description('Collection endpoint')]
class CollectionPopo extends ControllerAbstract
private Population $populationService;

#[QueryParam(name: "startIndex", type: "integer")]
#[QueryParam(name: "count", type: "integer")]
#[Outgoing(code: 200, schema: Collection::class)]
protected function doGet(HttpContextInterface $context)
return $this->populationService->getAll(

#[Incoming(schema: Entity::class)]
#[Outgoing(code: 201, schema: Message::class)]
protected function doPost($record, HttpContextInterface $context)

$message = new Message();
$message->setMessage('Create population successful');
return $message;