# Open API Definition Parser Nexmo is now known as Vonage A Ruby parser for Open API Spec 3.0+ definitions. ### Install Install the gem: ``` $ gem install oas_parser ``` Or add it to your Gemfile: ```ruby gem 'oas_parser' ``` ### Usage Here is a basic example of how you can traverse through an Open API Spec 3 Definition: ```ruby require 'oas_parser' definition = OasParser::Definition.resolve('petstore.yml') # => # # Get a specific path path = definition.path_by_path('/pets') # => # # Get all paths. definition.paths # => [#, ...] # Get a specific endpoint by method endpoint = path.endpoint_by_method('get') # => # # Get all endpoints path.endpoints # => [#, ...] # Get endpoint description endpoint.description # => "Returns all pets from the system that the user has access to" ``` Checkout the tests and `lib` directory for more classes and methods. ### Development Run tests: ``` $ rspec ``` ### Publishing Clone the repo and navigate to its directory: ``` $ cd oas-parser ``` Bump the latest version in `oas_parser/lib/oas_parser/version.rb`: ``` //old module OasParser VERSION = '1.0.0'.freeze end //new module OasParser VERSION = '1.1.0'.freeze end ``` Build the gem: ``` $ gem build oas_parser.gemspec ``` _This will create a `oas_parser-1.1.0.gem` file._ Push the gem to rubygems.org: ``` $ gem push oas_parser-1.1.0.gem ``` Verify the change was made by checking for the [new version on rubygems.org](https://rubygems.org/gems/oas_parser) ## Contributing Contributions are welcome, please follow [GitHub Flow](https://guides.github.com/introduction/flow/index.html)