members

package
v0.0.0-...-4a248c4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 29, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Affiliation

type Affiliation struct {
	Active    bool
	OrgUid    uuid.UUID
	PersonUid uuid.UUID
	Uid       uuid.UUID
	Type      string
	ValidFrom *time.Time
	ValidTo   *time.Time
}

Affiliation is an affiliation to an entity

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client is the base struct which contains methods for communicating with the members API

func New

func New(config Config, tokenProvider tokenProvider, breaker *gobreaker.CircuitBreaker) *Client

New returns a new members client

func (*Client) GetMembersByIDs

func (c *Client) GetMembersByIDs(ctx context.Context, ids []int) ([]Member, error)

GetMembersByIDs retrieves a batch of members by ID

func (*Client) GetOrganizationsByIDs

func (c *Client) GetOrganizationsByIDs(ctx context.Context, ids []uuid.UUID) ([]Organization, error)

GetOrganizationsByIDs returns organizations by IDs.

func (*Client) Lookup

func (c *Client) Lookup(ctx context.Context, personID int) (*Member, error)

Lookup returns a member from the members api

func (*Client) RetrieveByEmails

func (c *Client) RetrieveByEmails(ctx context.Context, emails []string) (*[]Member, error)

RetrieveByEmails retrieves members by emails

type Config

type Config struct {
	Domain string
}

Config contains configuration options for the client

type Member

type Member struct {
	PersonID      int
	BirthDate     string
	Email         string
	EmailVerified bool   `json:"emailVerified"`
	DisplayName   string `json:"displayName"`
	FirstName     string `json:"firstName"`
	Gender        string `json:"gender"`
	Affiliations  []Affiliation
}

Member is a member with related data

type Organization

type Organization struct {
	OrgID int
	Name  string `json:"districtName"`
	Type  string
	Uid   uuid.UUID
}

Organization contains organizational data

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL