Поиск, идентификация и обогащение

обновленный

Уважать

API предоставляет функциональность для поиска деталей для данного идентификатора. Вызов поиска RESTful и имеет следующий формат:

https://di-api.reincubate.com/v1/*[IDENTIFIER-TYPE]*/*[IDENTIFIER-VALUE]*/

См. Разделы поддерживаемых идентификаторов для получения информации о поддерживаемых форматах идентификаторов.

Примеры

https://di-api.reincubate.com/v1/apple-identifiers/iPhone5,3/

$ python -m deviceidentifier.cli.apple_identifier iPhone5,3
{
    "id": "iPhone5,3",
    "image": {
        "height": 330,
        "url": "https://di-api.reincubate.com/resource-775ac9634280be8d7dfb0b75b4727f69/",
        "width": 450
    },
    "product": {
        "line": "iPhone",
        "sku": "iPhone 5c"
    },
    "variant": "GSM + CDMA"
}

Удостоверение личности

API предоставляет функциональность для идентификации неизвестного идентификатора. Вызов поиска RESTful и имеет следующий формат:

https://di-api.reincubate.com/v1/identify-identifier/*[IDENTIFIER-VALUE]*/

См. Разделы поддерживаемых идентификаторов для получения информации о поддерживаемых форматах идентификаторов.

Примеры

https://di-api.reincubate.com/v1/identify-identifier/iPhone5,3/

$ python -m deviceidentifier.cli.identify_identifier iPhone5,3
{
    "iPhone5,3": [
        "apple_identifier"
    ]
}

обогащение

Учитывая несколько идентификаторов для устройства, API может триангулировать свой путь к предоставлению даже большего количества информации поиска, чем обычно было бы возможно.

См. Разделы поддерживаемых идентификаторов для получения информации о поддерживаемых форматах идентификаторов.

Примеры

Попробуйте это:

$ pip install deviceidentifier

Вызовы API через этого клиента становятся проще:

from deviceidentifier import api

# Triangulate a bunch of data from a collection of identifiers
api.enhance_metadata(
    apple_identifier: 'iPhone5,2',
    apple_serial: 'F2TK4TZ7DTWF',
    gsma_imei: '013554006297015',
    gsma_iccid: '8965880812100011146'
)
{
    "apple_identifier": {
        "id": "iPhone5,2",
        "image": {
            "height": 330,
            "url": "https://di-api.reincubate.com/resource-c2aac9e5e3695fca1090633a4ea1b60d/",
            "width": 450
        },
        "product": {
            "line": "iPhone",
            "sku": "iPhone 5"
        },
        "specs_page": "https://support.apple.com/kb/SP655",
        "value": {
            "official_tradein": {
                "link": "https://www.apple.com/shop/trade-in",
                "value": "$25.00"
            }
        },
        "variant": "CDMA + LTE"
    },
    "apple_internal_name": {
        "anonymised": "N42AP",
        "appleIdentifier": {
            "id": "iPhone5,2",
            "image": {
                "height": 330,
                "url": "https://di-api.reincubate.com/resource-c2aac9e5e3695fca1090633a4ea1b60d/",
                "width": 450
            },
            "product": {
                "line": "iPhone",
                "sku": "iPhone 5"
            },
            "specs_page": "https://support.apple.com/kb/SP655",
            "value": {
                "official_tradein": {
                    "link": "https://www.apple.com/shop/trade-in",
                    "value": "$25.00"
                }
            },
            "variant": "CDMA + LTE"
        },
        "appleInternalNameClass": {
            "id": "N42"
        },
        "bdid": 2,
        "cpid": 35152,
        "firmware": [
            {
                "build": "14G60",
                "filesize": 32212563,
                "ota": true,
                "required_build": "14G57",
                "required_version": "10.3.3",
                "signed": true,
                "signing_started": "2018-11-01",
                "signing_stopped": null,
                "url": "http://appldnld.apple.com/ios10.3.3/091-22950-20170719-6221ED78-699B-11E7-B5C7-2F1B4A4DD6D5/com_apple_MobileAsset_SoftwareUpdate/6889e4f249c73ba1ebe4d603a8027d7c6187c4d3.zip",
                "version": "10.3.3"
            },
            {
                "build": "14G60",
                "filesize": 0,
                "ota": false,
                "required_build": null,
                "required_version": null,
                "signed": true,
                "signing_started": "2018-11-01",
                "signing_stopped": null,
                "url": "http://appldnld.apple.com/ios10.3.3/091-23384-20170719-CA966D80-6977-11E7-9F96-3E9100BA0AE3/iPhone_4.0_32bit_10.3.3_14G60_Restore.ipsw",
                "version": "10.3.3"
            }
        ],
        "id": "N42AP",
        "platform": "s5l8950x",
        "revision": null
    },
    "apple_serial": {
        "anonymised": "F2TK4•••DTWF",
        "configurationCode": {
            "appleInternalNameClass": {
                "id": "N42"
            },
            "code": "DTWF",
            "image": {
                "height": 120,
                "url": "https://di-api.reincubate.com/resource-4cb3c6fe7c62f327cd11712196c221b0/",
                "width": 120
            },
            "skuHint": "iPhone 5 (GSM, CDMA)"
        },
        "coverageUrl": "https://checkcoverage.apple.com/gb/en?sn=F2TK4TZ7DTWF",
        "id": "F2TK4TZ7DTWF",
        "manufacturing": {
            "city": "Zhengzhou",
            "company": "Foxconn",
            "country": "China",
            "date": "2013-01-22",
            "flag": "🇨🇳",
            "id": "F2T"
        },
        "serialType": "2010",
        "uniqueId": {
            "productionNo": 32341,
            "value": "TZ7"
        }
    },
    "completion_hints": {
        "apple_anumber": [
            "A1429",
            "A1442"
        ],
        "apple_model": [
            "D097",
            "D105",
            "D144",
            "D297",
            "D298",
            "D299",
            "D300",
            "D654",
            "D655",
            "D656",
            "D657",
            "D658",
            "D659",
            "D660",
            "D661",
            "D662",
            "D663",
            "D664",
            "D665",
            "D667",
            "D668",
            "D669",
            "D671",
            "D672",
            "E039",
            "E040",
            "E041",
            "E042",
            "E043",
            "E044"
        ]
    },
    "gsma_iccid": {
        "account": {
            "code": "081210001114",
            "month": "08",
            "simNumber": "001114",
            "switch": "10",
            "year": "12"
        },
        "anonymised": "896588••••••••••••6",
        "checksum": "6",
        "issuer": {
            "code": "88",
            "country": {
                "code": "65",
                "flag": "🇸🇬",
                "name": "Singapore"
            },
            "name": null
        },
        "majorIndustry": {
            "code": "89",
            "industry": "Telecommunications administrations and private operating agencies",
            "type": "Healthcare, telecommunications and other future industry assignments"
        }
    },
    "gsma_imei": {
        "anonymised": "01355400••••••5",
        "checksum": "5",
        "gsmaTac": {
            "appleIdentifier": {
                "id": "iPhone5,2",
                "image": {
                    "height": 330,
                    "url": "https://di-api.reincubate.com/resource-c2aac9e5e3695fca1090633a4ea1b60d/",
                    "width": 450
                },
                "product": {
                    "line": "iPhone",
                    "sku": "iPhone 5"
                },
                "specs_page": "https://support.apple.com/kb/SP655",
                "value": {
                    "official_tradein": {
                        "link": "https://www.apple.com/shop/trade-in",
                        "value": "$25.00"
                    }
                },
                "variant": "CDMA + LTE"
            },
            "appleInternalNameClass": {
                "id": "N42"
            },
            "appleModel": null,
            "id": "01355400",
            "manufacturer": "Apple"
        },
        "gsx": {
            "appleSerial": {
                "anonymised": "F2TK4•••DTWF",
                "configurationCode": {
                    "appleInternalNameClass": {
                        "id": "N42"
                    },
                    "code": "DTWF",
                    "image": {
                        "height": 120,
                        "url": "https://di-api.reincubate.com/resource-4cb3c6fe7c62f327cd11712196c221b0/",
                        "width": 120
                    },
                    "skuHint": "iPhone 5 (GSM, CDMA)"
                },
                "coverageUrl": "https://checkcoverage.apple.com/gb/en?sn=F2TK4TZ7DTWF",
                "id": "F2TK4TZ7DTWF",
                "manufacturing": {
                    "city": "Zhengzhou",
                    "company": "Foxconn",
                    "country": "China",
                    "date": "2013-01-22",
                    "flag": "🇨🇳",
                    "id": "F2T"
                },
                "serialType": "2010",
                "uniqueId": {
                    "productionNo": 32341,
                    "value": "TZ7"
                }
            },
            "sale": {
                "estimatedPurchaseDate": "2013-04-10",
                "initialCarrier": "Sweden Tele2.",
                "realPurchaseDate": "2013-04-10",
                "saleRegion": "Sweden",
                "saleRegionFlag": "🇸🇪",
                "seller": "TELE2 SVERIGE AB"
            },
            "skuHint": "IPHONE 5",
            "specifications": [
                "WHITE",
                "16GB",
                "GSM"
            ],
            "status": {
                "appleId": null,
                "coverage": "Out Of Warranty (No Coverage)",
                "sim": "Locked"
            },
            "upstream": "cached"
        },
        "id": "013554006297015",
        "reportingBodyIdentifier": {
            "code": "01",
            "flags": "🇺🇸",
            "group": "PTCRB",
            "origin": "United States"
        },
        "serial": "629701",
        "svn": null,
        "type": "IMEI"
    }
}

Обогащение (бета)

В бета-версии появился новый механизм обогащения. Это его формат запроса: https://di-api.reincubate.com/v1/lookup/

Он должен получить POST-запрос данных JSON, аналогично следующему:

{
  "primary": {
      "identifier": "DMPRC0P8H1MD",
      "type": "apple_serial"
  },
  "additional": [{
      "identifier": "MLMQ2LL/A",
      "type": "apple_model"
  }, {
      "identifier": "J127AP",
      "type": "apple_internal_name"
  }]
}

В этой структуре JSON значение основного identifier является обязательным и должно представлять либо серийный номер Apple, либо код IMEI.

Передача значений type является необязательной, но она защищает от возможных коллизий. Любое значение type задокументированное в разделах поддерживаемых идентификаторов этой документации, является приемлемым для значения типа. Таким образом, в самом простом случае действительный запрос может выглядеть так:

{
  "primary": {
      "identifier": "DMPRC0P8H1MD"
  }
}

additional словарь также совершенно необязателен. Однако эти значения позволяют API сузить результаты и обеспечить большую точность его ответов. Настоятельно рекомендуется отправить столько дополнительных данных, сколько доступно для устройства.

API будет возвращать данные в едином формате, как описано в разделе поддерживаемых идентификаторов в своем ответе.

Как мы можем помочь?

Наша служба поддержки здесь, чтобы помочь!

Наш офис работает с понедельника по пятницу с 9:00 до 17:00 по Гринвичу. Время в настоящее время 2:52 ПП с GMT.

Мы стремимся отвечать на все сообщения в течение одного рабочего дня.

Перейти в раздел поддержки › Связаться с командой предприятия ›
Наша отличная команда поддержки

Можем ли мы улучшить эту статью?

Нам нравится слышать от пользователей: почему бы не написать нам электронное письмо, оставить комментарий или написать в Твиттере @reincubate?

© 2008 - 2019 Reincubate Ltd. Все права защищены. Зарегистрировано в Англии и Уэльсе #5189175, VAT GB151788978. Reincubate® является зарегистрированным товарным знаком. Защита & Условия. Мы рекомендуем 2FA. Построен с в Лондоне.