Error 500 creating API keys

I’m getting “OttoFMS API Error: fetch failed. HTTP Status Code: 500.” when trying to create API keys. I verified I was able to use the FQDN and get a token with a POST from CURL without issue. Nothing shows in logs. What else can I check?

Are you creating the API keys from OttoFMS or from elsewhere? You can try turning on debug logging in the ottofms settings and check the debug-log after trying again to see if that gets you more information.

I will say the generic “fetch failed” error is usually a network issue.

-Kyle

Nothing exciting in the debug log.

2025-08-22T15:08:57.884Z info Debug logging enabled

2025-08-22T15:09:05.517Z debug 166a7a76-0450-4bc0-bd19-e85e41108668 GET: /otto/api/webhooks

2025-08-22T15:09:05.529Z debug 5c2ba684-aac7-46a7-a75d-34d23e76dc2e GET: /otto/api/deployment

2025-08-22T15:09:05.530Z debug 9b4b52bf-1c49-4545-8da3-daa08abfb4a7 GET: /otto/fmi/admin/api/v2/databases

2025-08-22T15:09:06.871Z debug 9b92a254-3ba2-4709-976a-e42b9caeff77 GET: /otto/api/api-key

2025-08-22T15:09:09.536Z debug 8f72754c-e6eb-4145-8210-097bdfca1cc6 GET: /otto/api/webhooks

2025-08-22T15:09:11.100Z debug a163d507-f3e3-414c-a494-f42ac033ef71 GET: /otto/fmi/admin/api/v2/databases

2025-08-22T15:09:13.559Z debug f9ac0870-73c0-48f4-b16c-b4f78782efb6 GET: /otto/api/webhooks

2025-08-22T15:09:17.713Z debug 7c539992-a529-47e0-8061-7c5a1ef1141d GET: /otto/api/webhooks

2025-08-22T15:09:18.039Z debug 32db8c41-53af-4176-82c4-acc079648598 POST: /otto/api/api-key

2025-08-22T15:09:19.972Z debug 384dab17-e7bd-4602-82e4-44ad81ad9c7d GET: /otto/api/api-key

2025-08-22T15:09:20.019Z debug 62e7f4a5-4756-4faa-9aa3-914bac42f9e2 GET: /otto/fmi/admin/api/v2/databases

2025-08-22T15:09:21.741Z debug bef494b6-0c6b-42a5-90fa-de100552bbc9 GET: /otto/api/webhooks

2025-08-22T15:09:25.423Z debug d8a6b4e6-f49f-40a8-bcad-d7e7fbf1c766 GET: /otto/api/deployment

2025-08-22T15:09:26.821Z debug baad4319-5af7-418a-aa80-b400def240de GET: /otto/api/deployment

Hey Andy,

Could you go into the browser console (you can right click and click inspect element) and go to the “network” tab when you make your API key for me? If you go there before you click the button to create it you should be able to see the network request. If you check the response it ay have a more helpful error message.

-Kyle

1
23
66.0 KB
76.7 KB
0
Summary
URL: https://filemaker.xxx.net/otto/api/api-key
Status: 500 fetch failed
Source: Network
Address: 136.41.2.82:443
Initiator:
index-C1pdElok.js:776:87452

Request
POST /otto/api/api-key HTTP/1.1
Accept: application/json
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Connection: keep-alive
Content-Length: 150
Content-Type: application/json
Cookie: ottofms-auth=eyJhbGciOiJIUzI1NiJ9.eyJkYXRhIjoiT3R0b0ZNUyBTZXNzaW9uIENvb2tpZSIsImtlZXBMb2dnZWRJbiI6dHJ1ZSwiaWF0IjoxNzU2OTMxNjM2LCJpc3MiOiJ1cm46b3R0by12NC1zZXJ2ZXI6aXNzdWVyIiwiYXVkIjoidXJuOm90dG8tdjQtdXNlcjphdWRpZW5jZSIsImV4cCI6MTc1OTUyMzYzNn0.T5OCDLWlNdM46zdQCIxkO578x4jMJ_EM3xe3NK2Xkok; XSRF-TOKEN=O4LwFt1Zb30Qnf%2BqQEm5P0knYxQ43IUKsZ26E%3D; token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzaWQiOiIwOTdjMjY2Yi0yOTIyLTRkN2MtYWI4My1mZDczMzAyOTM4ZGUiLCJpYXQiOjE3NTY5MzEyMjV9.leq5Ldgb2pJboKr0fvshB7oH6uDPKax4xSoyOCdb2_0; _shopify_y=ed448128-90d7-4c07-8f48-411ebd9bde04; _tracking_consent=3.AMPS_USGA_f_t_i8m27fnTm6bVYtYprW7g; connect.sid=s%3ADFLOWd31JFZrkMOIE3Bd0E24gEfFw1sK.PoBTCRQmMH4ktJ0n7mmusYWMgbH86pYjr2V7T9I5q94; _landing_page=%2F; _orig_referrer=
Credentials: include
Origin: https://filemaker.xxx.net
Priority: u=3, i
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-origin
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.6 Safari/605.1.15

Response
HTTP/1.1 500 fetch failed
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: Content-Type, Authorization, tus-resumable, upload-length, upload-metadata, upload-offset
Access-Control-Allow-Origin: *
Connection: close
Content-Length: 65
Content-Type: application/json; charset=utf-8
Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Resource-Policy: same-origin
Date: Wed, 03 Sep 2025 20:35:03 GMT
ETag: W/“41-UdwkNXgPHuhkb9YrA0dg024OuaI”
Origin-Agent-Cluster: ?1
Referrer-Policy: no-referrer
Server: Apache
Strict-Transport-Security: max-age=31536000; includeSubDomains, max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff
X-DNS-Prefetch-Control: off
X-Download-Options: noopen
X-Frame-Options: SAMEORIGIN
X-Permitted-Cross-Domain-Policies: none
X-XSS-Protection: 1; mode=block

Is there anything in the body of that request? It looks like you’ve sent the headers but not the actual response body

{“database”:“Inventory.fmp12”,“label”:“webhook”,“user”:“webhook”,“pass”:“xxx”,“returnExisting”:false,“isDataApi”:true,“isOData”:true}

Hey Andy, sorry, I should’ve been clearer, is there anything in the response body? That looks like the request body that is sent down from the browser to OttoFMS

Response body was empty

Just to confirm, you’re on the most recent version of OttoFMS?

-Kyle