amazonka-apigateway-1.4.5: Amazon API Gateway SDK.

Copyright(c) 2013-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.APIGateway.CreateResource

Contents

Description

Creates a Resource resource.

Synopsis

Creating a Request

createResource #

Creates a value of CreateResource with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • crRestAPIId - The identifier of the RestApi for the resource.
  • crParentId - The parent resource's identifier.
  • crPathPart - The last path segment for this resource.

data CreateResource #

Requests Amazon API Gateway to create a Resource resource.

See: createResource smart constructor.

Instances

Eq CreateResource # 
Data CreateResource # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CreateResource -> c CreateResource #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CreateResource #

toConstr :: CreateResource -> Constr #

dataTypeOf :: CreateResource -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c CreateResource) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CreateResource) #

gmapT :: (forall b. Data b => b -> b) -> CreateResource -> CreateResource #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CreateResource -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CreateResource -> r #

gmapQ :: (forall d. Data d => d -> u) -> CreateResource -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CreateResource -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CreateResource -> m CreateResource #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateResource -> m CreateResource #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateResource -> m CreateResource #

Read CreateResource # 
Show CreateResource # 
Generic CreateResource # 

Associated Types

type Rep CreateResource :: * -> * #

Hashable CreateResource # 
ToJSON CreateResource # 
NFData CreateResource # 

Methods

rnf :: CreateResource -> () #

AWSRequest CreateResource # 
ToQuery CreateResource # 
ToPath CreateResource # 
ToHeaders CreateResource # 
type Rep CreateResource # 
type Rep CreateResource = D1 (MetaData "CreateResource" "Network.AWS.APIGateway.CreateResource" "amazonka-apigateway-1.4.5-5OCToOwmZjEH3FMiU9Yogu" False) (C1 (MetaCons "CreateResource'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_crRestAPIId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) ((:*:) (S1 (MetaSel (Just Symbol "_crParentId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_crPathPart") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)))))
type Rs CreateResource # 

Request Lenses

crRestAPIId :: Lens' CreateResource Text #

The identifier of the RestApi for the resource.

crParentId :: Lens' CreateResource Text #

The parent resource's identifier.

crPathPart :: Lens' CreateResource Text #

The last path segment for this resource.

Destructuring the Response

resource :: Resource #

Creates a value of Resource with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • rPathPart - The last path segment for this resource.
  • rPath - The full path for this resource.
  • rId - The resource's identifier.
  • rResourceMethods - Gets an API resource's method of a given HTTP verb. The resource methods are a map of methods indexed by methods' HTTP verbs enabled on the resource. This method map is included in the 200 OK response of the GET restapis{restapi_id}resources{resource_id} or GET restapis{restapi_id}resources{resource_id}?embed=methods request. Example: Get the GET method of an API resource Request @GET restapisfugvjdxtriresources3kzxbg5sa2methodsGET HTTP1.1 Content-Type: applicationjson Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160608T031827Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}20160608us-east-1apigatewayaws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} Response { "_links": { "curies": [ { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html", "name": "integration", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html", "name": "integrationresponse", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-{rel}.html", "name": "method", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html", "name": "methodresponse", "templated": true } ], "self": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGET", "name": GET, "title": GET }, "integration:put": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegration" }, "method:delete": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGET" }, "method:integration": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegration" }, "method:responses": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETresponses200", "name": "200", "title": "200" }, "method:update": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGET" }, "methodresponse:put": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETresponses{status_code}", "templated": true } }, "apiKeyRequired": false, "authorizationType": NONE, "httpMethod": GET, "_embedded": { "method:integration": { "_links": { "self": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegration" }, "integration:delete": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegration" }, "integration:responses": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegrationresponses200", "name": "200", "title": "200" }, "integration:update": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegration" }, "integrationresponse:put": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegrationresponses{status_code}", "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "3kzxbg5sa2", "credentials": "arn:aws:iam::123456789012:roleapigAwsProxyRole", "httpMethod": POST, "passthroughBehavior": WHEN_NO_MATCH, "requestParameters": { "integration.request.header.Content-Type": "'application/x-amz-json-1.1'" }, "requestTemplates": { "applicationjson": "{n}" }, "type": AWS, "uri": "arn:aws:apigateway:us-east-1:kinesis:actionListStreams", "_embedded": { "integration:responses": { "_links": { "self": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegrationresponses200", "name": "200", "title": "200" }, "integrationresponse:delete": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegrationresponses200" }, "integrationresponse:update": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegrationresponses200" } }, "responseParameters": { "method.response.header.Content-Type": "'applicationxml'" }, "responseTemplates": { "applicationjson": "$util.urlDecode("%3CkinesisStreams%3E#foreach($stream in $input.path('$.StreamNames'))%3Cstream%3E%3Cname%3E$stream%3Cname%3E%3Cstream%3E#end%3CkinesisStreams%3E")n" }, "statusCode": "200" } } }, "method:responses": { "_links": { "self": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETresponses200", "name": "200", "title": "200" }, "methodresponse:delete": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETresponses200" }, "methodresponse:update": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETresponses200" } }, "responseModels": { "application/json": Empty }, "responseParameters": { "method.response.header.Content-Type": false }, "statusCode": "200" } } } If the OPTIONS is enabled on the resource, you can follow the example here to get that method. Just replace the GET of the last path segment in the request URL with OPTIONS@ .
  • rParentId - The parent resource's identifier.

data Resource #

Represents an API resource.

Create an API

See: resource smart constructor.

Instances

Eq Resource # 
Data Resource # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Resource -> c Resource #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Resource #

toConstr :: Resource -> Constr #

dataTypeOf :: Resource -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Resource) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Resource) #

gmapT :: (forall b. Data b => b -> b) -> Resource -> Resource #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Resource -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Resource -> r #

gmapQ :: (forall d. Data d => d -> u) -> Resource -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Resource -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Resource -> m Resource #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Resource -> m Resource #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Resource -> m Resource #

Read Resource # 
Show Resource # 
Generic Resource # 

Associated Types

type Rep Resource :: * -> * #

Methods

from :: Resource -> Rep Resource x #

to :: Rep Resource x -> Resource #

Hashable Resource # 

Methods

hashWithSalt :: Int -> Resource -> Int #

hash :: Resource -> Int #

FromJSON Resource # 
NFData Resource # 

Methods

rnf :: Resource -> () #

type Rep Resource # 
type Rep Resource = D1 (MetaData "Resource" "Network.AWS.APIGateway.Types.Product" "amazonka-apigateway-1.4.5-5OCToOwmZjEH3FMiU9Yogu" False) (C1 (MetaCons "Resource'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_rPathPart") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_rPath") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)))) ((:*:) (S1 (MetaSel (Just Symbol "_rId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) ((:*:) (S1 (MetaSel (Just Symbol "_rResourceMethods") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe (Map Text Method)))) (S1 (MetaSel (Just Symbol "_rParentId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)))))))

Response Lenses

rPathPart :: Lens' Resource (Maybe Text) #

The last path segment for this resource.

rPath :: Lens' Resource (Maybe Text) #

The full path for this resource.

rId :: Lens' Resource (Maybe Text) #

The resource's identifier.

rResourceMethods :: Lens' Resource (HashMap Text Method) #

Gets an API resource's method of a given HTTP verb. The resource methods are a map of methods indexed by methods' HTTP verbs enabled on the resource. This method map is included in the 200 OK response of the GET restapis{restapi_id}resources{resource_id} or GET restapis{restapi_id}resources{resource_id}?embed=methods request. Example: Get the GET method of an API resource Request @GET restapisfugvjdxtriresources3kzxbg5sa2methodsGET HTTP1.1 Content-Type: applicationjson Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160608T031827Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}20160608us-east-1apigatewayaws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} Response { "_links": { "curies": [ { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html", "name": "integration", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html", "name": "integrationresponse", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-{rel}.html", "name": "method", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html", "name": "methodresponse", "templated": true } ], "self": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGET", "name": GET, "title": GET }, "integration:put": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegration" }, "method:delete": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGET" }, "method:integration": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegration" }, "method:responses": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETresponses200", "name": "200", "title": "200" }, "method:update": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGET" }, "methodresponse:put": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETresponses{status_code}", "templated": true } }, "apiKeyRequired": false, "authorizationType": NONE, "httpMethod": GET, "_embedded": { "method:integration": { "_links": { "self": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegration" }, "integration:delete": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegration" }, "integration:responses": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegrationresponses200", "name": "200", "title": "200" }, "integration:update": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegration" }, "integrationresponse:put": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegrationresponses{status_code}", "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "3kzxbg5sa2", "credentials": "arn:aws:iam::123456789012:roleapigAwsProxyRole", "httpMethod": POST, "passthroughBehavior": WHEN_NO_MATCH, "requestParameters": { "integration.request.header.Content-Type": "'application/x-amz-json-1.1'" }, "requestTemplates": { "applicationjson": "{n}" }, "type": AWS, "uri": "arn:aws:apigateway:us-east-1:kinesis:actionListStreams", "_embedded": { "integration:responses": { "_links": { "self": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegrationresponses200", "name": "200", "title": "200" }, "integrationresponse:delete": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegrationresponses200" }, "integrationresponse:update": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETintegrationresponses200" } }, "responseParameters": { "method.response.header.Content-Type": "'applicationxml'" }, "responseTemplates": { "applicationjson": "$util.urlDecode("%3CkinesisStreams%3E#foreach($stream in $input.path('$.StreamNames'))%3Cstream%3E%3Cname%3E$stream%3Cname%3E%3Cstream%3E#end%3CkinesisStreams%3E")n" }, "statusCode": "200" } } }, "method:responses": { "_links": { "self": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETresponses200", "name": "200", "title": "200" }, "methodresponse:delete": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETresponses200" }, "methodresponse:update": { "href": "restapisfugvjdxtriresources3kzxbg5sa2methodsGETresponses200" } }, "responseModels": { "application/json": Empty }, "responseParameters": { "method.response.header.Content-Type": false }, "statusCode": "200" } } } If the OPTIONS is enabled on the resource, you can follow the example here to get that method. Just replace the GET of the last path segment in the request URL with OPTIONS@ .

rParentId :: Lens' Resource (Maybe Text) #

The parent resource's identifier.