August 3, 20169 yr Hi everyone, I'm trying to post data to a Drupal application from FileMaker via the BaseElements plugin. I'm getting a token, setting authentication, headers, and the post variables via the BaseElements functions and I've followed examples but I'm getting the following error: {"error":"The type link relation must be specified.”} I can't find any information about what this error might be. Does anyone have any idea based on the output I've gathered below? A working cURL command that I'm basically trying to replicate that can be run from the command line is here: curl --include \ --request POST \ --user res_user:"password" \ --header 'Content-type: application/hal+json' \ --header "X-CSRF-Token: $X_CSRF_TOKEN" \ --data-binary '{"_links":{"type":{"href":"http://server.mskcc.org/rest/type/node/event"}}, "field_event_type":[{"value":"Seminar"}], "title":[{"value":”Novel Approaches to Mating Drosophila"}], "field_shared_datetime":[{"value":"2016-06-13T17:15:00"}], "body":[{"value":"Tea ?: Yes<br>Tea Time: Tea at 1:15 PM"}], "field_shared_location_text":[{"value":"ZRC Auditorium"}], "field_shared_sponsor":[{"value":"Developmental Biology"}], "field_event_hosts_text":[{"value":"Alexander Rudensky"}], "field_shared_people_text":[{"value":"Name of Speaker: Steven Reiner<br>Speaker\u0027s Credentials: M.D.<br>Speaker\u0027s Title: Professor, Department of Microbiology and Immunology<br>Speaker\u0027s Affiliation: Columbia University Medical Center<br>Institution Location: New York, NY"}], "type":[{"target_id":"event"}]}' \ http://dev.mskcc.org/entity/node?_format=hal_json I've attached the script I'm working with as an image. thanks in advance. Steven ----- BE_Curl_Trace returned: == Info: Trying 172.22.233.50... == Info: Connected to dev.mskcc.org (172.22.233.50) port 80 (#0) == Info: Server auth using Basic with user 'res_user' => Send header, 0x12c bytes (0x12c) 0000: POST /entity/node?_format=hal_json HTTP/1.1 0x2d: Host: server.mskcc.org 0x42: Authorization: Basic cmVzX2RydXBhbDpUcnU3SCZrQQ== 0x75: User-Agent: libcurl-agent-base-elements-plugin/3.2 0xa9: Accept: */* 0xb6: Content-Type: application/hal+json 0xda: X-CSRF-Token: q3LKwzWvNtlP2_X79TpJATfEnOB8HV-_lDaVCiTK8gg 0x115: Content-Length: 353 0x12a: => Send data, 0x161 bytes (0x161) 0000: " {\"_links\":{\"type\":{\"href\":\"http://dev.mskcc.org/rest/ty 0x40: pe/node/event\"}},.. \"field_event_type\":[{\"value\":\"Seminar 0x80: \"}],.. \"title\":[{\"value\":\"Sister Cells that Feast and Fas 0xc0: t --- Why Growth and Repair May Not be Fair XI\"}],.. \"field_s 0x100: hared_datetime\":[{\"value\":\"2016-06-13T17:15:00\"}],.. \"typ 0x140: e\":[{\"target_id\":\"event\"}]}" == Info: upload completely sent off: 353 out of 353 bytes <= Recv header, 0x1a bytes (0x1a) 0000: HTTP/1.1 400 Bad Request <= Recv header, 0xf bytes (0xf) 0000: Server: nginx <= Recv header, 0x24 bytes (0x24) 0000: Content-Type: application/hal+json <= Recv header, 0x1c bytes (0x1c) 0000: Transfer-Encoding: chunked <= Recv header, 0x18 bytes (0x18) 0000: Connection: keep-alive <= Recv header, 0x18 bytes (0x18) 0000: Keep-Alive: timeout=10 <= Recv header, 0x33 bytes (0x33) 0000: Cache-Control: must-revalidate, no-cache, private <= Recv header, 0x1a bytes (0x1a) 0000: X-UA-Compatible: IE=edge <= Recv header, 0x16 bytes (0x16) 0000: Content-language: en <= Recv header, 0x21 bytes (0x21) 0000: X-Content-Type-Options: nosniff <= Recv header, 0x1d bytes (0x1d) 0000: X-Frame-Options: SAMEORIGIN <= Recv header, 0x28 bytes (0x28) 0000: Expires: Sun, 19 Nov 1978 05:00:00 GMT <= Recv header, 0x25 bytes (0x25) 0000: Date: Wed, 03 Aug 2016 11:02:45 GMT <= Recv header, 0x2 bytes (0x2) 0000: <= Recv data, 0x40 bytes (0x40) 0000: 35 00x4: {"error":"The type link relation must be specified.”} <——— here's the error 0x3b: 0 0x3e: == Info: Closing connection 0 BE_Response_Headers returned: HTTP/1.1 400 Bad Request Server: nginx Content-Type: application/hal+json Transfer-Encoding: chunked Connection: keep-alive Keep-Alive: timeout=10 Cache-Control: must-revalidate, no-cache, private X-UA-Compatible: IE=edge Content-language: en X-Content-Type-Options: nosniff X-Frame-Options: SAMEORIGIN Expires: Sun, 19 Nov 1978 05:00:00 GMT Date: Wed, 03 Aug 2016 11:02:45 GMT
August 26, 20169 yr Author With the help of Ronnie Rios, the folks at BaseElements and especially, Christian from MonkeyBreadSoftware.de and his Monkey Bread plugin, we got this working, with the following script: # start a new transfer Set Variable [ $curl ; Value: MBS("CURL.New" ) ] # set URL Set Variable [ $r ; Value: MBS("CURL.SetOptionURL"; $curl; "http://server34343.mskcc.org/rest/session/token") ] # set post Set Variable [ $result ; Value: MBS("CURL.SetOptionPost"; $curl; 1) ] Set Variable [ $result ; Value: MBS("CURL.SetOptionUsername"; $curl; "res_user") ] Set Variable [ $result ; Value: MBS("CURL.SetOptionPassword"; $curl; “password") ] Set Variable [ $result ; Value: MBS("CURL.SetOptionHTTPHeader"; $curl; "Content-type: application/hal+json"; "X-CSRF-Token: $"&$r) ] Set Variable [ $result ; Value: MBS("CURL.SetOptionURL"; $curl; "http://dev.mskcc.org/entity/node?_format=hal_json") ] Set Variable [ $result ; Value: MBS("CURL.SetOptionPostFields"; $curl; "{\"_links\":{\"type\":{\"href\":\"http://dev.mskcc.org/rest/type/node/event\"}}, \"field_event_type\":[{\"value\":\"Seminar\"}],\"title\":[{\"value\":\"MBS TEST 4 after talking to Christian\"}], \"field_shared_datetime\":[{\"value\":\"2016-06-13T17:15:00\"}], \"type\":[{\"target_id\":\"event\"}]}"; "UTF-8") # run transfer Set Variable [ $ErrorCode ; Value: MBS("CURL.Perform";$curl) ] # get result as text and debug messages: Set Variable [ $TextResult ; Value: MBS("CURL.GetResultAsText";$curl) ] Set Variable [ $DebugMessages ; Value: MBS("CURL.GetDebugAsText";$curl) ] # cleanup Set Variable [ $r ; Value: MBS("CURL.Cleanup"; $curl) ] Set Variable [ $result ; Value: MBS("CURL.Cleanup"; $curl) ]
February 24, 20178 yr Newbies Hi Steven, i'm trying to show data in Drupal 8 from Filemaker db and i don't know how to proceed. Can you share your approach. What did you used the BaseElement Plugin and/or the Monkey Bread Plugin? Thank you in advance Kiva
February 24, 20178 yr @kiva - in the last post ( with the working script ), he is using the Monkeybread Plugin. Looking at both, it seems like you can do the same thing with the BE plugin. We, most often, use the BE plugin the send files or make API connections. We have done it with both...but BE has always done what we need.
March 8, 20178 yr Author @kiva I forget what the problem was but we tried (hard) to get it working with the BaseElements plugin and there was something it couldn't do, at the time. And we ended up getting it working with MonkeyBread. I'm attaching the working script again.. it may include a few lines that we added in for good measure. The "MBS" function name is missing because we haven't yet purchased it and were using a demo at the time. We're waiting for the next version of FMServer to purchase the plugin. I found the following which looks useful if you want to give BaseElements a try first: http://support.goya.com.au/discussions/free-baseelements-plugin/1463-http-post-with-token-json
March 8, 20178 yr Newbies Thanks for the answers. The MBS Plugin was helpful to me and have done the connection from Filemaker to Drupal. I can push data and hand over Filemaker-fields to the CMS. I have used your posted script with few changes. Thanks again
March 9, 20178 yr On 3/7/2017 at 7:27 PM, Steven Cappiello said: ...The "MBS" function name is missing because we haven't yet purchased it and were using a demo at the time. We're waiting for the next version of FMServer to purchase the plugin. What is the logic behind waiting?
May 29, 20223 yr http://support.goya.com.au/discussions/free-baseelements-plugin/1463-http-post-with-token-json > support page is gone. BaseElements page has almost no info. I am sticking with MBS. Costs a little, but you get a lot!
May 29, 20223 yr 20 minutes ago, Joost Miltenburg said: support page is gone BaseElements plugin documentation has moved to: https://docs.baseelementsplugin.com/ Not sure what's the point of reviving a 5-year old thread.
Create an account or sign in to comment