[ aws . apigateway ]

update-model

Description

Changes information about a model.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  update-model
--rest-api-id <value>
--model-name <value>
[--patch-operations <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--rest-api-id (string)

The string identifier of the associated RestApi.

--model-name (string)

The name of the model to update.

--patch-operations (list)

For more information about supported patch operations, see Patch Operations .

(structure)

For more information about supported patch operations, see Patch Operations .

op -> (string)

An update operation to be performed with this PATCH request. The valid value can be add, remove, replace or copy. Not all valid operations are supported for a given resource. Support of the operations depends on specific operational contexts. Attempts to apply an unsupported operation on a resource will return an error message..

path -> (string)

The op operation’s target, as identified by a JSON Pointer value that references a location within the targeted resource. For example, if the target resource has an updateable property of {“name”:”value”}, the path for this property is /name. If the name property value is a JSON object (e.g., {“name”: {“child/name”: “child-value”}}), the path for the child/name property will be /name/child~1name. Any slash (“/”) character appearing in path names must be escaped with “~1”, as shown in the example above. Each op operation can have only one path associated with it.

value -> (string)

The new target value of the update operation. It is applicable for the add or replace operation. When using AWS CLI to update a property of a JSON value, enclose the JSON object with a pair of single quotes in a Linux shell, e.g., ‘{“a”: …}’.

from -> (string)

The copy update operation’s source as identified by a JSON-Pointer value referencing the location within the targeted resource to copy the value from. For example, to promote a canary deployment, you copy the canary deployment ID to the affiliated deployment ID by calling a PATCH request on a Stage resource with “op”:”copy”, “from”:”/canarySettings/deploymentId” and “path”:”/deploymentId”.

Shorthand Syntax:

op=string,path=string,value=string,from=string ...

JSON Syntax:

[
  {
    "op": "add"|"remove"|"replace"|"move"|"copy"|"test",
    "path": "string",
    "value": "string",
    "from": "string"
  }
  ...
]

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command. The generated JSON skeleton is not stable between versions of the AWS CLI and there are no backwards compatibility guarantees in the JSON skeleton generated.

See ‘aws help’ for descriptions of global parameters.

Examples

Note

To use the following examples, you must have the AWS CLI installed and configured. See the Getting started guide in the AWS CLI User Guide for more information.

Unless otherwise stated, all examples have unix-like quotation rules. These examples will need to be adapted to your terminal’s quoting rules. See Using quotation marks with strings in the AWS CLI User Guide .

To change the description of a model in an API

Command:

aws apigateway update-model --rest-api-id 1234123412 --model-name 'Empty' --patch-operations op=replace,path=/description,value='New Description'

To change the schema of a model in an API

Command:

aws apigateway update-model --rest-api-id 1234123412 --model-name 'Empty' --patch-operations op=replace,path=/schema,value='"{ \"$schema\": \"http://json-schema.org/draft-04/schema#\", \"title\" : \"Empty Schema\", \"type\" : \"object\" }"'

Output

id -> (string)

The identifier for the model resource.

name -> (string)

The name of the model. Must be an alphanumeric string.

description -> (string)

The description of the model.

schema -> (string)

The schema for the model. For application/json models, this should be JSON schema draft 4 model. Do not include “*/” characters in the description of any properties because such “*/” characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API’s SDK generated by API Gateway to fail.

contentType -> (string)

The content-type for the model.