# 모든 인증 기관 검색

## 인증 기관 모두 검색

<mark style="color:blue;">`GET`</mark> `https://api.iafcertsearch.org/api/client/v1/ab/cb`

이 엔드포인트는 모든 등록된 인증 기관의 데이터를 검색합니다.

#### Headers

| Name                                                   | Type   | Description                                                                                                                                   |
| ------------------------------------------------------ | ------ | --------------------------------------------------------------------------------------------------------------------------------------------- |
| Content-Type<mark style="color:red;">\*</mark>         | String | application/json                                                                                                                              |
| x-http-authorization<mark style="color:red;">\*</mark> | String | <p><https://iafcertsearch.org/import-management/api-integration에서> 받은 API 키</p><p>예시:</p><p><code>x-http-authorization: <\<API 키>></code></p> |

#### Request Body

| Name   | Type   | Description |
| ------ | ------ | ----------- |
| limit  | String | 제한          |
| offset | String | 오프셋         |

{% tabs %}
{% tab title="200: OK 요청 성공." %}

```json
{
  "data": [
    {
      "certification_body_identity_number": "string",
      "certification_body_name": "string",
      "certification_body_acronym": "string",
      "country": "string",
      "description": "string",
      "accreditation_status": "string",
      "office_directories": [
        {
          "office_type": "string",
          "country": "string",
          "street": "string",
          "state": "string",
          "city": "string",
          "zip_code": "string"
        }
      ],
      "certification_body_countries": [
        {
          "country": "string"
        }
      ],
      "standard_and_schemes": [
        {
          "standard_code": "string",
          "issue_date": "string",
          "first_issue_date": "string",
          "expiry_date": "string",
          "scheme_name": "string",
          "scope_type": "string",
          "standard_status": "string"
        }
      ],
      "technical_sectors": [
        {
          "sector_title": "string",
          "scheme_name": "string"
        }
      ]
    },
    {
      "certification_body_identity_number": "string",
      "certification_body_name": "string",
      "certification_body_acronym": "string",
      "country": "string",
      "description": "string",
      "accreditation_status": "string",
      "office_directories": [
        {
          "office_type": "string",
          "country": "string",
          "street": "string",
          "state": "string",
          "city": "string",
          "zip_code": "string"
        }
      ],
      "certification_body_countries": [
        {
          "country": "string"
        }
      ],
      "standard_and_schemes": [
        {
          "standard_code": "string",
          "issue_date": "string",
          "first_issue_date": "string",
          "expiry_date": "string",
          "scheme_name": "string",
          "scope_type": "string",
          "standard_status": "string"
        }
      ],
      "technical_sectors": [
        {
          "sector_title": "string",
          "scheme_name": "string"
        }
      ]
    }
  ],
  "meta": {
    "total_pages": number,
    "total_rows": number,
    "order": string,
    "order_by": string,
    "limit": number,
    "offset": number
    "next_key": string
  }
}
```

{% endtab %}

{% tab title="401: Unauthorized 유효하지 않은 API 키를 사용할 때 발생합니다." %}

```json
{
    "error": true,
    "timestamp": number (Epoch time),
    "elapse": number,
    "errors": {
      "message": "유효하지 않은 세션 토큰이 사용되었습니다.",
      "code": "invalid_session_token"
    }
}
```

{% endtab %}
{% endtabs %}

{% hint style="info" %}
응답 데이터 예제를 보려면 응답 설명의 오른쪽 화살표를 클릭하세요.
{% endhint %}

{% hint style="info" %}
해당 작업을 샌드박스 서버에서 테스트하려면 <https://api.sandbox.iafcertsearch.org/api/client/v1/ab/cb> 를 사용할 수도 있습니다.
{% endhint %}

이 방법을 호출하는 방법을 살펴보세요:

{% tabs %}
{% tab title="cURL" %}

```shell
curl --location --request GET 'https://api.iafcertsearch.org/api/client/v1/ab/cb' \
--header 'Content-Type: application/json' \
--header 'x-http-authorization: <<API_KEY>>'
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require "uri"
require "json"
require "net/http"

url = URI("https://api.iafcertsearch.org/api/client/v1/ab/cb")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["x-http-authorization"] = "<<API_KEY>>"

response = https.request(request)
puts response.read_body
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client
import json

conn = http.client.HTTPSConnection("api.iafcertsearch.org")
payload = ''
headers = {
  'Content-Type': 'application/json',
  'x-http-authorization': '<<API_KEY>>'
}
conn.request("GET", "/api/client/v1/ab/cb", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://api.iafcertsearch.org/api/client/v1/ab/cb',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'GET',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'x-http-authorization: <<API_KEY>>'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
```

{% endtab %}

{% tab title="Java" %}

```java
OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
  .url("https://api.iafcertsearch.org/api/client/v1/ab/cb")
  .method("GET", body)
  .addHeader("Content-Type", "application/json")
  .addHeader("x-http-authorization", "<<API_KEY>>")
  .build();
Response response = client.newCall(request).execute();
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require('axios');

var config = {
  method: 'get',
  url: 'https://api.iafcertsearch.org/api/client/v1/ab/cb',
  headers: { 
    'Content-Type': 'application/json', 
    'x-http-authorization': '<<API_KEY>>'
  }
};

axios(config)
.then(function (response) {
  console.log(JSON.stringify(response.data));
})
.catch(function (error) {
  console.log(error);
});
```

{% endtab %}

{% tab title="Go" %}

```go
package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
)

func main() {

  url := "https://api.iafcertsearch.org/api/client/v1/ab/cb"
  method := "GET"

  client := &http.Client {
  }
  req, err := http.NewRequest(method, url, nil)

  if err != nil {
    fmt.Println(err)
    return
  }
  req.Header.Add("Content-Type", "application/json")
  req.Header.Add("x-http-authorization", "<<API_KEY>>")

  res, err := client.Do(req)
  if err != nil {
    fmt.Println(err)
    return
  }
  defer res.Body.Close()

  body, err := ioutil.ReadAll(res.Body)
  if err != nil {
    fmt.Println(err)
    return
  }
  fmt.Println(string(body))
}
```

{% endtab %}

{% tab title="C#" %}

```csharp
var client = new RestClient("https://api.iafcertsearch.org/api/client/v1/ab/cb");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("x-http-authorization", "<<API_KEY>>");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
```

{% endtab %}
{% endtabs %}
