PostmanGeneratorBundle
This bundle is not necessary anymore if you use API Platform 2.0 or superior. API Platform now supports natively Swagger and Postman is able to create collections from a Swagger documentation., (*1)
Generator for Postman collection based on API Platform., (*2)
, (*3)
Installation
Install this bundle through Composer:, (*4)
composer require --dev api-platform/postman-collection-generator
Using Symfony, update your AppKernel.php
file:, (*5)
public function registerBundles()
{
...
if ($this->getEnvironment() != 'prod') {
...
$bundles[] = new PostmanGeneratorBundle\PostmanGeneratorBundle();
}
}
Configuration
This library requires some configuration. Edit your app/config_dev.yml
file as following:, (*6)
postman_generator:
name: Name of your API # Required
description: Description of your API # Optional, default: null
baseUrl: http://www.example.com # Required
public: false # Optional, default: false
authentication: oauth2 # Optional, default: null
defaultLocale: fr_FR # Optional, default: en_GB
Usage
This bundle provides a unique command to automatically generate a Postman collection based on your API Platform
project configuration. Run php app/console postman:collection:build --help
for more details., (*7)
Use parsers
This library provides a simple way to extend it, called parsers
. There are 2 of them: request parsers & command
parsers., (*8)
Request parsers
Request parsers are services executed to edit Postman requests before being sent to collection.
You can, for example, add a custom authentication header, add some tests, etc., (*9)
To create your own request parser, your service must implement PostmanGeneratorBundle\RequestParser\RequestParserInterface
,
and has a tag postman.request_parser
., (*10)
Careful: some request parsers may be executed before yours. Check for priority
process in Symfony Dependency Injection., (*11)
Command parsers
Command parsers are services executed to connect to the main command, for example to ask for authentication access., (*12)
To create your own command parser, your service must implement PostmanGeneratorBundle\CommandParser\CommandParserInterface
,
and has a tag postman.command_parser
. parse
method allows you to ask questions to user, and execute
method to do
your stuff., (*13)
Careful: some command parsers may be executed before yours. Check for priority
process in Symfony Dependency Injection., (*14)
Authentication
By default, this library can manage OAuth2 authentication. To use it, fill authentication
configuration key using oauth2
. When using main command, you will be prompt for some login/password. They will be
managed as environment variables in Postman., (*15)
Feel free to add your own authenticators as request & command parsers., (*16)