API documentation, validation, mocking, and clients.
Project description
🛠 The Web API toolkit. 🛠
Community: https://discuss.apistar.org 🤔 💭 🤓 💬 😎
Documentation: https://docs.apistar.com 📘
Requirements: Python 3.6+
API Star is a toolkit for working with OpenAPI or Swagger schemas. It allows you to:
- Build API documentation, with a selection of available themes.
- Validate API schema documents, and provide contextual errors.
- Make API requests using the dynamic client library.
You can use it to build static documentation, integrate it within a Web framework, or use it as the client library for interacting with other APIs.
Quickstart
Install API Star:
$ pip3 install apistar
Let's take a look at some of the functionality the toolkit provides...
We'll start by creating an OpenAPI schema, schema.yaml
:
openapi: 3.0.0
info:
title: Widget API
version: '1.0'
description: An example API for widgets
servers:
- url: https://www.example.org/
paths:
/widgets:
get:
summary: List all the widgets.
operationId: listWidgets
parameters:
- in: query
name: search
description: Filter widgets by this search term.
schema:
type: string
Let's also create a configuration file apistar.yml
:
schema:
path: schema.yaml
format: openapi
We're now ready to start using the apistar
command line tool.
We can validate our OpenAPI schema:
$ apistar validate
✓ Valid OpenAPI schema.
Or build developer documentation for our API:
$ apistar docs --serve
✓ Documentation available at "http://127.0.0.1:8000/" (Ctrl+C to quit)
We can also make API requests to the server referenced in the schema:
$ apistar request listWidgets search=cogwheel
Where did the server go?
With version 0.6 onwards the API Star project is being focused as a framework-agnositic suite of API tooling. The plan is to build out this functionality in a way that makes it appropriate for use either as a stand-alone tool, or together with a large range of frameworks.
The 0.5 branch remains available on GitHub, and can be installed from PyPI
with pip install apistar==0.5.41
. Any further development of the API Star
server would likely need to be against a fork of that, under a new maintainer.
If you're looking for a high-performance Python-based async framework, then I would instead recommend Starlette.
API Star is BSD licensed code.
Designed & built in Brighton, England.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file apistar-0.7.2.tar.gz
.
File metadata
- Download URL: apistar-0.7.2.tar.gz
- Upload date:
- Size: 3.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8da0d3f15748c8ed6e68914ba5b8f6dd5dff5afbe137950d07103575df0bce73 |
|
MD5 | bec6e066702370e5ab376624800e1926 |
|
BLAKE2b-256 | d60c3066b856f661bc58b16c1a2ff4eeed25dc4f0d4618871b3454066dad89e0 |