Обзор API DataSphere
В DataSphere все основные операции по работе с ресурсами и ноутбуками доступны не только из пользовательского интерфейса, но и через API.
Для управления ресурсами в API Yandex Cloud
Работа с сообществом
Вызовы CommunityService
и методы Community
позволяют создать, обновить и удалить сообщество. Также вы можете просмотреть список сообществ в конкретной организации.
Описание | gRPC | REST |
---|---|---|
Создает новое сообщество в указанной организации | Create | create |
Обновляет сообщество | Update | update |
Удаляет сообщество | Delete | delete |
Возвращает информацию о сообществе | Get | get |
Возвращает список сообществ в указанной организации | List | list |
Пример. Создание нового сообщества:
curl \
--header "Authorization: Bearer <IAM-токен>" \
--request POST \
"https://datasphere.api.cloud.yandex.net/datasphere/v2/communities" \
--data '{ "organizationId": "<идентификатор_организации>" }'
Пример. Вывод списка сообществ в организации:
curl \
--header "Authorization: Bearer <IAM-токен>" \
--request GET \
"https://datasphere.api.cloud.yandex.net/datasphere/v2/communities" \
--data '{ "organizationId": "<идентификатор_организации>" }'
Подробную информацию о методах Community
см. в API-документации.
Пример. Создание нового сообщества:
grpcurl \
-rpc-header "Authorization: Bearer <IAM-токен>" \
-d '{"organization_id": "<идентификатор_организации>"}' \
datasphere.api.cloud.yandex.net:443 \
yandex.cloud.datasphere.v2.CommunityService/Create
Пример. Вывод списка сообществ в организации:
grpcurl \
-rpc-header "Authorization: Bearer <IAM-токен>" \
-d '{"organization_id": "<идентификатор_организации>"}' \
datasphere.api.cloud.yandex.net:443 \
yandex.cloud.datasphere.v2.CommunityService/List
Подробную информацию о вызовах CommunityService
см. в API-документации.
Работа с проектом
Вызовы ProjectService
и методы Project
позволяют создать, открыть, обновить и удалить проект. Также вы можете просмотреть список проектов в конкретном сообществе.
Описание | gRPC | REST |
---|---|---|
Создает новый проект в указанном сообществе | Create | create |
Обновляет проект | Update | update |
Удаляет проект | Delete | delete |
Открывает проект | Open | open |
Возвращает информацию о проекте | Get | get |
Возвращает список проектов в указанном сообществе | List | list |
Пример. Создание нового проекта:
curl \
--header "Authorization: Bearer <IAM-токен>" \
--request POST \
"https://datasphere.api.cloud.yandex.net/datasphere/v2/projects" \
--data '{ "communityId": "<идентификатор_сообщества>" }'
Пример. Вывод списка проектов в сообществе:
curl \
--header "Authorization: Bearer <IAM-токен>" \
--request GET \
"https://datasphere.api.cloud.yandex.net/datasphere/v2/projects" \
--data '{ "communityId": "<идентификатор_сообщества>" }'
Подробную информацию о методах Project
см. в API-документации.
Пример. Создание нового проекта:
grpcurl \
-rpc-header "Authorization: Bearer <IAM-токен>" \
-d '{"community_id": "<идентификатор_сообщества>"}' \
datasphere.api.cloud.yandex.net:443 \
yandex.cloud.datasphere.v2.ProjectService/Create
Пример. Вывод списка проектов в каталоге:
grpcurl \
-rpc-header "Authorization: Bearer <IAM-токен>" \
-d '{"community_id": "<идентификатор_сообщества>"}' \
datasphere.api.cloud.yandex.net:443 \
yandex.cloud.datasphere.v2.ProjectService/List
Подробную информацию о вызовах ProjectService
см. в API-документации.
Работа с ноутбуком
Вызов Execute
и метод execute
сервиса ProjectService
позволяют запустить ноутбук для исполнения.
Описание | gRPC | REST |
---|---|---|
Запускает заданный ноутбук | Execute | execute |
Пример. Запуск всего ноутбука:
curl \
--header "Authorization: Bearer <IAM-токен>" \
--request POST \
"https://datasphere.api.cloud.yandex.net/datasphere/v2/projects/<идентификатор_проекта>:execute" \
--data '{ "notebook_id": "<идентификатор_ноутбука>" }'
Чтобы получить идентификатор ноутбука, воспользуйтесь инструкцией Получить идентификатор ноутбука.
Подробную информацию о методах Project
см. в API-документации.
Пример. Запуск всего ноутбука:
grpcurl \
-rpc-header "Authorization: Bearer <IAM-токен>" \
-d '{"project_id": "<идентификатор_проекта>", "target": "notebook_id", "notebook_id": "<идентификатор_ноутбука>"}' \
datasphere.api.cloud.yandex.net:443 \
yandex.cloud.datasphere.v2.ProjectService/Execute
Чтобы получить идентификатор ноутбука, воспользуйтесь инструкцией Получить идентификатор ноутбука.
Подробную информацию о вызовах ProjectService
см. в API-документации.
Работа с ресурсами
Активация и деактивация ресурсов
В DataSphere для каждого ресурса реализована своя группа методов API. С помощью вызовов методов Activate
и Deactivate
соответствующей группы в проекте можно активировать и деактивировать необходимые ресурсы.
Описание | gRPC | REST |
---|---|---|
Активирует датасет | Activate | activate |
Деактивирует датасет | Deactivate | deactivate |
Активирует коннектор S3 | Activate | activate |
Деактивирует коннектор S3 | Deactivate | deactivate |
Активирует Docker-образ | Activate | activate |
Пример. Активация датасета:
curl \
--header "Authorization: Bearer <IAM-токен>" \
--request POST \
"https://datasphere.api.cloud.yandex.net/datasphere/v2/dataset/activate" \
--data "{ \"datasetId\": \"<идентификатор_датасета>\", \"projectId\": \"<идентификатор_проекта>\" }"
Пример. Деактивация датасета:
curl \
--header "Authorization: Bearer <IAM-токен>" \
--request POST \
"https://datasphere.api.cloud.yandex.net/datasphere/v2/dataset/deactivate" \
--data "{ \"datasetId\": \"<идентификатор_датасета>\", \"projectId\": \"<идентификатор_проекта>\" }"
Подробную информацию о методах Dataset
см. в API-документации.
Пример. Активация датасета:
grpcurl \
-rpc-header "Authorization: Bearer <IAM-токен>" \
-d "{\"project_id\": \"<идентификатор_проекта>\", \"dataset_id\": \"<идентификатор_датасета>\"}" \
datasphere.api.cloud.yandex.net:443 \
yandex.cloud.datasphere.v2.DatasetService/Activate
Пример. Деактивация датасета:
grpcurl \
-rpc-header "Authorization: Bearer <IAM-токен>" \
-d "{\"project_id\": \"<идентификатор_проекта>\", \"dataset_id\": \"<идентификатор_датасета>\"}" \
datasphere.api.cloud.yandex.net:443 \
yandex.cloud.datasphere.v2.DatasetService/Deactivate
Подробную информацию о вызовах DatasetService
см. в API-документации.
Добавление и удаление ресурсов
С помощью API вы можете добавлять и удалять ресурсы в проект (ProjectService
, Project
) или сообществ (CommunityService
, Community
).
Чтобы в своем проекте использовать ресурсы другого проекта, нужно поделиться ресурсом в сообществе и добавить его в свой проект.
Описание | gRPC | REST |
---|---|---|
Добавляет ресурс в сообщество | AddResource | addResource |
Удаляет ресурс из сообщества | RemoveResource | removeResource |
Добавляет ресурс в проект | AddResource | addResource |
Удаляет ресурс из проекта | RemoveResource | removeResource |
Пример. Добавление ресурса в проект:
curl \
--header "Authorization: Bearer <IAM-токен>" \
--request POST \
"https://datasphere.api.cloud.yandex.net/datasphere/v2/projects/<идентификатор_ресурса>:addResource" \
--data "{ \"projectId\": \"<идентификатор_проекта>\" }"
Пример. Удаление ресурса из проекта:
curl \
--header "Authorization: Bearer <IAM-токен>" \
--request POST \
"https://datasphere.api.cloud.yandex.net/datasphere/v2/projects/<идентификатор_ресурса>:removeResource" \
--data "{ \"projectId\": \"<идентификатор_проекта>\" }"
Подробную информацию о методах Project
см. в API-документации.
Пример. Добавление ресурса в проект:
grpcurl \
-rpc-header "Authorization: Bearer <IAM-токен>" \
-d "{\"project_id\": \"<идентификатор_проекта>\", \"resource_id\": \"<идентификатор_ресурса>\"}" \
datasphere.api.cloud.yandex.net:443 \
yandex.cloud.datasphere.v2.ProjectService/AddResource
Пример. Удаление ресурса из проекта:
grpcurl \
-rpc-header "Authorization: Bearer <IAM-токен>" \
-d "{\"project_id\": \"<идентификатор_проекта>\", \"resource_id\": \"<идентификатор_ресурса>\"}" \
datasphere.api.cloud.yandex.net:443 \
yandex.cloud.datasphere.v2.ProjectService/RemoveResource
Подробную информацию о вызовах ProjectService
см. в API-документации.
Управление доступами
С помощью API вы можете настраивать доступ к проекту (ProjectService
, Project
) или сообществу (CommunityService
, Community
).
Описание | gRPC | REST |
---|---|---|
Возвращает список доступов к проекту | ListAccessBindings | listAccessBindings |
Устанавливает доступ к проекту | SetAccessBindings | setAccessBindings |
Обновляет доступ к проекту | UpdateAccessBindings | updateAccessBindings |
Возвращает список доступов к сообществу | ListAccessBindings | listAccessBindings |
Устанавливает доступ к сообществу | SetAccessBindings | setAccessBindings |
Обновляет доступ к сообществу | UpdateAccessBindings | updateAccessBindings |
Пример. Вывод списка доступов к проекту:
curl \
--header "Authorization: Bearer <IAM-токен>" \
--request GET \
"https://datasphere.api.cloud.yandex.net/datasphere/v2/projects/<идентификатор_ресурса>:accessBindings"
Пример. Вывод списка доступов к сообществу:
curl \
--header "Authorization: Bearer <IAM-токен>" \
--request GET \
"https://datasphere.api.cloud.yandex.net/datasphere/v2/communities/<идентификатор_ресурса>:accessBindings"
Подробную информацию о методах см. в API-документации Project и Community.
Пример. Вывод списка доступов к проекту:
grpcurl \
-rpc-header "Authorization: Bearer <IAM-токен>" \
-d '{"resource_id": "<идентификатор_проекта>"}' \
datasphere.api.cloud.yandex.net:443 \
yandex.cloud.datasphere.v2.ProjectService/ListAccessBindings
Пример. Вывод списка доступов к сообществу:
grpcurl \
-rpc-header "Authorization: Bearer <IAM-токен>" \
-d '{"resource_id": "<идентификатор_сообщества>"}' \
datasphere.api.cloud.yandex.net:443 \
yandex.cloud.datasphere.v2.CommunityService/ListAccessBindings
Подробную информацию о методах см. в API-документации ProjectService и CommunityService.
Управление ограничениями вычислений
С помощью API вы можете настраивать ограничения вычислений для проекта (ProjectService
, Project
).
Описание | gRPC | REST |
---|---|---|
Возвращает баланс проекта | GetUnitBalance | getUnitBalance |
Устанавливает баланс проекта | SetUnitBalance | setUnitBalance |
Пример. Получение баланса проекта:
curl \
--header "Authorization: Bearer <IAM-токен>" \
--request GET \
"https://datasphere.api.cloud.yandex.net/datasphere/v2/projects/<идентификатор_проекта>:unitBalance"
Подробную информацию о методах Project
см. в API-документации.
Пример. Получение баланса проекта:
grpcurl \
-rpc-header "Authorization: Bearer <IAM-токен>" \
-d '{"project_id": "<идентификатор_проекта>"}' \
datasphere.api.cloud.yandex.net:443 \
yandex.cloud.datasphere.v2.ProjectService/GetUnitBalance
Подробную информацию о вызовах ProjectService
см. в API-документации.