Skip to main content
POST
/
api2
/
v1
/
projectTemplates
/
{projectTemplateUid}
/
customFields
Create custom field instances
curl --request POST \
  --url https://cloud.memsource.com/web/api2/v1/projectTemplates/{projectTemplateUid}/customFields \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "customFieldInstances": [
    {
      "customField": {
        "uid": "3HYnHHLkTPJfMxBCDbPXFe"
      },
      "selectedOptions": [
        {
          "uid": "3HYnHHLkTPJfMxBCDbPXFe"
        }
      ],
      "value": "<string>"
    }
  ]
}
'
import requests

url = "https://cloud.memsource.com/web/api2/v1/projectTemplates/{projectTemplateUid}/customFields"

payload = { "customFieldInstances": [
{
"customField": { "uid": "3HYnHHLkTPJfMxBCDbPXFe" },
"selectedOptions": [{ "uid": "3HYnHHLkTPJfMxBCDbPXFe" }],
"value": "<string>"
}
] }
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
customFieldInstances: [
{
customField: {uid: '3HYnHHLkTPJfMxBCDbPXFe'},
selectedOptions: [{uid: '3HYnHHLkTPJfMxBCDbPXFe'}],
value: '<string>'
}
]
})
};

fetch('https://cloud.memsource.com/web/api2/v1/projectTemplates/{projectTemplateUid}/customFields', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://cloud.memsource.com/web/api2/v1/projectTemplates/{projectTemplateUid}/customFields",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'customFieldInstances' => [
[
'customField' => [
'uid' => '3HYnHHLkTPJfMxBCDbPXFe'
],
'selectedOptions' => [
[
'uid' => '3HYnHHLkTPJfMxBCDbPXFe'
]
],
'value' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://cloud.memsource.com/web/api2/v1/projectTemplates/{projectTemplateUid}/customFields"

payload := strings.NewReader("{\n \"customFieldInstances\": [\n {\n \"customField\": {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n },\n \"selectedOptions\": [\n {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n }\n ],\n \"value\": \"<string>\"\n }\n ]\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://cloud.memsource.com/web/api2/v1/projectTemplates/{projectTemplateUid}/customFields")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"customFieldInstances\": [\n {\n \"customField\": {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n },\n \"selectedOptions\": [\n {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n }\n ],\n \"value\": \"<string>\"\n }\n ]\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://cloud.memsource.com/web/api2/v1/projectTemplates/{projectTemplateUid}/customFields")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"customFieldInstances\": [\n {\n \"customField\": {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n },\n \"selectedOptions\": [\n {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n }\n ],\n \"value\": \"<string>\"\n }\n ]\n}"

response = http.request(request)
puts response.read_body
{
  "customFieldInstances": [
    {
      "createdAt": "2023-11-07T05:31:56Z",
      "createdBy": {
        "uid": "3HYnHHLkTPJfMxBCDbPXFe"
      },
      "customField": {
        "allowedEntities": [],
        "createdAt": "2023-11-07T05:31:56Z",
        "createdBy": {
          "email": "<string>",
          "firstName": "<string>",
          "id": "<string>",
          "lastName": "<string>",
          "uid": "<string>",
          "userName": "<string>"
        },
        "description": "<string>",
        "lastModified": "2023-11-07T05:31:56Z",
        "lastModifiedBy": {
          "email": "<string>",
          "firstName": "<string>",
          "id": "<string>",
          "lastName": "<string>",
          "uid": "<string>",
          "userName": "<string>"
        },
        "name": "<string>",
        "options": {
          "remainingCount": 123,
          "truncatedOptions": [
            {
              "deprecated": true,
              "uid": "<string>",
              "used": true,
              "value": "<string>"
            }
          ]
        },
        "required": true,
        "requiredFrom": "2023-11-07T05:31:56Z",
        "uid": "<string>"
      },
      "selectedOptions": [
        {
          "deprecated": true,
          "uid": "<string>",
          "used": true,
          "value": "<string>"
        }
      ],
      "uid": "<string>",
      "updatedAt": "2023-11-07T05:31:56Z",
      "updatedBy": {
        "uid": "3HYnHHLkTPJfMxBCDbPXFe"
      },
      "value": "<string>"
    }
  ]
}

Authorizations

Authorization
string
header
required

Get a token from auth/login endpoint and then pass it in the Authorization HTTP header in every subsequent API call. For more information visit our help center.

Path Parameters

projectTemplateUid
string
required

Project template UID

Body

application/json

Custom field instances to create

Batch of custom field instances to create

customFieldInstances
object[]

List of custom field instances to create

Response

OK

customFieldInstances
object[]