Skip to content

List custom object records

client.Object.List(ctx, entitySlug, query) (*ObjectListResponse, error)
GET/v1/objects/{entitySlug}

Returns a paginated list of records for the specified custom object type. Results are sorted by when the record was created in Lightfield (createdAt), newest first. Each page holds only the records you can currently read, so a page can contain fewer records than limit, or none, while more remain, and totalCount can include records you can no longer read. To read every record, keep advancing offset by limit until it reaches totalCount; do not stop at a short or empty page. Use offset and limit to paginate through results, and $field query parameters to filter. See List endpoints for more information about pagination and filtering.

ParametersExpand Collapse
entitySlug string

The slug of the custom object type.

query ObjectListParams
Limit param.Field[int64]Optional

Maximum number of records to return. Defaults to 25, maximum 25.

minimum1
maximum9007199254740991
Offset param.Field[int64]Optional

Number of records to skip for pagination. Defaults to 0.

minimum0
maximum9007199254740991
ReturnsExpand Collapse
type ObjectListResponse struct{…}
Data []ObjectListResponseData

Array of entity objects for the current page.

ID string

Unique identifier for the entity.

CreatedAt string

ISO 8601 timestamp of when the entity was created.

Fields map[string, ObjectListResponseDataField]

Map of field names to their typed values. System fields are prefixed with $ (e.g. $name, $email); custom attributes use their bare slug.

Value ObjectListResponseDataFieldValueUnion

The field value, or null if unset.

One of the following:
string
float64
bool
type ObjectListResponseDataFieldValueArray []string
type ObjectListResponseDataFieldValueAddress struct{…}
City stringOptional

City name.

Country stringOptional

2-letter ISO 3166-1 alpha-2 country code.

Latitude float64Optional

Latitude coordinate.

Longitude float64Optional

Longitude coordinate.

PostalCode stringOptional

Postal or ZIP code.

State stringOptional

State or province.

Street stringOptional

Street address line 1.

Street2 stringOptional

Street address line 2.

type ObjectListResponseDataFieldValueFullName struct{…}
FirstName stringOptional

The contact’s first name.

LastName stringOptional

The contact’s last name.

ValueType string

The data type of the field.

One of the following:
const ObjectListResponseDataFieldValueTypeAddress ObjectListResponseDataFieldValueType = "ADDRESS"
const ObjectListResponseDataFieldValueTypeCheckbox ObjectListResponseDataFieldValueType = "CHECKBOX"
const ObjectListResponseDataFieldValueTypeCurrency ObjectListResponseDataFieldValueType = "CURRENCY"
const ObjectListResponseDataFieldValueTypeDatetime ObjectListResponseDataFieldValueType = "DATETIME"
const ObjectListResponseDataFieldValueTypeEmail ObjectListResponseDataFieldValueType = "EMAIL"
const ObjectListResponseDataFieldValueTypeFullName ObjectListResponseDataFieldValueType = "FULL_NAME"
const ObjectListResponseDataFieldValueTypeMarkdown ObjectListResponseDataFieldValueType = "MARKDOWN"
const ObjectListResponseDataFieldValueTypeMultiSelect ObjectListResponseDataFieldValueType = "MULTI_SELECT"
const ObjectListResponseDataFieldValueTypeNumber ObjectListResponseDataFieldValueType = "NUMBER"
const ObjectListResponseDataFieldValueTypeSingleSelect ObjectListResponseDataFieldValueType = "SINGLE_SELECT"
const ObjectListResponseDataFieldValueTypeSocialHandle ObjectListResponseDataFieldValueType = "SOCIAL_HANDLE"
const ObjectListResponseDataFieldValueTypeTelephone ObjectListResponseDataFieldValueType = "TELEPHONE"
const ObjectListResponseDataFieldValueTypeText ObjectListResponseDataFieldValueType = "TEXT"
const ObjectListResponseDataFieldValueTypeURL ObjectListResponseDataFieldValueType = "URL"
const ObjectListResponseDataFieldValueTypeHTML ObjectListResponseDataFieldValueType = "HTML"
Relationships map[string, ObjectListResponseDataRelationship]

Map of relationship names to their associated entities. System relationships are prefixed with $ (e.g. $owner, $contact). A self-referential relationship keeps its merged values and includes optional directional values. List filters select the current record’s role with :asSource or :asDestination, for example ?parent:asSource[contains]=account_id.

Cardinality string

Whether the relationship is has_one or has_many.

ObjectType string

The type of the related object (e.g. account, contact).

Values []string

IDs of the related entities.

Directions ObjectListResponseDataRelationshipDirectionsOptional

Directional values for a self-referential relationship. List filters use the relationship key with :asSource or :asDestination; writes continue to use the bare key.

AsDestination ObjectListResponseDataRelationshipDirectionsAsDestination

The current record is the destination (incoming) endpoint.

Cardinality string

Whether this endpoint direction is HAS_ONE or HAS_MANY.

One of the following:
const ObjectListResponseDataRelationshipDirectionsAsDestinationCardinalityHasOne ObjectListResponseDataRelationshipDirectionsAsDestinationCardinality = "HAS_ONE"
const ObjectListResponseDataRelationshipDirectionsAsDestinationCardinalityHasMany ObjectListResponseDataRelationshipDirectionsAsDestinationCardinality = "HAS_MANY"
Values []string

IDs of the related entities in this direction.

AsSource ObjectListResponseDataRelationshipDirectionsAsSource

The current record is the source (outgoing) endpoint.

Cardinality string

Whether this endpoint direction is HAS_ONE or HAS_MANY.

One of the following:
const ObjectListResponseDataRelationshipDirectionsAsSourceCardinalityHasOne ObjectListResponseDataRelationshipDirectionsAsSourceCardinality = "HAS_ONE"
const ObjectListResponseDataRelationshipDirectionsAsSourceCardinalityHasMany ObjectListResponseDataRelationshipDirectionsAsSourceCardinality = "HAS_MANY"
Values []string

IDs of the related entities in this direction.

UpdatedAt string

ISO 8601 timestamp of when the entity was last updated, or null.

ExternalID stringOptional

External identifier for the entity, or null if unset.

Object string

The object type, always "list".

TotalCount int64

Total number of entities matching the query.

minimum0
maximum9007199254740991

List custom object records

package main

import (
  "context"
  "fmt"

  "github.com/Lightfld/lightfield-go"
  "github.com/Lightfld/lightfield-go/option"
)

func main() {
  client := githubcomlightfldlightfieldgo.NewClient(
    option.WithAPIKey("My API Key"),
  )
  objectListResponse, err := client.Object.List(
    context.TODO(),
    "entitySlug",
    githubcomlightfldlightfieldgo.ObjectListParams{

    },
  )
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", objectListResponse.Data)
}
{
  "data": [
    {
      "id": "id",
      "createdAt": "createdAt",
      "fields": {
        "foo": {
          "value": "string",
          "valueType": "ADDRESS"
        }
      },
      "httpLink": "httpLink",
      "relationships": {
        "foo": {
          "cardinality": "cardinality",
          "objectType": "objectType",
          "values": [
            "string"
          ],
          "directions": {
            "asDestination": {
              "cardinality": "HAS_ONE",
              "values": [
                "string"
              ]
            },
            "asSource": {
              "cardinality": "HAS_ONE",
              "values": [
                "string"
              ]
            }
          }
        }
      },
      "updatedAt": "updatedAt",
      "externalId": "externalId"
    }
  ],
  "object": "object",
  "totalCount": 0
}
Returns Examples
{
  "data": [
    {
      "id": "id",
      "createdAt": "createdAt",
      "fields": {
        "foo": {
          "value": "string",
          "valueType": "ADDRESS"
        }
      },
      "httpLink": "httpLink",
      "relationships": {
        "foo": {
          "cardinality": "cardinality",
          "objectType": "objectType",
          "values": [
            "string"
          ],
          "directions": {
            "asDestination": {
              "cardinality": "HAS_ONE",
              "values": [
                "string"
              ]
            },
            "asSource": {
              "cardinality": "HAS_ONE",
              "values": [
                "string"
              ]
            }
          }
        }
      },
      "updatedAt": "updatedAt",
      "externalId": "externalId"
    }
  ],
  "object": "object",
  "totalCount": 0
}