# Advanced Integration

{% hint style="info" %}
Advanced integration involves connecting your contract to the Micapass protocol on-chain similar to basic integration, but unlike to basic one - no need to inherit MicapassBasicClient.sol and use modifiers within methods that need to be protected by Micapass.&#x20;

Advanced integration means that you smart contract is responsible for interaction with Micapass smart contract.
{% endhint %}

{% content-ref url="/pages/Sh9s2fx9pIXPVmauu5Qo" %}
[Why Advanced Integration?](/micapass/sc-integration/advanced-integration/why-advanced-integration.md)
{% endcontent-ref %}

**Advanced Integration steps example overview:**

1. **Import and definition**&#x20;
   1. Add the Micapass interfaces contracts to your codebase&#x20;
      * `IMicapassBaseVerifier.sol` - interface of Micapass main smart contract
   2. Import `IMicapassBaseVerifier.sol` interface to your smart contract&#x20;
   3. Define variable within your smart contract responsible for Micapass smart contract instance&#x20;
2. **Initialization**
   1. Pass actual address of [Micapass](broken://pages/h9DmccquAOVLVXX3r3xm) to you smart contract during initialization, or through the setter method. Use the Micapass address of the chain you are going to deploy your smart contracts&#x20;
   2. Declare needed claim topic ID’s upon initialization&#x20;
3. **Prepare methods and requirements**&#x20;
   1. Define your functions that are going to be protected by Micapass&#x20;
   2. Define which user should be checked for Micapass proofs (sender, receiver, etc)&#x20;
4. **Protection implementation**
   1. In each of the defined functions add the check or required statement for a user(s) verification check&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://micapass.gitbook.io/micapass/sc-integration/advanced-integration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
