Resources

    get

    URL/api/v1/api.php?target=resource&action=get
    DescriptionGet a resource or resources
    ReturnsExamples:
    SUCCESSFUL: {"success":1,"message":"Search successful","data":[{"id":"57","name":"2nd Email","slug":"6c-contact-email2","type":"field","parent_id":"1","category_id":null,"attr":[]}]}
    ERROR: {"success":0,"message":"Search failed"}
    Optional Parameters
    NameTypeNotes/Example
    nameSTRINGName of the resource. Example: 6Connect, Inc.
    slugSTRINGThe unique URL friendly name of the resource. Example: 6connect-inc
    typeSTRINGType of resource (eg. entry, field, category)

     

    At most, one of the following:

    NameTypeNotes/Example
    idINTEGERGet the resource which has this ID
    resource__inARRAY

    Get any resource which has any of these IDs

    Syntax: &resource__in[]=1771&resource__in[]=14238 (Each resource id you wish to search over gets its own phrase.)

    resource__not_inARRAY

    Get all the resources which do not have any of these IDs

    Syntax: &resource__not_in[]=1771&resource__not_in[]=14238 (Each resource id you wish to exclude gets its own phrase.)

     

    At most, one of the following:

    NameTypeNotes/Example
    parent_idINTEGERGet the resources whose parent has this ID
    parent__inARRAY

    Get any resource whose parents have any of these IDs.

    Syntax: &parent__in[]=162&parent__in[]=299 (Each parent id you wish to search over gets its own phrase.)

    parent__not_inARRAY

    Get all resources whose parents do not have any of these IDs

    Syntax: &parent__not_in[]=1771&parent__not_in[]=14238 (Each parent id you wish to exclude gets its own phrase.)

     

    At most, one of the following:

    NameTypeNotes/Example
    category_idINTEGERGet the resources of the category that has this ID
    category__inARRAY

    Get any resources whose categories have any of these IDs.

    Syntax: &category__in[]=11002&category__in[]=11003 (Each category id you wish to search over gets its own phrase.)

    category__not_inARRAY

    Get the resources of all the categories that do not have any of these IDs

    Syntax: &parent__not_in[]=11002&parent__not_in[]=11003 (Each category id you wish to exclude gets its own phrase.)


    You can set the order of the results by setting the STRING value of the parameter orderby to one of the following :

    • none
    • id
    • name (default)
    • slug
    • type
    • parent_id
    • date
    • resource__in (preserve order given in the resource__in array)

     

    You can set the direction of the ordering of the results by setting the STRING value of the parameter order to one of the following :

    • ASC  (default)
    • DESC

     

    You can further limit the results based on attributes the resources may have:

    NameTypeNotes/Example
    attr_keySTRINGThe name of the attribute. Example: network-fqdn
    attr_valueSTRINGThe value of any attribute, or if attr_key is specified, the value of the attribute defined in attr_key.
    attr_compareSTRING

    If both attr_key and attr_value are given, the results are by default compared based on the value given as attr_value being equal to the value stored in the database. You can optionally change this by setting the STRING value of attr_compare to one of the following:

    • =  (default)
    • !=
    • >
    • >=
    • <
    • <=
    • LIKE
    • NOT LIKE
    • IN
    • NOT IN
    • BETWEEN
    • NOT BETWEEN

    When attr_compare is set to IN, NOT IN, BETWEEN, NOT BETWEEN, then attr_value must either be an array or a comma separated string.

     

    You can search on multiple attributes by including an array of attribute options:

    NameTypeNotes/Example
    attributesARRAY
    var data = {
         "type: "entry",
         "attributes": [
              {
                   "attr_key": "_section",
                   "attr_value": "105",
              },
              {
                   "attr_key": "address-mail-state",
                   "attr_value": "CA",
              }
         ],
         "resources_per_page: 10
    }

     

    You can restrict the range of the resources returned.

    NameTypeNotes/Example
    resources_per_pageINTEGERHow many resources to return.
    offsetINTEGERHow many resources to offset (the initial resource is 0, not 1).
    pagedINTEGERThe page to return (starts at 1, not 0). This parameter is provided for convenience and is used to calculate the offset where: offset=(paged-1)*resources_per_page
    Example URL/api/v1/api.php?target=resource&action=get&id=7

    add

    URL/api/v1/api.php?target=resource&action=add
    DescriptionAdd a resource.
    Returns

    Examples:

    /api/v1/api.php?target=resource&action=add&meta[name]=apitest&meta[type]=entry&meta[section]=firewall&fields[network-fqdn][]=www.example.com

    SUCCESSFUL: {"success":1,"message":"Resource added","data":{"id":1077,"name":"apitest","slug":"apitest","type":"entry","parent_id":1,"category_id":"NULL","attr":{"_section":"70","network-fqdn":"www.example.com"},"section":{"id":"70","name":"Firewall","slug":"firewall","type":"section","parent_id":"1","category_id":null,"attr":{}}}}

    /api/v1/api.php?target=resource&action=add&meta[name]=apitest&meta[type]=entry&fields[network-fqdn][]=www.example.com

    ERROR:{"success":0,"message":"Entries must be assigned to a section"}

    Required Parameters
    NameTypeNotes/Example
    meta[name]STRINGName of the resource
    meta[type]STRINGType of resource (entry, section, field, etc.)
    Optional Parameters
    NameTypeNotes/Example
    meta[parent_id]INTEGERID of the parent resource
    meta[category_id]INTEGERID of the category

    Required Parameters

    (meta[type] = entry)


    One of the following:

    NameTypeNotes/Example
    meta[section_id]INTEGERID of the section that the entry will be assigned to
    meta[section]STRINGSlug of the section that the entry will be assigned to

    Optional Parameters

    (meta[type] = entry)

    NameTypeNotes/Example
    fields[]ARRAY

    Entry field values (for fields that have already been assigned to the section) can be populated when the entry is created.

    The format is field[field-slug][field-instance]. If the field instance is left blank, it will simply be the next value in the instance array. For example:

    fields[network-fqdn][]=example.com&fields[network-fqdn][]=test.com

    would be written in JSON as

    var fields = {
         "network-fqdn": [
              "example.com",
              "test.com"
         ]
    }

    Please note that the Field Slug might differ from the Field Name! To find the correct slug to use in adding resources with field values go the Section of the Resource you are adding, click 'Edit', then click the name of the Fields you will be populating. An Edit Field box will pop up which displays the Field's slug.

    A field can be added to a section multiple times. The field instance is used to keep track of which field occurrence we are referring. In this example, the network-fqdn field had been added twice to the section so we were able to store two values for it.

    meta[custom_id]STRINGA custom ID for the entry. In the past this has been called the Resource Holder ID or Customer ID. Most recently it was implemented as a text field with the slug "6c-resourceholder-id." Now it is a fundamental part the entry type resources.

    Required Parameters

    (meta[type] = field)

    NameTypeNotes/Example
    meta[field_type]STRING

    Type of field

    • text
    • textarea
    • radios
    • checkboxes
    • choicebox

    Optional Parameters

    (meta[type] = field)

    NameTypeNotes/Example
    meta[help_block]STRINGFields can have a line of text under them with instructions
    meta[options]ARRAY

    Fields of type radios, checkboxes, or choicebox can have multiple options. This could be multiple radio buttons or a choicebox (dropdown) with several options. For example:

    meta[type]=field&meta[name]=Colors&meta[field_type]=choicebox&meta[options][]=Blue&meta[options][]=Green

    Will create a choicebox with dropdown options of Blue and Green.

    Required Parameters

    (meta[type] = gadgets)

    NameTypeNotes/Example
    gadgets[x][uuid]INTEGER

    x: The nth gadget being described in the call ('0' for the first gadget, '1' for the second, and so on).

    uuid: User-generated ID of the gadget to be created.

    gadgets[x][code]STRING

    x: The nth gadget being described in the call ('0' for the first gadget, '1' for the second, and so on).

    code: Slug of the gadget code to be created.

    List of valid Gadget codes:

    • Contact Info: "_contact_info"
    • Contacts: "_contacts"
    • DHCP Server: "_dhcp_server"
    • DNS: "_dns"
    • Document Storage: "_document_storage"
    • IPAM: "_ipam"
    • Peer Groups: "_peering_peer_groups"
    • Peering Sessions: "_peering_sessions"
    • VRFs: "_peering_vrfs"
    • Resource Linkage: "_resource_linkage"
    • Resource View: "_resource_view"
    • Reverse API Console: "_reverse_api"
    • Tech Info: "_tech_info"

    Example - Adding the IPAM Gadget to a Section:

    api.php?target=resource&action=add&meta[type]=section&meta[name]=TestSection_1&meta[parent_id]=1&gadgets[0][uuid]=uuid-586dbd260d6ef&gadgets[0][code]=_ipam

    update

    URL/api/v1/api.php?target=resource&action=update
    DescriptionUpdate a resource.
    Returns

    Examples:
    SUCCESSFUL: {"success":1,"message":"Resource Updated","data":{"id":"1055","name":"87-child-1","slug":"87-child-1","type":"entry","parent_id":"87","category_id":"65","attr":{"_section":"70"},"section":{"id":"70","name":"Firewall","slug":"firewall","type":"section","parent_id":"1","category_id":null,"attr":{}}}}

    ERROR: {"success":0,"message":"No resource found with ID: 1079"}

    Required Parameters
    NameTypeNotes/Example
    meta[id]INTEGERID of resource
    meta[type]STRINGType of resource (entry, section, field, ect)

    Optional Parameters

    (meta[type] = entry)

    NameTypeNotes/Example
    fields[]ARRAYSee "add" documentation

    Optional Parameters

    (meta[type] = section)

    NameTypeNotes/Example
    fields[]ARRAY

    The fields value should be all the fields that are assigned to the section. Giving an empty array as the fields value will remove all fields from the section.

    The format is:

    fields[position][key]

    The position value is the position that the field will appear in (0 is first). The position value must always be included. An example field format for an existing field could be:

    fields[0][id]=2
    fields[0][slug]=asset-serial-number
    fields[0][help_block]=something
    fields[0][new]=false

    • Either the id or the slug is required, not both.
    • When the "new" parameter is not included, FALSE is assumed

    If you want to create a new field and assign it to the section, use a format like this:

    fields[10][name]=TextArea
    fields[10][field_type]=textarea
    fields[10][new]=true

     

    delete

    URL/api/v1/api.php?target=resource&action=delete
    DescriptionDelete a resource.
    ReturnsExamples:
    SUCCESSFUL: {"success":1,"message":"Resource deleted."}
    ERROR: {"success":0,"message":"No resource found with ID: 57"}
    Required Parameters
    NameTypeNotes/Example
    idINTEGERID of the resource
    Optional Parameters
    NameTypeNotes/Example
    recursiveBOOLWhen 1, deletes parent and child entries for the resource

    A recursive delete will delete all resources, which are permitted to be deleted, from the bottom up.

    Imagine the following hierarchy:

    If a recursive delete is performed on A, but C21 is not deletable, the following

    resources would still be deleted: (B1, C11, C12, C22).

    B2 would not be deleted because it depends on C21 and A would not be deleted because it depends on B2.

     

    Example URL/api/v1/api.php?target=resource&action=delete&id=57
    Description

    Get available resource links. If no resource links exist for the given resource, an empty object is returned.

    URL/api/v1/api.php?target=resource&action=getLink
    Returns

    Examples:

    SUCCESSFUL:{"success":1 ,"message":"Search successful", "data":{"meta":{"totalRecords":"3", "retrieved":3}, "0":{"id":"22", "resource_id1":"1292", "resource_id2":"1302", "relation":"dhcpPoolLink"}, "1":{"id":"2", "resource_id1":"1292", "resource_id2":"1452", "relation":"dhcpPoolLink"}, "2":{"id":"12", "resource_id1":"1422", "resource_id2":"1482", "relation":"dhcpPoolLink"}}}
    ERROR:{"success":0, "message":"error message"}

    Return Detail:

    NameTypeDescription
    idINTEGERId of the resource linkage
    resource_id1INTEGERThe id of the parent resource
    resource_id2INTEGERThe id of the linked resource
    relationSTRINGThe relation type. Relation types include:
    contact, dhcpPoolLink, dnsViewACL, dnsViewServer, dnsZoneMaster, dnsZoneServer, dnsZoneView 

    Meta Attributes:

    NameTypeDescription
    totalRecordsINTEGERHow many records were found by this query, without pagination.
    retrievedINTEGERHow many records were returned by this query, with pagination.

    Optional Attributes:

    NameTypeDescription
    resultsPerPageINTEGERHow many records to include per page display.*
    pageINTEGERWhich page to display, when used with "resultsPerPage"*
    *Example pagination: api.php?target=resource&action=getLink&relation=dhcpPoolLink&resultsPerPage=100&page=2

    get resource search

    Description

    Search the resource system for the provided term. Performs a "LIKE" search to return similar results.

    URL/api/v1/api.php?target=resource&action=get&search=
    Returns

    Examples:

    SUCCESSFUL:{"success":1,"message":"Search successful","data":[{"id":"11011","name":"a6connectchildentry","slug":"a6connectchildentry","type":"entry","parent_id":"4210","category_id":null,"date":1499106555,"modified":1499106555,"attr":{"_section":"4214"},"section":{"id":"4214","name":"aQA Section","slug":"aqa-section","type":"section","parent_id":"1","category_id":null,"date":1498775688,"modified":1499106630,"attr":[]},"gadgets":[]}],"result_count":1,"found_count":1}
    ERROR:{"success":0, "message":"error message"}

    Return Detail:

    NameTypeDescription
    idINTEGERId of the resource linkage
    nameSTRINGThe resource name
    slugSTRINGThe resource slug
    typeSTRINGThe resource type.
    parent_idINTEGERID of the parent resource
    category_idINTEGERID of the resource category type
    dateINTEGERResouce creation date
    modifiedINTEGERResource last modified date
    attrJSONA JSON list of resource attributes

     

    Required Attributes:

    NameTypeDescription
    searchSTRINGThe search term
    Example URL/api/v1/api.php?target=resource&action=get&search=6connect
    • No labels