Create an issue attachment
POST
/repos/{owner}/{repo}/issues/{index}/assets
const url = 'https://gitea.example.com/api/v1/repos/example/example/issues/1/assets';const form = new FormData();form.append('attachment', 'file');
const options = {method: 'POST', headers: {Authorization: 'Basic <credentials>'}};
options.body = form;
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://gitea.example.com/api/v1/repos/example/example/issues/1/assets \ --header 'Authorization: Basic <credentials>' \ --header 'Content-Type: multipart/form-data' \ --form attachment=@fileAuthorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”owner
required
string
Owner of the repo
repo
required
string
Name of the repo
index
required
integer format: int64
Index of the issue
Query Parameters
Section titled “Query Parameters”name
string
Name of the attachment
FormData Parameters
Section titled “FormData Parameters”attachment
required
file
Attachment to upload
Responses
Section titled “Responses”Attachment
Media typeapplication/json
Attachment a generic attachment
object
browser_download_url
string
created_at
string format: date-time
download_count
integer format: int64
id
integer format: int64
name
string
size
integer format: int64
uuid
string
Examplegenerated
{ "browser_download_url": "example", "created_at": "2026-04-15T12:00:00Z", "download_count": 1, "id": 1, "name": "example", "size": 1, "uuid": "example"}APIError is error format response
Media typeapplication/json
Headers
Section titled “Headers”message
string
url
string
APIError is error format response
Media typeapplication/json
Headers
Section titled “Headers”message
string
url
string
APIValidationError is error format response related to input validation
Media typeapplication/json
Headers
Section titled “Headers”message
string
url
string
APIRepoArchivedError is an error that is raised when an archived repo should be modified
Media typeapplication/json
Headers
Section titled “Headers”message
string
url
string