{"id":13419587,"url":"https://github.com/encode/apistar","last_synced_at":"2025-10-21T20:34:19.239Z","repository":{"id":19246376,"uuid":"85328233","full_name":"encode/apistar","owner":"encode","description":"The Web API toolkit. 🛠","archived":true,"fork":false,"pushed_at":"2022-02-24T05:00:58.000Z","size":6860,"stargazers_count":5573,"open_issues_count":32,"forks_count":411,"subscribers_count":167,"default_branch":"master","last_synced_at":"2024-09-21T15:44:40.314Z","etag":null,"topics":["api","python","rest"],"latest_commit_sha":null,"homepage":"https://docs.apistar.com","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/encode.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-03-17T15:42:12.000Z","updated_at":"2024-09-10T15:01:09.000Z","dependencies_parsed_at":"2022-08-31T16:32:27.248Z","dependency_job_id":null,"html_url":"https://github.com/encode/apistar","commit_stats":null,"previous_names":["tomchristie/apistar"],"tags_count":94,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/encode%2Fapistar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/encode%2Fapistar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/encode%2Fapistar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/encode%2Fapistar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/encode","download_url":"https://codeload.github.com/encode/apistar/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219871967,"owners_count":16554473,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","python","rest"],"created_at":"2024-07-30T22:01:18.081Z","updated_at":"2025-09-27T07:30:30.091Z","avatar_url":"https://github.com/encode.png","language":"Python","funding_links":[],"categories":["`API Frameworks`","Python","工具","RESTful API","资源列表","REST frameworks","Servers","General resources","api","RESTful API [🔝](#readme)","API Frameworks","Awesome Python"],"sub_categories":["Python","RESTful API","Dead REST frameworks"],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/encode/apistar/master/docs/img/logo-200-square-light.png\" alt=\"API Star\" /\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n    🛠 \u003cem\u003eThe Web API toolkit.\u003c/em\u003e 🛠\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://travis-ci.org/encode/apistar\"\u003e\n    \u003cimg src=\"https://travis-ci.org/encode/apistar.svg?branch=master\" alt=\"Build Status\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://codecov.io/gh/encode/apistar\"\u003e\n    \u003cimg src=\"https://codecov.io/gh/encode/apistar/branch/master/graph/badge.svg\" alt=\"codecov\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://pypi.python.org/pypi/apistar\"\u003e\n    \u003cimg src=\"https://badge.fury.io/py/apistar.svg\" alt=\"Package version\"\u003e\n\u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n**Community:** https://discuss.apistar.org 🤔 💭 🤓 💬 😎\n\n**Documentation:** https://docs.apistar.com 📘\n\n**Requirements:** Python 3.6+\n\n---\n\nAPI Star is a toolkit for working with OpenAPI or Swagger schemas. It allows you to:\n\n* Build API documentation, with a selection of available themes.\n* Validate API schema documents, and provide contextual errors.\n* Make API requests using the dynamic client library.\n\nYou can use it to build static documentation, integrate it within a Web framework,\nor use it as the client library for interacting with other APIs.\n\n## Quickstart\n\nInstall API Star:\n\n```bash\n$ pip3 install apistar\n```\n\nLet's take a look at some of the functionality the toolkit provides...\n\nWe'll start by creating an OpenAPI schema, `schema.yaml`:\n\n```yaml\nopenapi: 3.0.0\ninfo:\n  title: Widget API\n  version: '1.0'\n  description: An example API for widgets\nservers:\n  - url: https://www.example.org/\npaths:\n  /widgets:\n    get:\n      summary: List all the widgets.\n      operationId: listWidgets\n      parameters:\n      - in: query\n        name: search\n        description: Filter widgets by this search term.\n        schema:\n          type: string\n```\n\nLet's also create a configuration file `apistar.yml`:\n\n```yaml\nschema:\n  path: schema.yaml\n  format: openapi\n```\n\nWe're now ready to start using the `apistar` command line tool.\n\nWe can validate our OpenAPI schema:\n\n```\n$ apistar validate\n✓ Valid OpenAPI schema.\n```\n\nOr build developer documentation for our API:\n\n```\n$ apistar docs --serve\n✓ Documentation available at \"http://127.0.0.1:8000/\" (Ctrl+C to quit)\n```\n\nWe can also make API requests to the server referenced in the schema:\n\n```\n$ apistar request listWidgets search=cogwheel\n```\n\n## Where did the server go?\n\nWith version 0.6 onwards the API Star project is being focused as a\nframework-agnostic suite of API tooling. The plan is to build out this\nfunctionality in a way that makes it appropriate for use either as a stand-alone\ntool, or together with a large range of frameworks.\n\nThe 0.5 branch remains available on GitHub, and can be installed from PyPI\nwith `pip install apistar==0.5.41`. Any further development of the API Star\nserver would likely need to be against a fork of that, under a new maintainer.\n\nIf you're looking for a high-performance Python-based async framework, then\nI would instead recommend [Starlette](https://www.starlette.io/).\n\n---\n\n\u003cp align=\"center\"\u003e\u003ci\u003eAPI Star is \u003ca href=\"https://github.com/tomchristie/apistar/blob/master/LICENSE.md\"\u003eBSD licensed\u003c/a\u003e code.\u003cbr/\u003eDesigned \u0026 built in Brighton, England.\u003c/i\u003e\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/encode/apistar/master/docs/img/ident-44-square-light.png\" alt=\"API Star\" /\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fencode%2Fapistar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fencode%2Fapistar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fencode%2Fapistar/lists"}