I am trying to create a Bitbucket repository using their REST-API. Everything seems to work except setting the "parent" project, where the repository needs to be created in. On this link a cURL example is provided. In the body, the parameter "scm" is set as either "git" or "hg", both being Strings, the parameter "project" seems to be a json object containing a key-value pair. Everything I tried so far did not work (json object, string, etc.)
Question: How can I create a repository IN a specific project?
My code looks the following:
RestTemplate restTemplate = new RestTemplate(); String url = "https://api.bitbucket.org/2.0/repositories/" + tName + "/" + rName; HttpHeaders headers = new HttpHeaders();headers.set("Authorization", "Basic 1234567890qwert");headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON)); MultiValueMap<String, String> project = new LinkedMultiValueMap();project.add("key", "aaaaaaaa"); //the repo should be created in the project aaaaaaaa MultiValueMap<String, Object> body = new LinkedMultiValueMap<>();postParameters.add("scm", "hg"); //hg or git, does not matterpostParameters.add("project", project); //<-- the api ignores the declared project HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<MultiValueMap<String, Object>>(body, headers); ResponseEntity<BitbucketRepository> response = restTemplate.exchange(url, HttpMethod.POST, requestEntity, BitbucketRepository.class); System.out.println("createRepository: " + response); return response;
You seem to be sending a multipart/form-data request document here, not a JSON document. As per the curl example, make sure you properly format a json document and send the "Content-Type: application/json" request header.
The JSON document you should be sending as the body of your request should like this:
Hello! My name is Mark Askew and I am a Premier Support Engineer for products Bitbucket Server/Data Center, Fisheye & Crucible. Today, I want to bring the discussion that Jennifer, Matt, and ...
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG
You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs