Top Menu

Jump to content
Home
    Modules
      • Projects
      • Activity
      • Work packages
      • Gantt charts
      • Calendars
      • Team planners
      • Boards
      • News
    • Getting started
    • Introduction video
      Welcome to OpenProject Community
      Get a quick overview of project management and team collaboration with OpenProject. You can restart this video from the help menu.

    • Help and support
    • Upgrade to Enterprise edition
    • User guides
    • Videos
    • Shortcuts
    • Community forum
    • Enterprise support

    • Additional resources
    • Data privacy and security policy
    • Digital accessibility (DE)
    • OpenProject website
    • Security alerts / Newsletter
    • OpenProject blog
    • Release notes
    • Report a bug
    • Development roadmap
    • Add and edit translations
    • API documentation
  • Sign in
      Forgot your password?

      or sign in with your existing account

      Google

Side Menu

  • Overview
  • Activity
    Activity
  • Roadmap
  • Work packages
    Work packages
  • Gantt charts
    Gantt charts
  • Calendars
    Calendars
  • Team planners
    Team planners
  • Boards
    Boards
  • News
  • Forums

Content

Development
  1. OpenProject
  2. Forums
  3. Development
  4. Internal error occured by API call

Internal error occured by API call

Added by Michael Freitter almost 10 years ago

Greetings,

I call a API to add a workpackage to my openproject instance, but an error occured;

" Dim addWPUrl As String = “https://openproject.domain.at/api/v2/projects/test_project/planning_elements.json?key=” + APIKey"
‘{“”planning_element“”: {“”subject“”: “”Test Issue“”, “”status_id“”: 1, “”type_id“”: 2, “”priority_id“”: 2}’

Error text:
“Internal error
An error occurred on the page you were trying to access.
If you continue to experience problems please contact your OpenProject administrator for assistance.”

How can I find the reason of this error?

Thank you!
Michael


Replies (8)

RE: Internal error occured by API call - Added by Jan Sandbrink almost 10 years ago

Hello Michael,

Not sure if it is because of my missing VB reading skills, but the request you are sending looks weird: Are those double double quotes around your string values?

E.g. ""planning_element"": should read "planningElement":

In any case there is at least some error on the OpenProject side, at least in that it returns an HTTP 500 when it should return some 4xx status.

Since we are not maintaining APIv2 actively anymore I’d advise you to use the APIv3 endpoint to create a work package (added in OpenProject 4.2).

You can find the documentation for APIv3 here: https://www.openproject.org/api

APIv3 should have better error messages than APIv2, if you still encounter errors don’t hesitate to contact us again.

Best regards
Jan Sandbrink

RE: Internal error occured by API call - Added by Michael Freitter over 9 years ago

Hello Jan,

thank you for your information, but I get also the 500 error.
Here is the whole sample code in Visual basic:

@ Public Function addWP(ByVal ProjectID As Integer, ByVal Subject As String) As JObject

Dim urlParmsHead As New JObject()
Dim urlParms As New JObject()
Dim vals As New JArray()

Dim addWPUrl As String = “https://openproject.domain.xy/api/v3/projects/” + ProjectID.ToString.Trim() + “/work_packages”
urlParms(“subject”) = Subject
urlParms(“_links”) = “{ ”“status”“: {”“href”“:”“/api/v3/statuses/1”“}, ”“type”“: { ”“href”“:”“/api/v3/types/2”" }, “”priority“”: { “”href“”:“”/api/v3/priorities/2“” }}"
Dim rObject = InvokeMethodPut(addWPUrl, “POST”, urlParms)
Return rObject

End Function@

Have you an additional idea, why the error occured?

Regards
Michael

RE: Internal error occured by API call - Added by Jan Sandbrink over 9 years ago

Are you actually passing subject and _links as url parameters? (asking because of the name urlParms)

You should pass the JSON object in the body of the POST call.

I would also be interested in the full response by the OpenProject instance (i.e. the error message).
Is your OP instance running in production mode or in development mode?

RE: Internal error occured by API call - Added by Jan Sandbrink over 9 years ago

Btw. for posting multiline code (or logs) in this forum, you can escape using the pre tags.

E.g.

<pre>
1
2
3

RE: Internal error occured by API call - Added by Michael Freitter over 9 years ago

Is your OP instance running in production mode or in development mode?

I don’t know. I have installed my openproject instance by a company.
How can I find out which mode my OpenProject is running?

RE: Internal error occured by API call - Added by Michael Freitter over 9 years ago

Hello Jan,

have you an example code (no matter what programming language) where you add a workpackage to a existing project in OpenProject?
Regards
Michael

RE: Internal error occured by API call - Added by Jan Sandbrink over 9 years ago

We do it in our integrative RSpec tests:
https://github.com/opf/openproject/blob/2199b22f0ec66b84f130c294f0692210ce082de9/spec/requests/api/v3/work_packages/work_packages_by_project_resource_spec.rb#L87

It is something along the lines:

POST example.com/api/v3/projects/1/work_packages

{
  "subject": "I am a work package!"
}

There might be various cases where you are not able to add a work package:

  • no permissions (not logged in?)
  • missing required fields
  • invalid inputs
  • etc

However:
Whenever something goes wrong, the server should respond with a meaningful error message. Therefore I’d really like to know what that error message is, you are receiving. E.g.

{
    "_type": "Error",
    "errorIdentifier": "urn:openproject-org:api:v3:errors:InvalidRequestBody",
    "message": "The request body was not a single JSON object."
}

RE: Internal error occured by API call - Added by Michael Freitter over 9 years ago

Thank you!
I have now upgrade from version 4.1 to 4.2 and now I can create a workpackage.

Unfortunately, I can’t delete a workpackage, but I open a new ticket.

Thank you!
Michael

  • (1 - 8/8)
Loading...