Forum Discussion
- _anomDiebolt_Qrew EliteIt is undocumented but you have to specify two parameters for each file attachment you want to delete. In the URL below we are deleting the file saved in the file attachment field with fid=9 and [Record ID#]=43. Here is the format of the unwound URL for a GET request:
https://<your subdomain>.quickbase.com/db/<your dbid>
?act=API_EditRecord
&rid=43
&_fid_9=
&delfile_fid_9=1
&apptoken=<your apptoken>
The pastie entry below shows a POST using a jQuery promise that accomplishes the same thing:
Pastie Database
https://haversineconsulting.quickbase.com/db/bgcwm2m4g?a=dr&rid=285
This was not obvious so its time for a celebratory song:
http://dualcoremusic.com/nerdcore/upload/dual_core-trust_me.mp3- JeffKelly1Qrew MemberDo you know of any way to delete all revisions? I'm hoping to clear up some usage but this method just leaves the attachment in the attachment history.
------------------------------
Jeff Jeff
------------------------------- MarkShnier__You
Qrew Legend
Try this thread, for Eric's response and post back when you get it working with your code. If you get a URL working to delete one revision version, but need help stringing several of them together to delete the other versions, post back and I can help with that.
https://community.quickbase.com/communities/community-home/digestviewer/viewthread?MessageKey=9e640229-f87e-42c1-b243-da04a6381a26&CommunityKey=d860b0f8-6a48-487b-b346-44c47a19a804&tab=digestviewer
------------------------------
Mark Shnier (YQC)
Quick Base Solution Provider
Your Quick Base Coach
http://QuickBaseCoach.com
mark.shnier@gmail.com
------------------------------
- BobSawyerQrew MemberBecause someone else might come along looking for this: here's the XML version:
<qdbapi>
<udata>mydata</udata>
<ticket>auth_ticket</ticket>
<apptoken>app_token</apptoken>
<rid>[record_id]</rid>
<field fid="[field_id]" filename="delete"></field>
</qdbapi>
I also added it to my copy of the PHP API wrapper as a modification of API_Edit:
public function delete_file($rid, $fid) {
if($this->xml) {
$xml_packet = new SimpleXMLElement('<qdbapi></qdbapi>');
$xml_packet->addChild('rid',$rid);
$xml_packet->addChild('field','');
$xml_packet->field[0]->addAttribute('fid',$fid);
$xml_packet->field[0]->addAttribute('filename','delete');
if ($this->app_token)
$xml_packet->addChild('apptoken', $this->app_token);
$xml_packet->addChild('ticket',$this->ticket);
$xml_packet = $xml_packet->asXML();
$response = $this->transmit($xml_packet, 'API_EditRecord');
}
if($response) {
return $response;
}
return false;
}- BobSawyerQrew MemberCheezits... 3 years later I'm digging around for how to do this and stumble across my own answer on the QB Community board. That'll make ya feel stupid.
- RyanAnderson2Qrew Cadetdid the same thing the other day. join the bandwagon! haha.
- QuickBaseCoachDQrew CaptainWow, how did you figure that one out?
- _anomDiebolt_Qrew Elite
- RyanAnderson2Qrew CadetThank you! ~singing~
- JoshJosh2Qrew MemberHi, thanks in advance, but what if I just wanted to make a button that deleted the file attachment on whichever record id I was viewing? for example -- I have a Table called 'Brady Bunch', and there are 6 rids so far -- each record id has a picture of that child uploaded to it: Greg (rid_1), Marsha (rid_2), Peter (rid_3), Jan (rid_4), Bobby (rid_5), Cindy (rid_6).
Question 1:
I won't know which attachment I want to delete until I get on the actual record. How can I do this in the API script so the rid is more of a variable?
Question 2:
Where are you getting the update ID from?
Question 3:
When I save, it's telling me I need a 'Type'
Let me know when/if you have a moment?
Thanks!