Skip to main content
POST
/
api2
/
v1
/
projects
/
{projectUid}
/
jobs
/
{jobUid}
/
setStatus
Edit job status
curl --request POST \
  --url https://cloud.memsource.com/web/api2/v1/projects/{projectUid}/jobs/{jobUid}/setStatus \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "notifyOwner": true,
  "propagateStatus": true
}
'
import requests

url = "https://cloud.memsource.com/web/api2/v1/projects/{projectUid}/jobs/{jobUid}/setStatus"

payload = {
"notifyOwner": True,
"propagateStatus": True
}
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({notifyOwner: true, propagateStatus: true})
};

fetch('https://cloud.memsource.com/web/api2/v1/projects/{projectUid}/jobs/{jobUid}/setStatus', 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/projects/{projectUid}/jobs/{jobUid}/setStatus",
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([
'notifyOwner' => true,
'propagateStatus' => true
]),
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/projects/{projectUid}/jobs/{jobUid}/setStatus"

payload := strings.NewReader("{\n \"notifyOwner\": true,\n \"propagateStatus\": true\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/projects/{projectUid}/jobs/{jobUid}/setStatus")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"notifyOwner\": true,\n \"propagateStatus\": true\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://cloud.memsource.com/web/api2/v1/projects/{projectUid}/jobs/{jobUid}/setStatus")

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 \"notifyOwner\": true,\n \"propagateStatus\": true\n}"

response = http.request(request)
puts response.read_body

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

projectUid
string
required

Project UID

jobUid
string
required

Job UID

Body

application/json

Requested status change

requestedStatus
enum<string>
required
Available options:
NEW,
ACCEPTED,
DECLINED,
REJECTED,
DELIVERED,
EMAILED,
COMPLETED,
CANCELLED
notifyOwner
boolean

Default: false; Both project owner and job owner are notified; the parameter is subordinated to notification settings in the project

propagateStatus
boolean

Default: false; Controls both job status and email notifications to previous/next provider

Response

No Content