# Member ## Retrieve a member `client.Member.Get(ctx, id) (*MemberRetrieveResponse, error)` **get** `/v1/members/{id}` Retrieves a single member by their ID. **[Required scope](/using-the-api/scopes/):** `members:read` **[Rate limit category](/using-the-api/rate-limits/):** Read ### Parameters - `id string` Unique identifier of the member to retrieve. ### Returns - `type MemberRetrieveResponse struct{…}` - `ID string` Unique identifier for the member. - `CreatedAt string` ISO 8601 timestamp of when the member was created. - `Fields MemberRetrieveResponseFields` Map of field names to their typed values. - `Email MemberRetrieveResponseFieldsEmail` The member's email address. - `Value string` The field value. - `ValueType string` The data type of the field value. - `const MemberRetrieveResponseFieldsEmailValueTypeEmail MemberRetrieveResponseFieldsEmailValueType = "EMAIL"` - `Name MemberRetrieveResponseFieldsName` The member's full name. - `Value MemberRetrieveResponseFieldsNameValue` - `FirstName string` The contact's first name. - `LastName string` The contact's last name. - `ValueType string` The data type of the field value. - `const MemberRetrieveResponseFieldsNameValueTypeFullName MemberRetrieveResponseFieldsNameValueType = "FULL_NAME"` - `ProfileImage MemberRetrieveResponseFieldsProfileImage` URL of the member's profile image, or null if unset. - `Value string` The field value, or null if unset. - `ValueType string` The data type of the field value. - `const MemberRetrieveResponseFieldsProfileImageValueTypeURL MemberRetrieveResponseFieldsProfileImageValueType = "URL"` - `Role MemberRetrieveResponseFieldsRole` The member's workspace role. - `Value string` The field value. - `ValueType string` The data type of the field value. - `const MemberRetrieveResponseFieldsRoleValueTypeText MemberRetrieveResponseFieldsRoleValueType = "TEXT"` - `HTTPLink string` URL to view the member in the Lightfield web app, or null. - `Relationships any` Members do not expose writable or readable relationships in this API. - `UpdatedAt string` ISO 8601 timestamp of when the member was last updated, or null. ### Example ```go 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"), ) memberRetrieveResponse, err := client.Member.Get(context.TODO(), "id") if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", memberRetrieveResponse.ID) } ``` #### Response ```json { "id": "id", "createdAt": "createdAt", "fields": { "$email": { "value": "value", "valueType": "EMAIL" }, "$name": { "value": { "firstName": "firstName", "lastName": "lastName" }, "valueType": "FULL_NAME" }, "$profileImage": { "value": "value", "valueType": "URL" }, "$role": { "value": "value", "valueType": "TEXT" } }, "httpLink": "httpLink", "relationships": {}, "updatedAt": "updatedAt" } ``` ## List members `client.Member.List(ctx, query) (*MemberListResponse, error)` **get** `/v1/members` Returns a paginated list of members in your workspace. Use `offset` and `limit` to paginate through results. See [List endpoints](/using-the-api/list-endpoints/) for more information about pagination. **[Required scope](/using-the-api/scopes/):** `members:read` **[Rate limit category](/using-the-api/rate-limits/):** Search ### Parameters - `query MemberListParams` - `Limit param.Field[int64]` Maximum number of records to return. Defaults to 25, maximum 25. - `Offset param.Field[int64]` Number of records to skip for pagination. Defaults to 0. ### Returns - `type MemberListResponse struct{…}` - `Data []MemberListResponseData` Array of member objects for the current page. - `ID string` Unique identifier for the member. - `CreatedAt string` ISO 8601 timestamp of when the member was created. - `Fields MemberListResponseDataFields` Map of field names to their typed values. - `Email MemberListResponseDataFieldsEmail` The member's email address. - `Value string` The field value. - `ValueType string` The data type of the field value. - `const MemberListResponseDataFieldsEmailValueTypeEmail MemberListResponseDataFieldsEmailValueType = "EMAIL"` - `Name MemberListResponseDataFieldsName` The member's full name. - `Value MemberListResponseDataFieldsNameValue` - `FirstName string` The contact's first name. - `LastName string` The contact's last name. - `ValueType string` The data type of the field value. - `const MemberListResponseDataFieldsNameValueTypeFullName MemberListResponseDataFieldsNameValueType = "FULL_NAME"` - `ProfileImage MemberListResponseDataFieldsProfileImage` URL of the member's profile image, or null if unset. - `Value string` The field value, or null if unset. - `ValueType string` The data type of the field value. - `const MemberListResponseDataFieldsProfileImageValueTypeURL MemberListResponseDataFieldsProfileImageValueType = "URL"` - `Role MemberListResponseDataFieldsRole` The member's workspace role. - `Value string` The field value. - `ValueType string` The data type of the field value. - `const MemberListResponseDataFieldsRoleValueTypeText MemberListResponseDataFieldsRoleValueType = "TEXT"` - `HTTPLink string` URL to view the member in the Lightfield web app, or null. - `Relationships any` Members do not expose writable or readable relationships in this API. - `UpdatedAt string` ISO 8601 timestamp of when the member was last updated, or null. - `Object string` The object type, always `"list"`. - `TotalCount int64` Total number of members in the workspace. ### Example ```go 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"), ) memberListResponse, err := client.Member.List(context.TODO(), githubcomlightfldlightfieldgo.MemberListParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", memberListResponse.Data) } ``` #### Response ```json { "data": [ { "id": "id", "createdAt": "createdAt", "fields": { "$email": { "value": "value", "valueType": "EMAIL" }, "$name": { "value": { "firstName": "firstName", "lastName": "lastName" }, "valueType": "FULL_NAME" }, "$profileImage": { "value": "value", "valueType": "URL" }, "$role": { "value": "value", "valueType": "TEXT" } }, "httpLink": "httpLink", "relationships": {}, "updatedAt": "updatedAt" } ], "object": "object", "totalCount": 0 } ``` ## Domain Types ### Member List Response - `type MemberListResponse struct{…}` - `Data []MemberListResponseData` Array of member objects for the current page. - `ID string` Unique identifier for the member. - `CreatedAt string` ISO 8601 timestamp of when the member was created. - `Fields MemberListResponseDataFields` Map of field names to their typed values. - `Email MemberListResponseDataFieldsEmail` The member's email address. - `Value string` The field value. - `ValueType string` The data type of the field value. - `const MemberListResponseDataFieldsEmailValueTypeEmail MemberListResponseDataFieldsEmailValueType = "EMAIL"` - `Name MemberListResponseDataFieldsName` The member's full name. - `Value MemberListResponseDataFieldsNameValue` - `FirstName string` The contact's first name. - `LastName string` The contact's last name. - `ValueType string` The data type of the field value. - `const MemberListResponseDataFieldsNameValueTypeFullName MemberListResponseDataFieldsNameValueType = "FULL_NAME"` - `ProfileImage MemberListResponseDataFieldsProfileImage` URL of the member's profile image, or null if unset. - `Value string` The field value, or null if unset. - `ValueType string` The data type of the field value. - `const MemberListResponseDataFieldsProfileImageValueTypeURL MemberListResponseDataFieldsProfileImageValueType = "URL"` - `Role MemberListResponseDataFieldsRole` The member's workspace role. - `Value string` The field value. - `ValueType string` The data type of the field value. - `const MemberListResponseDataFieldsRoleValueTypeText MemberListResponseDataFieldsRoleValueType = "TEXT"` - `HTTPLink string` URL to view the member in the Lightfield web app, or null. - `Relationships any` Members do not expose writable or readable relationships in this API. - `UpdatedAt string` ISO 8601 timestamp of when the member was last updated, or null. - `Object string` The object type, always `"list"`. - `TotalCount int64` Total number of members in the workspace. ### Member Retrieve Response - `type MemberRetrieveResponse struct{…}` - `ID string` Unique identifier for the member. - `CreatedAt string` ISO 8601 timestamp of when the member was created. - `Fields MemberRetrieveResponseFields` Map of field names to their typed values. - `Email MemberRetrieveResponseFieldsEmail` The member's email address. - `Value string` The field value. - `ValueType string` The data type of the field value. - `const MemberRetrieveResponseFieldsEmailValueTypeEmail MemberRetrieveResponseFieldsEmailValueType = "EMAIL"` - `Name MemberRetrieveResponseFieldsName` The member's full name. - `Value MemberRetrieveResponseFieldsNameValue` - `FirstName string` The contact's first name. - `LastName string` The contact's last name. - `ValueType string` The data type of the field value. - `const MemberRetrieveResponseFieldsNameValueTypeFullName MemberRetrieveResponseFieldsNameValueType = "FULL_NAME"` - `ProfileImage MemberRetrieveResponseFieldsProfileImage` URL of the member's profile image, or null if unset. - `Value string` The field value, or null if unset. - `ValueType string` The data type of the field value. - `const MemberRetrieveResponseFieldsProfileImageValueTypeURL MemberRetrieveResponseFieldsProfileImageValueType = "URL"` - `Role MemberRetrieveResponseFieldsRole` The member's workspace role. - `Value string` The field value. - `ValueType string` The data type of the field value. - `const MemberRetrieveResponseFieldsRoleValueTypeText MemberRetrieveResponseFieldsRoleValueType = "TEXT"` - `HTTPLink string` URL to view the member in the Lightfield web app, or null. - `Relationships any` Members do not expose writable or readable relationships in this API. - `UpdatedAt string` ISO 8601 timestamp of when the member was last updated, or null.