Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is Intercom API version 1.0 compatible with Intercom-dotnet SDK 2.1.1 #181

Open
danielwagener opened this issue May 25, 2023 · 0 comments
Open

Comments

@danielwagener
Copy link

Here is the error we get:
Field Value @ingestionTime 1684822737054 @log 176772329757:/neptune/recruiter @logStream i-059a5b45e78383eae/192.168.102.69 @message { "message": "Exception of type 'Intercom.Exceptions.ApiException' was thrown.", "hashcode": 439432027, "source": "Library", "stackTrace": " at Intercom.Core.Client.Post[T](T body, Dictionary2 headers, Dictionary2 parameters, String resource)\r\n at Intercom.Clients.EventsClient.Create(Event event)\r\n at Graylink.Neptune.RecruiterPortal.BasePage.SendIntercomEvent(String eventName, Dictionary2 data) in C:\Workspaces\BitBucket\Neptune\neptune-.net\RecruiterPortal\Classes\BasePage.cs:line 509\r\n",
"link": null,
"file": null,
"line": "0",
"errornot_found": "User Not Found",
"statusDescription": "Not Found",
"responseBody": "{"type":"error.list","request_id":"004h01uqo3s6ait1fi20","errors":[{"code":"not_found","message":"User Not Found"}]}",
"tenantId": "telkom",
"host": "192.168.102.69",
"type": "DotNetException"
}
@timestamp
1684822737023
errornot_found
User Not Found
hashcode
439432027
host
192.168.102.69
line
0
message
Exception of type 'Intercom.Exceptions.ApiException' was thrown.
responseBody
{"type":"error.list","request_id":"004h01uqo3s6ait1fi20","errors":[{"code":"not_found","message":"User Not Found"}]}
source
Library
stackTrace
at Intercom.Core.Client.Post[T](T body, Dictionary2 headers, Dictionary2 parameters, String resource)
at Intercom.Clients.EventsClient.Create(Event event)
at Graylink.Neptune.RecruiterPortal.BasePage.SendIntercomEvent(String eventName, Dictionary2 data) in C:\Workspaces\BitBucket\Neptune\neptune-.net\RecruiterPortal\Classes\BasePage.cs:line 509 statusDescription Not Found tenantId telkom type DotNetException

Here is the code we use:
`string accessToken = WebsiteContext.GetConfigurationFieldValue(WebsiteClass.WebsiteConfigurationFieldEnum.IntercomAccessToken);

        if (string.IsNullOrWhiteSpace(accessToken) == false)
        {
            try
            {



                Intercom.Clients.EventsClient eventsclient = new Intercom.Clients.EventsClient(new Intercom.Core.Authentication(accessToken));



                Intercom.Data.Event newEvent = new Intercom.Data.Event();
                newEvent.created_at = (long)(DateTime.Now.Subtract(new DateTime(1970, 1, 1)).TotalSeconds);



                if (SecurityContext.LoggedIn)
                {
                    newEvent.user_id = SecurityContext.LoggedInUser.Email;
                    newEvent.email = SecurityContext.LoggedInUser.Email;
                }



                newEvent.event_name = eventName;



                if (data != null)
                {
                    Intercom.Data.Metadata eventData = new Intercom.Data.Metadata();
                    eventData.Add(data);
                    newEvent.metadata = eventData;
                }



                eventsclient.Create(newEvent);
            }
            catch (Intercom.Exceptions.ApiException apiEx)
            {
                Dictionary<string, string> errors = new Dictionary<string, string>();



                foreach (Intercom.Data.Error err in apiEx.ApiErrors.errors)
                {
                    errors.Add("error" + err.code, err.message);
                }



                errors.Add("statusDescription", apiEx.StatusDescription);
                errors.Add("responseBody", apiEx.ApiResponseBody);



                SecurityContext.Connection.ActiveDatabase.LogException(
                        apiEx,
                        errors
                        );
            }
            catch (Exception ex)
            {
                SecurityContext.Connection.ActiveDatabase.LogException(
                        ex,
                        new Dictionary<string, string>() { { "url", HttpContext.Current.Request.RawUrl } }
                        );
            }
        }`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant