Transip API werkt niet
Het werkt niet in test modus. Dit is de code
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.transip.nl/v6/domains?test=1');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "\n{\n \"domainName\": \"example.com\",\n \"contacts\": [\n {\n \"type\": \"registrant\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"companyName\": \"Example B.V.\",\n \"companyKvk\": \"83057825\",\n \"companyType\": \"BV\",\n \"street\": \"Easy street\",\n \"number\": \"12\",\n \"postalCode\": \"1337 XD\",\n \"city\": \"Leiden\",\n \"phoneNumber\": \"+31 715241919\",\n \"faxNumber\": \"+31 715241919\",\n \"email\": \"[email protected]\",\n \"country\": \"nl\"\n }\n ],\n \"nameservers\": [\n {\n \"hostname\": \"ns0.transip.nl\",\n \"hostname\" : \"ns1.transip.nl\",\n \"ipv4\": \"\",\n \"ipv6\": \"\"\n }\n ],\n \"dnsEntries\": [\n {\n \"name\": \"www\",\n \"expire\": 86400,\n \"type\": \"A\",\n \"content\": \"127.0.0.1\"\n }\n ]\n} \n");
$headers = array();
$headers[] = 'Content-Type: application/json';
$headers[] = 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGci.........(json web key)';
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$result = curl_exec($ch);
if (curl_errno($ch)) {
echo 'Error:' . curl_error($ch);
}
curl_close($ch);
echo $result;
Ik krijg dit terug:
Quote:
{"error":"There seems to be a problem with your nameservers:
- You need to specify at least 2 name servers for the domain 'example.com'."}
- You need to specify at least 2 name servers for the domain 'example.com'."}
Ze geven geen support hierop, dus weet iemand wat het probleem is?
Ik zie twee nameservers.
Iemand enige ervaring met de transip API?
Dan lijkt mij dit een bug.
Ik snap dat ze geen ondersteuning op scripts geven, maar op foutmeldingen lijkt mij dat ze toch wel ondersteuning bieden.
Gewijzigd op 21/11/2021 17:38:25 door - Ariën -
Vervang example.com eens door sdfjkhsdfkjshdf.com en dan gewoon met 1 nameserver.
Quote:
{"error":"There seems to be a problem with your nameservers:
- You need to specify at least 2 name servers for the domain 'sdfjkhsdfkjshdf.com'."}
- You need to specify at least 2 name servers for the domain 'sdfjkhsdfkjshdf.com'."}
maar nog steeds hetzelfde probleem. Als ik 1 of 2 nameservers opgeef, blijft hij hetzelfde doen.
Ja als ik de testomgeving eruit haal, heb ik niet getest, want wil niet dat er een invoice gemaakt word.
Het gaat over hun API. Als ze daar geen ondersteuning op geven, dan heb je de verkeerde medewerker te pakken denk ik ;-)
Gewijzigd op 22/11/2021 09:48:08 door - Ariën -
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer [your JSON web token]" \
-d '
{
"domainName": "example.com",
"contacts": [
{
"type": "registrant",
"firstName": "John",
"lastName": "Doe",
"companyName": "Example B.V.",
"companyKvk": "83057825",
"companyType": "BV",
"street": "Easy street",
"number": "12",
"postalCode": "1337 XD",
"city": "Leiden",
"phoneNumber": "+31 715241919",
"faxNumber": "+31 715241919",
"email": "[email protected]",
"country": "nl"
}
],
"nameservers": [
{
"hostname": "ns0.transip.nl",
"ipv4": "",
"ipv6": ""
}
],
"dnsEntries": [
{
"name": "www",
"expire": 86400,
"type": "A",
"content": "127.0.0.1"
}
]
}
' \
"https://api.transip.nl/v6/domains"
-H "Content-Type: application/json" \
-H "Authorization: Bearer [your JSON web token]" \
-d '
{
"domainName": "example.com",
"contacts": [
{
"type": "registrant",
"firstName": "John",
"lastName": "Doe",
"companyName": "Example B.V.",
"companyKvk": "83057825",
"companyType": "BV",
"street": "Easy street",
"number": "12",
"postalCode": "1337 XD",
"city": "Leiden",
"phoneNumber": "+31 715241919",
"faxNumber": "+31 715241919",
"email": "[email protected]",
"country": "nl"
}
],
"nameservers": [
{
"hostname": "ns0.transip.nl",
"ipv4": "",
"ipv6": ""
}
],
"dnsEntries": [
{
"name": "www",
"expire": 86400,
"type": "A",
"content": "127.0.0.1"
}
]
}
' \
"https://api.transip.nl/v6/domains"
Maar moet het voor jou niet zo:
(waarbij ik je \n en \" even door <enters>s en " vervang:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
{
"domainName":"example.com",
"contacts":[
{
"type":"registrant",
"firstName":"John",
"lastName":"Doe",
"companyName":"Example B.V.",
"companyKvk":"83057825",
"companyType":"BV",
"street":"Easy street",
"number":"12",
"postalCode":"1337 XD",
"city":"Leiden",
"phoneNumber":"+31 715241919",
"faxNumber":"+31 715241919",
"email":"[email protected]",
"country":"nl"
}
],
"nameservers":[
{
"hostname":"ns0.transip.nl",
"ipv4":"",
"ipv6":""
},
{
"hostname":"ns1.transip.nl",
"ipv4":"",
"ipv6":""
}
],
"dnsEntries":[
{
"name":"www",
"expire":86400,
"type":"A",
"content":"127.0.0.1"
}
]
}
"domainName":"example.com",
"contacts":[
{
"type":"registrant",
"firstName":"John",
"lastName":"Doe",
"companyName":"Example B.V.",
"companyKvk":"83057825",
"companyType":"BV",
"street":"Easy street",
"number":"12",
"postalCode":"1337 XD",
"city":"Leiden",
"phoneNumber":"+31 715241919",
"faxNumber":"+31 715241919",
"email":"[email protected]",
"country":"nl"
}
],
"nameservers":[
{
"hostname":"ns0.transip.nl",
"ipv4":"",
"ipv6":""
},
{
"hostname":"ns1.transip.nl",
"ipv4":"",
"ipv6":""
}
],
"dnsEntries":[
{
"name":"www",
"expire":86400,
"type":"A",
"content":"127.0.0.1"
}
]
}
Toevoeging op 22/11/2021 10:13:20:
ik zie trouwens geen toegevoegde waarde om in php die json-string zo onleesbaar te maken met \n en \"
Zo werkt het toch ook?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
curl_setopt($ch, CURLOPT_POSTFIELDS,'
{
"domainName":"example.com",
"contacts":[
{
"type":"registrant",
"firstName":"John",
"lastName":"Doe",
"companyName":"Example B.V.",
"companyKvk":"83057825",
"companyType":"BV",
"street":"Easy street",
"number":"12",
"postalCode":"1337 XD",
"city":"Leiden",
"phoneNumber":"+31 715241919",
"faxNumber":"+31 715241919",
"email":"[email protected]",
"country":"nl"
}
],
"nameservers":[
{
"hostname":"ns0.transip.nl",
"ipv4":"",
"ipv6":""
},
{
"hostname":"ns1.transip.nl",
"ipv4":"",
"ipv6":""
}
],
"dnsEntries":[
{
"name":"www",
"expire":86400,
"type":"A",
"content":"127.0.0.1"
}
]
}
');
?>
curl_setopt($ch, CURLOPT_POSTFIELDS,'
{
"domainName":"example.com",
"contacts":[
{
"type":"registrant",
"firstName":"John",
"lastName":"Doe",
"companyName":"Example B.V.",
"companyKvk":"83057825",
"companyType":"BV",
"street":"Easy street",
"number":"12",
"postalCode":"1337 XD",
"city":"Leiden",
"phoneNumber":"+31 715241919",
"faxNumber":"+31 715241919",
"email":"[email protected]",
"country":"nl"
}
],
"nameservers":[
{
"hostname":"ns0.transip.nl",
"ipv4":"",
"ipv6":""
},
{
"hostname":"ns1.transip.nl",
"ipv4":"",
"ipv6":""
}
],
"dnsEntries":[
{
"name":"www",
"expire":86400,
"type":"A",
"content":"127.0.0.1"
}
]
}
');
?>
Het lijkt dus te werken.
Bedankt
jouw json zou vertalen naar
Code (php)
1
2
3
4
2
3
4
<?php
$nameservers[0]['hostname'] = 'ns0.transip.nl';
$nameservers[0]['hostname'] = 'ns1.transip.nl';
?>
$nameservers[0]['hostname'] = 'ns0.transip.nl';
$nameservers[0]['hostname'] = 'ns1.transip.nl';
?>
Waarbij je met de 2e regel de 1e overschrijft.
Je moet dus een 2e nameserver-array starten en niet alleen data ene element uit je array verdubbelen
Quote:
Gezien het een test is wordt er ook geen actie gedaan, ik vermoed dat dit de reden is dat er geen volledige response komt. Mocht je al een domein willen afnemen dan kun je het proberen met jouw eigen gegevens en verwacht ik dat je zo wel een goede response krijgt.
Lekker makkelijk en duur. Ik ga dat risico niet nemen.
Het doel van een test omgeving is om te weten of deze test-transacties goed zijn gegaan.Ik ga niet live testen doen, met invoices die worden gemaakt.
Ik kan dus ook geen test transacties zien ?
Is mijn reactie.
heeft iemand een andere API waar je wel test transacties kunt zien ?
je zei om 10.49 toch dat het werkte? (met 2 nameservers)
Een Ferrari kan je ook niet met Skoda sleutels starten.
Maar het werkt toch?
Gewijzigd op 22/11/2021 16:23:49 door - Ariën -