PingOne Platform APIs

Update Module

 

PUT {{apiPath}}/v1/environments/{{envId}}/authorizationModules/{{moduleId}}

The PUT {{apiPath}}/v1/environments/{{envId}}/authorizationModules/{{moduleId}} request updates the authorization module specified by its ID in the request URL.

Request Model

For property descriptions, refer to Modules data model.

Property Type Required

description

String

Optional

name

String

Required

Headers

Authorization      Bearer {{accessToken}}

Content-Type      application/json

Body

raw ( application/json )

{
    "id":"{{moduleId}}",
    "name": "Updated Custom Module",
    "description": "Changed Custom Module name"
}

Example Request

  • cURL

  • C#

  • Go

  • HTTP

  • Java

  • jQuery

  • NodeJS

  • Python

  • PHP

  • Ruby

  • Swift

curl --location --globoff --request PUT '{{apiPath}}/v1/environments/{{envId}}/authorizationModules/{{moduleId}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{accessToken}}' \
--data '{
    "id":"{{moduleId}}",
    "name": "Updated Custom Module",
    "description": "Changed Custom Module name"
}'
var options = new RestClientOptions("{{apiPath}}/v1/environments/{{envId}}/authorizationModules/{{moduleId}}")
{
  MaxTimeout = -1,
};
var client = new RestClient(options);
var request = new RestRequest("", Method.Put);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Authorization", "Bearer {{accessToken}}");
var body = @"{" + "\n" +
@"    ""id"":""{{moduleId}}""," + "\n" +
@"    ""name"": ""Updated Custom Module""," + "\n" +
@"    ""description"": ""Changed Custom Module name""" + "\n" +
@"}";
request.AddStringBody(body, DataFormat.Json);
RestResponse response = await client.ExecuteAsync(request);
Console.WriteLine(response.Content);
package main

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

func main() {

  url := "{{apiPath}}/v1/environments/{{envId}}/authorizationModules/{{moduleId}}"
  method := "PUT"

  payload := strings.NewReader(`{
    "id":"{{moduleId}}",
    "name": "Updated Custom Module",
    "description": "Changed Custom Module name"
}`)

  client := &http.Client {
  }
  req, err := http.NewRequest(method, url, payload)

  if err != nil {
    fmt.Println(err)
    return
  }
  req.Header.Add("Content-Type", "application/json")
  req.Header.Add("Authorization", "Bearer {{accessToken}}")

  res, err := client.Do(req)
  if err != nil {
    fmt.Println(err)
    return
  }
  defer res.Body.Close()

  body, err := io.ReadAll(res.Body)
  if err != nil {
    fmt.Println(err)
    return
  }
  fmt.Println(string(body))
}
PUT /v1/environments/{{envId}}/authorizationModules/{{moduleId}} HTTP/1.1
Host: {{apiPath}}
Content-Type: application/json
Authorization: Bearer {{accessToken}}

{
    "id":"{{moduleId}}",
    "name": "Updated Custom Module",
    "description": "Changed Custom Module name"
}
OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n    \"id\":\"{{moduleId}}\",\n    \"name\": \"Updated Custom Module\",\n    \"description\": \"Changed Custom Module name\"\n}");
Request request = new Request.Builder()
  .url("{{apiPath}}/v1/environments/{{envId}}/authorizationModules/{{moduleId}}")
  .method("PUT", body)
  .addHeader("Content-Type", "application/json")
  .addHeader("Authorization", "Bearer {{accessToken}}")
  .build();
Response response = client.newCall(request).execute();
var settings = {
  "url": "{{apiPath}}/v1/environments/{{envId}}/authorizationModules/{{moduleId}}",
  "method": "PUT",
  "timeout": 0,
  "headers": {
    "Content-Type": "application/json",
    "Authorization": "Bearer {{accessToken}}"
  },
  "data": JSON.stringify({
    "id": "{{moduleId}}",
    "name": "Updated Custom Module",
    "description": "Changed Custom Module name"
  }),
};

$.ajax(settings).done(function (response) {
  console.log(response);
});
var request = require('request');
var options = {
  'method': 'PUT',
  'url': '{{apiPath}}/v1/environments/{{envId}}/authorizationModules/{{moduleId}}',
  'headers': {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer {{accessToken}}'
  },
  body: JSON.stringify({
    "id": "{{moduleId}}",
    "name": "Updated Custom Module",
    "description": "Changed Custom Module name"
  })

};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
import requests
import json

url = "{{apiPath}}/v1/environments/{{envId}}/authorizationModules/{{moduleId}}"

payload = json.dumps({
  "id": "{{moduleId}}",
  "name": "Updated Custom Module",
  "description": "Changed Custom Module name"
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {{accessToken}}'
}

response = requests.request("PUT", url, headers=headers, data=payload)

print(response.text)
<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('{{apiPath}}/v1/environments/{{envId}}/authorizationModules/{{moduleId}}');
$request->setMethod(HTTP_Request2::METHOD_PUT);
$request->setConfig(array(
  'follow_redirects' => TRUE
));
$request->setHeader(array(
  'Content-Type' => 'application/json',
  'Authorization' => 'Bearer {{accessToken}}'
));
$request->setBody('{\n    "id":"{{moduleId}}",\n    "name": "Updated Custom Module",\n    "description": "Changed Custom Module name"\n}');
try {
  $response = $request->send();
  if ($response->getStatus() == 200) {
    echo $response->getBody();
  }
  else {
    echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
    $response->getReasonPhrase();
  }
}
catch(HTTP_Request2_Exception $e) {
  echo 'Error: ' . $e->getMessage();
}
require "uri"
require "json"
require "net/http"

url = URI("{{apiPath}}/v1/environments/{{envId}}/authorizationModules/{{moduleId}}")

http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Put.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer {{accessToken}}"
request.body = JSON.dump({
  "id": "{{moduleId}}",
  "name": "Updated Custom Module",
  "description": "Changed Custom Module name"
})

response = http.request(request)
puts response.read_body
let parameters = "{\n    \"id\":\"{{moduleId}}\",\n    \"name\": \"Updated Custom Module\",\n    \"description\": \"Changed Custom Module name\"\n}"
let postData = parameters.data(using: .utf8)

var request = URLRequest(url: URL(string: "{{apiPath}}/v1/environments/{{envId}}/authorizationModules/{{moduleId}}")!,timeoutInterval: Double.infinity)
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
request.addValue("Bearer {{accessToken}}", forHTTPHeaderField: "Authorization")

request.httpMethod = "PUT"
request.httpBody = postData

let task = URLSession.shared.dataTask(with: request) { data, response, error in
  guard let data = data else {
    print(String(describing: error))
    return
  }
  print(String(data: data, encoding: .utf8)!)
}

task.resume()

Example Response

200 OK

{
    "_links": {
        "self": {
            "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/authorizationModules/ed76e939-c57b-4f1d-954a-17f1b9246320"
        },
        "environment": {
            "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
        }
    },
    "name": "Updated Custom Module",
    "description": "Changed Custom Module name",
    "id": "ed76e939-c57b-4f1d-954a-17f1b9246320",
    "type": "Custom",
    "environment": {
        "id": "abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
    }
}