diff --git a/assets/icons/brand-linkedin.svg b/assets/icons/brand-linkedin.svg new file mode 100644 index 0000000..e7b41bc --- /dev/null +++ b/assets/icons/brand-linkedin.svg @@ -0,0 +1,8 @@ + \ No newline at end of file diff --git a/config/_default/menu.toml b/config/_default/menu.toml index 31b9bd2..ff3d3b2 100644 --- a/config/_default/menu.toml +++ b/config/_default/menu.toml @@ -11,6 +11,12 @@ identifier = "github" name = "GitHub" url = "https://github.com/naturalfunction" - [social.params] icon = "brand-github" + +[[social]] +identifier = "linkedin" +name = "LinkedIn" +url = "https://www.linkedin.com/in/vitorribeiro1" +[social.params] +icon = "brand-linkedin" diff --git a/config/_default/params.toml b/config/_default/params.toml index 469b822..47f3222 100644 --- a/config/_default/params.toml +++ b/config/_default/params.toml @@ -9,8 +9,8 @@ since = 2025 customText = "" [dateFormat] -published = "Nov 03, 2025" -lastUpdated = "Nov 03, 2025 00:00 MST" +published = "Jan 02, 2006" +lastUpdated = "Jan 02, 2006 15:04 MST" [sidebar] emoji = "🧮" diff --git a/content/post/getting-started-with-KORE-connectivity-api/KORE-LOGO-CONNECTIVITYPRO.jpeg b/content/post/getting-started-with-KORE-connectivity-api/KORE-LOGO-CONNECTIVITYPRO.jpeg new file mode 100644 index 0000000..5869fcd Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/KORE-LOGO-CONNECTIVITYPRO.jpeg differ diff --git a/content/post/getting-started-with-KORE-connectivity-api/KORE-LOGO-CONNECTIVITYPRO.png b/content/post/getting-started-with-KORE-connectivity-api/KORE-LOGO-CONNECTIVITYPRO.png new file mode 100644 index 0000000..5d911e4 Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/KORE-LOGO-CONNECTIVITYPRO.png differ diff --git a/content/post/getting-started-with-KORE-connectivity-api/KORE-OAuth-Diagram.png b/content/post/getting-started-with-KORE-connectivity-api/KORE-OAuth-Diagram.png new file mode 100644 index 0000000..d265f2a Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/KORE-OAuth-Diagram.png differ diff --git a/content/post/getting-started-with-KORE-connectivity-api/curl-response.jpg b/content/post/getting-started-with-KORE-connectivity-api/curl-response.jpg new file mode 100644 index 0000000..80d9cd5 Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/curl-response.jpg differ diff --git a/content/post/getting-started-with-KORE-connectivity-api/devportal-api-client.png b/content/post/getting-started-with-KORE-connectivity-api/devportal-api-client.png new file mode 100644 index 0000000..24ddd9c Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/devportal-api-client.png differ diff --git a/content/post/getting-started-with-KORE-connectivity-api/devportal-postman.png b/content/post/getting-started-with-KORE-connectivity-api/devportal-postman.png new file mode 100644 index 0000000..aee0042 Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/devportal-postman.png differ diff --git a/content/post/getting-started-with-KORE-connectivity-api/index.md b/content/post/getting-started-with-KORE-connectivity-api/index.md new file mode 100644 index 0000000..ccefbf1 --- /dev/null +++ b/content/post/getting-started-with-KORE-connectivity-api/index.md @@ -0,0 +1,247 @@ +--- +title: "Getting started with KORE ConnectivityPRO™ API" +date: 2025-11-05 +description: "This article covers the basics to start using the Kore Wireless ConnectivityPRO™ API, I hope this guide helps you onboard the API faster!" +categories: ["KORE", "ConnectivityPRO™", "API"] +tags: ["KORE", "ConnectivityPRO™", "API", "Connectivity", "How to", "Getting Started"] +image: "KORE-LOGO-CONNECTIVITYPRO.jpeg" +--- + + + +## Introduction + +Hi there, my name is **Vitor Ribeiro**, and I am a **Solutions Architect** at [**Kore Wireless**](http://korewireless.com). +Part of my job includes onboarding customers on our [**Developer Portal**](http://developer-app.korewireless.com) for our [**Connectivity API**](https://developer-app.korewireless.com/api?product=Connectivity). + +This article covers some of the frequently asked questions related to our Connectivity API and how to get started. + + +--- + +## Prerequisites + +You can view the [**Developer Portal API documentation**](http://developer-app.korewireless.com), but to view and manage your API keys, you must be contracted for **Kore Wireless ConnectivityPro™**. +Otherwise, you won’t be able to see the **Authentication endpoint** described below. + +If you are **not** a Kore Wireless customer and are interested in our services, [contact us here](https://www.korewireless.com/contact-us/). + +You don’t need to be a software developer but should be familiar with what a **REST API** is. +AWS has [this article](https://aws.amazon.com/what-is/restful-api/) on REST APIs that can help. + +For API calls, this article uses **Postman**. +You can watch their [101 videos](https://www.youtube.com/watch?v=hISzpFJ5fPs) or view their [**webinar**](https://www.postman.com/events/intergalactic/) for a quick start. + +--- + +## Overview + +The [**Developer Portal**](http://developer-app.korewireless.com) is a public web page for customers, partners, and builders to integrate and leverage **Kore Wireless Services** through APIs. + +It enables Kore Wireless to manage all APIs from a single point — referred to as **KORE One™**. + +### Available APIs + +| API | Description | +|------|-------------| +| **Connectivity** | For ConnectivityPro™; manage SIM subscriptions. | +| **Streaming** | For ConnectivityPro™; manage SIM subscriptions. | + +This article focuses on the [**Connectivity API**](https://developer-app.korewireless.com/api?product=Connectivity), which allows you to manage SIM subscriptions via API. + +--- + +## Why Use Kore’s API? + +If you are using carriers like [**Verizon**](https://thingspace.verizon.com/documentation/apis/connectivity-management/api-reference.html) or [**AT&T**](https://developer.cisco.com/docs/control-center/cisco-iot-control-center-overview/), your team would need to integrate multiple APIs — each with its own endpoints and structures. + + + +With **Kore Wireless**, you write code against **one unified API endpoint**. +From that point forward, all service types available under your contract become accessible. + + + +--- +## Introduction + +### Creating a Client + +Once you have access to the Developer Portal: + +1. Follow the [**Getting Started**](https://developer.korewireless.com/getting-started?id=2.1.1.5) guide to create your first client. +2. Selecting the client will let you view your **Production** keys. + + + +--- +### Getting an Authentication Token + +Source: [Developer Portal – Getting Started](https://developer.korewireless.com/getting-started?id=2.1.1.3) + +KORE uses the **OAuth 2.0 Client Credentials Workflow**. + +When you create a client, you receive: + +- **Client ID** – Unique identifier of your application +- **Client Secret** – Used for secure API calls +- **API Key** – Allows KORE to identify client access + +See below for a high-level overview. + + + +Using Postman, set up a POST request to https://api.korewireless.com/Api/api/token for Production. + +The body of your request must include: + +- The key **“grant_type”** key with a value of “client_credentials”. +- The key **“client_id”** key with a value from the Developer Portal. +- The key **“client_secret”** key with a value from the Developer Portal. + + + +You can also use **cURL** to get an authentication token, use the example below to perform a request. + +
+
+curl -L -X POST "https://api.korewireless.com/Api/api/token" \
+ -H "Content-Type: application/x-www-form-urlencoded" \
+ -d "grant_type=client_credentials" \
+ -d "client_id=[REPLACE_WITH_YOUR_INFO]" \
+ -d "client_secret=[REPLACE_WITH_YOUR_INFO]"
+
+
+
+Here’s what the **cURL** returns:
+
+
+
+The authentication Token is valid for 10 hours, after 10 hours, you will need to call the authentication endpoint again for a new token.
+
+---
+
+### Getting the account-id
+
+Most endpoints from the Connectivity API will require the **“account-id”** as part of the required fields; obtaining your **“account-id”** is essential to interface with Kore’s Connectivity API.
+
+Using Postman, setup a GET request to https://api.korewireless.com/connectivity/v1/accounts?email=
+
+{
+ "activate": {
+ "activation-profile-id": "",
+ "activation-state": "test",
+ "subscriptions": [
+ {
+ "subscription-id": ""
+ }
+ ]
+ }
+}
+
+
+
+You will be given 3 thresholds for a subscription, a data usage threshold, an SMS usage threshold, and a time threshold. Whichever it is triggered first, set the state to Active - billable. These terms are defined in your contract, you can discuss this with your Account Rep.
+
+For more information on States, read this [article.](https://korewireless.service-now.com/kb_view.do?sys_kb_id=659a58e397eae110d038301e6253af63)
+
+Response Sample:
+
+
+
+{
+ "status": "success",
+ "data": {
+ "provisioning-request-id": "cmp-cpro-request-9591174",
+ "message": "Your request has been acknowledged"
+ }
+}
+
+
+
+---
+
+## Considerations
+
+This article covered how to get an **Authentication Token**, how to obtain the **account-id**, how to get the **activation-profile-id**, how to get **subscription-id**, and how to **activate** a SIM.
+
+As shown, it is important that your headers include your **x-api-key**, a valid **auth token**, and an **account-id**.
+
+For activation, you must have your **subscription-id** first and your **activation-profile-id**.
+
+If you have any questions, don’t hesitate to reach out to me [here](mailto:vribeiro@korewireless.com).
+
+---
+## Available Resources
+
+### Postman Collection
+
+Kore offers a Postman collection that enables you to validate the APIs without writing any code, alternatively, the Developer Portal documentation also includes the ability to call the endpoints, you must be logged into the Developer Portal to view this [Auth Section](https://developer-app.korewireless.com/api?product=Connectivity#auth).
+
+
+
+---
+### Github
+
+Kore Wireless has a [GitHub repository](https://github.com/korewireless) containing code samples. You can view code samples related to the Connectivity API [here](https://github.com/korewireless/Developer-API).
+
+
+
+You can also read this article on Substack [here](https://vitorr.substack.com/p/getting-started-with-kore-wireless)
\ No newline at end of file
diff --git a/content/post/getting-started-with-KORE-connectivity-api/kore-github.png b/content/post/getting-started-with-KORE-connectivity-api/kore-github.png
new file mode 100644
index 0000000..337cfea
Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/kore-github.png differ
diff --git a/content/post/getting-started-with-KORE-connectivity-api/kore-one-api.png b/content/post/getting-started-with-KORE-connectivity-api/kore-one-api.png
new file mode 100644
index 0000000..6a5dbf0
Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/kore-one-api.png differ
diff --git a/content/post/getting-started-with-KORE-connectivity-api/mnos-apis.png b/content/post/getting-started-with-KORE-connectivity-api/mnos-apis.png
new file mode 100644
index 0000000..6c0489b
Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/mnos-apis.png differ
diff --git a/content/post/getting-started-with-KORE-connectivity-api/postman-get-accountid.jpg b/content/post/getting-started-with-KORE-connectivity-api/postman-get-accountid.jpg
new file mode 100644
index 0000000..e2d9eeb
Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/postman-get-accountid.jpg differ
diff --git a/content/post/getting-started-with-KORE-connectivity-api/postman-get-profileid.png b/content/post/getting-started-with-KORE-connectivity-api/postman-get-profileid.png
new file mode 100644
index 0000000..29e6456
Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/postman-get-profileid.png differ
diff --git a/content/post/getting-started-with-KORE-connectivity-api/postman-get-subscription-details.png b/content/post/getting-started-with-KORE-connectivity-api/postman-get-subscription-details.png
new file mode 100644
index 0000000..101dba5
Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/postman-get-subscription-details.png differ
diff --git a/content/post/getting-started-with-KORE-connectivity-api/postman-get-token.jpg b/content/post/getting-started-with-KORE-connectivity-api/postman-get-token.jpg
new file mode 100644
index 0000000..12caf37
Binary files /dev/null and b/content/post/getting-started-with-KORE-connectivity-api/postman-get-token.jpg differ
diff --git a/content/post/welcome-to-vitor-ribeiro-blog/VR-background.png b/content/post/welcome-to-vitor-ribeiro-blog/VR-background.png
new file mode 100644
index 0000000..89ecbef
Binary files /dev/null and b/content/post/welcome-to-vitor-ribeiro-blog/VR-background.png differ
diff --git a/content/post/welcome-to-vitor-ribeiro-blog/index.md b/content/post/welcome-to-vitor-ribeiro-blog/index.md
index 8d7ed3c..4c94d0f 100644
--- a/content/post/welcome-to-vitor-ribeiro-blog/index.md
+++ b/content/post/welcome-to-vitor-ribeiro-blog/index.md
@@ -1,20 +1,19 @@
---
title: "Welcome to Vitor Ribeiro's Blog"
-date: 2025-11-03T21:45:00-06:00
-description: "Welcome to my new Hugo blog powered by the Stack theme"
+date: 2025-11-04
+description: ""
categories: ["Welcome"]
tags: ["welcome"]
+image: "VR-background.png" # Add your featured image filename here
---
-# Welcome to Vitor Ribeiro's blog!
-
-This is my new blog built with Hugo and the Stack theme, automatically deployed to GitHub Pages.
+Welcome to my new [Hugo](https://gohugo.io/) blog powered by the [Stack](https://stack.jimmycai.com/) theme.
## What's Next?
I can now:
-- Write posts in Markdown
-- Push to GitHub for automatic deployment
+- Write posts in [Markdown](https://www.markdownguide.org/)
+- Push to [GitHub](https://github.com/) for automatic deployment
- Customize the theme as needed
- Add new content easily
diff --git a/layouts/partials/article/time.html b/layouts/partials/article/time.html
new file mode 100644
index 0000000..4839124
--- /dev/null
+++ b/layouts/partials/article/time.html
@@ -0,0 +1,23 @@
+{{- $dateFormat := site.Params.dateFormat.published | default "Jan 02, 2006" -}}
+{{- $publishDate := .PublishDate.Format $dateFormat -}}
+
+