Application (Individual)


Remove an application

DELETE https://apis.wso2.com/api/am/store/v0.13/applications/{applicationId}

This operation can be used to remove an application specifying its id.

OAuth 2.0 Scope

apim:subscribei

Request

DELETE https://localhost:9443/api/am/store/v0.13/applications/367a2361-8db5-4140-8133-c6c8dc7fa0c4 Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8

Response

HTTP/1.1 200 OK

Sample CURL

curl -k -H "Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8" -X DELETE "https://localhost:9443/api/am/store/v0.13/applications/367a2361-8db5-4140-8133-c6c8dc7fa0c4"

Parameters

Type Name Description Schema Default
Path

applicationId

required

Application Identifier consisting of the UUID of the Application.

String

Header

If-Match

optional

Validator for conditional requests; based on ETag.

String

Header

If-Unmodified-Since

optional

Validator for conditional requests; based on Last Modified header (Will be supported in future).

String

Responses

HTTP Code Description Schema

200

OK. Resource successfully deleted.

404

Not Found. Resource to be deleted does not exist.

Error

412

Precondition Failed. The request has not been performed because one of the preconditions is not met.

Error

Get details of an application

GET https://apis.wso2.com/api/am/store/v0.13/applications/{applicationId}

This operation can be used to retrieve details of an individual application specifying the application id in the URI.

OAuth 2.0 Scope

apim:subscribei

Request

GET https://localhost:9443/api/am/store/v0.13/applications/896658a0-b4ee-4535-bbfa-806c894a4015 Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8

Response

HTTP/1.1 200 OK Content-Type: application/json { "groupId": "", "callbackUrl": null, "subscriber": "admin", "throttlingTier": "Unlimited", "applicationId": "896658a0-b4ee-4535-bbfa-806c894a4015", "description": null, "status": "APPROVED", "name": "DefaultApplication", "keys": [ { "consumerKey": "AVoREWiB16kY_GTIzscl40GYYZQa", "consumerSecret": "KXQxmS8W3xDvvJH4AfR6xrhKIeIa", "keyState": "COMPLETED", "keyType": "PRODUCTION", "supportedGrantTypes": null, "token": { "validityTime": 3600, "accessToken": "3887da6d111f0429c6dff47a46e87209", "tokenScopes": [ "am_application_scope", "default" ] } }] }

Sample CURL

curl -k -H "Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8" "https://localhost:9443/api/am/store/v0.13/applications/896658a0-b4ee-4535-bbfa-806c894a4015"

Parameters

Type Name Description Schema Default
Path

applicationId

required

Application Identifier consisting of the UUID of the Application.

String

Header

Accept

optional

Media types acceptable for the response. Default is application/json.

String

application/json

Header

If-None-Match

optional

Validator for conditional requests; based on the ETag of the formerly retrieved variant of the resource.

String

Header

If-Modified-Since

optional

Validator for conditional requests; based on Last Modified header of the formerly retrieved variant of the resource (Will be supported in future).

String

Responses

HTTP Code Description Schema

200

OK. Application returned.

Application

304

Not Modified. Empty body because the client has already the latest version of the requested resource.

404

Not Found. Requested application does not exist.

Error

406

Not Acceptable. The requested media type is not supported

Error

Get key details of a given type

GET https://apis.wso2.com/api/am/store/v0.13/applications/{applicationId}/keys/{keyType}

This operation can be used to retrieve key details of an individual application specifying the key type in the URI.

OAuth 2.0 Scope

apim:subscribei

Request

GET https://localhost:9443/api/am/store/v0.13/applications/896658a0-b4ee-4535-bbfa-806c894a4015/keys/PRODUCTION Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8

Response

HTTP/1.1 200 OK Content-Type: application/json { "consumerKey": "QwEtRHd4NJkcFuRUfAT5af8XEEoa", "consumerSecret": "7Fairfeu321ENjOR9w2xgJl3i70a", "supportedGrantTypes": [ "refresh_token", "urn:ietf:params:oauth:grant-type:saml2-bearer", "password", "client_credentials", "iwa:ntlm" ], "callbackUrl": "http://sample/com/callback", "keyState": "COMPLETED", "keyType": "PRODUCTION"}

Sample CURL

curl -k -H "Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8" "https://localhost:9443/api/am/store/v0.13/applications/896658a0-b4ee-4535-bbfa-806c894a4015/keys/PRODUCTION"

Parameters

Type Name Description Schema Default
Path

applicationId

required

Application Identifier consisting of the UUID of the Application.

String

Path

keyType

required

**Application Key Type** standing for the type of the keys (i.e. Production or Sandbox).

Accepted values:

PRODUCTION SANDBOX
String

Query

groupId

optional

Application Group Id

String

Header

Accept

optional

Media types acceptable for the response. Default is application/json.

String

application/json

Responses

HTTP Code Description Schema

200

OK. Application key details returned.

ApplicationKey

404

Not Found. Requested application does not exist.

Error

406

Not Acceptable. The requested media type is not supported

Error

Update grant types and callback url of an application

PUT https://apis.wso2.com/api/am/store/v0.13/applications/{applicationId}/keys/{keyType}

This operation can be used to update grant types and callback url of an application. (Consumer Key and Consumer Secret are ignored) Upon succesfull you will retrieve the updated key details as the response.

OAuth 2.0 Scope

apim:subscribei

Request

PUT https://localhost:9443/api/am/store/v0.13/applications/896658a0-b4ee-4535-bbfa-806c894a4015/keys/SANDBOX Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8 { "supportedGrantTypes": [ "refresh_token", "urn:ietf:params:oauth:grant-type:saml2-bearer", "password", "client_credentials", "iwa:ntlm" ], "callbackUrl": "http://sample/com/callback" }

Response

HTTP/1.1 200 OK Content-Type: application/json { "consumerKey": "QwEtRHd4NJkcFuRUfAT5af8XEEoa", "consumerSecret": "7Fairfeu321ENjOR9w2xgJl3i70a", "supportedGrantTypes": [ "refresh_token", "urn:ietf:params:oauth:grant-type:saml2-bearer", "password", "client_credentials", "iwa:ntlm" ], "callbackUrl": "http://sample/com/callback", "keyState": "COMPLETED", "keyType": "PRODUCTION"}

Sample CURL

curl -k -H "Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8" -H "Content-Type: application/json" -X PUT -d @data.json "https://localhost:9443/api/am/store/v0.13/applications/c30f3a6e-ffa4-4ae7-afce-224d1f820524/keys/SANDBOX"

Parameters

Type Name Description Schema Default
Path

applicationId

required

Application Identifier consisting of the UUID of the Application.

String

Path

keyType

required

**Application Key Type** standing for the type of the keys (i.e. Production or Sandbox).

Accepted values:

PRODUCTION SANDBOX
String

Body

body

required

Grant types/Callback URL update request object

ApplicationKey (ApplicationKey)

Responses

HTTP Code Description Schema

200

Ok. Grant types or/and callback url is/are updated.

ApplicationKey

400

Bad Request. Invalid request or validation error

Error

404

Not Found. The resource to be updated does not exist.

Error

412

Precondition Failed. The request has not been performed because one of the preconditions is not met.

Error

Update an application

PUT https://apis.wso2.com/api/am/store/v0.13/applications/{applicationId}

This operation can be used to update an application. Upon succesfull you will retrieve the updated application as the response.

OAuth 2.0 Scope

apim:subscribei

Request

PUT https://localhost:9443/api/am/store/v0.13/applications/c30f3a6e-ffa4-4ae7-afce-224d1f820524 Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8 { "callbackUrl": "", "throttlingTier": "Bronze", "description": "sample app description updated", "name": "sampleapp" }

Response

HTTP/1.1 200 OK Content-Type: application/json { "groupId": null, "callbackUrl": "", "subscriber": "admin", "throttlingTier": "Bronze", "applicationId": "c30f3a6e-ffa4-4ae7-afce-224d1f820524", "description": "sample app description updated", "status": "APPROVED", "name": "sampleapp", "keys": [] }

Sample CURL

curl -k -H "Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8" -H "Content-Type: application/json" -X PUT -d @data.json "https://localhost:9443/api/am/store/v0.13/applications/c30f3a6e-ffa4-4ae7-afce-224d1f820524"

Parameters

Type Name Description Schema Default
Path

applicationId

required

Application Identifier consisting of the UUID of the Application.

String

Body

body

required

Application object that needs to be updated

Application (Application)

Header

Content-Type

required

Media type of the entity in the body. Default is application/json.

String

application/json

Header

If-Match

optional

Validator for conditional requests; based on ETag.

String

Header

If-Unmodified-Since

optional

Validator for conditional requests; based on Last Modified header (Will be supported in future).

String

Responses

HTTP Code Description Schema

200

OK. Application updated.

Application

400

Bad Request. Invalid request or validation error

Error

404

Not Found. The resource to be updated does not exist.

Error

412

Precondition Failed. The request has not been performed because one of the preconditions is not met.

Error

Generate keys for application

POST https://apis.wso2.com/api/am/store/v0.13/applications/generate-keys

This operation can be used to generate client ID and client secret for an application **NOTE** * This operation does not require the client ID and the client secret by default. * When using credentials from a third party key manager, you can generate access tokens by providing only the client ID or both the client ID and the client secret.

OAuth 2.0 Scope

apim:subscribei

Request

POST https://localhost:9443/api/am/store/v0.13/applications/generate-keys?applicationId=c30f3a6e-ffa4-4ae7-afce-224d1f820524 Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8 { "validityTime": "3600", "keyType": "PRODUCTION", "accessAllowDomains": [ "ALL" ], "scopes": [ "am_application_scope", "default" ], "supportedGrantTypes": [ "urn:ietf:params:oauth:grant-type:saml2-bearer", "iwa:ntlm", "refresh_token", "client_credentials", "password" ] }

Response

HTTP/1.1 200 OK Content-Type: application/json { "consumerSecret": "8V7DDKtKGtuG_9GDjaOJ5sijdX0a", "consumerKey": "LOFL8He72MSGVil4SS_bsh9O8MQa", "keyState": "APPROVED", "keyType": "PRODUCTION", "supportedGrantTypes": [ "urn:ietf:params:oauth:grant-type:saml2-bearer", "iwa:ntlm", "refresh_token", "client_credentials", "password" ], "token": { "validityTime": 3600, "accessToken": "fd2cdc4906fbc162e033d57f85a71c21", "tokenScopes": [ "am_application_scope", "default" ] } }

Sample CURL

curl -k -H "Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8" -H "Content-Type: application/json" -X POST -d @data.json "https://localhost:9443/api/am/store/v0.13/applications/generate-keys?applicationId=c30f3a6e-ffa4-4ae7-afce-224d1f820524"

Parameters

Type Name Description Schema Default
Query

applicationId

required

Application Identifier consisting of the UUID of the Application.

String

Body

body

required

Application object the keys of which are to be generated

ApplicationKeyGenerateRequest (ApplicationKeyGenerateRequest)

Header

Content-Type

required

Media type of the entity in the body. Default is application/json.

String

application/json

Header

If-Match

optional

Validator for conditional requests; based on ETag.

String

Header

If-Unmodified-Since

optional

Validator for conditional requests; based on Last Modified header (Will be supported in future).

String

Responses

HTTP Code Description Schema

200

OK. Keys are generated.

ApplicationKey

400

Bad Request. Invalid request or validation error

Error

404

Not Found. The resource to be updated does not exist.

Error

412

Precondition Failed. The request has not been performed because one of the preconditions is not met (Will be supported in future).

Error

Create a new application

POST https://apis.wso2.com/api/am/store/v0.13/applications

This operation can be used to create a new application specifying the details of the application in the payload.

OAuth 2.0 Scope

apim:subscribei

Request

POST https://localhost:9443/api/am/store/v0.13/applications Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8 { "throttlingTier": "Unlimited", "description": "sample app description", "name": "sampleapp", "callbackUrl": "http://my.server.com/callback" }

Response

HTTP/1.1 201 Created Location: https://localhost:9443/api/am/store/v0.13/applications/c30f3a6e-ffa4-4ae7-afce-224d1f820524 Content-Type: application/json { "groupId": null, "callbackUrl": "http://my.server.com/callback", "subscriber": "admin", "throttlingTier": "Unlimited", "applicationId": "c30f3a6e-ffa4-4ae7-afce-224d1f820524", "description": "sample app description", "status": "APPROVED", "name": "sampleapp", "keys": [] }

Sample CURL

curl -k -H "Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8" -H "Content-Type: application/json" -X POST -d @data.json "https://localhost:9443/api/am/store/v0.13/applications"

Parameters

Type Name Description Schema Default
Body

body

required

Application object that is to be created.

Application (Application)

Header

Content-Type

required

Media type of the entity in the body. Default is application/json.

String

application/json

Responses

HTTP Code Description Schema

201

Created. Successful response with the newly created object as entity in the body. Location header contains URL of newly created entity.

Application

400

Bad Request. Invalid request or validation error

Error

409

Conflict. Application already exists.

Error

415

Unsupported media type. The entity of the request was in a not supported format.

Error

Re generate consumer secret for an application

POST https://apis.wso2.com/api/am/store/v0.13/applications/regenerate-consumersecret

This operation can be used to re generate consumer secret for an application

OAuth 2.0 Scope

apim:subscribei

Request

POST https://localhost:9443/api/am/store/v0.13/applications/regenerate-consumersecret Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8 { "consumerKey": "AVoREWiB16kY_GTIzscl40GYYZQa" }

Response

HTTP/1.1 200 OK Content-Type: application/json { "consumerSecret": "8V7DDKtKGtuG_9GDjaOJ5sijdX0a", "consumerKey": "LOFL8He72MSGVil4SS_bsh9O8MQa" }

Sample CURL

curl -k -H "Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8" -H "Content-Type: application/json" -X POST -d @data.json "https://localhost:9443/api/am/store/v0.13/applications/regenerate-consumersecret"

Parameters

Type Name Description Schema Default
Body

body

required

The consumer key associated with the application

ApplicationKeyReGenerateRequest (ApplicationKeyReGenerateRequest)

Header

Content-Type

required

Media type of the entity in the body. Default is application/json.

String

application/json

Responses

HTTP Code Description Schema

200

OK. Keys are re generated.

ApplicationKeyReGenerateResponse

400

Bad Request. Invalid request or validation error

Error

404

Not Found. The resource to be updated does not exist.

Error

412

Precondition Failed. The request has not been performed because one of the preconditions is not met (Will be supported in future).

Error

Get scopes associated with a particular application based on subscribed APIs

GET https://apis.wso2.com/api/am/store/v0.13/applications/scopes/{applicationId}

Get scopes associated with a particular application based on subscribed APIs

OAuth 2.0 Scope

apim:subscribei

Request

GET https://127.0.0.1:9443/api/am/store/v0.13/applications/scopes/896658a0-b4ee-4535-bbfa-806c894a4015 Authorization: Beareraa0ddec1ac656744234477f20fafcb0d

Response

HTTP/1.1 200 OK Content-Type: application/json { "groupId": "", "callbackUrl": null, "subscriber": "admin", "throttlingTier": "Unlimited", "applicationId": "896658a0-b4ee-4535-bbfa-806c894a4015", "description": null, "status": "APPROVED", "name": "DefaultApplication", "keys": [ { "consumerKey": "AVoREWiB16kY_GTIzscl40GYYZQa", "consumerSecret": "KXQxmS8W3xDvvJH4AfR6xrhKIeIa", "keyState": "COMPLETED", "keyType": "PRODUCTION", "supportedGrantTypes": null, "token": { "validityTime": 3600, "accessToken": "3887da6d111f0429c6dff47a46e87209", "tokenScopes": [ "am_application_scope", "default" ] } }] }

Sample CURL

curl -k -H "Authorization: Bearer aa0ddec1ac656744234477f20fafcb0d" "https://127.0.0.1:9443/api/am/store/v0.13/applications/scopes/896658a0-b4ee-4535-bbfa-806c894a4015"

Parameters

Type Name Description Schema Default
Path

applicationId

required

Application Identifier consisting of the UUID of the Application.

String

Query

filterByUserRoles

optional

Filter user by roles.

Boolean

Header

If-None-Match

optional

Validator for conditional requests; based on the ETag of the formerly retrieved variant of the resource.

String

Header

If-Modified-Since

optional

Validator for conditional requests; based on Last Modified header of the formerly retrieved variant of the resource (Will be supported in future).

String

Responses

HTTP Code Description Schema

200

OK. Scope returned.

ScopeList

304

Not Modified. Empty body because the client has already the latest version of the requested resource.

401

Un authorized. The user is not authorized to view the application .

Error

404

Not Found. Requested application does not exist.

Error

406

Not Acceptable. The requested media type is not supported

Error