Monax API (v1)

Download OpenAPI specification:Download

Happy Contracting!

Getting Started

We are pleased you have joined the Marmot-y movement.

Authentication

external

Security Scheme Type HTTP
HTTP Authorization Scheme bearer

BearerAuth

Security Scheme Type HTTP
HTTP Authorization Scheme bearer
Bearer format "JWT"

OAuth2

This API uses OAuth 2 for more information.

Security Scheme Type OAuth2
authorizationCode OAuth Flow
Authorization URL: https://login.monax.io/oauth/authorize?audience="monax-api"
Token URL: https://login.monax.io/oauth/token
Scopes:
    implicit OAuth Flow
    Authorization URL: https://login.monax.io/oauth/authorize?audience="monax-api"
    Scopes:
      clientCredentials OAuth Flow
      Token URL: https://login.monax.io/oauth/token?audience="monax-api"
      Scopes:
        password OAuth Flow
        Token URL: https://login.monax.io/oauth/token?audience="monax-api"
        Scopes:

          Archetypes

          List archetypes.

          Archetypes information.

          Within the Agreements Network, archetypes are the fundamental, top-level objects.

          They are holders for a set of information which allows users to create agreements within the Platform.

          The returned list will include archetypes that are:

          1. authored by the authenticated user, or
          2. owned by the authenticated user (ie, the owner is the user or the user belongs to the owner organization)
          Authorizations:

          Responses

          200

          archetypes retrieved

          Response Schema: application/json
          Array
          active
          boolean

          Whether the archetype can be used to create new Active Agreements or not

          address
          string

          Blockchain based address for the archetype

          author
          string

          Controller contract of the user or organization that created the archetype. Note that currently the author is forced to be the logged-in-user's address since there is not yet have a review or approval process for changes made to an organization-authored archetype by a user who is part of that organization.

          authorDisplayName
          string

          Human readable name of the author

          countries
          Array of strings

          The jurisdictions in which the archetype has been registered to be active. Needs to be in ISO format

          createdAt
          number

          Unix timestamp of when the archetype was created

          description
          string

          Description of the archetype

          isOwner
          boolean

          Does the entity retrieving the information own the archetype

          name
          string <= 32 characters

          Human readable name of the archetype

          owner
          string

          Blockchain based address of the owner of the archetype who can control modifications, updates, and the visibility of the archetype

          ownerDisplayName
          string

          Human readable name of the owner

          price
          integer [ 0 .. 0 ]

          (Not currently used) price of the archetype to create a new agreement based upon it - in "cents".

          (This field can be edited later through a PUT request to /archetypes/:address/price)

          default

          unexpected error

          get/archetypes

          Monax's API's environments

          https://{environment}api.monax.io{version}/archetypes

          Response samples

          Content type
          application/json
          Copy
          Expand all Collapse all
          [
          • {
            }
          ]

          Create a archetype.

          Create a archetype with the fields and data that are included in the body of the request.

          Authorizations:
          Request Body schema: application/json
          description
          required
          string

          Description of the archetype

          executionProcessDefinition
          required
          string

          Address of the archetype's execution process definition

          formationProcessDefinition
          required
          string

          Address of the archetype's formation process definition

          name
          required
          string <= 32 characters

          Human readable name of the archetype

          owner
          required
          string

          Blockchain based address of the owner of the archetype who can control modifications, updates, and the visibility of the archetype

          author
          string

          Controller contract of the user or organization that created the archetype. Note that currently the author is forced to be the logged-in-user's address since there is not yet have a review or approval process for changes made to an organization-authored archetype by a user who is part of that organization.

          documents
          Array of objects (AgreementDocument)

          Array of the prose archetype documents that provide the basis for the human-readable (traditional) contract.

          N.B. these documents when displayed for a user are "assembled" in that they are ran through our documentary assembly processing system before they are displayed to the user in our webApp. This field only returns the "raw" document which needs to be ran through the Monax assembler if one wants to have the "full" contract equivalent to what is displayed in the webApp.

          executionProcessName
          string

          Human readable name of the process

          formationProcessName
          string

          Human readable name of the process

          governingArchetypes
          Array of strings

          The address each of the packages that the archetype has been added to

          jurisdictions
          Array of objects (ArchetypeJurisdiction)

          The "country" and "regions" which the archetype

          has been registered as relevant to. The "country" is registered as an ISO standard

          two character string and "regions" is an array of addresses relating to the controlling

          contracts for the region (see ISO standards manipulation section).

          ownerScope
          string

          The department or limiting scope that the owner has placed on the visibility of the archetype

          parameters
          Array of objects (AgreementParameter)

          An array of objects with each parameter's name, value, and data type. See the AgreementParameter object definition for more information on the data types. Note - If a parameter with type 8 (Signing Party) is given, the corresponding value will be added to the agreement's parties.

          password
          string

          A secret string which is used to trigger the encryption system for the Archetype's documents

          price
          integer [ 0 .. 0 ]

          (Not currently used) price of the archetype to create a new agreement based upon it - in "cents".

          (This field can be edited later through a PUT request to /archetypes/:address/price)

          Responses

          200

          archetype created

          Response Schema: application/json
          address
          string

          The blockchain based address of the archetype that was created

          default

          unexpected error

          post/archetypes

          Monax's API's environments

          https://{environment}api.monax.io{version}/archetypes

          Request samples

          Content type
          application/json
          Copy
          Expand all Collapse all
          {
          • "executionProcessDefinition": "EA8EA96E9C834F49A51C78E0F714D9D758165774",
          • "parameters":
            [
            ],
          • "name": "My great archetype",
          • "formationProcessDefinition": "E0612C933FC3EA640F9A108DF85F6679CAD0BCE5",
          • "jurisdictions":
            [
            ],
          • "owner": "E162E2EC40F0ABE80F0EEE56C447B5DCA26F73D2",
          • "documents":
            [
            ],
          • "governingArchetypes":
            [
            ],
          • "description": "It's great!"
          }

          Response samples

          Content type
          application/json
          Copy
          Expand all Collapse all
          {
          • "address": "522BAFACF3B546121EF70C1CF335155AEDBACD95"
          }

          Retrieve a archetype.

          Get archetype information for a single archetype. This endpoint will return a 404 if:

          1. the archetype is not found, or
          2. the archetype is private and the authenticated user is not its author.

          Note: if the password provided is incorrect or a file reference which does not exist was passed to the posted archetype this get will return a 401.

          Authorizations:
          path Parameters
          address
          required
          string
          Example: 6EDC6101F0B64156ED867BAE925F6CD240635656

          Address of the archetype requested

          query Parameters
          meta
          boolean

          Include the metadata under the meta key of each of this archetypes's documents

          password
          string
          Example: password=aLongPassword

          The password to trigger the decryption key for an opaque archetype

          Responses

          200

          archetype retrieved

          Response Schema: application/json
          description
          required
          string

          Description of the archetype

          executionProcessDefinition
          required
          string

          Address of the archetype's execution process definition

          formationProcessDefinition
          required
          string

          Address of the archetype's formation process definition

          name
          required
          string <= 32 characters

          Human readable name of the archetype

          owner
          required