---
title: "List Protein items"
method: GET
path: "/api/v3/protein/items"
tags: ["Protein"]
---

# List Protein items

`GET /api/v3/protein/items`

## Request

- Base URL: `https://{tenant_name}.benchling.com`
- URL: `https://{tenant_name}.benchling.com/api/v3/protein/items`
- Auth: HTTP bearer

List Protein items.

Default and max page size is 15.

## Query parameters

- `archiveReason.anyOf` string[]
- `archived.anyOf` boolean[]
- `authors.anyOf` string[]
- `createdAt.gt` string, datetime
- `createdAt.gte` string, datetime
- `createdAt.lt` string, datetime
- `createdAt.lte` string, datetime
- `creator.anyOf` string[]
- `entityRegistryIds.anyOf` string[]
- `fieldset.anyOf` string[]
- `folder.eq` string
- `id.anyOf` string[]
- `mentionedIn.anyOf` string[]
- `modifiedAt.gt` string, datetime
- `modifiedAt.gte` string, datetime
- `modifiedAt.lt` string, datetime
- `modifiedAt.lte` string, datetime
- `name.anyOf` string[]
- `name.anyOf.caseSensitive` string[]
- `nextToken` string
- `omit` string[]
- `pageSize` integer
- `project.eq` string
- `registry.eq` string
- `returning` string[]
- `schema.anyOf` string[]
- `schema.eq` string
- `systemCategory.anyOf` string[]
- `sort` 'createdAt:asc' | 'createdAt:desc' | 'modifiedAt:asc' | 'modifiedAt:desc'

## Response `200`

OK

- ProteinPaginatedList
  - `items` Protein[]
    - `__typename` string
    - `aliases` string[], nullable: Array of aliases
    - `archiveReason` string, nullable
    - `archived` boolean
    - `chains` ProteinChain[]: The chains and associated amino acid sequences on the protein.
      - `__typename` string
      - `chainPositions` ProteinFormatChainPosition[]: Each chain position of this chain in the protein. If a chain has multiplicity > 1, each chain position will be listed here.
        - `__typename` string
        - `domainPositions` ProteinFormatDomainPosition[]: A list of all the domain positions that make up the chain position, in order
          - `__typename` string
          - `optional` boolean: Whether this domain is optional in the format. If true, entities of this format may not have this domain.
          - `ref` integer: A unique identifier for a physical component (chain or domain) in a protein format. This is used to form a HELM reference that is used in the protein's complex polymer structure.
          - `type` 'VL' | 'CL' | 'VH' | 'VHH' | 'CH1' | 'CH2' | 'CH3' | 'CH4' | 'J' | 'H' | 'L' | 'VA' | 'CA' | 'VB' | 'CB' | 'VG' | 'CG' | 'VD' | 'CD' | 'F' | 'ELEMENT': Type of the domain
        - `ref` integer: A unique identifier for a physical component (chain or domain) in a protein format. This is used to form a HELM reference that is used in the protein's complex polymer structure.
        - `type` 'HEAVY' | 'LIGHT' | 'NONE' | 'ALPHA' | 'BETA' | 'JOINING': Type of the chain.
      - `domains` ProteinDomain[]: Each domain on the chain, ordered according to the format.
        - `__typename` string
        - `domainPositions` ProteinFormatDomainPosition[]: Each domain position of this domain in the protein. If this domain appears multiple times in the physical structure of the protein, each domain position will be listed here.
          - `__typename` string
          - `optional` boolean: Whether this domain is optional in the format. If true, entities of this format may not have this domain.
          - `ref` integer: A unique identifier for a physical component (chain or domain) in a protein format. This is used to form a HELM reference that is used in the protein's complex polymer structure.
          - `type` 'VL' | 'CL' | 'VH' | 'VHH' | 'CH1' | 'CH2' | 'CH3' | 'CH4' | 'J' | 'H' | 'L' | 'VA' | 'CA' | 'VB' | 'CB' | 'VG' | 'CG' | 'VD' | 'CD' | 'F' | 'ELEMENT': Type of the domain
        - `entity` AaSequenceRef
          - `__typename` string
          - `id` string, api_id
        - `label` string: A human-readable label for the domain.
        - `type` 'VL' | 'CL' | 'VH' | 'VHH' | 'CH1' | 'CH2' | 'CH3' | 'CH4' | 'J' | 'H' | 'L' | 'VA' | 'CA' | 'VB' | 'CB' | 'VG' | 'CG' | 'VD' | 'CD' | 'F' | 'ELEMENT': The type of the domain.
      - `entity` AaSequenceRef
        - `__typename` string
        - `id` string, api_id
      - `label` string: Unique label for the chain, computed from the format.
      - `type` 'HEAVY' | 'LIGHT' | 'NONE' | 'ALPHA' | 'BETA' | 'JOINING': The type of the chain.
    - `createdAt` string, datetime: DateTime the protein was created.
    - `customFields` CustomField[], nullable: Custom fields set on the protein.
      - `__typename` string
      - `name` string, nullable
      - `value` string, nullable
    - `domains` ProteinDomain[]: The domains and associated amino acid sequences on the protein.
      - `__typename` string
      - `domainPositions` ProteinFormatDomainPosition[]: Each domain position of this domain in the protein. If this domain appears multiple times in the physical structure of the protein, each domain position will be listed here.
        - `__typename` string
        - `optional` boolean: Whether this domain is optional in the format. If true, entities of this format may not have this domain.
        - `ref` integer: A unique identifier for a physical component (chain or domain) in a protein format. This is used to form a HELM reference that is used in the protein's complex polymer structure.
        - `type` 'VL' | 'CL' | 'VH' | 'VHH' | 'CH1' | 'CH2' | 'CH3' | 'CH4' | 'J' | 'H' | 'L' | 'VA' | 'CA' | 'VB' | 'CB' | 'VG' | 'CG' | 'VD' | 'CD' | 'F' | 'ELEMENT': Type of the domain
      - `entity` AaSequenceRef
        - `__typename` string
        - `id` string, api_id
      - `label` string: A human-readable label for the domain.
      - `type` 'VL' | 'CL' | 'VH' | 'VHH' | 'CH1' | 'CH2' | 'CH3' | 'CH4' | 'J' | 'H' | 'L' | 'VA' | 'CA' | 'VB' | 'CB' | 'VG' | 'CG' | 'VD' | 'CD' | 'F' | 'ELEMENT': The type of the domain.
    - `entityRegistryId` string, nullable: The registry-assigned identifier for this item (e.g. its registry ID shown in the UI), present only once the item has been registered. Null if the item is not registered.
    - `folder` FolderRef
      - `__typename` string
      - `id` string, api_id
    - `format` ProteinFormatRef
      - `__typename` string
      - `id` string, api_id
    - `fullHistory` string, uri: `fullHistory` is a superset of `history` that also returns inactive versions that are not part of the current version history. Versions are returned in chronological order (oldest first).
    - `history` string, uri: Only the currently active version lineage, in chronological order (oldest first). If a change was made and then undone by resetting to an earlier version, the version recording that change is not relevant to the current state of the entity, so it is not included in this listing.
    - `id` string: ID of the protein.
    - `modifiedAt` string, datetime: DateTime the protein was last modified.
    - `name` string: Name of the item.
    - `outOfSync` boolean: Indicates if constituent domain or chain entities have changed since the protein was last updated.
    - `outOfSyncReason` string, nullable: Any additional information about why the protein is out of sync.
    - `project` ProjectRef
      - `__typename` string
      - `id` string, api_id
    - `registrationOrigin` RegistrationOrigin: Captures the provenance of an entity's registration into the registry. The `originEntry` links to the `DocumentLike` (typically an entry or notebook) from which the entity was registered, providing traceability back to the original experimental context. The `registeredAt` timestamp records when the registration occurred. This information helps scientists understand where registered entities came from and when they were added to the registry.
      - `__typename` string
      - `originEntry` DocumentLikeRef
        - `__typename` string
        - `id` string, api_id
      - `registeredAt` string, datetime, nullable
    - `registry` RegistryRef
      - `__typename` string
      - `id` string, api_id
    - `schema` EntitySchemaRef
      - `__typename` string
      - `id` string, api_id
    - `typedSchema` ProteinSchemaRef
      - `__typename` string
      - `id` string, api_id
    - `authors` string, uri, nullable
    - `creator` PrincipalRef
      - `__typename` string
      - `id` string, api_id
    - `schemaFields` SchemaFieldValue[], nullable: Values for schema-defined fields on this protein.
      - `__typename` string
      - `fieldDefinition` SchemaFieldDefinitionRef
        - `__typename` string
        - `id` string, api_id
      - `id` string
      - `linkedEntityId` string, nullable
      - `value` union: Types of values that Benchling can interpret.
        - object: A type that represents a list of BenchlingValues, used for multi-value cells (e.g. alias columns).
          - `__typename` 'ArrayValue', required: Discriminator value: ArrayValue
          - `value` SingularBenchlingValue[]
            - union: A union of value types that can appear as elements within an ArrayValue. Identical to BenchlingValue but excludes ArrayValue to prevent nesting. Keep in sync with BenchlingValue.
              - …
        - object: A type that represents boolean values.
          - `__typename` 'BooleanValue', required: Discriminator value: BooleanValue
          - `value` boolean: The boolean value.
        - object: A type that represents datetime values.
          - `__typename` 'DateTimeValue', required: Discriminator value: DateTimeValue
          - `value` string, datetime: The datetime value with UTC as the timezone.
        - object: A type that represents date values.
          - `__typename` 'DateValue', required: Discriminator value: DateValue
          - `value` string, date: The date value.
        - object: A type that represents decimal value as strings.
          - `__typename` 'DecimalValue', required: Discriminator value: DecimalValue
          - `numericValue` number, double, nullable: Deprecated. The float representation of the decimal value.
          - `value` string, nullable: The decimal value in a string representation
        - object: A type that represents integer values.
          - `__typename` 'IntegerValue', required: Discriminator value: IntegerValue
          - `value` integer: The integer value.
        - object: A type that represents JSON values.
          - `__typename` 'JsonValue', required: Discriminator value: JsonValue
          - `value` union: The JSON value.
            - object
            - string[]
            - string
            - number, double
            - boolean
        - object: A type that represents a list of links to other objects.
          - `__typename` 'ObjectLinkListValue', required: Discriminator value: ObjectLinkListValue
          - `value` LinkableDomainObject[]: The list of objects that this value links to. Inaccessible objects may be returned instead if the object is not found with the current permission set.
            - union: A union representing items that can be linked to. If you have a type that can be linked to, it can only be added once it's in beta.
              - …
        - object: A type that represents links to other objects.
          - `__typename` 'ObjectLinkValue', required: Discriminator value: ObjectLinkValue
          - `value` union: A union representing items that can be linked to. If you have a type that can be linked to, it can only be added once it's in beta.
            - object: AaSequence variant
              - …
            - object: Attachment variant
              - …
            - object: Box variant
              - …
            - object: Container variant
              - …
            - object: CustomEntity variant
              - …
            - object: DnaOligo variant
              - …
            - object: DnaSequence variant
              - …
            - object: DropdownOption variant
              - …
            - object: Entry variant
              - …
            - object: Inaccessible variant
              - …
            - object: Location variant
              - …
            - object: MatrixPlate variant
              - …
            - object: Mixture variant
              - …
            - object: Molecule variant
              - …
            - object: OligoConjugate variant
              - …
            - object: OligoDuplex variant
              - …
            - object: Protein variant
              - …
            - object: Result variant
              - …
            - object: RnaOligo variant
              - …
            - object: RnaSequence variant
              - …
            - object: Run variant
              - …
            - object: WellPlate variant
              - …
        - object: A type that represents text (string) values with an associated URL.
          - `__typename` string, required
          - `url` string: The URL associated with the value. Please use `TextValue` if you don't want a URL.
          - `value` string: The text value. It may or may not be an empty string.
        - object: A type that represents text (string) values.
          - `__typename` string, required
          - `value` string: The text value. It may or may not be an empty string.
  - `nextToken` string, nullable

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found
- `429`: Too Many Requests
- `500`: Internal Server Error

---

[API](https://skmtc.dev/benchling/apis/benchling-api.md) - [All operations](https://skmtc.dev/benchling/apis/benchling-api/llms.txt) - [OpenAPI document](https://skmtc.dev/benchling/apis/benchling-api/revisions/c9f087b98b8b?raw)
