External Collection Not Loading

Anyone else have issues with an eternal collection that returns a successful test, and works in other tools like Postman, but won’t load as a list in Adalo?

I’m using a REST API to load an external collection that returns a successful result (when using a get all results key).

When I try and use that external collection in a list component, it returns 0 items.

Here is an example of the returned data from the API call: {
“id”: 103457903,
“token_id”: “99141901204981878657477020966613497949365246397690969001871700517732879433729”,
“num_sales”: 0,
“background_color”: null,
“image_url”: “https://lh3.googleusercontent.com/-5qUFAG1JGSzMm20teFbmwLH-oXZcz_MSI1nr4NzVE34ujYOPzAF1r6OItEiit66dAySoS0TiIXIVgcmxmsZcWh6HMwtFVTkWkDATA”,
“image_preview_url”: “https://lh3.googleusercontent.com/-5qUFAG1JGSzMm20teFbmwLH-oXZcz_MSI1nr4NzVE34ujYOPzAF1r6OItEiit66dAySoS0TiIXIVgcmxmsZcWh6HMwtFVTkWkDATA=s250”,
“image_thumbnail_url”: “https://lh3.googleusercontent.com/-5qUFAG1JGSzMm20teFbmwLH-oXZcz_MSI1nr4NzVE34ujYOPzAF1r6OItEiit66dAySoS0TiIXIVgcmxmsZcWh6HMwtFVTkWkDATA=s128”,
“image_original_url”: null,
“animation_url”: null,
“animation_original_url”: null,
“name”: “Animated Pixel Mask RARE”,
“description”: “This is an animated pixelated head with electricity. This item is rare, hince why it has a hat and other gif features.”,
“external_link”: null,
“asset_contract”: {
“address”: “0x495f947276749ce646f68ac8c248420045cb7b5e”,
“asset_contract_type”: “semi-fungible”,
“created_date”: “2020-12-02T17:40:53.232025”,
“name”: “OpenSea Collection”,
“nft_version”: null,
“opensea_version”: “2.0.0”,
“owner”: 102384,
“schema_name”: “ERC1155”,
“symbol”: “OPENSTORE”,
“total_supply”: null,
“description”: “”,
“external_link”: null,
“image_url”: null,
“default_to_fiat”: false,
“dev_buyer_fee_basis_points”: 0,
“dev_seller_fee_basis_points”: 0,
“only_proxied_transfers”: false,
“opensea_buyer_fee_basis_points”: 0,
“opensea_seller_fee_basis_points”: 250,
“buyer_fee_basis_points”: 0,
“seller_fee_basis_points”: 250,
“payout_address”: null
},
“permalink”: “https://opensea.io/assets/0x495f947276749ce646f68ac8c248420045cb7b5e/99141901204981878657477020966613497949365246397690969001871700517732879433729”,
“collection”: {
“banner_image_url”: null,
“chat_url”: null,
“created_date”: “2021-11-15T21:13:55.461132”,
“default_to_fiat”: false,
“description”: null,
“dev_buyer_fee_basis_points”: “0”,
“dev_seller_fee_basis_points”: “0”,
“discord_url”: null,
“display_data”: {
“card_display_style”: “contain”,
“images”:
},
“external_url”: null,
“featured”: false,
“featured_image_url”: null,
“hidden”: true,
“safelist_request_status”: “not_requested”,
“image_url”: null,
“is_subject_to_whitelist”: false,
“large_image_url”: null,
“medium_username”: null,
“name”: “Untitled Collection #128594698”,
“only_proxied_transfers”: false,
“opensea_buyer_fee_basis_points”: “0”,
“opensea_seller_fee_basis_points”: “250”,
“payout_address”: null,
“require_email”: false,
“short_description”: null,
“slug”: “untitled-collection-128594698”,
“telegram_url”: null,
“twitter_username”: null,
“instagram_username”: null,
“wiki_url”: null
},
“decimals”: null,
“token_metadata”: null,
“owner”: {
“user”: {
“username”: “NullAddress”
},
“profile_img_url”: “https://storage.googleapis.com/opensea-static/opensea-profile/1.png”,
“address”: “0x0000000000000000000000000000000000000000”,
“config”: “”
},
“sell_orders”: null,
“creator”: {
“user”: {
“username”: null
},
“profile_img_url”: “https://storage.googleapis.com/opensea-static/opensea-profile/3.png”,
“address”: “0xdb3053d96754988b70300e89e48e8923ec932ca1”,
“config”: “”
},
“traits”: ,
“last_sale”: null,
“top_bid”: null,
“listing_date”: null,
“is_presale”: true,
“transfer_fee_payment_token”: null,
“transfer_fee”: null
}

I believe there is a bug in Adalo with nested data (objects in object). If I recall, every nested type needs to have “_type” in order for Adalo to know what to do with the data, see the altered payload, notice I added “_types”, if you can change the backend, I believe this will resolve the issue you are having. If you cannot, then you need to make seperate calls for the data. So “asset_contract” does not get returned in the assets list, but a seperate external collection.

{
	"id": 103457903,
	"token_id": "99141901204981878657477020966613497949365246397690969001871700517732879433729",
	"num_sales": 0,
	"background_color": null,
	"image_url": "https: //lh3.googleusercontent.com/-5qUFAG1JGSzMm20teFbmwLH-oXZcz_MSI1nr4NzVE34ujYOPzAF1r6OItEiit66dAySoS0TiIXIVgcmxmsZcWh6HMwtFVTkWkDATA",
	"image_preview_url": "https: //lh3.googleusercontent.com/-5qUFAG1JGSzMm20teFbmwLH-oXZcz_MSI1nr4NzVE34ujYOPzAF1r6OItEiit66dAySoS0TiIXIVgcmxmsZcWh6HMwtFVTkWkDATA=s250",
	"image_thumbnail_url": "https: //lh3.googleusercontent.com/-5qUFAG1JGSzMm20teFbmwLH-oXZcz_MSI1nr4NzVE34ujYOPzAF1r6OItEiit66dAySoS0TiIXIVgcmxmsZcWh6HMwtFVTkWkDATA=s128",
	"image_original_url": null,
	"animation_url": null,
	"animation_original_url": null,
	"name": "Animated Pixel Mask RARE",
	"description": "This is an animated pixelated head with electricity.This item is rare, hince why it has a hat and other gif features.",
	"external_link": null,
	"asset_contract": {
		"address ": "0x495f947276749ce646f68ac8c248420045cb7b5e ",
		"asset_contract_type": "semi - fungible",
		"created_date": "2020 - 12 - 02 T17: 40: 53.232025",
		"name": "OpenSea Collection",
		"nft_version": null,
		"opensea_version": "2.0 .0",
		"owner": 102384,
		"schema_name": "ERC1155",
		"symbol": "OPENSTORE",
		"total_supply": null,
		"description": "",
		"external_link": null,
		"image_url": null,
		"default_to_fiat": false,
		"dev_buyer_fee_basis_points": 0,
		"dev_seller_fee_basis_points": 0,
		"only_proxied_transfers": false,
		"opensea_buyer_fee_basis_points": 0,
		"opensea_seller_fee_basis_points": 250,
		"buyer_fee_basis_points": 0,
		"seller_fee_basis_points": 250,
		"payout_address": null,
		"_type": "asset_contract"
	},
	"permalink": "https: //opensea.io/assets/0x495f947276749ce646f68ac8c248420045cb7b5e/99141901204981878657477020966613497949365246397690969001871700517732879433729",
	"collection": {
		"banner_image_url ": null,
		"chat_url": null,
		"created_date": "2021 - 11 - 15 T21: 13: 55.461132",
		"default_to_fiat": false,
		"description": null,
		"dev_buyer_fee_basis_points": "0",
		"dev_seller_fee_basis_points": "0",
		"discord_url": null,
		"display_data": {
			"card_display_style ": "contain ",
			"images": "",
			"_type": "display_data"
		},
		"external_url": null,
		"featured": false,
		"featured_image_url": null,
		"hidden": true,
		"safelist_request_status": "not_requested",
		"image_url": null,
		"is_subject_to_whitelist": false,
		"large_image_url": null,
		"medium_username": null,
		"name": "Untitled Collection #128594698",
		"only_proxied_transfers": false,
		"opensea_buyer_fee_basis_points": "0",
		"opensea_seller_fee_basis_points": "250",
		"payout_address": null,
		"require_email": false,
		"short_description": null,
		"slug": "untitled-collection-128594698",
		"telegram_url": null,
		"twitter_username": null,
		"instagram_username": null,
		"wiki_url": null,
		"_type": "collection"
	},
	"decimals": null,
	"token_metadata": null,
	"owner": {
		"user": {
			"username": "NullAddress",
			"_type": "user"
		},
		"profile_img_url": "https://storage.googleapis.com/opensea-static/opensea-profile/1.png",
		"address": "0x0000000000000000000000000000000000000000",
		"config": "",
		"_type": "owner"
	},
	"sell_orders": null,
	"creator": {
		"user": {
			"username": null,
			"_type": "user"
		},
		"profile_img_url": "https://storage.googleapis.com/opensea-static/opensea-profile/3.png",
		"address": "0xdb3053d96754988b70300e89e48e8923ec932ca1",
		"config": "",
		"_type": "creator"
	},
	"traits": false,
	"last_sale": null,
	"top_bid": null,
	"listing_date": null,
	"is_presale": true,
	"transfer_fee_payment_token": null,
	"transfer_fee": null,
	"_type": "asset"
}

Ya there is no way for me to alter the payoload since its 3rd party data. Really disappointing that Adalo can’t handle arrays properly.

Just to double check that this is the issue you are having, I had the issue the other day which is why I think this is the issue. From the web browser, press F12 to open the developer console, then click on the console tab. When you open the page that does not load, you will probably see errors. if is says e._type is not defined, than this is the issue. If it says something else send it to me so I can look.

Here is what it lists for me: