Connectors/ConnectorDev Certification: Difference between revisions
(Created page with " To become a BigID certified developer, you need to create a connector showing your knowledge. There are no specific programming language requirements for this application, just like within BigID. We will not judge your code on syntax or style. We’ve designed this project to be flexible enough to focus on your specific domain while also being rigorous enough to verify your knowledge to BigID customers around the world. == Grading == The project consists of requireme...") |
|||
Line 4: | Line 4: | ||
== Grading == | == Grading == | ||
The project consists of requirements and optional exercises. Your application MUST implement all requirements. Not implementing a single requirement will result in a failing score. After implementing all requirements, you may choose | The project consists of requirements and optional exercises. Your application MUST implement all requirements. Not implementing a single requirement will result in a failing score. After implementing all requirements, you may choose a path for your connector. All parts of a path must be completed. | ||
=== Requirements === | === Requirements === | ||
* Your connector must be packaged as a .zip file. | * Your connector must be packaged as a .zip file. | ||
* The zip file must contain your connector's code, a Docker image packaged as a tar.gz, and instructions on running your connector. | |||
* Your connector must respond to port 3000 over HTTP. | * Your connector must respond to port 3000 over HTTP. | ||
* Your application may not rely on any external servers beyond those specified in this document. | * Your application may not rely on any external servers beyond those specified in this document. | ||
=== | ==== Unstructured REST Connector Path ==== | ||
This connector must read a directory containing a txt file. It must implement the following endpoints as described in the REST connector documentation: | |||
= | * List what '''Containers''' exist (/objects) | ||
* List what '''Objects''' exist (/objects/<containerName>?Offset=) | |||
* Return the '''Metadata''' for a given object (GET /objects/<containerName>/<objectName>/describe) | |||
* Return the '''InputStream''' for a given object (GET /objects/<containerName>/<objectName>/content-stream) | |||
==== Structured Connector Path ==== | |||
This connector must read a directory containing a csv file. It must implement the following endpoints as described in the REST connector documentation: | |||
* | * List what '''fields''' an '''object''' has (GET /objects/<objectName>/describe) | ||
* List what '''objects''' exist (/objects) | |||
* List what '''records''' are inside an '''object''' (GET /objects/<objectName>/records) | |||
* Count the number of '''records''' inside an '''object''' (GET /objects/<objectName>/count) | |||
* Return the '''fields and values''' for a given record ID (GET /objects/<objectName>/<recordID>) | |||
==== | ==== SAR Connector Path ==== | ||
* | This connector must read a directory containing a JSON file. It must implement the following endpoints as described in the REST connector documentation: | ||
* | |||
* | * List what '''fields''' an '''object''' has (GET /objects/<objectName>/describe) | ||
* List what '''objects''' exist (/objects) | |||
* Search for '''records''' in an '''object''' (POST /objects/<objectName>/sar) |
Revision as of 04:38, 20 January 2025
To become a BigID certified developer, you need to create a connector showing your knowledge. There are no specific programming language requirements for this application, just like within BigID. We will not judge your code on syntax or style. We’ve designed this project to be flexible enough to focus on your specific domain while also being rigorous enough to verify your knowledge to BigID customers around the world.
Grading
The project consists of requirements and optional exercises. Your application MUST implement all requirements. Not implementing a single requirement will result in a failing score. After implementing all requirements, you may choose a path for your connector. All parts of a path must be completed.
Requirements
- Your connector must be packaged as a .zip file.
- The zip file must contain your connector's code, a Docker image packaged as a tar.gz, and instructions on running your connector.
- Your connector must respond to port 3000 over HTTP.
- Your application may not rely on any external servers beyond those specified in this document.
Unstructured REST Connector Path
This connector must read a directory containing a txt file. It must implement the following endpoints as described in the REST connector documentation:
- List what Containers exist (/objects)
- List what Objects exist (/objects/<containerName>?Offset=)
- Return the Metadata for a given object (GET /objects/<containerName>/<objectName>/describe)
- Return the InputStream for a given object (GET /objects/<containerName>/<objectName>/content-stream)
Structured Connector Path
This connector must read a directory containing a csv file. It must implement the following endpoints as described in the REST connector documentation:
- List what fields an object has (GET /objects/<objectName>/describe)
- List what objects exist (/objects)
- List what records are inside an object (GET /objects/<objectName>/records)
- Count the number of records inside an object (GET /objects/<objectName>/count)
- Return the fields and values for a given record ID (GET /objects/<objectName>/<recordID>)
SAR Connector Path
This connector must read a directory containing a JSON file. It must implement the following endpoints as described in the REST connector documentation:
- List what fields an object has (GET /objects/<objectName>/describe)
- List what objects exist (/objects)
- Search for records in an object (POST /objects/<objectName>/sar)