I created a new platform but when I cloned the source, I didn't see the lib/... folder, only env. Then I created a .env file and added those files, then pinged but got error 500. What should I do next?
here is the app
What's the SDK version?
it looks like 1.8.0
You're self-hosting?
no, but i can ask the host
@D5 yes, I self-hosting
Try asking the owner for the server logs
The react native SDK version or Appwrite version?
the Appwrite version, sdk-version: 17.0.2,
and from the project :
"appwrite": "^17.0.0",
"expo": "~52.0.28",
"react-native": "0.76.6",
I see the error on server log:
appwrite | [Error] Timestamp: 2025-09-24T15:05:47+00:00
appwrite | [Error] Method: GET
appwrite | [Error] URL: /v1/ping
appwrite | [Error] Type: Utopia\Database\Exception\Structure
appwrite | [Error] Message: Invalid document structure: Unknown attribute: "pingCount"
appwrite | [Error] File: /usr/src/code/vendor/utopia-php/database/src/Database/Database.php
appwrite | [Error] Line: 4271
I checked on /usr/src/code/src/Appwrite/Utopia/Response/Model/Project.php docker and I see code have define pingCount, pingedAt
->addRule('pingCount', [
'type' => self::TYPE_INTEGER,
'description' => 'Number of times the ping was received for this project.',
'default' => 0,
'example' => 1,
])
->addRule('pingedAt', [
'type' => self::TYPE_DATETIME,
'description' => 'Last ping datetime in ISO 8601 format.',
'default' => '',
'example' => self::TYPE_DATETIME_EXAMPLE,
])
==> it means the response Model (Project.php) - Used for API responses ✅ Working (I think that)
I checked the database and tried update pingCount and I see that database work well
MariaDB [appwrite]> SELECT pingCount, pingedAt FROM _console_projects WHERE _uid = '682f5edd0032dee5xxx' LIMIT 1;
+-----------+----------+
| pingCount | pingedAt |
+-----------+----------+
| 0 | NULL |
+-----------+----------+
1 row in set (0.001 sec)
MariaDB [appwrite]> UPDATE _console_projects SET pingCount = pingCount + 1, pingedAt = NOW(3) WHERE _uid = '682f5edd0032dee5xxx';
Query OK, 1 row affected (0.015 sec)
Rows matched: 1 Changed: 1 Warnings: 0
MariaDB [appwrite]> SELECT pingCount, pingedAt FROM _console_projects WHERE _uid = '682f5edd0032dee5xxx' LIMIT 1;
+-----------+-------------------------+
| pingCount | pingedAt |
+-----------+-------------------------+
| 1 | 2025-09-24 16:38:05.318 |
+-----------+-------------------------+
1 row in set (0.001 sec)
So I think root cause: Collection Schema (Structure validator) - Used for database validation ❌ Broken The Structure validator in Database.php line 4271 is checking against the collection schema
I have checked the cache and restarted Docker several times, but the issue has not been resolved. Do you have any suggestions? cc @D5
Did you ever figure this out? I had the same issue and was able to find a temporary workaround, but it's not pretty.
Recommended threads
- Websocket error Realtime
Hi peeps, I am trying to create realtime updates and I am having websocket error Code is below this msg
- {"code": 1008, "message": "Invalid Origi...
Nothing has changed in my application or console settings so I'm curious as to what I need to do to fix this. I already have the client registered so I'm not en...
- React Native/iOS platform integrations h...
Anyone else have this issue where platform identifiers have been lost/wiped and no option/field available to update them in the console?