API v1 - Map

API v1 - Map


The following sections are named after top-level endpoints in the v1 API. HTTP Methods for each endpoint are given in hierarchical fashion with descriptions and examples where available, as exposed through the v1 API metadata.

Note that, in examples, '<>' implies the name of a resource specific to your Matillion ETL instance such as the name of a project or job. You are required to give the URL-encoded version of the resource name where appropriate. For example, if checking running tasks in project 'Up To Date' and group 'Test'

http://<instance address>/rest/v1/group/name/Test/project/name/Up To Date/task/running

Must become

http://<instance address>/rest/v1/group/name/Test/project/name/Up%20To%Date/task/running



audit

  • GET   
    e.g. http://<instance address>/rest/v1/audit

  • GET   /export
    e.g. http://<instance address>/rest/v1/audit/audit/export?offset=0&limit=25

     

 

apiprofile

  • POST   /revert
    Revert the selected API profile.
    e.g. http://<instance address>/rest/v1/apiprofile/name/<>/revert

  • GET   /export
    Export the selected API profile.
    e.g. http://<instance address>/rest/v1/apiprofile/name/<>/export

  • POST   /import
    Import a file to the selected API profile.
    e.g. http://<instance address>/rest/v1/apiprofile/name/<>/import WITH POST DATA arg0

  • GET   /canRevert
    Ask if the selected API profile can be reverted.
    e.g. http://<instance address>/rest/v1/apiprofile/name/<>/canRevert

  • DELETE
    Delete the selected API profile via DELETE request.

  • GET   /file/export
    Export all files in the selected API profile.
    e.g. http://<instance address>/rest/v1/apiprofile/name/<>/file/export

  • GET   
    Get the selected API profile.
    e.g. http://<instance address>/rest/v1/apiprofile/name/<>

  • GET   /properties
    Get the properties of the selected API profile.
    e.g. http://<instance address>/rest/v1/apiprofile/name/<>/properties

  • POST   /properties
    Set the properties of the selected API profile.
    e.g. http://<instance address>/rest/v1/apiprofile/name/<>/properties WITH POST DATA arg0

  • POST   /delete
    Delete the selected API profile.
    e.g. http://<instance address>/rest/v1/apiprofile/name/<>/delete

  • GET   /file
    List the files in the selected API profile.
    e.g. http://<instance address>/rest/v1/apiprofile/name/<>/file

  • PATH   /file/name/{filename}
    e.g. http://<instance address>/rest/v1/apiprofile/name/<>/file/name/<filename>

    • GET   /export
      Export the selected file.
      e.g. http://<instance address>/rest/v1/apiprofile/name/<>/file/name/<>/export

    • POST   /revert
      Revert the selected file.
      e.g. http://<instance address>/rest/v1/apiprofile/name/<>/file/name/<>/revert

    • DELETE
      Delete the selected file via DELETE request.

    • GET   /get
      Get the selected API profile.
      e.g. http://<instance address>/rest/v1/apiprofile/name/<>/file/name/<>/get

    • POST   /delete
      Delete the selected file.
      e.g. http://<instance address>/rest/v1/apiprofile/name/<>/file/name/<>/delete

    • GET   /test
      Test the selected file.
      e.g. http://<instance address>/rest/v1/apiprofile/name/<>/file/name/<>/test

  • GET   /test
    Test the files in the selected API profile.
    e.g. http://<instance address>/rest/v1/apiprofile/name/<>/test

 

credential

  • GET   
    e.g. http://<instance address>/rest/v1/credential

  • PATH   /aws
    API for Amazon Web Services credentials
    e.g. http://<instance address>/rest/v1/credential/credential/aws

    • POST   /update
      Takes a body containing name, access key and secret key and updates this credential
      e.g. http://<instance address>/rest/v1/credential/aws/name/<>/update WITH POST DATA arg0

    • POST   /updateFromExport
      Takes a body containing an exported credential and updates this credential
      e.g. http://<instance address>/rest/v1/credential/aws/name/<>/updateFromExport WITH POST DATA arg0

    • DELETE
      Deletes the current credential

    • POST   /delete
      Deletes the current credential
      e.g. http://<instance address>/rest/v1/credential/aws/name/<>/delete

    • GET   /test
      Tests the current credential
      e.g. http://<instance address>/rest/v1/credential/aws/name/<>/test

    • GET   /export
      Exports the current credential
      e.g. http://<instance address>/rest/v1/credential/aws/name/<>/export

  • PATH   /gcp
    API for Google Cloud Platform credentials
    e.g. http://<instance address>/rest/v1/credential/credential/gcp

    • POST   /update
      Takes a body containing name and private key and updates this credential
      e.g. http://<instance address>/rest/v1/credential/gcp/name/<>/update WITH POST DATA arg0

    • POST   /updateFromExport
      Takes a body containing an exported credential and updates this credential
      e.g. http://<instance address>/rest/v1/credential/gcp/name/<>/updateFromExport WITH POST DATA arg0

    • DELETE
      Deletes the current credential

    • POST   /delete
      Deletes the current credential
      e.g. http://<instance address>/rest/v1/credential/gcp/name/<>/delete

    • GET   /test
      Tests the current credential
      e.g. http://<instance address>/rest/v1/credential/gcp/name/<>/test

    • GET   /export
      Exports the current credential
      e.g. http://<instance address>/rest/v1/credential/gcp/name/<>/export


driver

  • PATH   /
    Retrieves a list of drivers
    e.g. http://<instance address>/rest/v1/driver

 

    group

    • PATH   /project
      Allows accessing Project APIs
      e.g. http://<instance address>/rest/v1/group/name/<>/project

      • POST   /delete
        Deletes a project via GET
        e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/delete

         

      • POST   /import
        Import a Project with its Schedules, Environments, Versions and Variables
        e.g. http://<instance address>/rest/v1/group/name/<GroupName>/project/name/<ProjectName>/version/import WITH POST DATA <ExportContainer>

         

      • PATH   /schedule
        Allows accessing Schedule APIs
        e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/schedule

        • PATH   /schedule
          Allows accessing Schedule APIs
          e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/schedule

          • POST   /delete
            Deletes this schedule
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/schedule/name/<>/delete

          • POST   /update
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/schedule/name/<>/update?ignoreUnresolved=false WITH POST DATA arg1

          • DELETE
            Deletes this schedule

          • GET   /name
            Gets the name of the schedule
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/schedule/name/<>/name

          • GET   /id
            Gets the Queue ID of the schedule
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/schedule/name/<>/id

          • GET   /export
            Produces an export container containing this schedule
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/schedule/name/<>/export

        • PATH   /version
          Allows accessing Version APIs
          e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/version

          • PATH   /job
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/version/name/<>/job

            • POST   /run
              Run an Orchestration Job, where variable overrides can be passed in the body.
              e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/version/name/<>/job/name/<>/run?environmentName=<environmentName> WITH POST DATA arg0

            • POST   /delete
              Deletes this Job
              e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/version/name/<>/job/name/<>/delete

            • DELETE
              Deletes this Job

            • GET   /export
              e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/version/name/<>/job/name/<>/export

          • POST   /delete
            Deletes this Version
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/version/name/<>/delete

          • GET   /orchestration
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/version/name/<>/orchestration

          • GET   /transformation
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/version/name/<>/transformation

          • DELETE
            Deletes this Version

          • GET   /name
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/version/name/<>/name

          • GET   /id
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/version/name/<>/id

          • GET   /export
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/version/name/<>/export

          • PATH   /scm

            • POST   /init
              e.g. http://<instance address>/rest/v1/group/name/<groupName>/project/name/<projectName>/version/name/<versionName>/scm/init

            • POST   /clone
              e.g. http://<instance address>/rest/v1/group/name/<groupName>/project/name/<projectName>/version/name/<versionName>/scm/clone

            • POST   /switchCommit
              e.g. http://<instance address>/rest/v1/group/name/<groupName>/project/name/<projectName>/version/name/<versionName>/scm/switchCommit

            • POST   /fetch
              e.g. http://<instance address>/rest/v1/group/name/<groupName>/project/name/<projectName>/version/name/<versionName>/scm/fetch

            • POST   /push
              e.g. http://<instance address>/rest/v1/group/name/<groupName>/project/name/<projectName>/version/name/<versionName>/scm/push

            • POST   /remote
              e.g. http://<instance address>/rest/v1/group/name/<groupName>/project/name/<projectName>/version/name/<versionName>/scm/remote

            • GET   /remote
              e.g. http://<instance address>/rest/v1/group/name/<groupName>/project/name/<projectName>/version/name/<versionName>/scm/remote

            • GET   /getState
              e.g. http://<instance address>/rest/v1/group/name/<groupName>/project/name/<projectName>/version/name/<versionName>/scm/getState

            • GET   /getDifferences
              e.g. http://<instance address>/rest/v1/group/name/<groupName>/project/name/<projectName>/version/name/<versionName>/scm/getDifferences

        • PATH   /task
          e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/task

          • GET   /running
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/task/running

          • GET   /history
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/task/history?since=<since>

          • PATH   /id/{taskID:\\\\d+}
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/task/id/<taskID>

          • PATH   /instance
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/task/instance?taskID=<taskID>

        • PATH   /environment
          Allows accessing Environment APIs
          e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/environment

          • GET   /id
            Gets the ID of the current environment
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/environment/name/<>/id

          • GET   /export
            Download the current environment in an export container
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/environment/name/<>/export

          • POST   /update
            Update the current environment by importing updated environment
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/environment/name/<>/update WITH POST DATA arg0

          • PATH   /variable
            Download the current environment in an export container
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/environment/name/<>/variable

            • POST   /delete
              Delete the current variable
              e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/environment/name/<>/variable/name/<>/delete

            • POST   /set/value/{variableValue}
              Set new value for current Environment Variable
              e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/environment/name/<>/variable/name/<>/set/value/<variableValue>

            • POST   /set/instance
              Set new value for current environment variable
              e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/environment/name/<>/variable/name/<>/set/instance?variableValue=<variableValue>

            • DELETE
              Delete the current variable

            • GET   /value
              Returns default value for current environment variable
              e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/environment/name/<>/variable/name/<>/value

          • GET   /test
            Test the current environment
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/environment/name/<>/test

          • GET   /name
            Gets the name of the current environment
            e.g. http://<instance address>/rest/v1/group/name/<>/project/name/<>/environment/name/<>/name

        • GET   /name
          Gets the name of the current project
          e.g. http://<instanceaddress>/rest/v1/group/name/<>/project/name/<>/name

        • DELETE
          Deletes a project via DELETE

        • GET   /id
          Gets the id of the current project
          e.g. http://<instanceaddress>/rest/v1/group/name/<>/project/name/<>/id

        • GET   /export
          Export a Project with its Schedules, Passwords, Environments, Versions and Variables
          e.g. http://<instanceaddress>/rest/v1/group/name/<>/project/name/<>/export

      • DELETE
        Deletes this Project Group

      • POST   /delete
        Deletes this Project Group
        e.g. http://<instance address>/rest/v1/group/name/<>/delete

      • POST   /import
        Import an entire Project Group
        e.g. http://<instance address>/rest/v1/group/import WITH POST DATA <ExportContainer>

         

      • PATH   /password
        e.g. http://<instance address>/rest/v1/group/name/<>/password

        • POST   /delete
          Deletes the given password.
          e.g. http://<instanceaddress>/rest/v1/group/name/<>/password/name/<>/delete

        • POST   /updateFromExport
          Supply password as already encoded since password will be created as is.
          e.g. http://<instanceaddress>/rest/v1/group/name/<>/password/name/<>/updateFromExport WITH POST DATA arg0

        • DELETE
          Deletes the given password.

        • GET
          Exports the given password
          e.g. http://<instanceaddress>/rest/v1/group/name/<>/password/name/Testexport

        • POST   /update
          Supply password as plaintext as it will encode via encryptionType provided.
          e.g. http://<instanceaddress>/rest/v1/group/name/<>/password/name/<>/update WITH POST DATA arg0

        • POST   /create
          Supply password as plaintext to be Encoded by standard set in EncryptionType.
          e.g. http://<instanceaddress>/rest/v1/group/name/<>/password/create
        • POST   /import
          Import password via ExportContainer. Supply password as already encoded since password will be created as is.​
          e.g. http://<instanceaddress>/rest/v1/group/name/<>/password/import

        • GET   /get
          Returns the password.
          e.g. http://<instanceaddress>/rest/v1/group/name/<>/password/name/<>/get

        • GET   /name
          Gets the name of the password.
          e.g. http://<instanceaddress>/rest/v1/group/name/<>/password/name/<>/name

        • GET   /id
          Gets the ID of the password.
          e.g. http://<instanceaddress>/rest/v1/group/name/<>/password/name/<>/id

      • GET   /name
        Return the Name of the Project Group
        e.g. http://<instance address>/rest/v1/group/name/<>/name

      • GET   /id
        Return the ID of the Project Group
        e.g. http://<instance address>/rest/v1/group/name/<>/id

      • GET   /export
        Export a Project Group with its Passwords and Projects
        e.g. http://<instance address>/rest/v1/group/name/<>/export

       

      oauth

      • GET   /properties
        Get the properties of the selected OAuth.
        e.g. http://<instance address>/rest/v1/oauth/name/<>/properties

      • POST   /import
        Import one or more OAuths
        e.g. http://<instance address>/rest/v1/oauth/import

      • GET   /id
        Get the ID of the selected OAuth.
        e.g. http://<instance address>/rest/v1/oauth/name/<>/id

      • GET   /name
        Get the name of the selected OAuth.
        e.g. http://<instance address>/rest/v1/oauth/name/<>/name

      • DELETE
        Delete the selected OAuth.

      • GET   /type
        Get the type of the selected OAuth.
        e.g. http://<instance address>/rest/v1/oauth/name/<>/type

      • GET   /status
        Get the status of the selected OAuth.
        e.g. http://<instance address>/rest/v1/oauth/name/<>/status

      • GET   /settings
        Get the settings of the selected OAuth.
        e.g. http://<instance address>/rest/v1/oauth/name/<>/settings

      • POST   /delete
        Delete the selected OAuth.
        e.g. http://<instance address>/rest/v1/oauth/name/<>/delete

      • GET   /export
        Export the current OAuth.
        e.g. http://<instance address>/rest/v1/oauth/name/<>/export


      queue

      • GET   /test
        Test the queue
        e.g. http://<instance address>/rest/v1/queue/queue/test

      • GET   /export
        Import a queue from an export container
        e.g. http://<instance address>/rest/v1/queue/queue/export

      • POST   /import
        Export the queue
        e.g. http://<instance address>/rest/v1/queue/queue/import?ignoreUnresolved=false WITH POST DATA arg1


      task

      • PATH   /id/{taskID:\\\\d+}
        e.g. http://<instance address>/rest/v1/task/id/<taskID>

      • PATH   /instance
        e.g. http://<instance address>/rest/v1/task/instance?taskID=<taskID>

      • GET   /task
        e.g. http://<instance address>/rest/v1/task

    permission

    • PATH   /group
      e.g. http://<instance address>/rest/v1/permission/group

      • PATH   /roles
        e.g. http://<instance address>/rest/v1/permission/group/name/<>/roles

        • POST   /add
          Add a role to the selected permission group.
          e.g. http://<instance address>/rest/v1/permission/group/name/<>/roles/add WITH POST DATA arg0

        • POST   /remove
          Remove a role from the selected permission group.
          e.g. http://<instance address>/rest/v1/permission/group/name/<>/roles/remove WITH POST DATA arg0

        • GET   /get
          Get the list of roles assigned to the selected permission group.
          e.g. http://<instance address>/rest/v1/permission/group/name/<>/roles/get

      • GET   /parent
        Get the parent Group ID of the selected permission group.
        e.g. http://<instance address>/rest/v1/permission/group/name/<>/parent

      • DELETE
        Delete the selected permission group via a HTTP DELETE request.

      • GET   /export
        Export the selected permission group.
        e.g. http://<instance address>/rest/v1/permission/group/name/<>/export

      • POST   /update
        Update the selected permission group.
        e.g. http://<instance address>/rest/v1/permission/group/name/<>/update WITH POST DATA arg0

      • POST   /delete
        Delete the selected permission group via a HTTP POST request.
        e.g. http://<instance address>/rest/v1/permission/group/name/<>/delete

    • PATH   /user
      e.g. http://<instance address>/rest/v1/permission/user

    • PATH   /global
      e.g. http://<instance address>/rest/v1/permission/global

      • POST   /import
        Import one or more group permissions.
        e.g. http://<instance address>/rest/v1/permission/global/import WITH POST DATA arg0

      • PATH   /instance
        e.g. http://<instance address>/rest/v1/permission/global/instance?groupName=<groupName>

      • GET   /export
        Export all permissions for every group.
        e.g. http://<instance address>/rest/v1/permission/global/export

      • GET   /group
        List all group permission
        e.g. http://<instance address>/rest/v1/permission/global/group

      • PATH   /group/name/{group}
        e.g. http://<instance address>/rest/v1/permission/global/group/name/<group>

        • GET   /export
          Export all permissions for the selected group.
          e.g. http://<instance address>/rest/v1/permission/global/group/name/<>/export

        • POST   /clear
          Reset permissions for the selected group.
          e.g. http://<instance address>/rest/v1/permission/global/group/name/<>/clear

        • GET   /permission
          List permission in the selected group.
          e.g. http://<instance address>/rest/v1/permission/global/group/name/<>/permission

        • PATH   /permission/name/{permission}
          e.g. http://<instance address>/rest/v1/permission/global/group/name/<>/permission/name/<permission>

          • GET   /get
            Get the selected permission.
            e.g. http://<instance address>/rest/v1/permission/global/group/name/<>/permission/name/<>/get

          • POST   /update
            Update the selected permission. (DEFAULT, GRANTED, FORBIDDEN)
            e.g. http://<instance address>/rest/v1/permission/global/group/name/<>/permission/name/<>/update WITH POST DATA arg0

     

    notice

    • PATH   /notice
      ​e.g. http://<instance address>/rest/v1/notice

      • GET   /notice/
        List all notices
        ​e.g. http://<instance address>/rest/v1/notice/

      • PATH   /notice/id/{id}
        Get notice by ID
        ​e.g. http://<instance address>/rest/v1/notice/instance?id=<id>

      • POST   /notice/create
        Create a notice
        ​e.g. http://<instance address>/rest/v1/notice/create

        ​​​
      • PATH   /notice/id/{id}
        ​e.g. http://<instance address>/rest/v1/notice/id/<id>​

        • DELETE      /notice/id/{id}
          Delete a notice.

        • GET   /notice/id/{id}/get
          Get a notice.
          e.g. http://<instance address>/rest/v1/notice/id/{id}/get

        • POST   /notice/id/{id}/delete
          Delete a notice.
          e.g. http://<instance address>/rest/v1/notice/id/{id}/delete

     

    userconfig

    • POST   /userconfig/import
      Import  user configuration
      e.g. http://<instance address>/rest/v1/userconfig/import WITH POST DATA arg0

    • GET   /userconfig/export
      Export user configuration
      e.g. http://<instance address>/rest/v1/userconfig/export

    • PATH   /userconfig/import
      Get a user configuration by name
      e.g. http://<instance address>/rest/v1/userconfig/user/instance?userName=<username>

    • GET   /userconfig/user
      Retrieve a list of all users
      e.g. http://<instance address>/rest/v1/userconfig/user