# 인증 검색

## 인증서 검색

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

이 엔드포인트는 단일 인증서의 데이터를 검색합니다.

#### 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 KEY>></code></p> |

{% tabs %}
{% tab title="200: OK 요청이 성공적으로 처리되었습니다." %}

```json
{
  "data": {
    "company_certifications_id": string,
    "company_id": string,
    "scope_description": string,
    "issue_date": string,
    "expiry_date": string,
    "original_issue_date": string,
    "status": string,
    "type": string,
    "model_number": string,
    "certification_number": string,
    "certification_bodies_id": string,
    "accreditation_bodies_id": string,
    "standards_id": string,
    "accreditation_status": string,
    "scheme_id": string,
    "created_at": number,
    "updated_at": number,
    "company_name": string,
    "certification_bodies_name": string,
    "accreditation_bodies_name": string,
    "certification_bodies_accreditation_status": string,
    "withdrawn_at": number,
    "scheme_name": string,
    "standards": [
      {
        "is_accredited_mla": number,
        "standards_id": string,
        "standards_name": string,
        "standards_document_type": string,
        "scheme_name": string
      }
    ]
  }
}
```

{% endtab %}

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

```json
{
    "error": true,
    "timestamp": number (Epoch time),
    "elapse": number,
    "errors": {
      "message": "Invalid Session token has been used.",
      "code": "invalid_session_token"
    }
}
```

{% endtab %}

{% tab title="404: Not Found 인증서 ID가 IAF CertSearch 데이터베이스에 존재하지 않을 때 발생합니다." %}

```json
{
  "error": true,
  "timestamp": number (Epoch time),
  "elapse": number,
  "errors": {
    "message": "The requested resource could not be found but may be available again in the future. Subsequent requests by the client are permissible.",
    "code": "not_found"
  }
}
```

{% endtab %}
{% endtabs %}

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

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

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

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

```shell
curl --location -g --request GET 'https://api.iafcertsearch.org/api/client/v1/ab/cert/{company_certifications_id}' \
--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/cert/{company_certifications_id}")

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/cert/{company_certifications_id}", 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/cert/{company_certifications_id}',
  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/cert/{company_certifications_id}")
  .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/cert/{company_certifications_id}',
  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/cert/{company_certifications_id}"
  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/cert/{company_certifications_id}");
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 %}
