Skip to content

Latest commit

 

History

History
195 lines (149 loc) · 11.5 KB

README.md

File metadata and controls

195 lines (149 loc) · 11.5 KB

Engagements

(Crm.Engagements)

Overview

Available Operations

List

List Engagements

Example Usage

package main

import(
	gosdk "github.com/panoratech/go-sdk"
	"context"
	"log"
)

func main() {
    s := gosdk.New(
        gosdk.WithSecurity("<YOUR_API_KEY_HERE>"),
    )

    ctx := context.Background()
    res, err := s.Crm.Engagements.List(ctx, "<value>", gosdk.Bool(true), gosdk.Float64(10), gosdk.String("1b8b05bb-5273-4012-b520-8657b0b90874"))
    if err != nil {
        log.Fatal(err)
    }
    if res.Object != nil {
                for {
            // handle items
        
            res, err = res.Next()
        
            if err != nil {
                // handle error
            }
        
            if res == nil {
                break
            }
        }
        
    }
}

Parameters

Parameter Type Required Description Example
ctx context.Context ✔️ The context to use for the request.
xConnectionToken string ✔️ The connection token
remoteData *bool Set to true to include data from the original software. true
limit *float64 Set to get the number of records. 10
cursor *string Set to get the number of records after this cursor. 1b8b05bb-5273-4012-b520-8657b0b90874
opts []operations.Option The options for this request.

Response

*operations.ListCrmEngagementsResponse, error

Errors

Error Type Status Code Content Type
sdkerrors.SDKError 4XX, 5XX */*

Create

Create Engagements in any supported Crm software

Example Usage

package main

import(
	gosdk "github.com/panoratech/go-sdk"
	"context"
	"github.com/panoratech/go-sdk/types"
	"github.com/panoratech/go-sdk/models/components"
	"log"
)

func main() {
    s := gosdk.New(
        gosdk.WithSecurity("<YOUR_API_KEY_HERE>"),
    )

    ctx := context.Background()
    res, err := s.Crm.Engagements.Create(ctx, "<value>", components.UnifiedCrmEngagementInput{
        Content: gosdk.String("Meeting call with CTO"),
        Direction: gosdk.String("INBOUND"),
        Subject: gosdk.String("Technical features planning"),
        StartAt: types.MustNewTimeFromString("2024-10-01T12:00:00Z"),
        EndTime: types.MustNewTimeFromString("2024-10-01T22:00:00Z"),
        Type: gosdk.String("MEETING"),
        UserID: gosdk.String("801f9ede-c698-4e66-a7fc-48d19eebaa4f"),
        CompanyID: gosdk.String("801f9ede-c698-4e66-a7fc-48d19eebaa4f"),
        Contacts: []string{
            "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
        },
        FieldMappings: map[string]any{
            "fav_dish": "broccoli",
            "fav_color": "red",
        },
    }, gosdk.Bool(false))
    if err != nil {
        log.Fatal(err)
    }
    if res.UnifiedCrmEngagementOutput != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description Example
ctx context.Context ✔️ The context to use for the request.
xConnectionToken string ✔️ The connection token
unifiedCrmEngagementInput components.UnifiedCrmEngagementInput ✔️ N/A
remoteData *bool Set to true to include data from the original Crm software. false
opts []operations.Option The options for this request.

Response

*operations.CreateCrmEngagementResponse, error

Errors

Error Type Status Code Content Type
sdkerrors.SDKError 4XX, 5XX */*

Retrieve

Retrieve Engagements from any connected Crm software

Example Usage

package main

import(
	gosdk "github.com/panoratech/go-sdk"
	"context"
	"log"
)

func main() {
    s := gosdk.New(
        gosdk.WithSecurity("<YOUR_API_KEY_HERE>"),
    )

    ctx := context.Background()
    res, err := s.Crm.Engagements.Retrieve(ctx, "<value>", "801f9ede-c698-4e66-a7fc-48d19eebaa4f", gosdk.Bool(false))
    if err != nil {
        log.Fatal(err)
    }
    if res.UnifiedCrmEngagementOutput != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description Example
ctx context.Context ✔️ The context to use for the request.
xConnectionToken string ✔️ The connection token
id string ✔️ id of the engagement you want to retrieve. 801f9ede-c698-4e66-a7fc-48d19eebaa4f
remoteData *bool Set to true to include data from the original Crm software. false
opts []operations.Option The options for this request.

Response

*operations.RetrieveCrmEngagementResponse, error

Errors

Error Type Status Code Content Type
sdkerrors.SDKError 4XX, 5XX */*