Create an issue attachment
POST
/repos/{owner}/{repo}/issues/{index}/assets
const url = 'https://gitea.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.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
DownloadURL is the URL to download the attachment
string
created_at
string format: date-time
download_count
DownloadCount is the number of times the attachment has been downloaded
integer format: int64
id
ID is the unique identifier for the attachment
integer format: int64
name
Name is the filename of the attachment
string
size
Size is the file size in bytes
integer format: int64
uuid
UUID is the unique identifier for the attachment file
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
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