dart_sdk 1.0.0
dart_sdk: ^1.0.0 copied to clipboard
A comprehensive Dart SDK for interacting with the V6R API, providing type-safe access to projects, repositories, tickets, and agentic capabilities.
V6R Dart SDK #
A Dart SDK for interacting with the V6R API, providing a simple and efficient way to integrate V6R services into your Dart applications.
Features #
- Authentication: Simple authentication with Basic Auth support
- Project Management: Create, read, update, and delete projects
- Repository Integration: Manage repositories and their configurations
- Ticket System: Full ticket lifecycle management
- Agentic API: Access to V6R's agentic capabilities
- Type-safe API: Fully typed request and response models
- Built on Kiota: Leverages Microsoft's Kiota for reliable API client generation
Installation #
Add this to your package's pubspec.yaml file:
dependencies:
dart_sdk: ^1.0.0
Then run:
dart pub get
Getting Started #
Prerequisites #
- Dart SDK ^3.9.2 or higher
- V6R API credentials (username and password)
- V6R API endpoint URL
Basic Setup #
import 'package:dart_sdk/dart_sdk.dart';
import 'package:microsoft_kiota_bundle/microsoft_kiota_bundle.dart';
import 'dart:convert';
void main() async {
// Setup authentication
String username = "your-username";
String password = "your-password";
String basicAuth = 'Basic ' + base64.encode(utf8.encode('$username:$password'));
// Create authentication provider
var authenticationProvider = AnonymousAuthenticationProvider();
// Create request adapter with your V6R API base URL
var requestAdapter = DefaultRequestAdapter(
authProvider: authenticationProvider,
);
requestAdapter.baseUrl = 'https://api.v6r.io'; // Replace with your V6R API endpoint
// Create V6R client
var client = V6rClient(requestAdapter);
}
Usage #
Authentication #
// Login with Basic Auth
var authResponse = await client.auth.login.getAsync((requestConfiguration) {
requestConfiguration.headers['Authorization'] = {basicAuth};
});
print('Authentication successful: $authResponse');
Working with Projects #
// Get all projects
var projects = await client.projects.getAsync();
// Get a specific project
var projectId = 'project-123';
var project = await client.projects.byProjectId(projectId).getAsync();
// Create a new project
var newProject = await client.projects.postAsync(projectData);
Managing Repositories #
// Get all repositories
var repositories = await client.repositories.getAsync();
// Get a specific repository
var repoId = 'repo-456';
var repository = await client.repositories.byRepositoryId(repoId).getAsync();
Working with Tickets #
// Get all tickets
var tickets = await client.tickets.getAsync();
// Get a specific ticket
var ticketId = 'ticket-789';
var ticket = await client.tickets.byTicketId(ticketId).getAsync();
// Create a new ticket
var newTicket = await client.tickets.postAsync(ticketData);
Using Agentic API #
// Access agentic capabilities
var agenticResponse = await client.agentic.getAsync();
Example #
For a complete working example, see the example file in this repository.
API Documentation #
For detailed API documentation, run:
dart doc .
Then open the generated documentation in doc/api/index.html.
Contributing #
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Support #
If you encounter any issues or have questions, please:
- Check the example directory for usage examples
- Open an issue on the GitHub repository
- Contact the V6R support team
License #
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Additional Information #
This SDK is auto-generated using Microsoft Kiota and provides complete coverage of the V6R API. The SDK is regularly updated to match the latest API specifications.