> ## Documentation Index
> Fetch the complete documentation index at: https://cobo.com/developers/llms.txt
> Use this file to discover all available pages before exploring further.

# Query Binding

> <Note>This content applies to WaaS 1.0 only. We highly recommend that you upgrade to [WaaS 2.0](https://www.cobo.com/developers/v2/guides/overview/introduction).</Note> This endpoint returns a JSON response with the binding information for a given binder ID. The endpoint requires authentication and the user must have query permission. The binder ID is passed as a parameter in the GET request.

#### Request

<ParamField query="binder_id" type="String" required>CoboAuth binding code</ParamField>

#### Response

<ResponseField name="success" type="bool">request successful or failed</ResponseField>

<ResponseField name="result" type="object">
  <Expandable title="object">
    <ResponseField name="status" type="Int">
      Binding code status

      | Status                      | Code |
      | --------------------------- | ---- |
      | STATUS\_NEW                 | 1    |
      | STATUS\_CHANGE\_NEW         | 2    |
      | STATUS\_WAIT\_SELF\_CONFIRM | 3    |
      | STATUS\_WAIT\_CONFIRM       | 4    |
      | STATUS\_WAIT\_ACTIVE        | 5    |
      | STATUS\_ACTIVE              | 6    |
      | STATUS\_FREEZE              | 7    |
      | STATUS\_INVALID             | -999 |
    </ResponseField>

    <ResponseField name="pubkey" type="String">The bound Auth public key, or empty if the binder\_id has expired</ResponseField>

    <ResponseField name="fail_reason_code" type="Int">
      This field provides a specific reason code for the failure and is only valid when status = -999.

      | Status                 | Code |
      | ---------------------- | ---- |
      | BINDER\_ID\_EXPIRED    | 1    |
      | REVIEW\_EXPIRED        | 2    |
      | PUBKEY\_ALREADY\_BOUND | 3    |
      | REVIEW\_REJECTED       | 4    |
      | INVALIDATED            | 5    |
      | DUPLICATE\_BINDING     | 6    |
    </ResponseField>

    <ResponseField name="addresses" type="object[]">
      <Expandable title="object">
        <ResponseField name="chain_coin" type="String">bound coin</ResponseField>
        <ResponseField name="address" type="String">bound address</ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```python Python theme={null}
  request(
      "GET",
      "/v1/custody/guard/query_binding/",
      {
          "binder_id": "Ph8YP+LTQyqcfHE/A+eXUw=="
      },
      api_key, api_secret, host
  )
  ```

  ```javascript JavaScript theme={null}
  coboFetch('GET', '/v1/custody/guard/query_binding/',
          {
              "binder_id": "Ph8YP+LTQyqcfHE/A+eXUw=="
          },
          api_key, api_secret, host
      ).then(res => {
          res.json().then((data)=>{
              console.log(JSON.stringify(data, null, 4));
          })
      }).catch(err => {
          console.log(err)
      });
  ```

  ```go Go theme={null}
  Request("GET", "/v1/custody/guard/query_binding/", map[string]string{
      "binder_id": "Ph8YP+LTQyqcfHE/A+eXUw=="
  })
  ```
</RequestExample>

<ResponseExample>
  ```json theme={null}
  {
    "success": true,
    "result": {
      "status": 6,
      "pubkey": "480da241874516ca9a25b1776e2b3ce6d2d5ea184d9a83e28874e57d4a2786ea1db059aefb2093cf6665da68c5381cf401c128aa967927c3abc46c7545c90438",
      "fail_reason_code": null,
      "addresses": [
        {
          "chain_coin": "ETH",
          "address": "0x123"
        }
        …
      ]
    }
  }




  ```
</ResponseExample>
