[SOLVED] Api misbehaving crud not working new version

Issue when creating and deleting via Squidex api.(allot of weird results on basic crud api endpoint)

1.When creating a document via api creates fine providing id (Create or Upsert)

2.When deleting record I get back a (204 no content) when i hit delete endpoint again same endpoint get back (410 gone) same endpoint works only on second request.

3.when doing a create document again via api (Create or Upsert) get back 200 or 201 (depending on create or upsert) but document does not get created checked on UI and did a get by id on api not result.

Tested on my own Squidex environment ( 5.7.1.0 recently upgraded to this version believe its causing the issue) but also created a project on cloud.squidex.io same issue. did test today 04 June 2020 10am

Example below (content being posted is irrelevant have issue regardless of schema)

1.post
cloud.squidex.io/api/content/roomammenaties/roomammenaties/1b?publish=true

{
    "id": {
        "iv": 1
    },
    "description": {
        "iv": "test"
    }
}

2.delete
https://cloud.squidex.io/api/content/roomammenaties/roomammenaties/1b
first response 204 no content
second response same http request 410 gone

3.post
https://cloud.squidex.io/api/content/roomammenaties/roomammenaties/1b?publish=true

{
    "id": {
        "iv": 1
    },
    "description": {
        "iv": "test"
    }
}

gets created according to api response but document does not exist on UI or doing get by id api

get
https://cms.computicket.com/api/content/versiontest/roomammenaties/1b
404 not found

Also having insert issues after upgrading to version 5.7.1.0 could not reproduce it.
But inserting record sometimes get back 409 conflict doing exactly the same create then inserts on second request

Please let me know what you find sure you will be able to reproduce the issue with a basic insert delete test

This is as intended. You could argue that the HTTP response code is wrong for the first version, but I have no plans to change that. Http 4XX are usually errors and why should deleting an item throw an error.

I will have a look to the other issues you mentioned.

Btw: Please format your code properly using code blocks.

Hey

Thanks for the quick reply. First time reporting issue so sorry for bad format.

Just another thing also had a colleague report issue and I could reproduce it.

Doing create (post data irrelevant is valid for schema)
https://cloud.squidex.io/api/content/roomammenaties/test/1?publish=true

{
    "description": {
        "iv": "asdasd"
    }
}

get back 400

{
    "message": "Invalid command.",
    "traceId": "00-26fe94955c07e14da191244f8f3008b1-30a6f0a73b501544-00",
    "type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
    "statusCode": 400
}

when changing the id to something like 1ab then works (something strange)
https://cloud.squidex.io/api/content/roomammenaties/test/1ab?publish=true

Have another minor bug I picked up UI side but will get to that later once we have a answer on these issues

Kind Regards

I can reproduce the first problem but not the second one.

Yeah its strange we have it on 2 different schemas but not on others going to see if I can reproduce with step by step example and provide you with details

1 Like

Second problem step by step example of issue

using cloud environment

cant seem to upload images on my account but just gona provide details best I can

Basically on squidex UI create a schema called idtest gave it a text field only called description

Did a Upsert
api/content/roomammenaties/idtest/1?publish=true
{
“description”: {
“iv”: “asdasd”
}
}

response (400 bad request)
{
“message”: “Invalid command.”,
“traceId”: “00-363d8646b279cf4db660d404a49a00ca-d41848c816e99447-00”,
“type”: “https://tools.ietf.org/html/rfc7231#section-6.5.1”,
“statusCode”: 400
}

doing same Upsert with id 1ab (event white space after 1 works)
api/content/roomammenaties/idtest/1ab?publish=true
{
“description”: {
“iv”: “asdasd”
}
}

response (200 ok with normal response body)

So yeah cant really say why its happening weird

Kind Regards

Please format your code blocks using code blocks. Can you also provide me the schema json for your other schema.

Btw: If you describe the UI bug I can also fix it today.

Will see if I can provide you with the json schema for those rather large schemas just need to get details my side. But yeah same issue as example provided.

With regards to the UI issue so this also happens on random and only some documents.

Example main schema employee and another schema department .
Employee has a reference field schema with department.

create employee and then link the department via department id on api.(employee created and the id link for department)

When employee reference is set to dropdown some records dont have a selected value on content UI(Value is there from db/api point of view). When changing the employee reference to list on UI value appears(can confirm there is only 1 id department link to each employee )

Once again only some records have this behaviour and would prefer to have it as drop down from user working on UI point of view.

Have had this on 2 separate projects and schemas.

Hope I explained the issue well enough

I have no idea what you mean with the UI problem.

Yeah hard to explain cant send images on new account.

Basically if something has a relationship link and its set to list view it shows the value on Content UI if on dropdown does not show value on UI but link is on db. I can just set list min items size 1 and max items size 1 on Schema editing so not to worried about this issue other issues way more important i think. (issue only on some records )

The dropdown only makes sense if maxItems is 1 and it is designed like that. But I think there should be the tag editor as alternative, right?

Yeah the thing is it only has one item and drop down does not show value thats the issue. Only when I switch the view type to list it show the single value.(but yeah only happens on some records for some reason).

But like I said not the end of the world have ways around it.

Not being able to create records with id in issue example above and not being able to create records after it was deleted is main issue we are facing which basically stops us from using Squidex for our projects .

One reason could be the following: The dropdown only loads the first 100 results. If there are too more potential references and the selected id is not part of this loaded set then the selection is not shown. It is used to save API calls.

Ok cool fair enough I can live with that yeah it has allot of items.

A fix for the original issue is in dev-6055. I recommend to open new tickets for the other bugs.

This topic was automatically closed after 2 days. New replies are no longer allowed.