bpy text attributes: how to set, how to discover I have got this far with generating text objects (this code is embedded in a loop in which the value of c is being set to different strings and i is incrementing as you might expect)...

    bpy.ops.object.text_add(location=(i*1.05, 0, 3.0), rotation=(0, 0, 0))
    tx=bpy.context.object
    tx.name = 'Letter_{}'.format(c)
    tx.data.body = c
    tx.data.font = fnt
    tx.location=(i*1.05, 0.0, 1.0)


so far so good, but now I would like to deepen or extrude this text object preparatory to meshifying it and trying to incise it into a cube face using a boolean operator;  I have seen examples of this extrusion but they seem to be using a completely different api -- such as this snippet:

localTextObject = Text3d.New(myTextName) #Create a text object.
localTextObject.setText(myTextValue) #Set the copy for the text.
localTextObject.setExtrudeDepth(0.01) #Give it some depth


So:  my question is... given the api I'm using, can I set the Extrude Depth for my text object, and if so, what's the syntax?  and how, more generally, can I discover all the options that can be set in tx.data for example?  I have been googling for weary minutes and have not yet found the right reference, manpage or whatever that would show all the settable options.  Is the api introspective enough that I can dig into it from the python console?  if so, syntax please...

UPDATE:  at last I found the right keywords to retrieve this answer
Documentation for accessable object properties

I am happy now :-)
Text objects are Curves with the subclass TextCurve. To create a text object(without using bpy.ops):

font = bpy.data.curves.new('myFont', 'FONT') #this is the 'data' of the text.data in your code
text = bpy.data.objects.new('myText', font)
bpy.context.scene.objects.link(text)
bpy.context.scene.update() #in your case do this outside the loop


To set the extrude:

font.extrude = 0.1