Skip to content

Projects API

Project endpoints управляют marketplace integrations: metadata, visibility/access level, links and uploaded icon/cover images.

GET /api/v2/projects

Возвращает список projects, доступных текущему account.

Arguments:

ArgumentLocationDescription
workspaceQueryOptional workspace fullname filter.
scopeQueryOptional scope: all, marketplace, backend.

Payload: нет.

Response: array of projects.

GET /api/v2/projects/create-capability

Проверяет, может ли текущий account/workspace создать project.

Arguments: нет.

Payload: нет.

Response: capability object with tier/limit information.

GET /api/v2/projects/:fullname

Возвращает project по fullname.

Arguments:

ArgumentLocationDescription
fullnamePathProject fullname.

Payload: нет.

Response: project object.

PUT /api/v2/projects/:fullname

Создает или обновляет project.

Arguments:

ArgumentLocationDescription
fullnamePathProject fullname. Должен совпадать с payload.fullname.

Payload:

FieldRequiredDescription
nameДаProject name внутри workspace.
fullnameДаFullname в формате <workspace>.<name>.
workspaceДаWorkspace fullname.
publicДаLegacy public flag. Для нового кода лучше также передавать accessLevel.
visibilityНетStorage visibility: public, private_link, personal.
accessLevelНетProduct access level: private, public, free.
tagsНетProject tags.
labelsНетProject labels.
meta.titleДаВидимое название project.
meta.descriptionДаПолное описание.
meta.shortDescriptionНетКороткое описание.
meta.linksНетArray of { title, url } useful links.
meta.iconНетIcon URL. Может быть uploaded asset URL.
meta.avatarНетAvatar URL. Обычно совпадает с icon.
meta.coverНетCover URL. Может быть uploaded asset URL.

Response: project object.

DELETE /api/v2/projects/:fullname

Удаляет project.

Arguments:

ArgumentLocationDescription
fullnamePathProject fullname.

Payload: нет.

Response: operation result.

Открывает private project по access link.

Arguments:

ArgumentLocationDescription
tokenPathAccess link token.

Payload: нет.

Response: project view.

POST /api/v2/projects/:fullname/access-links

Создает access link для private project.

Arguments:

ArgumentLocationDescription
fullnamePathProject fullname.

Payload:

FieldRequiredDescription
maxUsagesНетMaximum link usages.
expiresAtНетExpiration date-time.

Response: created access link.

POST /api/v2/projects/:fullname/assets/images

Загружает project image для icon или cover.

Arguments:

ArgumentLocationDescription
fullnamePathProject fullname.

Payload:

FieldRequiredDescription
filenameДаOriginal filename.
contentTypeДаMIME type изображения.
dataДаBase64 image data.
targetДаicon или cover.

Response: uploaded image URL. Этот URL затем передается в meta.icon или meta.cover при сохранении project.

DELETE /api/v2/projects/:fullname/images/:asset

Удаляет uploaded project image.

Arguments:

ArgumentLocationDescription
fullnamePathProject fullname.
assetPathAsset filename, например icon.png или draft asset name.

Payload: нет.

Response: operation result.