Interface DigitalLoas

All Known Implementing Classes:
DigitalLoasImpl

public interface DigitalLoas
Client interface for managing Digital Letters of Authorization (Digital LOAs) in the Equinix Customer Portal.

Backed by the diLOA v1 API at /diloa/v1/digitalLoas. A Digital LOA is created with create(DigitalLoaCreateRequest), retrieved with findByUuid(String) or search(DigitalLoaSearchRequest), modified with update(String, List), actioned with performAction(String, Map) and invalidated with cancel(String). The audit trail of changes is available via findChangesByLoaUuid(String) and findChangeByUuid(String, String).

  • Method Details

    • create

      Creates a Digital LOA document.
      Parameters:
      request - the create request body
      Returns:
      the created Digital LOA
    • findByUuid

      DigitalLoa findByUuid(String uuid)
      Gets a Digital LOA document by its uuid.
      Parameters:
      uuid - the Digital LOA document identifier
      Returns:
      the Digital LOA
    • search

      List<? extends DigitalLoa> search(DigitalLoaSearchRequest request)
      Searches Digital LOA documents by the supplied search criteria (first page, default ordering).
      Parameters:
      request - the search criteria body
      Returns:
      the matching Digital LOA documents
    • search

      List<? extends DigitalLoa> search(DigitalLoaSearchRequest request, Integer offset, Integer limit, List<String> sort)
      Searches Digital LOA documents by the supplied search criteria, paging and sorting the results.
      Parameters:
      request - the search criteria body
      offset - the index of the first item returned (zero-based), or null for the default
      limit - the maximum number of items returned per page, or null for the default
      sort - the sort fields (e.g. /expiryDateTime, -/expiryDateTime), or null
      Returns:
      the matching Digital LOA documents
    • update

      DigitalLoa update(String uuid, List<Map<String,Object>> operations)
      Modifies a Digital LOA document by applying the supplied patch documents.
      Parameters:
      uuid - the Digital LOA document identifier
      operations - the JSON patch documents to apply
      Returns:
      the modified Digital LOA
    • cancel

      Boolean cancel(String uuid)
      Cancels (invalidates) a Digital LOA document.
      Parameters:
      uuid - the Digital LOA document identifier
      Returns:
      true if the Digital LOA was cancelled successfully
    • performAction

      DigitalLoa performAction(String uuid, Map<String,Object> action)
      Performs an action on a Digital LOA document.
      Parameters:
      uuid - the Digital LOA document identifier
      action - the action request body (the type of action is required)
      Returns:
      the Digital LOA after the action was performed
    • createRequest

      Boolean createRequest(Map<String,Object> request)
      Creates a Digital LOA request.
      Parameters:
      request - the Digital LOA request body
      Returns:
      true if the request was submitted successfully
    • findChangesByLoaUuid

      List<? extends DigitalLoaChange> findChangesByLoaUuid(String uuid)
      Lists the change records for a Digital LOA document.
      Parameters:
      uuid - the Digital LOA document identifier
      Returns:
      the Digital LOA change records
    • findChangeByUuid

      DigitalLoaChange findChangeByUuid(String uuid, String changeUuid)
      Gets a specific change record for a Digital LOA document.
      Parameters:
      uuid - the Digital LOA document identifier
      changeUuid - the Digital LOA change identifier
      Returns:
      the Digital LOA change record
    • listOrganizations

      List<? extends LoaCustomerOrganization> listOrganizations(String ibx)
      Lists the customer organizations available in the given IBX data center that the current user may use as a Digital LOA requestor.

      Private beta endpoint (GET /diloa/v1/organizations). The location.ibx query parameter is required by the API.

      Parameters:
      ibx - the IBX data center identifier (e.g. AM11); required
      Returns:
      the customer organizations
    • listOrganizations

      List<? extends LoaCustomerOrganization> listOrganizations(String ibx, List<String> productTypes)
      Lists the customer organizations available in the given IBX data center, filtered by product type, that the current user may use as a Digital LOA requestor.

      Private beta endpoint (GET /diloa/v1/organizations). The location.ibx query parameter is required by the API; product.type is optional.

      Parameters:
      ibx - the IBX data center identifier (e.g. AM11); required
      productTypes - the product types to filter by (e.g. CROSS_CONNECT), or null
      Returns:
      the customer organizations
    • isPrivateBetaAllowed

      PrivateBetaPermission isPrivateBetaAllowed()
      Returns whether the current user is permitted to use the Digital LOA application in its private beta phase (GET /diloa/v1/privateBetaAccess).

      Still in the diloav1 spec, but the route answers HTTP 404 live (observed 2026-11-11), so this call currently throws EquinixNotFoundException.

      Returns:
      the private beta permission
    • createPrivateBetaAccessRequest

      Boolean createPrivateBetaAccessRequest(PrivateBetaAccessRequest request)
      Submits a request for Digital LOA private beta access (POST /diloa/v1/privateBetaAccess).

      Still in the diloav1 spec, but a GET on the same path answers HTTP 404 live (observed 2026-11-11, not exercised with this write), so this call is expected to fail.

      Parameters:
      request - the private beta access request body
      Returns:
      true if the request was submitted successfully
    • getBetaTermsAgreement

      BetaTermsAgreement getBetaTermsAgreement()
      Returns the current user's acceptance of the Digital LOA private beta terms (GET /diloa/v1/betaTermsAgreement).

      Still in the diloav1 spec, but the route answers HTTP 404 live (observed 2026-11-11), so this call currently throws EquinixNotFoundException.

      Returns:
      the beta terms agreement
    • updateBetaTermsAgreement

      BetaTermsAgreement updateBetaTermsAgreement(Boolean agreementAccepted)
      Records the current user's acceptance of the Digital LOA private beta terms (PUT /diloa/v1/betaTermsAgreement).

      Still in the diloav1 spec, but a GET on the same path answers HTTP 404 live (observed 2026-11-11, not exercised with this write), so this call is expected to fail.

      Parameters:
      agreementAccepted - whether the beta terms are accepted
      Returns:
      the updated beta terms agreement