Welcome to the Panopto Community

Please note: All new registrants to the Panopto Community Forum must be approved by a forum moderator or admin. As such, if you navigate to a feature that is members-only, you may receive an error page if your registration has not yet been approved. We apologize for any inconvenience and are approving new members as quickly as possible.

Panopto SOAP API GetReport returning 500 internal server error

I am trying to download the UsageReport zip file using its GUID. Let me know if you have used this endpoint successfully or ever faced the same issue. Following this repo recommended by Panopto UsageReportingDownloadsExample

SOAP Documentation if interested It is a C# project, I have changed the following elements in the App Config, MYORG is the string which has been replaced by the Organisation name

    <client>
      <endpoint address="https://MYORG.cloud.panopto.eu/Panopto/PublicAPI/4.0/UsageReporting.svc"
  binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IUsageReporting"
  contract="UsageReporting.IUsageReporting" name="BasicHttpBinding_IUsageReporting" />
      <endpoint address="https://MYORG.cloud.panopto.eu/Panopto/PublicAPI/4.0/UsageReporting.svc"
  binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IUsageReporting1"
  contract="UsageReporting.IUsageReporting" name="BasicHttpBinding_IUsageReporting1" />
    </client>

To get the ID's for the report I use the following GetRecurringReports(Program.GetAuthenticationInfo(username, password), SVCRef.StatsReportType.SystemViews)

It returns 3 elements and I use those Definition Id's for the next part, where we pass the ReportID in SOAP

Rest of the code remains the same as given in the Panopto Git Hub repo. When this line is executed in the function ReadReport it throws a 500 internal server error.

 var response = (HttpWebResponse)request.GetResponse();



//SOAP For Your reference, ReportID is the Definition ID returned by GetRecurringReports
private static string GetReportRequestSoapEnvelope(UsageReporting.AuthenticationInfo auth, Guid reportId)
        {
            return string.Format(@"<s:Envelope xmlns:s=""http://schemas.xmlsoap.org/soap/envelope/"">
                    <s:Body>
                        <GetReport xmlns=""http://tempuri.org/"">
                            <auth
                                xmlns:a=""http://schemas.datacontract.org/2004/07/Panopto.Server.Services.PublicAPI.V40""
                                xmlns:i=""http://www.w3.org/2001/XMLSchema-instance"">
                                    <a:AuthCode i:nil=""true""/>
                                        <a:Password>{1}</a:Password>
                                        <a:UserKey>{0}</a:UserKey>
                            </auth>
                            <reportId>{2}</reportId>
                        </GetReport>
                    </s:Body>
                </s:Envelope>",
                auth.UserKey,
                auth.Password,
                reportId);
        }

Any help in this regard will be much appreciated.

Tagged:

Answers

  • Paul DouglasPaul Douglas Crackerjack

    Have you tried lodging a ticket with Panopto support?

    We've been doing some work with the Embed API and some of it broke after the June 28/29 updates.

  • Kevin BaumKevin Baum Panopto Employee

    Hi Sudeep,

    I took a look through the logs on our end, and it looks like you are making the API call to https:\\myorg.cloud.panopto.eu which does not appear to be a valid Panopto site resulting in an error.

    Can you please verify that your current settings have the correct URL for your site and try it again? Please let me know if that still doesn't work for you.

    Thanks,

    Kevin

  • Hi Kevin,

    Thanks for getting back to me, myorg is just a dummy placeholder.

    I sent you a message with the actual url.

    If you can please have a look at your logs, I will be really grateful

  • Kevin BaumKevin Baum Panopto Employee

    Hi Sudeep,

    Thank you for getting back to me. Is it possible that at some point you saved that in your configuration for the SOAP endpoint and it may be cached in your code?

    If you have verified your configuration has the correct URL, would you be able to have your point of contact open a support ticket with us (https://support.panopto.com)? That will allow me to get some additional information from you that I can use to investigate this further.

    Please let me know if you have any questions.

    Thank you,

    Kevin

Sign In or Register to comment.