> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nebius.com/llms.txt
> Use this file to discover all available pages before exploring further.

# How to invoke a Nebius AI Cloud API method by using gRPCurl

To send a gRPC API request, you can use `grpcurl`. To send a Nebius AI Cloud API request:

1. Get an access token for authentication:

   ```bash theme={null}
   nebius iam get-access-token
   ```

2. On [GitHub](https://github.com/nebius/api/blob/main/endpoints.md), find a gRPC service that you want to send a request to, and determine its endpoint.

   For example, to get a list of virtual machines (VMs) in a project, use the following:

   * `compute.api.nebius.cloud:443` endpoint for the Compute service.
   * `nebius.compute.v1.InstanceService` gRPC service for VMs.

   For more information, see [How to define an endpoint](../endpoints/define).

3. To check what body your request should have, open the `***_service.proto` file of the selected endpoint. You can open it from the [same page on GitHub](https://github.com/nebius/api/blob/main/endpoints.md).

   For example, to get a list of VMs in a project, use the `ListInstancesRequest` message. It requires the `parent_id` parameter (the ID of your project).

4. Prepare and send the request.

   For example, to get a list of VMs, you can run the following `grpcurl` command:

   ```bash theme={null}
   grpcurl -rpc-header "Authorization: Bearer <access_token>" \
      -d '{
            "parent_id": "project-e***"
          }' \
      compute.api.nebius.cloud:443 \
      nebius   .compute.v1.InstanceService/List
   ```
