Sample - GitHub REST API
POST/orgs/{org}/copilot-spaces/{space_number}/resources

Create a resource for an organization Copilot Space

Creates a new resource in a specific Copilot Space owned by an organization. The authenticated user must have write permissions on the space.

The following resource types are supported: repository, github_file, free_text, github_issue, github_pull_request. The uploaded_text_file and media_content types are not supported via this endpoint.

For github_file resources, if a resource with the same repository, file path, and SHA already exists, the existing resource is returned with a 200 status.

OAuth app tokens and personal access tokens (classic) need the write:org scope to use this endpoint.

Fine-grained tokens and GitHub App user access tokens must have been granted access to the organization that owns the space. They must also have been granted access to every repository referenced by resources in the space, including the resource being created.

  • RetriesRetries up to 2×, 500ms backoff, 30s timeout.

2 parameters · 2 body fields
orgstringrequired
The organization name. The name is not case sensitive.
space_numberintegerrequired
The unique identifier of the Copilot Space.
resource_typestringrequired
The type of resource to create.
Allowed:repositorygithub_filefree_textgithub_issuegithub_pull_request
metadataobjectrequired
Resource-specific metadata.

5 status codes
200Duplicate github_file resource already exists
idintegerrequired
The unique identifier of the resource.
resource_typestringrequired
The type of the resource.
Allowed:repositorygithub_filefree_textgithub_issuegithub_pull_requestmedia_contentuploaded_text_file
copilot_chat_attachment_idintegeroptional
The ID of the associated chat attachment, if any.
metadataobjectrequired
Resource-specific metadata. The keys and values depend on the resource type.
created_atstringrequired
The date and time the resource was created.
updated_atstringrequired
The date and time the resource was last updated.
201Resource created
idintegerrequired
The unique identifier of the resource.
resource_typestringrequired
The type of the resource.
Allowed:repositorygithub_filefree_textgithub_issuegithub_pull_requestmedia_contentuploaded_text_file
copilot_chat_attachment_idintegeroptional
The ID of the associated chat attachment, if any.
metadataobjectrequired
Resource-specific metadata. The keys and values depend on the resource type.
created_atstringrequired
The date and time the resource was created.
updated_atstringrequired
The date and time the resource was last updated.
403Forbidden
messagestringoptional
documentation_urlstringoptional
urlstringoptional
statusstringoptional
404Resource not found
messagestringoptional
documentation_urlstringoptional
urlstringoptional
statusstringoptional
422Validation failed, or the endpoint has been spammed.
messagestringrequired
documentation_urlstringrequired
errorsarray<object>optional

Error handling

A 403 is returned: Forbidden. A 404 is returned: Resource not found. A 422 is returned: Validation failed, or the endpoint has been spammed.