Эта версия GitHub Enterprise Server будет прекращена 2023-12-20. Исправления выпускаться не будут даже при критических проблемах безопасности. Для повышения производительности, повышения безопасности и новых функций выполните обновление до последней версии GitHub Enterprise Server. Чтобы получить справку по обновлению, обратитесь в службу поддержки GitHub Enterprise.
Лицензии
Используйте REST API для получения популярных лицензий открытый код и сведений о файле лицензии конкретного проекта.
Сведения о лицензиях
GitHub использует открытый код Ruby Gem Licensee, чтобы попытаться определить лицензию для проекта. Лицензиат сопоставляет содержимое файла проекта LICENSE
(если он существует) с кратким списком известных лицензий. В результате API не учитывает лицензии зависимостей проекта или другие средства документирования лицензии проекта, такие как ссылки на имя лицензии в документации.
Если лицензия совпадает, возвращенный ключ лицензии и имя соответствуют спецификации SPDX.
Примечание. Эти конечные точки также будут возвращать сведения о лицензии репозитория:
- Получение репозитория
- Список репозиториев для пользователя
- Список репозиториев организации
- Список вилок
- Список репозиториев, отслеживаемых пользователем
- Список репозиториев команды
GitHub — это много чего, но не юридическая фирма. Таким образом, GitHub не предоставляет юридические консультации. Использование API или отправка нам сообщения электронной почты об этом не является юридической консультацией и не создает отношения адвоката-клиента. Если есть вопросы о том, что можно и чего нельзя делать с определенной лицензией, нужно обратиться к своему собственному юридическому консультанту, прежде чем двигаться дальше. На самом деле, всегда нужно консультироваться со своим собственным адвокатом, прежде чем принимать какие-либо решения, которые могут иметь правовые последствия или которые могут повлиять на юридические права.
GitHub создал эти конечные точки, чтобы помочь пользователям получать сведения о лицензиях открытый код и проектах, которые используют их. Мы надеемся, что это поможет, но, пожалуйста, имейте в виду, что мы — не юристы (по крайней мере, большинство из нас) и что мы можем ошибаться, как и все остальные. По этой причине GitHub предоставляет API на основе "как есть" и не предоставляет никаких гарантий в отношении каких-либо сведений или лицензий, предоставленных или через него, и отказ от ответственности за ущерб, вызванный использованием API.
Get all commonly used licenses
Lists the most commonly used licenses on GitHub. For more information, see "Licensing a repository ."
Параметры для "Get all commonly used licenses"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
featured boolean |
per_page integer The number of results per page (max 100). По умолчанию.: |
page integer Page number of the results to fetch. По умолчанию.: |
Коды состояния http-ответа для "Get all commonly used licenses"
Код состояния | Описание |
---|---|
200 | OK |
304 | Not modified |
Примеры кода для "Get all commonly used licenses"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/licenses
Response
Status: 200
[
{
"key": "mit",
"name": "MIT License",
"spdx_id": "MIT",
"url": "https://HOSTNAME/licenses/mit",
"node_id": "MDc6TGljZW5zZW1pdA=="
},
{
"key": "lgpl-3.0",
"name": "GNU Lesser General Public License v3.0",
"spdx_id": "LGPL-3.0",
"url": "https://HOSTNAME/licenses/lgpl-3.0",
"node_id": "MDc6TGljZW5zZW1pdA=="
},
{
"key": "mpl-2.0",
"name": "Mozilla Public License 2.0",
"spdx_id": "MPL-2.0",
"url": "https://HOSTNAME/licenses/mpl-2.0",
"node_id": "MDc6TGljZW5zZW1pdA=="
},
{
"key": "agpl-3.0",
"name": "GNU Affero General Public License v3.0",
"spdx_id": "AGPL-3.0",
"url": "https://HOSTNAME/licenses/agpl-3.0",
"node_id": "MDc6TGljZW5zZW1pdA=="
},
{
"key": "unlicense",
"name": "The Unlicense",
"spdx_id": "Unlicense",
"url": "https://HOSTNAME/licenses/unlicense",
"node_id": "MDc6TGljZW5zZW1pdA=="
},
{
"key": "apache-2.0",
"name": "Apache License 2.0",
"spdx_id": "Apache-2.0",
"url": "https://HOSTNAME/licenses/apache-2.0",
"node_id": "MDc6TGljZW5zZW1pdA=="
},
{
"key": "gpl-3.0",
"name": "GNU General Public License v3.0",
"spdx_id": "GPL-3.0",
"url": "https://HOSTNAME/licenses/gpl-3.0",
"node_id": "MDc6TGljZW5zZW1pdA=="
}
]
Get a license
Gets information about a specific license. For more information, see "Licensing a repository ."
Параметры для "Get a license"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
license string Обязательное поле |
Коды состояния http-ответа для "Get a license"
Код состояния | Описание |
---|---|
200 | OK |
304 | Not modified |
403 | Forbidden |
404 | Resource not found |
Примеры кода для "Get a license"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/licenses/LICENSE
Response
Status: 200
{
"key": "mit",
"name": "MIT License",
"spdx_id": "MIT",
"url": "https://HOSTNAME/licenses/mit",
"node_id": "MDc6TGljZW5zZW1pdA==",
"html_url": "http://choosealicense.com/licenses/mit/",
"description": "A permissive license that is short and to the point. It lets people do anything with your code with proper attribution and without warranty.",
"implementation": "Create a text file (typically named LICENSE or LICENSE.txt) in the root of your source code and copy the text of the license into the file. Replace [year] with the current year and [fullname] with the name (or names) of the copyright holders.",
"permissions": [
"commercial-use",
"modifications",
"distribution",
"sublicense",
"private-use"
],
"conditions": [
"include-copyright"
],
"limitations": [
"no-liability"
],
"body": "\n\nThe MIT License (MIT)\n\nCopyright (c) [year] [fullname]\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n",
"featured": true
}
Get the license for a repository
This method returns the contents of the repository's license file, if one is detected.
Similar to Get repository content, this method also supports custom media types for retrieving the raw license content or rendered license HTML.
Параметры для "Get the license for a repository"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
owner string Обязательное полеThe account owner of the repository. The name is not case sensitive. |
repo string Обязательное полеThe name of the repository without the |
Коды состояния http-ответа для "Get the license for a repository"
Код состояния | Описание |
---|---|
200 | OK |
404 | Resource not found |
Примеры кода для "Get the license for a repository"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/license
Response
Status: 200
{
"name": "LICENSE",
"path": "LICENSE",
"sha": "401c59dcc4570b954dd6d345e76199e1f4e76266",
"size": 1077,
"url": "https://HOSTNAME/repos/benbalter/gman/contents/LICENSE?ref=master",
"html_url": "https://github.com/benbalter/gman/blob/master/LICENSE",
"git_url": "https://HOSTNAME/repos/benbalter/gman/git/blobs/401c59dcc4570b954dd6d345e76199e1f4e76266",
"download_url": "https://raw.githubusercontent.com/benbalter/gman/master/LICENSE?lab=true",
"type": "file",
"content": "VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTMgQmVu\nIEJhbHRlcgoKUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBv\nZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weSBvZgp0\naGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmls\nZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8gZGVhbCBpbgp0aGUgU29mdHdhcmUg\nd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRh\ndGlvbiB0aGUgcmlnaHRzIHRvCnVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwg\ncHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGwg\nY29waWVzIG9mCnRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25z\nIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzIGZ1cm5pc2hlZCB0byBkbyBzbywK\nc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6CgpUaGUgYWJv\ndmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGlj\nZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGwKY29waWVzIG9yIHN1YnN0YW50\naWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KClRIRSBTT0ZUV0FSRSBJ\nUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBL\nSU5ELCBFWFBSRVNTIE9SCklNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJ\nTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLCBG\nSVRORVNTCkZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklO\nR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SUyBPUgpDT1BZ\nUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdF\nUyBPUiBPVEhFUiBMSUFCSUxJVFksIFdIRVRIRVIKSU4gQU4gQUNUSU9OIE9G\nIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLCBP\nVVQgT0YgT1IgSU4KQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBU\nSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4K\n",
"encoding": "base64",
"_links": {
"self": "https://HOSTNAME/repos/benbalter/gman/contents/LICENSE?ref=master",
"git": "https://HOSTNAME/repos/benbalter/gman/git/blobs/401c59dcc4570b954dd6d345e76199e1f4e76266",
"html": "https://github.com/benbalter/gman/blob/master/LICENSE"
},
"license": {
"key": "mit",
"name": "MIT License",
"spdx_id": "MIT",
"url": "https://HOSTNAME/licenses/mit",
"node_id": "MDc6TGljZW5zZW1pdA=="
}
}