Skip to main content
Ahora la API de REST tiene control de versiones. Para obtener más información, consulta "Acerca del control de versiones de la API".

Puntos de conexión de la API de REST para GitHub Classroom

Use la API de REST para interactuar con GitHub Classroom.

Get an assignment

Gets a GitHub Classroom assignment. Assignment will only be returned if the current user is an administrator of the GitHub Classroom for the assignment.

Tokens de acceso específicos para "Get an assignment"

Este punto de conexión funciona con los siguientes tipos de token:

El token no requiere ningún permiso.

Este punto de conexión se puede usar sin autenticación si solo se solicitan recursos públicos.

Parámetros para "Get an assignment"

Encabezados
Nombre, Tipo, Descripción
accept string

Setting to application/vnd.github+json is recommended.

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
assignment_id integer Requerido

The unique identifier of the classroom assignment.

Códigos de estado de respuesta HTTP para "Get an assignment"

status codeDescripción
200

OK

404

Resource not found

Ejemplos de código para "Get an assignment"

Ejemplo de solicitud

get/assignments/{assignment_id}
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/assignments/ASSIGNMENT_ID

Response

Status: 200
{ "id": "12,", "public_repo": "false,", "title": "Intro to Binaries", "type": "individual", "invite_link": "https://classroom.github.com/a/Lx7jiUgx", "invitations_enabled": "true,", "slug": "intro-to-binaries", "students_are_repo_admins": false, "feedback_pull_requests_enabled": true, "max_teams": 0, "max_members": 0, "editor": "codespaces", "accepted": 100, "submitted": 40, "passing": 10, "language": "ruby", "deadline": "2011-01-26T19:06:43Z", "stater_code_repository": { "id": 1296269, "full_name": "octocat/Hello-World", "html_url": "https://github.com/octocat/Hello-World", "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", "private": false, "default_branch": "main" }, "classroom": { "id": 1296269, "name": "Programming Elixir", "archived": "false,", "url": "https://classroom.github.com/classrooms/1-programming-elixir" } }

List accepted assignments for an assignment

Lists any assignment repositories that have been created by students accepting a GitHub Classroom assignment. Accepted assignments will only be returned if the current user is an administrator of the GitHub Classroom for the assignment.

Tokens de acceso específicos para "List accepted assignments for an assignment"

Este punto de conexión funciona con los siguientes tipos de token:

El token no requiere ningún permiso.

Este punto de conexión se puede usar sin autenticación si solo se solicitan recursos públicos.

Parámetros para "List accepted assignments for an assignment"

Encabezados
Nombre, Tipo, Descripción
accept string

Setting to application/vnd.github+json is recommended.

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
assignment_id integer Requerido

The unique identifier of the classroom assignment.

Parámetros de consulta
Nombre, Tipo, Descripción
page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

Valor predeterminado: 1

per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

Valor predeterminado: 30

Códigos de estado de respuesta HTTP para "List accepted assignments for an assignment"

status codeDescripción
200

OK

Ejemplos de código para "List accepted assignments for an assignment"

Ejemplo de solicitud

get/assignments/{assignment_id}/accepted_assignments
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/assignments/ASSIGNMENT_ID/accepted_assignments

Response

Status: 200
{ "id": "12,", "submitted": "false,", "passing": "false,", "commit_count": 5, "grade": "5/10", "students": [ { "id": 1, "login": "octocat", "avatar_url": "https://github.com/images/error/octocat_happy.gif", "html_url": "https://github.com/octocat" } ], "repository": { "id": 1296269, "full_name": "octocat/Hello-World", "html_url": "https://github.com/octocat/Hello-World", "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", "private": false, "default_branch": "main" }, "assignment": { "id": "12,", "public_repo": "false,", "title": "Intro to Binaries", "type": "individual", "invite_link": "https://classroom.github.com/a/Lx7jiUgx", "invitations_enabled": "true,", "slug": "intro-to-binaries", "students_are_repo_admins": false, "feedback_pull_requests_enabled": true, "max_teams": 0, "max_members": 0, "editor": "codespaces", "accepted": 100, "submitted": 40, "passing": 10, "language": "ruby", "classroom": { "id": 1296269, "name": "Programming Elixir", "archived": "false,", "url": "https://classroom.github.com/classrooms/1-programming-elixir" } } }

Get assignment grades

Gets grades for a GitHub Classroom assignment. Grades will only be returned if the current user is an administrator of the GitHub Classroom for the assignment.

Tokens de acceso específicos para "Get assignment grades"

Este punto de conexión funciona con los siguientes tipos de token:

El token no requiere ningún permiso.

Este punto de conexión se puede usar sin autenticación si solo se solicitan recursos públicos.

Parámetros para "Get assignment grades"

Encabezados
Nombre, Tipo, Descripción
accept string

Setting to application/vnd.github+json is recommended.

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
assignment_id integer Requerido

The unique identifier of the classroom assignment.

Códigos de estado de respuesta HTTP para "Get assignment grades"

status codeDescripción
200

OK

404

Resource not found

Ejemplos de código para "Get assignment grades"

Ejemplo de solicitud

get/assignments/{assignment_id}/grades
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/assignments/ASSIGNMENT_ID/grades

Response

Status: 200
[ { "assignment_name": "Introduction to Strings", "assignment_url": "https://classroom.github.com/classrooms/1337/assignments/1337", "starter_code_url": "", "github_username": "octocat", "roster_identifier": "octocat@github.com", "student_repository_name": "intro-to-strings-1337-octocat", "student_repository_url": "https://github.com/timeforschool/intro-to-strings-1337-octocat", "submission_timestamp": "2018-11-12 01:02", "points_awarded": 10, "points_available": 15, "group_name": "octocat-and-friends" }, { "assignment_name": "Introduction to Strings", "assignment_url": "https://classroom.github.com/classrooms/1337/assignments/1337", "starter_code_url": "", "github_username": "monalisa", "roster_identifier": "monalisa@github.com", "student_repository_name": "intro-to-strings-1337-monalisa", "student_repository_url": "https://github.com/timeforschool/intro-to-strings-1337-monalisa", "submission_timestamp": "2018-11-12 01:11", "points_awarded": 15, "points_available": 15, "group_name": "monalisa-and-friends" } ]

List classrooms

Lists GitHub Classroom classrooms for the current user. Classrooms will only be returned if the current user is an administrator of one or more GitHub Classrooms.

Tokens de acceso específicos para "List classrooms"

Este punto de conexión funciona con los siguientes tipos de token:

El token no requiere ningún permiso.

Este punto de conexión se puede usar sin autenticación si solo se solicitan recursos públicos.

Parámetros para "List classrooms"

Encabezados
Nombre, Tipo, Descripción
accept string

Setting to application/vnd.github+json is recommended.

Parámetros de consulta
Nombre, Tipo, Descripción
page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

Valor predeterminado: 1

per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

Valor predeterminado: 30

Códigos de estado de respuesta HTTP para "List classrooms"

status codeDescripción
200

OK

Ejemplos de código para "List classrooms"

Ejemplo de solicitud

get/classrooms
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/classrooms

Response

Status: 200
{ "id": 1296269, "name": "Programming Elixir", "archived": "false,", "url": "https://classroom.github.com/classrooms/1-programming-elixir" }

Get a classroom

Gets a GitHub Classroom classroom for the current user. Classroom will only be returned if the current user is an administrator of the GitHub Classroom.

Tokens de acceso específicos para "Get a classroom"

Este punto de conexión funciona con los siguientes tipos de token:

El token no requiere ningún permiso.

Este punto de conexión se puede usar sin autenticación si solo se solicitan recursos públicos.

Parámetros para "Get a classroom"

Encabezados
Nombre, Tipo, Descripción
accept string

Setting to application/vnd.github+json is recommended.

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
classroom_id integer Requerido

The unique identifier of the classroom.

Códigos de estado de respuesta HTTP para "Get a classroom"

status codeDescripción
200

OK

404

Resource not found

Ejemplos de código para "Get a classroom"

Ejemplo de solicitud

get/classrooms/{classroom_id}
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/classrooms/CLASSROOM_ID

Response

Status: 200
{ "id": 1296269, "name": "Programming Elixir", "archived": "false,", "organization": { "id": 1, "login": "programming-elixir", "node_id": "MDEyOk9yZ2FuaXphdGlvbjE=", "html_url": "https://github.com/programming-elixir", "name": "Learn how to build fault tolerant applications", "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4" }, "url": "https://classroom.github.com/classrooms/1-programming-elixir" }

List assignments for a classroom

Lists GitHub Classroom assignments for a classroom. Assignments will only be returned if the current user is an administrator of the GitHub Classroom.

Tokens de acceso específicos para "List assignments for a classroom"

Este punto de conexión funciona con los siguientes tipos de token:

El token no requiere ningún permiso.

Este punto de conexión se puede usar sin autenticación si solo se solicitan recursos públicos.

Parámetros para "List assignments for a classroom"

Encabezados
Nombre, Tipo, Descripción
accept string

Setting to application/vnd.github+json is recommended.

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
classroom_id integer Requerido

The unique identifier of the classroom.

Parámetros de consulta
Nombre, Tipo, Descripción
page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

Valor predeterminado: 1

per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

Valor predeterminado: 30

Códigos de estado de respuesta HTTP para "List assignments for a classroom"

status codeDescripción
200

OK

Ejemplos de código para "List assignments for a classroom"

Ejemplo de solicitud

get/classrooms/{classroom_id}/assignments
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/classrooms/CLASSROOM_ID/assignments

Response

Status: 200
{ "id": "12,", "public_repo": "false,", "title": "Intro to Binaries", "type": "individual", "invite_link": "https://classroom.github.com/a/Lx7jiUgx", "invitations_enabled": "true,", "slug": "intro-to-binaries", "students_are_repo_admins": false, "feedback_pull_requests_enabled": true, "max_teams": 0, "max_members": 0, "editor": "codespaces", "accepted": 100, "submitted": 40, "passing": 10, "language": "ruby", "deadline": "2020-01-11T11:59:22Z", "classroom": { "id": 1296269, "name": "Programming Elixir", "archived": "false,", "url": "https://classroom.github.com/classrooms/1-programming-elixir" } }