aws-amplify / amplify-category-api

The AWS Amplify CLI is a toolchain for simplifying serverless web and mobile development. This plugin provides functionality for the API category, allowing for the creation and management of GraphQL and REST based backends for your amplify project.
https://docs.amplify.aws/
Apache License 2.0
89 stars 79 forks source link

Question about the DynamoDB resolvers: trying to understand when they do and don't fire after a lambda result #1075

Closed austinamorusoyardstick closed 1 year ago

austinamorusoyardstick commented 1 year ago

Amplify CLI Version

all

Question

The link is to a document I wrote up explains the problem. https://yardstickteam-my.sharepoint.com/:w:/g/personal/austin_yardstick_team/EagQDKL3tzRImyIXgiJgoUoBE-8bnPnLFDr3jBeFiW7mxg?e=tts1gY

josefaidt commented 1 year ago

Hey @austinamorusoyardstick thanks for raising this! Would you mind including the details of the issue here in GitHub?

austinamorusoyardstick commented 1 year ago

Question about the DynamoDB resolvers: trying to understand when they do and don't fire after a lambda result. I have a lambda that returns a single @model object type:

type Query { 
    recommendations(input: RecommendationsInput!): RecommendationsResult @function(name: "recommendation-${env}") 
} 
type Recommendation 
@model 
@auth( 
    rules: [ 
        { allow: groups, provider: userPools, groups: ["YardstickAdmins"] } 
        { allow: groups, provider: userPools, groups: ["Everyone"], operations: [ read ] } 
    ] 
) 
{ 
    id: ID! 
    name: String! 
    primaryCompetencies: [RecommendationPrimaryCompetency] @connection(keyName: "byRecommendation", fields: ["id"]) 
    secondaryCompetencies: [RecommendationSecondaryCompetency] @connection(keyName: "byRecommendation", fields: ["id"]) 
    questions: [RecommendationQuestion] @connection(keyName: "byRecommendation", fields: ["id"]) 
    departmentLevelRecommendation: [DepartmentLevelRecommendation] @connection(keyName: "byrecommendationIDz", fields: ["id"]) 
    levelRecommendation: [LevelRecommendation] @connection(keyName: "byrecommendationIDs", fields: ["id"]) 
} 
type DepartmentLevelRecommendation 
@model 
@auth( 
    rules: [ 
        { allow: groups, provider: userPools, groups: ["YardstickAdmins"] } 
        { allow: groups, provider: userPools, groups: ["Everyone"], operations: [ read ] } 
    ] 
) 
@key(name: "byrecommendationIDz", fields: ["recommendationID"] queryField: "listDepartmentLevelRecommendationByRecommendationID") 
{ 
    id: ID! 

    departmentID: ID! 
    department: JobDepartment! @connection(fields: ["departmentID"]) 

    levelID: ID! 
    level: JobLevel! @connection(fields: ["levelID"]) 

    recommendationID: ID! 
    recommendation: Recommendation! @connection(fields: ["recommendationID"]) 
} 
type LevelRecommendation 
@model 
@auth( 
    rules: [ 
        { allow: groups, provider: userPools, groups: ["YardstickAdmins"] } 
        { allow: groups, provider: userPools, groups: ["Everyone"], operations: [ read ] } 
    ] 
) 
@key(name: "byLevelIDs", fields: ["levelID"] queryField: "listLevelRecommendationByLevelID") 
@key(name: "byrecommendationIDs", fields: ["recommendationID"] queryField: "listLevelRecommendationByRecommendationID") 
{ 
    id: ID! 

    levelID: ID! 
    level: JobLevel! @connection(fields: ["levelID"]) 

    recommendationID: ID! 
    recommendation: Recommendation! @connection(fields: ["recommendationID"]) 
} 
type RecommendationPrimaryCompetency 
@model 
@auth( 
    rules: [ 
        { allow: groups, provider: userPools, groups: ["YardstickAdmins"] } 
        { allow: groups, provider: userPools, groups: ["Everyone"], operations: [ read ] } 
    ] 
) 
@key(name: "byRecommendation", fields: ["recommendationID", "id"] queryField: "listRecommendationPrimaryCompetencysByRecommendation") 
{ 
    id: ID! 

    recommendationID: ID! 
    recommendation: Recommendation! @connection(fields: ["recommendationID"]) 

    competencyID: ID! 
    competency: Competency! @connection(fields: ["competencyID"]) 
} 
type RecommendationSecondaryCompetency 
@model 
@auth( 
    rules: [ 
        { allow: groups, provider: userPools, groups: ["YardstickAdmins"] } 
        { allow: groups, provider: userPools, groups: ["Everyone"], operations: [ read ] } 
    ] 
) 
@key(name: "byRecommendation", fields: ["recommendationID", "id"] queryField: "listRecommendationSecondaryCompetencysByRecommendation") 
{ 
    id: ID! 

    recommendationID: ID! 
    recommendation: Recommendation! @connection(fields: ["recommendationID"]) 

    competencyID: ID! 
    competency: Competency! @connection(fields: ["competencyID"]) 
} 
type RecommendationQuestion 
@model 
@auth( 
    rules: [ 
        { allow: groups, provider: userPools, groups: ["YardstickAdmins"] } 
        { allow: groups, provider: userPools, groups: ["Everyone"], operations: [ read ] } 
    ] 
) 
@key(name: "byRecommendation", fields: ["recommendationID", "id"] queryField: "listRecommendationQuestionsByRecommendation") 
@key(name: "byQuestionIDField", fields: ["questionID"] queryField: "listRecommendationQuestionsbyQuestion") 
{ 
    id: ID! 

    recommendationID: ID! 
    recommendation: Recommendation! @connection(fields: ["recommendationID"]) 

    questionID: ID! 
    question: Question! @connection(fields: ["questionID"]) 
} 
type AlwaysRecommendedQuestion 
@model 
@auth( 
    rules: [ 
        { allow: groups, provider: userPools, groups: ["YardstickAdmins"] } 
        { allow: groups, provider: userPools, groups: ["Everyone"], operations: [ read ] } 
    ] 
) 
{ 
    id: ID! 

    questionID: ID! 
    question: Question! @connection(fields: ["questionID"]) 
} 
input RecommendationsInput { 
    roleID: ID! 
} 

type RecommendationsResult { 
    recommendation: Recommendation 
} 

This type of resolver with lambda only requires me to return an id for the Recommendation and seems as if DynamoDB resolves the rest of the fields.

I have another Lambda that returns a non @model then a type that is an @model that doesn’t get looked up by DynamoDB.

type Query { 
    getRoleCompetencyQuestions(input: RoleCompetencyQuestionsInput!): RoleCompetencyQuestionsResult @function(name: "getRoleCompetencyQuestions-${env}") 
} 

input RoleCompetencyQuestionsInput { 
    roleID: ID! 
} 

type RoleCompetencyQuestionsResult { 
    items: [RoleCompetencyQuestion] 
} 

type RoleCompetencyQuestion { 
    competency: Competency 
    questions: [CompetencyQuestion] 
} 

type Competency 
  @model 
  { 
    id: ID! 
    name: String! 
    description: String! 
  } 

type CompetencyQuestion 
  @model 
  @key(name: "byCompetency", fields: ["competencyID", "id"], queryField: "listCompetencyQuestionsByCompetencyID") 
  @key(name: "byQuestion", fields: ["questionID"], queryField: "listCompetencyQuestionsByQuestionID") 
  { 
    id: ID! 
    competencyID: ID! 
    competency: Competency! @connection(fields: ["competencyID"]) 
    questionID: ID! 
    question: Question! @connection(fields: ["questionID"]) 
  } 

To my understanding, in the lambda all I must do is return the ID of the type, then DynamoDB responds with the rest of the result. However, it does not seem to call DynamoDB to resolve the values.

My lambda return payload example:

const FINAL = { 
   items: [ 
      { 
         competency: { 
            id: '345345-d214-4c44-ac06-ee9a8a70d271', 
         }, 
         questions: [ 
            { 
               id: '345345-af88-42b0-b78e-9fcce9c831c7', 
            }, 
            { 
               id: '090990-af88-42b0-b78e-9fcce9c831c7', 
            }, 
         ], 
      }, 
      { 
         competency: { 
            id: '123318-d214-4c44-ac06-ee9a8a70d271', 
         }, 
         questions: [ 
            { 
               id: '123123-af88-42b0-b78e-9fcce9c831c7', 
            }, 
            { 
               id: '09812-af88-42b0-b78e-9fcce9c831c7', 
            }, 
         ], 
      }, 
   ], 
}; 

Now, when I go to run my query which triggers this lambda, I want to get “additional” Competency and Question data (not just their IDs) such as Competency.name

query a { 
  getRoleCompetencyQuestions(input: {roleID: "7c536e40-1ea0-4ae2-a8a9-4fe6872362f6"}){ 
    __typename 
    items { 
      __typename 
      competency { 
        __typename 
        id 
        name 
      } 
      questions { 
        __typename 
        id 
      } 
    } 
  } 
} 

Which takes us to the problem, which applies to (competency) name and every other field I want to query for (again, outside of ID or __typename)… the response is:

Competency: null

"message": "Cannot return null for non-nullable field Competency.name.",

austinamorusoyardstick commented 1 year ago

One question I have is does the DynamoDB resolver only get called after a lambda for the response if the lambda only returns a singular record? I'm wondering if you end up returning an array it just ignores the result and expects the lambda to completely return the full result? We are ultimately really confused as to when and what resolver gets fired for responses from lambda resolvers for AppSync Graphql.

josefaidt commented 1 year ago

Hey @austinamorusoyardstick :wave: thanks for posting those details. To clarify, does the Lambda resolver for the single item return the full, expected data structure? Are you using pipeline resolvers by chance?

Typically for @function usage the Lambda is responsible for handling the response.

austinamorusoyardstick commented 1 year ago

Okay so just did some local testing and I kind of know when its using the lambda result and when it's using the Dynamodb for the calls. Check this out. This is all mocked locally when I'm testing but we have seen similar things on the remote/deployed as well.

query getRoleCompetencyQuestions {
  getRoleCompetencyQuestions(input: {roleID: ""}) {
    items { # Lambda responsibility
      competency { # Lambda responsibility
        id # Lambda responsibility
        name # Lambda responsibility
        questions { # DynamoDB responsibility
          items { # DynamoDB responsibility
            id # DynamoDB responsibility
            competency{ # DynamoDB responsibility
              id # DynamoDB responsibility
            }
          }
        }
      }
      questions{ # Lambda responsibility
        id # Lambda responsibility
        competencyID # Lambda responsibility
        competency{ # DynamoDB responsibility
          id # DynamoDB responsibility
          name # DynamoDB responsibility
        }
      }
    }
  }
}

The lambda hardcoded response for testing

    return {
        items: [
            {
                competency: {
                    id: '20d22800-cd64-4684-8f76-63c64c271ef8',
                    name: 'Confidencess',
                },
                questions: [
                    {
                        competencyID: '22ed3a6b-5d76-490e-b24d-af9ded54b5d0',
                        id: '90ac4c43-6801-4fce-b8d3-cc5bac6d4fa1',
                    },
                    {
                        competencyID: '1086ea11-d5dd-4c94-ba51-4105a142f6cc',
                        id: '7dd4a3d2-e667-4518-8fc7-5e441d846fe1',
                    },
                    {
                        competencyID: '22ed3a6b-5d76-490e-b24d-af9ded54b5d0',
                        id: '9b058ebb-2000-40f8-8656-bb73cdaa3c46',
                    },
                    {
                        competencyID: 'ed6f3256-a348-4101-8be1-0c89ea0bda28',
                        id: '5eaa6e6e-d2c6-4777-94a7-0df34a873826',
                    },
                    {
                        competencyID: '11e6540c-3b9b-4289-97c1-628499dc229e',
                        id: '83ff3516-e17e-4ad7-bec0-bcf80021f914',
                    },
                    {
                        competencyID: '27dfa2cd-2492-444f-9627-9c138f2662a5',
                        id: '64c09011-1c29-454e-bbd4-d3db07c24180',
                    },
                    {
                        competencyID: '97e39aa2-6259-44c0-817f-3b3dc2ea2d6a',
                        id: 'ebb0a526-8ecb-4427-b317-0171198c0002',
                    },
                    {
                        competencyID: '633ac88c-d94f-495c-bf5f-fecd747a9fe4',
                        id: '202fa284-d525-4add-858f-126ddd31290c',
                    },
                    {
                        competencyID: 'c8c9b97b-2214-4a7b-a79d-b18a633183f7',
                        id: '61078261-c1b4-4d87-8f24-15758cdb6570',
                    },
                    {
                        competencyID: '8293c212-2873-4d95-9a21-e52ae6b7d58d',
                        id: 'd176fd28-4cb3-4030-b59f-44bbb65c522d',
                    },
                    {
                        competencyID: '64c0ddc6-4711-45fb-8ecd-04fd09c83cbc',
                        id: 'd8976e2d-adf1-4363-a41a-ebc89e699a5a',
                    },
                    {
                        competencyID: '7f50356f-7c85-4eb4-a748-cb6038a2c969',
                        id: '9f2ed76b-e92c-4f09-b460-fb59876a73fc',
                    },
                    {
                        competencyID: '43e1df00-564a-47fb-bfb9-14f63c667fb9',
                        id: '0df7ee2d-9434-4827-9bd2-98b1c1d7313c',
                    },
                    {
                        competencyID: '795d3d0e-259c-45fc-8cea-4e8c2150f8dc',
                        id: '0b69e9f1-bd7f-488b-ac89-61fd7eb75410',
                    },
                    {
                        competencyID: '72434ec4-76dd-4046-8ebf-667f2b67317a',
                        id: 'fe65d898-f07d-4005-9b5b-69e0a51bf309',
                    },
                    {
                        competencyID: 'd29c1f01-bcb4-4a74-a3de-1ee6e4ef7a11',
                        id: 'edd226de-25e9-438a-aabe-3ef350087b1a',
                    },
                    {
                        competencyID: 'fd80e852-4dd4-41f3-8f8d-054d29e20163',
                        id: 'b91e93bc-7685-4b3e-af59-e523b1fa81cc',
                    },
                    {
                        competencyID: '27dfa2cd-2492-444f-9627-9c138f2662a5',
                        id: '8603366a-ed41-4e69-a8c1-b46f26305109',
                    },
                    {
                        competencyID: 'abcae556-3ae1-4235-a4b5-d6c9fe8879ab',
                        id: '033ccb3b-3133-4919-bc19-c6abeb4d60f4',
                    },
                    {
                        competencyID: '3a4fd9c6-431e-4ed2-ab12-77ff704ac7a9',
                        id: '9485234f-cdd7-47a0-b8bf-ffeb94c02ff4',
                    },
                    {
                        competencyID: 'd3263097-a9af-4f4d-a595-60bb25b3d262',
                        id: '7f916de4-60b6-483b-8431-24b469e62d4e',
                    },
                    {
                        competencyID: '20d22800-cd64-4684-8f76-63c64c271ef8',
                        id: 'dec81359-bb05-4868-852e-95c307e1eb4b',
                    },
                    {
                        competencyID: 'e4a9a15e-4009-4f14-b5be-77bf6665afa4',
                        id: '9d06651b-a5fd-42a7-933c-91cd3ff3617a',
                    },
                    {
                        competencyID: '28e861d3-c123-4743-8d8b-a25241aec6a6',
                        id: '6ac9fe92-a6ea-426a-ab1b-d8b870ddd983',
                    },
                    {
                        competencyID: '484333bc-a759-4f72-af03-702b31d40167',
                        id: 'f5530ba3-ce98-4ee3-8c3e-da7dea7e5553',
                    },
                    {
                        competencyID: '38e62faa-a49c-4898-8616-4d1f05f0c77e',
                        id: 'e6656458-20e0-4b51-ace7-9e863195726b',
                    },
                    {
                        competencyID: '41cd19de-6030-4c0f-9ce5-a8693201f9fc',
                        id: '9cae04a6-da78-4c89-a4f4-ff711e7661b3',
                    },
                    {
                        competencyID: '7f50356f-7c85-4eb4-a748-cb6038a2c969',
                        id: '55345bc8-6516-40f0-a180-1f3bbeeb17a1',
                    },
                    {
                        competencyID: '71514a4b-05b5-4f3a-81f4-75c4054eb6a6',
                        id: '44492b55-6c9a-4798-8c1d-14382bc868c0',
                    },
                    {
                        competencyID: '22ed3a6b-5d76-490e-b24d-af9ded54b5d0',
                        id: 'a556d0e4-a320-47a4-8eb6-15a056266ac1',
                    },
                    {
                        competencyID: '23f0ee2c-7eac-4b0a-bfec-b904fe858de9',
                        id: '18226653-fa98-4e28-a2dd-559c2da9ad0e',
                    },
                    {
                        competencyID: 'a24c4329-9051-4d60-bb3b-299ebd96e4bb',
                        id: 'd4de794d-e0a9-403e-98b5-be93332edb9d',
                    },
                    {
                        competencyID: '090bfbd0-f190-42b7-91da-691b8d6456d3',
                        id: '98ebea08-d5d2-402b-af71-f00a61a1835d',
                    },
                    {
                        competencyID: 'ed6f3256-a348-4101-8be1-0c89ea0bda28',
                        id: '561f4d52-0157-4874-bbad-a381cfa73d56',
                    },
                    {
                        competencyID: '484333bc-a759-4f72-af03-702b31d40167',
                        id: 'd0e91717-84b0-462c-a266-79edee68d56a',
                    },
                    {
                        competencyID: '67a747be-c6f3-429c-8ce1-820f2dad24e4',
                        id: '7d9e3041-bc2c-43f8-9524-8f16f5b05d95',
                    },
                    {
                        competencyID: '35dcfa6c-f655-442b-9b5b-7ba0bfaada75',
                        id: 'c37575c1-8251-4c4c-b5fd-6f21d5338366',
                    },
                    {
                        competencyID: '64c0ddc6-4711-45fb-8ecd-04fd09c83cbc',
                        id: '7bce4192-3c11-45ca-a0ee-f67b44bbf133',
                    },
                    {
                        competencyID: '795d3d0e-259c-45fc-8cea-4e8c2150f8dc',
                        id: '60ed06d3-3747-4faf-84c6-1fdad0835017',
                    },
                    {
                        competencyID: '795d3d0e-259c-45fc-8cea-4e8c2150f8dc',
                        id: '3e5f0026-8ab8-4c6f-b957-c3bc8d379e3d',
                    },
                    {
                        competencyID: '41cd19de-6030-4c0f-9ce5-a8693201f9fc',
                        id: '08e82e04-c14b-499c-989c-59857db1693a',
                    },
                    {
                        competencyID: '795d3d0e-259c-45fc-8cea-4e8c2150f8dc',
                        id: '39dc36e2-60c4-4de5-92ab-1a4443da2919',
                    },
                    {
                        competencyID: '8293c212-2873-4d95-9a21-e52ae6b7d58d',
                        id: 'f1170c7a-8390-4f3d-86d6-6a6409ab191f',
                    },
                    {
                        competencyID: '23f0ee2c-7eac-4b0a-bfec-b904fe858de9',
                        id: '10c43d3a-2dd9-428c-8603-286fd5f3a7b3',
                    },
                    {
                        competencyID: 'd25aea33-3cf7-4792-a484-ed2e9f7ec70e',
                        id: '2bad8be7-4883-4ad0-b82a-68f682b3fd62',
                    },
                    {
                        competencyID: '633ac88c-d94f-495c-bf5f-fecd747a9fe4',
                        id: '276f06d0-2d25-400e-8c44-4aa997f1c077',
                    },
                    {
                        competencyID: '6a0c3117-69c5-4e01-8b83-4774eb82aead',
                        id: 'e5f8dda8-51ee-4889-8a51-b55d635a4d4d',
                    },
                    {
                        competencyID: '64c0ddc6-4711-45fb-8ecd-04fd09c83cbc',
                        id: 'c17ea5ee-a765-454c-92b0-eb27f41b1e69',
                    },
                    {
                        competencyID: '4b53fc85-220a-41e5-b5aa-277de12f66e5',
                        id: 'fec537ec-efaf-4d70-92f7-441f5e981a5e',
                    },
                    {
                        competencyID: '35dcfa6c-f655-442b-9b5b-7ba0bfaada75',
                        id: '19080242-2bf2-4346-90c0-f4d765ec7dda',
                    },
                    {
                        competencyID: '633ac88c-d94f-495c-bf5f-fecd747a9fe4',
                        id: '55377b83-5531-423e-9daa-1671baf49a17',
                    },
                    {
                        competencyID: '7c5f510d-acea-49d4-8d59-c0272c04b313',
                        id: '1a4926ca-0608-4f5c-829a-f9ebe3fba2f2',
                    },
                    {
                        competencyID: '6a0c3117-69c5-4e01-8b83-4774eb82aead',
                        id: '22e4f96b-056e-4804-9d03-e7a23d0bb33f',
                    },
                    {
                        competencyID: '41cd19de-6030-4c0f-9ce5-a8693201f9fc',
                        id: 'd9744f61-7a64-4208-a05a-a00187a0d33d',
                    },
                    {
                        competencyID: 'e8427961-e6a1-4e3c-b947-18aa82430945',
                        id: '2514f858-d4d1-426d-9020-b52e35abf7d3',
                    },
                    {
                        competencyID: 'e4a9a15e-4009-4f14-b5be-77bf6665afa4',
                        id: 'aedf81ee-4a49-4736-8e11-5c0581f9b1b3',
                    },
                    {
                        competencyID: 'd9c9bea8-d214-4c44-ac06-ee9a8a70d271',
                        id: '539f4a8b-51ad-40ca-b056-4492998736eb',
                    },
                    {
                        competencyID: '23f0ee2c-7eac-4b0a-bfec-b904fe858de9',
                        id: 'ae84fd23-6edc-4eb7-b452-0adf752defe8',
                    },
                    {
                        competencyID: 'f564884f-37c4-470d-8e2c-2e8b33697b53',
                        id: '6c705680-0718-4b93-9383-3b8efec2d2e4',
                    },
                    {
                        competencyID: 'b212709c-a9ad-4c70-bfe1-caa2dd03028f',
                        id: 'a95fd451-fd85-4bef-9701-3558f1aa272e',
                    },
                    {
                        competencyID: '25b2b280-6f6e-4496-8b42-838d8de7819c',
                        id: '38e65c51-6d0e-48c8-9130-af5fc46fdc9d',
                    },
                    {
                        competencyID: '97e39aa2-6259-44c0-817f-3b3dc2ea2d6a',
                        id: '42c99aae-d03b-4042-9223-4381734f7b8d',
                    },
                    {
                        competencyID: '484333bc-a759-4f72-af03-702b31d40167',
                        id: '4bf198d3-931b-4c55-9261-73cb127286b3',
                    },
                    {
                        competencyID: '97e39aa2-6259-44c0-817f-3b3dc2ea2d6a',
                        id: 'c8fac84d-22b2-4a22-b674-b0eb46909782',
                    },
                    {
                        competencyID: 'd3263097-a9af-4f4d-a595-60bb25b3d262',
                        id: '17530c0b-a621-408a-95e8-948b1c7a8a79',
                    },
                    {
                        competencyID: '509a212b-0715-4ff3-b438-c378c9237798',
                        id: '830596af-98a1-4f63-8740-4dcbe3f1b47f',
                    },
                    {
                        competencyID: '71514a4b-05b5-4f3a-81f4-75c4054eb6a6',
                        id: '3b79acbb-a263-4d08-b02a-a66d5bf4e606',
                    },
                    {
                        competencyID: '22ed3a6b-5d76-490e-b24d-af9ded54b5d0',
                        id: '8daf5265-a57f-41b8-9f90-cb5135508b01',
                    },
                    {
                        competencyID: '9d695700-af56-4d74-8c61-30f11e356e24',
                        id: '79dfde7d-451b-4947-9d63-db20f2cbb89a',
                    },
                    {
                        competencyID: '509a212b-0715-4ff3-b438-c378c9237798',
                        id: 'cde2d414-4354-4eda-b035-696b00e58419',
                    },
                    {
                        competencyID: 'ca60dd1a-f567-472e-9fd3-355530ab11d1',
                        id: 'dc6d7e70-e9dd-4df7-8d8e-587467c0dae7',
                    },
                    {
                        competencyID: '624810ae-0236-47de-9498-bbe3bc1fe7f8',
                        id: '0234e090-89c0-425b-b234-5637178ff123',
                    },
                    {
                        competencyID: 'fd80e852-4dd4-41f3-8f8d-054d29e20163',
                        id: 'df2300e6-648b-4ea0-ac01-c237c6327ff2',
                    },
                    {
                        competencyID: '089e72c9-5651-4c50-a7f2-58d7eb87bbb0',
                        id: 'e0e94e80-eb5d-46a7-b397-ae1659b0b37c',
                    },
                    {
                        competencyID: 'ca60dd1a-f567-472e-9fd3-355530ab11d1',
                        id: '195bb243-709e-4e47-be13-711f1f857731',
                    },
                    {
                        competencyID: 'd3263097-a9af-4f4d-a595-60bb25b3d262',
                        id: 'f0f0e544-4c20-4944-98a1-9382e3ae7dca',
                    },
                    {
                        competencyID: 'e622940c-58fd-4628-9529-428cec9609ab',
                        id: '765507d8-4883-473b-83e9-6a02bb7ca3ed',
                    },
                    {
                        competencyID: '7f50356f-7c85-4eb4-a748-cb6038a2c969',
                        id: '96b5bd12-6380-4cc1-a109-49fbd1b66152',
                    },
                    {
                        competencyID: 'd25aea33-3cf7-4792-a484-ed2e9f7ec70e',
                        id: 'ed01a3f6-baaa-4a9e-a331-144672fc5331',
                    },
                    {
                        competencyID: 'f5aa848f-b39e-4b3a-8d3b-f6299cfd56e3',
                        id: 'fad64c37-1169-4167-966a-4f0f0e7fc096',
                    },
                    {
                        competencyID: '71514a4b-05b5-4f3a-81f4-75c4054eb6a6',
                        id: '7d415e0d-d3ad-404f-8995-59f88c78b5d3',
                    },
                    {
                        competencyID: 'd9ee4810-a18c-4878-8243-cdd76c5476e4',
                        id: '8e32910a-abba-45eb-8bfa-6329ed4e4dac',
                    },
                    {
                        competencyID: 'b212709c-a9ad-4c70-bfe1-caa2dd03028f',
                        id: 'a30abaec-8ac0-4cba-9485-fae282eda310',
                    },
                    {
                        competencyID: '6a0c3117-69c5-4e01-8b83-4774eb82aead',
                        id: 'a447d1cc-4890-4933-acd6-6af4859621f8',
                    },
                    {
                        competencyID: 'f5aa848f-b39e-4b3a-8d3b-f6299cfd56e3',
                        id: '9bdd850a-75fb-4e3e-b29b-9513303ab42a',
                    },
                    {
                        competencyID: '484333bc-a759-4f72-af03-702b31d40167',
                        id: '6f5b70a8-1f10-4ab0-ac1d-7fd8e2bdd884',
                    },
                    {
                        competencyID: '6a0c3117-69c5-4e01-8b83-4774eb82aead',
                        id: '3f4bfbd7-b61a-4305-8bc5-0086e2231f61',
                    },
                    {
                        competencyID: '3a4fd9c6-431e-4ed2-ab12-77ff704ac7a9',
                        id: '47271ce3-26f1-426b-8f3f-d6604eee5731',
                    },
                    {
                        competencyID: '35dcfa6c-f655-442b-9b5b-7ba0bfaada75',
                        id: '64ba218d-1ad5-473c-bbe4-6f7ca84094e1',
                    },
                    {
                        competencyID: '089e72c9-5651-4c50-a7f2-58d7eb87bbb0',
                        id: '4d851271-f747-4429-8d61-6f2e294cf13f',
                    },
                    {
                        competencyID: '71514a4b-05b5-4f3a-81f4-75c4054eb6a6',
                        id: '8f8cc6d9-e6de-41b2-8baf-f0b6b5dd9f86',
                    },
                    {
                        competencyID: '71514a4b-05b5-4f3a-81f4-75c4054eb6a6',
                        id: '23fd12c1-ab40-4f01-b206-bab75cd40ea2',
                    },
                    {
                        competencyID: 'fd31b63f-ca4b-4d86-91dc-2dc50c33a895',
                        id: '2fc827da-b7bd-4cca-a218-d9d81f3b30ce',
                    },
                    {
                        competencyID: 'e3cde0ee-1cbc-4e9b-9b2a-1e8838d8426a',
                        id: '5db5f99d-fdee-40f5-b910-7a7cf1d5e78c',
                    },
                    {
                        competencyID: '509a212b-0715-4ff3-b438-c378c9237798',
                        id: '44abe2e7-0931-42cd-a31e-48d97345dded',
                    },
                    {
                        competencyID: 'a6a1d2a8-b528-4491-bdf0-52518d277fa9',
                        id: '0248c042-ea1f-47b1-bee6-d774a478f400',
                    },
                    {
                        competencyID: '8293c212-2873-4d95-9a21-e52ae6b7d58d',
                        id: '3b3453de-6dfc-451c-9dc1-e3802a78aa6e',
                    },
                    {
                        competencyID: 'd49d83d4-c382-4adc-8aff-4669fde28bf4',
                        id: '5160888b-2b16-41a3-8973-061c43d1a783',
                    },
                    {
                        competencyID: 'f5aa848f-b39e-4b3a-8d3b-f6299cfd56e3',
                        id: '77232c87-cdd2-421e-9fa2-e79b8c54a677',
                    },
                    {
                        competencyID: '9d695700-af56-4d74-8c61-30f11e356e24',
                        id: '4290d0fa-74d3-4391-bb3b-1fb85da2c4a7',
                    },
                ],
            },
        ],
    };

The actual graphql response

{
  "data": {
    "getRoleCompetencyQuestions": {
      "items": [
        {
          "competency": {
            "id": "20d22800-cd64-4684-8f76-63c64c271ef8",
            "name": "Confidencess",
            "questions": {
              "items": [
                {
                  "id": "10aa4f2e-d246-4ed1-884f-ab763d455151",
                  "competency": {
                    "id": "20d22800-cd64-4684-8f76-63c64c271ef8"
                  }
                },
                {
                  "id": "3af449cd-8b3f-4343-9ba3-e83b594f866e",
                  "competency": {
                    "id": "20d22800-cd64-4684-8f76-63c64c271ef8"
                  }
                },
                {
                  "id": "92e2886f-78fd-4f64-9c98-29377b915f7d",
                  "competency": {
                    "id": "20d22800-cd64-4684-8f76-63c64c271ef8"
                  }
                },
                {
                  "id": "b3f1e1b7-6bf2-4fbd-a9b1-ed8b0627d953",
                  "competency": {
                    "id": "20d22800-cd64-4684-8f76-63c64c271ef8"
                  }
                },
                {
                  "id": "dec81359-bb05-4868-852e-95c307e1eb4b",
                  "competency": {
                    "id": "20d22800-cd64-4684-8f76-63c64c271ef8"
                  }
                }
              ]
            }
          },
          "questions": [
            {
              "id": "90ac4c43-6801-4fce-b8d3-cc5bac6d4fa1",
              "competencyID": "22ed3a6b-5d76-490e-b24d-af9ded54b5d0",
              "competency": {
                "id": "22ed3a6b-5d76-490e-b24d-af9ded54b5d0",
                "name": "Resilience"
              }
            },
            {
              "id": "7dd4a3d2-e667-4518-8fc7-5e441d846fe1",
              "competencyID": "1086ea11-d5dd-4c94-ba51-4105a142f6cc",
              "competency": {
                "id": "1086ea11-d5dd-4c94-ba51-4105a142f6cc",
                "name": "Achievement"
              }
            },
            {
              "id": "9b058ebb-2000-40f8-8656-bb73cdaa3c46",
              "competencyID": "22ed3a6b-5d76-490e-b24d-af9ded54b5d0",
              "competency": {
                "id": "22ed3a6b-5d76-490e-b24d-af9ded54b5d0",
                "name": "Resilience"
              }
            },
            {
              "id": "5eaa6e6e-d2c6-4777-94a7-0df34a873826",
              "competencyID": "ed6f3256-a348-4101-8be1-0c89ea0bda28",
              "competency": {
                "id": "ed6f3256-a348-4101-8be1-0c89ea0bda28",
                "name": "Desire to Learn"
              }
            },
            {
              "id": "83ff3516-e17e-4ad7-bec0-bcf80021f914",
              "competencyID": "11e6540c-3b9b-4289-97c1-628499dc229e",
              "competency": {
                "id": "11e6540c-3b9b-4289-97c1-628499dc229e",
                "name": "Authenticity"
              }
            },
            {
              "id": "64c09011-1c29-454e-bbd4-d3db07c24180",
              "competencyID": "27dfa2cd-2492-444f-9627-9c138f2662a5",
              "competency": {
                "id": "27dfa2cd-2492-444f-9627-9c138f2662a5",
                "name": "Self-Improvement"
              }
            },
            {
              "id": "ebb0a526-8ecb-4427-b317-0171198c0002",
              "competencyID": "97e39aa2-6259-44c0-817f-3b3dc2ea2d6a",
              "competency": {
                "id": "97e39aa2-6259-44c0-817f-3b3dc2ea2d6a",
                "name": "Initiative"
              }
            },
            {
              "id": "202fa284-d525-4add-858f-126ddd31290c",
              "competencyID": "633ac88c-d94f-495c-bf5f-fecd747a9fe4",
              "competency": {
                "id": "633ac88c-d94f-495c-bf5f-fecd747a9fe4",
                "name": "Strategic Thinking"
              }
            },
            {
              "id": "61078261-c1b4-4d87-8f24-15758cdb6570",
              "competencyID": "c8c9b97b-2214-4a7b-a79d-b18a633183f7",
              "competency": {
                "id": "c8c9b97b-2214-4a7b-a79d-b18a633183f7",
                "name": "High Productivity"
              }
            },
            {
              "id": "d176fd28-4cb3-4030-b59f-44bbb65c522d",
              "competencyID": "8293c212-2873-4d95-9a21-e52ae6b7d58d",
              "competency": {
                "id": "8293c212-2873-4d95-9a21-e52ae6b7d58d",
                "name": "Accountability for Others"
              }
            },
            {
              "id": "d8976e2d-adf1-4363-a41a-ebc89e699a5a",
              "competencyID": "64c0ddc6-4711-45fb-8ecd-04fd09c83cbc",
              "competency": {
                "id": "64c0ddc6-4711-45fb-8ecd-04fd09c83cbc",
                "name": "Courage"
              }
            },
            {
              "id": "9f2ed76b-e92c-4f09-b460-fb59876a73fc",
              "competencyID": "7f50356f-7c85-4eb4-a748-cb6038a2c969",
              "competency": {
                "id": "7f50356f-7c85-4eb4-a748-cb6038a2c969",
                "name": "Team Building"
              }
            },
            {
              "id": "0df7ee2d-9434-4827-9bd2-98b1c1d7313c",
              "competencyID": "43e1df00-564a-47fb-bfb9-14f63c667fb9",
              "competency": {
                "id": "43e1df00-564a-47fb-bfb9-14f63c667fb9",
                "name": "Work Ethic"
              }
            },
            {
              "id": "0b69e9f1-bd7f-488b-ac89-61fd7eb75410",
              "competencyID": "795d3d0e-259c-45fc-8cea-4e8c2150f8dc",
              "competency": {
                "id": "795d3d0e-259c-45fc-8cea-4e8c2150f8dc",
                "name": "Humility"
              }
            },
            {
              "id": "fe65d898-f07d-4005-9b5b-69e0a51bf309",
              "competencyID": "72434ec4-76dd-4046-8ebf-667f2b67317a",
              "competency": {
                "id": "72434ec4-76dd-4046-8ebf-667f2b67317a",
                "name": "Future Mindset"
              }
            },
            {
              "id": "edd226de-25e9-438a-aabe-3ef350087b1a",
              "competencyID": "d29c1f01-bcb4-4a74-a3de-1ee6e4ef7a11",
              "competency": {
                "id": "d29c1f01-bcb4-4a74-a3de-1ee6e4ef7a11",
                "name": "Developing Others"
              }
            },
            {
              "id": "b91e93bc-7685-4b3e-af59-e523b1fa81cc",
              "competencyID": "fd80e852-4dd4-41f3-8f8d-054d29e20163",
              "competency": {
                "id": "fd80e852-4dd4-41f3-8f8d-054d29e20163",
                "name": "Reliability"
              }
            },
            {
              "id": "8603366a-ed41-4e69-a8c1-b46f26305109",
              "competencyID": "27dfa2cd-2492-444f-9627-9c138f2662a5",
              "competency": {
                "id": "27dfa2cd-2492-444f-9627-9c138f2662a5",
                "name": "Self-Improvement"
              }
            },
            {
              "id": "033ccb3b-3133-4919-bc19-c6abeb4d60f4",
              "competencyID": "abcae556-3ae1-4235-a4b5-d6c9fe8879ab",
              "competency": {
                "id": "abcae556-3ae1-4235-a4b5-d6c9fe8879ab",
                "name": "Conscientious"
              }
            },
            {
              "id": "9485234f-cdd7-47a0-b8bf-ffeb94c02ff4",
              "competencyID": "3a4fd9c6-431e-4ed2-ab12-77ff704ac7a9",
              "competency": {
                "id": "3a4fd9c6-431e-4ed2-ab12-77ff704ac7a9",
                "name": "Conflict Management"
              }
            },
            {
              "id": "7f916de4-60b6-483b-8431-24b469e62d4e",
              "competencyID": "d3263097-a9af-4f4d-a595-60bb25b3d262",
              "competency": {
                "id": "d3263097-a9af-4f4d-a595-60bb25b3d262",
                "name": "Growth Mindset"
              }
            },
            {
              "id": "dec81359-bb05-4868-852e-95c307e1eb4b",
              "competencyID": "20d22800-cd64-4684-8f76-63c64c271ef8",
              "competency": {
                "id": "20d22800-cd64-4684-8f76-63c64c271ef8",
                "name": "Confidence"
              }
            },
            {
              "id": "9d06651b-a5fd-42a7-933c-91cd3ff3617a",
              "competencyID": "e4a9a15e-4009-4f14-b5be-77bf6665afa4",
              "competency": {
                "id": "e4a9a15e-4009-4f14-b5be-77bf6665afa4",
                "name": "Performance Management"
              }
            },
            {
              "id": "6ac9fe92-a6ea-426a-ab1b-d8b870ddd983",
              "competencyID": "28e861d3-c123-4743-8d8b-a25241aec6a6",
              "competency": {
                "id": "28e861d3-c123-4743-8d8b-a25241aec6a6",
                "name": "Intuition"
              }
            },
            {
              "id": "f5530ba3-ce98-4ee3-8c3e-da7dea7e5553",
              "competencyID": "484333bc-a759-4f72-af03-702b31d40167",
              "competency": {
                "id": "484333bc-a759-4f72-af03-702b31d40167",
                "name": "Communication Skills"
              }
            },
            {
              "id": "e6656458-20e0-4b51-ace7-9e863195726b",
              "competencyID": "38e62faa-a49c-4898-8616-4d1f05f0c77e",
              "competency": {
                "id": "38e62faa-a49c-4898-8616-4d1f05f0c77e",
                "name": "Results Orientation"
              }
            },
            {
              "id": "9cae04a6-da78-4c89-a4f4-ff711e7661b3",
              "competencyID": "41cd19de-6030-4c0f-9ce5-a8693201f9fc",
              "competency": {
                "id": "41cd19de-6030-4c0f-9ce5-a8693201f9fc",
                "name": "Attitude"
              }
            },
            {
              "id": "55345bc8-6516-40f0-a180-1f3bbeeb17a1",
              "competencyID": "7f50356f-7c85-4eb4-a748-cb6038a2c969",
              "competency": {
                "id": "7f50356f-7c85-4eb4-a748-cb6038a2c969",
                "name": "Team Building"
              }
            },
            {
              "id": "44492b55-6c9a-4798-8c1d-14382bc868c0",
              "competencyID": "71514a4b-05b5-4f3a-81f4-75c4054eb6a6",
              "competency": {
                "id": "71514a4b-05b5-4f3a-81f4-75c4054eb6a6",
                "name": "Collaborative"
              }
            },
            {
              "id": "a556d0e4-a320-47a4-8eb6-15a056266ac1",
              "competencyID": "22ed3a6b-5d76-490e-b24d-af9ded54b5d0",
              "competency": {
                "id": "22ed3a6b-5d76-490e-b24d-af9ded54b5d0",
                "name": "Resilience"
              }
            },
            {
              "id": "18226653-fa98-4e28-a2dd-559c2da9ad0e",
              "competencyID": "23f0ee2c-7eac-4b0a-bfec-b904fe858de9",
              "competency": {
                "id": "23f0ee2c-7eac-4b0a-bfec-b904fe858de9",
                "name": "Self-Management"
              }
            },
            {
              "id": "d4de794d-e0a9-403e-98b5-be93332edb9d",
              "competencyID": "a24c4329-9051-4d60-bb3b-299ebd96e4bb",
              "competency": {
                "id": "a24c4329-9051-4d60-bb3b-299ebd96e4bb",
                "name": "Goal Setting"
              }
            },
            {
              "id": "98ebea08-d5d2-402b-af71-f00a61a1835d",
              "competencyID": "090bfbd0-f190-42b7-91da-691b8d6456d3",
              "competency": {
                "id": "090bfbd0-f190-42b7-91da-691b8d6456d3",
                "name": "Mission Orientation"
              }
            },
            {
              "id": "561f4d52-0157-4874-bbad-a381cfa73d56",
              "competencyID": "ed6f3256-a348-4101-8be1-0c89ea0bda28",
              "competency": {
                "id": "ed6f3256-a348-4101-8be1-0c89ea0bda28",
                "name": "Desire to Learn"
              }
            },
            {
              "id": "d0e91717-84b0-462c-a266-79edee68d56a",
              "competencyID": "484333bc-a759-4f72-af03-702b31d40167",
              "competency": {
                "id": "484333bc-a759-4f72-af03-702b31d40167",
                "name": "Communication Skills"
              }
            },
            {
              "id": "7d9e3041-bc2c-43f8-9524-8f16f5b05d95",
              "competencyID": "67a747be-c6f3-429c-8ce1-820f2dad24e4",
              "competency": {
                "id": "67a747be-c6f3-429c-8ce1-820f2dad24e4",
                "name": "Drive"
              }
            },
            {
              "id": "c37575c1-8251-4c4c-b5fd-6f21d5338366",
              "competencyID": "35dcfa6c-f655-442b-9b5b-7ba0bfaada75",
              "competency": {
                "id": "35dcfa6c-f655-442b-9b5b-7ba0bfaada75",
                "name": "Accountability"
              }
            },
            {
              "id": "7bce4192-3c11-45ca-a0ee-f67b44bbf133",
              "competencyID": "64c0ddc6-4711-45fb-8ecd-04fd09c83cbc",
              "competency": {
                "id": "64c0ddc6-4711-45fb-8ecd-04fd09c83cbc",
                "name": "Courage"
              }
            },
            {
              "id": "60ed06d3-3747-4faf-84c6-1fdad0835017",
              "competencyID": "795d3d0e-259c-45fc-8cea-4e8c2150f8dc",
              "competency": {
                "id": "795d3d0e-259c-45fc-8cea-4e8c2150f8dc",
                "name": "Humility"
              }
            },
            {
              "id": "3e5f0026-8ab8-4c6f-b957-c3bc8d379e3d",
              "competencyID": "795d3d0e-259c-45fc-8cea-4e8c2150f8dc",
              "competency": {
                "id": "795d3d0e-259c-45fc-8cea-4e8c2150f8dc",
                "name": "Humility"
              }
            },
            {
              "id": "08e82e04-c14b-499c-989c-59857db1693a",
              "competencyID": "41cd19de-6030-4c0f-9ce5-a8693201f9fc",
              "competency": {
                "id": "41cd19de-6030-4c0f-9ce5-a8693201f9fc",
                "name": "Attitude"
              }
            },
            {
              "id": "39dc36e2-60c4-4de5-92ab-1a4443da2919",
              "competencyID": "795d3d0e-259c-45fc-8cea-4e8c2150f8dc",
              "competency": {
                "id": "795d3d0e-259c-45fc-8cea-4e8c2150f8dc",
                "name": "Humility"
              }
            },
            {
              "id": "f1170c7a-8390-4f3d-86d6-6a6409ab191f",
              "competencyID": "8293c212-2873-4d95-9a21-e52ae6b7d58d",
              "competency": {
                "id": "8293c212-2873-4d95-9a21-e52ae6b7d58d",
                "name": "Accountability for Others"
              }
            },
            {
              "id": "10c43d3a-2dd9-428c-8603-286fd5f3a7b3",
              "competencyID": "23f0ee2c-7eac-4b0a-bfec-b904fe858de9",
              "competency": {
                "id": "23f0ee2c-7eac-4b0a-bfec-b904fe858de9",
                "name": "Self-Management"
              }
            },
            {
              "id": "2bad8be7-4883-4ad0-b82a-68f682b3fd62",
              "competencyID": "d25aea33-3cf7-4792-a484-ed2e9f7ec70e",
              "competency": {
                "id": "d25aea33-3cf7-4792-a484-ed2e9f7ec70e",
                "name": "Resourcefulness"
              }
            },
            {
              "id": "276f06d0-2d25-400e-8c44-4aa997f1c077",
              "competencyID": "633ac88c-d94f-495c-bf5f-fecd747a9fe4",
              "competency": {
                "id": "633ac88c-d94f-495c-bf5f-fecd747a9fe4",
                "name": "Strategic Thinking"
              }
            },
            {
              "id": "e5f8dda8-51ee-4889-8a51-b55d635a4d4d",
              "competencyID": "6a0c3117-69c5-4e01-8b83-4774eb82aead",
              "competency": {
                "id": "6a0c3117-69c5-4e01-8b83-4774eb82aead",
                "name": "Planning and Organization"
              }
            },
            {
              "id": "c17ea5ee-a765-454c-92b0-eb27f41b1e69",
              "competencyID": "64c0ddc6-4711-45fb-8ecd-04fd09c83cbc",
              "competency": {
                "id": "64c0ddc6-4711-45fb-8ecd-04fd09c83cbc",
                "name": "Courage"
              }
            },
            {
              "id": "fec537ec-efaf-4d70-92f7-441f5e981a5e",
              "competencyID": "4b53fc85-220a-41e5-b5aa-277de12f66e5",
              "competency": {
                "id": "4b53fc85-220a-41e5-b5aa-277de12f66e5",
                "name": "Empathy"
              }
            },
            {
              "id": "19080242-2bf2-4346-90c0-f4d765ec7dda",
              "competencyID": "35dcfa6c-f655-442b-9b5b-7ba0bfaada75",
              "competency": {
                "id": "35dcfa6c-f655-442b-9b5b-7ba0bfaada75",
                "name": "Accountability"
              }
            },
            {
              "id": "55377b83-5531-423e-9daa-1671baf49a17",
              "competencyID": "633ac88c-d94f-495c-bf5f-fecd747a9fe4",
              "competency": {
                "id": "633ac88c-d94f-495c-bf5f-fecd747a9fe4",
                "name": "Strategic Thinking"
              }
            },
            {
              "id": "1a4926ca-0608-4f5c-829a-f9ebe3fba2f2",
              "competencyID": "7c5f510d-acea-49d4-8d59-c0272c04b313",
              "competency": {
                "id": "7c5f510d-acea-49d4-8d59-c0272c04b313",
                "name": "Coachability"
              }
            },
            {
              "id": "22e4f96b-056e-4804-9d03-e7a23d0bb33f",
              "competencyID": "6a0c3117-69c5-4e01-8b83-4774eb82aead",
              "competency": {
                "id": "6a0c3117-69c5-4e01-8b83-4774eb82aead",
                "name": "Planning and Organization"
              }
            },
            {
              "id": "d9744f61-7a64-4208-a05a-a00187a0d33d",
              "competencyID": "41cd19de-6030-4c0f-9ce5-a8693201f9fc",
              "competency": {
                "id": "41cd19de-6030-4c0f-9ce5-a8693201f9fc",
                "name": "Attitude"
              }
            },
            {
              "id": "2514f858-d4d1-426d-9020-b52e35abf7d3",
              "competencyID": "e8427961-e6a1-4e3c-b947-18aa82430945",
              "competency": {
                "id": "e8427961-e6a1-4e3c-b947-18aa82430945",
                "name": "Diplomacy"
              }
            },
            {
              "id": "aedf81ee-4a49-4736-8e11-5c0581f9b1b3",
              "competencyID": "e4a9a15e-4009-4f14-b5be-77bf6665afa4",
              "competency": {
                "id": "e4a9a15e-4009-4f14-b5be-77bf6665afa4",
                "name": "Performance Management"
              }
            },
            {
              "id": "539f4a8b-51ad-40ca-b056-4492998736eb",
              "competencyID": "d9c9bea8-d214-4c44-ac06-ee9a8a70d271",
              "competency": {
                "id": "d9c9bea8-d214-4c44-ac06-ee9a8a70d271",
                "name": "Self-Awareness"
              }
            },
            {
              "id": "ae84fd23-6edc-4eb7-b452-0adf752defe8",
              "competencyID": "23f0ee2c-7eac-4b0a-bfec-b904fe858de9",
              "competency": {
                "id": "23f0ee2c-7eac-4b0a-bfec-b904fe858de9",
                "name": "Self-Management"
              }
            },
            {
              "id": "6c705680-0718-4b93-9383-3b8efec2d2e4",
              "competencyID": "f564884f-37c4-470d-8e2c-2e8b33697b53",
              "competency": {
                "id": "f564884f-37c4-470d-8e2c-2e8b33697b53",
                "name": "Commitment to Excellence"
              }
            },
            {
              "id": "a95fd451-fd85-4bef-9701-3558f1aa272e",
              "competencyID": "b212709c-a9ad-4c70-bfe1-caa2dd03028f",
              "competency": {
                "id": "b212709c-a9ad-4c70-bfe1-caa2dd03028f",
                "name": "Thrift"
              }
            },
            {
              "id": "38e65c51-6d0e-48c8-9130-af5fc46fdc9d",
              "competencyID": "25b2b280-6f6e-4496-8b42-838d8de7819c",
              "competency": {
                "id": "25b2b280-6f6e-4496-8b42-838d8de7819c",
                "name": "Grit"
              }
            },
            {
              "id": "42c99aae-d03b-4042-9223-4381734f7b8d",
              "competencyID": "97e39aa2-6259-44c0-817f-3b3dc2ea2d6a",
              "competency": {
                "id": "97e39aa2-6259-44c0-817f-3b3dc2ea2d6a",
                "name": "Initiative"
              }
            },
            {
              "id": "4bf198d3-931b-4c55-9261-73cb127286b3",
              "competencyID": "484333bc-a759-4f72-af03-702b31d40167",
              "competency": {
                "id": "484333bc-a759-4f72-af03-702b31d40167",
                "name": "Communication Skills"
              }
            },
            {
              "id": "c8fac84d-22b2-4a22-b674-b0eb46909782",
              "competencyID": "97e39aa2-6259-44c0-817f-3b3dc2ea2d6a",
              "competency": {
                "id": "97e39aa2-6259-44c0-817f-3b3dc2ea2d6a",
                "name": "Initiative"
              }
            },
            {
              "id": "17530c0b-a621-408a-95e8-948b1c7a8a79",
              "competencyID": "d3263097-a9af-4f4d-a595-60bb25b3d262",
              "competency": {
                "id": "d3263097-a9af-4f4d-a595-60bb25b3d262",
                "name": "Growth Mindset"
              }
            },
            {
              "id": "830596af-98a1-4f63-8740-4dcbe3f1b47f",
              "competencyID": "509a212b-0715-4ff3-b438-c378c9237798",
              "competency": {
                "id": "509a212b-0715-4ff3-b438-c378c9237798",
                "name": "Emotional Control"
              }
            },
            {
              "id": "3b79acbb-a263-4d08-b02a-a66d5bf4e606",
              "competencyID": "71514a4b-05b5-4f3a-81f4-75c4054eb6a6",
              "competency": {
                "id": "71514a4b-05b5-4f3a-81f4-75c4054eb6a6",
                "name": "Collaborative"
              }
            },
            {
              "id": "8daf5265-a57f-41b8-9f90-cb5135508b01",
              "competencyID": "22ed3a6b-5d76-490e-b24d-af9ded54b5d0",
              "competency": {
                "id": "22ed3a6b-5d76-490e-b24d-af9ded54b5d0",
                "name": "Resilience"
              }
            },
            {
              "id": "79dfde7d-451b-4947-9d63-db20f2cbb89a",
              "competencyID": "9d695700-af56-4d74-8c61-30f11e356e24",
              "competency": {
                "id": "9d695700-af56-4d74-8c61-30f11e356e24",
                "name": "Understanding Motivation"
              }
            },
            {
              "id": "cde2d414-4354-4eda-b035-696b00e58419",
              "competencyID": "509a212b-0715-4ff3-b438-c378c9237798",
              "competency": {
                "id": "509a212b-0715-4ff3-b438-c378c9237798",
                "name": "Emotional Control"
              }
            },
            {
              "id": "dc6d7e70-e9dd-4df7-8d8e-587467c0dae7",
              "competencyID": "ca60dd1a-f567-472e-9fd3-355530ab11d1",
              "competency": {
                "id": "ca60dd1a-f567-472e-9fd3-355530ab11d1",
                "name": "Critical Thinking"
              }
            },
            {
              "id": "0234e090-89c0-425b-b234-5637178ff123",
              "competencyID": "624810ae-0236-47de-9498-bbe3bc1fe7f8",
              "competency": {
                "id": "624810ae-0236-47de-9498-bbe3bc1fe7f8",
                "name": "Adaptability"
              }
            },
            {
              "id": "df2300e6-648b-4ea0-ac01-c237c6327ff2",
              "competencyID": "fd80e852-4dd4-41f3-8f8d-054d29e20163",
              "competency": {
                "id": "fd80e852-4dd4-41f3-8f8d-054d29e20163",
                "name": "Reliability"
              }
            },
            {
              "id": "e0e94e80-eb5d-46a7-b397-ae1659b0b37c",
              "competencyID": "089e72c9-5651-4c50-a7f2-58d7eb87bbb0",
              "competency": {
                "id": "089e72c9-5651-4c50-a7f2-58d7eb87bbb0",
                "name": "Evaluating Others"
              }
            },
            {
              "id": "195bb243-709e-4e47-be13-711f1f857731",
              "competencyID": "ca60dd1a-f567-472e-9fd3-355530ab11d1",
              "competency": {
                "id": "ca60dd1a-f567-472e-9fd3-355530ab11d1",
                "name": "Critical Thinking"
              }
            },
            {
              "id": "f0f0e544-4c20-4944-98a1-9382e3ae7dca",
              "competencyID": "d3263097-a9af-4f4d-a595-60bb25b3d262",
              "competency": {
                "id": "d3263097-a9af-4f4d-a595-60bb25b3d262",
                "name": "Growth Mindset"
              }
            },
            {
              "id": "765507d8-4883-473b-83e9-6a02bb7ca3ed",
              "competencyID": "e622940c-58fd-4628-9529-428cec9609ab",
              "competency": {
                "id": "e622940c-58fd-4628-9529-428cec9609ab",
                "name": "Integrity"
              }
            },
            {
              "id": "96b5bd12-6380-4cc1-a109-49fbd1b66152",
              "competencyID": "7f50356f-7c85-4eb4-a748-cb6038a2c969",
              "competency": {
                "id": "7f50356f-7c85-4eb4-a748-cb6038a2c969",
                "name": "Team Building"
              }
            },
            {
              "id": "ed01a3f6-baaa-4a9e-a331-144672fc5331",
              "competencyID": "d25aea33-3cf7-4792-a484-ed2e9f7ec70e",
              "competency": {
                "id": "d25aea33-3cf7-4792-a484-ed2e9f7ec70e",
                "name": "Resourcefulness"
              }
            },
            {
              "id": "fad64c37-1169-4167-966a-4f0f0e7fc096",
              "competencyID": "f5aa848f-b39e-4b3a-8d3b-f6299cfd56e3",
              "competency": {
                "id": "f5aa848f-b39e-4b3a-8d3b-f6299cfd56e3",
                "name": "Leadership"
              }
            },
            {
              "id": "7d415e0d-d3ad-404f-8995-59f88c78b5d3",
              "competencyID": "71514a4b-05b5-4f3a-81f4-75c4054eb6a6",
              "competency": {
                "id": "71514a4b-05b5-4f3a-81f4-75c4054eb6a6",
                "name": "Collaborative"
              }
            },
            {
              "id": "8e32910a-abba-45eb-8bfa-6329ed4e4dac",
              "competencyID": "d9ee4810-a18c-4878-8243-cdd76c5476e4",
              "competency": {
                "id": "d9ee4810-a18c-4878-8243-cdd76c5476e4",
                "name": "Coaching"
              }
            },
            {
              "id": "a30abaec-8ac0-4cba-9485-fae282eda310",
              "competencyID": "b212709c-a9ad-4c70-bfe1-caa2dd03028f",
              "competency": {
                "id": "b212709c-a9ad-4c70-bfe1-caa2dd03028f",
                "name": "Thrift"
              }
            },
            {
              "id": "a447d1cc-4890-4933-acd6-6af4859621f8",
              "competencyID": "6a0c3117-69c5-4e01-8b83-4774eb82aead",
              "competency": {
                "id": "6a0c3117-69c5-4e01-8b83-4774eb82aead",
                "name": "Planning and Organization"
              }
            },
            {
              "id": "9bdd850a-75fb-4e3e-b29b-9513303ab42a",
              "competencyID": "f5aa848f-b39e-4b3a-8d3b-f6299cfd56e3",
              "competency": {
                "id": "f5aa848f-b39e-4b3a-8d3b-f6299cfd56e3",
                "name": "Leadership"
              }
            },
            {
              "id": "6f5b70a8-1f10-4ab0-ac1d-7fd8e2bdd884",
              "competencyID": "484333bc-a759-4f72-af03-702b31d40167",
              "competency": {
                "id": "484333bc-a759-4f72-af03-702b31d40167",
                "name": "Communication Skills"
              }
            },
            {
              "id": "3f4bfbd7-b61a-4305-8bc5-0086e2231f61",
              "competencyID": "6a0c3117-69c5-4e01-8b83-4774eb82aead",
              "competency": {
                "id": "6a0c3117-69c5-4e01-8b83-4774eb82aead",
                "name": "Planning and Organization"
              }
            },
            {
              "id": "47271ce3-26f1-426b-8f3f-d6604eee5731",
              "competencyID": "3a4fd9c6-431e-4ed2-ab12-77ff704ac7a9",
              "competency": {
                "id": "3a4fd9c6-431e-4ed2-ab12-77ff704ac7a9",
                "name": "Conflict Management"
              }
            },
            {
              "id": "64ba218d-1ad5-473c-bbe4-6f7ca84094e1",
              "competencyID": "35dcfa6c-f655-442b-9b5b-7ba0bfaada75",
              "competency": {
                "id": "35dcfa6c-f655-442b-9b5b-7ba0bfaada75",
                "name": "Accountability"
              }
            },
            {
              "id": "4d851271-f747-4429-8d61-6f2e294cf13f",
              "competencyID": "089e72c9-5651-4c50-a7f2-58d7eb87bbb0",
              "competency": {
                "id": "089e72c9-5651-4c50-a7f2-58d7eb87bbb0",
                "name": "Evaluating Others"
              }
            },
            {
              "id": "8f8cc6d9-e6de-41b2-8baf-f0b6b5dd9f86",
              "competencyID": "71514a4b-05b5-4f3a-81f4-75c4054eb6a6",
              "competency": {
                "id": "71514a4b-05b5-4f3a-81f4-75c4054eb6a6",
                "name": "Collaborative"
              }
            },
            {
              "id": "23fd12c1-ab40-4f01-b206-bab75cd40ea2",
              "competencyID": "71514a4b-05b5-4f3a-81f4-75c4054eb6a6",
              "competency": {
                "id": "71514a4b-05b5-4f3a-81f4-75c4054eb6a6",
                "name": "Collaborative"
              }
            },
            {
              "id": "2fc827da-b7bd-4cca-a218-d9d81f3b30ce",
              "competencyID": "fd31b63f-ca4b-4d86-91dc-2dc50c33a895",
              "competency": {
                "id": "fd31b63f-ca4b-4d86-91dc-2dc50c33a895",
                "name": "Change Management"
              }
            },
            {
              "id": "5db5f99d-fdee-40f5-b910-7a7cf1d5e78c",
              "competencyID": "e3cde0ee-1cbc-4e9b-9b2a-1e8838d8426a",
              "competency": {
                "id": "e3cde0ee-1cbc-4e9b-9b2a-1e8838d8426a",
                "name": "Poise"
              }
            },
            {
              "id": "44abe2e7-0931-42cd-a31e-48d97345dded",
              "competencyID": "509a212b-0715-4ff3-b438-c378c9237798",
              "competency": {
                "id": "509a212b-0715-4ff3-b438-c378c9237798",
                "name": "Emotional Control"
              }
            },
            {
              "id": "0248c042-ea1f-47b1-bee6-d774a478f400",
              "competencyID": "a6a1d2a8-b528-4491-bdf0-52518d277fa9",
              "competency": {
                "id": "a6a1d2a8-b528-4491-bdf0-52518d277fa9",
                "name": "Managing Others"
              }
            },
            {
              "id": "3b3453de-6dfc-451c-9dc1-e3802a78aa6e",
              "competencyID": "8293c212-2873-4d95-9a21-e52ae6b7d58d",
              "competency": {
                "id": "8293c212-2873-4d95-9a21-e52ae6b7d58d",
                "name": "Accountability for Others"
              }
            },
            {
              "id": "5160888b-2b16-41a3-8973-061c43d1a783",
              "competencyID": "d49d83d4-c382-4adc-8aff-4669fde28bf4",
              "competency": {
                "id": "d49d83d4-c382-4adc-8aff-4669fde28bf4",
                "name": "Optimism"
              }
            },
            {
              "id": "77232c87-cdd2-421e-9fa2-e79b8c54a677",
              "competencyID": "f5aa848f-b39e-4b3a-8d3b-f6299cfd56e3",
              "competency": {
                "id": "f5aa848f-b39e-4b3a-8d3b-f6299cfd56e3",
                "name": "Leadership"
              }
            },
            {
              "id": "4290d0fa-74d3-4391-bb3b-1fb85da2c4a7",
              "competencyID": "9d695700-af56-4d74-8c61-30f11e356e24",
              "competency": {
                "id": "9d695700-af56-4d74-8c61-30f11e356e24",
                "name": "Understanding Motivation"
              }
            }
          ]
        }
      ]
    }
  }
}

It would seem the first layer of scalars need to be fully fulfilled by the lambda and the rest can be handled by Dynamodb.

I am using v1 of the functions not sure if its pipeline or not both lambdas have similar mechanism can validate as well with the recommendations lambda.

josefaidt commented 1 year ago

Hey @austinamorusoyardstick :wave: apologies for the delay here!! Are you still experiencing this or were you able to find a suitable solution?

austinamorusoyardstick commented 1 year ago

You can close this we understand now when the lambda handles the response and when the other resolvers kick in

Note this comment https://github.com/aws-amplify/amplify-category-api/issues/1075#issuecomment-1344831997