Search code examples
javascripthtmlcssreactjsredux

axios call getting response from first api and passing into second api


  • I have two different api.
  • from the first api response I need to pass the lowId to the second api request to get the sportSpecialty.
  • I have two different actions call for the different apis.
  • but the problem is I am not sure how to pass value from first api to second api.
  • debugged the code this is where I am getting the id

    .then(response => { response.data.helpFar.map(entity => { console.log( 'fetchhighRelationshipByBalanceId response--->', entity ); });

  • researched and found this links but still not helping me.

axios get - multiple api calls with response from first api to subsequent calls

Axios: chaining multiple API requests

  • providing my code snippet and json response below.

first api calll

export function fetchhighRelationshipByBalanceId(
    lowId,
    isHistory,
    callBack
) {
    console.log('fetchhighRelationshipByBalanceId--->');
    return dispatch => {
        this._source = axios.CancelToken.source();
        return axios
            .get(
                `http://localhost:1000/star/dull/?lowId=${lowId}&isHistory=${isHistory}`,
                {
                    cancelToken: this._source.token,
                }
            )
            .then(response => {
                response.data.helpFar.map(entity => {
                    console.log(
                        'fetchhighRelationshipByBalanceId response--->',
                        entity
                    );
                });

                callBack(response);
            })
            .catch(error => {
                if (axios.isCancel(error)) {
                    console.log('-- Request canceled', error.message);
                } else {
                    console.log('-- Error', error.message);
                }
            });
    };
}

second api call

export function fetchlowRelationshipByBalanceId(
    lowId,
    isHistory,
    callBack
) {
    console.log('fetchlowRelationshipByBalanceId--->');
    return dispatch => {
        this._source = axios.CancelToken.source();
        return axios
            .get(
                `http://localhost:1000/star/bright/?lowId=${lowId}&isHistory=${isHistory}`,
                {
                    cancelToken: this._source.token,
                }
            )
            .then(response => {
                callBack(response);
            })
            .catch(error => {
                if (axios.isCancel(error)) {
                    console.log('-- Request canceled', error.message);
                } else {
                    console.log('-- Error', error.message);
                }
            });
    };
}

first api response

http://talk.com/jujuj/766723237623/dulls

{
  "helpFar" : [ {
    "lowId" : 78787878,
    "lowName" : "fdjdfndfdfknkdfs",
    "lowStartDate" : "2015-12-10",
    "lowEndDate" : "2016-01-07",
    "finger" : [ {
      "sport2" : 5656565656232323323232332233775,
      "sport3" : "fdjdfndfdfknkdfs",
      "sport4" : "sdfsddddddddddd",
      "sport5" : "898989898989123123123123123123123123123123123123123123123",
      "sport1" : "reererer",
      "fdkdlmkdflkdf211212" : "2010-07-01"
    } ]
  }, {
    "lowId" : 7878787878787878787877252,
    "lowName" : " =er8989erer8eru8989uer89er89gu89",
    "lowStartDate" : "2015-12-10",
    "lowEndDate" : "2016-01-07",
    "finger" : [ {
      "sport2" : 2378782356237823787878127884818,
      "sport3" : "jkjkjksdjkdsjksdjk MEDICAL sdfsddddddddddd OF ",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "90er90er9090re90er90",
      "sport1" : "reerer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812787-10-30"
    }, {
      "sport2" : 5656565656232323323232332233294,
      "sport3" : "jkjkjksdjkdsjksdjk fdfd",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "90er90er9090re90er90",
      "sport1" : "reerer",
      "fdkdlmkdflkdf211212" : "2010-06-30"
    }, {
      "sport2" : 5656565656232323323232332233779,
      "sport3" : " =er8989erer8eru8989uer89er89gu89",
      "sport4" : "sdfsddddddddddd",
      "sport5" : "90er90er9090re90er90",
      "sport1" : "ererer",
      "fdkdlmkdflkdf211212" : "2010-07-01"
    }, {
      "sport2" : 20139872,
      "sport3" : "sdsdsdsd",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "90er90er9090re90er90",
      "sport1" : "erererer",
      "fdkdlmkdflkdf211212" : "2018-10-27"
    } ]
  }, {
    "lowId" : 7878787878787878787885126,
    "lowName" : "erauioioioioioioio =er8989erer8eru8989uer89er89gu89",
    "lowStartDate" : "2010-07-01",
    "lowEndDate" : "9999-12-31",
    "finger" : [ {
      "sport2" : 5656565656232323323232332233290,
      "sport3" : "jkjkjksdjkdsjksdjk erauioioioioioioiofdfd",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "898989898989",
      "sport1" : "erererer",
      "fdkdlmkdflkdf211212" : "2010-06-30"
    }, {
      "sport2" : 5656565656232323323232332233778,
      "sport3" : "erauioioioioioioio =er8989erer8eru8989uer89er89gu89",
      "sport4" : "sdfsddddddddddd",
      "sport5" : "898989898989",
      "sport1" : "rereer",
      "fdkdlmkdflkdf211212" : "2010-07-01"
    } ]
  }, {
    "lowId" : 7878787878787878787885115,
    "lowName" : "eruiaeruiruieeruiuier",
    "lowStartDate" : "2010-06-30",
    "lowEndDate" : "9999-12-31",
    "finger" : [ {
      "sport2" : 5656565656232323323232332233279,
      "sport3" : "jkjkjksdjkdsjksdjk LAKE SHOREfdfd",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "oiioioioio",
      "sport1" : "erererer",
      "fdkdlmkdflkdf211212" : "2010-06-30"
    } ]
  }, {
    "lowId" : 7878787878787878787800157,
    "lowName" : "jkjkjksdjkdsjksdjk df dfdfsvvf",
    "lowStartDate" : "2017-12-04",
    "lowEndDate" : "9999-12-31",
    "finger" : [ {
      "sport2" : 2378782356237823787878127800170,
      "sport3" : "jkjkjksdjkdsjksdjk df dfdfsvvf",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "7676767676",
      "sport1" : "erererer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127800791,
      "sport3" : "jkjkjksdjkdsjksdjk vccvxcx",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "7676767676",
      "sport1" : "errerereer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127801096,
      "sport3" : "jkjkjksdjkdsjksdjk dfadfadfdffdd",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "7676767676",
      "sport1" : "errereer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 20128386,
      "sport3" : "erreerre",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "7676767676",
      "sport1" : "erreerer",
      "fdkdlmkdflkdf211212" : "1947-12-01"
    }, {
      "sport2" : 2013787878787878787878784,
      "sport3" : "jkjkjksdjkdsjksdjk df dfdfsvvf",
      "sport4" : "sdfsddddddddddd",
      "sport5" : "7676767676",
      "sport1" : "ererererer",
      "fdkdlmkdflkdf211212" : "2017-12-04"
    } ]
  }, {
    "lowId" : 7878787878787878787800159,
    "lowName" : "jkjkjksdjkdsjksdjk dfdffffffffffffffff",
    "lowStartDate" : "237878235623782378787812786-07-27",
    "lowEndDate" : "9999-12-31",
    "finger" : [ {
      "sport2" : 2378782356237823787878127800172,
      "sport3" : "jkjkjksdjkdsjksdjk AND UNIVERSITY OF FLORIDA HEALTH CARE NTWK",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "reererer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127800477,
      "sport3" : "GENERAL SURGERY AT AYERS",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "erererer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127800558,
      "sport3" : "jkjkjksdjkdsjksdjk HOMECARE",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "ererererer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127801313,
      "sport3" : "ALACHUA GEN HOSPTIAL SKILLED NURSING UNIT",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "erreerer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127801746,
      "sport3" : "jkjkjksdjkdsjksdjk REHAB HOSPITAL",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "ererererer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127802174,
      "sport3" : "jkjkjksdjkdsjksdjk MEDICAL sdfsddddddddddd MAGNOLIA PARKE",
      "sport4" : "sdfsddddddddddd",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "ererreerer",
      "fdkdlmkdflkdf211212" : "1999-01-01"
    }, {
      "sport2" : 2378782356237823787878127802227,
      "sport3" : "jkjkjksdjkdsjksdjk dfdffffffffffffffff",
      "sport4" : "sdfsddddddddddd",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "rerereerererre",
      "fdkdlmkdflkdf211212" : "1999-01-01"
    }, {
      "sport2" : 2378782356237823787878127807706,
      "sport3" : "jkjkjksdjkdsjksdjk HOSPITAL",
      "sport4" : "idfosaooooooooooooooo",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "ererererer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127807707,
      "sport3" : "ererererer INC",
      "sport4" : "idfosaooooooooooooooo",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "erererer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127807708,
      "sport3" : "jkjkjksdjkdsjksdjkfdfdf dfffffffffff",
      "sport4" : "idfosaooooooooooooooo",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "ererreer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127807709,
      "sport3" : "jkjkjksdjkdsjksdjk HOME CARE",
      "sport4" : "idfosaooooooooooooooo",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "erreerer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127807710,
      "sport3" : "jkjkjksdjkdsjksdjk dfdfdfdffd",
      "sport4" : "idfosaooooooooooooooo",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "erreerre",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127807711,
      "sport3" : "jkjkjksdjkdsjksdjk HOSPITAL (DME)",
      "sport4" : "idfosaooooooooooooooo",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "R6093",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127807712,
      "sport3" : "jkjkjksdjkdsjksdjk dsdsdsdsd",
      "sport4" : "idfosaooooooooooooooo",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "erererer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812784-01-01"
    }, {
      "sport2" : 2378782356237823787878127877859,
      "sport3" : "FCPA/jkjkjksdjkdsjksdjk dfsdfdfdfdfdf",
      "sport4" : "idfosaooooooooooooooo",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "reerreer",
      "fdkdlmkdflkdf211212" : "237878235623782378787812786-07-27"
    }, {
      "sport2" : 5656565656232323323232332238954,
      "sport3" : "jkjkjksdjkdsjksdjk VISTA , jkjkjksdjkdsjksdjk AT VISTA",
      "sport4" : "sdsdsdsdsdsdsdsdsdsdsdsda",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "erreerer",
      "fdkdlmkdflkdf211212" : "2011-10-21"
    }, {
      "sport2" : 20116360,
      "sport3" : "jkjkjksdjkdsjksdjk dfdffffffffffffffff",
      "sport4" : "sdfsddddddddddd",
      "sport5" : "r9we9rew9090q90",
      "sport1" : "erererer",
      "fdkdlmkdflkdf211212" : "2014-11-19"
    } ]
  } ],
  "highId" : "766723237623",
  "highName" : "jkjkjksdjkdsjksdjk"
}

second api response

http://talk.com/jujuj/78787878/brights

{
  "lowdfdfdfdfs" : [ {
    "sport2" : 5656565656232323323232332233775,
    "sport3" : "fdjdfndfdfknkdfs",
    "sport4" : "sdfsddddddddddd",
    "sport5" : "898989898989123123123123123123123123123123123123123123123",
    "sport1" : "000WD",
    "sportRole" : "Specialist",
    "sportSpecialty" : "Multi-Specialty Physician sdfsddddddddddd-19323787823562378237878781278000X",
    "fdkdlmkdflkdf211212" : "2010-07-01",
    "paymentPreference" : {
      "dfmklId" : 78787878,
      "dfmklName" : "fdjdfndfdfknkdfs",
      "dfmklTaxId" : "898989898989123123123123123123123123123123123123123123123",
      "dfmklStartDate" : "2010-07-13",
      "dfmklEndDate" : "9999-12-31",
      "dfmkl1" : "000WD",
      "dfmklAddress" : {
        "addressLine1Text" : "PO BOX 11414",
        "addressLine3Text" : "Belfast, ME 04915",
        "addressLine4Text" : "Waldo"
      }
    }
  } ],
  "highId" : "766723237623",
  "highName" : "jkjkjksdjkdsjksdjk"
}

Solution

  • Chain your promises. Here's an example, which you should be able to align to your needs.

    const firstPromise = () => Promise.resolve({foo: 'bar'});
    const secondPromise = bar => Promise.resolve(bar + 'baz');
    
    firstPromise()
      .then(data => data.foo)
      .then(secondPromise)
      .then(data => {
        console.log(data);  // 'barbaz'
      })