Puntos de conexión de API REST para roles de repositorio personalizados
Usa la API REST para interactuar con roles de repositorio personalizados.
Closing down - List custom repository roles in an organization
Warning
Closing down notice: This operation is closing down and will be removed in the future. Use the "List custom repository roles" endpoint instead.
List the custom repository roles available in this organization. For more information on custom repository roles, see "About custom repository roles."
The authenticated user must be administrator of the organization or of a repository of the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org or repo scope to use this endpoint.
Tokens de acceso específicos para "Closing down - List custom repository roles in an organization"
Este punto de conexión funciona con los siguientes tipos de token pormenorizados:
- Tokens de acceso de usuario de la aplicación de GitHub
- Token de acceso a la instalación de la aplicación de GitHub
- Tokens de acceso personal específico
El token pormenorizado debe tener al menos uno de los siguientes conjuntos de permisos:
- "Custom repository roles" organization permissions (read)
- "Administration" organization permissions (read)
Parámetros para "Closing down - List custom repository roles in an organization"
| Nombre, Tipo, Descripción | 
|---|
| acceptstringSetting to  | 
| Nombre, Tipo, Descripción | 
|---|
| organization_idstring RequeridoThe unique identifier of the organization. | 
Códigos de estado de respuesta HTTP para "Closing down - List custom repository roles in an organization"
| status code | Descripción | 
|---|---|
| 200 | Response - list of custom role names | 
Ejemplos de código para "Closing down - List custom repository roles in an organization"
Ejemplo de solicitud
curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  http(s)://HOSTNAME/api/v3/organizations/ORGANIZATION_ID/custom_rolesResponse - list of custom role names
Status: 200{
  "id": 8030,
  "name": "Security Engineer",
  "description": "Able to contribute code and maintain the security pipeline",
  "base_role": "maintain",
  "permissions": [
    "delete_alerts_code_scanning"
  ],
  "organization": {
    "login": "github",
    "id": 1,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjE=",
    "url": "https://HOSTNAME/orgs/github",
    "repos_url": "https://HOSTNAME/orgs/github/repos",
    "events_url": "https://HOSTNAME/orgs/github/events",
    "hooks_url": "https://HOSTNAME/orgs/github/hooks",
    "issues_url": "https://HOSTNAME/orgs/github/issues",
    "members_url": "https://HOSTNAME/orgs/github/members{/member}",
    "public_members_url": "https://HOSTNAME/orgs/github/public_members{/member}",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "description": "A great organization"
  },
  "created_at": "2022-07-04T22:19:11Z",
  "updated_at": "2022-07-04T22:20:11Z"
}List custom repository roles in an organization
List the custom repository roles available in this organization. For more information on custom repository roles, see "About custom repository roles."
The authenticated user must be an administrator of the organization or of a repository of the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org or repo scope to use this endpoint.
Tokens de acceso específicos para "List custom repository roles in an organization"
Este punto de conexión funciona con los siguientes tipos de token pormenorizados:
- Tokens de acceso de usuario de la aplicación de GitHub
- Token de acceso a la instalación de la aplicación de GitHub
- Tokens de acceso personal específico
El token pormenorizado debe tener al menos uno de los siguientes conjuntos de permisos:
- "Custom repository roles" organization permissions (read)
- "Administration" organization permissions (read)
Parámetros para "List custom repository roles in an organization"
| Nombre, Tipo, Descripción | 
|---|
| acceptstringSetting to  | 
| Nombre, Tipo, Descripción | 
|---|
| orgstring RequeridoThe organization name. The name is not case sensitive. | 
Códigos de estado de respuesta HTTP para "List custom repository roles in an organization"
| status code | Descripción | 
|---|---|
| 200 | Response - list of custom role names | 
Ejemplos de código para "List custom repository roles in an organization"
Ejemplo de solicitud
curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  http(s)://HOSTNAME/api/v3/orgs/ORG/custom-repository-rolesResponse - list of custom role names
Status: 200{
  "total_count": 2,
  "custom_roles": [
    {
      "id": 8030,
      "name": "Security Engineer",
      "description": "Able to contribute code and maintain the security pipeline",
      "base_role": "maintain",
      "permissions": [
        "delete_alerts_code_scanning"
      ],
      "organization": {
        "login": "github",
        "id": 9919,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=",
        "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4",
        "gravatar_id": "",
        "url": "https://HOSTNAME/users/github",
        "html_url": "https://github.com/github",
        "followers_url": "https://HOSTNAME/users/github/followers",
        "following_url": "https://HOSTNAME/users/github/following{/other_user}",
        "gists_url": "https://HOSTNAME/users/github/gists{/gist_id}",
        "starred_url": "https://HOSTNAME/users/github/starred{/owner}{/repo}",
        "subscriptions_url": "https://HOSTNAME/users/github/subscriptions",
        "organizations_url": "https://HOSTNAME/users/github/orgs",
        "repos_url": "https://HOSTNAME/users/github/repos",
        "events_url": "https://HOSTNAME/users/github/events{/privacy}",
        "received_events_url": "https://HOSTNAME/users/github/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "created_at": "2022-07-04T22:19:11Z",
      "updated_at": "2022-07-04T22:20:11Z"
    },
    {
      "id": 8031,
      "name": "Community manager",
      "description": "Able to handle all the community interactions without being able to contribute code",
      "base_role": "read",
      "permissions": [
        "mark_as_duplicate",
        "manage_settings_pages",
        "manage_settings_wiki",
        "set_social_preview",
        "edit_repo_metadata",
        "toggle_discussion_comment_minimize"
      ],
      "organization": {
        "login": "github",
        "id": 9919,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=",
        "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4",
        "gravatar_id": "",
        "url": "https://HOSTNAME/users/github",
        "html_url": "https://github.com/github",
        "followers_url": "https://HOSTNAME/users/github/followers",
        "following_url": "https://HOSTNAME/users/github/following{/other_user}",
        "gists_url": "https://HOSTNAME/users/github/gists{/gist_id}",
        "starred_url": "https://HOSTNAME/users/github/starred{/owner}{/repo}",
        "subscriptions_url": "https://HOSTNAME/users/github/subscriptions",
        "organizations_url": "https://HOSTNAME/users/github/orgs",
        "repos_url": "https://HOSTNAME/users/github/repos",
        "events_url": "https://HOSTNAME/users/github/events{/privacy}",
        "received_events_url": "https://HOSTNAME/users/github/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "created_at": "2022-07-05T12:01:11Z",
      "updated_at": "2022-07-05T12:20:11Z"
    }
  ]
}Create a custom repository role
Creates a custom repository role that can be used by all repositories owned by the organization. For more information on custom repository roles, see "About custom repository roles."
The authenticated user must be an administrator for the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.
Tokens de acceso específicos para "Create a custom repository role"
Este punto de conexión funciona con los siguientes tipos de token pormenorizados:
- Tokens de acceso de usuario de la aplicación de GitHub
- Token de acceso a la instalación de la aplicación de GitHub
- Tokens de acceso personal específico
El token pormenorizado debe tener el siguiente conjunto de permisos:
- "Custom repository roles" organization permissions (write)
Parámetros para "Create a custom repository role"
| Nombre, Tipo, Descripción | 
|---|
| acceptstringSetting to  | 
| Nombre, Tipo, Descripción | 
|---|
| orgstring RequeridoThe organization name. The name is not case sensitive. | 
| Nombre, Tipo, Descripción | 
|---|
| namestring RequeridoThe name of the custom role. | 
| descriptionstring or nullA short description about who this role is for or what permissions it grants. | 
| base_rolestring RequeridoThe system role from which this role inherits permissions. Puede ser uno de los siguientes:  | 
| permissionsarray of strings RequeridoA list of additional permissions included in this role. | 
Códigos de estado de respuesta HTTP para "Create a custom repository role"
| status code | Descripción | 
|---|---|
| 201 | Created | 
| 404 | Resource not found | 
| 422 | Validation failed, or the endpoint has been spammed. | 
Ejemplos de código para "Create a custom repository role"
Ejemplo de solicitud
curl -L \
  -X POST \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  http(s)://HOSTNAME/api/v3/orgs/ORG/custom-repository-roles \
  -d '{"name":"Labeler","description":"A role for issue and pull request labelers","base_role":"read","permissions":["add_label"]}'Response
Status: 201{
  "id": 8030,
  "name": "Security Engineer",
  "description": "Able to contribute code and maintain the security pipeline",
  "base_role": "maintain",
  "permissions": [
    "delete_alerts_code_scanning"
  ],
  "organization": {
    "login": "github",
    "id": 1,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjE=",
    "url": "https://HOSTNAME/orgs/github",
    "repos_url": "https://HOSTNAME/orgs/github/repos",
    "events_url": "https://HOSTNAME/orgs/github/events",
    "hooks_url": "https://HOSTNAME/orgs/github/hooks",
    "issues_url": "https://HOSTNAME/orgs/github/issues",
    "members_url": "https://HOSTNAME/orgs/github/members{/member}",
    "public_members_url": "https://HOSTNAME/orgs/github/public_members{/member}",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "description": "A great organization"
  },
  "created_at": "2022-07-04T22:19:11Z",
  "updated_at": "2022-07-04T22:20:11Z"
}Get a custom repository role
Gets a custom repository role that is available to all repositories owned by the organization. For more information on custom repository roles, see "About custom repository roles."
The authenticated user must be an administrator of the organization or of a repository of the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org or repo scope to use this endpoint.
Tokens de acceso específicos para "Get a custom repository role"
Este punto de conexión funciona con los siguientes tipos de token pormenorizados:
- Tokens de acceso de usuario de la aplicación de GitHub
- Token de acceso a la instalación de la aplicación de GitHub
- Tokens de acceso personal específico
El token pormenorizado debe tener al menos uno de los siguientes conjuntos de permisos:
- "Custom repository roles" organization permissions (read)
- "Administration" organization permissions (read)
Parámetros para "Get a custom repository role"
| Nombre, Tipo, Descripción | 
|---|
| acceptstringSetting to  | 
| Nombre, Tipo, Descripción | 
|---|
| orgstring RequeridoThe organization name. The name is not case sensitive. | 
| role_idinteger RequeridoThe unique identifier of the role. | 
Códigos de estado de respuesta HTTP para "Get a custom repository role"
| status code | Descripción | 
|---|---|
| 200 | OK | 
| 404 | Resource not found | 
Ejemplos de código para "Get a custom repository role"
Ejemplo de solicitud
curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  http(s)://HOSTNAME/api/v3/orgs/ORG/custom-repository-roles/ROLE_IDResponse
Status: 200{
  "id": 8030,
  "name": "Security Engineer",
  "description": "Able to contribute code and maintain the security pipeline",
  "base_role": "maintain",
  "permissions": [
    "delete_alerts_code_scanning"
  ],
  "organization": {
    "login": "github",
    "id": 1,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjE=",
    "url": "https://HOSTNAME/orgs/github",
    "repos_url": "https://HOSTNAME/orgs/github/repos",
    "events_url": "https://HOSTNAME/orgs/github/events",
    "hooks_url": "https://HOSTNAME/orgs/github/hooks",
    "issues_url": "https://HOSTNAME/orgs/github/issues",
    "members_url": "https://HOSTNAME/orgs/github/members{/member}",
    "public_members_url": "https://HOSTNAME/orgs/github/public_members{/member}",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "description": "A great organization"
  },
  "created_at": "2022-07-04T22:19:11Z",
  "updated_at": "2022-07-04T22:20:11Z"
}Update a custom repository role
Updates a custom repository role that can be used by all repositories owned by the organization. For more information about custom repository roles, see "About custom repository roles."
The authenticated user must be an administrator for the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.
Tokens de acceso específicos para "Update a custom repository role"
Este punto de conexión funciona con los siguientes tipos de token pormenorizados:
- Tokens de acceso de usuario de la aplicación de GitHub
- Token de acceso a la instalación de la aplicación de GitHub
- Tokens de acceso personal específico
El token pormenorizado debe tener el siguiente conjunto de permisos:
- "Custom repository roles" organization permissions (write)
Parámetros para "Update a custom repository role"
| Nombre, Tipo, Descripción | 
|---|
| acceptstringSetting to  | 
| Nombre, Tipo, Descripción | 
|---|
| orgstring RequeridoThe organization name. The name is not case sensitive. | 
| role_idinteger RequeridoThe unique identifier of the role. | 
| Nombre, Tipo, Descripción | 
|---|
| namestringThe name of the custom role. | 
| descriptionstring or nullA short description about who this role is for or what permissions it grants. | 
| base_rolestringThe system role from which this role inherits permissions. Puede ser uno de los siguientes:  | 
| permissionsarray of stringsA list of additional permissions included in this role. | 
Códigos de estado de respuesta HTTP para "Update a custom repository role"
| status code | Descripción | 
|---|---|
| 200 | OK | 
| 404 | Resource not found | 
| 422 | Validation failed, or the endpoint has been spammed. | 
Ejemplos de código para "Update a custom repository role"
Ejemplo de solicitud
curl -L \
  -X PATCH \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  http(s)://HOSTNAME/api/v3/orgs/ORG/custom-repository-roles/ROLE_ID \
  -d '{"name":"Labeler","description":"A role for issue and PR labelers","base_role":"read","permissions":["add_label","remove_label"]}'Response
Status: 200{
  "id": 8030,
  "name": "Security Engineer",
  "description": "Able to contribute code and maintain the security pipeline",
  "base_role": "maintain",
  "permissions": [
    "delete_alerts_code_scanning"
  ],
  "organization": {
    "login": "github",
    "id": 1,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjE=",
    "url": "https://HOSTNAME/orgs/github",
    "repos_url": "https://HOSTNAME/orgs/github/repos",
    "events_url": "https://HOSTNAME/orgs/github/events",
    "hooks_url": "https://HOSTNAME/orgs/github/hooks",
    "issues_url": "https://HOSTNAME/orgs/github/issues",
    "members_url": "https://HOSTNAME/orgs/github/members{/member}",
    "public_members_url": "https://HOSTNAME/orgs/github/public_members{/member}",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "description": "A great organization"
  },
  "created_at": "2022-07-04T22:19:11Z",
  "updated_at": "2022-07-04T22:20:11Z"
}Delete a custom repository role
Deletes a custom role from an organization. Once the custom role has been deleted, any user, team, or invitation with the deleted custom role will be reassigned the inherited role. For more information about custom repository roles, see "About custom repository roles."
The authenticated user must be an administrator for the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.
Tokens de acceso específicos para "Delete a custom repository role"
Este punto de conexión funciona con los siguientes tipos de token pormenorizados:
- Tokens de acceso de usuario de la aplicación de GitHub
- Token de acceso a la instalación de la aplicación de GitHub
- Tokens de acceso personal específico
El token pormenorizado debe tener el siguiente conjunto de permisos:
- "Custom repository roles" organization permissions (write)
Parámetros para "Delete a custom repository role"
| Nombre, Tipo, Descripción | 
|---|
| acceptstringSetting to  | 
| Nombre, Tipo, Descripción | 
|---|
| orgstring RequeridoThe organization name. The name is not case sensitive. | 
| role_idinteger RequeridoThe unique identifier of the role. | 
Códigos de estado de respuesta HTTP para "Delete a custom repository role"
| status code | Descripción | 
|---|---|
| 204 | No Content | 
Ejemplos de código para "Delete a custom repository role"
Ejemplo de solicitud
curl -L \
  -X DELETE \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  http(s)://HOSTNAME/api/v3/orgs/ORG/custom-repository-roles/ROLE_IDResponse
Status: 204List repository fine-grained permissions for an organization
Lists the fine-grained permissions that can be used in custom repository roles for an organization. For more information, see "About custom repository roles."
The authenticated user must be an administrator of the organization or of a repository of the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org or repo scope to use this endpoint.
Tokens de acceso específicos para "List repository fine-grained permissions for an organization"
Este punto de conexión funciona con los siguientes tipos de token pormenorizados:
- Tokens de acceso de usuario de la aplicación de GitHub
- Token de acceso a la instalación de la aplicación de GitHub
- Tokens de acceso personal específico
El token pormenorizado debe tener al menos uno de los siguientes conjuntos de permisos:
- "Custom repository roles" organization permissions (read)
- "Administration" organization permissions (read)
Parámetros para "List repository fine-grained permissions for an organization"
| Nombre, Tipo, Descripción | 
|---|
| acceptstringSetting to  | 
| Nombre, Tipo, Descripción | 
|---|
| orgstring RequeridoThe organization name. The name is not case sensitive. | 
Códigos de estado de respuesta HTTP para "List repository fine-grained permissions for an organization"
| status code | Descripción | 
|---|---|
| 200 | OK | 
Ejemplos de código para "List repository fine-grained permissions for an organization"
Ejemplo de solicitud
curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  http(s)://HOSTNAME/api/v3/orgs/ORG/repository-fine-grained-permissionsResponse
Status: 200[
  {
    "name": "add_assignee",
    "description": "Assign or remove a user"
  },
  {
    "name": "remove_assignee",
    "description": "Remove an assigned user"
  },
  {
    "name": "add_label",
    "description": "Add or remove a label"
  }
]