Properties of an Archicad Layout.
    typedef struct {
        GS::uchar_t             layoutName[API_UniLongNameLen];
        double                  sizeX;
        double                  sizeY;
        double                  leftMargin;
        double                  topMargin;
        double                  rightMargin;
        double                  bottomMargin;
        char                    customLayoutNumber[256];
        bool                    customLayoutNumbering;
        bool                    doNotIncludeInNumbering;
        bool                    showMasterBelow;
        bool                    filler_1[5];
        UInt32                  layoutPageNumber;
        UInt32                  actPageIndex;
        double                  filler_2[2];
        GS::HashTable<API_Guid, GS::UniString>*  customData;
        GS::uchar_t             currentRevisionId[API_UniLongNameLen];
        GS::uchar_t             currentFinalRevisionId[API_UniLongNameLen];
        bool                    hasIssuedRevision;
        bool                    hasActualRevision;
        bool                    filler_3[6];
    } API_LayoutInfo;
    
Members
- layoutName
- The name of the layout.
 From API 26 it contains unicode characters. 
- sizeX
- Horizontal size of the layout in mm.
- sizeY
- Vertical size of the layout in mm.
- leftMargin
- Layout margin to the left side of the paper.
- topMargin
- Layout margin to the top side of the paper.
- rightMargin
- Layout margin to the right side of the paper.
- bottomMargin
- Layout margin to the bottom side of the paper.
- customLayoutNumber  
- Corresponds to the Custom ID field on the Layout ID assignment tab page in the Layout Settings dialog (see picture below).
- customLayoutNumbering  
- Corresponds to the Use Automatic Book and Subset ID numbering/Custom ID radio buttons on the Layout ID assignment tab page in the Layout Settings dialog (see picture below).
- doNotIncludeInNumbering  
- Corresponds to state of the Do not include this Layout in ID sequence check box on the Layout ID assignment tab page in the Layout Settings dialog (see picture below).
- showMasterBelow  
- Display master layout above or below the layout.
- layoutPageNumber  
- Number of layout (page) when this layout contains any MultiPage Drawing. (Drawing with “Split to more layouts” flag.)
- actPageIndex  
- The actual index of layout (page) inside the Multi Page Layout. (Layout what contains any drawing with “Split to more layouts” flag.)
- customData  
- Contains the custom data fields. The custom scheme GUID-value pairs are stored in a GS::HashTable.
- currentRevisionId  
- ID of the current document revision of the layout.
- currentFinalRevisionId  
- ID with optional suffix (- WIP) of the current document revision of the layout.
- hasIssuedRevision  
- One or more issued document revisions have already been created for the layout.
- hasActualRevision  
- Exists an opened document revision for the layout.
Remarks
You can retrieve and modify the properties of a layout with the APIEnv_GetLayoutSetsID and APIEnv_ChangeLayoutSetsID environment functions, respectively.
    Note that the paper size and margins are expressed in mms, not in meters, and these parameters always apply to master layouts. Do not forget do delete customData pointer after APIEnv_GetLayoutSetsID.

Layout ID assigment tab page 
Requirements
- Version: API 5.1 or later
- Header: APIdefs_Environment.h