## List

`client.Protein.LibraryScreen.List(ctx, query) (*CursorPage[ProteinLibraryScreenListResponse], error)`

**get** `/compute/v1/protein/library-screen`

List protein library screens, optionally filtered by workspace

### Parameters

- `query ProteinLibraryScreenListParams`

  - `AfterID param.Field[string]`

    Return results after this ID

  - `BeforeID param.Field[string]`

    Return results before this ID

  - `Limit param.Field[int64]`

    Max items to return. Defaults to 100.

  - `WorkspaceID param.Field[string]`

    Filter by workspace ID. Only used with admin API keys. If not provided, defaults to the workspace associated with the API key, or the default workspace for admin keys.

### Returns

- `type ProteinLibraryScreenListResponse struct{…}`

  Summary of a protein library screening engine run (excludes input)

  - `ID string`

    Unique ProteinLibraryScreenSummary identifier

  - `CompletedAt Time`

  - `CreatedAt Time`

  - `DataDeletedAt Time`

    When the input, output, and result data was permanently deleted. Null if data has not been deleted.

  - `Engine BoltzProteinScreen`

    Engine used for protein library screen

    - `const BoltzProteinScreenBoltzProteinScreen BoltzProteinScreen = "boltz-protein-screen"`

  - `EngineVersion string`

    Engine version used for protein library screen

  - `Error ProteinLibraryScreenListResponseError`

    - `Code string`

      Machine-readable error code

    - `Message string`

      Human-readable error message

    - `Details any`

      Additional field-level error details keyed by input path, when available.

  - `Livemode bool`

    Whether this resource was created with a live API key.

  - `Progress ProteinLibraryScreenListResponseProgress`

    - `NumProteinsFailed int64`

      Number of accepted proteins that reached terminal failure during screening.

    - `NumProteinsScreened int64`

      Number of accepted proteins that produced usable screening results.

    - `TotalProteinsToScreen int64`

      Total number of proteins accepted into the screening run.

    - `LatestResultID string`

      ID of the latest result

  - `StartedAt Time`

  - `Status ProteinLibraryScreenListResponseStatus`

    - `const ProteinLibraryScreenListResponseStatusPending ProteinLibraryScreenListResponseStatus = "pending"`

    - `const ProteinLibraryScreenListResponseStatusRunning ProteinLibraryScreenListResponseStatus = "running"`

    - `const ProteinLibraryScreenListResponseStatusSucceeded ProteinLibraryScreenListResponseStatus = "succeeded"`

    - `const ProteinLibraryScreenListResponseStatusFailed ProteinLibraryScreenListResponseStatus = "failed"`

    - `const ProteinLibraryScreenListResponseStatusStopped ProteinLibraryScreenListResponseStatus = "stopped"`

  - `StoppedAt Time`

  - `WorkspaceID string`

    Workspace ID

  - `IdempotencyKey string`

    Client-provided idempotency key

### Example

```go
package main

import (
  "context"
  "fmt"

  "github.com/boltz-bio/boltz-api-go"
  "github.com/boltz-bio/boltz-api-go/option"
)

func main() {
  client := boltzapi.NewClient(
    option.WithAPIKey("My API Key"),
  )
  page, err := client.Protein.LibraryScreen.List(context.TODO(), boltzapi.ProteinLibraryScreenListParams{

  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", page)
}
```
