Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

GraphQL のスカラー型

フォーカスモード
GraphQL のスカラー型 - AWS AppSync GraphQL

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

GraphQL オブジェクトタイプには名前とフィールドがあり、これらのフィールドにはサブフィールドを使用できます。最終的には、オブジェクトタイプのフィールドを、クエリの各要素を表すスカラー型に解決する必要があります。オブジェクトタイプとスカラーの詳細については、GraphQL ウェブサイトの「スキーマとタイプ」を参照してください。

デフォルトの GraphQL スカラーセットに加えて、 では、 AWS プレフィックスで始まるサービス定義スカラーを使用 AWS AppSync することもできます。 AWS AppSync では、ユーザー定義 (カスタム) スカラーの作成はサポートされていません。デフォルトまたは AWS スカラーのいずれかを使用する必要があります。

カスタムオブジェクトタイプのプレフィックスとして AWS を使用することはできません。

次のセクションはスキーマタイピングのリファレンスです。

デフォルトスカラー

GraphQL は、次のデフォルトスカラー を定義します。

ID

オブジェクトの一意な識別子。このスカラーは、String のようにシリアル化されますが、人間が読めることは意図していません。

String

UTF-8 文字シーケンス。

Int

-(231) と 231-1の間の整数値。

Float

IEEE 754 浮動小数点値

Boolean

ブール値 (true または false)。

デフォルトのスカラーのリスト

ID

オブジェクトの一意な識別子。このスカラーは、String のようにシリアル化されますが、人間が読めることは意図していません。

String

UTF-8 文字シーケンス。

Int

-(231) と 231-1の間の整数値。

Float

IEEE 754 浮動小数点値

Boolean

ブール値 (true または false)。

AWS AppSync スカラー

AWS AppSync は、次のスカラーを定義します。

AWSDate

拡張機能ISO 8601 の日付形式の文字列YYYY-MM-DD

AWSTime

拡張機能ISO 8601形式の文字列hh:mm:ss.sss

AWSDateTime

拡張機能ISO 8601 の日時番号形式の文字列YYYY-MM-DDThh:mm:ss.sssZ

注記

AWSDateAWSTime、および AWSDateTime スカラーは、必要に応じてタイムゾーンオフセットに含むことができます。例えば、値 1970-01-01Z1970-01-01-07:00、 および 1970-01-01+05:30 はすべて AWSDate に有効です。タイムゾーンのオフセットは、Z(UTC)、または時間と分 (およびオプションで秒) のオフセットのいずれかである必要があります。例えば、±hh:mm:ss と指定します。ISO 8601 標準には含まれていませんが、タイムゾーンオフセットの第 2 フィールドは有効と見なされます。

AWSTimestamp

1970-01-01-T00:00Z 前後の秒数を表す整数値。

AWSEmail

RFC 822で定義される local-part@domain-part 形式のメールアドレス。

AWSJSON

JSON 文字列。すべての有効な JSON コンストラクトは、リテラルな入力文字列としてではなく、マップ、リスト、スカラー値として自動的に解析され、リゾルバーマッピングテンプレートにロードされます。引用符で囲まれていない文字列、または無効な JSON は GraphQL 検証エラーになります。

AWSPhone

電話番号 この値は文字列として保存されます。電話番号には、スペースまたはハイフンのいずれかを指定して、数字グループを区切ることができます。国番号のない電話番号は、北米番号計画 (NANP)に紐づいている米国/北米の電話番号とみなされます。

AWSURL

RFC 1738によって定義される URL。例えば、https://www.amazon.com/dp/B000NZW3KC/mailto:example@example.com です。URL にはスキーマ (http,mailto) および 2 つのフォワードスラッシュ (//) をパス部分に入れる必要があります。

AWSIPAddress

有効な IPv4 または IPv6 アドレス。IPv4 アドレスはクアッドドット表記で想定されます (123.12.34.56)。IPv6 アドレスは、角カッコで囲まれていないコロン区切りの形式で想定されます (1a2b:3c4b::1234:4567)。オプションの CIDR サフィックス (123.45.67.89/16) を含めることで、サブネットマスクを示すことができます。

AWS AppSync スカラーリスト

AWSDate

拡張機能ISO 8601 の日付形式の文字列YYYY-MM-DD

AWSTime

拡張機能ISO 8601形式の文字列hh:mm:ss.sss

AWSDateTime

拡張機能ISO 8601 の日時番号形式の文字列YYYY-MM-DDThh:mm:ss.sssZ

注記

AWSDateAWSTime、および AWSDateTime スカラーは、必要に応じてタイムゾーンオフセットに含むことができます。例えば、値 1970-01-01Z1970-01-01-07:00、 および 1970-01-01+05:30 はすべて AWSDate に有効です。タイムゾーンのオフセットは、Z(UTC)、または時間と分 (およびオプションで秒) のオフセットのいずれかである必要があります。例えば、±hh:mm:ss と指定します。ISO 8601 標準には含まれていませんが、タイムゾーンオフセットの第 2 フィールドは有効と見なされます。

AWSTimestamp

1970-01-01-T00:00Z 前後の秒数を表す整数値。

AWSEmail

RFC 822で定義される local-part@domain-part 形式のメールアドレス。

AWSJSON

JSON 文字列。すべての有効な JSON コンストラクトは、リテラルな入力文字列としてではなく、マップ、リスト、スカラー値として自動的に解析され、リゾルバーマッピングテンプレートにロードされます。引用符で囲まれていない文字列、または無効な JSON は GraphQL 検証エラーになります。

AWSPhone

電話番号 この値は文字列として保存されます。電話番号には、スペースまたはハイフンのいずれかを指定して、数字グループを区切ることができます。国番号のない電話番号は、北米番号計画 (NANP)に紐づいている米国/北米の電話番号とみなされます。

AWSURL

RFC 1738によって定義される URL。例えば、https://www.amazon.com/dp/B000NZW3KC/mailto:example@example.com です。URL にはスキーマ (http,mailto) および 2 つのフォワードスラッシュ (//) をパス部分に入れる必要があります。

AWSIPAddress

有効な IPv4 または IPv6 アドレス。IPv4 アドレスはクアッドドット表記で想定されます (123.12.34.56)。IPv6 アドレスは、角カッコで囲まれていないコロン区切りの形式で想定されます (1a2b:3c4b::1234:4567)。オプションの CIDR サフィックス (123.45.67.89/16) を含めることで、サブネットマスクを示すことができます。

スキーマの使用例

以下に示す GraphQL スキーマの例は、すべてのカスタムのスカラーを「オブジェクト」として使用するとともに、基本的なput、get、および list 操作にリゾルバーリクエストとレスポンステンプレートを使用しています。最後に、 クエリとミューテーションを実行するときに、この をどのように 使用できるかの例を示します。

type Mutation { putObject( email: AWSEmail, json: AWSJSON, date: AWSDate, time: AWSTime, datetime: AWSDateTime, timestamp: AWSTimestamp, url: AWSURL, phoneno: AWSPhone, ip: AWSIPAddress ): Object } type Object { id: ID! email: AWSEmail json: AWSJSON date: AWSDate time: AWSTime datetime: AWSDateTime timestamp: AWSTimestamp url: AWSURL phoneno: AWSPhone ip: AWSIPAddress } type Query { getObject(id: ID!): Object listObjects: [Object] } schema { query: Query mutation: Mutation }

putObject のリクエストテンプレートは次のようになります。putObjectPutItem オペレーションを使用して Amazon DynamoDB テーブル内の項目を作成または更新します。このコードスニペットには、データソースとして Amazon DynamoDB テーブルが設定されていないことに注意してください。これは例としてのみ使用されています。

{ "version" : "2017-02-28", "operation" : "PutItem", "key" : { "id": $util.dynamodb.toDynamoDBJson($util.autoId()), }, "attributeValues" : $util.dynamodb.toMapValuesJson($ctx.args) }

putObject のレスポンステンプレートは結果を返します。

$util.toJson($ctx.result)

getObject のリクエストテンプレートは次のようになります。getObjectGetItem オペレーションを開始し、指定されたプライマリキーを持つ項目の属性のセットを取得します。このコードスニペットには、データソースとして Amazon DynamoDB テーブルが設定されていないことに注意してください。これは例としてのみ使用されています。

{ "version": "2017-02-28", "operation": "GetItem", "key": { "id": $util.dynamodb.toDynamoDBJson($ctx.args.id), } }

getObject のレスポンステンプレートは結果を返します。

$util.toJson($ctx.result)

listObjects のリクエストテンプレートは次のようになります。listObjectsScan オペレーションを使用して 1 つ以上の項目と属性を返します。このコードスニペットには、データソースとして Amazon DynamoDB テーブルが設定されていないことに注意してください。これは例としてのみ使用されています。

{ "version" : "2017-02-28", "operation" : "Scan", }

listObjects のレスポンステンプレートは結果を返します。

$util.toJson($ctx.result.items)

このスキーマを GraphQL クエリと共に使用する例をいくつか次に示します。

mutation CreateObject { putObject(email: "example@example.com" json: "{\"a\":1, \"b\":3, \"string\": 234}" date: "1970-01-01Z" time: "12:00:34." datetime: "1930-01-01T16:00:00-07:00" timestamp: -123123 url:"https://amazon.com" phoneno: "+1 555 764 4377" ip: "127.0.0.1/8" ) { id email json date time datetime url timestamp phoneno ip } } query getObject { getObject(id:"0d97daf0-48e6-4ffc-8d48-0537e8a843d2"){ email url timestamp phoneno ip } } query listObjects { listObjects { json date time datetime } }

このページの内容

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.