Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Build Status Coverage Status PHPStan Latest Stable Version Minimum PHP Version License

API Blueprint Parser

API Blueprint is a powerful high-level API description language for web APIs.

Through that's project it's possible parse .apib files, get all their properties and generate all files needed to push a new SDK.

How do I get started?

NOTE: Blueprint SDK Maker depends on the Drafter library. Please see that repo for build instructions.

To generate standalone phar file, set the following in your php.ini:

phar.readonly = Off

If you don't need generate phar, run Blueprint SDK Maker using the option --no-phar.

Download the latest phar here.

You should put it anywhere that facilitates its accessibility (such /usr/local/bin) and chmod should be 755. You can even rename it to just the box to avoid having to type the .phar extension every time.

Parsing .apib files

Run the follow command replacing <filename.apib> by your .apib file. The default output of this command is a directory called build containing the source of your SDK and a phar (api.phar) to use your SDK standalone.

blueprint-sdk-maker make <filename.apib>

Example of using generated SDK

From phar file

Create file called test.php into same directory of api.phar and run test.php

use BlueprintSdk\Core\Api;

require 'api.phar';
$api = new Api();
$return = $api->Entity->getYourEndpoint('ARGUMENT-X');

From composer file

Add the content of the follow composer.json file into composer.json file of your project replacing <YourGithubAccout> and <TheProjectName> for your data and run composer install.

    "require" : {
        "<YourGithubAccout>/<TheProjectName>" : "dev-master"
    "repositories" : [{
            "type" : "vcs",
            "url" : "<YourGithubAccout>/<TheProjectName>"


If you are interested in fixing issues and contributing directly to the code base, please see the document How to Contribute,


Licensed under the MIT License.