Skip to content
CCPEDIAby Unity Nodes
Documentation/Canton Network Docs/Ledger APIOpenAPIView on Canton Network Docs

PATCH /v2/idps/:idp-id

PATCH
/
v2
/
idps
/
{idp-id}
Try it
cURL
Python
JavaScript
PHP
Go
Java
Ruby
curl --request PATCH \
  --url 'http://localhost:7575/v2/idps/{idp-id}' \
  --header 'Authorization: Bearer $TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}'
import json
import requests

url = "http://localhost:7575/v2/idps/{idp-id}"
headers = {'Authorization': 'Bearer <token>', 'Content-Type': 'application/json'}
payload = json.loads(r'''{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}''')
response = requests.request(
    "PATCH", url, headers=headers, json=payload
)

print(response.text)
const response = await fetch('http://localhost:7575/v2/idps/{idp-id}', {
  method: 'PATCH',
  headers: {
  "Authorization": "Bearer <token>",
  "Content-Type": "application/json"
},
  body: JSON.stringify({
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}),
});

console.log(await response.text());
<?php
$curl = curl_init();

curl_setopt_array($curl, [
    CURLOPT_URL => 'http://localhost:7575/v2/idps/{idp-id}',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CUSTOMREQUEST => 'PATCH',
    CURLOPT_POSTFIELDS => <<<'JSON'
{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}
JSON,
    CURLOPT_HTTPHEADER => [
        "Authorization: Bearer <token>",
        "Content-Type: application/json"
    ],
]);

$response = curl_exec($curl);
echo $response;
package main

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

func main() {
  req, _ := http.NewRequest("PATCH", "http://localhost:7575/v2/idps/{idp-id}", bytes.NewBufferString(`{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}`))
  req.Header.Set("Authorization", "Bearer <token>")
  req.Header.Set("Content-Type", "application/json")
  response, _ := http.DefaultClient.Do(req)
  defer response.Body.Close()
  body, _ := io.ReadAll(response.Body)
  fmt.Println(string(body))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

var request = HttpRequest.newBuilder()
    .uri(URI.create("http://localhost:7575/v2/idps/{idp-id}"))
    .header("Authorization", "Bearer <token>")
    .header("Content-Type", "application/json")
    .method("PATCH", HttpRequest.BodyPublishers.ofString("""
{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}
"""))
    .build();
var response = HttpClient.newHttpClient().send(
    request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
require 'net/http'
require 'uri'

uri = URI('http://localhost:7575/v2/idps/{idp-id}')
request = Net::HTTP::Patch.new(uri)
request['Authorization'] = 'Bearer <token>'
request['Content-Type'] = 'application/json'
request.body = <<~JSON
{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}
JSON
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
  http.request(request)
end
puts response.body
200
400
default
{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  }
}
<string>
{
  "code": "<string>",
  "cause": "<string>",
  "correlationId": "<string>",
  "traceId": "<string>",
  "context": {},
  "resources": [
    [
      "<string>"
    ]
  ],
  "errorCategory": 123,
  "grpcCodeValue": 123,
  "retryInfo": "<string>",
  "definiteAnswer": false
}

Update selected modifiable attribute of an identity provider config resource described by the IdentityProviderConfig message.

cURL
Python
JavaScript
PHP
Go
Java
Ruby
curl --request PATCH \
  --url 'http://localhost:7575/v2/idps/{idp-id}' \
  --header 'Authorization: Bearer $TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}'
import json
import requests

url = "http://localhost:7575/v2/idps/{idp-id}"
headers = {'Authorization': 'Bearer <token>', 'Content-Type': 'application/json'}
payload = json.loads(r'''{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}''')
response = requests.request(
    "PATCH", url, headers=headers, json=payload
)

print(response.text)
const response = await fetch('http://localhost:7575/v2/idps/{idp-id}', {
  method: 'PATCH',
  headers: {
  "Authorization": "Bearer <token>",
  "Content-Type": "application/json"
},
  body: JSON.stringify({
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}),
});

console.log(await response.text());
<?php
$curl = curl_init();

curl_setopt_array($curl, [
    CURLOPT_URL => 'http://localhost:7575/v2/idps/{idp-id}',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CUSTOMREQUEST => 'PATCH',
    CURLOPT_POSTFIELDS => <<<'JSON'
{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}
JSON,
    CURLOPT_HTTPHEADER => [
        "Authorization: Bearer <token>",
        "Content-Type: application/json"
    ],
]);

$response = curl_exec($curl);
echo $response;
package main

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

func main() {
  req, _ := http.NewRequest("PATCH", "http://localhost:7575/v2/idps/{idp-id}", bytes.NewBufferString(`{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}`))
  req.Header.Set("Authorization", "Bearer <token>")
  req.Header.Set("Content-Type", "application/json")
  response, _ := http.DefaultClient.Do(req)
  defer response.Body.Close()
  body, _ := io.ReadAll(response.Body)
  fmt.Println(string(body))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

var request = HttpRequest.newBuilder()
    .uri(URI.create("http://localhost:7575/v2/idps/{idp-id}"))
    .header("Authorization", "Bearer <token>")
    .header("Content-Type", "application/json")
    .method("PATCH", HttpRequest.BodyPublishers.ofString("""
{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}
"""))
    .build();
var response = HttpClient.newHttpClient().send(
    request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
require 'net/http'
require 'uri'

uri = URI('http://localhost:7575/v2/idps/{idp-id}')
request = Net::HTTP::Patch.new(uri)
request['Authorization'] = 'Bearer <token>'
request['Content-Type'] = 'application/json'
request.body = <<~JSON
{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  },
  "updateMask": {
    "paths": [
      "<string>"
    ],
    "unknownFields": {
      "fields": {}
    }
  }
}
JSON
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
  http.request(request)
end
puts response.body
200
400
default
{
  "identityProviderConfig": {
    "identityProviderId": "<string>",
    "isDeactivated": false,
    "issuer": "<string>",
    "jwksUrl": "<string>",
    "audience": "<string>"
  }
}
<string>
{
  "code": "<string>",
  "cause": "<string>",
  "correlationId": "<string>",
  "traceId": "<string>",
  "context": {},
  "resources": [
    [
      "<string>"
    ]
  ],
  "errorCategory": 123,
  "grpcCodeValue": 123,
  "retryInfo": "<string>",
  "definiteAnswer": false
}

Authorizations

httpAuth

Authorization
string
required
HTTP bearer authentication. Send the token as Authorization: Bearer &lt;token&gt;. Ledger API standard JWT token

apiKeyAuth

Sec-WebSocket-Protocol
string
required
API key authentication in the header. Ledger API standard JWT token (websocket)

Path parameters

idp-id
string
required

Body

application/json
identityProviderConfig
object
required
OpenAPI type: IdentityProviderConfig.The identity provider config to update. Modifiable Required

Show child attributes

identityProviderId
string
required
The identity provider identifier Must be a valid LedgerString (as describe in value.proto). Required
isDeactivated
boolean
When set, the callers using JWT tokens issued by this identity provider are denied all access to the Ledger API. Modifiable Optional
issuer
string
required
Specifies the issuer of the JWT token. The issuer value is a case sensitive URL using the https scheme that contains scheme, host, and optionally, port number and path components and no query or fragment components. Modifiable Can be left empty when used in UpdateIdentityProviderConfigRequest if the issuer is not being updated. Required
jwksUrl
string
required
The JWKS (JSON Web Key Set) URL. The Ledger API uses JWKs (JSON Web Keys) from the provided URL to verify that the JWT has been signed with the loaded JWK. Only RS256 (RSA Signature with SHA-256) signing algorithm is supported. Modifiable Required
audience
string
Specifies the audience of the JWT token. When set, the callers using JWT tokens issued by this identity provider are allowed to get an access only if the “aud” claim includes the string specified here Modifiable Optional
updateMask
object
required
OpenAPI type: FieldMask.An update mask specifies how and which properties of the IdentityProviderConfig message are to be updated. An update mask consists of a set of update paths. A valid update path points to a field or a subfield relative to the IdentityProviderConfig message. A valid update mask must: 1. contain at least one update path, 2. contain only valid update paths. Fields that can be updated are marked as Modifiable. For additional information see the documentation for standard protobuf3’s google.protobuf.FieldMask. Required

Show child attributes

paths
string[]
unknownFields
object
required
OpenAPI type: UnknownFieldSet.

Show child attributes

fields
object
required
OpenAPI type: Map_Int_Field.

Responses

200

application/json
identityProviderConfig
IdentityProviderConfig
required
Updated identity provider config Required

Show child attributes

identityProviderId
string
required
The identity provider identifier Must be a valid LedgerString (as describe in value.proto). Required
isDeactivated
boolean
When set, the callers using JWT tokens issued by this identity provider are denied all access to the Ledger API. Modifiable Optional
issuer
string
required
Specifies the issuer of the JWT token. The issuer value is a case sensitive URL using the https scheme that contains scheme, host, and optionally, port number and path components and no query or fragment components. Modifiable Can be left empty when used in UpdateIdentityProviderConfigRequest if the issuer is not being updated. Required
jwksUrl
string
required
The JWKS (JSON Web Key Set) URL. The Ledger API uses JWKs (JSON Web Keys) from the provided URL to verify that the JWT has been signed with the loaded JWK. Only RS256 (RSA Signature with SHA-256) signing algorithm is supported. Modifiable Required
audience
string
Specifies the audience of the JWT token. When set, the callers using JWT tokens issued by this identity provider are allowed to get an access only if the “aud” claim includes the string specified here Modifiable Optional

400

Invalid value, Invalid value for: body
text/plain
value
string
required

default

application/json
code
string
required
cause
string
required
correlationId
string
traceId
string
context
Map_String
required
resources
Tuple2_String_String[]
errorCategory
integer (int32)
required
grpcCodeValue
integer (int32)
retryInfo
string
definiteAnswer
boolean

History

Updated3.5

The PATCH /v2/idps/{idp-id} operation changed in this snapshot.