Services used for saving, deleting, updating, and listing Credentials within the project.

1. Get All Credentials for Specified Project

Description/Purpose: Lists the credentials in the project with the name sent as a parameter. If "admin" is sent as the project name, all credentials are listed; otherwise, only the credentials defined in the specified project are listed.

Permission: Access to services requires the user to have a role within the project with "Manage API Security" or in general"Admin" privileges.

Endpoint: https://<APINIZER_MANAGER_ADDRESS>/apiops/projects/{projectName}/credentials/

HTTP Method: GET

Request Headers: 

Header

Value

Authorization

<ACCESS_TOKEN>

Tokens are required to access this endpoint.

For detailed information on how to get tokens, you can visit the Authentication page.

Acceptapplication/json


Request Path Parameters:

Parameter

Value

projectNameThe full name of the project to be queried


Request Body: (none)

Response:

Status

Status Code

Description

Body

Success200

successful operation

{
    "status""SUCCESS",
    "resultList": [
       {  

          "fullName": "user1",
          "username": "user1",
          "enabled": true,
          "ipList": [
                   "123.123.123",
                   "98.98.15.12"
          ]

        }

    ],
    "resultCount"1
}

Error400bad request{
    "error""...",
    "error_description""..."
}
Error401not authorized for this operation

{
    "error""unauthorized_client",
    "error_description""..."
}

Error500internal error{
    "error""...",
    "error_description""..."
}


2. Create Credential

Description/Purpose: Enables the creation of a new credential in the project with the name provided as a parameter. If "admin" is sent as the project name, the credential is defined globally. The defined credential is deployed to all environments.

Permission: Access to services requires the user to have a role within the project with "Manage API Security" or in general"Admin" privileges.

Endpoint: https://<APINIZER_MANAGER_ADDRESS>/apiops/projects/{projectName}/credentials/

HTTP Method: POST

Request Headers: 

Header

Value

Authorization

<ACCESS_TOKEN>

Tokens are required to access this endpoint.

For detailed information on how to get tokens, you can visit the Authentication page.

Acceptapplication/json


Request Path Parameters:

Parameter

Value

projectNameThe full name of the project where the credential is located


Request Body: 

{
  "email": "<STRING>",
  "fullName": "<STRING>",
  "description": "<STRING>",
  "username": "<STRING>",
  "password": "<STRING>",
  "roleNameList": [
    "role1",
    "role2"
  ],
  "enabled": "true",
  "ipList": [
    "90.0.182.75",
    "172.26.100.23"
  ],
  "expireDate":"2023-08-14T00:00:00.000Z"
}

Field

Description

email

The email address of the credential

fullName

The full name of the credentia

description

The descriptionof the credential

username

The usernameof the credential

password

The password of the credential

roleNameList

The  list of roles of the credential

enabled

The active status of the credential

ipList

The IP list of the credential

expireDate

The validity period of the credential


Response:

Status

Status Code

Description

Body

Success200

successful operation

{
    "status""SUCCESS",
}

Error400bad request{
    "error""...",
    "error_description""..."
}
Error401not authorized for this operation

{
    "error""unauthorized_client",
    "error_description""..."
}

Error500internal error{
    "error""...",
    "error_description""..."
}


3. Update Credential

Description/Purpose: Updates the credential with the "username" value sent in the request body in the project with the name provided as a parameter, or creates a new one if it doesn't exist. If "admin" is sent as the project name, the credential is defined globally. The defined/updated credential is deployed to all environments.

Permission:

Endpoint: https://<APINIZER_MANAGER_ADDRESS>/apiops/projects/{projectName}/credentials/

HTTP Method: PUT

Request Headers: 

Header

Value

Authorization

<ACCESS_TOKEN>

Tokens are required to access this endpoint.

For detailed information on how to get tokens, you can visit the Authentication page.

Acceptapplication/json


Request Path Parameters:

Parameter

Value

projectNameThe full name of the project where the credential is located


Request Body: 

{
  "email": "<STRING>",
  "fullName": "<STRING>",
  "description": "<STRING>",
  "username": "<STRING>",
  "password": "<STRING>",
  "roleNameList": [
    "role1",
    "role2"
  ],
  "enabled": "true",
  "ipList": [
    "90.0.182.75",
    "172.26.100.23"
  ],
  "expireDate":"2023-08-14T00:00:00.000Z"
}

Field

Description

email

The email address of the credential

fullName

The full name of the credentia

description

The descriptionof the credential

username

The usernameof the credential

password

The password of the credential

roleNameList

The  list of roles of the credential

enabled

The active status of the credential

ipList

The IP list of the credential

expireDate

The validity period of the credential


Response:

Status

Status Code

Description

Body

Success200

successful operation

{
    "status""SUCCESS",
}

Error400bad request{
    "error""...",
    "error_description""..."
}
Error401not authorized for this operation

{
    "error""unauthorized_client",
    "error_description""..."
}

Error500internal error{
    "error""...",
    "error_description""..."
}


4. Change Credential Password

Description/Purpose: Enables the update of the password for the credential with the "username" sent as a parameter. The updated credential is deployed to all environments.

Permission:

Endpoint: https://<APINIZER_MANAGER_ADDRESS>/apiops/projects/{projectName}/credentials/{username}/

HTTP Method: PATCH

Request Headers: 

Header

Value

Authorization

<ACCESS_TOKEN>

Tokens are required to access this endpoint.

For detailed information on how to get tokens, you can visit the Authentication page.

Acceptapplication/json


Request Path Parameters:

Parameter

Value

projectNameThe full name of the project where the credential is located
usernameThe username of the credential


Request Body: 

{
  "password": "<STRING>"
}

Field

Description

password

The password of the credential


Response:

Status

Status Code

Description

Body

Success200

successful operation

{
    "status""SUCCESS",
}

Error400bad request{
    "error""...",
    "error_description""..."
}
Error401not authorized for this operation

{
    "error""unauthorized_client",
    "error_description""..."
}

Error500internal error{
    "error""...",
    "error_description""..."
}


5. Delete Credential

Description/Purpose: Enables the deletion of the credential with the "username" sent as a parameter. The deleted credential is undeployed from all environments.

Permission:

Endpoint: https://<APINIZER_MANAGER_ADDRESS>/apiops/projects/{projectName}/credentials/{username}/

HTTP Method: DELETE

Request Headers: 

Header

Value

Authorization

<ACCESS_TOKEN>

Tokens are required to access this endpoint.

For detailed information on how to get tokens, you can visit the Authentication page.

Acceptapplication/json


Request Path Parameters:

Parameter

Value

projectNameThe full name of the project where the credential is located
usernameThe username of the credential


Request Body:  (none)

Response:

Status

Status Code

Description

Body

Success200

successful operation

{
    "status""SUCCESS",
}

Error400bad request{
    "error""...",
    "error_description""..."
}
Error401not authorized for this operation

{
    "error""unauthorized_client",
    "error_description""..."
}

Error500internal error{
    "error""...",
    "error_description""..."
}


6. Get Granted Access List of Credential

Description/Purpose: Enables the listing of API Proxies and API Proxy Groups allowed access for the credential with the "username" sent as a parameter.

Permission:

Endpoint: https://<APINIZER_MANAGER_ADDRESS>/apiops/projects/{projectName}/credentials/{username}/access/

HTTP Method: GET

Request Headers: 

Header

Value

Authorization

<ACCESS_TOKEN>

Tokens are required to access this endpoint.

For detailed information on how to get tokens, you can visit the Authentication page.

Acceptapplication/json


Request Path Parameters:

Parameter

Value

projectNameThe full name of the project where the credential is located
usernameThe username of the credential


Request Body:  (none)

Response:

Status

Status Code

Description

Body

Success200

successful operation

{
"status": "SUCCESS",
"resultList": [
    {
       "name": "Calculator",
       "type": "API_PROXY"
   }
],
"resultCount": 1
}

Error400bad request{
    "error""...",
    "error_description""..."
}
Error401not authorized for this operation

{
    "error""unauthorized_client",
    "error_description""..."
}

Error500internal error{
    "error""...",
    "error_description""..."
}


7. Grant Access for Credential

Description/Purpose: Enables granting access permissions to the specified API Proxy or API Proxy Groups for the credential with the "username" sent as a parameter. The updated permissions are deployed to all environments.

Permission:

Endpoint: https://<APINIZER_MANAGER_ADDRESS>/apiops/projects/{projectName}/credentials/{username}/access/

HTTP Method: PUT

Request Headers: 

Header

Value

Authorization

<ACCESS_TOKEN>

Tokens are required to access this endpoint.

For detailed information on how to get tokens, you can visit the Authentication page.

Acceptapplication/json


Request Path Parameters:

Parameter

Value

projectNameThe full name of the project where the credential is located
usernameThe username of the credential


Request Body:

[

    {
       "name": "Calculator",
        "type": "API_PROXY"
    },

   {
       "name": "Account Proxy Group",
        "type": "API_PROXY_GROUP"
    }

]

Field

Description

name

API Proxy/API Proxy Group name

type

API Proxy/API Proxy Group type information


Response:

Status

Status Code

Description

Body

Success200

successful operation

{
   "status": "SUCCESS"
}

Error400bad request{
    "error""...",
    "error_description""..."
}
Error401not authorized for this operation

{
    "error""unauthorized_client",
    "error_description""..."
}

Error500internal error{
    "error""...",
    "error_description""..."
}



8. Revoke Access from Credential

Description/Purpose: Enables revoking access permissions from the specified API Proxy or API Proxy Groups for the credential with the "username" sent as a parameter. The revoked permissions are undeployed from all environments.

Permission:

Endpoint: https://<APINIZER_MANAGER_ADDRESS>/apiops/projects/{projectName}/credentials/{username}/access/

HTTP Method: DELETE

Request Headers: 

Header

Value

Authorization

<ACCESS_TOKEN>

Tokens are required to access this endpoint.

For detailed information on how to get tokens, you can visit the Authentication page.

Acceptapplication/json


Request Path Parameters:

Parameter

Value

projectNameThe full name of the project where the credential is located
usernameThe username of the credential


Request Body:

[

    {
       "name": "Calculator",
        "type": "API_PROXY"
    },

   {
       "name": "Account Proxy Group",
        "type": "API_PROXY_GROUP"
    }

]

Field

Description

name

API Proxy/API Proxy Group name

type

API Proxy/API Proxy Group type information


Response:

Status

Status Code

Description

Body

Success200

successful operation

{
   "status": "SUCCESS"
}

Error400bad request{
    "error""...",
    "error_description""..."
}
Error401not authorized for this operation

{
    "error""unauthorized_client",
    "error_description""..."
}

Error500internal error{
    "error""...",
    "error_description""..."
}