Your browser is outdated and unsupported. You may run into errors and degraded experience on this page. Please update your browser.
  • Help and support
  • 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

      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

      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

      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

      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?

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

      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?

      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

      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
    • 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."

      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

  •