PUT /api/tenants/{FedmemberID}/repositoryconfig

Updates the Lifecycle Repository configuration for the specified tenant.

This operation is used in a scenario where the extended properties and workflow are enabled for the tenant. In most cases it's invoked internally by Lifecycle Coordinator to configure the repository library associated with the tenant (mainly to set up the RuntimeConfiguration assets). It takes a RepositoryConfiguration object which contains an EnvironmentConfiguration (the same structure that shows up in the topology definition) as well as the defined filters for the library.

 

For more information about these elements, and examples, refer to these sections of the Lifecycle Coordinator Promotion Guide:

Authorization Roles/Permissions: Must have Modify permission for the tenant; Site Admin

This topic includes the following sections:

HTTP Method

PUT

Back to top

URL

https://{hostname}/api/tenants/{FedmemberID}/repositoryconfig

Back to top

Sample Request

The example below shows a request to update the Lifecycle Repository information for tenant3.

Request URL

https://{hostname}/api/tenants/tenant3/repositoryconfig

Sample request headers

Content-Type: application/json
Accept: application/json
X-Csrf-Token_acmepaymentscorp":"TokenID%3D8ed70a13-8469-11e8-b37a-b155e4eabeb8%2CexpirationTime%3D153...

Sample request body

{
  "filters":[
    {
      "name":"internal",
      "classifier-criteria":[
        {
          "classifierName":"internal",
          "values":[
            {
              "value":"true"
            }
          ]
        }
      ]
    },
    {
      "name":"external",
      "classifier-criteria":[
        {
          "classifierName":"internal",
          "values":[
            {
              "value":"false"
            }
          ]
        }
      ]
    }
  ],
  "apiImplementationProfiles":[
    {
      "name":"Internal API Profile",
      "type":"Live",
      "filterNames":[
        "internal"
      ],
      "deploymentZones":[
        "DZ9941"
      ],
      "virtualServicePolicies":[
        {
          "policyName":"DetailedAuditing"
        }
      ],
      "virtualHost":"InternalHost.com",
      "path":"/"
    },
    {
      "name":"External API Profile",
      "type":"Live",
      "filterNames":[
        "external"
      ],
      "deploymentZones":[
        "DZ9942"
      ],
      "virtualHost":"ExternalHost.com",
      "path":"/"
    }
  ]
}

Back to top

Request Headers

For general information on request header values, refer to HTTP Request Headers.

Header Description
Accept application/json
Content-Type application/json, application/vnd.soa.v84+json
AtmoAuthToken_{fedmemberid} The platform cookie. This is the Akana API Platform authorization token, and must be sent with every API request that requires login.
X-Csrf-Token_{fedmemberID} The CSRF prevention header; may or may not be required, depending on platform settings. See CSRF Prevention on the Platform. By default, the CSRF header is not required for GET operations and is required for all others, with a few exceptions relating to user login.

Back to top

Request Parameters

Parameter Parm Type Data Type Required Description
FedmemberID Path String Required Unique ID for a specific tenant, in a federation (multi-tenant) scenario; for example, acmepaymentscorp.
RepositoryConfiguration Body RepositoryConfiguration Required Contains information about the repository configuration for the tenant; a collection of AssetFilters and an EnvironmentConfiguration.

Back to top

Response

If successful, this operation returns HTTP status code 200, with the updated repository configuration.

Back to top

Sample Response

The sample response below shows successful completion of this operation.

Sample response headers

Status Code: 200 OK
Content-Type: application/json

Sample response body

{
  "filters":[
    {
      "name":"internal",
      "classifier-criteria":[
        {
          "classifierName":"internal",
          "values":[
            {
              "value":"true"
            }
          ]
        }
      ]
    },
    {
      "name":"external",
      "classifier-criteria":[
        {
          "classifierName":"internal",
          "values":[
            {
              "value":"false"
            }
          ]
        }
      ]
    }
  ],
  "apiImplementationProfiles":[
    {
      "name":"Internal API Profile",
      "type":"Live",
      "filterNames":[
        "internal"
      ],
      "deploymentZones":[
        "DZ9941"
      ],
      "virtualServicePolicies":[
        {
          "policyName":"DetailedAuditing"
        }
      ],
      "virtualHost":"InternalHost.com",
      "path":"/"
    },
    {
      "name":"External API Profile",
      "type":"Live",
      "filterNames":[
        "external"
      ],
      "deploymentZones":[
        "DZ9942"
      ],
      "virtualHost":"ExternalHost.com",
      "path":"/"
    }
  ]
}

Back to top

Response Headers

For general information on response header values, refer to HTTP Response Headers.

Header Description
Content-Type application/json

Back to top

Response Body

Name Type Description
RepositoryConfiguration RepositoryConfiguration

Contains information about the repository configuration for the tenant; a collection of AssetFilters and an EnvironmentConfiguration.

The response returns the updated configuration.

Back to top

Error Codes/Messages

If the call is unsuccessful an error code/message is returned. One or more examples of possible errors for this operation are shown below.

Item Value
401 Unauthorized. For example, you would get this response if you didn't include the custom X-Csrf-Token_{fedmemberID} header in the request, when it was required by the platform settings; or if you included an invalid or expired value for this header. You would also get this response for any operation that requires login (almost all) if the login cookie was missing.
500 An error occurred processing the call.

More information about Akana API Platform API error messages.

Back to top

Related Topics