amplify-cli: Failed to create models in the cloud: Modelgen job creation failed

Before opening, please confirm:

  • I have installed the latest version of the Amplify CLI (see above), and confirmed that the issue still persists.
  • I have searched for duplicate or closed issues.
  • I have read the guide for submitting bug reports.
  • I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

How did you install the Amplify CLI?

npm

If applicable, what version of Node.js are you using?

v16.13.0

Amplify CLI Version

7.5.1

What operating system are you using?

mac

Amplify Categories

api

Amplify Commands

push

Describe the bug

model gen failure when pushing to cloud, also i cannot deploy changes from the cloud

Expected behavior

be able to push successfully

Reproduction steps

amplify push --appId d1ojwet6o2x0jr --envName staging

GraphQL schema(s)

# Put schemas below this line
type Scores
  @model
  @auth(
    rules: [
      { allow: public, operations: [read] }
      { allow: private, operations: [read] }
    ]
  )
  @key(name: "byPlayers", fields: ["playersID"])
  @aws_api_key
  @aws_cognito_user_pools {
  id: ID!
  date: AWSDateTime!
  score: [Int!]
  playersID: ID!
  clown_name: String
  total: Int
}

type Players
  @model
  @auth(
    rules: [
      { allow: public, operations: [read] }
      { allow: private, operations: [read] }
    ]
  )
  @key(name: "byOrganization", fields: ["organizationID"])
  @aws_api_key
  @aws_cognito_user_pools {
  id: ID!
  initials: String
  player_type: String
  grade: String
  zip_code: String
  organizationID: ID
  Scores: [Scores] @connection(keyName: "byPlayers", fields: ["id"])
  email: String
  clown_name: String
}

type Organization
  @model
  @auth(
    rules: [
      { allow: public, operations: [read] }
      { allow: private, operations: [read] }
    ]
  )
  @aws_api_key
  @aws_cognito_user_pools {
  id: ID!
  name: String!
  description: String
  Players: [Players] @connection(keyName: "byOrganization", fields: ["id"])
}
   

Log output

# Put your logs below this line
 Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS amplify-gamewrapper-staging-150951 AWS::CloudFormation::Stack Wed Nov 24 2021 10:34:53 GMT-0500 (Eastern Standard Time) User Initiated
⠼ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS apigamewrapper AWS::CloudFormation::Stack Wed Nov 24 2021 10:34:59 GMT-0500 (Eastern Standard Time) 
⠦ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS amplify-gamewrapper-staging-150951-apigamewrapper-1Q141UO9T24TI AWS::CloudFormation::Stack Wed Nov 24 2021 10:35:00 GMT-0500 (Eastern Standard Time) User Initiated
⠏ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS GraphQLAPIKey AWS::AppSync::ApiKey        Wed Nov 24 2021 10:35:10 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS GraphQLSchema AWS::AppSync::GraphQLSchema Wed Nov 24 2021 10:35:10 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE    GraphQLAPIKey AWS::AppSync::ApiKey        Wed Nov 24 2021 10:35:11 GMT-0500 (Eastern Standard Time) 
⠏ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE GraphQLSchema AWS::AppSync::GraphQLSchema Wed Nov 24 2021 10:36:13 GMT-0500 (Eastern Standard Time) 
⠙ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS Players      AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:16 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS Scores       AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:18 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS Organization AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:18 GMT-0500 (Eastern Standard Time) 
⠴ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS amplify-gamewrapper-staging-150951-apigamewrapper-1Q141UO9T24TI-Scores-ISPPGV0P1WEG AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:18 GMT-0500 (Eastern Standard Time) User Initiated
⠦ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS amplify-gamewrapper-staging-150951-apigamewrapper-1Q141UO9T24TI-Players-1L7WD8NZYQ4MP AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:17 GMT-0500 (Eastern Standard Time) User Initiated
⠇ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS amplify-gamewrapper-staging-150951-apigamewrapper-1Q141UO9T24TI-Organization-1FV7L9WKU49A9 AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:19 GMT-0500 (Eastern Standard Time) User Initiated
⠧ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS CreateScoresResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:28 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS SyncScoresResolver   AWS::AppSync::Resolver Wed Nov 24 2021 10:36:28 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS DeleteScoresResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:28 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS GetScoresResolver    AWS::AppSync::Resolver Wed Nov 24 2021 10:36:28 GMT-0500 (Eastern Standard Time) 
⠇ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS GetPlayersResolver    AWS::AppSync::Resolver Wed Nov 24 2021 10:36:26 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS DeletePlayersResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:26 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS SyncPlayersResolver   AWS::AppSync::Resolver Wed Nov 24 2021 10:36:26 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS CreatePlayersResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:26 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS UpdatePlayersResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:27 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS ListPlayersResolver   AWS::AppSync::Resolver Wed Nov 24 2021 10:36:27 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE    GetPlayersResolver    AWS::AppSync::Resolver Wed Nov 24 2021 10:36:28 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE    SyncPlayersResolver   AWS::AppSync::Resolver Wed Nov 24 2021 10:36:28 GMT-0500 (Eastern Standard Time) 
⠸ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS ListScoresResolver   AWS::AppSync::Resolver Wed Nov 24 2021 10:36:29 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS UpdateScoresResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:29 GMT-0500 (Eastern Standard Time) 
⠼ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE DeletePlayersResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:29 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE ListPlayersResolver   AWS::AppSync::Resolver Wed Nov 24 2021 10:36:29 GMT-0500 (Eastern Standard Time) 
⠇ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS GetOrganizationResolver    AWS::AppSync::Resolver Wed Nov 24 2021 10:36:29 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS DeleteOrganizationResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:30 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS SyncOrganizationResolver   AWS::AppSync::Resolver Wed Nov 24 2021 10:36:30 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS UpdateOrganizationResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:30 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS CreateOrganizationResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:30 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS ListOrganizationResolver   AWS::AppSync::Resolver Wed Nov 24 2021 10:36:30 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE    GetOrganizationResolver    AWS::AppSync::Resolver Wed Nov 24 2021 10:36:31 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE    CreateOrganizationResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:32 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE    DeleteOrganizationResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:32 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE    SyncOrganizationResolver   AWS::AppSync::Resolver Wed Nov 24 2021 10:36:32 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE    UpdateOrganizationResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:33 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE    ListOrganizationResolver   AWS::AppSync::Resolver Wed Nov 24 2021 10:36:33 GMT-0500 (Eastern Standard Time) 
⠏ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE CreateScoresResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:30 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE SyncScoresResolver   AWS::AppSync::Resolver Wed Nov 24 2021 10:36:30 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE GetScoresResolver    AWS::AppSync::Resolver Wed Nov 24 2021 10:36:30 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE UpdateScoresResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:31 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE DeleteScoresResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:31 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE ListScoresResolver   AWS::AppSync::Resolver Wed Nov 24 2021 10:36:31 GMT-0500 (Eastern Standard Time) 
⠙ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE UpdatePlayersResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:29 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE CreatePlayersResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:30 GMT-0500 (Eastern Standard Time) 
⠋ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE_CLEANUP_IN_PROGRESS amplify-gamewrapper-staging-150951-apigamewrapper-1Q141UO9T24TI-Organization-1FV7L9WKU49A9 AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:38 GMT-0500 (Eastern Standard Time) 
⠙ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE_CLEANUP_IN_PROGRESS amplify-gamewrapper-staging-150951-apigamewrapper-1Q141UO9T24TI-Scores-ISPPGV0P1WEG AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:36 GMT-0500 (Eastern Standard Time) 
⠹ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE_CLEANUP_IN_PROGRESS amplify-gamewrapper-staging-150951-apigamewrapper-1Q141UO9T24TI-Players-1L7WD8NZYQ4MP AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:34 GMT-0500 (Eastern Standard Time) 
⠏ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE Players      AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:39 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE Scores       AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:41 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE Organization AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:41 GMT-0500 (Eastern Standard Time) 
⠙ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS ConnectionStack AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:44 GMT-0500 (Eastern Standard Time) 
⠸ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS amplify-gamewrapper-staging-150951-apigamewrapper-1Q141UO9T24TI-ConnectionStack-BM45UNLI5Y1B AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:45 GMT-0500 (Eastern Standard Time) User Initiated
⠴ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS OrganizationPlayersResolver AWS::AppSync::Resolver Wed Nov 24 2021 10:36:52 GMT-0500 (Eastern Standard Time) 
UPDATE_IN_PROGRESS PlayersScoresResolver       AWS::AppSync::Resolver Wed Nov 24 2021 10:36:52 GMT-0500 (Eastern Standard Time) 
⠧ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE                     OrganizationPlayersResolver                                                                  AWS::AppSync::Resolver     Wed Nov 24 2021 10:36:54 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE                     PlayersScoresResolver                                                                        AWS::AppSync::Resolver     Wed Nov 24 2021 10:36:55 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE_CLEANUP_IN_PROGRESS amplify-gamewrapper-staging-150951-apigamewrapper-1Q141UO9T24TI-ConnectionStack-BM45UNLI5Y1B AWS::CloudFormation::Stack Wed Nov 24 2021 10:36:57 GMT-0500 (Eastern Standard Time) 
⠇ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE ConnectionStack AWS::CloudFormation::Stack Wed Nov 24 2021 10:37:07 GMT-0500 (Eastern Standard Time) 
⠏ Updating resources in the cloud. This may take a few minutes...

UPDATE_IN_PROGRESS CustomResourcesjson AWS::CloudFormation::Stack Wed Nov 24 2021 10:37:10 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE    CustomResourcesjson AWS::CloudFormation::Stack Wed Nov 24 2021 10:37:11 GMT-0500 (Eastern Standard Time) 
⠏ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE apigamewrapper AWS::CloudFormation::Stack Wed Nov 24 2021 10:37:16 GMT-0500 (Eastern Standard Time) 
⠙ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE_CLEANUP_IN_PROGRESS amplify-gamewrapper-staging-150951 AWS::CloudFormation::Stack Wed Nov 24 2021 10:37:19 GMT-0500 (Eastern Standard Time) 
⠼ Updating resources in the cloud. This may take a few minutes...

UPDATE_COMPLETE apigamewrapper                     AWS::CloudFormation::Stack Wed Nov 24 2021 10:37:56 GMT-0500 (Eastern Standard Time) 
UPDATE_COMPLETE amplify-gamewrapper-staging-150951 AWS::CloudFormation::Stack Wed Nov 24 2021 10:37:56 GMT-0500 (Eastern Standard Time) 
✔ Generated GraphQL operations successfully and saved at src/graphql
GraphQL schema compiled successfully.

Edit your schema at /Users/aaronksaunders/develop/projects/work-projects/projects/kennedy-center/whack-a-mole-api/amplify/backend/api/gamewrapper/schema.graphql or place .graphql files in a directory at /Users/aaronksaunders/develop/projects/work-projects/projects/kennedy-center/whack-a-mole-api/amplify/backend/api/gamewrapper/schema
Successfully generated models. Generated models can be found in /Users/aaronksaunders/develop/projects/work-projects/projects/kennedy-center/whack-a-mole-api/src
Failed to create models in the cloud: Modelgen job creation failed
✔ All resources are updated in the cloud

GraphQL endpoint: https://y462vv4gmfcojjdrzgc4sltymq.appsync-api.us-east-1.amazonaws.com/graphql
GraphQL API KEY: da2-uwmludi4fjaghgnfaoyicttdjm


Additional information

No response

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 16 (5 by maintainers)

Commits related to this issue

Most upvoted comments

@duranmla thanks for the screenshot and playing with MFA settings, the error has happened if you only had TOTP configured and NO SMS.

@aaronksaunders @maremoto could you confirm that you have the same settings and we are looking at the same error?

@duranmla I’ll have a fix up soon for your issue.

@aaronksaunders @duranmla @maremoto Could you try with 7.6.2 and report back if the issue still persist?

@mmoulton - This issue is not connected to the original one, it will be tracked here.

@lazpavel I’m experiencing the same issue after upgrading an existing app to the V2 GraphQL Transformer.

I’m running version 7.5.4 of the Amplify CLI.

I upgraded my project by running amplify migrate api. That was successful. I then ran amplify codegen and amplify codegen models. Both commands executed successfully.

I then ran amplify push where everything succeeded except for the cloud model generation, failing with the following error on the CLI: Failed to create models in the cloud: Modelgen job creation failed

Looking at the Deployment activity section in the amplify admin console I see the failed jobCategory.GenerateBackendAPIModels with the following error: Error processing @hasMany directive on Attendee.meetings, @index directive with name byAttendee was not found in connected model Registration

Find attached redacted versions of all relevant files:

cli.json:

{
  "features": {
    "graphqltransformer": {
      "addmissingownerfields": true,
      "improvepluralization": true,
      "validatetypenamereservedwords": true,
      "useexperimentalpipelinedtransformer": true,
      "enableiterativegsiupdates": true,
      "secondarykeyasgsi": true,
      "skipoverridemutationinputtypes": true,
      "transformerversion": 2,
      "suppressschemamigrationprompt": true
    },
    "frontend-ios": {
      "enablexcodeintegration": true
    },
    "auth": {
      "enablecaseinsensitivity": true,
      "useinclusiveterminology": true,
      "breakcirculardependency": true,
      "forcealiasattributes": false
    },
    "codegen": {
      "useappsyncmodelgenplugin": true,
      "usedocsgeneratorplugin": true,
      "usetypesgeneratorplugin": true,
      "cleangeneratedmodelsdirectory": true,
      "retaincasestyle": true,
      "addtimestampfields": true,
      "handlelistnullabilitytransparently": true,
      "emitauthprovider": true,
      "generateindexrules": true,
      "enabledartnullsafety": true
    },
    "appsync": {
      "generategraphqlpermissions": true
    },
    "project": {
      "overrides": true
    }
  }
}

schema.graphql:

type Meeting @model @auth(rules: [
  {allow: owner},
  {allow: groups, groups: ["Admin"]},
  {allow: public, operations: [read], provider: iam},
]) {
  id: ID! @primaryKey
  title: String!
  attendees: [Registration] @hasMany(indexName: "byMeeting", fields: ["id"]) @auth(rules: [
    {allow: owner},
    {allow: groups, groups: ["Admin"]}
  ])
}

type Attendee @model @auth(rules: [
  {allow: owner},
  {allow: groups, groups: ["Admin"]}
]) {
  id: ID! @primaryKey
  meetings: [Registration] @hasMany(indexName: "byAttendee", fields: ["id"])
}

type Registration @model(queries: null) @auth(rules: [
  {allow: owner},
  {allow: groups, groups: ["Admin"]}
]) {
  id: ID! @primaryKey
  meetingId: ID @index(name: "byMeeting", sortKeyFields: ["attendeeId"])
  meeting: Meeting! @belongsTo(fields: ["meetingId"])
  attendeeId: ID @index(name: "byAttendee", sortKeyFields: ["meetingId"])
  attendee: Attendee! @belongsTo(fields: ["attendeeId"])
}

Generated schema.js from local run of amplify codegen models:

export const schema = {
  "models": {
      "Meeting": {
          "name": "Meeting",
          "fields": {
              "id": {
                  "name": "id",
                  "isArray": false,
                  "type": "ID",
                  "isRequired": true,
                  "attributes": []
              },
              "title": {
                  "name": "title",
                  "isArray": false,
                  "type": "String",
                  "isRequired": true,
                  "attributes": []
              },
              "attendees": {
                  "name": "attendees",
                  "isArray": true,
                  "type": {
                      "model": "Registration"
                  },
                  "isRequired": false,
                  "attributes": [],
                  "isArrayNullable": true,
                  "association": {
                      "connectionType": "HAS_MANY",
                      "associatedWith": "meeting"
                  }
              },
              "createdAt": {
                  "name": "createdAt",
                  "isArray": false,
                  "type": "AWSDateTime",
                  "isRequired": false,
                  "attributes": [],
                  "isReadOnly": true
              },
              "updatedAt": {
                  "name": "updatedAt",
                  "isArray": false,
                  "type": "AWSDateTime",
                  "isRequired": false,
                  "attributes": [],
                  "isReadOnly": true
              }
          },
          "syncable": true,
          "pluralName": "Meetings",
          "attributes": [
              {
                  "type": "model",
                  "properties": {}
              },
              {
                  "type": "key",
                  "properties": {
                      "fields": [
                          "id"
                      ]
                  }
              },
              {
                  "type": "auth",
                  "properties": {
                  }
              }
          ]
      },
      "Registration": {
          "name": "Registration",
          "fields": {
              "id": {
                  "name": "id",
                  "isArray": false,
                  "type": "ID",
                  "isRequired": true,
                  "attributes": []
              },
              "meetingId": {
                  "name": "meetingId",
                  "isArray": false,
                  "type": "ID",
                  "isRequired": false,
                  "attributes": []
              },
              "meeting": {
                  "name": "meeting",
                  "isArray": false,
                  "type": {
                      "model": "Meeting"
                  },
                  "isRequired": true,
                  "attributes": [],
                  "association": {
                      "connectionType": "BELONGS_TO",
                      "targetName": "meetingId"
                  }
              },
              "attendeeId": {
                  "name": "attendeeId",
                  "isArray": false,
                  "type": "ID",
                  "isRequired": false,
                  "attributes": []
              },
              "attendee": {
                  "name": "attendee",
                  "isArray": false,
                  "type": {
                      "model": "Attendee"
                  },
                  "isRequired": true,
                  "attributes": [],
                  "association": {
                      "connectionType": "BELONGS_TO",
                      "targetName": "attendeeId"
                  }
              },
              "createdAt": {
                  "name": "createdAt",
                  "isArray": false,
                  "type": "AWSDateTime",
                  "isRequired": false,
                  "attributes": [],
                  "isReadOnly": true
              },
              "updatedAt": {
                  "name": "updatedAt",
                  "isArray": false,
                  "type": "AWSDateTime",
                  "isRequired": false,
                  "attributes": [],
                  "isReadOnly": true
              }
          },
          "syncable": true,
          "pluralName": "Registrations",
          "attributes": [
              {
                  "type": "model",
                  "properties": {
                      "queries": null
                  }
              },
              {
                  "type": "key",
                  "properties": {
                      "fields": [
                          "id"
                      ]
                  }
              },
              {
                  "type": "key",
                  "properties": {
                      "name": "byMeeting",
                      "fields": [
                          "meetingId",
                          "attendeeId"
                      ]
                  }
              },
              {
                  "type": "key",
                  "properties": {
                      "name": "byAttendee",
                      "fields": [
                          "attendeeId",
                          "meetingId"
                      ]
                  }
              },
              {
                  "type": "auth",
                  "properties": {
                  }
              }
          ]
      },
      "Attendee": {
          "name": "Attendee",
          "fields": {
              "id": {
                  "name": "id",
                  "isArray": false,
                  "type": "ID",
                  "isRequired": true,
                  "attributes": []
              },
              "meetings": {
                  "name": "meetings",
                  "isArray": true,
                  "type": {
                      "model": "Registration"
                  },
                  "isRequired": false,
                  "attributes": [],
                  "isArrayNullable": true,
                  "association": {
                      "connectionType": "HAS_MANY",
                      "associatedWith": "attendee"
                  }
              },
              "createdAt": {
                  "name": "createdAt",
                  "isArray": false,
                  "type": "AWSDateTime",
                  "isRequired": false,
                  "attributes": [],
                  "isReadOnly": true
              },
              "updatedAt": {
                  "name": "updatedAt",
                  "isArray": false,
                  "type": "AWSDateTime",
                  "isRequired": false,
                  "attributes": [],
                  "isReadOnly": true
              }
          },
          "syncable": true,
          "pluralName": "Attendees",
          "attributes": [
              {
                  "type": "model",
                  "properties": {}
              },
              {
                  "type": "key",
                  "properties": {
                      "fields": [
                          "id"
                      ]
                  }
              },
              {
                  "type": "auth",
                  "properties": {
                  }
              }
          ]
      },
  },
  "version": "9faa7089ca0a80f637643db6de86e59b"
};

Let me know if there is anything else you need to further debug this.