DaData.ru API client

DaData.ru Standardization API client java library

License

License

Categories

Categories

Data CLI User Interface
GroupId

GroupId

ru.redcom.lib
ArtifactId

ArtifactId

dadata-api-client
Last Version

Last Version

0.0.1
Release Date

Release Date

Type

Type

jar
Description

Description

DaData.ru API client
DaData.ru Standardization API client java library
Project URL

Project URL

https://github.com/redcom-internet/dadata-api-client
Project Organization

Project Organization

REDCOM-Internet
Source Code Management

Source Code Management

https://github.com/redcom-internet/dadata-api-client/tree/master

Download dadata-api-client

How to add to project

<!-- https://jarcasting.com/artifacts/ru.redcom.lib/dadata-api-client/ -->
<dependency>
    <groupId>ru.redcom.lib</groupId>
    <artifactId>dadata-api-client</artifactId>
    <version>0.0.1</version>
</dependency>
// https://jarcasting.com/artifacts/ru.redcom.lib/dadata-api-client/
implementation 'ru.redcom.lib:dadata-api-client:0.0.1'
// https://jarcasting.com/artifacts/ru.redcom.lib/dadata-api-client/
implementation ("ru.redcom.lib:dadata-api-client:0.0.1")
'ru.redcom.lib:dadata-api-client:jar:0.0.1'
<dependency org="ru.redcom.lib" name="dadata-api-client" rev="0.0.1">
  <artifact name="dadata-api-client" type="jar" />
</dependency>
@Grapes(
@Grab(group='ru.redcom.lib', module='dadata-api-client', version='0.0.1')
)
libraryDependencies += "ru.redcom.lib" % "dadata-api-client" % "0.0.1"
[ru.redcom.lib/dadata-api-client "0.0.1"]

Dependencies

runtime (2)

Group / Artifact Type Version
org.springframework.boot : spring-boot-starter-json jar 2.0.4.RELEASE
org.projectlombok : lombok jar [1.18,)

Project Modules

There are no modules declared in this project.

DaData API Java library

GitHub license GitHub release Maven Central

This is a simple library for using the DaData Standardization API with Java language.
It was written for a Spring application and uses Spring Framework to implement REST API client. Required dependency is spring-boot-starter-json.

Standardization API Reference

Installation

1. Add dependencies to the project:

Maven:

<dependencies>
    <dependency>
        <groupId>ru.redcom.lib</groupId>
        <artifactId>dadata-api-client</artifactId>
        <version>0.0.1</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-json</artifactId>
        <version>2.0.4.RELEASE</version>
    </dependency>
</dependencies>

Gradle:

dependencies {
    compile group: 'ru.redcom.lib', name: 'dadata-api-client', version: '0.0.1'
    compile group: 'org.springframework.boot', name: 'spring-boot-starter-json', version: '2.0.4.RELEASE'
}

2. Get a registration at dadata.ru and acquire API credentials (API key and Secret key) at your account profile.

3. Use the library API to call DaData Standardization functions.

API for Location addresses, Phone and Passport numbers, E-mail addresses, Person names and surnames, Person birthdates, and Vehicle numbers is implemented.
Array requests and Composite records are supported as well.

Usage examples

Clean an address:

import ru.redcom.lib.integration.api.client.dadata.DaDataClient;
import ru.redcom.lib.integration.api.client.dadata.DaDataClientFactory;
import ru.redcom.lib.integration.api.client.dadata.DaDataException;
import ru.redcom.lib.integration.api.client.dadata.dto.Address;

public class Standardization {
	private static final String API_KEY = "<dadata_api_key>";
	private static final String SECRET_KEY = "<dadata_secret_key>";
	private final DaDataClient dadata = DaDataClientFactory.getInstance(API_KEY, SECRET_KEY);

	public Address cleanAddress(final String source) throws DaDataException {
		final Address a = dadata.cleanAddress(source);
		System.out.println("cleaned address: " + a);
		return a;
	}
}

Get the account balance:

import ru.redcom.lib.integration.api.client.dadata.DaDataClient;
import ru.redcom.lib.integration.api.client.dadata.DaDataClientFactory;
import ru.redcom.lib.integration.api.client.dadata.DaDataException;

import java.math.BigDecimal;

public class Info {
	private static final String API_KEY = "<dadata_api_key>";
	private static final String SECRET_KEY = "<dadata_secret_key>";
	private final DaDataClient dadata = DaDataClientFactory.getInstance(API_KEY, SECRET_KEY);

	public BigDecimal accountBalance() throws DaDataException {
		final BigDecimal balance = dadata.getProfileBalance();
		System.out.println("Balance = " + balance);
		return balance;
	}
}

The same, as a Spring application component using injected RestTemplateBuilder instance:

import org.springframework.stereotype.Component;
import org.springframework.boot.web.client.RestTemplateBuilder;
import ru.redcom.lib.integration.api.client.dadata.DaDataClient;
import ru.redcom.lib.integration.api.client.dadata.DaDataClientFactory;
import ru.redcom.lib.integration.api.client.dadata.DaDataException;

import java.math.BigDecimal;

@Component
public class Info {
	private static final String API_KEY = "<dadata_api_key>";
	private static final String SECRET_KEY = "<dadata_secret_key>";
	private final DaDataClient dadata;

	public Info(final RestTemplateBuilder restTemplateBuilder) {
		dadata = DaDataClientFactory.getInstance(API_KEY, SECRET_KEY, null, restTemplateBuilder);
	}
	
	public BigDecimal accountBalance() throws DaDataException {
		final BigDecimal balance = dadata.getProfileBalance();
		System.out.println("Balance = " + balance);
		return balance;
	}
}

See javadoc for library API description and tests code for more examples.

ru.redcom.lib

REDCOM-Internet

Telecommunications Service Provider in Russian Far East region

Versions

Version
0.0.1